michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this file, michael@0: * You can obtain at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: [JSImplementation="@mozilla.org/permissionSettings;1", michael@0: Func="Navigator::HasPermissionSettingsSupport", michael@0: Pref="dom.mozPermissionSettings.enabled", michael@0: NavigatorProperty="mozPermissionSettings"] michael@0: interface PermissionSettings michael@0: { michael@0: DOMString get(DOMString permission, DOMString manifestURI, DOMString origin, boolean browserFlag); michael@0: michael@0: void set(DOMString permission, DOMString value, DOMString manifestURI, DOMString origin, boolean browserFlag); michael@0: michael@0: boolean isExplicit(DOMString permission, DOMString manifestURI, DOMString origin, boolean browserFlag); michael@0: michael@0: // Removing a permission is only allowed for pages with a different origin than the app michael@0: // and pages that have browserFlag=true, so remove() doesn't have a browserFlag parameter. michael@0: void remove(DOMString permission, DOMString manifestURI, DOMString origin); michael@0: };