mirror of https://github.com/grafana/grafana.git
ux(view/tv mode): treat tab change as user activity, resets in activity timer
This commit is contained in:
parent
9c7f8268dc
commit
4fa995eafa
|
|
@ -122,7 +122,7 @@ export function grafanaAppDirective(playlistSrv, contextSrv) {
|
||||||
// handle in active view state class
|
// handle in active view state class
|
||||||
var lastActivity = new Date().getTime();
|
var lastActivity = new Date().getTime();
|
||||||
var activeUser = true;
|
var activeUser = true;
|
||||||
var inActiveTimeLimit = 60 * 1000;
|
var inActiveTimeLimit = 10 * 1000;
|
||||||
|
|
||||||
function checkForInActiveUser() {
|
function checkForInActiveUser() {
|
||||||
if (!activeUser) {
|
if (!activeUser) {
|
||||||
|
|
@ -147,9 +147,14 @@ export function grafanaAppDirective(playlistSrv, contextSrv) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// mouse and keyboard is user activity
|
||||||
body.mousemove(userActivityDetected);
|
body.mousemove(userActivityDetected);
|
||||||
body.keydown(userActivityDetected);
|
body.keydown(userActivityDetected);
|
||||||
setInterval(checkForInActiveUser, 1000);
|
// treat tab change as activity
|
||||||
|
document.addEventListener('visibilitychange', userActivityDetected);
|
||||||
|
|
||||||
|
// check every 2 seconds
|
||||||
|
setInterval(checkForInActiveUser, 2000);
|
||||||
|
|
||||||
appEvents.on('toggle-view-mode', () => {
|
appEvents.on('toggle-view-mode', () => {
|
||||||
lastActivity = 0;
|
lastActivity = 0;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue