From: Michael M Slusarz Date: Mon, 12 Oct 2009 18:04:57 +0000 (-0600) Subject: This is frustrating. Trial and error to make this work cross-browser X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=3ed4a05233477e432be6f2515970dc839222c30b;p=horde.git This is frustrating. Trial and error to make this work cross-browser --- diff --git a/imp/js/DimpBase.js b/imp/js/DimpBase.js index 9108d7cbc..cfa230915 100644 --- a/imp/js/DimpBase.js +++ b/imp/js/DimpBase.js @@ -204,7 +204,7 @@ var DimpBase = { $('appoptions').hasClassName('on')) { $('dimpPage').hide(); $('dimpLoading').show(); - return DimpCore.redirect(DIMP.conf.URI_DIMP + '#' + loc); + return DimpCore.redirect(DIMP.conf.URI_DIMP + '#' + loc, true); } if (loc.startsWith('compose:')) { diff --git a/imp/js/DimpCore.js b/imp/js/DimpCore.js index 72378082e..f7884c2c3 100644 --- a/imp/js/DimpCore.js +++ b/imp/js/DimpCore.js @@ -271,13 +271,20 @@ var DimpCore = { this.redirect(url || (DIMP.conf.URI_AJAX + '/LogOut')); }, - redirect: function(url) + redirect: function(url, force) { var ptr = parent.frames.horde_main ? parent : window; + + if (Horde.dhtmlHistory) { + Horde.dhtmlHistory.stop(); + } + ptr.location.assign(this.addURLParam(url)); // Catch browsers that don't redirect on assign(). - (function() { ptr.location.reload(true); }).delay(0.5); + if (force && !Prototype.Browser.WebKit) { + (function() { ptr.location.reload(); }).delay(0.4); + } }, /* Add dropdown menus to addresses. */