author | Zibi Braniecki <zbraniecki@mozilla.com> |
Thu, 15 Mar 2018 14:57:55 -0700 | |
changeset 776023 | a9b62975ce9f1ee6c636494c278e4a6a4162b9e3 |
parent 776018 | c44f60c43432d468639b5fe078420e60c13fd3de |
child 776304 | 8746455c66ad0421f83558cefe55825f43516928 |
child 776594 | ed950f217d35b00b1411a0151dd22020a55def05 |
child 776606 | e9b5e1505ac436b28a7e71ee46dc5f477bd94f44 |
child 776955 | 1654b17c03b0de93ecb0034445d3af338080c4e2 |
child 777114 | 663d6301cbc2b8b50b1b782345abce6956b79116 |
push id | 104785 |
push user | bmo:gandalf@aviary.pl |
push date | Mon, 02 Apr 2018 13:12:24 +0000 |
reviewers | flod, jaws |
bugs | 1446180 |
milestone | 61.0a1 |
--- a/browser/branding/aurora/locales/en-US/brand.ftl +++ b/browser/branding/aurora/locales/en-US/brand.ftl @@ -1,15 +1,16 @@ # 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/. -## Firefox Brand +## Firefox and Mozilla Brand ## -## Firefox must be treated as a brand, and kept in English. +## Firefox and Mozilla must be treated as a brand, and kept in English. ## It cannot be: ## - Declined to adapt to grammatical case. ## - Transliterated. ## - Translated. ## ## Reference: https://www.mozilla.org/styleguide/communications/translation/ -brand-short-name = Firefox Developer Edition +-vendor-short-name = Mozilla
--- a/browser/branding/nightly/locales/en-US/brand.ftl +++ b/browser/branding/nightly/locales/en-US/brand.ftl @@ -8,8 +8,9 @@ ## It cannot be: ## - Declined to adapt to grammatical case. ## - Transliterated. ## - Translated. ## ## Reference: https://www.mozilla.org/styleguide/communications/translation/ -brand-short-name = Nightly +-vendor-short-name = Mozilla
--- a/browser/branding/official/locales/en-US/brand.ftl +++ b/browser/branding/official/locales/en-US/brand.ftl @@ -8,8 +8,9 @@ ## It cannot be: ## - Declined to adapt to grammatical case. ## - Transliterated. ## - Translated. ## ## Reference: https://www.mozilla.org/styleguide/communications/translation/ -brand-short-name = Firefox +-vendor-short-name = Mozilla
--- a/browser/branding/unofficial/locales/en-US/brand.ftl +++ b/browser/branding/unofficial/locales/en-US/brand.ftl @@ -8,8 +8,9 @@ ## It cannot be: ## - Declined to adapt to grammatical case. ## - Transliterated. ## - Translated. ## ## Reference: https://www.mozilla.org/styleguide/communications/translation/ -brand-short-name = Nightly +-vendor-short-name = Mozilla
--- a/browser/components/preferences/in-content/preferences.xul +++ b/browser/components/preferences/in-content/preferences.xul @@ -13,17 +13,16 @@ href="chrome://browser/content/preferences/handlers.css"?> <?xml-stylesheet href="chrome://browser/skin/preferences/applications.css"?> <?xml-stylesheet href="chrome://browser/skin/preferences/in-content/search.css"?> <?xml-stylesheet href="chrome://browser/skin/preferences/in-content/containers.css"?> <?xml-stylesheet href="chrome://browser/skin/preferences/in-content/privacy.css"?> <!DOCTYPE page [ <!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd"> -<!ENTITY % globalPreferencesDTD SYSTEM "chrome://global/locale/preferences.dtd"> <!ENTITY % preferencesDTD SYSTEM "chrome://browser/locale/preferences/preferences.dtd"> <!ENTITY % selectBookmarkDTD SYSTEM "chrome://browser/locale/preferences/selectBookmark.dtd"> <!ENTITY % languagesDTD SYSTEM "chrome://browser/locale/preferences/languages.dtd"> <!ENTITY % fontDTD SYSTEM "chrome://browser/locale/preferences/fonts.dtd"> <!ENTITY % colorsDTD SYSTEM "chrome://browser/locale/preferences/colors.dtd"> <!ENTITY % permissionsDTD SYSTEM "chrome://browser/locale/preferences/permissions.dtd"> @@ -34,50 +33,43 @@ <!ENTITY % connectionDTD SYSTEM "chrome://browser/locale/preferences/connection.dtd"> <!ENTITY % siteDataSettingsDTD SYSTEM "chrome://browser/locale/preferences/siteDataSettings.dtd" > <!ENTITY % clearSiteDataDTD SYSTEM "chrome://browser/locale/preferences/clearSiteData.dtd" > <!ENTITY % privacyDTD SYSTEM "chrome://browser/locale/preferences/privacy.dtd"> <!ENTITY % syncBrandDTD SYSTEM "chrome://browser/locale/syncBrand.dtd"> <!ENTITY % syncDTD SYSTEM "chrome://browser/locale/preferences/sync.dtd"> -<!ENTITY % securityDTD SYSTEM - "chrome://browser/locale/preferences/security.dtd"> <!ENTITY % sanitizeDTD SYSTEM "chrome://browser/locale/sanitize.dtd"> <!ENTITY % mainDTD SYSTEM "chrome://browser/locale/preferences/main.dtd"> <!ENTITY % aboutHomeDTD SYSTEM "chrome://browser/locale/aboutHome.dtd"> <!ENTITY % contentDTD SYSTEM "chrome://browser/locale/preferences/content.dtd"> -<!ENTITY % advancedDTD SYSTEM - "chrome://browser/locale/preferences/advanced.dtd"> <!ENTITY % aboutDialogDTD SYSTEM "chrome://browser/locale/aboutDialog.dtd" > %aboutDialogDTD; %brandDTD; -%globalPreferencesDTD; %preferencesDTD; %selectBookmarkDTD; %languagesDTD; %fontDTD; %colorsDTD; %permissionsDTD; %passwordManagerDTD; %historyDTD; %certManagerDTD; %deviceManangerDTD; %connectionDTD; %siteDataSettingsDTD; %clearSiteDataDTD; %privacyDTD; %syncBrandDTD; %syncDTD; -%securityDTD; %sanitizeDTD; %mainDTD; %aboutHomeDTD; %contentDTD; -%advancedDTD; ]> #ifdef XP_WIN #define USE_WIN_TITLE_STYLE #endif <page xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml"
--- a/browser/components/preferences/in-content/privacy.js +++ b/browser/components/preferences/in-content/privacy.js @@ -324,22 +324,17 @@ var gPrivacyPane = { let bundlePrefs = document.getElementById("bundlePreferences"); if (AlertsServiceDND) { let notificationsDoNotDisturbBox = document.getElementById("notificationsDoNotDisturbBox"); notificationsDoNotDisturbBox.removeAttribute("hidden"); let checkbox = document.getElementById("notificationsDoNotDisturb"); - let brandName = document.getElementById("bundleBrand") - .getString("brandShortName"); - checkbox.setAttribute("label", - bundlePrefs.getFormattedString("pauseNotifications.label", - [brandName])); - checkbox.setAttribute("accesskey", bundlePrefs.getString("pauseNotifications.accesskey")); + document.l10n.setAttributes(checkbox, "permissions-notification-pause"); if (AlertsServiceDND.manualDoNotDisturb) { let notificationsDoNotDisturb = document.getElementById("notificationsDoNotDisturb"); notificationsDoNotDisturb.setAttribute("checked", true); } } if (Services.prefs.getBoolPref("browser.storageManager.enabled")) {
--- a/browser/components/preferences/in-content/privacy.xul +++ b/browser/components/preferences/in-content/privacy.xul @@ -8,134 +8,137 @@ src="chrome://browser/content/preferences/in-content/privacy.js"/> <stringbundle id="bundlePreferences" src="chrome://browser/locale/preferences/preferences.properties"/> <stringbundle id="signonBundle" src="chrome://passwordmgr/locale/passwordmgr.properties"/> <hbox id="browserPrivacyCategory" class="subcategory" hidden="true" data-category="panePrivacy"> - <label class="header-name" flex="1">&browserPrivacy.label;</label> + <label class="header-name" flex="1" data-l10n-id="privacy-header"/> </hbox> <!-- Passwords --> <groupbox id="passwordsGroup" orient="vertical" data-category="panePrivacy" hidden="true"> - <caption><label>&formsAndPasswords.label;</label></caption> + <caption><label data-l10n-id="forms-header"/></caption> <vbox id="passwordSettings"> <hbox id="savePasswordsBox"> <checkbox id="savePasswords" - label="&rememberLogins2.label;" accesskey="&rememberLogins2.accesskey;" + data-l10n-id="forms-remember-logins" preference="signon.rememberSignons" onsyncfrompreference="return gPrivacyPane.readSavePasswords();" flex="1" /> <!-- Please don't remove the wrapping hbox/vbox/box for these elements. It's used to properly compute the search tooltip position. --> <hbox> <button id="passwordExceptions" class="accessory-button" - label="&passwordExceptions.label;" - accesskey="&passwordExceptions.accesskey;" + data-l10n-id="forms-exceptions" preference="pref.privacy.disable_button.view_passwords_exceptions" searchkeywords="&address2.label;"/> </hbox> </hbox> <hbox id="showPasswordBox" pack="end"> <!-- Please don't remove the wrapping hbox/vbox/box for these elements. It's used to properly compute the search tooltip position. --> <hbox> <button id="showPasswords" class="accessory-button" - label="&savedLogins.label;" accesskey="&savedLogins.accesskey;" - preference="pref.privacy.disable_button.view_passwords" - searchkeywords="&savedLogins.title;"/> + data-l10n-id="forms-saved-logins" + search-l10n-ids="forms-saved-logins.label" + preference="pref.privacy.disable_button.view_passwords"/> </hbox> </hbox> </vbox> <hbox id="masterPasswordRow"> <checkbox id="useMasterPassword" - label="&useMasterPassword.label;" - accesskey="&useMasterPassword.accesskey;" + data-l10n-id="forms-master-pw-use" flex="1"/> <!-- Please don't remove the wrapping hbox/vbox/box for these elements. It's used to properly compute the search tooltip position. --> <hbox> <button id="changeMasterPassword" class="accessory-button" - label="&changeMasterPassword.label;" - accesskey="&changeMasterPassword.accesskey;"/> + data-l10n-id="forms-master-pw-change"/> </hbox> </hbox> </groupbox> <!-- History --> <groupbox id="historyGroup" data-category="panePrivacy" hidden="true"> - <caption><label>&history.label;</label></caption> + <caption><label data-l10n-id="history-header"/></caption> <hbox align="center"> <label id="historyModeLabel" control="historyMode" accesskey="&historyHeader2.pre.accesskey;">&historyHeader2.pre.label; </label> <!-- Please don't remove the wrapping hbox/vbox/box for these elements. It's used to properly compute the search tooltip position. --> <hbox> <menulist id="historyMode"> <menupopup> - <menuitem label="&historyHeader.remember.label;" value="remember" searchkeywords="&rememberDescription1.label;"/> - <menuitem label="&historyHeader.dontremember.label;" value="dontremember" searchkeywords="&dontrememberDescription.label;"/> - <menuitem label="&historyHeader.custom.label;" value="custom" searchkeywords="&privateBrowsingPermanent2.label; - &rememberHistory2.label; - &rememberSearchForm.label; - &clearOnClose.label; - &clearOnCloseSettings.label;"/> + <menuitem label="&historyHeader.remember.label;" + value="remember" + search-l10n-ids="history-remember-description"/> + <menuitem label="&historyHeader.dontremember.label;" + value="dontremember" + search-l10n-ids="history-dontremember-description"/> + <menuitem label="&historyHeader.custom.label;" + value="custom" + search-l10n-ids=" + history-private-browsing-permanent.label, + history-remember-option.label, + history-remember-search-option.label, + history-clear-on-close-option.label, + history-clear-on-close-settings.label"/> </menupopup> </menulist> </hbox> <label>&historyHeader.post.label;</label> </hbox> <hbox> <deck id="historyPane" flex="1"> <vbox id="historyRememberPane"> <hbox align="center" flex="1"> <vbox flex="1"> - <description class="description-with-side-element">&rememberDescription1.label;</description> + <description + class="description-with-side-element" + data-l10n-id="history-remember-description"/> </vbox> </hbox> </vbox> <vbox id="historyDontRememberPane"> <hbox align="center" flex="1"> <vbox flex="1"> - <description class="description-with-side-element">&dontrememberDescription.label;</description> + <description + class="description-with-side-element" + data-l10n-id="history-dontremember-description"/> </vbox> </hbox> </vbox> <vbox id="historyCustomPane"> <vbox> <checkbox id="privateBrowsingAutoStart" - label="&privateBrowsingPermanent2.label;" - accesskey="&privateBrowsingPermanent2.accesskey;" + data-l10n-id="history-private-browsing-permanent" preference="browser.privatebrowsing.autostart"/> <vbox class="indent"> <checkbox id="rememberHistory" - label="&rememberHistory2.label;" - accesskey="&rememberHistory2.accesskey;" + data-l10n-id="history-remember-option" preference="places.history.enabled"/> <checkbox id="rememberForms" - label="&rememberSearchForm.label;" - accesskey="&rememberSearchForm.accesskey;" + data-l10n-id="history-remember-search-option" preference="browser.formfill.enable"/> <hbox id="clearDataBox" align="center"> <checkbox id="alwaysClear" preference="privacy.sanitize.sanitizeOnShutdown" - label="&clearOnClose.label;" - accesskey="&clearOnClose.accesskey;" + data-l10n-id="history-clear-on-close-option" flex="1" /> <!-- Please don't remove the wrapping hbox/vbox/box for these elements. It's used to properly compute the search tooltip position. --> <hbox> <button id="clearDataSettings" class="accessory-button" - label="&clearOnCloseSettings.label;" - accesskey="&clearOnCloseSettings.accesskey;" + data-l10n-id="history-clear-on-close-settings" searchkeywords="&clearDataSettings3.label; &historySection.label; &itemHistoryAndDownloads.label; &itemCookies.label; &itemActiveLogins.label; &itemCache.label; &itemFormSearchHistory.label; &dataSection.label; @@ -146,108 +149,105 @@ </vbox> </vbox> </vbox> </deck> <vbox align="end"> <button id="clearHistoryButton" class="accessory-button" icon="clear" - label="&clearHistoryButton.label;" - accesskey="&clearHistoryButton.accesskey;"/> + data-l10n-id="history-clear-button"/> </vbox> </hbox> </groupbox> <!-- Site Data --> <groupbox id="siteDataGroup" hidden="true" data-category="panePrivacy" data-hidden-from-search="true"> - <caption><label>&siteData1.label;</label></caption> + <caption><label data-l10n-id="sitedata-header"/></caption> <hbox data-subcategory="sitedata" align="baseline"> <vbox flex="1"> <description class="description-with-side-element" flex="1"> <html:span id="totalSiteDataSize" class="tail-with-learn-more"></html:span> - <label id="siteDataLearnMoreLink" class="learnMore text-link">&siteDataLearnMoreLink.label;</label> + <label id="siteDataLearnMoreLink" + class="learnMore text-link" data-l10n-id="sitedata-learn-more"/> </description> <radiogroup id="acceptCookies" preference="network.cookie.cookieBehavior" onsyncfrompreference="return gPrivacyPane.readAcceptCookies();" onsynctopreference="return gPrivacyPane.writeAcceptCookies();"> <hbox id="cookiesBox"> - <radio label="&acceptCookies4.label;" - value="0" - accesskey="&acceptCookies4.accesskey;" + <radio value="0" + data-l10n-id="sitedata-accept-cookies-option" flex="1" /> </hbox> <hbox id="keepRow" class="indent" align="center"> <label id="keepUntil" control="keepCookiesUntil" - accesskey="&keepUntil2.accesskey;">&keepUntil2.label;</label> + data-l10n-id="sitedata-keep-until"/> <!-- Please don't remove the wrapping hbox/vbox/box for these elements. It's used to properly compute the search tooltip position. --> <hbox> <menulist id="keepCookiesUntil" onsyncfrompreference="return gPrivacyPane.readKeepCookiesUntil();" preference="network.cookie.lifetimePolicy"> <menupopup> - <menuitem label="&expire.label;" value="0"/> - <menuitem label="&close.label;" value="2"/> + <menuitem data-l10n-id="sitedata-keep-until-expire" value="0"/> + <menuitem data-l10n-id="sitedata-keep-until-closed" value="2"/> </menupopup> </menulist> </hbox> </hbox> <hbox id="acceptThirdPartyRow" class="indent" align="center"> <label id="acceptThirdPartyLabel" control="acceptThirdPartyMenu" - accesskey="&acceptThirdParty3.pre.accesskey;">&acceptThirdParty3.pre.label;</label> + data-l10n-id="sitedata-accept-third-party-desc"/> <!-- Please don't remove the wrapping hbox/vbox/box for these elements. It's used to properly compute the search tooltip position. --> <hbox> <menulist id="acceptThirdPartyMenu" preference="network.cookie.cookieBehavior" onsyncfrompreference="return gPrivacyPane.readAcceptThirdPartyCookies();" onsynctopreference="return gPrivacyPane.writeAcceptThirdPartyCookies();"> <menupopup> - <menuitem label="&acceptThirdParty.always.label;" value="always"/> - <menuitem label="&acceptThirdParty.visited.label;" value="visited"/> - <menuitem label="&acceptThirdParty.never.label;" value="never"/> + <menuitem data-l10n-id="sitedata-accept-third-party-always-option" value="always"/> + <menuitem data-l10n-id="sitedata-accept-third-party-visited-option" value="visited"/> + <menuitem data-l10n-id="sitedata-accept-third-party-never-option" value="never"/> </menupopup> </menulist> </hbox> </hbox> - <radio label="&blockCookies.label;" + <radio data-l10n-id="sitedata-block-cookies-option" value="2" - accesskey="&blockCookies.accesskey;" flex="1" /> </radiogroup> </vbox> <vbox> <!-- Please don't remove the wrapping hbox/vbox/box for these elements. It's used to properly compute the search tooltip position. --> <hbox> <button id="clearSiteDataButton" class="accessory-button" icon="clear" searchkeywords="&clearSiteData.label; &clearCache.label;" - label="&clearSiteData1.label;" accesskey="&clearSiteData1.accesskey;"/> + data-l10n-id="sitedata-clear"/> </hbox> <hbox> <button id="siteDataSettings" class="accessory-button" - label="&siteDataSettings1.label;" - accesskey="&siteDataSettings1.accesskey;" + data-l10n-id="sitedata-settings" searchkeywords="&window2.title; &hostCol.label; &cookiesCol.label; &usageCol.label;"/> </hbox> <hbox> <button id="cookieExceptions" class="accessory-button" - label="&cookieExceptions.label;" accesskey="&cookieExceptions.accesskey;" + data-l10n-id="sitedata-cookies-exceptions" preference="pref.privacy.disable_button.cookie_exceptions" searchkeywords="&address2.label; &block.label; &session.label; &allow.label; &removepermission2.label; &removeallpermissions2.label; &button.cancel.label; @@ -256,109 +256,101 @@ </vbox> </hbox> </groupbox> <!-- Address Bar --> <groupbox id="locationBarGroup" data-category="panePrivacy" hidden="true"> - <caption><label>&addressBar.label;</label></caption> - <label id="locationBarSuggestionLabel">&addressBar.suggest.label;</label> - <checkbox id="historySuggestion" label="&locbar.history2.label;" - accesskey="&locbar.history2.accesskey;" + <caption><label data-l10n-id="addressbar-header"/></caption> + <label id="locationBarSuggestionLabel" data-l10n-id="addressbar-suggest"/> + <checkbox id="historySuggestion" data-l10n-id="addressbar-locbar-history-option" preference="browser.urlbar.suggest.history"/> - <checkbox id="bookmarkSuggestion" label="&locbar.bookmarks.label;" - accesskey="&locbar.bookmarks.accesskey;" + <checkbox id="bookmarkSuggestion" data-l10n-id="addressbar-locbar-bookmarks-option" preference="browser.urlbar.suggest.bookmark"/> - <checkbox id="openpageSuggestion" label="&locbar.openpage.label;" - accesskey="&locbar.openpage.accesskey;" + <checkbox id="openpageSuggestion" data-l10n-id="addressbar-locbar-openpage-option" preference="browser.urlbar.suggest.openpage"/> - <label class="text-link" id="openSearchEnginePreferences"> - &suggestionSettings2.label; - </label> + <label class="text-link" id="openSearchEnginePreferences" + data-l10n-id="addressbar-suggestions-settings"/> </groupbox> <!-- Tracking --> <groupbox id="trackingGroup" data-category="panePrivacy" hidden="true"> - <caption><label>&trackingProtectionHeader2.label;</label></caption> + <caption><label data-l10n-id="tracking-header"/></caption> <vbox> <hbox align="start"> <vbox flex="1"> - <description> - &trackingProtection3.description; - <label id="trackingProtectionLearnMore" class="learnMore text-link">&trackingProtectionLearnMore2.label;</label> + <description data-l10n-id="tracking-description"> + <a id="trackingProtectionLearnMore" target="_blank" class="learnMore text-link"/> </description> </vbox> <spacer flex="1"/> </hbox> <hbox> <vbox id="trackingProtectionBox" flex="1" hidden="true"> <vbox> <hbox id="trackingProtectionExtensionContentLabel" align="center" hidden="true"> <description control="disableTrackingProtectionExtension" flex="1"/> </hbox> <vbox> <description id="trackingProtectionDesc" control="trackingProtectionRadioGroup"> - <label>&trackingProtection3.radioGroupLabel;</label> + <label data-l10n-id="tracking-mode-label"/> </description> <radiogroup id="trackingProtectionRadioGroup" aria-labelledby="trackingProtectionDesc"> <radio value="always" - label="&trackingProtectionAlways.label;" - accesskey="&trackingProtectionAlways.accesskey;"/> + data-l10n-id="tracking-mode-always"/> <radio value="private" - label="&trackingProtectionPrivate.label;" - accesskey="&trackingProtectionPrivate.accesskey;"/> + data-l10n-id="tracking-mode-private"/> <radio value="never" - label="&trackingProtectionNever.label;" - accesskey="&trackingProtectionNever.accesskey;"/> + data-l10n-id="tracking-mode-never"/> </radiogroup> </vbox> </vbox> </vbox> <vbox id="trackingProtectionPBMBox" flex="1"> <hbox id="trackingProtectionPBMExtensionContentLabel" align="center" hidden="true"> <description control="disableTrackingProtectionExtension" flex="1"/> </hbox> <hbox align="start"> <checkbox id="trackingProtectionPBM" - preference="privacy.trackingprotection.pbmode.enabled" - accesskey="&trackingProtectionPBM6.accesskey;"/> - <label id="trackingProtectionPBMLabel" flex="1">&trackingProtectionPBM6.label;</label> + preference="privacy.trackingprotection.pbmode.enabled"/> + <label id="trackingProtectionPBMLabel" + flex="1" + control="trackingProtectionPBM" + data-l10n-id="tracking-pbm-label"/> </hbox> </vbox> <vbox id="trackingProtectionAdvancedSettings"> <hbox id="trackingProtectionExtensionContentButton" hidden="true"> <button id="disableTrackingProtectionExtension" class="extension-controlled-button accessory-button" flex="1" - label="&disableExtension.label;"/> + data-l10n-id="disable-extension"/> </hbox> <!-- Please don't remove the wrapping hbox/vbox/box for these elements. It's used to properly compute the search tooltip position. --> <hbox> <button id="trackingProtectionExceptions" class="accessory-button" flex="1" hidden="true" - label="&trackingProtectionExceptions.label;" - accesskey="&trackingProtectionExceptions.accesskey;" + data-l10n-id="tracking-exceptions" preference="pref.privacy.disable_button.tracking_protection_exceptions" searchkeywords="&removepermission2.label; &removeallpermissions2.label; &button.cancel.label; &button.ok.label;"/> </hbox> <!-- Please don't remove the wrapping hbox/vbox/box for these elements. It's used to properly compute the search tooltip position. --> <hbox> <button id="changeBlockList" class="accessory-button" flex="1" - label="&changeBlockList2.label;" - accesskey="&changeBlockList2.accesskey;" + data-l10n-id="tracking-change-block-list" preference="pref.privacy.disable_button.change_blocklist" searchkeywords="&button.cancel.label; &button.ok.label;"/> </hbox> </vbox> </hbox> <vbox id="doNotTrackLearnMoreBox"> <label><label class="tail-with-learn-more" data-l10n-id="do-not-track-description"></label><label class="learnMore text-link" href="https://www.mozilla.org/dnt" @@ -370,96 +362,95 @@ </vbox> </vbox> </groupbox> <hbox id="permissionsCategory" class="subcategory" hidden="true" data-category="panePrivacy"> - <label class="header-name" flex="1">&permissions.label;</label> + <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>&permissions.label;</label></caption> + <caption class="search-header" hidden="true"><label data-l10n-id="permissions-header"/></caption> <grid> <columns> <column flex="1"/> <column/> </columns> <rows> <row id="locationSettingsRow" align="center"> <description flex="1"> <image class="geo-icon permission-icon" /> <separator orient="vertical" class="thin"/> - <label id="locationPermissionsLabel">&locationPermissions.label;</label> + <label id="locationPermissionsLabel" data-l10n-id="permissions-location"/> </description> <hbox pack="end"> <button id="locationSettingsButton" class="accessory-button" - label="&locationSettingsButton.label;" - accesskey="&locationSettingsButton.accesskey;" + data-l10n-id="permissions-location-settings" searchkeywords="&removepermission2.label; &removeallpermissions2.label; &button.cancel.label; &button.ok.label;"/> </hbox> </row> <row id="cameraSettingsRow" align="center"> <description flex="1"> <image class="camera-icon permission-icon" /> <separator orient="vertical" class="thin"/> - <label id="cameraPermissionsLabel">&cameraPermissions.label;</label> + <label id="cameraPermissionsLabel" data-l10n-id="permissions-camera"/> </description> <hbox pack="end"> <button id="cameraSettingsButton" class="accessory-button" - label="&cameraSettingsButton.label;" - accesskey="&cameraSettingsButton.accesskey;" + data-l10n-id="permissions-camera-settings" searchkeywords="&removepermission2.label; &removeallpermissions2.label; &button.cancel.label; &button.ok.label;"/> </hbox> </row> <row id="microphoneSettingsRow" align="center"> <description flex="1"> <image class="microphone-icon permission-icon" /> <separator orient="vertical" class="thin"/> - <label id="microphonePermissionsLabel">µphonePermissions.label;</label> + <label id="microphonePermissionsLabel" data-l10n-id="permissions-microphone"/> </description> <hbox pack="end"> <button id="microphoneSettingsButton" class="accessory-button" - label="µphoneSettingsButton.label;" - accesskey="µphoneSettingsButton.accesskey;" + data-l10n-id="permissions-microphone-settings" searchkeywords="&removepermission2.label; &removeallpermissions2.label; &button.cancel.label; &button.ok.label;"/> </hbox> </row> <row id="notificationSettingsRow" align="center"> <description flex="1"> <image class="desktop-notification-icon permission-icon" /> <separator orient="vertical" class="thin"/> - <label id="notificationPermissionsLabel" class="tail-with-learn-more">¬ificationPermissions.label;</label> + <label id="notificationPermissionsLabel" + class="tail-with-learn-more" + data-l10n-id="permissions-notification"/> <label id="notificationPermissionsLearnMore" - class="learnMore text-link">¬ificationPermissionsLearnMore.label;</label> + class="learnMore text-link" + data-l10n-id="permissions-notification-link"/> </description> <hbox pack="end"> <button id="notificationSettingsButton" class="accessory-button" - label="¬ificationSettingsButton.label;" - accesskey="¬ificationSettingsButton.accesskey;" + data-l10n-id="permissions-notification-settings" searchkeywords="&removepermission2.label; &removeallpermissions2.label; &button.cancel.label; &button.ok.label;"/> </hbox> </row> </rows> </grid> @@ -467,184 +458,177 @@ <vbox id="notificationsDoNotDisturbBox" hidden="true"> <checkbox id="notificationsDoNotDisturb" class="indent"/> </vbox> <separator flex="1"/> <hbox align="start"> <checkbox id="popupPolicy" preference="dom.disable_open_during_load" - label="&blockPopups.label;" accesskey="&blockPopups.accesskey;" + data-l10n-id="permissions-block-popups" onsyncfrompreference="return gPrivacyPane.updateButtons('popupPolicyButton', 'dom.disable_open_during_load');" flex="1" /> <!-- Please don't remove the wrapping hbox/vbox/box for these elements. It's used to properly compute the search tooltip position. --> <hbox> <button id="popupPolicyButton" class="accessory-button" - label="&popupExceptions.label;" - accesskey="&popupExceptions.accesskey;" + data-l10n-id="permissions-block-popups-exceptions" searchkeywords="&address2.label; &button.cancel.label; &button.ok.label;"/> </hbox> </hbox> <hbox id="addonInstallBox"> <checkbox id="warnAddonInstall" - label="&warnOnAddonInstall2.label;" - accesskey="&warnOnAddonInstall2.accesskey;" + data-l10n-id="permissions-addon-install-warning" preference="xpinstall.whitelist.required" onsyncfrompreference="return gPrivacyPane.readWarnAddonInstall();" flex="1" /> <!-- Please don't remove the wrapping hbox/vbox/box for these elements. It's used to properly compute the search tooltip position. --> <hbox> <button id="addonExceptions" class="accessory-button" - label="&addonExceptions.label;" - accesskey="&addonExceptions.accesskey;" + data-l10n-id="permissions-addon-exceptions" searchkeywords="&address2.label; &allow.label; &removepermission2.label; &removeallpermissions2.label; &button.cancel.label; &button.ok.label;"/> </hbox> </hbox> <vbox id="a11yPermissionsBox"> <hbox flex="1" align="center"> <checkbox id="a11yPrivacyCheckbox" class="tail-with-learn-more" - label="&a11yPrivacy.checkbox.label;" - accesskey="&a11yPrivacy.checkbox.accesskey;" + data-l10n-id="permissions-a11y-privacy-checkbox" oncommand="return gPrivacyPane.updateA11yPrefs(this.checked)"/> <label id="a11yLearnMoreLink" class="learnMore text-link" - value="&a11yPrivacy.learnmore.label;"></label> + data-l10n-id="permissions-a11y-privacy-link"/> </hbox> </vbox> </groupbox> <!-- Firefox Data Collection and Use --> #ifdef MOZ_DATA_REPORTING <hbox id="dataCollectionCategory" class="subcategory" hidden="true" data-category="panePrivacy"> - <label class="header-name" flex="1">&dataCollection.label;</label> + <label class="header-name" flex="1" data-l10n-id="collection-header"/> </hbox> <groupbox id="dataCollectionGroup" data-category="panePrivacy" hidden="true"> - <caption class="search-header" hidden="true"><label>&dataCollection.label;</label></caption> + <caption class="search-header" hidden="true"><label data-l10n-id="collection-header"/></caption> <description> - <label class="tail-with-learn-more">&dataCollectionDesc.label;</label><label id="dataCollectionPrivacyNotice" class="learnMore text-link">&dataCollectionPrivacyNotice.label;</label> + <label class="tail-with-learn-more" data-l10n-id="collection-description"/> + <label id="dataCollectionPrivacyNotice" + class="learnMore text-link" + data-l10n-id="collection-privacy-notice"/> </description> <vbox data-subcategory="reports"> <description flex="1"> - <checkbox id="submitHealthReportBox" label="&enableHealthReport2.label;" - class="tail-with-learn-more" - accesskey="&enableHealthReport2.accesskey;"/> + <checkbox id="submitHealthReportBox" + data-l10n-id="collection-health-report" + class="tail-with-learn-more"/> <label id="FHRLearnMore" - class="learnMore text-link">&healthReportLearnMore.label;</label> + class="learnMore text-link" + data-l10n-id="collection-health-report-link"/> </description> #ifndef MOZ_TELEMETRY_REPORTING - <description id="TelemetryDisabledDesc" class="indent tip-caption" control="telemetryGroup">&healthReportingDisabled.label;</description> + <description id="TelemetryDisabledDesc" + class="indent tip-caption" control="telemetryGroup" + data-l10n-id="collection-health-report-disabled"/> #endif #ifdef NIGHTLY_BUILD <hbox align="center"> <checkbox id="collectBrowserErrorsBox" class="tail-with-learn-more" preference="browser.chrome.errorReporter.enabled" - label="&collectBrowserErrors.label;" - accesskey="&collectBrowserErrors.accesskey;" + data-l10n-id="collection-browser-errors" flex="1"/> <label id="collectBrowserErrorsLearnMore" - class="learnMore text-link">&collectBrowserErrorsLearnMore.label;</label> + class="learnMore text-link" data-l10n-id="collection-browser-errors-link"/> </hbox> #endif #ifdef MOZ_CRASHREPORTER <hbox align="center"> <checkbox id="automaticallySubmitCrashesBox" class="tail-with-learn-more" preference="browser.crashReports.unsubmittedCheck.autoSubmit2" - label="&sendBackloggedCrashReports.label;" - accesskey="&sendBackloggedCrashReports.accesskey;" + data-l10n-id="collection-backlogged-crash-reports" flex="1"/> <label id="crashReporterLearnMore" - class="learnMore text-link">&crashReporterLearnMore.label;</label> + class="learnMore text-link" data-l10n-id="collection-backlogged-crash-reports-link"/> </hbox> #endif </vbox> </groupbox> #endif <hbox id="securityCategory" class="subcategory" hidden="true" data-category="panePrivacy"> - <label class="header-name" flex="1">&security.label;</label> + <label class="header-name" flex="1" data-l10n-id="security-header"/> </hbox> <!-- addons, forgery (phishing) UI Security --> <groupbox id="browsingProtectionGroup" data-category="panePrivacy" hidden="true"> - <caption><label>&browsingProtection.label;</label></caption> + <caption><label data-l10n-id="security-browsing-protection"/></caption> <hbox align = "center"> <checkbox id="enableSafeBrowsing" - label="&enableSafeBrowsing.label;" - class="tail-with-learn-more" - accesskey="&enableSafeBrowsing.accesskey;" /> + data-l10n-id="security-enable-safe-browsing" + class="tail-with-learn-more"/> <label id="enableSafeBrowsingLearnMore" - class="learnMore text-link">&enableSafeBrowsingLearnMore.label;</label> + class="learnMore text-link" data-l10n-id="security-enable-safe-browsing-link"/> </hbox> <vbox class="indent"> <checkbox id="blockDownloads" - label="&blockDownloads.label;" - accesskey="&blockDownloads.accesskey;" /> + data-l10n-id="security-block-downloads"/> <checkbox id="blockUncommonUnwanted" - label="&blockUncommonAndUnwanted.label;" - accesskey="&blockUncommonAndUnwanted.accesskey;" /> + data-l10n-id="security-block-uncommon-software"/> </vbox> </groupbox> <!-- Certificates --> <groupbox id="certSelection" data-category="panePrivacy" hidden="true"> - <caption><label>&certificateTab.label;</label></caption> - <description id="CertSelectionDesc" control="certSelection">&certPersonal2.description;</description> + <caption><label data-l10n-id="certs-header"/></caption> + <description id="CertSelectionDesc" control="certSelection" data-l10n-id="certs-personal-label"/> <!-- The values on these radio buttons may look like l10n issues, but they're not - this preference uses *those strings* as its values. I KID YOU NOT. --> <radiogroup id="certSelection" preftype="string" preference="security.default_personal_cert" aria-labelledby="CertSelectionDesc"> - <radio label="&selectCerts.auto;" - accesskey="&selectCerts.auto.accesskey;" + <radio data-l10n-id="certs-select-auto-option" value="Select Automatically"/> - <radio label="&selectCerts.ask;" - accesskey="&selectCerts.ask.accesskey;" + <radio data-l10n-id="certs-select-ask-option" value="Ask Every Time"/> </radiogroup> <hbox align="start"> <checkbox id="enableOCSP" - label="&enableOCSP.label;" - accesskey="&enableOCSP.accesskey;" + data-l10n-id="certs-enable-ocsp" onsyncfrompreference="return gPrivacyPane.readEnableOCSP();" onsynctopreference="return gPrivacyPane.writeEnableOCSP();" preference="security.OCSP.enabled" flex="1" /> <vbox> <!-- Please don't remove the wrapping hbox/vbox/box for these elements. It's used to properly compute the search tooltip position. --> <hbox pack="end"> <button id="viewCertificatesButton" class="accessory-button" - label="&viewCerts2.label;" - accesskey="&viewCerts2.accesskey;" + data-l10n-id="certs-view" preference="security.disable_button.openCertManager" searchkeywords="&certmgr.tab.mine; &certmgr.tab.others2; &certmgr.tab.websites3; &certmgr.tab.ca; &certmgr.mine2; &certmgr.others2; &certmgr.websites3; @@ -654,18 +638,17 @@ &certmgr.view2.label; &certmgr.export.label; &certmgr.delete2.label;"/> </hbox> <!-- Please don't remove the wrapping hbox/vbox/box for these elements. It's used to properly compute the search tooltip position. --> <hbox pack="end"> <button id="viewSecurityDevicesButton" class="accessory-button" - label="&viewSecurityDevices2.label;" - accesskey="&viewSecurityDevices2.accesskey;" + data-l10n-id="certs-devices" preference="security.disable_button.openDeviceManager" searchkeywords="&devmgr.title; &devmgr.devlist.label; &devmgr.details.title; &devmgr.details.title2; &devmgr.button.login.label; &devmgr.button.logout.label; &devmgr.button.changepw.label;
--- a/browser/locales/en-US/browser/preferences/preferences.ftl +++ b/browser/locales/en-US/browser/preferences/preferences.ftl @@ -465,8 +465,280 @@ containers-header = Container Tabs containers-add-button = .label = Add New Container .accesskey = A containers-preferences-button = .label = Preferences containers-remove-button = .label = Remove + +## Privacy Section + +privacy-header = Browser Privacy + +## Privacy Section - Forms + +forms-header = Forms & Passwords +forms-remember-logins = + .label = Remember logins and passwords for websites + .accesskey = R +forms-exceptions = + .label = Exceptions… + .accesskey = x +forms-saved-logins = + .label = Saved Logins… + .accesskey = L +forms-master-pw-use = + .label = Use a master password + .accesskey = U +forms-master-pw-change = + .label = Change Master Password + .accesskey = M + +## Privacy Section - History + +history-header = History + +history-remember-description = { -brand-short-name } will remember your browsing, download, form and search history. +history-dontremember-description = { -brand-short-name } will use the same settings as private browsing, and will not remember any history as you browse the Web. + +history-private-browsing-permanent = + .label = Always use private browsing mode + .accesskey = p + +history-remember-option = + .label = Remember my browsing and download history + .accesskey = b + +history-remember-search-option = + .label = Remember search and form history + .accesskey = f + +history-clear-on-close-option = + .label = Clear history when { -brand-short-name } closes + .accesskey = r + +history-clear-on-close-settings = + .label = Settings… + .accesskey = t + +history-clear-button = + .label = Clear History… + .accesskey = s + +## Privacy Section - Site Data + +sitedata-header = Cookies and Site Data + +sitedata-learn-more = Learn more + +sitedata-accept-cookies-option = + .label = Accept cookies and site data from websites (recommended) + .accesskey = A + +sitedata-block-cookies-option = + .label = Block cookies and site data (may cause websites to break) + .accesskey = B + +sitedata-keep-until = Keep until + .accesskey = u + +sitedata-keep-until-expire = + .label = They expire +sitedata-keep-until-closed = + .label = { -brand-short-name } is closed + +sitedata-accept-third-party-desc = Accept third-party cookies and site data + .accesskey = y + +sitedata-accept-third-party-always-option = + .label = Always +sitedata-accept-third-party-visited-option = + .label = From visited +sitedata-accept-third-party-never-option = + .label = Never + +sitedata-clear = + .label = Clear Data… + .accesskey = l + +sitedata-settings = + .label = Manage Data… + .accesskey = M + +sitedata-cookies-exceptions = + .label = Exceptions… + .accesskey = E + +## Privacy Section - Address Bar + +addressbar-header = Address Bar + +addressbar-suggest = When using the address bar, suggest + +addressbar-locbar-history-option = + .label = Browsing history + .accesskey = h +addressbar-locbar-bookmarks-option = + .label = Bookmarks + .accesskey = k +addressbar-locbar-openpage-option = + .label = Open tabs + .accesskey = O + +addressbar-suggestions-settings = Change preferences for search engine suggestions + +## Privacy Section - Tracking + +tracking-header = Tracking Protection + +tracking-description = Tracking Protection blocks online trackers that collect your browsing data across multiple websites. <a>Learn more about Tracking Protection and your privacy</a> + +tracking-mode-label = Use Tracking Protection to block known trackers + +tracking-mode-always = + .label = Always + .accesskey = y +tracking-mode-private = + .label = Only in private windows + .accesskey = l +tracking-mode-never = + .label = Never + .accesskey = N + +# This string is displayed if privacy.trackingprotection.ui.enabled is set to false. +# This currently happens on the release and beta channel. +tracking-pbm-label = Use Tracking Protection in Private Browsing to block known trackers + .accesskey = v + +tracking-exceptions = + .label = Exceptions… + .accesskey = x + +tracking-change-block-list = + .label = Change Block List… + .accesskey = C + +## Privacy Section - Permissions + +permissions-header = Permissions + +permissions-location = Location +permissions-location-settings = + .label = Settings… + .accesskey = t + +permissions-camera = Camera +permissions-camera-settings = + .label = Settings… + .accesskey = t + +permissions-microphone = Microphone +permissions-microphone-settings = + .label = Settings… + .accesskey = t + +permissions-notification = Notifications +permissions-notification-settings = + .label = Settings… + .accesskey = t +permissions-notification-link = Learn more + +permissions-notification-pause = + .label = Pause notifications until { -brand-short-name } restarts + .accesskey = n + +permissions-block-popups = + .label = Block pop-up windows + .accesskey = B + +permissions-block-popups-exceptions = + .label = Exceptions… + .accesskey = E + +permissions-addon-install-warning = + .label = Warn you when websites try to install add-ons + .accesskey = W + +permissions-addon-exceptions = + .label = Exceptions… + .accesskey = E + +permissions-a11y-privacy-checkbox = + .label = Prevent accessibility services from accessing your browser + .accesskey = a + +permissions-a11y-privacy-link = Learn more + +## Privacy Section - Data Collection + +collection-header = { -brand-short-name } Data Collection and Use + +collection-description = We strive to provide you with choices and collect only what we need to provide and improve { -brand-short-name } for everyone. We always ask permission before receiving personal information. +collection-privacy-notice = Privacy Notice + +collection-health-report = + .label = Allow { -brand-short-name } to send technical and interaction data to { -vendor-short-name } + .accesskey = r +collection-health-report-link = Learn more + +# This message is displayed above disabled data sharing options in developer builds +# or builds with no Telemetry support available. +collection-health-report-disabled = Data reporting is disabled for this build configuration + +collection-browser-errors = + .label = Allow { -brand-short-name } to send browser error reports (including error messages) to { -vendor-short-name } + .accesskey = b +collection-browser-errors-link = Learn more + +collection-backlogged-crash-reports = + .label = Allow { -brand-short-name } to send backlogged crash reports on your behalf + .accesskey = c +collection-backlogged-crash-reports-link = Learn more + +## Privacy Section - Security +## +## It is important that wording follows the guidelines outlined on this page: +## https://developers.google.com/safe-browsing/developers_guide_v2#AcceptableUsage + +security-header = Security + +security-browsing-protection = Deceptive Content and Dangerous Software Protection + +security-enable-safe-browsing = + .label = Block dangerous and deceptive content + .accesskey = B +security-enable-safe-browsing-link = Learn more + +security-block-downloads = + .label = Block dangerous downloads + .accesskey = d + +security-block-uncommon-software = + .label = Warn you about unwanted and uncommon software + .accesskey = c + +## Privacy Section - Certificates + +certs-header = Certificates + +certs-personal-label = When a server requests your personal certificate + +certs-select-auto-option = + .label = Select one automatically + .accesskey = S + +certs-select-ask-option = + .label = Ask you every time + .accesskey = A + +certs-enable-ocsp = + .label = Query OCSP responder servers to confirm the current validity of certificates + .accesskey = Q + +certs-view = + .label = View Certificates… + .accesskey = C + +certs-devices = + .label = Security Devices… + .accesskey = D
deleted file mode 100644 --- a/browser/locales/en-US/chrome/browser/preferences/advanced.dtd +++ /dev/null @@ -1,55 +0,0 @@ -<!-- 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/. --> - -<!-- Note: each tab panel must contain unique accesskeys --> - -<!ENTITY generalTab.label "General"> - -<!ENTITY dataChoicesTab.label "Data Choices"> - -<!-- LOCALIZATION NOTE (healthReportingDisabled.label): This message is displayed above -disabled data sharing options in developer builds or builds with no Telemetry support -available. --> -<!ENTITY healthReportingDisabled.label "Data reporting is disabled for this build configuration"> - -<!ENTITY enableHealthReport2.label "Allow &brandShortName; to send technical and interaction data to Mozilla"> -<!ENTITY enableHealthReport2.accesskey "r"> -<!ENTITY healthReportLearnMore.label "Learn more"> - -<!ENTITY dataCollection.label "&brandShortName; Data Collection and Use"> -<!ENTITY dataCollectionDesc.label "We strive to provide you with choices and collect only what we need to provide and improve &brandShortName; for everyone. We always ask permission before receiving personal information."> -<!ENTITY dataCollectionPrivacyNotice.label "Privacy Notice"> - -<!ENTITY collectBrowserErrors.label "Allow &brandShortName; to send browser error reports (including error messages) to Mozilla"> -<!ENTITY collectBrowserErrors.accesskey "b"> -<!ENTITY collectBrowserErrorsLearnMore.label "Learn more"> - -<!ENTITY sendBackloggedCrashReports.label "Allow &brandShortName; to send backlogged crash reports on your behalf"> -<!ENTITY sendBackloggedCrashReports.accesskey "c"> -<!ENTITY crashReporterLearnMore.label "Learn more"> - -<!ENTITY networkTab.label "Network"> - -<!-- Site Data section manages sites using Storage API and is under Network --> -<!ENTITY siteData1.label "Cookies and Site Data"> -<!ENTITY clearSiteData1.label "Clear Data…"> -<!ENTITY clearSiteData1.accesskey "l"> -<!ENTITY siteDataSettings1.label "Manage Data…"> -<!ENTITY siteDataSettings1.accesskey "M"> -<!ENTITY siteDataLearnMoreLink.label "Learn more"> - -<!ENTITY updateTab.label "Update"> - -<!ENTITY certificateTab.label "Certificates"> -<!ENTITY certPersonal2.description "When a server requests your personal certificate"> -<!ENTITY selectCerts.auto "Select one automatically"> -<!ENTITY selectCerts.auto.accesskey "S"> -<!ENTITY selectCerts.ask "Ask you every time"> -<!ENTITY selectCerts.ask.accesskey "A"> -<!ENTITY enableOCSP.label "Query OCSP responder servers to confirm the current validity of certificates"> -<!ENTITY enableOCSP.accesskey "Q"> -<!ENTITY viewCerts2.label "View Certificates…"> -<!ENTITY viewCerts2.accesskey "C"> -<!ENTITY viewSecurityDevices2.label "Security Devices…"> -<!ENTITY viewSecurityDevices2.accesskey "D">
--- a/browser/locales/en-US/chrome/browser/preferences/content.dtd +++ b/browser/locales/en-US/chrome/browser/preferences/content.dtd @@ -1,37 +1,12 @@ <!-- 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 permissions.label "Permissions"> - -<!ENTITY blockPopups.label "Block pop-up windows"> -<!ENTITY blockPopups.accesskey "B"> - -<!ENTITY popupExceptions.label "Exceptions…"> -<!ENTITY popupExceptions.accesskey "E"> - -<!ENTITY notificationPermissions.label "Notifications"> -<!ENTITY notificationSettingsButton.label "Settings…"> -<!ENTITY notificationSettingsButton.accesskey "t"> -<!ENTITY notificationPermissionsLearnMore.label "Learn more"> - -<!ENTITY locationPermissions.label "Location"> -<!ENTITY locationSettingsButton.label "Settings…"> -<!ENTITY locationSettingsButton.accesskey "t"> - -<!ENTITY cameraPermissions.label "Camera"> -<!ENTITY cameraSettingsButton.label "Settings…"> -<!ENTITY cameraSettingsButton.accesskey "t"> - -<!ENTITY microphonePermissions.label "Microphone"> -<!ENTITY microphoneSettingsButton.label "Settings…"> -<!ENTITY microphoneSettingsButton.accesskey "t"> - <!-- LOCALIZATION NOTE (translation.options.attribution.beforeLogo, - translation.options.attribution.afterLogo): - These 2 strings are displayed before and after a 'Microsoft Translator' - logo. - The translations for these strings should match the translations in - browser/translation.dtd --> <!ENTITY translation.options.attribution.beforeLogo "Translations by">
--- a/browser/locales/en-US/chrome/browser/preferences/preferences.dtd +++ b/browser/locales/en-US/chrome/browser/preferences/preferences.dtd @@ -1,8 +1,6 @@ <!-- 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 browserPrivacy.label "Browser Privacy"> - <!-- LOCALIZATION NOTE (paneSync1.title): This should match syncBrand.fxAccount.label in ../syncBrand.dtd --> <!ENTITY paneSync1.title "Firefox Account">
--- a/browser/locales/en-US/chrome/browser/preferences/preferences.properties +++ b/browser/locales/en-US/chrome/browser/preferences/preferences.properties @@ -44,21 +44,16 @@ microphonepermissionstext2=The following microphonepermissionstitle=Settings - Microphone Permissions microphonepermissionsdisablelabel=Block new requests asking to access your microphone microphonepermissionsdisabledescription=This will prevent any websites not listed above from requesting permission to access your microphone. Blocking access to your microphone may break some website features. invalidURI=Please enter a valid hostname invalidURITitle=Invalid Hostname Entered savedLoginsExceptions_title=Exceptions - Saved Logins savedLoginsExceptions_desc3=Logins for the following websites will not be saved -# LOCALIZATION NOTE(pauseNotifications.label): %S is replaced with the -# brandShortName of the application. -pauseNotifications.label=Pause notifications until %S restarts -pauseNotifications.accesskey=n - #### Block List Manager blockliststext=You can choose which list Firefox will use to block Web elements that may track your browsing activity. blockliststitle=Block Lists # LOCALIZATION NOTE (mozNameTemplate): This template constructs the name of the # block list in the block lists dialog. It combines the list name and # description. # e.g. mozNameTemplate : "Standard (Recommended). This list does a pretty good job."
--- a/browser/locales/en-US/chrome/browser/preferences/privacy.dtd +++ b/browser/locales/en-US/chrome/browser/preferences/privacy.dtd @@ -1,94 +1,10 @@ <!-- 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 trackingProtection3.description "Tracking Protection blocks online trackers that collect your browsing data across multiple websites."> -<!ENTITY trackingProtection3.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 trackingProtectionLearnMore2.label "Learn more about Tracking Protection and your privacy"> -<!ENTITY trackingProtectionExceptions.label "Exceptions…"> -<!ENTITY trackingProtectionExceptions.accesskey "x"> - -<!-- LOCALIZATION NOTE (trackingProtectionPBM6.label): This string is displayed if privacy.trackingprotection.ui.enabled is set to false. This currently happens on the release and beta channel. --> -<!ENTITY trackingProtectionPBM6.label "Use Tracking Protection in Private Browsing to block known trackers"> -<!ENTITY trackingProtectionPBM6.accesskey "v"> -<!ENTITY trackingProtectionPBMLearnMore.label "Learn more"> -<!ENTITY changeBlockList2.label "Change Block List…"> -<!ENTITY changeBlockList2.accesskey "C"> - -<!ENTITY history.label "History"> -<!ENTITY permissions.label "Permissions"> - -<!ENTITY addressBar.label "Address Bar"> -<!ENTITY addressBar.suggest.label "When using the address bar, suggest"> -<!ENTITY locbar.history2.label "Browsing history"> -<!ENTITY locbar.history2.accesskey "H"> -<!ENTITY locbar.bookmarks.label "Bookmarks"> -<!ENTITY locbar.bookmarks.accesskey "k"> -<!ENTITY locbar.openpage.label "Open tabs"> -<!ENTITY locbar.openpage.accesskey "O"> -<!ENTITY locbar.searches.label "Related searches from the default search engine"> -<!ENTITY locbar.searches.accesskey "d"> - -<!ENTITY suggestionSettings2.label "Change preferences for search engine suggestions"> - -<!ENTITY acceptCookies4.label "Accept cookies and site data from websites (recommended)"> -<!ENTITY acceptCookies4.accesskey "A"> - -<!ENTITY blockCookies.label "Block cookies and site data (may cause websites to break)"> -<!ENTITY blockCookies.accesskey "B"> - -<!ENTITY acceptThirdParty3.pre.label "Accept third-party cookies and site data"> -<!ENTITY acceptThirdParty3.pre.accesskey "y"> -<!ENTITY acceptThirdParty.always.label "Always"> -<!ENTITY acceptThirdParty.never.label "Never"> -<!ENTITY acceptThirdParty.visited.label "From visited"> - -<!ENTITY keepUntil2.label "Keep until"> -<!ENTITY keepUntil2.accesskey "u"> - -<!ENTITY expire.label "they expire"> -<!ENTITY close.label "I close &brandShortName;"> - -<!ENTITY cookieExceptions.label "Exceptions…"> -<!ENTITY cookieExceptions.accesskey "E"> - <!ENTITY historyHeader2.pre.label "&brandShortName; will"> <!ENTITY historyHeader2.pre.accesskey "w"> <!ENTITY historyHeader.remember.label "Remember history"> <!ENTITY historyHeader.dontremember.label "Never remember history"> <!ENTITY historyHeader.custom.label "Use custom settings for history"> <!ENTITY historyHeader.post.label ""> - -<!ENTITY rememberDescription1.label "&brandShortName; will remember your browsing, download, form and search history."> - -<!ENTITY dontrememberDescription.label "&brandShortName; will use the same settings as private browsing, and will not remember any history as you browse the Web."> - -<!ENTITY clearHistoryButton.label "Clear History…"> -<!ENTITY clearHistoryButton.accesskey "s"> - -<!ENTITY privateBrowsingPermanent2.label "Always use private browsing mode"> -<!ENTITY privateBrowsingPermanent2.accesskey "p"> - -<!ENTITY rememberHistory2.label "Remember my browsing and download history"> -<!ENTITY rememberHistory2.accesskey "b"> - -<!ENTITY rememberSearchForm.label "Remember search and form history"> -<!ENTITY rememberSearchForm.accesskey "f"> - -<!ENTITY clearOnClose.label "Clear history when &brandShortName; closes"> -<!ENTITY clearOnClose.accesskey "r"> - -<!ENTITY clearOnCloseSettings.label "Settings…"> -<!ENTITY clearOnCloseSettings.accesskey "t"> - -<!ENTITY a11yPrivacy.checkbox.label "Prevent accessibility services from accessing your browser"> -<!ENTITY a11yPrivacy.checkbox.accesskey "a"> -<!ENTITY a11yPrivacy.learnmore.label "Learn more"> -<!ENTITY enableSafeBrowsingLearnMore.label "Learn more">
--- a/browser/locales/en-US/chrome/browser/preferences/security.dtd +++ b/browser/locales/en-US/chrome/browser/preferences/security.dtd @@ -1,42 +1,5 @@ <!-- 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 security.label "Security"> - -<!ENTITY warnOnAddonInstall2.label "Warn you when websites try to install add-ons"> -<!ENTITY warnOnAddonInstall2.accesskey "W"> - -<!-- LOCALIZATION NOTE (enableSafeBrowsing.label, blockDownloads.label, blockUncommonUnwanted.label): - It is important that wording follows the guidelines outlined on this page: - https://developers.google.com/safe-browsing/developers_guide_v2#AcceptableUsage ---> - -<!ENTITY browsingProtection.label "Deceptive Content and Dangerous Software Protection"> <!ENTITY enableSafeBrowsing.label "Block dangerous and deceptive content"> -<!ENTITY enableSafeBrowsing.accesskey "B"> - -<!ENTITY blockDownloads.label "Block dangerous downloads"> -<!ENTITY blockDownloads.accesskey "D"> - -<!ENTITY blockUncommonAndUnwanted.label "Warn you about unwanted and uncommon software"> -<!ENTITY blockUncommonAndUnwanted.accesskey "C"> - -<!ENTITY addonExceptions.label "Exceptions…"> -<!ENTITY addonExceptions.accesskey "E"> - - -<!ENTITY formsAndPasswords.label "Forms & Passwords"> - -<!ENTITY rememberLogins2.label "Remember logins and passwords for websites"> -<!ENTITY rememberLogins2.accesskey "R"> -<!ENTITY passwordExceptions.label "Exceptions…"> -<!ENTITY passwordExceptions.accesskey "x"> - -<!ENTITY useMasterPassword.label "Use a master password"> -<!ENTITY useMasterPassword.accesskey "U"> -<!ENTITY changeMasterPassword.label "Change Master Password…"> -<!ENTITY changeMasterPassword.accesskey "M"> - -<!ENTITY savedLogins.label "Saved Logins…"> -<!ENTITY savedLogins.accesskey "L">
--- a/browser/locales/jar.mn +++ b/browser/locales/jar.mn @@ -52,17 +52,16 @@ locale/browser/places/bookmarkProperties.properties (%chrome/browser/places/bookmarkProperties.properties) locale/browser/safebrowsing/phishing-afterload-warning-message.dtd (%chrome/browser/safebrowsing/phishing-afterload-warning-message.dtd) locale/browser/safebrowsing/report-phishing.dtd (%chrome/browser/safebrowsing/report-phishing.dtd) locale/browser/safebrowsing/safebrowsing.properties (%chrome/browser/safebrowsing/safebrowsing.properties) locale/browser/feeds/subscribe.dtd (%chrome/browser/feeds/subscribe.dtd) locale/browser/feeds/subscribe.properties (%chrome/browser/feeds/subscribe.properties) locale/browser/migration/migration.dtd (%chrome/browser/migration/migration.dtd) locale/browser/migration/migration.properties (%chrome/browser/migration/migration.properties) - locale/browser/preferences/advanced.dtd (%chrome/browser/preferences/advanced.dtd) locale/browser/preferences/applicationManager.dtd (%chrome/browser/preferences/applicationManager.dtd) locale/browser/preferences/applicationManager.properties (%chrome/browser/preferences/applicationManager.properties) locale/browser/preferences/blocklists.dtd (%chrome/browser/preferences/blocklists.dtd) locale/browser/preferences/clearSiteData.dtd (%chrome/browser/preferences/clearSiteData.dtd) locale/browser/preferences/clearSiteData.properties (%chrome/browser/preferences/clearSiteData.properties) locale/browser/preferences/colors.dtd (%chrome/browser/preferences/colors.dtd) locale/browser/preferences/connection.dtd (%chrome/browser/preferences/connection.dtd) locale/browser/preferences/content.dtd (%chrome/browser/preferences/content.dtd)
new file mode 100644 --- /dev/null +++ b/python/l10n/fluent_migrations/bug_1446180_preferences_privacy.py @@ -0,0 +1,1235 @@ +# coding=utf8 + +# Any copyright is dedicated to the Public Domain. +# http://creativecommons.org/publicdomain/zero/1.0/ + +from __future__ import absolute_import +import fluent.syntax.ast as FTL +from fluent.migrate.helpers import MESSAGE_REFERENCE +from fluent.migrate.transforms import REPLACE +from fluent.migrate import COPY, CONCAT + + +def migrate(ctx): + """Bug 1446180 - Migrate Preferences::Privacy to Fluent, part {index}.""" + + ctx.add_transforms( + 'browser/branding/official/brand.ftl', + 'browser/branding/official/brand.ftl', + [ + FTL.Term( + id=FTL.Identifier('-vendor-short-name'), + value=COPY( + 'browser/branding/official/brand.dtd', + 'vendorShortName' + ) + ), + ] + ) + + ctx.add_transforms( + 'browser/browser/preferences/preferences.ftl', + 'browser/browser/preferences/preferences.ftl', + [ + FTL.Message( + id=FTL.Identifier('privacy-header'), + value=COPY( + 'browser/chrome/browser/preferences/preferences.dtd', + 'browserPrivacy.label', + ), + ), + FTL.Message( + id=FTL.Identifier('forms-header'), + value=COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'formsAndPasswords.label', + ), + ), + FTL.Message( + id=FTL.Identifier('forms-remember-logins'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'rememberLogins2.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'rememberLogins2.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('forms-exceptions'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'passwordExceptions.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'passwordExceptions.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('forms-saved-logins'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'savedLogins.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'savedLogins.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('forms-master-pw-use'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'useMasterPassword.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'useMasterPassword.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('forms-master-pw-change'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'changeMasterPassword.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'changeMasterPassword.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('history-header'), + value=COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'history.label', + ), + ), + FTL.Message( + id=FTL.Identifier('history-remember-description'), + value=REPLACE( + 'browser/chrome/browser/preferences/privacy.dtd', + 'rememberDescription1.label', + { + '&brandShortName;': MESSAGE_REFERENCE('-brand-short-name') + }, + ), + ), + FTL.Message( + id=FTL.Identifier('history-dontremember-description'), + value=REPLACE( + 'browser/chrome/browser/preferences/privacy.dtd', + 'dontrememberDescription.label', + { + '&brandShortName;': MESSAGE_REFERENCE('-brand-short-name') + }, + ), + ), + FTL.Message( + id=FTL.Identifier('history-private-browsing-permanent'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'privateBrowsingPermanent2.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'privateBrowsingPermanent2.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('history-remember-option'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'rememberHistory2.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'rememberHistory2.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('history-remember-search-option'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'rememberSearchForm.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'rememberSearchForm.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('history-clear-on-close-option'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + REPLACE( + 'browser/chrome/browser/preferences/privacy.dtd', + 'clearOnClose.label', + { + '&brandShortName;': MESSAGE_REFERENCE('-brand-short-name') + }, + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'clearOnClose.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('history-clear-on-close-settings'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'clearOnCloseSettings.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'clearOnCloseSettings.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('history-clear-button'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'clearHistoryButton.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'clearHistoryButton.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('sitedata-header'), + value=COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'siteData1.label', + ), + ), + FTL.Message( + id=FTL.Identifier('sitedata-learn-more'), + value=COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'siteDataLearnMoreLink.label', + ), + ), + FTL.Message( + id=FTL.Identifier('sitedata-accept-cookies-option'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'acceptCookies4.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'acceptCookies4.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('sitedata-block-cookies-option'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'blockCookies.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'blockCookies.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('sitedata-keep-until'), + value=COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'keepUntil2.label', + ), + attributes=[ + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'keepUntil2.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('sitedata-accept-third-party-desc'), + value=COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'acceptThirdParty3.pre.label', + ), + attributes=[ + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'acceptThirdParty3.pre.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('sitedata-accept-third-party-always-option'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'acceptThirdParty.always.label', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('sitedata-accept-third-party-visited-option'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'acceptThirdParty.visited.label', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('sitedata-accept-third-party-never-option'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'acceptThirdParty.never.label', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('sitedata-clear'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'clearSiteData1.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'clearSiteData1.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('sitedata-settings'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'siteDataSettings1.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'siteDataSettings1.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('sitedata-cookies-exceptions'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'cookieExceptions.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'cookieExceptions.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('addressbar-header'), + value=COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'addressBar.label', + ), + ), + FTL.Message( + id=FTL.Identifier('addressbar-suggest'), + value=COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'addressBar.suggest.label', + ), + ), + FTL.Message( + id=FTL.Identifier('addressbar-locbar-history-option'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'locbar.history2.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'locbar.history2.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('addressbar-locbar-bookmarks-option'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'locbar.bookmarks.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'locbar.bookmarks.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('addressbar-locbar-openpage-option'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'locbar.openpage.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'locbar.openpage.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('addressbar-suggestions-settings'), + value=COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'suggestionSettings2.label', + ), + ), + FTL.Message( + id=FTL.Identifier('tracking-header'), + value=COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'trackingProtectionHeader2.label', + ), + ), + FTL.Message( + id=FTL.Identifier('tracking-description'), + value=CONCAT( + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'trackingProtection3.description', + ), + FTL.TextElement(' <a>'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'trackingProtectionLearnMore2.label', + ), + FTL.TextElement('</a>'), + ), + ), + FTL.Message( + id=FTL.Identifier('tracking-mode-label'), + value=COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'trackingProtection3.radioGroupLabel', + ), + ), + FTL.Message( + id=FTL.Identifier('tracking-mode-always'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'trackingProtectionAlways.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'trackingProtectionAlways.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('tracking-mode-private'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'trackingProtectionPrivate.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'trackingProtectionPrivate.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('tracking-mode-never'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'trackingProtectionNever.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'trackingProtectionNever.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('tracking-pbm-label'), + value=COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'trackingProtectionPBM6.label', + ), + attributes=[ + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'trackingProtectionPBM6.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('tracking-exceptions'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'trackingProtectionExceptions.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'trackingProtectionExceptions.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('tracking-change-block-list'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'changeBlockList2.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'changeBlockList2.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('permissions-header'), + value=COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'permissions.label', + ), + ), + FTL.Message( + id=FTL.Identifier('permissions-location'), + value=COPY( + 'browser/chrome/browser/preferences/content.dtd', + 'locationPermissions.label', + ), + ), + FTL.Message( + id=FTL.Identifier('permissions-location-settings'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/content.dtd', + 'locationSettingsButton.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/content.dtd', + 'locationSettingsButton.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('permissions-camera'), + value=COPY( + 'browser/chrome/browser/preferences/content.dtd', + 'cameraPermissions.label', + ), + ), + FTL.Message( + id=FTL.Identifier('permissions-camera-settings'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/content.dtd', + 'cameraSettingsButton.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/content.dtd', + 'cameraSettingsButton.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('permissions-microphone'), + value=COPY( + 'browser/chrome/browser/preferences/content.dtd', + 'microphonePermissions.label', + ), + ), + FTL.Message( + id=FTL.Identifier('permissions-microphone-settings'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/content.dtd', + 'microphoneSettingsButton.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/content.dtd', + 'microphoneSettingsButton.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('permissions-notification'), + value=COPY( + 'browser/chrome/browser/preferences/content.dtd', + 'notificationPermissions.label', + ), + ), + FTL.Message( + id=FTL.Identifier('permissions-notification-settings'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/content.dtd', + 'notificationSettingsButton.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/content.dtd', + 'notificationSettingsButton.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('permissions-notification-link'), + value=COPY( + 'browser/chrome/browser/preferences/content.dtd', + 'notificationPermissionsLearnMore.label', + ), + ), + FTL.Message( + id=FTL.Identifier('permissions-notification-pause'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + REPLACE( + 'browser/chrome/browser/preferences/preferences.properties', + 'pauseNotifications.label', + { + '%S': MESSAGE_REFERENCE('-brand-short-name') + }, + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/preferences.properties', + 'pauseNotifications.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('permissions-block-popups'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/content.dtd', + 'blockPopups.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/content.dtd', + 'blockPopups.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('permissions-block-popups-exceptions'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/content.dtd', + 'popupExceptions.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/content.dtd', + 'popupExceptions.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('permissions-addon-install-warning'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'warnOnAddonInstall2.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'warnOnAddonInstall2.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('permissions-addon-exceptions'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'addonExceptions.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'addonExceptions.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('permissions-a11y-privacy-checkbox'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'a11yPrivacy.checkbox.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'a11yPrivacy.checkbox.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('permissions-a11y-privacy-link'), + value=COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'a11yPrivacy.learnmore.label', + ), + ), + FTL.Message( + id=FTL.Identifier('collection-header'), + value=REPLACE( + 'browser/chrome/browser/preferences/advanced.dtd', + 'dataCollection.label', + { + '&brandShortName;': MESSAGE_REFERENCE('-brand-short-name') + }, + ), + ), + FTL.Message( + id=FTL.Identifier('collection-description'), + value=REPLACE( + 'browser/chrome/browser/preferences/advanced.dtd', + 'dataCollectionDesc.label', + { + '&brandShortName;': MESSAGE_REFERENCE('-brand-short-name') + }, + ), + ), + FTL.Message( + id=FTL.Identifier('collection-privacy-notice'), + value=COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'dataCollectionPrivacyNotice.label', + ), + ), + FTL.Message( + id=FTL.Identifier('collection-health-report'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + REPLACE( + 'browser/chrome/browser/preferences/advanced.dtd', + 'enableHealthReport2.label', + { + '&brandShortName;': MESSAGE_REFERENCE('-brand-short-name'), + 'Mozilla': MESSAGE_REFERENCE('-vendor-short-name'), + }, + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'enableHealthReport2.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('collection-health-report-link'), + value=COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'healthReportLearnMore.label', + ), + ), + FTL.Message( + id=FTL.Identifier('collection-health-report-disabled'), + value=COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'healthReportingDisabled.label', + ), + ), + FTL.Message( + id=FTL.Identifier('collection-browser-errors'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + REPLACE( + 'browser/chrome/browser/preferences/advanced.dtd', + 'collectBrowserErrors.label', + { + '&brandShortName;': MESSAGE_REFERENCE('-brand-short-name'), + 'Mozilla': MESSAGE_REFERENCE('-vendor-short-name'), + }, + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'collectBrowserErrors.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('collection-browser-errors-link'), + value=COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'collectBrowserErrorsLearnMore.label', + ), + ), + FTL.Message( + id=FTL.Identifier('collection-backlogged-crash-reports'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + REPLACE( + 'browser/chrome/browser/preferences/advanced.dtd', + 'sendBackloggedCrashReports.label', + { + '&brandShortName;': MESSAGE_REFERENCE('-brand-short-name') + }, + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'sendBackloggedCrashReports.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('collection-backlogged-crash-reports-link'), + value=COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'crashReporterLearnMore.label', + ), + ), + FTL.Message( + id=FTL.Identifier('security-header'), + value=COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'security.label', + ), + ), + FTL.Message( + id=FTL.Identifier('security-browsing-protection'), + value=COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'browsingProtection.label', + ), + ), + FTL.Message( + id=FTL.Identifier('security-enable-safe-browsing'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'enableSafeBrowsing.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'enableSafeBrowsing.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('security-enable-safe-browsing-link'), + value=COPY( + 'browser/chrome/browser/preferences/privacy.dtd', + 'enableSafeBrowsingLearnMore.label', + ), + ), + FTL.Message( + id=FTL.Identifier('security-block-downloads'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'blockDownloads.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'blockDownloads.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('security-block-uncommon-software'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'blockUncommonAndUnwanted.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/security.dtd', + 'blockUncommonAndUnwanted.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('certs-header'), + value=COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'certificateTab.label', + ), + ), + FTL.Message( + id=FTL.Identifier('certs-personal-label'), + value=COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'certPersonal2.description', + ), + ), + FTL.Message( + id=FTL.Identifier('certs-select-auto-option'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'selectCerts.auto', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'selectCerts.auto.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('certs-select-ask-option'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'selectCerts.ask', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'selectCerts.ask.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('certs-enable-ocsp'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'enableOCSP.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'enableOCSP.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('certs-view'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'viewCerts2.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'viewCerts2.accesskey', + ), + ), + ], + ), + FTL.Message( + id=FTL.Identifier('certs-devices'), + attributes=[ + FTL.Attribute( + FTL.Identifier('label'), + COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'viewSecurityDevices2.label', + ), + ), + FTL.Attribute( + FTL.Identifier('accesskey'), + COPY( + 'browser/chrome/browser/preferences/advanced.dtd', + 'viewSecurityDevices2.accesskey', + ), + ), + ], + ), + ] + )