Name Description Size
ConduitsChild.jsm This @file implements the child side of Conduits, an abstraction over Fission IPC for extension API subject. See {@link ConduitsParent.jsm} for more details about the overall design. @typedef {object} MessageData @prop {ConduitID} [target] @prop {ConduitID} [sender] @prop {boolean} query @prop {object} arg 5317
ConduitsParent.jsm This @file implements the parent side of Conduits, an abstraction over Fission IPC for extension Contexts, API managers, Ports/Messengers, and other types of "subjects" participating in implementation of extension APIs. Additionally, knowledge about conduits from all child processes is gathered here, and used together with the full CanonicalBrowsingContext tree to route IPC messages and queries directly to the right subjects. Each Conduit is tied to one subject, attached to a ConduitAddress descriptor, and exposes an API for sending/receiving via an actor, or multiple actors in case of the parent process. @typedef {number|string} ConduitID @typedef {object} ConduitAddress @prop {ConduitID} id Globally unique across all processes. @prop {string[]} [recv] @prop {string[]} [send] @prop {string[]} [query] @prop {string[]} [cast] Lists of recvX, sendX, queryX and castX methods this subject will use. @typedef {"messenger"|"port"|"tab"} BroadcastKind Kinds of broadcast targeting filters. @example: init(actor) { this.conduit = actor.openConduit(this, { id: this.id, recv: ["recvAddNumber"], send: ["sendNumberUpdate"], }); } recvAddNumber({ num }, { actor, sender }) { num += 1; this.conduit.sendNumberUpdate(sender.id, { num }); } 10318
DocumentObserver.h 1956
Extension.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 82917
ExtensionActions.jsm Common base class for Page and Browser actions. 16389
ExtensionActivityLog.jsm Notify all listeners of an extension activity. @param {string} id The ID of the extension that caused the activity. @param {string} viewType The view type the activity is in. @param {string} type The type of the activity. @param {string} name The API name or path. @param {object} data Activity specific data. @param {string} timeStamp The timestamp for the activity. 3621
ExtensionChild.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 32799
ExtensionChildDevToolsUtils.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 3416
ExtensionCommon.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 74706
ExtensionContent.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 38321
ExtensionPageChild.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 14278
ExtensionParent.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 57856
ExtensionPermissions.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 5159
ExtensionPolicyService.cpp moz-extension: blob: filesystem: " \ "'unsafe-eval' 'unsafe-inline'; " \ "object-src 'self' https://* moz-extension: blob: filesystem:;" #define DEFAULT_CSP_PREF \ "extensions.webextensions.default-content-security-policy" #define DEFAULT_DEFAULT_CSP "script-src 'self'; object-src 'self';" #define OBS_TOPIC_PRELOAD_SCRIPT "web-extension-preload-content-script" #define OBS_TOPIC_LOAD_SCRIPT "web-extension-load-content-script" static const char kDocElementInserted[] = "initial-document-element-inserted"; static mozIExtensionProcessScript& ProcessScript() { static nsCOMPtr<mozIExtensionProcessScript> sProcessScript; if (MOZ_UNLIKELY(!sProcessScript)) { nsCOMPtr<mozIExtensionProcessScriptJSM> jsm = do_ImportModule("resource://gre/modules/ExtensionProcessScript.jsm"); MOZ_RELEASE_ASSERT(jsm); Unused << jsm->GetExtensionProcessScript(getter_AddRefs(sProcessScript)); MOZ_RELEASE_ASSERT(sProcessScript); ClearOnShutdown(&sProcessScript); } return *sProcessScript; } /***************************************************************************** ExtensionPolicyService *************************************************************************** 21691
ExtensionPolicyService.h 3987
ExtensionPreferencesManager.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 20294
ExtensionProcessScript.jsm This script contains the minimum, skeleton content process code that we need in order to lazily load other extension modules when they are first necessary. Anything which is not likely to be needed immediately, or shortly after startup, in *every* browser process live outside of this file. 12548
ExtensionSettingsStore.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 20962
ExtensionShortcuts.jsm exported ExtensionShortcuts 12625
ExtensionStorage.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 13502
ExtensionStorageIDB.jsm Get the DOMException error name for a given error object. @param {Error | undefined} error The Error object to convert into a string, or undefined if there was no error. @returns {string | undefined} The DOMException error name (sliced to a maximum of 80 chars), "OtherError" if the error object is not a DOMException instance, or `undefined` if there wasn't an error. 28877
ExtensionStorageSync.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 45057
ExtensionTelemetry.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 6700
ExtensionTestCommon.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 12954
ExtensionUtils.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 8619
ExtensionXPCShellUtils.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 26703
FindContent.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 7538
MatchGlob.h 3171
MatchPattern.cpp AtomSet *************************************************************************** 20683
MatchPattern.h 8755
MatchURLFilters.jsm exported MatchURLFilters 5340
MessageChannel.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 37200
MessageManagerProxy.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 6435
NativeManifests.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 5614
NativeMessaging.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 11803
PerformanceCounters.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 4483
ProfilerGetSymbols-worker.js -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 4018
ProfilerGetSymbols.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 5835
ProxyChannelFilter.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 12207
Schemas.jsm -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 97276
WebExtensionContentScript.h 6589
WebExtensionPolicy.cpp WebExtensionPolicy *************************************************************************** 25134
WebExtensionPolicy.h 6752
WebNavigation.jsm Support nsIObserver interface to observe the urlbar autocomplete events used to keep track of the urlbar user interaction. 16464
WebNavigationContent.js eslint-env mozilla/frame-script 12141
WebNavigationFrames.jsm exported WebNavigationFrames 3700
child 12
docs 11
dummy.xhtml 266
ext-browser-content.js eslint-env mozilla/frame-script 11351
ext-toolkit.json 6924
extensionProcessScriptLoader.js 293
extensions-toolkit.manifest 835
jar.mn 3655
moz.build 2834
mozIExtensionProcessScript.idl 922
onExtensionBrowser.js -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- 389
parent 33
profiler_get_symbols.js @param {WasmMemBuffer} binary_data @param {WasmMemBuffer} debug_data @param {string} breakpad_id @returns {CompactSymbolTable} 13464
schemas 42
test 3
webrequest 20
.eslintrc.js Silencing the error because ... 7312