Bug 1425999 - Remove the dom.disable_window_status_change pref, as it no longer can be disabled, r=qdot
authorNika Layzell <nika@thelayzells.com>
Thu, 21 Dec 2017 16:12:37 -0500
changeset 449760 b86850493c201a322465a410a20bd41802e50174
parent 449759 fac4ad28abfed98063afbd78d4f118b1b95da868
child 449761 35763c155792b11d019bb5e24eb766b235091bd1
push id8527
push userCallek@gmail.com
push dateThu, 11 Jan 2018 21:05:50 +0000
treeherdermozilla-beta@95342d212a7a [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersqdot
bugs1425999
milestone59.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1425999 - Remove the dom.disable_window_status_change pref, as it no longer can be disabled, r=qdot MozReview-Commit-ID: 1O6ff22IcZZ
browser/app/profile/firefox.js
dom/base/nsGlobalWindowOuter.cpp
modules/libpref/init/all.js
--- a/browser/app/profile/firefox.js
+++ b/browser/app/profile/firefox.js
@@ -518,18 +518,16 @@ pref("general.warnOnAboutConfig",       
 #endif
 
 // This is the pref to control the location bar, change this to true to
 // force this - this makes the origin of popup windows more obvious to avoid
 // spoofing. We would rather not do it by default because it affects UE for web
 // applications, but without it there isn't a really good way to prevent chrome
 // spoofing, see bug 337344
 pref("dom.disable_window_open_feature.location",  true);
-// prevent JS from setting status messages
-pref("dom.disable_window_status_change",          true);
 // allow JS to move and resize existing windows
 pref("dom.disable_window_move_resize",            false);
 // prevent JS from monkeying with window focus, etc
 pref("dom.disable_window_flip",                   true);
 
 // popups.policy 1=allow,2=reject
 pref("privacy.popups.policy",               1);
 pref("privacy.popups.usecustom",            true);
--- a/dom/base/nsGlobalWindowOuter.cpp
+++ b/dom/base/nsGlobalWindowOuter.cpp
@@ -3112,21 +3112,20 @@ nsGlobalWindowOuter::GetStatusOuter(nsAS
 }
 
 void
 nsGlobalWindowOuter::SetStatusOuter(const nsAString& aStatus)
 {
   mStatus = aStatus;
 
   /*
-   * If caller is not chrome and dom.disable_window_status_change is true,
-   * prevent propagating window.status to the UI by exiting early
+   * If caller is not chrome, prevent propagating window.status to the UI by
+   * exiting early.
    */
-
-  if (!CanSetProperty("dom.disable_window_status_change")) {
+  if (!nsContentUtils::LegacyIsCallerChromeOrNativeCode()) {
     return;
   }
 
   nsCOMPtr<nsIWebBrowserChrome> browserChrome = GetWebBrowserChrome();
   if (browserChrome) {
     browserChrome->SetStatus(nsIWebBrowserChrome::STATUS_SCRIPT,
                              PromiseFlatString(aStatus).get());
   }
--- a/modules/libpref/init/all.js
+++ b/modules/libpref/init/all.js
@@ -1233,17 +1233,16 @@ pref("editor.use_div_for_default_newline
 #else
 pref("editor.use_div_for_default_newlines",  false);
 #endif
 
 // Scripts & Windows prefs
 pref("dom.disable_beforeunload",            false);
 pref("dom.disable_window_flip",             false);
 pref("dom.disable_window_move_resize",      false);
-pref("dom.disable_window_status_change",    false);
 
 pref("dom.disable_window_open_feature.titlebar",    false);
 pref("dom.disable_window_open_feature.close",       false);
 pref("dom.disable_window_open_feature.toolbar",     false);
 pref("dom.disable_window_open_feature.location",    false);
 pref("dom.disable_window_open_feature.personalbar", false);
 pref("dom.disable_window_open_feature.menubar",     false);
 pref("dom.disable_window_open_feature.resizable",   true);