diff --git a/browser/actors/AboutPluginsChild.sys.mjs b/browser/actors/AboutPluginsChild.sys.mjs deleted file mode 100644 index 8529e43ec184..000000000000 --- a/browser/actors/AboutPluginsChild.sys.mjs +++ /dev/null @@ -1,8 +0,0 @@ -/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ -/* 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/. */ - -import { RemotePageChild } from "resource://gre/actors/RemotePageChild.sys.mjs"; - -export class AboutPluginsChild extends RemotePageChild {} diff --git a/browser/actors/AboutPluginsParent.sys.mjs b/browser/actors/AboutPluginsParent.sys.mjs deleted file mode 100644 index efde242dffcf..000000000000 --- a/browser/actors/AboutPluginsParent.sys.mjs +++ /dev/null @@ -1,40 +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/. */ - -const lazy = {}; - -ChromeUtils.defineESModuleGetters(lazy, { - AddonManager: "resource://gre/modules/AddonManager.sys.mjs", -}); - -// Lists all the properties that plugins.html needs -const NEEDED_PROPS = [ - "name", - "pluginLibraries", - "pluginFullpath", - "version", - "isActive", - "blocklistState", - "description", -]; - -export class AboutPluginsParent extends JSWindowActorParent { - async receiveMessage(message) { - switch (message.name) { - case "RequestPlugins": - function filterProperties(plugin) { - let filtered = {}; - for (let prop of NEEDED_PROPS) { - filtered[prop] = plugin[prop]; - } - return filtered; - } - - let plugins = await lazy.AddonManager.getAddonsByTypes(["plugin"]); - return plugins.map(filterProperties); - } - - return undefined; - } -} diff --git a/browser/actors/moz.build b/browser/actors/moz.build index 15f504dd95b0..25957ca7102a 100644 --- a/browser/actors/moz.build +++ b/browser/actors/moz.build @@ -34,8 +34,6 @@ with Files("WebRTCChild.sys.mjs"): FINAL_TARGET_FILES.actors += [ "AboutNewTabChild.sys.mjs", "AboutNewTabParent.sys.mjs", - "AboutPluginsChild.sys.mjs", - "AboutPluginsParent.sys.mjs", "AboutPocketChild.sys.mjs", "AboutPocketParent.sys.mjs", "AboutPrivateBrowsingChild.sys.mjs", diff --git a/browser/base/content/navigator-toolbox.inc.xhtml b/browser/base/content/navigator-toolbox.inc.xhtml index c34012c4da58..85a9795cec8a 100644 --- a/browser/base/content/navigator-toolbox.inc.xhtml +++ b/browser/base/content/navigator-toolbox.inc.xhtml @@ -272,10 +272,6 @@ data-l10n-id="urlbar-indexed-db-notification-anchor"/> - - - - OK", ]; diff --git a/browser/base/content/test/plugins/browser.toml b/browser/base/content/test/plugins/browser.toml index 01cfe50e7be6..d727ed27f87a 100644 --- a/browser/base/content/test/plugins/browser.toml +++ b/browser/base/content/test/plugins/browser.toml @@ -3,7 +3,6 @@ support-files = [ "empty_file.html", "head.js", "plugin_bug797677.html", - "plugin_test.html", ] ["browser_bug797677.js"] diff --git a/browser/base/content/test/plugins/plugin_test.html b/browser/base/content/test/plugins/plugin_test.html deleted file mode 100644 index 3d4f43e6a5c6..000000000000 --- a/browser/base/content/test/plugins/plugin_test.html +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/browser/base/content/test/popupNotifications/browser_reshow_in_background.js b/browser/base/content/test/popupNotifications/browser_reshow_in_background.js index bb2494a5b576..8dd7e65de025 100644 --- a/browser/base/content/test/popupNotifications/browser_reshow_in_background.js +++ b/browser/base/content/test/popupNotifications/browser_reshow_in_background.js @@ -10,12 +10,10 @@ add_task( // Our initial tab will be A. Let's open two more tabs B and C, but keep // A selected. Then, we'll trigger a PopupNotification in C, and then make // it reshow. - // eslint-disable-next-line @microsoft/sdl/no-insecure-url - let tabB = BrowserTestUtils.addTab(gBrowser, "http://example.com/"); + let tabB = BrowserTestUtils.addTab(gBrowser, "https://example.com/"); await BrowserTestUtils.browserLoaded(tabB.linkedBrowser); - // eslint-disable-next-line @microsoft/sdl/no-insecure-url - let tabC = BrowserTestUtils.addTab(gBrowser, "http://example.com/"); + let tabC = BrowserTestUtils.addTab(gBrowser, "https://example.com/"); await BrowserTestUtils.browserLoaded(tabC.linkedBrowser); let seenEvents = []; @@ -31,7 +29,7 @@ add_task( tabC.linkedBrowser, "test-notification", "", - "plugins-notification-icon", + "geo-notification-icon", null, null, options diff --git a/browser/base/content/test/siteIdentity/browser_check_identity_state.js b/browser/base/content/test/siteIdentity/browser_check_identity_state.js index ca1886dc5410..b0912cc23cda 100644 --- a/browser/base/content/test/siteIdentity/browser_check_identity_state.js +++ b/browser/base/content/test/siteIdentity/browser_check_identity_state.js @@ -71,7 +71,6 @@ add_task(async function chromeUITest() { "logins", "loginsimportreport", "performance", - "plugins", "policies", "preferences", "processes", diff --git a/browser/components/BrowserGlue.sys.mjs b/browser/components/BrowserGlue.sys.mjs index 78a7d7e456f4..e7d20ad6bcc5 100644 --- a/browser/components/BrowserGlue.sys.mjs +++ b/browser/components/BrowserGlue.sys.mjs @@ -292,20 +292,6 @@ let JSWINDOWACTORS = { remoteTypes: ["privilegedabout"], }, - AboutPlugins: { - parent: { - esModuleURI: "resource:///actors/AboutPluginsParent.sys.mjs", - }, - child: { - esModuleURI: "resource:///actors/AboutPluginsChild.sys.mjs", - - events: { - DOMDocElementInserted: { capture: true }, - }, - }, - - matches: ["about:plugins"], - }, AboutPocket: { parent: { esModuleURI: "resource:///actors/AboutPocketParent.sys.mjs", diff --git a/browser/locales/en-US/browser/browser.ftl b/browser/locales/en-US/browser/browser.ftl index 10f8145deebf..d14be42f0d4e 100644 --- a/browser/locales/en-US/browser/browser.ftl +++ b/browser/locales/en-US/browser/browser.ftl @@ -89,8 +89,6 @@ urlbar-indexed-db-notification-anchor = .tooltiptext = Open offline storage message panel urlbar-password-notification-anchor = .tooltiptext = Open save password message panel -urlbar-plugins-notification-anchor = - .tooltiptext = Manage plug-in use urlbar-web-rtc-share-devices-notification-anchor = .tooltiptext = Manage sharing your camera and/or microphone with the site # "Speakers" is used in a general sense that might include headphones or diff --git a/browser/themes/shared/jar.inc.mn b/browser/themes/shared/jar.inc.mn index 4a44fd1f63d8..2f941cb42fd8 100644 --- a/browser/themes/shared/jar.inc.mn +++ b/browser/themes/shared/jar.inc.mn @@ -93,7 +93,6 @@ skin/classic/browser/notification-icons/minimize.svg (../shared/notification-icons/minimize.svg) skin/classic/browser/notification-icons/persistent-storage-blocked.svg (../shared/notification-icons/persistent-storage-blocked.svg) skin/classic/browser/notification-icons/persistent-storage.svg (../shared/notification-icons/persistent-storage.svg) - skin/classic/browser/notification-icons/plugin-badge.svg (../shared/notification-icons/plugin-badge.svg) skin/classic/browser/notification-icons/popup.svg (../shared/notification-icons/popup.svg) skin/classic/browser/notification-icons/screen-blocked.svg (../shared/notification-icons/screen-blocked.svg) skin/classic/browser/notification-icons/screen.svg (../shared/notification-icons/screen.svg) diff --git a/browser/themes/shared/notification-icons.css b/browser/themes/shared/notification-icons.css index 37029dc3e055..92466732f644 100644 --- a/browser/themes/shared/notification-icons.css +++ b/browser/themes/shared/notification-icons.css @@ -300,71 +300,6 @@ list-style-image: url(chrome://browser/skin/addons/addon-install-blocked.svg); } -/* PLUGINS */ - -.plugin-icon { - list-style-image: url(chrome://global/skin/icons/plugin.svg); - transition: fill 1.5s; -} - -#plugin-icon-badge { - list-style-image: url(chrome://browser/skin/notification-icons/plugin-badge.svg); - width: 16px; - height: 16px; - opacity: 0; - transition: opacity 1.5s; -} - -#plugins-notification-icon:not(.plugin-blocked)[extraAttr="inactive"] > .plugin-icon { - fill-opacity: 0.25; -} - -#plugins-notification-icon[extraAttr="inactive"] > #plugin-icon-badge { - opacity: 1; -} - -#plugins-notification-icon[extraAttr="inactive"] > #plugin-icon-badge[animate] { - animation: blink-badge 1000ms ease 0s 5 alternate both; -} - -@keyframes blink-badge { - from { - opacity: 0; - } - to { - opacity: 1; - } -} - -.plugin-blocked > .plugin-icon { - list-style-image: url(chrome://global/skin/icons/plugin-blocked.svg); - fill: #d92215 !important; -} - -.plugin-blocked > #plugin-icon-badge { - visibility: collapse; -} - -#notification-popup-box[hidden] { - /* Override display:none to make the pluginBlockedNotification animation work - when showing the notification repeatedly. */ - display: flex; - visibility: collapse; -} - -#plugins-notification-icon.plugin-blocked[showing] { - animation: pluginBlockedNotification 500ms ease 0s 5 alternate both; -} - -@keyframes pluginBlockedNotification { - from { - opacity: 0; - } - to { - opacity: 1; - } -} - /* UPDATE */ .popup-notification-icon[popupid="update-available"], .popup-notification-icon[popupid="update-manual"], diff --git a/browser/themes/shared/notification-icons/plugin-badge.svg b/browser/themes/shared/notification-icons/plugin-badge.svg deleted file mode 100644 index 1646dac7e120..000000000000 --- a/browser/themes/shared/notification-icons/plugin-badge.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - diff --git a/docshell/base/nsAboutRedirector.cpp b/docshell/base/nsAboutRedirector.cpp index 64891bea546e..435c9f6275e6 100644 --- a/docshell/base/nsAboutRedirector.cpp +++ b/docshell/base/nsAboutRedirector.cpp @@ -140,11 +140,6 @@ static const RedirEntry kRedirMap[] = { {"performance", "about:processes", nsIAboutModule::ALLOW_SCRIPT | nsIAboutModule::IS_SECURE_CHROME_UI | nsIAboutModule::HIDE_FROM_ABOUTABOUT}, -#ifndef ANDROID - {"plugins", "chrome://global/content/plugins.html", - nsIAboutModule::URI_MUST_LOAD_IN_CHILD | - nsIAboutModule::IS_SECURE_CHROME_UI}, -#endif {"processes", "chrome://global/content/aboutProcesses.html", nsIAboutModule::ALLOW_SCRIPT | nsIAboutModule::IS_SECURE_CHROME_UI}, // about:serviceworkers always wants to load in the parent process because diff --git a/docshell/build/components.conf b/docshell/build/components.conf index b3071cc549d2..7f7e2c243440 100644 --- a/docshell/build/components.conf +++ b/docshell/build/components.conf @@ -25,7 +25,6 @@ about_pages = [ 'neterror', 'networking', 'performance', - 'plugins', 'processes', 'serviceworkers', 'srcdoc', diff --git a/mobile/android/app/geckoview-prefs.js b/mobile/android/app/geckoview-prefs.js index 7ea6330fe425..136209881828 100644 --- a/mobile/android/app/geckoview-prefs.js +++ b/mobile/android/app/geckoview-prefs.js @@ -311,7 +311,7 @@ pref("media.geckoview.autoplay.request", true); // Disable future downloads of OpenH264 on Android (bug 1548679) pref("media.gmp-gmpopenh264.autoupdate", false); -// Make OpenH264 visible by default on mobile (bug 1532578) +// Keep OpenH264 if already installed before. (bug 1532578) pref("media.gmp-gmpopenh264.enabled", true); pref("media.gmp-gmpopenh264.visible", true); diff --git a/mobile/android/locales/filter.py b/mobile/android/locales/filter.py index 94a14b95c96e..a972c583bcfb 100644 --- a/mobile/android/locales/filter.py +++ b/mobile/android/locales/filter.py @@ -32,9 +32,6 @@ def test(mod, path, entity=None): if re.match(r"toolkit/about/[^/]*Mozilla.ftl", path): # error on toolkit/about/*Mozilla.ftl return "error" - if re.match(r"toolkit/about/[^/]*Plugins.ftl", path): - # error on toolkit/about/*Plugins.ftl - return "error" if re.match(r"toolkit/about/[^/]*Rights.ftl", path): # error on toolkit/about/*Rights.ftl return "error" diff --git a/mobile/android/locales/l10n.toml b/mobile/android/locales/l10n.toml index ca0dad91b774..45a31de13ffc 100644 --- a/mobile/android/locales/l10n.toml +++ b/mobile/android/locales/l10n.toml @@ -133,10 +133,6 @@ exclude-multi-locale = [ reference = "dom/locales/en-US/chrome/dom/dom.properties" l10n = "{l}dom/chrome/dom/dom.properties" -[[paths]] - reference = "toolkit/locales/en-US/toolkit/about/*Plugins.ftl" - l10n = "{l}toolkit/toolkit/about/*Plugins.ftl" - [[paths]] reference = "toolkit/locales/en-US/toolkit/about/*About.ftl" l10n = "{l}toolkit/toolkit/about/*About.ftl" diff --git a/mobile/locales/filter.py b/mobile/locales/filter.py index 311d785f2c16..38b4bbb50d03 100644 --- a/mobile/locales/filter.py +++ b/mobile/locales/filter.py @@ -33,9 +33,6 @@ def test(mod, path, entity=None): if re.match(r"toolkit/about/[^/]*Mozilla.ftl", path): # error on toolkit/about/*Mozilla.ftl return "error" - if re.match(r"toolkit/about/[^/]*Plugins.ftl", path): - # error on toolkit/about/*Plugins.ftl - return "error" if re.match(r"toolkit/about/[^/]*Rights.ftl", path): # error on toolkit/about/*Rights.ftl return "error" diff --git a/python/l10n/fluent_migrations/bug_747301_about_plugin_removal.py b/python/l10n/fluent_migrations/bug_747301_about_plugin_removal.py new file mode 100644 index 000000000000..a6df49f3efd1 --- /dev/null +++ b/python/l10n/fluent_migrations/bug_747301_about_plugin_removal.py @@ -0,0 +1,28 @@ +# Any copyright is dedicated to the Public Domain. +# http://creativecommons.org/publicdomain/zero/1.0/ + +from fluent.migrate import COPY_PATTERN +from fluent.migrate.helpers import transforms_from + + +def migrate(ctx): + """Bug 747301 - remove about:plugins, part {index}.""" + plugins_ftl = "toolkit/toolkit/about/aboutPlugins.ftl" + addon_ftl = "toolkit/toolkit/about/aboutAddons.ftl" + ctx.add_transforms( + addon_ftl, + addon_ftl, + transforms_from( + """ +plugins-gmp-license-info = {COPY_PATTERN(from_path, "plugins-gmp-license-info")} +plugins-gmp-privacy-info = {COPY_PATTERN(from_path, "plugins-gmp-privacy-info")} + +plugins-openh264-name = {COPY_PATTERN(from_path, "plugins-openh264-name")} +plugins-openh264-description = {COPY_PATTERN(from_path, "plugins-openh264-description")} + +plugins-widevine-name = {COPY_PATTERN(from_path, "plugins-widevine-name")} +plugins-widevine-description = {COPY_PATTERN(from_path, "plugins-widevine-description")} +""", + from_path=plugins_ftl, + ), + ) diff --git a/services/sync/tests/tps/test_special_tabs.js b/services/sync/tests/tps/test_special_tabs.js index 84d336772d7d..9e1eae88e347 100644 --- a/services/sync/tests/tps/test_special_tabs.js +++ b/services/sync/tests/tps/test_special_tabs.js @@ -18,7 +18,7 @@ var tabs1 = [ title: "Firefox", profile: "profile1", }, - { uri: "about:plugins", title: "About", profile: "profile1" }, + { uri: "about:robots", title: "About", profile: "profile1" }, { uri: "about:credits", title: "Credits", profile: "profile1" }, { uri: "data:text/html,MozillaMozilla", @@ -51,7 +51,7 @@ var tabs3 = [ title: "Firstrun", profile: "profile1", }, - { uri: "about:plugins", title: "About", profile: "profile1" }, + { uri: "about:robots", title: "About", profile: "profile1" }, { uri: "about:credits", title: "Credits", profile: "profile1" }, ]; diff --git a/toolkit/content/aboutSupport.xhtml b/toolkit/content/aboutSupport.xhtml index 328faddf1baf..87045da3c8ba 100644 --- a/toolkit/content/aboutSupport.xhtml +++ b/toolkit/content/aboutSupport.xhtml @@ -167,16 +167,6 @@ -#ifndef ANDROID - - - - - about:plugins - - -#endif - diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn index 9575c14a8e8b..d7eea9867523 100644 --- a/toolkit/content/jar.mn +++ b/toolkit/content/jar.mn @@ -41,11 +41,6 @@ toolkit.jar: content/global/aboutUrlClassifier.js content/global/aboutUrlClassifier.xhtml content/global/aboutUrlClassifier.css -#ifndef ANDROID - content/global/plugins.html - content/global/plugins.css - content/global/plugins.js -#endif * content/global/buildconfig.html content/global/buildconfig.css content/global/contentAreaUtils.js diff --git a/toolkit/content/plugins.css b/toolkit/content/plugins.css deleted file mode 100644 index 2f6f26ad9b85..000000000000 --- a/toolkit/content/plugins.css +++ /dev/null @@ -1,74 +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/. */ - -/* ===== plugins.css ===================================================== - == Styles used by the about:plugins page. - ======================================================================= */ - -div#outside { - text-align: justify; - width: 90%; - margin-inline: 5%; -} - -#plugs { - text-align: center; - font-size: xx-large; - font-weight: bold; -} - -#noplugs { - font-size: x-large; - font-weight: bold; -} - -.plugname { - margin-block: 2em 1em; - font-size: large; - text-align: start; - font-weight: bold; -} - -dl { - margin: 0 0 3px; -} - -table { - background-color: -moz-Dialog; - color: -moz-DialogText; - font: message-box; - text-align: start; - width: 100%; - border: 1px solid ThreeDShadow; - border-spacing: 0; -} - -th, td { - border: none; - padding: 3px; -} - -th { - text-align: center; - background-color: Highlight; - color: HighlightText; -} - -th + th, -td + td { - border-inline-start: 1px dotted ThreeDShadow; -} - -td { - text-align: start; - border-top: 1px dotted ThreeDShadow; -} - -th.type, th.suff { - width: 25%; -} - -th.desc { - width: 50%; -} diff --git a/toolkit/content/plugins.html b/toolkit/content/plugins.html deleted file mode 100644 index 759034a0dd7b..000000000000 --- a/toolkit/content/plugins.html +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - -
- -
- - diff --git a/toolkit/content/plugins.js b/toolkit/content/plugins.js deleted file mode 100644 index eef68847f48c..000000000000 --- a/toolkit/content/plugins.js +++ /dev/null @@ -1,131 +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/. */ - -/* eslint-env mozilla/remote-page */ - -"use strict"; - -/* JavaScript to enumerate and display all installed plug-ins - - * First, refresh plugins in case anything has been changed recently in - * prefs: (The "false" argument tells refresh not to reload or activate - * any plug-ins that would be active otherwise. In contrast, one would - * use "true" in the case of ASD instead of restarting) - */ -navigator.plugins.refresh(false); - -RPMSendQuery("RequestPlugins", {}).then(aPlugins => { - var fragment = document.createDocumentFragment(); - - window.ensureCustomElements("moz-message-bar"); - - // "Installed plugins" - var id, label; - if (aPlugins.length) { - id = "plugs"; - label = "installed-plugins-label"; - } else { - id = "noplugs"; - label = "no-plugins-are-installed-label"; - } - var enabledplugins = document.createElement("h1"); - enabledplugins.setAttribute("id", id); - document.l10n.setAttributes(enabledplugins, label); - fragment.appendChild(enabledplugins); - - let deprecation = document.createElement("moz-message-bar"); - let deprecationLink = document.createElement("a", { is: "moz-support-link" }); - deprecationLink.setAttribute("support-page", "npapi"); - deprecationLink.setAttribute("slot", "support-link"); - deprecation.appendChild(deprecationLink); - deprecation.setAttribute("data-l10n-attrs", "message"); - document.l10n.setAttributes(deprecation, "deprecation-description2"); - fragment.appendChild(deprecation); - - var stateNames = {}; - ["STATE_SOFTBLOCKED", "STATE_BLOCKED"].forEach(function (label) { - stateNames[Ci.nsIBlocklistService[label]] = label; - }); - - for (var i = 0; i < aPlugins.length; i++) { - var plugin = aPlugins[i]; - if (plugin) { - // "Shockwave Flash" - var plugname = document.createElement("h2"); - plugname.setAttribute("class", "plugname"); - plugname.appendChild(document.createTextNode(plugin.name)); - fragment.appendChild(plugname); - - var dl = document.createElement("dl"); - fragment.appendChild(dl); - - // "File: Flash Player.plugin" - var fileDd = document.createElement("dd"); - var file = document.createElement("span"); - file.setAttribute("data-l10n-name", "file"); - file.setAttribute("class", "label"); - fileDd.appendChild(file); - document.l10n.setAttributes(fileDd, "file-dd", { - pluginLibraries: plugin.pluginLibraries[0] ?? "", - }); - dl.appendChild(fileDd); - - // "Path: /usr/lib/mozilla/plugins/libtotem-cone-plugin.so" - var pathDd = document.createElement("dd"); - var path = document.createElement("span"); - path.setAttribute("data-l10n-name", "path"); - path.setAttribute("class", "label"); - pathDd.appendChild(path); - document.l10n.setAttributes(pathDd, "path-dd", { - pluginFullPath: plugin.pluginFullpath[0] ?? "", - }); - dl.appendChild(pathDd); - - // "Version: " - var versionDd = document.createElement("dd"); - var version = document.createElement("span"); - version.setAttribute("data-l10n-name", "version"); - version.setAttribute("class", "label"); - versionDd.appendChild(version); - document.l10n.setAttributes(versionDd, "version-dd", { - version: plugin.version ?? "", - }); - dl.appendChild(versionDd); - - // "State: " - var stateDd = document.createElement("dd"); - var state = document.createElement("span"); - state.setAttribute("data-l10n-name", "state"); - state.setAttribute("label", "state"); - stateDd.appendChild(state); - if (plugin.isActive) { - if (plugin.blocklistState in stateNames) { - document.l10n.setAttributes( - stateDd, - "state-dd-enabled-block-list-state", - { blockListState: stateNames[plugin.blocklistState] } - ); - } else { - document.l10n.setAttributes(stateDd, "state-dd-enabled"); - } - } else if (plugin.blocklistState in stateNames) { - document.l10n.setAttributes( - stateDd, - "state-dd-disabled-block-list-state", - { blockListState: stateNames[plugin.blocklistState] } - ); - } else { - document.l10n.setAttributes(stateDd, "state-dd-disabled"); - } - dl.appendChild(stateDd); - - // Plugin Description - var descDd = document.createElement("dd"); - descDd.appendChild(document.createTextNode(plugin.description)); - dl.appendChild(descDd); - } - } - - document.getElementById("outside").appendChild(fragment); -}); diff --git a/toolkit/locales/en-US/toolkit/about/aboutAddons.ftl b/toolkit/locales/en-US/toolkit/about/aboutAddons.ftl index 8de057dc0452..40ee9ba1553b 100644 --- a/toolkit/locales/en-US/toolkit/about/aboutAddons.ftl +++ b/toolkit/locales/en-US/toolkit/about/aboutAddons.ftl @@ -548,3 +548,14 @@ details-notification-softblocked-link = More Information details-notification-gmp-pending2 = .message = { $name } will be installed shortly. + +## Gecko Media Plugins (GMPs) + +plugins-gmp-license-info = License information +plugins-gmp-privacy-info = Privacy Information + +plugins-openh264-name = OpenH264 Video Codec provided by Cisco Systems, Inc. +plugins-openh264-description = This plugin is automatically installed by Mozilla to comply with the WebRTC specification and to enable WebRTC calls with devices that require the H.264 video codec. Visit https://www.openh264.org/ to view the codec source code and learn more about the implementation. + +plugins-widevine-name = Widevine Content Decryption Module provided by Google Inc. +plugins-widevine-description = This plugin enables playback of encrypted media in compliance with the Encrypted Media Extensions specification. Encrypted media is typically used by sites to protect against copying of premium media content. Visit https://www.w3.org/TR/encrypted-media/ for more information on Encrypted Media Extensions. diff --git a/toolkit/locales/en-US/toolkit/about/aboutPlugins.ftl b/toolkit/locales/en-US/toolkit/about/aboutPlugins.ftl deleted file mode 100644 index d63b8011c4bd..000000000000 --- a/toolkit/locales/en-US/toolkit/about/aboutPlugins.ftl +++ /dev/null @@ -1,47 +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/. - -title-label = About Plugins - -installed-plugins-label = Installed plugins -no-plugins-are-installed-label = No installed plugins found - -deprecation-description2 = - .message = Missing something? Some plugins are no longer supported. - -## The information of plugins -## -## Variables: -## $pluginLibraries: the plugin library -## $pluginFullPath: path of the plugin -## $version: version of the plugin - -file-dd = File: { $pluginLibraries } -path-dd = Path: { $pluginFullPath } -version-dd = Version: { $version } - -## These strings describe the state of plugins -## -## Variables: -## $blockListState: show some special state of the plugin, such as blocked, outdated - -state-dd-enabled = State: Enabled -state-dd-enabled-block-list-state = State: Enabled ({ $blockListState }) -state-dd-Disabled = State: Disabled -state-dd-Disabled-block-list-state = State: Disabled ({ $blockListState }) - -mime-type-label = MIME Type -description-label = Description -suffixes-label = Suffixes - -## Gecko Media Plugins (GMPs) - -plugins-gmp-license-info = License information -plugins-gmp-privacy-info = Privacy Information - -plugins-openh264-name = OpenH264 Video Codec provided by Cisco Systems, Inc. -plugins-openh264-description = This plugin is automatically installed by Mozilla to comply with the WebRTC specification and to enable WebRTC calls with devices that require the H.264 video codec. Visit https://www.openh264.org/ to view the codec source code and learn more about the implementation. - -plugins-widevine-name = Widevine Content Decryption Module provided by Google Inc. -plugins-widevine-description = This plugin enables playback of encrypted media in compliance with the Encrypted Media Extensions specification. Encrypted media is typically used by sites to protect against copying of premium media content. Visit https://www.w3.org/TR/encrypted-media/ for more information on Encrypted Media Extensions. diff --git a/toolkit/locales/en-US/toolkit/about/aboutSupport.ftl b/toolkit/locales/en-US/toolkit/about/aboutSupport.ftl index 275937e351b1..4c31c8d98553 100644 --- a/toolkit/locales/en-US/toolkit/about/aboutSupport.ftl +++ b/toolkit/locales/en-US/toolkit/about/aboutSupport.ftl @@ -58,7 +58,6 @@ app-basics-profile-dir = [linux] Profile Directory *[other] Profile Folder } -app-basics-enabled-plugins = Enabled Plugins app-basics-build-config = Build Configuration app-basics-user-agent = User Agent app-basics-os = OS diff --git a/toolkit/modules/RemotePageAccessManager.sys.mjs b/toolkit/modules/RemotePageAccessManager.sys.mjs index b8b5365234c6..5923aaed1421 100644 --- a/toolkit/modules/RemotePageAccessManager.sys.mjs +++ b/toolkit/modules/RemotePageAccessManager.sys.mjs @@ -123,9 +123,6 @@ export let RemotePageAccessManager = { RPMSendAsyncMessage: ["ActivityStream:ContentToMain"], RPMAddMessageListener: ["ActivityStream:MainToContent"], }, - "about:plugins": { - RPMSendQuery: ["RequestPlugins"], - }, "about:pocket-saved": { RPMSendAsyncMessage: ["*"], RPMAddMessageListener: ["*"], diff --git a/toolkit/mozapps/extensions/internal/GMPProvider.sys.mjs b/toolkit/mozapps/extensions/internal/GMPProvider.sys.mjs index 6c505eaa8906..d847b4ba36f6 100644 --- a/toolkit/mozapps/extensions/internal/GMPProvider.sys.mjs +++ b/toolkit/mozapps/extensions/internal/GMPProvider.sys.mjs @@ -62,8 +62,8 @@ const GMP_PLUGINS = [ ChromeUtils.defineLazyGetter( lazy, - "pluginsBundle", - () => new Localization(["toolkit/about/aboutPlugins.ftl"], true) + "addonsBundle", + () => new Localization(["toolkit/about/aboutAddons.ftl"], true) ); ChromeUtils.defineLazyGetter(lazy, "gmpService", () => Cc["@mozilla.org/gecko-media-plugin-service;1"].getService( @@ -199,7 +199,7 @@ GMPWrapper.prototype = { let a = doc.createElementNS(XHTML, "a"); a.href = plugin[urlProp]; a.target = "_blank"; - a.textContent = lazy.pluginsBundle.formatValueSync(labelId); + a.textContent = lazy.addonsBundle.formatValueSync(labelId); if (frag.childElementCount) { frag.append( @@ -848,8 +848,8 @@ var GMPProvider = { for (let aPlugin of GMP_PLUGINS) { let plugin = { id: aPlugin.id, - name: lazy.pluginsBundle.formatValueSync(aPlugin.name), - description: lazy.pluginsBundle.formatValueSync(aPlugin.description), + name: lazy.addonsBundle.formatValueSync(aPlugin.name), + description: lazy.addonsBundle.formatValueSync(aPlugin.description), homepageURL: aPlugin.homepageURL, optionsURL: aPlugin.optionsURL, wrapper: null, diff --git a/toolkit/mozapps/extensions/test/browser/browser.toml b/toolkit/mozapps/extensions/test/browser/browser.toml index eed68c052698..54f11270ac09 100644 --- a/toolkit/mozapps/extensions/test/browser/browser.toml +++ b/toolkit/mozapps/extensions/test/browser/browser.toml @@ -15,7 +15,6 @@ support-files = [ "discovery/api_response_empty.json", "discovery/small-1x1.png", "head.js", - "plugin_test.html", "redirect.sjs", "browser_updatessl.json", "browser_updatessl.json^headers^", diff --git a/toolkit/mozapps/extensions/test/browser/plugin_test.html b/toolkit/mozapps/extensions/test/browser/plugin_test.html deleted file mode 100644 index 0709eda066f0..000000000000 --- a/toolkit/mozapps/extensions/test/browser/plugin_test.html +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/toolkit/mozapps/extensions/test/xpcshell/test_gmpProvider.js b/toolkit/mozapps/extensions/test/xpcshell/test_gmpProvider.js index 3419be6bddeb..61138c087389 100644 --- a/toolkit/mozapps/extensions/test/xpcshell/test_gmpProvider.js +++ b/toolkit/mozapps/extensions/test/xpcshell/test_gmpProvider.js @@ -17,8 +17,8 @@ const { UpdateUtils } = ChromeUtils.importESModule( ChromeUtils.defineLazyGetter( this, - "pluginsBundle", - () => new Localization(["toolkit/about/aboutPlugins.ftl"]) + "addonsBundle", + () => new Localization(["toolkit/about/aboutAddons.ftl"]) ); var gMockAddons = new Map(); @@ -104,9 +104,9 @@ add_task(async function test_notInstalled() { let mockAddon = gMockAddons.get(addon.id); Assert.notEqual(mockAddon, null); - let name = await pluginsBundle.formatValue(mockAddon.nameId); + let name = await addonsBundle.formatValue(mockAddon.nameId); Assert.equal(addon.name, name); - let description = await pluginsBundle.formatValue(mockAddon.descriptionId); + let description = await addonsBundle.formatValue(mockAddon.descriptionId); Assert.equal(addon.description, description); Assert.ok(!addon.isActive); @@ -174,7 +174,7 @@ add_task(async function test_installed() { Assert.ok(!addon.appDisabled); Assert.ok(addon.userDisabled); - let name = await pluginsBundle.formatValue(mockAddon.nameId); + let name = await addonsBundle.formatValue(mockAddon.nameId); Assert.equal(addon.name, name); Assert.equal(addon.version, TEST_VERSION); diff --git a/toolkit/themes/shared/desktop-jar.inc.mn b/toolkit/themes/shared/desktop-jar.inc.mn index 9db6bab2c887..c53ba4b0f144 100644 --- a/toolkit/themes/shared/desktop-jar.inc.mn +++ b/toolkit/themes/shared/desktop-jar.inc.mn @@ -99,7 +99,6 @@ skin/classic/global/icons/page-landscape.svg (../../shared/icons/page-landscape.svg) skin/classic/global/icons/performance.svg (../../shared/icons/performance.svg) skin/classic/global/icons/plugin.svg (../../shared/icons/plugin.svg) - skin/classic/global/icons/plugin-blocked.svg (../../shared/icons/plugin-blocked.svg) skin/classic/global/icons/plus.svg (../../shared/icons/plus.svg) skin/classic/global/icons/pocket.svg (../../shared/icons/pocket.svg) skin/classic/global/icons/pocket-outline.svg (../../shared/icons/pocket-outline.svg) diff --git a/toolkit/themes/shared/icons/plugin-blocked.svg b/toolkit/themes/shared/icons/plugin-blocked.svg deleted file mode 100644 index 9859878c86a4..000000000000 --- a/toolkit/themes/shared/icons/plugin-blocked.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/tools/esmify/map.json b/tools/esmify/map.json index 2dfd253f22f6..d83a0b972902 100644 --- a/tools/esmify/map.json +++ b/tools/esmify/map.json @@ -23,8 +23,6 @@ "resource:///actors/AboutLoginsParent.jsm": "browser/components/aboutlogins/AboutLoginsParent.jsm", "resource:///actors/AboutNewTabChild.jsm": "browser/actors/AboutNewTabChild.jsm", "resource:///actors/AboutNewTabParent.jsm": "browser/actors/AboutNewTabParent.jsm", - "resource:///actors/AboutPluginsChild.jsm": "browser/actors/AboutPluginsChild.jsm", - "resource:///actors/AboutPluginsParent.jsm": "browser/actors/AboutPluginsParent.jsm", "resource:///actors/AboutPocketChild.jsm": "browser/actors/AboutPocketChild.jsm", "resource:///actors/AboutPocketParent.jsm": "browser/actors/AboutPocketParent.jsm", "resource:///actors/AboutPrivateBrowsingChild.jsm": "browser/actors/AboutPrivateBrowsingChild.jsm", diff --git a/tools/lint/fluent-lint/exclusions.yml b/tools/lint/fluent-lint/exclusions.yml index fdb7437aaee1..b92cd799bd00 100644 --- a/tools/lint/fluent-lint/exclusions.yml +++ b/tools/lint/fluent-lint/exclusions.yml @@ -106,9 +106,6 @@ ID02: - find - new-tab - share - # toolkit/locales/en-US/toolkit/about/aboutPlugins.ftl - - file-dd - - path-dd # toolkit/locales/en-US/toolkit/about/aboutServiceWorkers.ftl - scope - waiting @@ -166,10 +163,9 @@ CO01: # toolkit/locales/en-US/toolkit/about/aboutAddons.ftl - addon-badge-line3 - recommended-theme-1 + - plugins-openh264-description # toolkit/locales/en-US/toolkit/about/aboutGlean.ftl - about-glean-description - # toolkit/locales/en-US/toolkit/about/aboutPlugins.ftl - - plugins-openh264-description # toolkit/locales/en-US/toolkit/about/aboutRights.ftl - rights-intro-point-1 - rights-intro-point-2