Bug 1286530 - Turn BrowserElement API to ChromeOnly draft
authorAlexandre Lissy <lissyx@lissyx.dyndns.org>
Fri, 22 Apr 2016 12:25:33 +0200
changeset 387252 fa17ea49db2dc2f9ba53f45aed900e0a2d639576
parent 387251 3cc220563924509873344ac2aae25783de4f56da
child 387253 5c8bc5e77b93b63e29e5758a93ce40c6f4bd5903
push id22914
push userbmo:lissyx+mozillians@lissyx.dyndns.org
push dateWed, 13 Jul 2016 15:39:24 +0000
bugs1286530
milestone50.0a1
Bug 1286530 - Turn BrowserElement API to ChromeOnly MozReview-Commit-ID: CRXiEKkmipp Conflicts: dom/webidl/BrowserElement.webidl
dom/webidl/BrowserElement.webidl
dom/webidl/BrowserElementAudioChannel.webidl
dom/webidl/BrowserElementProxy.webidl
--- a/dom/webidl/BrowserElement.webidl
+++ b/dom/webidl/BrowserElement.webidl
@@ -25,159 +25,159 @@ interface BrowserElement {
 
 BrowserElement implements BrowserElementCommon;
 BrowserElement implements BrowserElementPrivileged;
 
 [NoInterfaceObject]
 interface BrowserElementCommon {
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser embed-widgets"]
+   ChromeOnly]
   void setVisible(boolean visible);
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser embed-widgets"]
+   ChromeOnly]
   DOMRequest getVisible();
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser embed-widgets"]
+   ChromeOnly]
   void setActive(boolean active);
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser embed-widgets"]
+   ChromeOnly]
   boolean getActive();
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser embed-widgets"]
+   ChromeOnly]
   void addNextPaintListener(BrowserElementNextPaintEventCallback listener);
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser embed-widgets"]
+   ChromeOnly]
   void removeNextPaintListener(BrowserElementNextPaintEventCallback listener);
 };
 
 [NoInterfaceObject]
 interface BrowserElementPrivileged {
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   void sendMouseEvent(DOMString type,
                       unsigned long x,
                       unsigned long y,
                       unsigned long button,
                       unsigned long clickCount,
                       unsigned long modifiers);
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
    Func="TouchEvent::PrefEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   void sendTouchEvent(DOMString type,
                       sequence<unsigned long> identifiers,
                       sequence<long> x,
                       sequence<long> y,
                       sequence<unsigned long> rx,
                       sequence<unsigned long> ry,
                       sequence<float> rotationAngles,
                       sequence<float> forces,
                       unsigned long count,
                       unsigned long modifiers);
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   void goBack();
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   void goForward();
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   void reload(optional boolean hardReload = false);
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   void stop();
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   DOMRequest download(DOMString url,
                       optional BrowserElementDownloadOptions options);
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   DOMRequest purgeHistory();
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   DOMRequest getScreenshot([EnforceRange] unsigned long width,
                            [EnforceRange] unsigned long height,
                            optional DOMString mimeType="");
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   void zoom(float zoom);
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   DOMRequest getCanGoBack();
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   DOMRequest getCanGoForward();
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   DOMRequest getContentDimensions();
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
    ChromeOnly]
   DOMRequest setInputMethodActive(boolean isActive);
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
    ChromeOnly]
   void setNFCFocus(boolean isFocus);
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   void findAll(DOMString searchString, BrowserFindCaseSensitivity caseSensitivity);
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   void findNext(BrowserFindDirection direction);
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   void clearMatch();
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAllPermissions="browser browser:universalxss"]
+   ChromeOnly]
   DOMRequest executeScript(DOMString script,
                            optional BrowserElementExecuteScriptOptions options);
 
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAllPermissions="browser"]
+   ChromeOnly]
   DOMRequest getWebManifest();
 
 };
--- a/dom/webidl/BrowserElementAudioChannel.webidl
+++ b/dom/webidl/BrowserElementAudioChannel.webidl
@@ -1,16 +1,16 @@
 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 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/.
  */
 
 [Pref="dom.mozBrowserFramesEnabled",
- CheckAnyPermissions="browser"]
+ ChromeOnly]
 interface BrowserElementAudioChannel : EventTarget {
   readonly attribute AudioChannel name;
 
   // This event is dispatched when this audiochannel is actually in used by the
   // app or one of the sub-iframes.
   attribute EventHandler onactivestatechanged;
 
   [Throws]
@@ -27,51 +27,51 @@ interface BrowserElementAudioChannel : E
 
   [Throws]
   DOMRequest isActive();
 };
 
 partial interface BrowserElementPrivileged {
   [Pure, Cached, Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   readonly attribute sequence<BrowserElementAudioChannel> allowedAudioChannels;
 
   /**
    * Mutes all audio in this browser.
    */
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   void mute();
 
   /**
    * Unmutes all audio in this browser.
    */
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   void unmute();
 
   /**
    * Obtains whether or not the browser is muted.
    */
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   DOMRequest getMuted();
 
   /**
    * Sets the volume for the browser.
    */
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   void setVolume(float volume);
 
   /**
    * Gets the volume for the browser.
    */
   [Throws,
    Pref="dom.mozBrowserFramesEnabled",
-   CheckAnyPermissions="browser"]
+   ChromeOnly]
   DOMRequest getVolume();
 };
--- a/dom/webidl/BrowserElementProxy.webidl
+++ b/dom/webidl/BrowserElementProxy.webidl
@@ -3,13 +3,13 @@
  * 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/.
  */
 
 [Constructor,
  JSImplementation="@mozilla.org/dom/browser-element-proxy;1",
  NavigatorProperty="mozBrowserElementProxy",
  Pref="dom.mozBrowserFramesEnabled",
- CheckAnyPermissions="browser:embedded-system-app"]
+ ChromeOnly]
 interface BrowserElementProxy : EventTarget {
 };
 BrowserElementProxy implements BrowserElementCommon;
 BrowserElementProxy implements BrowserElementPrivileged;