diff --git a/public/app/features/dashboard-scene/scene/NavToolbarActions.tsx b/public/app/features/dashboard-scene/scene/NavToolbarActions.tsx index ab171dcd870..ff9709f52e6 100644 --- a/public/app/features/dashboard-scene/scene/NavToolbarActions.tsx +++ b/public/app/features/dashboard-scene/scene/NavToolbarActions.tsx @@ -3,7 +3,7 @@ import React, { useEffect, useState } from 'react'; import { GrafanaTheme2 } from '@grafana/data'; import { selectors } from '@grafana/e2e-selectors'; -import { locationService } from '@grafana/runtime'; +import { config, locationService } from '@grafana/runtime'; import { Button, ButtonGroup, Dropdown, Icon, Menu, ToolbarButton, ToolbarButtonRow, useStyles2 } from '@grafana/ui'; import { AppChromeUpdate } from 'app/core/components/AppChrome/AppChromeUpdate'; import { NavToolbarSeparator } from 'app/core/components/AppChrome/NavToolbar/NavToolbarSeparator'; @@ -58,14 +58,15 @@ export function ToolbarActions({ dashboard }: Props) { const buttonWithExtraMargin = useStyles2(getStyles); const isEditingPanel = Boolean(editPanel); const isViewingPanel = Boolean(viewPanelScene); - const isEditingLibraryPanel = useEditingLibraryPanel(editPanel); - const hasCopiedPanel = Boolean(copiedPanel); + // Means we are not in settings view, fullscreen panel or edit panel + const isShowingDashboard = !editview && !isViewingPanel && !isEditingPanel; + const isEditingAndShowingDashboard = isEditing && isShowingDashboard; toolbarActions.push({ group: 'icon-actions', - condition: isEditing && !editview && !isViewingPanel && !isEditingPanel, + condition: isEditingAndShowingDashboard, render: () => ( ( ( ( { let desc = meta.isStarred ? t('dashboard.toolbar.unmark-favorite', 'Unmark as favorite') @@ -152,20 +153,18 @@ export function ToolbarActions({ dashboard }: Props) { }, }); + const isDevEnv = config.buildInfo.env === 'development'; + toolbarActions.push({ group: 'icon-actions', - condition: uid && !editview && !isEditingPanel, + condition: isDevEnv && uid && isShowingDashboard, render: () => ( { - if (meta.isSnapshot) { - locationService.partial({ scenes: null }); - } else { - locationService.push(`/d/${uid}`); - } + locationService.partial({ scenes: false }); }} /> ), @@ -181,7 +180,7 @@ export function ToolbarActions({ dashboard }: Props) { toolbarActions.push({ group: 'playlist-actions', - condition: isPlaying && !editview && !isEditingPanel && !isEditing, + condition: isPlaying && isShowingDashboard && !isEditing, render: () => ( ( ( (