From 990c2512213d04594b02b4f5e40b1cf4c73a4ff4 Mon Sep 17 00:00:00 2001 From: "radha%netscape.com" Date: Thu, 14 Sep 2006 05:53:35 +0000 Subject: [PATCH] More changes to fix 49498. r=ben git-svn-id: svn://10.0.0.236/trunk@210519 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/suite/browser/sessionHistoryUI.js | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/mozilla/suite/browser/sessionHistoryUI.js b/mozilla/suite/browser/sessionHistoryUI.js index 5ed3ab9ea5a..b37d66d82f6 100644 --- a/mozilla/suite/browser/sessionHistoryUI.js +++ b/mozilla/suite/browser/sessionHistoryUI.js @@ -34,10 +34,24 @@ function FillHistoryMenu( aParent, aMenu ) var browserElement = document.getElementById("content"); if (browserElement) { - var docShell = browserElement.boxObject.QueryInterface(Components.interfaces.nsIBrowserBoxObject).docShell; - if (docShell) - { - var webNavigation = docShell.QueryInterface(Components.interfaces.nsIWebNavigation); + var foopy = { }; + var ds; + var docShell; + // Try to get docshell from appCore so that go/forward/back + // menus work right after a theme switch. If fetching from + // appCore fails use, the original method, + if (appCore) { + appCore.getContentDocShell(foopy); + ds = foopy.value; + } + if (ds) { + dump("Got docshell from appCOre\n"); + docShell = ds; + } + else + docShell = browserElement.boxObject.QueryInterface(Components.interfaces.nsIBrowserBoxObject).docShell; + if (docShell) { + var webNavigation = docShell.QueryInterface(Components.interfaces.nsIWebNavigation); if (webNavigation) { var shistory = webNavigation.sessionHistory;