Name Description Size Coverage
assets -
components.conf 695 -
content 52 %
HeadlessShell.sys.mjs 7535 -
jar.mn 408 -
moz.build 2847 -
nsGNOMEShellDBusHelper.cpp "icon-data": a tuple of type (iiibiiay) describing a pixbuf with width, height, rowstride, has-alpha, bits-per-sample, channels, image data 14838 0 %
nsGNOMEShellDBusHelper.h 1326 -
nsGNOMEShellSearchProvider.cpp 19108 3 %
nsGNOMEShellSearchProvider.h 5088 14 %
nsGNOMEShellService.cpp 28386 59 %
nsGNOMEShellService.h 1250 100 %
nsIGNOMEShellService.idl Used to determine whether or not to offer "Set as desktop background" functionality. Even if shell service is available it is not guaranteed that it is able to set the background for every desktop which is especially true for Linux with its many different desktop environments. 3536 -
nsILimitedAccessFeature.idl An interface for unlocking Windows Limited Access Features. This allows use of Windows APIs which are otherwise gated. 1633 -
nsIMacShellService.idl Opens the desktop preferences, e.g. for after setting the background. 1628 -
nsIOpenTabsProvider.idl List of currently open public tabs 549 -
nsISecondaryTile.idl Provides functions that are called (on the main thread) when the secondary tile creation or deletion finishes. 2833 -
nsIShellService.idl Determines whether or not Firefox is the "Default Browser." This is simply whether or not Firefox is registered to handle http links. @param aForAllTypes true if the check should be made for HTTP and HTML. false if the check should be made for HTTP only. This parameter may be ignored on some platforms. 2414 -
nsIWindowsShellService.idl Bit flags for launchSetDefaultAppPicker's aFlags argument. They map 1:1 onto the flags accepted by the undocumented Windows IOpenWithLauncher COM interface's Launch method. The mapping below was determined empirically and determines the picker's messaging and actions. 18600 -
nsMacShellService.cpp 11735 -
nsMacShellService.h 855 -
nsShellService.h 592 -
nsToolkitShellService.h 699 100 %
nsWindowsShellService.cpp Enable logging by setting MOZ_LOG to "nsWindowsShellService:5" for debugging purposes. 107705 37 %
nsWindowsShellService.h 836 100 %
nsWindowsShellServiceInternal.h 823 -
OpenTabsProvider.sys.mjs 892 -
rust 37 %
ScreenshotChild.sys.mjs 929 -
search-provider-files -
ShellService.sys.mjs Internal functionality to save and restore the docShell.allow* properties. 39713 -
StartupOSIntegration.sys.mjs 10412 -
test -
Windows11TaskbarPinning.cpp The Win32 SetEvent and WaitForSingleObject functions take HANDLE parameters which are typedefs of void*. When using nsAutoHandle, that means if you forget to call .get() first, everything still compiles and then doesn't work at runtime. For instance, calling SetEvent(mEvent) below would compile but not work at runtime and the waits would block forever. To ensure this isn't an issue, we wrap the event in a custom class here with the simple methods that we want on an event. 21225 33 %
Windows11TaskbarPinning.h This file exists to keep the Windows 11 Taskbar Pinning API related code as self-contained as possible. 966 -
WindowsDefaultBrowser.cpp This file exists so that LaunchModernSettingsDialogDefaultApps can be called without linking to libxul. 10726 61 %
WindowsDefaultBrowser.h This file exists so that LaunchModernSettingsDialogDefaultApps can be called without linking to libxul. 1098 -
WindowsSetDefaultAppCmdHandler.sys.mjs Command-line handler for the Windows IOpenWithLauncher round-trip. When the ShellService.setAsDefault{PDF,Protocol}Handler launches the windows only "Open with" picker, it hands it a bundled stub file path for file-type defaults, or a URL for protocol defaults, and stashes a one-shot { openWithArg, overrideUri } redirect. If the user picks Firefox, Windows invokes Firefox with `-osint -url <openWithArg>`. This handler runs before BrowserContentHandler and intercepts the launch: it asks ShellService whether the -url value matches the pending openWithArg and, if so, suppresses the open and optionally redirects to the stashed overrideUri so the user lands somewhere meaningful in Firefox. 3059 -
WindowsSetDefaultRedirect.sys.mjs The IOpenWithLauncher api call protocol shared by the producer (ShellService.setAsDefault{PDF,Protocol}Handler) and the consumer (WindowsSetDefaultAppCmdHandler). ShellService arms a one-shot redirect before launching the OS "Open with" picker via IOpenWithLauncher; once the user picks Firefox, the OS relaunches Firefox with the same value and the command-line handler consumes it. This module owns that shared state (the pref shape and the matching rules). 4494 -
WindowsUIElement.cpp 2782 19 %
WindowsUIElement.h Wraps a UI Automation element and its containing window, exposing higher-level operations. 2371 100 %
WindowsUIOverlayImage.cpp 10864 0 %
WindowsUIOverlayImage.h Displays an overlay image on top of a UI Automation element. 2232 0 %
WindowsUserChoice.cpp Generate and check the UserChoice Hash, which protects file and protocol associations on Windows 10. NOTE: This is also used in the WDBA, so it avoids XUL and XPCOM. References: - PS-SFTA by Danysys <https://github.com/DanysysTeam/PS-SFTA> - based on a PureBasic version by LMongrain <https://github.com/DanysysTeam/SFTA> - AssocHashGen by "halfmeasuresdisabled", see bug 1225660 and <https://www.reddit.com/r/ReverseEngineering/comments/3t7q9m/assochashgen_a_reverse_engineered_version_of/> - SetUserFTA changelog <https://kolbi.cz/blog/2017/10/25/setuserfta-userchoice-hash-defeated-set-file-type-associations-per-user/> 17281 45 %
WindowsUserChoice.h Check the UserChoice Hashes for https, http, .html, .htm This should be checked before attempting to set a new default browser via the UserChoice key, to confirm our understanding of the existing hash. If an incorrect hash is written, Windows will prompt the user to choose a new default (or, in recent versions, it will just reset the default to Edge). Assuming that the existing hash value is correct (since Windows is fairly diligent about replacing bad keys), if we can recompute it from scratch, then we should be able to compute a correct hash for our new UserChoice key. @return true if we matched all the hashes, false otherwise. 4470 -