From: Jason Etheridge Date: Mon, 28 Mar 2011 20:33:13 +0000 (-0400) Subject: xulG.fromBack() in browser contexts returns true if the Back navigation was used... X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=0138e6339a2ff82ea39736bafcdea794ecf3e3fc;p=evergreen%2Fequinox.git xulG.fromBack() in browser contexts returns true if the Back navigation was used since the last invocation of xulG.fromBack(). Otherwise returns false Signed-off-by: Jason Etheridge --- diff --git a/Open-ILS/xul/staff_client/chrome/content/util/browser.js b/Open-ILS/xul/staff_client/chrome/content/util/browser.js index 41ff0d2c6a..ad55b3d6d9 100644 --- a/Open-ILS/xul/staff_client/chrome/content/util/browser.js +++ b/Open-ILS/xul/staff_client/chrome/content/util/browser.js @@ -14,6 +14,8 @@ util.browser.prototype = { 'lock_reload' : false, // as opposed to lock 'n load :) + 'back_button_clicked' : false, + 'init' : function( params ) { try { @@ -115,7 +117,10 @@ util.browser.prototype = { try { netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); var n = obj.getWebNavigation(); - if (n.canGoBack) n.goBack(); + if (n.canGoBack) { + obj.back_button_clicked = true; + n.goBack(); + } } catch(E) { var err = 'cmd_back: ' + E; obj.error.sdump('D_ERROR',err); @@ -265,6 +270,14 @@ util.browser.prototype = { cw.IAMXUL = true; cw.XUL_BUILD_ID = '/xul/server/'.split(/\//)[2]; cw.xulG = obj.passthru_content_params || {}; + cw.xulG.fromBack = function() { + if (obj.back_button_clicked) { + obj.back_button_clicked = false; + return true; + } else { + return false; + } + } if (!cw.xulG.set_tab) { cw.xulG.set_tab = function(a,b,c) { return window.xulG.set_tab(a,b,c); }; } if (!cw.xulG.new_tab) { cw.xulG.new_tab = function(a,b,c) { return window.xulG.new_tab(a,b,c); }; } if (!cw.xulG.close_tab) { cw.xulG.close_tab = function(a) { return window.xulG.close_tab(a); }; } @@ -412,6 +425,7 @@ util.browser.prototype = { if (stateFlags & nsIWebProgressListener.STATE_IS_DOCUMENT) { s += ('\tSTATE_IS_DOCUMENT\n'); if( stateFlags & nsIWebProgressListener.STATE_STOP ) { + var alert_string = 'document has stopped: ' + new Date() + '\n'; dump(alert_string); obj.push_variables(); obj.updateNavButtons(); if (typeof obj.on_url_load == 'function') { try {