Bug 1469318 - Do not require 'theme' permission for theme.getCurrent() and theme.onUpdated. r=jaws draft
authorTim Nguyen <ntim.bugs@gmail.com>
Mon, 18 Jun 2018 17:18:57 +0100
changeset 808169 589fa7c1c598d1566b7473985a6aa34a7a3784b3
parent 808144 1d03f4a4af28c1af56a183f5951a45a315a6c788
push id113301
push userbmo:ntim.bugs@gmail.com
push dateMon, 18 Jun 2018 16:20:06 +0000
reviewersjaws
bugs1469318
milestone62.0a1
Bug 1469318 - Do not require 'theme' permission for theme.getCurrent() and theme.onUpdated. r=jaws MozReview-Commit-ID: 1FctjuDSXWb
toolkit/components/extensions/schemas/theme.json
toolkit/components/extensions/test/browser/browser_ext_themes_getCurrent_differentExt.js
toolkit/components/extensions/test/browser/browser_ext_themes_static_onUpdated.js
--- a/toolkit/components/extensions/schemas/theme.json
+++ b/toolkit/components/extensions/schemas/theme.json
@@ -580,17 +580,16 @@
           }
         }
       }
     ]
   },
   {
     "namespace": "theme",
     "description": "The theme API allows customizing of visual elements of the browser.",
-    "permissions": ["theme"],
     "types": [
       {
         "id": "ThemeUpdateInfo",
         "type": "object",
         "description": "Info provided in the onUpdated listener.",
         "properties": {
           "theme": {
             "type": "object",
@@ -633,16 +632,17 @@
           }
         ]
       },
       {
         "name": "update",
         "type": "function",
         "async": true,
         "description": "Make complete updates to the theme. Resolves when the update has completed.",
+        "permissions": ["theme"],
         "parameters": [
           {
             "type": "integer",
             "name": "windowId",
             "optional": true,
             "description": "The id of the window to update. No id updates all windows."
           },
           {
@@ -652,16 +652,17 @@
           }
         ]
       },
       {
         "name": "reset",
         "type": "function",
         "async": true,
         "description": "Removes the updates made to the theme.",
+        "permissions": ["theme"],
         "parameters": [
           {
             "type": "integer",
             "name": "windowId",
             "optional": true,
             "description": "The id of the window to reset. No id resets all windows."
           }
         ]
--- a/toolkit/components/extensions/test/browser/browser_ext_themes_getCurrent_differentExt.js
+++ b/toolkit/components/extensions/test/browser/browser_ext_themes_getCurrent_differentExt.js
@@ -24,19 +24,16 @@ add_task(async function test_getcurrent(
   const extension = ExtensionTestUtils.loadExtension({
     background() {
       browser.theme.onUpdated.addListener(() => {
         browser.theme.getCurrent().then(theme => {
           browser.test.sendMessage("theme-updated", theme);
         });
       });
     },
-    manifest: {
-      permissions: ["theme"],
-    },
   });
 
   await extension.startup();
 
   info("Testing getCurrent after static theme startup");
   let updatedPromise = extension.awaitMessage("theme-updated");
   await theme.startup();
   let receivedTheme = await updatedPromise;
--- a/toolkit/components/extensions/test/browser/browser_ext_themes_static_onUpdated.js
+++ b/toolkit/components/extensions/test/browser/browser_ext_themes_static_onUpdated.js
@@ -22,19 +22,16 @@ add_task(async function test_on_updated(
   });
 
   const extension = ExtensionTestUtils.loadExtension({
     background() {
       browser.theme.onUpdated.addListener(updateInfo => {
         browser.test.sendMessage("theme-updated", updateInfo);
       });
     },
-    manifest: {
-      permissions: ["theme"],
-    },
   });
 
   await extension.startup();
 
   info("Testing update event on static theme startup");
   let updatedPromise = extension.awaitMessage("theme-updated");
   await theme.startup();
   const {theme: receivedTheme, windowId} = await updatedPromise;