Bug 1529088 - Hold the HTML-based about:config to Nightly until we get Product sign-off. r=florian,paolo
authorMike Conley <mconley@mozilla.com>
Wed, 27 Feb 2019 21:54:57 +0000
changeset 519417 8f33527974b47fd89c50cc691fa93b91a48d6619
parent 519416 9ee0c8bc5a2f2d30d3a5e8170d01d98449bc07e8
child 519418 dce3ee76ccd90b2a86866d8b71eff3f95da117f4
push id10862
push userffxbld-merge
push dateMon, 11 Mar 2019 13:01:11 +0000
treeherdermozilla-beta@a2e7f5c935da [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersflorian, paolo
bugs1529088
milestone67.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 1529088 - Hold the HTML-based about:config to Nightly until we get Product sign-off. r=florian,paolo Differential Revision: https://phabricator.services.mozilla.com/D20825
browser/components/about/components.conf
browser/components/moz.build
browser/components/sessionstore/test/browser_393716.js
docshell/base/nsAboutRedirector.cpp
docshell/build/components.conf
docshell/moz.build
modules/libpref/init/all.js
modules/libpref/moz.build
toolkit/content/tests/browser/browser_label_textlink.js
--- a/browser/components/about/components.conf
+++ b/browser/components/about/components.conf
@@ -2,17 +2,16 @@
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 pages = [
     'blocked',
     'certerror',
-    'config',
     'downloads',
     'home',
     'library',
     'newinstall',
     'newtab',
     'pocket-saved',
     'pocket-signup',
     'policies',
@@ -24,16 +23,19 @@ pages = [
     'robots',
     'searchreset',
     'sessionrestore',
     'tabcrashed',
     'welcome',
     'welcomeback',
 ]
 
+if defined('NIGHTLY_BUILD'):
+    pages.append('config')
+
 Classes = [
     {
         'cid': '{7e4bb6ad-2fc4-4dc6-89ef-23e8e5ccf980}',
         'contract_ids': ['@mozilla.org/network/protocol/about;1?what=%s' % page
                          for page in pages],
         'legacy_constructor': 'mozilla::browser::AboutRedirector::Create',
         'headers': ['/browser/components/about/AboutRedirector.h'],
     },
--- a/browser/components/moz.build
+++ b/browser/components/moz.build
@@ -26,17 +26,16 @@ with Files("safebrowsing/**"):
     BUG_COMPONENT = ("Toolkit", "Safe Browsing")
 
 with Files('controlcenter/**'):
     BUG_COMPONENT = ('Firefox', 'General')
 
 
 DIRS += [
     'about',
-    'aboutconfig',
     'attribution',
     'contextualidentity',
     'customizableui',
     'dirprovider',
     'downloads',
     'enterprisepolicies',
     'extensions',
     'library',
@@ -57,16 +56,17 @@ DIRS += [
     'urlbar',
     'translation',
 ]
 
 DIRS += ['build']
 
 if CONFIG['NIGHTLY_BUILD']:
     DIRS += [
+        'aboutconfig',
         'payments',
     ]
 
 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
     DIRS += ['touchbar']
 
 XPIDL_SOURCES += [
     'nsIBrowserHandler.idl',
--- a/browser/components/sessionstore/test/browser_393716.js
+++ b/browser/components/sessionstore/test/browser_393716.js
@@ -5,16 +5,17 @@
 
 const URL = "about:config";
 
 add_task(async function setup() {
   // Make sure that the field of which we restore the state is visible on load.
   await SpecialPowers.pushPrefEnv({
     set: [
       ["browser.aboutConfig.showWarning", false],
+      ["general.warnOnAboutConfig", false],
     ],
   });
 });
 
 /**
  * Bug 393716 - Basic tests for getTabState(), setTabState(), and duplicateTab().
  */
 add_task(async function test_set_tabstate() {
@@ -55,26 +56,29 @@ add_task(async function test_set_tabstat
   // set the tab's state
   ss.setTabState(tab, JSON.stringify(state));
   await promiseBrowserLoaded(tab.linkedBrowser);
 
   // verify the correctness of the restored tab
   ok(ss.getCustomTabValue(tab, key2) == value2 && tab.linkedBrowser.currentURI.spec == URL,
      "the tab's state was correctly restored");
 
+  let inputID = AppConstants.NIGHTLY_BUILD ? "about-config-search"
+                                           : "textbox";
+
   // add text data
-  await setInputValue(tab.linkedBrowser, {id: "about-config-search", value: value3});
+  await setInputValue(tab.linkedBrowser, {id: inputID, value: value3});
 
   // duplicate the tab
   let tab2 = ss.duplicateTab(window, tab);
   await promiseTabRestored(tab2);
 
   // verify the correctness of the duplicated tab
   ok(ss.getCustomTabValue(tab2, key2) == value2 &&
      tab2.linkedBrowser.currentURI.spec == URL,
      "correctly duplicated the tab's state");
-  let textbox = await getInputValue(tab2.linkedBrowser, {id: "about-config-search"});
+  let textbox = await getInputValue(tab2.linkedBrowser, {id: inputID});
   is(textbox, value3, "also duplicated text data");
 
   // clean up
   gBrowser.removeTab(tab2);
   gBrowser.removeTab(tab);
 });
--- a/docshell/base/nsAboutRedirector.cpp
+++ b/docshell/base/nsAboutRedirector.cpp
@@ -67,19 +67,17 @@ static const RedirEntry kRedirMap[] = {
     {"about", "chrome://global/content/aboutAbout.xhtml", 0},
     {"addons", "chrome://mozapps/content/extensions/extensions.xul",
      nsIAboutModule::ALLOW_SCRIPT},
     {"buildconfig", "chrome://global/content/buildconfig.html",
      nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT},
     {"checkerboard", "chrome://global/content/aboutCheckerboard.xhtml",
      nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
          nsIAboutModule::ALLOW_SCRIPT},
-#ifndef MOZ_BUILD_APP_IS_BROWSER
     {"config", "chrome://global/content/config.xul", 0},
-#endif
 #ifdef MOZ_CRASHREPORTER
     {"crashes", "chrome://global/content/crashes.xhtml", 0},
 #endif
     {"credits", "https://www.mozilla.org/credits/",
      nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT},
     {"license", "chrome://global/content/license.html",
      nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
          nsIAboutModule::MAKE_LINKABLE},
--- a/docshell/build/components.conf
+++ b/docshell/build/components.conf
@@ -24,17 +24,17 @@ about_pages = [
     'serviceworkers',
     'srcdoc',
     'support',
     'telemetry',
     'url-classifier',
     'webrtc',
 ]
 
-if buildconfig.substs['MOZ_BUILD_APP'] != 'browser':
+if not defined('NIGHTLY_BUILD') or buildconfig.substs['MOZ_BUILD_APP'] != 'browser':
     about_pages.append('config')
 if defined('MOZ_CRASHREPORTER'):
     about_pages.append('crashes')
 if buildconfig.substs['MOZ_WIDGET_TOOLKIT'] != 'android':
     about_pages.append('profiles')
 
 Headers = ['/docshell/build/nsDocShellModule.h']
 
--- a/docshell/moz.build
+++ b/docshell/moz.build
@@ -2,19 +2,16 @@
 # vim: set filetype=python:
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 with Files('**'):
     BUG_COMPONENT = ('Core', 'Document Navigation')
 
-if CONFIG['MOZ_BUILD_APP'] == 'browser':
-    DEFINES['MOZ_BUILD_APP_IS_BROWSER'] = True
-
 DIRS += [
     'base',
     'shistory',
     'build',
     'resources/content',
 ]
 
 XPCSHELL_TESTS_MANIFESTS += [
--- a/modules/libpref/init/all.js
+++ b/modules/libpref/init/all.js
@@ -18,19 +18,17 @@ pref("keyword.enabled", false);
 pref("general.useragent.compatMode.firefox", false);
 
 // This pref exists only for testing purposes. In order to disable all
 // overrides by default, don't initialize UserAgentOverrides.jsm.
 pref("general.useragent.site_specific_overrides", true);
 
 pref("general.config.obscure_value", 13); // for MCD .cfg files
 
-#ifndef MOZ_BUILD_APP_IS_BROWSER
 pref("general.warnOnAboutConfig", true);
-#endif
 
 // maximum number of dated backups to keep at any time
 pref("browser.bookmarks.max_backups",       5);
 
 pref("browser.cache.disk.enable",           true);
 // Does the user want smart-sizing?
 pref("browser.cache.disk.smart_size.enabled", true);
 // Size (in KB) explicitly set by the user. Used when smart_size.enabled == false
--- a/modules/libpref/moz.build
+++ b/modules/libpref/moz.build
@@ -44,14 +44,11 @@ include('/ipc/chromium/chromium-config.m
 
 FINAL_LIBRARY = 'xul'
 
 DEFINES['OS_ARCH'] = CONFIG['OS_ARCH']
 DEFINES['MOZ_WIDGET_TOOLKIT'] = CONFIG['MOZ_WIDGET_TOOLKIT']
 if CONFIG['MOZ_ENABLE_WEBRENDER']:
     DEFINES['MOZ_ENABLE_WEBRENDER'] = True
 
-if CONFIG['MOZ_BUILD_APP'] == 'browser':
-    DEFINES['MOZ_BUILD_APP_IS_BROWSER'] = True
-
 FINAL_TARGET_PP_FILES += [
     'greprefs.js',
 ]
--- a/toolkit/content/tests/browser/browser_label_textlink.js
+++ b/toolkit/content/tests/browser/browser_label_textlink.js
@@ -1,18 +1,18 @@
 add_task(async function() {
-  await BrowserTestUtils.withNewTab({gBrowser, url: "about:config"}, async function(browser) {
+  await BrowserTestUtils.withNewTab({gBrowser, url: "about:preferences"}, async function(browser) {
     let newTabURL = "http://www.example.com/";
     await ContentTask.spawn(browser, newTabURL, async function(newTabURL) {
       let doc = content.document;
       let label = doc.createXULElement("label", {is: "text-link"});
       label.href = newTabURL;
       label.id = "textlink-test";
       label.textContent = "click me";
-      doc.body.prepend(label);
+      doc.documentElement.append(label);
     });
 
     // Test that click will open tab in foreground.
     let awaitNewTab = BrowserTestUtils.waitForNewTab(gBrowser, newTabURL);
     await BrowserTestUtils.synthesizeMouseAtCenter("#textlink-test", {}, browser);
     let newTab = await awaitNewTab;
     is(newTab.linkedBrowser, gBrowser.selectedBrowser, "selected tab should be example page");
     BrowserTestUtils.removeTab(gBrowser.selectedTab);