Bug 1114821 - Remove nightly-only flag for about logins.r=liuche
authorAllison Naaktgeboren <ally@mozilla.com>
Mon, 17 Aug 2015 23:22:24 -0700
changeset 258176 c190fbf7154695940acf752a5ca44cda42c7fb5f
parent 258175 0ec4b789a1737f923cab976cf87a2dab697d8d0a
child 258177 95e78f3ea1f5d96c342595f05275d2c410a5d2db
push id63843
push userryanvm@gmail.com
push dateTue, 18 Aug 2015 14:58:06 +0000
treeherdermozilla-inbound@d55e24c983aa [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersliuche
bugs1114821
milestone43.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 1114821 - Remove nightly-only flag for about logins.r=liuche
mobile/android/base/BrowserApp.java
mobile/android/base/preferences/GeckoPreferences.java
mobile/android/base/resources/xml/preferences_privacy.xml
mobile/android/chrome/jar.mn
mobile/android/components/AboutRedirector.js
mobile/android/components/MobileComponents.manifest
mobile/android/locales/jar.mn
mobile/android/tests/browser/chrome/test_about_logins.html
mobile/android/tests/browser/robocop/testSettingsMenuItems.java
mobile/android/tests/browser/robocop/testSystemPages.java
mobile/android/themes/core/jar.mn
--- a/mobile/android/base/BrowserApp.java
+++ b/mobile/android/base/BrowserApp.java
@@ -3190,17 +3190,17 @@ public class BrowserApp extends GeckoApp
         // (We check the pref last to save the pref read.)
         // In ICS+, it's easy to kill an app through the task switcher.
         final boolean visible = Versions.preICS ||
                                 HardwareUtils.isTelevision() ||
                                 !PrefUtils.getStringSet(GeckoSharedPrefs.forProfile(this),
                                                         ClearOnShutdownPref.PREF,
                                                         new HashSet<String>()).isEmpty();
         aMenu.findItem(R.id.quit).setVisible(visible);
-        aMenu.findItem(R.id.logins).setVisible(AppConstants.NIGHTLY_BUILD);
+        aMenu.findItem(R.id.logins).setVisible(visible);
 
         if (tab == null || tab.getURL() == null) {
             bookmark.setEnabled(false);
             reader.setEnabled(false);
             back.setEnabled(false);
             forward.setEnabled(false);
             share.setEnabled(false);
             quickShare.setEnabled(false);
--- a/mobile/android/base/preferences/GeckoPreferences.java
+++ b/mobile/android/base/preferences/GeckoPreferences.java
@@ -112,17 +112,16 @@ OnSharedPreferenceChangeListener
 
     // These match keys in resources/xml*/preferences*.xml
     private static final String PREFS_SEARCH_RESTORE_DEFAULTS = NON_PREF_PREFIX + "search.restore_defaults";
     private static final String PREFS_DATA_REPORTING_PREFERENCES = NON_PREF_PREFIX + "datareporting.preferences";
     private static final String PREFS_TELEMETRY_ENABLED = "toolkit.telemetry.enabled";
     private static final String PREFS_CRASHREPORTER_ENABLED = "datareporting.crashreporter.submitEnabled";
     private static final String PREFS_MENU_CHAR_ENCODING = "browser.menu.showCharacterEncoding";
     private static final String PREFS_MP_ENABLED = "privacy.masterpassword.enabled";
-    private static final String PREFS_LOGIN_MANAGE = NON_PREF_PREFIX + "signon.manage";
     private static final String PREFS_DISABLE_ZOOMED_VIEW = "ui.zoomedview.disabled";
     private static final String PREFS_UPDATER_AUTODOWNLOAD = "app.update.autodownload";
     private static final String PREFS_UPDATER_URL = "app.update.url.android";
     private static final String PREFS_GEO_REPORTING = NON_PREF_PREFIX + "app.geo.reportdata";
     private static final String PREFS_GEO_LEARN_MORE = NON_PREF_PREFIX + "geo.learn_more";
     private static final String PREFS_HEALTHREPORT_LINK = NON_PREF_PREFIX + "healthreport.link";
     private static final String PREFS_DEVTOOLS_REMOTE_USB_ENABLED = "devtools.remote.usb.enabled";
     private static final String PREFS_DEVTOOLS_REMOTE_WIFI_ENABLED = "devtools.remote.wifi.enabled";
@@ -731,22 +730,16 @@ OnSharedPreferenceChangeListener
             } else {
                 pref.setOnPreferenceChangeListener(this);
                 if (PREFS_UPDATER_AUTODOWNLOAD.equals(key)) {
                     if (!AppConstants.MOZ_UPDATER) {
                         preferences.removePreference(pref);
                         i--;
                         continue;
                     }
-                } else if (PREFS_LOGIN_MANAGE.equals(key)) {
-                    if (!AppConstants.NIGHTLY_BUILD) {
-                        preferences.removePreference(pref);
-                        i--;
-                        continue;
-                    }
                 } else if (PREFS_DISABLE_ZOOMED_VIEW.equals(key)) {
                     // Only enable the ZoomedView / magnifying pref on Nightly.
                     if (!AppConstants.NIGHTLY_BUILD) {
                         preferences.removePreference(pref);
                         i--;
                         continue;
                     }
                 } else if (PREFS_DISPLAY_REFLOW_ON_ZOOM.equals(key)) {
--- a/mobile/android/base/resources/xml/preferences_privacy.xml
+++ b/mobile/android/base/resources/xml/preferences_privacy.xml
@@ -33,18 +33,17 @@
     <ListPreference android:key="network.cookie.cookieBehavior"
                     android:title="@string/pref_cookies_menu"
                     android:entries="@array/pref_cookies_entries"
                     android:entryValues="@array/pref_cookies_values"
                     android:persistent="false" />
 
     <PreferenceCategory android:title="@string/pref_category_logins">
 
-        <org.mozilla.gecko.preferences.LinkPreference android:key="android.not_a_preference.signon.manage"
-                                                      android:title="@string/pref_manage_logins"
+        <org.mozilla.gecko.preferences.LinkPreference  android:title="@string/pref_manage_logins"
                                                       url="about:logins"/>
 
         <CheckBoxPreference android:key="signon.rememberSignons"
                             android:title="@string/pref_remember_signons"
                             android:persistent="false" />
 
         <CheckBoxPreference android:key="privacy.masterpassword.enabled"
                             android:title="@string/pref_use_master_password"
--- a/mobile/android/chrome/jar.mn
+++ b/mobile/android/chrome/jar.mn
@@ -54,19 +54,19 @@ chrome.jar:
 #ifdef MOZ_SERVICES_HEALTHREPORT
   content/aboutHealthReport.xhtml      (content/aboutHealthReport.xhtml)
   content/aboutHealthReport.js         (content/aboutHealthReport.js)
 #endif
 #ifdef MOZ_DEVICES
   content/aboutDevices.xhtml           (content/aboutDevices.xhtml)
   content/aboutDevices.js              (content/aboutDevices.js)
 #endif
-#ifdef NIGHTLY_BUILD
   content/aboutLogins.xhtml            (content/aboutLogins.xhtml)
   content/aboutLogins.js               (content/aboutLogins.js)
+#ifdef NIGHTLY_BUILD
   content/WebcompatReporter.js         (content/WebcompatReporter.js)
 #endif
 #ifdef MOZ_PAY
   content/payment.xhtml                (content/payment.xhtml)
 #endif
 
 % content branding %content/branding/
 
--- a/mobile/android/components/AboutRedirector.js
+++ b/mobile/android/components/AboutRedirector.js
@@ -66,36 +66,34 @@ let modules = {
   feedback: {
     uri: "chrome://browser/content/aboutFeedback.xhtml",
     privileged: true
   },
   privatebrowsing: {
     uri: "chrome://browser/content/aboutPrivateBrowsing.xhtml",
     privileged: true
   },
+  logins: {
+    uri: "chrome://browser/content/aboutLogins.xhtml",
+    privileged: true
+  },
 }
 
 if (AppConstants.MOZ_SERVICES_HEALTHREPORT) {
   modules['healthreport'] = {
     uri: "chrome://browser/content/aboutHealthReport.xhtml",
     privileged: true
   };
 }
 if (AppConstants.MOZ_DEVICES) {
   modules['devices'] = {
     uri: "chrome://browser/content/aboutDevices.xhtml",
     privileged: true
   };
 }
-if (AppConstants.NIGHTLY_BUILD) {
-  modules['logins'] = {
-    uri: "chrome://browser/content/aboutLogins.xhtml",
-    privileged: true
-  };
-}
 
 function AboutRedirector() {}
 AboutRedirector.prototype = {
   QueryInterface: XPCOMUtils.generateQI([Ci.nsIAboutModule]),
   classID: Components.ID("{322ba47e-7047-4f71-aebf-cb7d69325cd9}"),
 
   _getModuleInfo: function (aURI) {
     let moduleName = aURI.path.replace(/[?#].*/, "").toLowerCase();
--- a/mobile/android/components/MobileComponents.manifest
+++ b/mobile/android/components/MobileComponents.manifest
@@ -15,19 +15,18 @@ contract @mozilla.org/network/protocol/a
 contract @mozilla.org/network/protocol/about;1?what=healthreport {322ba47e-7047-4f71-aebf-cb7d69325cd9}
 #endif
 #ifdef MOZ_SAFE_BROWSING
 contract @mozilla.org/network/protocol/about;1?what=blocked {322ba47e-7047-4f71-aebf-cb7d69325cd9}
 #endif
 #ifdef MOZ_DEVICES
 contract @mozilla.org/network/protocol/about;1?what=devices {322ba47e-7047-4f71-aebf-cb7d69325cd9}
 #endif
-#ifdef NIGHTLY_BUILD
+
 contract @mozilla.org/network/protocol/about;1?what=logins {322ba47e-7047-4f71-aebf-cb7d69325cd9}
-#endif
 
 # DirectoryProvider.js
 component {ef0f7a87-c1ee-45a8-8d67-26f586e46a4b} DirectoryProvider.js
 contract @mozilla.org/browser/directory-provider;1 {ef0f7a87-c1ee-45a8-8d67-26f586e46a4b}
 category xpcom-directory-providers browser-directory-provider @mozilla.org/browser/directory-provider;1
 
 # SessionStore.js
 component {8c1f07d6-cba3-4226-a315-8bd43d67d032} SessionStore.js
--- a/mobile/android/locales/jar.mn
+++ b/mobile/android/locales/jar.mn
@@ -32,19 +32,19 @@
   locale/@AB_CD@/browser/sync.dtd                 (%chrome/sync.dtd)
   locale/@AB_CD@/browser/sync.properties          (%chrome/sync.properties)
   locale/@AB_CD@/browser/prompt.dtd               (%chrome/prompt.dtd)
   locale/@AB_CD@/browser/feedback.dtd             (%chrome/feedback.dtd)
   locale/@AB_CD@/browser/phishing.dtd             (%chrome/phishing.dtd)
   locale/@AB_CD@/browser/payments.properties      (%chrome/payments.properties)
   locale/@AB_CD@/browser/handling.properties      (%chrome/handling.properties)
   locale/@AB_CD@/browser/webapp.properties        (%chrome/webapp.properties)
-#ifdef NIGHTLY_BUILD
   locale/@AB_CD@/browser/aboutLogins.dtd          (%chrome/aboutLogins.dtd)
   locale/@AB_CD@/browser/aboutLogins.properties  (%chrome/aboutLogins.properties)
+#ifdef NIGHTLY_BUILD
   locale/@AB_CD@/browser/webcompatReporter.properties (%chrome/webcompatReporter.properties)
 #endif
 
 # overrides for toolkit l10n, also for en-US
 relativesrcdir toolkit/locales:
   locale/@AB_CD@/browser/overrides/about.dtd                       (%chrome/global/about.dtd)
   locale/@AB_CD@/browser/overrides/aboutAbout.dtd                  (%chrome/global/aboutAbout.dtd)
   locale/@AB_CD@/browser/overrides/aboutReader.properties          (%chrome/global/aboutReader.properties)
--- a/mobile/android/tests/browser/chrome/test_about_logins.html
+++ b/mobile/android/tests/browser/chrome/test_about_logins.html
@@ -72,22 +72,17 @@ Migrated from Robocop: https://bugzilla.
     is(username.textContent, LOGIN_FIELDS.username, "username is correct");
 
     // Cleanup: close about:logins, opened in password_setup()
     BrowserApp.closeTab(BrowserApp.selectedTab);
 
     SimpleTest.finish();
   }
 
-  if (AppConstants.NIGHTLY_BUILD) {
-    password_setup();
-  } else {
-    ok(true, "this test is disabled on non-Nightly builds");
-    SimpleTest.finish();
-  }
+  password_setup();
 
   </script>
 </head>
 <body>
 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1136477">Mozilla Bug 1136477</a>
 <br>
 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1184186">Migrated from Robocop testAboutLogins</a>
 <p id="display"></p>
--- a/mobile/android/tests/browser/robocop/testSettingsMenuItems.java
+++ b/mobile/android/tests/browser/robocop/testSettingsMenuItems.java
@@ -27,17 +27,16 @@ public class testSettingsMenuItems exten
 
     // Display menu items.
     String[] PATH_DISPLAY;
     String[] TITLE_BAR_LABEL_ARR;
     String[][] OPTIONS_DISPLAY;
 
     // Privacy menu items.
     String[] PATH_PRIVACY;
-    String[] MANAGE_LOGINS_ARR;
     String[][] OPTIONS_PRIVACY;
 
     // Mozilla/vendor menu items.
     String[] PATH_MOZILLA;
     String[][] OPTIONS_MOZILLA;
 
     // Developer menu items.
     String[] PATH_DEVELOPER;
@@ -90,23 +89,22 @@ public class testSettingsMenuItems exten
                 TITLE_BAR_LABEL_ARR,
                 { mStringHelper.SCROLL_TITLE_BAR_LABEL, "Hide the " + mStringHelper.BRAND_NAME + " title bar when scrolling down a page" },
                 { "Advanced" },
                 { mStringHelper.CHARACTER_ENCODING_LABEL, "Don't show menu", "Show menu", "Don't show menu" },
                 { mStringHelper.PLUGINS_LABEL, "Tap to play", "Enabled", "Tap to play", "Disabled" },
         };
 
         PATH_PRIVACY = new String[] { mStringHelper.PRIVACY_SECTION_LABEL };
-        MANAGE_LOGINS_ARR = new String[] { mStringHelper.MANAGE_LOGINS_LABEL };
         OPTIONS_PRIVACY = new String[][] {
                 { mStringHelper.TRACKING_PROTECTION_LABEL },
                 { mStringHelper.DNT_LABEL },
                 { mStringHelper.COOKIES_LABEL, "Enabled", "Enabled, excluding 3rd party", "Disabled" },
                 { mStringHelper.REMEMBER_LOGINS_LABEL },
-                MANAGE_LOGINS_ARR,
+                { mStringHelper.MANAGE_LOGINS_LABEL },
                 { mStringHelper.MASTER_PASSWORD_LABEL },
                 { mStringHelper.CLEAR_PRIVATE_DATA_LABEL, "", "Browsing history", "Search history", "Downloads", "Form history", "Cookies & active logins", mStringHelper.CLEAR_PRIVATE_DATA_LABEL, "Cache", "Offline website data", "Site settings", "Clear data" },
         };
 
         PATH_MOZILLA = new String[] { mStringHelper.MOZILLA_SECTION_LABEL };
         OPTIONS_MOZILLA = new String[][] {
                 { mStringHelper.ABOUT_LABEL },
                 { mStringHelper.FAQS_LABEL },
@@ -189,21 +187,16 @@ public class testSettingsMenuItems exten
                 String[] networkReportingUi = { "Mozilla Location Service", "Help Mozilla map the world! Share the approximate Wi-Fi and cellular location of your device to improve our geolocation service." };
                 settingsMap.get(PATH_MOZILLA).add(networkReportingUi);
 
                 String[] learnMoreUi = { "Learn more" };
                 settingsMap.get(PATH_MOZILLA).add(learnMoreUi);
             }
         }
 
-        if (!AppConstants.NIGHTLY_BUILD) {
-            final List<String[]> privacy = settingsMap.get(PATH_PRIVACY);
-            privacy.remove(MANAGE_LOGINS_ARR);
-        }
-
         // Automatic updates
         if (AppConstants.MOZ_UPDATER) {
             String[] autoUpdateUi = { "Download updates automatically", "Only over Wi-Fi", "Always", "Only over Wi-Fi", "Never" };
             settingsMap.get(PATH_CUSTOMIZE).add(autoUpdateUi);
         }
 
         // Tab Queue
         if (AppConstants.MOZ_ANDROID_TAB_QUEUE) {
--- a/mobile/android/tests/browser/robocop/testSystemPages.java
+++ b/mobile/android/tests/browser/robocop/testSystemPages.java
@@ -44,39 +44,32 @@ public class testSystemPages extends Pix
 
         // Load system pages by navigating through the UI.
         loadItemsByLevel(menuItems);
     }
 
     // Load from Url the about: pages,verify the Url and the tabs number
     public void checkUrl(String urls []) {
         for (String url:urls) {
-            if (skipItemURL(url)) {
-                continue;
-            }
             loadAndPaint(url);
             verifyTabCount(mExpectedTabCount);
             verifyUrl(url);
         }
     }
 
     public void loadItemsByLevel(String[][][] menuItems) {
         Actions.EventExpecter tabEventExpecter;
         Actions.EventExpecter contentEventExpecter;
         Actions.RepeatedEventExpecter paintExpecter = mActions.expectPaint();
         int expectedTabCount = mExpectedTabCount;
         // There's some special casing for about: because it's our starting page.
         for (String[][] item : menuItems) {
             String [] pathToItem = item[0];
             String expectedUrl = item[1][0];
 
-            if (skipItemURL(expectedUrl)) {
-                continue;
-            }
-
             expectedTabCount++;
 
             // Set up listeners to catch the page load we're about to do
             tabEventExpecter = mActions.expectGeckoEvent("Tab:Added");
             contentEventExpecter = mActions.expectGeckoEvent("DOMContentLoaded");
             selectMenuItemByPath(pathToItem);
 
             // Wait for the new tab and page to load
@@ -93,16 +86,9 @@ public class testSystemPages extends Pix
             verifyUrl(expectedUrl);
             if (mStringHelper.ABOUT_SCHEME.equals(expectedUrl)) {
                 // Decreasing because we do not expect this to be in a different tab.
                 expectedTabCount--;
             }
             verifyTabCount(expectedTabCount);
         }
     }
-
-    private boolean skipItemURL(String item) {
-        if (StringHelper.ABOUT_LOGINS_URL.equals(item) && !AppConstants.NIGHTLY_BUILD) {
-            return true;
-        }
-        return false;
-    }
 }
--- a/mobile/android/themes/core/jar.mn
+++ b/mobile/android/themes/core/jar.mn
@@ -38,20 +38,18 @@ chrome.jar:
 % override chrome://global/skin/media/videocontrols.css chrome://browser/skin/touchcontrols.css
 % override chrome://global/skin/netError.css chrome://browser/skin/netError.css
 
 #ifdef MOZ_PAY
   skin/payment.css                         (payment.css)
 #endif
 #
 
-#ifdef NIGHTLY_BUILD
 * skin/aboutLogins.css                      (aboutLogins.css)
   skin/images/spinning_throbber.svg         (images/spinning_throbber.svg)
-#endif
 
   skin/images/search.png                    (images/search.png)
   skin/images/lock.png                      (images/lock.png)
   skin/images/textfield.png                 (images/textfield.png)
 
   skin/images/5stars.png                    (images/5stars.png)
   skin/images/addons-32.png                 (images/addons-32.png)
   skin/images/amo-logo.png                  (images/amo-logo.png)