mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
If earlier dashboard refresh was supressed, force a new one on page becoming visible (#8076)
This commit is contained in:
parent
41171f8a5c
commit
21ae987bcd
@ -15,6 +15,7 @@ class TimeSrv {
|
|||||||
oldRefresh: boolean;
|
oldRefresh: boolean;
|
||||||
dashboard: any;
|
dashboard: any;
|
||||||
timeAtLoad: any;
|
timeAtLoad: any;
|
||||||
|
private autoRefreshBlocked: boolean;
|
||||||
|
|
||||||
/** @ngInject **/
|
/** @ngInject **/
|
||||||
constructor(private $rootScope, private $timeout, private $location, private timer, private contextSrv) {
|
constructor(private $rootScope, private $timeout, private $location, private timer, private contextSrv) {
|
||||||
@ -23,6 +24,14 @@ class TimeSrv {
|
|||||||
|
|
||||||
$rootScope.$on('zoom-out', this.zoomOut.bind(this));
|
$rootScope.$on('zoom-out', this.zoomOut.bind(this));
|
||||||
$rootScope.$on('$routeUpdate', this.routeUpdated.bind(this));
|
$rootScope.$on('$routeUpdate', this.routeUpdated.bind(this));
|
||||||
|
|
||||||
|
document.addEventListener('visibilitychange', () => {
|
||||||
|
if (this.autoRefreshBlocked && document.visibilityState === 'visible') {
|
||||||
|
this.autoRefreshBlocked = false;
|
||||||
|
|
||||||
|
this.refreshDashboard();
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
init(dashboard) {
|
init(dashboard) {
|
||||||
@ -137,6 +146,8 @@ class TimeSrv {
|
|||||||
this.startNextRefreshTimer(afterMs);
|
this.startNextRefreshTimer(afterMs);
|
||||||
if (this.contextSrv.isGrafanaVisible()) {
|
if (this.contextSrv.isGrafanaVisible()) {
|
||||||
this.refreshDashboard();
|
this.refreshDashboard();
|
||||||
|
} else {
|
||||||
|
this.autoRefreshBlocked = true;
|
||||||
}
|
}
|
||||||
}, afterMs));
|
}, afterMs));
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user