diff --git a/public/app/features/dashboard-scene/scene/VariableControls.tsx b/public/app/features/dashboard-scene/scene/VariableControls.tsx
index 45c48610f1a..f62d8b06c41 100644
--- a/public/app/features/dashboard-scene/scene/VariableControls.tsx
+++ b/public/app/features/dashboard-scene/scene/VariableControls.tsx
@@ -27,11 +27,7 @@ export function VariableControls({ dashboard }: { dashboard: DashboardScene }) {
.map((variable) => (
))}
- {config.featureToggles.dashboardNewLayouts ? (
-
- ) : null}
+ {config.featureToggles.dashboardNewLayouts ? : null}
>
);
}
diff --git a/public/app/features/dashboard-scene/scene/VariableControlsAddButton.tsx b/public/app/features/dashboard-scene/scene/VariableControlsAddButton.tsx
index 9d20b740030..8bdabd397d1 100644
--- a/public/app/features/dashboard-scene/scene/VariableControlsAddButton.tsx
+++ b/public/app/features/dashboard-scene/scene/VariableControlsAddButton.tsx
@@ -9,7 +9,7 @@ import { DashboardInteractions } from '../utils/interactions';
import { DashboardScene } from './DashboardScene';
export function AddVariableButton({ dashboard }: { dashboard: DashboardScene }) {
- const { isEditing } = dashboard.useState();
+ const { editview, editPanel, isEditing, viewPanel } = dashboard.useState();
const handlePointerDown: PointerEventHandler = useCallback(
(evt) => {
@@ -20,13 +20,20 @@ export function AddVariableButton({ dashboard }: { dashboard: DashboardScene })
[dashboard]
);
- if (!isEditing) {
+ // Hide the button if:
+ // - the dashboard is not in edit mode
+ // - the dashboard is in an edit view mode
+ // - the dashboard is in a view panel mode
+ // - the dashboard is in an edit panel mode
+ if (!isEditing || !!editview || !!viewPanel || !!editPanel) {
return null;
}
return (
-
+
+
+
);
}