/* -*- 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/. */ callback BrowserElementNextPaintEventCallback = void (); //dictionary BrowserElementDownloadOptions { // DOMString? filename; //}; [NoInterfaceObject] interface BrowserElement { }; BrowserElement implements BrowserElementCommon; BrowserElement implements BrowserElementPrivileged; [NoInterfaceObject] interface BrowserElementCommon { //[Throws, // Pref="dom.mozBrowserFramesEnabled", // CheckPermissions="browser embed-widgets"] //void setVisible(boolean visible); //[Throws, // Pref="dom.mozBrowserFramesEnabled", // CheckPermissions="browser embed-widgets"] //DOMRequest getVisible(); //[Throws, // Pref="dom.mozBrowserFramesEnabled", // CheckPermissions="browser embed-widgets"] //void addNextPaintListener(BrowserElementNextPaintEventCallback listener); //[Throws, // Pref="dom.mozBrowserFramesEnabled", // CheckPermissions="browser embed-widgets"] //void removeNextPaintListener(BrowserElementNextPaintEventCallback listener); }; [NoInterfaceObject] interface BrowserElementPrivileged { //[Throws, // Pref="dom.mozBrowserFramesEnabled", // CheckPermissions="browser"] //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", // CheckPermissions="browser"] //void sendTouchEvent(DOMString type, // sequence identifiers, // sequence x, // sequence y, // sequence rx, // sequence ry, // sequence rotationAngles, // sequence forces, // unsigned long count, // unsigned long modifiers); [Throws, Pref="dom.mozBrowserFramesEnabled", CheckPermissions="browser"] void goBack(); [Throws, Pref="dom.mozBrowserFramesEnabled", CheckPermissions="browser"] void goForward(); [Throws, Pref="dom.mozBrowserFramesEnabled", CheckPermissions="browser"] void reload(optional boolean hardReload = false); [Throws, Pref="dom.mozBrowserFramesEnabled", CheckPermissions="browser"] void stop(); //[Throws, // Pref="dom.mozBrowserFramesEnabled", // CheckPermissions="browser"] //DOMRequest download(DOMString url, // optional BrowserElementDownloadOptions options); //[Throws, // Pref="dom.mozBrowserFramesEnabled", // CheckPermissions="browser"] //DOMRequest purgeHistory(); //[Throws, // Pref="dom.mozBrowserFramesEnabled", // CheckPermissions="browser"] //DOMRequest getScreenshot([EnforceRange] unsigned long width, // [EnforceRange] unsigned long height, // optional DOMString mimeType=""); //[Throws, // Pref="dom.mozBrowserFramesEnabled", // CheckPermissions="browser"] //void zoom(float zoom); //[Throws, // Pref="dom.mozBrowserFramesEnabled", // CheckPermissions="browser"] //DOMRequest getCanGoBack(); //[Throws, // Pref="dom.mozBrowserFramesEnabled", // CheckPermissions="browser"] //DOMRequest getCanGoForward(); //[Throws, // Pref="dom.mozBrowserFramesEnabled", // CheckPermissions="browser"] //DOMRequest getContentDimensions(); //[Throws, // Pref="dom.mozBrowserFramesEnabled", // CheckPermissions="browser"] //DOMRequest setInputMethodActive(boolean isActive); // Additional |nfc-manager| permission is required for setNFCFocus API //[Throws, // Pref="dom.mozBrowserFramesEnabled", // CheckPermissions="browser"] //void setNFCFocus(boolean isFocus); };