From d1aeb5e34734be3dd3a87b76328089339382babb Mon Sep 17 00:00:00 2001 From: Michael Jumper Date: Wed, 7 Nov 2012 10:15:01 -0800 Subject: [PATCH] Use onstorage event - don't poll. Increase screenshot frequency to one second. --- guacamole/src/main/webapp/scripts/history.js | 3 +++ guacamole/src/main/webapp/scripts/interface.js | 5 ++--- guacamole/src/main/webapp/scripts/root-ui.js | 6 ------ guacamole/src/main/webapp/scripts/session.js | 7 ++----- 4 files changed, 7 insertions(+), 14 deletions(-) diff --git a/guacamole/src/main/webapp/scripts/history.js b/guacamole/src/main/webapp/scripts/history.js index d605bc984..84a7a368f 100644 --- a/guacamole/src/main/webapp/scripts/history.js +++ b/guacamole/src/main/webapp/scripts/history.js @@ -132,6 +132,9 @@ GuacamoleHistory = new (function() { */ this.onchange = null; + // Reload when modified + window.addEventListener("storage", guac_history.reload); + // Initial load guac_history.reload(); diff --git a/guacamole/src/main/webapp/scripts/interface.js b/guacamole/src/main/webapp/scripts/interface.js index ad5bd11a8..36f5f6b48 100644 --- a/guacamole/src/main/webapp/scripts/interface.js +++ b/guacamole/src/main/webapp/scripts/interface.js @@ -418,9 +418,8 @@ GuacamoleUI.attach = function(guac) { if (GuacamoleUI.sessionState.getProperty("clipboard")) guac.setClipboard(GuacamoleUI.sessionState.getProperty("clipboard")); - // Regularly update screenshot if storage available - if (localStorage) - window.setInterval(updateThumbnail, 5000); + // Regularly update screenshot + window.setInterval(updateThumbnail, 1000); break; diff --git a/guacamole/src/main/webapp/scripts/root-ui.js b/guacamole/src/main/webapp/scripts/root-ui.js index 60e4c2fdc..a8f520aa5 100644 --- a/guacamole/src/main/webapp/scripts/root-ui.js +++ b/guacamole/src/main/webapp/scripts/root-ui.js @@ -323,12 +323,6 @@ GuacamoleRootUI.reset = function() { GuacamoleRootUI.views.login.style.display = "none"; GuacamoleRootUI.views.connections.style.display = ""; - // Reload history every 5 seconds - window.setInterval(GuacamoleHistory.reload, 5000); - - // Reload history when focus gained - window.onfocus = GuacamoleHistory.reload; - }; GuacamoleHistory.onchange = function(id, old_entry, new_entry) { diff --git a/guacamole/src/main/webapp/scripts/session.js b/guacamole/src/main/webapp/scripts/session.js index 9af05d462..3df8cd760 100644 --- a/guacamole/src/main/webapp/scripts/session.js +++ b/guacamole/src/main/webapp/scripts/session.js @@ -98,12 +98,9 @@ function GuacamoleSessionState() { */ this.onchange = null; - // Reload properties every second - window.setInterval(guac_state.reload, 1000); + // Reload when modified + window.addEventListener("storage", guac_state.reload); - // Reload properties when focus is gained - window.addEventListener("focus", guac_state.reload); - // Initial load guac_state.reload();