Bug 1462471 - Link to permission preferences from the identity popup permissions section. r=prathiksha draft
authorJohann Hofmann <jhofmann@mozilla.com>
Fri, 01 Jun 2018 23:17:52 +0200
changeset 803076 713003dcc2e35aba0283797e96fe13559990d744
parent 802486 1951c638b2dfc7d39a9dea64cb0557f0cbdfaf00
push id112023
push userjhofmann@mozilla.com
push dateFri, 01 Jun 2018 21:18:34 +0000
reviewersprathiksha
bugs1462471
milestone62.0a1
Bug 1462471 - Link to permission preferences from the identity popup permissions section. r=prathiksha MozReview-Commit-ID: 4XNBfztgWOG
browser/base/content/browser-siteIdentity.js
browser/components/controlcenter/content/panel.inc.xul
browser/components/preferences/in-content/privacy.xul
browser/locales/en-US/chrome/browser/browser.dtd
--- a/browser/base/content/browser-siteIdentity.js
+++ b/browser/base/content/browser-siteIdentity.js
@@ -242,16 +242,20 @@ var gIdentityHandler = {
       if (SiteDataManager.promptSiteDataRemoval(window, hosts)) {
         SiteDataManager.remove(hosts);
       }
     }
 
     event.stopPropagation();
   },
 
+  openPermissionPreferences() {
+    openPreferences("privacy-permissions", { origin: "identityPopup-permissions-PreferencesButton" });
+  },
+
   /**
    * Handler for mouseclicks on the "More Information" button in the
    * "identity-popup" panel.
    */
   handleMoreInfoClick(event) {
     displaySecurityInfo();
     event.stopPropagation();
     PanelMultiView.hidePopup(this._identityPopup);
--- a/browser/components/controlcenter/content/panel.inc.xul
+++ b/browser/components/controlcenter/content/panel.inc.xul
@@ -103,19 +103,25 @@
                   oncommand="TrackingProtection.enableForCurrentPage();" />
         </vbox>
       </hbox>
 
       <!-- Permissions Section -->
       <hbox class="identity-popup-section"
             when-connection="not-secure secure secure-ev secure-cert-user-overridden file extension">
         <vbox id="identity-popup-permissions-content" flex="1">
-          <label id="identity-popup-permissions-headline"
-                 class="identity-popup-headline"
-                 value="&identity.permissions;"/>
+          <hbox class="identity-popup-preferences-button-container">
+            <label id="identity-popup-permissions-headline"
+                   class="identity-popup-headline"
+                   value="&identity.permissions;"/>
+            <toolbarbutton id="identity-popup-permission-preferences-button"
+                           class="identity-popup-preferences-button subviewbutton"
+                           tooltiptext="&identity.permissionsPreferences.tooltip;"
+                           oncommand="gIdentityHandler.openPermissionPreferences();" />
+          </hbox>
           <vbox id="identity-popup-permission-list"/>
           <description id="identity-popup-permission-reload-hint">&identity.permissionsReloadHint;</description>
           <description id="identity-popup-permission-empty-hint">&identity.permissionsEmpty;</description>
         </vbox>
       </hbox>
 
       <!-- Clear Site Data Button -->
       <vbox hidden="true"
--- a/browser/components/preferences/in-content/privacy.xul
+++ b/browser/components/preferences/in-content/privacy.xul
@@ -380,17 +380,17 @@
       data-category="panePrivacy">
   <label class="header-name" flex="1" data-l10n-id="permissions-header"/>
 </hbox>
 
 <!-- Permissions -->
 <groupbox id="permissionsGroup" data-category="panePrivacy" hidden="true">
   <caption class="search-header" hidden="true"><label data-l10n-id="permissions-header"/></caption>
 
-  <grid>
+  <grid data-subcategory="permissions">
     <columns>
       <column flex="1"/>
       <column/>
     </columns>
     <rows>
       <row id="locationSettingsRow" align="center">
         <description flex="1">
           <image class="geo-icon permission-icon" />
--- a/browser/locales/en-US/chrome/browser/browser.dtd
+++ b/browser/locales/en-US/chrome/browser/browser.dtd
@@ -793,16 +793,17 @@ you can use these alternative items. Oth
 
 <!ENTITY identity.moreInfoLinkText2 "More Information">
 
 <!ENTITY identity.clearSiteData "Clear Cookies and Site Data…">
 
 <!ENTITY identity.permissions "Permissions">
 <!ENTITY identity.permissionsEmpty "You have not granted this site any special permissions.">
 <!ENTITY identity.permissionsReloadHint "You may need to reload the page for changes to apply.">
+<!ENTITY identity.permissionsPreferences.tooltip "Open Permissions Preferences">
 
 <!-- Name for the tabs toolbar as spoken by screen readers.
      The word "toolbar" is appended automatically and should not be contained below! -->
 <!ENTITY tabsToolbar.label "Browser tabs">
 
 <!-- LOCALIZATION NOTE (syncTabsMenu3.label): This appears in the history menu -->
 <!ENTITY syncTabsMenu3.label     "Synced Tabs">