From f68b403891c5586a19c63e9144e765a0becc6931 Mon Sep 17 00:00:00 2001 From: Bill McCloskey Date: Tue, 11 Feb 2014 09:01:08 -0800 Subject: [PATCH] Bug 960783 - Support "new out-of-process window" menu item in nightly (r=felipe,bsmedberg,trevor,ted) --- accessible/src/windows/msaa/nsWinUtils.cpp | 4 +-- browser/app/profile/firefox.js | 9 ++++++ browser/base/content/browser-menubar.inc | 8 +++++ browser/base/content/browser-sets.inc | 4 +++ browser/base/content/browser.js | 35 +++++++++++++++++++++- browser/base/content/content.js | 2 +- browser/base/content/tabbrowser.xml | 8 +++-- docshell/base/nsDocShell.cpp | 7 +++++ layout/tools/reftest/reftest.js | 2 +- testing/mochitest/runtests.py | 1 + testing/testsuite-targets.mk | 4 +-- toolkit/xre/nsAppRunner.cpp | 5 ---- 12 files changed, 75 insertions(+), 14 deletions(-) diff --git a/accessible/src/windows/msaa/nsWinUtils.cpp b/accessible/src/windows/msaa/nsWinUtils.cpp index 42ad3d6076e1..bafe0d46a808 100644 --- a/accessible/src/windows/msaa/nsWinUtils.cpp +++ b/accessible/src/windows/msaa/nsWinUtils.cpp @@ -16,7 +16,7 @@ #include "nsIArray.h" #include "nsIDocument.h" #include "nsIDocShellTreeItem.h" -#include "nsIXULRuntime.h" +#include "nsXULAppAPI.h" using namespace mozilla; using namespace mozilla::a11y; @@ -59,7 +59,7 @@ nsWinUtils::MaybeStartWindowEmulation() // with tabs. if (Compatibility::IsJAWS() || Compatibility::IsWE() || Compatibility::IsDolphin() || - BrowserTabsRemote()) { + XRE_GetProcessType() == GeckoProcessType_Content) { RegisterNativeWindow(kClassNameTabContent); sHWNDCache = new nsRefPtrHashtable, DocAccessible>(4); return true; diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js index 62833a94dcb4..b2398d66991e 100644 --- a/browser/app/profile/firefox.js +++ b/browser/app/profile/firefox.js @@ -978,7 +978,16 @@ pref("dom.ipc.plugins.enabled.x86_64", true); pref("dom.ipc.plugins.enabled", true); #endif +#if defined(NIGHTLY_BUILD) && defined(XP_MACOSX) +// In Nightly, browser.tabs.remote is enabled on platforms that +// support OMTC. However, users won't actually get remote tabs unless +// they enable browser.tabs.remote.autostart or they use the "New OOP +// Window" menu option. +pref("browser.tabs.remote", true); +#else pref("browser.tabs.remote", false); +#endif +pref("browser.tabs.remote.autostart", false); // This pref governs whether we attempt to work around problems caused by // plugins using OS calls to manipulate the cursor while running out-of- diff --git a/browser/base/content/browser-menubar.inc b/browser/base/content/browser-menubar.inc index 72518385787c..80522d0efe2d 100644 --- a/browser/base/content/browser-menubar.inc +++ b/browser/base/content/browser-menubar.inc @@ -27,6 +27,14 @@ accesskey="&newPrivateWindow.accesskey;" command="Tools:PrivateBrowsing" key="key_privatebrowsing"/> +