Name Description Size
Feeds.jsm -*- indent-tabs-mode: nil; js-indent-level: 2 -*- 1571 603
OfflineAppCacheHelper.jsm 561
OpenInTabsUtils.jsm Utility functions that can be used when opening multiple tabs, that can be called without any tabbrowser instance. 2852
PermissionUI.jsm PermissionUI is responsible for exposing both a prototype PermissionPrompt that can be used by arbitrary browser components and add-ons, but also hosts the implementations of built-in permission prompts. If you're developing a feature that requires web content to ask for special permissions from the user, this module is for you. Suppose a system add-on wants to add a new prompt for a new request for getting more low-level access to the user's sound card, and the permission request is coming up from content by way of the nsContentPermissionHelper. The system add-on could then do the following: ChromeUtils.import("resource://gre/modules/Integration.jsm"); ChromeUtils.import("resource:///modules/PermissionUI.jsm"); const SoundCardIntegration = (base) => ({ __proto__: base, createPermissionPrompt(type, request) { if (type != "sound-api") { return super.createPermissionPrompt(...arguments); } return { __proto__: PermissionUI.PermissionPromptForRequestPrototype, get permissionKey() { return "sound-permission"; } // etc - see the documentation for PermissionPrompt for // a better idea of what things one can and should override. } }, }); // Add-on startup: Integration.contentPermission.register(SoundCardIntegration); // ... // Add-on shutdown: Integration.contentPermission.unregister(SoundCardIntegration); Note that PermissionPromptForRequestPrototype must be used as the prototype, since the prompt is wrapping an nsIContentPermissionRequest, and going through nsIContentPermissionPrompt. It is, however, possible to take advantage of PermissionPrompt without having to go through nsIContentPermissionPrompt or with a nsIContentPermissionRequest. The PermissionPromptPrototype can be imported, subclassed, and have prompt() called directly, without the caller having called into createPermissionPrompt. 19533
RecentWindow.jsm Get the most recent browser window. @param aOptions an object accepting the arguments for the search. * private: true to restrict the search to private windows only, false to restrict the search to non-private only. Omit the property to search in both groups. * allowPopups: true if popup windows are permissable. 2497
SitePermissions.jsm A helper module to manage temporarily blocked permissions. Permissions are keyed by browser, so methods take a Browser element to identify the corresponding permission set. This uses a WeakMap to key browsers, so that entries are automatically cleared once the browser stops existing (once there are no other references to the browser object); 28277
ThemeVariableMap.jsm 1426
WindowsJumpLists.jsm Constants 19565
WindowsPreviewPerTab.jsm -*- indent-tabs-mode: nil; js-indent-level: 2 -*- 27983