Bug 1370190 - Updated Preferences tracking protection section r?jaws draft
authorRicky Chien <ricky060709@gmail.com>
Wed, 07 Jun 2017 16:21:57 +0800
changeset 600039 f42a3a91882d84207818b76bde7257d2a3d5d4ad
parent 598698 f8bb96fb5c4f9960c5f754f877eceb677df18ddc
child 634915 5b38b22e1c91c3c294eb129d31c163c0c4065f96
push id65672
push userbmo:rchien@mozilla.com
push dateSat, 24 Jun 2017 03:12:52 +0000
reviewersjaws
bugs1370190
milestone56.0a1
Bug 1370190 - Updated Preferences tracking protection section r?jaws MozReview-Commit-ID: Fi39kQcc359
browser/components/preferences/in-content-new/privacy.js
browser/components/preferences/in-content-new/privacy.xul
browser/components/preferences/in-content/privacy.xul
browser/locales/en-US/chrome/browser/preferences/privacy.dtd
browser/themes/shared/incontentprefs/preferences.inc.css
--- a/browser/components/preferences/in-content-new/privacy.js
+++ b/browser/components/preferences/in-content-new/privacy.js
@@ -56,18 +56,19 @@ var gPrivacyPane = {
     }
 
     let link = document.getElementById("trackingProtectionLearnMore");
     let url = Services.urlFormatter.formatURLPref("app.support.baseURL") + "tracking-protection";
     link.setAttribute("href", url);
 
     this.trackingProtectionReadPrefs();
 
-    document.getElementById("trackingprotectionbox").hidden = false;
-    document.getElementById("trackingprotectionpbmbox").hidden = true;
+    document.getElementById("trackingProtectionExceptions").hidden = false;
+    document.getElementById("trackingProtectionBox").hidden = false;
+    document.getElementById("trackingProtectionPBMBox").hidden = true;
   },
 
   /**
    * Linkify the Learn More link of the Private Browsing Mode Tracking
    * Protection UI.
    */
   _initTrackingProtectionPBM() {
     let link = document.getElementById("trackingProtectionPBMLearnMore");
@@ -184,36 +185,30 @@ var gPrivacyPane = {
     setEventListener("historyRememberCookies", "click", function() {
       gPrivacyPane.showCookies();
       return false;
     });
     setEventListener("historyDontRememberClear", "click", function() {
       gPrivacyPane.clearPrivateDataNow(true);
       return false;
     });
-    setEventListener("doNotTrackSettings", "click", function() {
-      gPrivacyPane.showDoNotTrackSettings();
-      return false;
-    });
     setEventListener("privateBrowsingAutoStart", "command",
                      gPrivacyPane.updateAutostart);
     setEventListener("cookieExceptions", "command",
                      gPrivacyPane.showCookieExceptions);
     setEventListener("showCookiesButton", "command",
                      gPrivacyPane.showCookies);
     setEventListener("clearDataSettings", "command",
                      gPrivacyPane.showClearPrivateDataSettings);
     setEventListener("trackingProtectionRadioGroup", "command",
                      gPrivacyPane.trackingProtectionWritePrefs);
     setEventListener("trackingProtectionExceptions", "command",
                      gPrivacyPane.showTrackingProtectionExceptions);
     setEventListener("changeBlockList", "command",
                      gPrivacyPane.showBlockLists);
-    setEventListener("changeBlockListPBM", "command",
-                     gPrivacyPane.showBlockLists);
     setEventListener("browserContainersCheckbox", "command",
                      gPrivacyPane._checkBrowserContainers);
     setEventListener("browserContainersSettings", "command",
                      gPrivacyPane.showContainerSettings);
     setEventListener("passwordExceptions", "command",
       gPrivacyPane.showPasswordExceptions);
     setEventListener("useMasterPassword", "command",
       gPrivacyPane.updateMasterPasswordButton);
--- a/browser/components/preferences/in-content-new/privacy.xul
+++ b/browser/components/preferences/in-content-new/privacy.xul
@@ -71,17 +71,20 @@
               type="bool"/>
   <preference id="privacy.sanitize.timeSpan"
               name="privacy.sanitize.timeSpan"
               type="int"/>
   <!-- Private Browsing -->
   <preference id="browser.privatebrowsing.autostart"
               name="browser.privatebrowsing.autostart"
               type="bool"/>
-
+  <!-- Do not track -->
+  <preference id="privacy.donottrackheader.enabled"
+              name="privacy.donottrackheader.enabled"
+              type="bool"/>
   <!-- DRM content -->
   <preference id="media.eme.enabled"
               name="media.eme.enabled"
               type="bool"/>
 
   <!-- Popups -->
   <preference id="dom.disable_open_during_load"
               name="dom.disable_open_during_load"
@@ -361,78 +364,82 @@
             label="&changeMasterPassword.label;"
             accesskey="&changeMasterPassword.accesskey;"/>
   </hbox>
 </groupbox>
 
 <!-- Tracking -->
 <groupbox id="trackingGroup" data-category="panePrivacy" hidden="true">
   <caption><label>&trackingProtectionHeader2.label;</label></caption>
-  <vbox id="trackingprotectionbox" hidden="true">
+  <vbox>
     <hbox align="start">
       <vbox flex="1">
         <description>
           &trackingProtection.description;
-          <label id="trackingProtectionLearnMore" class="learnMore text-link">&trackingProtectionLearnMore.label;</label>
         </description>
+      </vbox>
+      <spacer flex="1"/>
+    </hbox>
+    <hbox>
+      <vbox id="trackingProtectionBox" flex="1" hidden="true">
         <description id="trackingProtectionDesc"
                      control="trackingProtectionRadioGroup">
           &trackingProtection.radioGroupLabel;
+           <label id="trackingProtectionLearnMore" class="learnMore text-link">&trackingProtectionLearnMore.label;</label>
         </description>
+        <radiogroup id="trackingProtectionRadioGroup" aria-labelledby="trackingProtectionDesc">
+          <radio value="always"
+                 label="&trackingProtectionAlways.label;"
+                 accesskey="&trackingProtectionAlways.accesskey;"/>
+          <radio value="private"
+                 label="&trackingProtectionPrivate.label;"
+                 accesskey="&trackingProtectionPrivate.accesskey;"/>
+          <radio value="never"
+                 label="&trackingProtectionNever.label;"
+                 accesskey="&trackingProtectionNever.accesskey;"/>
+        </radiogroup>
       </vbox>
-      <spacer flex="1"/>
+      <vbox id="trackingProtectionPBMBox" flex="1">
+        <hbox align="center">
+          <checkbox id="trackingProtectionPBM"
+                    preference="privacy.trackingprotection.pbmode.enabled"
+                    accesskey="&trackingProtectionPBM6.accesskey;"/>
+          <label flex="1">&trackingProtectionPBM6.label;<label id="trackingProtectionPBMLearnMore"
+                 class="learnMore text-link">&trackingProtectionPBMLearnMore.label;</label>
+          </label>
+        </hbox>
+      </vbox>
       <vbox id="trackingProtectionAdvancedSettings">
         <button id="trackingProtectionExceptions"
                 class="accessory-button"
+                hidden="true"
                 label="&trackingProtectionExceptions.label;"
                 accesskey="&trackingProtectionExceptions.accesskey;"
                 preference="pref.privacy.disable_button.tracking_protection_exceptions"
                 searchkeywords="&removepermission.label;
                                 &removeallpermissions.label;
                                 &button.cancel.label;
                                 &button.ok.label;"/>
         <button id="changeBlockList"
                 class="accessory-button"
                 label="&changeBlockList.label;"
                 accesskey="&changeBlockList.accesskey;"
                 preference="pref.privacy.disable_button.change_blocklist"
                 searchkeywords="&button.cancel.label; &button.ok.label;"/>
       </vbox>
     </hbox>
-    <radiogroup id="trackingProtectionRadioGroup" aria-labelledby="trackingProtectionDesc">
-      <radio value="always"
-             label="&trackingProtectionAlways.label;"
-             accesskey="&trackingProtectionAlways.accesskey;"/>
-      <radio value="private"
-             label="&trackingProtectionPrivate.label;"
-             accesskey="&trackingProtectionPrivate.accesskey;"/>
-      <radio value="never"
-             label="&trackingProtectionNever.label;"
-             accesskey="&trackingProtectionNever.accesskey;"/>
-    </radiogroup>
-  </vbox>
-  <vbox id="trackingprotectionpbmbox">
-    <caption><label>&tracking.label;</label></caption>
-    <hbox align="center">
-      <checkbox id="trackingProtectionPBM"
-                preference="privacy.trackingprotection.pbmode.enabled"
-                accesskey="&trackingProtectionPBM5.accesskey;"
-                label="&trackingProtectionPBM5.label;" />
-      <label id="trackingProtectionPBMLearnMore"
-             class="learnMore text-link">&trackingProtectionPBMLearnMore.label;</label>
-      <spacer flex="1" />
-      <button id="changeBlockListPBM"
-              label="&changeBlockList.label;" accesskey="&changeBlockList.accesskey;"
-              preference="pref.privacy.disable_button.change_blocklist"/>
-    </hbox>
-  </vbox>
-  <vbox>
-    <description>&doNotTrack.pre.label;<label
-    class="text-link" id="doNotTrackSettings"
-    >&doNotTrack.settings.label;</label>&doNotTrack.post.label;</description>
+    <vbox id="doNotTrackLearnMoreBox">
+      <label>&doNotTrack.description;<label
+      class="learnMore text-link" href="https://www.mozilla.org/dnt"
+      >&doNotTrack.learnMore.label;</label></label>
+      <radiogroup id="doNotTrackRadioGroup" aria-labelledby="doNotTrackDesc" preference="privacy.donottrackheader.enabled">
+        <radio value="false" label="&doNotTrack.default.label;"/>
+        <radio value="true" label="&doNotTrack.always.label;"/>
+      </radiogroup>
+    </vbox>
   </vbox>
 </groupbox>
 
 <!-- Pop-ups -->
 <groupbox id="miscGroup" data-category="panePrivacy" hidden="true">
   <caption><label>&popups.label;</label></caption>
   <hbox align="start">
     <checkbox id="popupPolicy" preference="dom.disable_open_during_load"
--- a/browser/components/preferences/in-content/privacy.xul
+++ b/browser/components/preferences/in-content/privacy.xul
@@ -121,17 +121,17 @@
     </hbox>
   </vbox>
   <vbox id="trackingprotectionpbmbox">
     <caption><label>&tracking.label;</label></caption>
     <hbox align="center">
       <checkbox id="trackingProtectionPBM"
                 preference="privacy.trackingprotection.pbmode.enabled"
                 accesskey="&trackingProtectionPBM5.accesskey;"
-                label="&trackingProtectionPBM5.label;" />
+                label="&trackingProtectionPBM5.label;"/>
       <label id="trackingProtectionPBMLearnMore"
              class="learnMore text-link"
              value="&trackingProtectionPBMLearnMore.label;"/>
       <spacer flex="1" />
       <button id="changeBlockListPBM"
               label="&changeBlockList.label;" accesskey="&changeBlockList.accesskey;"
               preference="pref.privacy.disable_button.change_blocklist"/>
     </hbox>
--- a/browser/locales/en-US/chrome/browser/preferences/privacy.dtd
+++ b/browser/locales/en-US/chrome/browser/preferences/privacy.dtd
@@ -1,37 +1,37 @@
 <!-- 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/. -->
 
 <!ENTITY  trackingProtectionHeader2.label      "Tracking Protection">
-<!ENTITY  trackingProtection.description       "Tracking is when companies collect information about you to build a profile and display content based on your browsing and personal data.">
-<!ENTITY  trackingProtection.radioGroupLabel   "Block known tracking companies from displaying content">
+<!ENTITY  trackingProtection.description       "Tracking is the collection of your browsing data across multiple websites. Tracking can be used to build a profile and display content based on your browsing and personal information.">
+<!ENTITY  trackingProtection.radioGroupLabel   "Use Tracking Protection to block known trackers">
 <!ENTITY  trackingProtectionAlways.label       "Always">
 <!ENTITY  trackingProtectionAlways.accesskey   "y">
 <!ENTITY  trackingProtectionPrivate.label      "Only in private windows">
 <!ENTITY  trackingProtectionPrivate.accesskey  "l">
 <!ENTITY  trackingProtectionNever.label        "Never">
 <!ENTITY  trackingProtectionNever.accesskey    "n">
 <!ENTITY  trackingProtectionLearnMore.label    "Learn more">
 <!ENTITY  trackingProtectionExceptions.label   "Exceptions…">
 <!ENTITY  trackingProtectionExceptions.accesskey "x">
 
-<!ENTITY tracking.label                 "Tracking">
 <!ENTITY trackingProtectionPBM5.label         "Use Tracking Protection in Private Windows">
 <!ENTITY trackingProtectionPBM5.accesskey     "v">
+<!ENTITY trackingProtectionPBM6.label         "Use Tracking Protection in Private Browsing to block known trackers">
+<!ENTITY trackingProtectionPBM6.accesskey     "v">
 <!ENTITY trackingProtectionPBMLearnMore.label "Learn more">
 <!ENTITY changeBlockList.label          "Change Block List">
 <!ENTITY changeBlockList.accesskey      "C">
 
-<!-- LOCALIZATION NOTE (doNotTrack.pre.label): include a trailing space as needed -->
-<!-- LOCALIZATION NOTE (doNotTrack.post.label): include a starting space as needed -->
-<!ENTITY  doNotTrack.pre.label          "You can also ">
-<!ENTITY  doNotTrack.settings.label     "manage your Do Not Track settings">
-<!ENTITY  doNotTrack.post.label         ".">
+<!ENTITY  doNotTrack.description        "Send websites a “Do Not Track” signal that you don’t want to be tracked">
+<!ENTITY  doNotTrack.learnMore.label    "Learn more">
+<!ENTITY  doNotTrack.default.label      "Only when using Tracking Protection">
+<!ENTITY  doNotTrack.always.label       "Always">
 
 <!ENTITY  history.label                 "History">
 
 <!ENTITY  locationBar.label             "Location Bar">
 
 <!ENTITY  locbar.suggest2.label         "When using the location bar, suggest">
 <!ENTITY  locbar.history.label          "History">
 <!ENTITY  locbar.history.accesskey      "H">
--- a/browser/themes/shared/incontentprefs/preferences.inc.css
+++ b/browser/themes/shared/incontentprefs/preferences.inc.css
@@ -231,21 +231,18 @@ treecol {
   font-weight: normal;
 }
 
 .doNotTrackLearnMore > label {
   font-size: 1em !important;
   margin-left: 0;
 }
 
-/* This learn-more link is inserted at the end of a
-   xul:description element so it should behave like normal text. */
-#trackingProtectionLearnMore {
-  white-space: normal;
-  margin-inline-start: 0;
+#doNotTrackLearnMoreBox {
+  margin-top: 30px
 }
 
 #trackingProtectionAdvancedSettings {
   margin-inline-start: 15px;
 }
 
 #crashReporterGroup {
   margin-top: 0;