Browse Source

ux(view/tv mode): treat tab change as user activity, resets in activity timer

Torkel Ödegaard 9 years ago
parent
commit
4fa995eafa
1 changed files with 7 additions and 2 deletions
  1. 7 2
      public/app/core/components/grafana_app.ts

+ 7 - 2
public/app/core/components/grafana_app.ts

@@ -122,7 +122,7 @@ export function grafanaAppDirective(playlistSrv, contextSrv) {
       // handle in active view state class
       var lastActivity = new Date().getTime();
       var activeUser = true;
-      var inActiveTimeLimit = 60 * 1000;
+      var inActiveTimeLimit = 10 * 1000;
 
       function checkForInActiveUser() {
         if (!activeUser) {
@@ -147,9 +147,14 @@ export function grafanaAppDirective(playlistSrv, contextSrv) {
         }
       }
 
+      // mouse and keyboard is user activity
       body.mousemove(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', () => {
         lastActivity = 0;