From 3cb14074a92d5b5dd84cd09810bea1dd34806774 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Torkel=20=C3=96degaard?= Date: Mon, 12 Jun 2023 11:18:37 +0200 Subject: [PATCH] Dashboard: Clear current dashboard when moving away from dashboard (#66538) --- public/app/features/dashboard/services/DashboardSrv.ts | 5 +---- public/app/features/dashboard/state/actions.ts | 5 ++++- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/public/app/features/dashboard/services/DashboardSrv.ts b/public/app/features/dashboard/services/DashboardSrv.ts index b562b70b853..c1168e31099 100644 --- a/public/app/features/dashboard/services/DashboardSrv.ts +++ b/public/app/features/dashboard/services/DashboardSrv.ts @@ -50,14 +50,11 @@ export class DashboardSrv { return new DashboardModel(dashboard, meta); } - setCurrent(dashboard: DashboardModel) { + setCurrent(dashboard: DashboardModel | undefined) { this.dashboard = dashboard; } getCurrent(): DashboardModel | undefined { - if (!this.dashboard) { - console.warn('Calling getDashboardSrv().getCurrent() without calling getDashboardSrv().setCurrent() first.'); - } return this.dashboard; } diff --git a/public/app/features/dashboard/state/actions.ts b/public/app/features/dashboard/state/actions.ts index 1b089434123..7d449b7616f 100644 --- a/public/app/features/dashboard/state/actions.ts +++ b/public/app/features/dashboard/state/actions.ts @@ -9,6 +9,7 @@ import { DashboardAcl, DashboardAclUpdateDTO, NewDashboardAclItem, PermissionLev import { loadPluginDashboards } from '../../plugins/admin/state/actions'; import { cancelVariables } from '../../variables/state/actions'; +import { getDashboardSrv } from '../services/DashboardSrv'; import { getTimeSrv } from '../services/TimeSrv'; import { cleanUpDashboard, loadDashboardPermissions } from './reducers'; @@ -124,10 +125,12 @@ export const cleanUpDashboardAndVariables = (): ThunkResult => (dispatch, } getTimeSrv().stopAutoRefresh(); - dispatch(cleanUpDashboard()); dispatch(removeAllPanels()); + dashboardWatcher.leave(); + + getDashboardSrv().setCurrent(undefined); }; export const updateTimeZoneDashboard =