├── .gitmodules ├── app ├── config │ ├── version.txt │ └── version_display.txt ├── settings │ ├── dumps │ │ ├── last_modified.json │ │ ├── moz.build │ │ └── dot │ │ │ └── search-config.json │ └── moz.build ├── macbuild │ └── Contents │ │ ├── Resources │ │ └── English.lproj │ │ │ └── InfoPlist.strings.in │ │ ├── moz.build │ │ ├── MacOS-files.in │ │ └── MacOS-files-copy.in ├── permissions └── profile │ └── channel-prefs.js ├── docs ├── .gitignore ├── CNAME ├── src │ ├── favicon.png │ ├── contributing │ │ ├── images │ │ │ ├── about_debugging_host.png │ │ │ ├── about_debugging_sidebar.png │ │ │ ├── about_debugging_addressbar.png │ │ │ ├── about_debugging_toolbox_tab.jpg │ │ │ ├── about_debugging_browser_processes.png │ │ │ └── about_debugging_connected_browser.png │ │ ├── building_the_browser │ │ │ ├── README.md │ │ │ ├── macos.md │ │ │ └── windows.md │ │ ├── contributors_guide.md │ │ └── README.md │ ├── README.md │ └── SUMMARY.md ├── README.md └── book.toml ├── themes ├── shared │ ├── common-dialog.css │ ├── browser-layouts.css │ ├── global-shared.css │ ├── browser-dialog.css │ ├── xul │ │ └── menu.css │ └── icons │ │ ├── layout.svg │ │ ├── add.svg │ │ ├── media-pause.svg │ │ ├── window.svg │ │ ├── media-stop.svg │ │ ├── chevron-down.svg │ │ ├── chevron-left.svg │ │ ├── chevron-up.svg │ │ ├── chevron-right.svg │ │ ├── padlock.svg │ │ ├── block.svg │ │ ├── media-play.svg │ │ ├── more-horizontal.svg │ │ ├── check.svg │ │ ├── more-vertical.svg │ │ ├── arrow-down.svg │ │ ├── arrow-right.svg │ │ ├── arrow-up.svg │ │ ├── arrow-left.svg │ │ ├── page.svg │ │ ├── folder.svg │ │ ├── key.svg │ │ ├── briefcase.svg │ │ ├── clock.svg │ │ ├── rubbish-bin.svg │ │ ├── filter.svg │ │ ├── dock-left.svg │ │ ├── search.svg │ │ ├── dock-top.svg │ │ ├── collapse-right.svg │ │ ├── dock-bottom.svg │ │ ├── dock-right.svg │ │ ├── label.svg │ │ ├── beaker.svg │ │ └── radio-check.svg ├── addons │ ├── dark │ │ ├── experiment.css │ │ └── icon.svg │ ├── light │ │ ├── experiment.css │ │ └── icon.svg │ ├── moz.build │ ├── system │ │ ├── manifest.json │ │ └── icon.svg │ └── jar.mn ├── linux │ ├── global.css │ ├── moz.build │ └── jar.mn ├── osx │ ├── global.css │ ├── moz.build │ ├── jar.mn │ └── browser.css ├── windows │ ├── global.css │ ├── moz.build │ ├── jar.mn │ └── browser.css ├── BuiltInThemeConfig.sys.mjs └── ThemeIcons.sys.mjs ├── actors ├── DotClickHandlerParent.sys.mjs ├── DotClickHandlerChild.sys.mjs ├── moz.build ├── DotUAStylesChild.sys.mjs ├── DotDevToolsChild.sys.mjs └── DotLinkStatusParent.sys.mjs ├── components ├── compat │ ├── content │ │ └── blank.css │ ├── moz.build │ └── jar.mn ├── BrowserComponents.manifest ├── search │ ├── extensions │ │ ├── ddg │ │ │ ├── favicon.ico │ │ │ └── manifest.json │ │ └── startpage │ │ │ ├── favicon.ico │ │ │ └── manifest.json │ ├── moz.build │ └── content │ │ ├── browser-urlbar-container.css │ │ ├── browser-urlbar-results.css │ │ ├── browser-urlbar-input.css │ │ ├── browser-urlbar-button.js │ │ ├── browser-urlbar-button.css │ │ └── browser-urlbar-results.js ├── settings │ ├── content │ │ ├── settings.js │ │ └── settings.css │ ├── PreferencesManager.sys.mjs │ ├── moz.build │ └── jar.mn ├── shortcuts │ ├── BrowserShortcuts.sys.mjs │ └── moz.build ├── contextmenu │ ├── content │ │ ├── browser-context-menu.css │ │ ├── browser-contextual-menu.js │ │ └── browser-context-menu.js │ ├── moz.build │ └── jar.mn ├── customizableui │ ├── content │ │ ├── browser-customizable-template.css │ │ ├── browser-customizable-overflowable-area.css │ │ ├── browser-customizable-area-empty.css │ │ ├── browser-customizable-area.css │ │ └── browser-customizable-template.js │ ├── schemas │ │ ├── customizable_custom_component.schema.json │ │ └── customizable_state.schema.json │ └── moz.build ├── toolbar │ ├── content │ │ ├── browser-toolbar-overflow.css │ │ ├── browser-toolbar-overflow.js │ │ └── browser-toolbar-button.js │ ├── moz.build │ └── jar.mn ├── dev │ ├── moz.build │ └── content │ │ └── dev-customizable-area-context.css ├── menus │ ├── moz.build │ └── content │ │ ├── xul-menugroup.css │ │ ├── xul-menuseparator.css │ │ └── xul-menuitem.js ├── widgets │ ├── moz.build │ └── content │ │ ├── browser-spring.js │ │ ├── browser-spring.css │ │ ├── browser-separator.js │ │ ├── browser-group.js │ │ ├── browser-group.css │ │ ├── browser-icon.css │ │ └── browser-debug-hologram.css ├── onboarding │ ├── moz.build │ ├── content │ │ └── onboarding.css │ └── jar.mn ├── extensions │ ├── jar.mn │ └── moz.build ├── interstitials │ └── moz.build ├── startpage │ ├── content │ │ ├── startpage.css │ │ ├── startpage.js │ │ └── blank.html │ ├── moz.build │ └── jar.mn ├── identity │ ├── jar.mn │ └── moz.build ├── prompts │ ├── jar.mn │ ├── BrowserPrompts.sys.mjs │ ├── moz.build │ ├── BrowserWindowPrompts.sys.mjs │ └── BrowserChromePrompts.sys.mjs ├── startup │ └── moz.build ├── favicons │ └── moz.build ├── navigation │ └── moz.build ├── csd │ ├── moz.build │ └── jar.mn ├── devtools │ └── moz.build ├── storage │ ├── moz.build │ └── BrowserStorage.sys.mjs ├── actions │ ├── jar.mn │ ├── moz.build │ ├── Action.sys.mjs │ └── content │ │ └── browser │ │ └── tabs │ │ └── close_tab.js ├── DotComponents.manifest ├── tooltips │ ├── moz.build │ ├── content │ │ ├── browser-tooltip.css │ │ └── browser-remote-tooltip.js │ └── jar.mn ├── accessibility │ ├── moz.build │ ├── jar.mn │ └── content │ │ └── browser-a11y-ring.css ├── status │ ├── moz.build │ └── jar.mn ├── tabs │ ├── moz.build │ └── content │ │ ├── browser-tab-button.css │ │ ├── browser-tabs-overflow-button.css │ │ ├── browser-web-panel.js │ │ ├── browser-tab-label.css │ │ ├── browser-tab-button.js │ │ ├── browser-web-frame.js │ │ └── browser-web-container.js ├── commands │ ├── moz.build │ ├── content │ │ ├── internal │ │ │ ├── cut.js │ │ │ ├── select-all.js │ │ │ ├── copy.js │ │ │ └── paste.js │ │ ├── save-page-as.js │ │ └── inspect.js │ ├── jar.mn │ └── CommandAudiences.sys.mjs ├── about │ ├── moz.build │ ├── AboutRedirector.h │ └── components.conf └── nsIBrowserHandler.idl ├── third_party ├── dothq │ └── gecko-types │ │ ├── .gitignore │ │ ├── README.md │ │ ├── .prettierrc.json │ │ ├── .prettierignore │ │ ├── lib │ │ ├── nsIThread.d.ts │ │ ├── InspectorUtils.d.ts │ │ ├── nsIDragService.d.ts │ │ ├── services │ │ │ ├── logins.d.ts │ │ │ ├── appshell.d.ts │ │ │ ├── uuid.d.ts │ │ │ ├── wm.d.ts │ │ │ ├── scriptloader.d.ts │ │ │ ├── startup.d.ts │ │ │ ├── ppmm.d.ts │ │ │ ├── obs.d.ts │ │ │ ├── dirsvc.d.ts │ │ │ ├── textToSubURI.d.ts │ │ │ └── policies.d.ts │ │ ├── nsIBrowserHandler.d.ts │ │ ├── Marionette.d.ts │ │ ├── RemoteAgent.d.ts │ │ ├── EventEmitter.d.ts │ │ ├── WindowRoot.d.ts │ │ ├── nsJSID.d.ts │ │ ├── Cr.d.ts │ │ ├── nsIInterfaceRequestor.d.ts │ │ ├── MozHTMLElement.d.ts │ │ ├── MozXULElement.d.ts │ │ ├── nsIJSIID.d.ts │ │ ├── nsIArray.d.ts │ │ ├── nsIConsoleListener.d.ts │ │ ├── XULElement.d.ts │ │ ├── NetUtil.d.ts │ │ ├── nsIEnvironment.d.ts │ │ ├── BrowserTab.d.ts │ │ ├── SharedLibrary.d.ts │ │ ├── nsISecureBrowserUI.d.ts │ │ ├── Cc.d.ts │ │ ├── DevToolsSocketStatus.d.ts │ │ ├── JSActor.d.ts │ │ ├── nsIException.d.ts │ │ ├── nsIFilePicker.d.ts │ │ ├── MessageManager.d.ts │ │ ├── BrowserUIUtils.d.ts │ │ ├── ChromeWindow.d.ts │ │ ├── MozElements.d.ts │ │ ├── FluentLocalization.d.ts │ │ ├── nsIDirectoryEnumerator.d.ts │ │ └── ReceiveMessageArgument.d.ts │ │ └── package.json ├── moz.build └── jar.mn ├── REVISION ├── branding └── official │ ├── dot.ico │ ├── disk.icns │ ├── dot.icns │ ├── dot64.ico │ ├── newtab.ico │ ├── pbmode.ico │ ├── document.ico │ ├── background.png │ ├── default128.png │ ├── default16.png │ ├── default22.png │ ├── default24.png │ ├── default256.png │ ├── default32.png │ ├── default48.png │ ├── default64.png │ ├── document.icns │ ├── newwindow.ico │ ├── wizHeader.bmp │ ├── content │ ├── about.png │ └── aboutdebugging-logo.svg │ ├── wizHeaderRTL.bmp │ ├── wizWatermark.bmp │ ├── VisualElements_150.png │ ├── VisualElements_70.png │ ├── stubinstaller │ ├── bgstub.jpg │ └── profile_cleanup_page.css │ ├── LICENSE │ ├── configure.sh │ ├── locales │ ├── moz.build │ ├── jar.mn │ └── en-US │ │ └── brand.properties │ ├── moz.build │ ├── dot.VisualElementsManifest.xml │ └── branding.nsi ├── .prettierrc.json ├── l10n-registry.manifest ├── installer ├── removed-files.in └── windows │ └── nsis │ └── updater_append.ini ├── .prettierignore ├── .gitattributes ├── tests ├── css │ └── prefers-color-scheme │ │ └── index.css └── js │ └── window-open │ ├── popup.html │ └── index.html ├── locales ├── en-US │ ├── dot │ │ ├── settings.ftl │ │ ├── startpage.ftl │ │ ├── onboarding.ftl │ │ ├── search.ftl │ │ ├── tooltips.ftl │ │ ├── customizable.ftl │ │ └── errors │ │ │ └── neterror.ftl │ ├── dot-l10n.js │ ├── defines.inc │ ├── updater │ │ └── updater.ini │ └── browser │ │ └── appExtensionFields.ftl ├── l10n.ini ├── jar.mn └── moz.build ├── .editorconfig ├── base ├── content │ ├── browser-compat.inc.xhtml │ ├── global-theme.js │ ├── main-popupset.inc.xhtml │ └── browser-dialog.inc.xhtml ├── moz.build └── jar.mn ├── .mailmap ├── global.d.ts ├── modules ├── DotAppConstants.sys.mjs ├── README.md └── moz.build ├── config └── mozconfigs │ └── common ├── .vscode └── extensions.json ├── mach ├── package.json ├── confvars.sh ├── moz.build ├── scripts └── shared │ ├── cmd.py │ └── path.py ├── patches ├── 0003-Remove-profile-after-change-telemetry-observer.patch ├── removed │ ├── 0007-Add-mach_initialize.py-to-mach-script.patch │ └── !0004-Force-user-agent-name-to-be-Firefox.patch ├── README.md └── 0002-Enforce-has_build-mach-policy.patch └── tsconfig.json /.gitmodules: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/config/version.txt: -------------------------------------------------------------------------------- 1 | 0.1.0 -------------------------------------------------------------------------------- /docs/.gitignore: -------------------------------------------------------------------------------- 1 | book 2 | -------------------------------------------------------------------------------- /docs/CNAME: -------------------------------------------------------------------------------- 1 | browser-docs.dothq.org -------------------------------------------------------------------------------- /themes/shared/common-dialog.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /actors/DotClickHandlerParent.sys.mjs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/config/version_display.txt: -------------------------------------------------------------------------------- 1 | 0.1.0 -------------------------------------------------------------------------------- /components/compat/content/blank.css: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .log -------------------------------------------------------------------------------- /app/settings/dumps/last_modified.json: -------------------------------------------------------------------------------- 1 | { 2 | "dot/search_config": 0 3 | } -------------------------------------------------------------------------------- /docs/src/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/docs/src/favicon.png -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/README.md: -------------------------------------------------------------------------------- 1 | # gecko-types 2 | TypeScript definitions for Mozilla APIs -------------------------------------------------------------------------------- /REVISION: -------------------------------------------------------------------------------- 1 | https://github.com/dothq/gecko-dev.git e5a393dd62b6571ae50115cdae227ef84b4a17fc release 2 | -------------------------------------------------------------------------------- /branding/official/dot.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/dot.ico -------------------------------------------------------------------------------- /branding/official/disk.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/disk.icns -------------------------------------------------------------------------------- /branding/official/dot.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/dot.icns -------------------------------------------------------------------------------- /branding/official/dot64.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/dot64.ico -------------------------------------------------------------------------------- /branding/official/newtab.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/newtab.ico -------------------------------------------------------------------------------- /branding/official/pbmode.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/pbmode.ico -------------------------------------------------------------------------------- /components/BrowserComponents.manifest: -------------------------------------------------------------------------------- 1 | # This file is used to mock the browser's BrowserComponents.manifest file -------------------------------------------------------------------------------- /branding/official/document.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/document.ico -------------------------------------------------------------------------------- /branding/official/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/background.png -------------------------------------------------------------------------------- /branding/official/default128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/default128.png -------------------------------------------------------------------------------- /branding/official/default16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/default16.png -------------------------------------------------------------------------------- /branding/official/default22.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/default22.png -------------------------------------------------------------------------------- /branding/official/default24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/default24.png -------------------------------------------------------------------------------- /branding/official/default256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/default256.png -------------------------------------------------------------------------------- /branding/official/default32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/default32.png -------------------------------------------------------------------------------- /branding/official/default48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/default48.png -------------------------------------------------------------------------------- /branding/official/default64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/default64.png -------------------------------------------------------------------------------- /branding/official/document.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/document.icns -------------------------------------------------------------------------------- /branding/official/newwindow.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/newwindow.ico -------------------------------------------------------------------------------- /branding/official/wizHeader.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/wizHeader.bmp -------------------------------------------------------------------------------- /branding/official/content/about.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/content/about.png -------------------------------------------------------------------------------- /branding/official/wizHeaderRTL.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/wizHeaderRTL.bmp -------------------------------------------------------------------------------- /branding/official/wizWatermark.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/wizWatermark.bmp -------------------------------------------------------------------------------- /branding/official/VisualElements_150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/VisualElements_150.png -------------------------------------------------------------------------------- /branding/official/VisualElements_70.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/VisualElements_70.png -------------------------------------------------------------------------------- /branding/official/stubinstaller/bgstub.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/branding/official/stubinstaller/bgstub.jpg -------------------------------------------------------------------------------- /components/search/extensions/ddg/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/components/search/extensions/ddg/favicon.ico -------------------------------------------------------------------------------- /components/search/extensions/startpage/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/components/search/extensions/startpage/favicon.ico -------------------------------------------------------------------------------- /.prettierrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "useTabs": true, 3 | "singleQuote": false, 4 | "trailingComma": "none", 5 | "printWidth": 80, 6 | "tabWidth": 4 7 | } -------------------------------------------------------------------------------- /docs/src/contributing/images/about_debugging_host.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/docs/src/contributing/images/about_debugging_host.png -------------------------------------------------------------------------------- /docs/src/contributing/images/about_debugging_sidebar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/docs/src/contributing/images/about_debugging_sidebar.png -------------------------------------------------------------------------------- /docs/src/contributing/images/about_debugging_addressbar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/docs/src/contributing/images/about_debugging_addressbar.png -------------------------------------------------------------------------------- /docs/src/contributing/images/about_debugging_toolbox_tab.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/docs/src/contributing/images/about_debugging_toolbox_tab.jpg -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/.prettierrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "useTabs": true, 3 | "singleQuote": false, 4 | "trailingComma": "none", 5 | "printWidth": 70, 6 | "tabWidth": 4 7 | } 8 | -------------------------------------------------------------------------------- /docs/src/contributing/images/about_debugging_browser_processes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/docs/src/contributing/images/about_debugging_browser_processes.png -------------------------------------------------------------------------------- /docs/src/contributing/images/about_debugging_connected_browser.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dothq/browser-desktop/HEAD/docs/src/contributing/images/about_debugging_connected_browser.png -------------------------------------------------------------------------------- /l10n-registry.manifest: -------------------------------------------------------------------------------- 1 | category l10n-registry 5-dot resource://app/localization/{locale}/ backgroundtask=0 2 | category l10n-registry 5-dot resource://app/localization/{locale}/ backgroundtask=1 3 | -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/.prettierignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | .env 4 | .env.* 5 | !.env.example 6 | 7 | # Ignore files for PNPM, NPM and YARN 8 | pnpm-lock.yaml 9 | package-lock.json 10 | yarn.lock 11 | -------------------------------------------------------------------------------- /branding/official/LICENSE: -------------------------------------------------------------------------------- 1 | This Source Code Form is subject to the terms of the Mozilla Public 2 | License, v. 2.0. If a copy of the MPL was not distributed with this 3 | file, You can obtain one at https://mozilla.org/MPL/2.0/. 4 | -------------------------------------------------------------------------------- /docs/README.md: -------------------------------------------------------------------------------- 1 | # Dot Browser Developer Documentation 2 | 3 | ## Prerequisites 4 | 5 | You will need to install `mdbook` on Cargo to get started. 6 | 7 | ## Development 8 | 9 | * Starting the dev server: ```mdbook serve docs``` -------------------------------------------------------------------------------- /installer/removed-files.in: -------------------------------------------------------------------------------- 1 | # This Source Code Form is subject to the terms of the Mozilla Public 2 | # License, v. 2.0. If a copy of the MPL was not distributed with this 3 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 4 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | .env 4 | .env.* 5 | !.env.example 6 | /.next 7 | 8 | # Ignore files for PNPM, NPM and YARN 9 | pnpm-lock.yaml 10 | package-lock.json 11 | yarn.lock 12 | 13 | base/content/browser.xhtml -------------------------------------------------------------------------------- /themes/addons/dark/experiment.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -------------------------------------------------------------------------------- /themes/addons/light/experiment.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | *.jsm linguist-language=JavaScript 2 | *.configure linguist-language=Python 3 | *.build linguist-language=Python 4 | *.mn linguist-language=Properties 5 | *.mozbuild linguist-language=Python 6 | *components.conf* linguist-language=Python -------------------------------------------------------------------------------- /components/settings/content/settings.js: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | -------------------------------------------------------------------------------- /docs/src/contributing/building_the_browser/README.md: -------------------------------------------------------------------------------- 1 | # Building Dot Browser 2 | 3 | This document outlines how to build Dot Browser. 4 | 5 | ## Build targets 6 | 7 | * [Windows](windows.md) 8 | * [Linux](linux.md) 9 | * [macOS](macos.md) 10 | -------------------------------------------------------------------------------- /tests/css/prefers-color-scheme/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | background-color: white; 3 | color: black; 4 | } 5 | 6 | @media (prefers-color-scheme: dark) { 7 | body { 8 | background-color: black; 9 | color: white; 10 | } 11 | } -------------------------------------------------------------------------------- /docs/src/contributing/building_the_browser/macos.md: -------------------------------------------------------------------------------- 1 | # Building Dot Browser on macOS 2 | 3 | This document will guide you in setting up a development environment to build and hack on Dot Browser using macOS. 4 | 5 | ***Note*** This section is a work in progress. 6 | -------------------------------------------------------------------------------- /docs/src/contributing/contributors_guide.md: -------------------------------------------------------------------------------- 1 | # Contributors Guide 2 | 3 | This document assumes you have setup your repositories and have built the browser in [Building Dot Browser](building_the_browser/README.md). 4 | 5 | ***Note*** This section is a work in progress. -------------------------------------------------------------------------------- /locales/en-US/dot/settings.ftl: -------------------------------------------------------------------------------- 1 | # This Source Code Form is subject to the terms of the Mozilla Public 2 | # License, v. 2.0. If a copy of the MPL was not distributed with this 3 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 4 | 5 | settings-page-title = Settings -------------------------------------------------------------------------------- /locales/en-US/dot/startpage.ftl: -------------------------------------------------------------------------------- 1 | # This Source Code Form is subject to the terms of the Mozilla Public 2 | # License, v. 2.0. If a copy of the MPL was not distributed with this 3 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 4 | 5 | startpage-page-title = New Tab -------------------------------------------------------------------------------- /docs/src/README.md: -------------------------------------------------------------------------------- 1 | # Dot Browser Source Documentation 2 | 3 | ## Contributing to Dot Browser 4 | 5 | To get started with setting up, building and contributing: refer to the [Building Dot Browser](contributing/building_the_browser) page and traverse through subsequent documents. -------------------------------------------------------------------------------- /docs/src/contributing/README.md: -------------------------------------------------------------------------------- 1 | # Contributing to Dot Browser 2 | 3 | This guide provides an introduction to contributing to the Dot Browser codebase. 4 | 5 | * [Building Dot Browser](building_the_browser/README.md) 6 | * [Configuring Build Options](configuring_build_options.md) -------------------------------------------------------------------------------- /docs/src/contributing/building_the_browser/windows.md: -------------------------------------------------------------------------------- 1 | # Building Dot Browser on Windows 2 | 3 | This document will guide you in setting up a development environment to build and hack on Dot Browser using your Windows machine. 4 | 5 | ***Note*** This section is a work in progress. 6 | -------------------------------------------------------------------------------- /themes/shared/browser-layouts.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | [flex] { 6 | flex: 1; 7 | } -------------------------------------------------------------------------------- /themes/linux/global.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | @import url("chrome://dot/skin/global-shared.css"); -------------------------------------------------------------------------------- /themes/osx/global.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | @import url("chrome://dot/skin/global-shared.css"); -------------------------------------------------------------------------------- /themes/shared/global-shared.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | @import url("chrome://dot/skin/input.css"); -------------------------------------------------------------------------------- /themes/windows/global.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | @import url("chrome://dot/skin/global-shared.css"); -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # EditorConfig is awesome: https://EditorConfig.org 2 | 3 | # top-most EditorConfig file 4 | root = true 5 | 6 | [*] 7 | indent_style = space 8 | indent_size = 4 9 | end_of_line = lf 10 | charset = utf-8 11 | trim_trailing_whitespace = false 12 | insert_final_newline = false -------------------------------------------------------------------------------- /locales/en-US/dot/onboarding.ftl: -------------------------------------------------------------------------------- 1 | # This Source Code Form is subject to the terms of the Mozilla Public 2 | # License, v. 2.0. If a copy of the MPL was not distributed with this 3 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 4 | 5 | onboarding-page-title = Welcome to { -brand-full-name } -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/nsIThread.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface nsIThread {} -------------------------------------------------------------------------------- /components/shortcuts/BrowserShortcuts.sys.mjs: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export class BrowserShortcuts {} 6 | -------------------------------------------------------------------------------- /components/settings/PreferencesManager.sys.mjs: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export const PreferencesManager = {}; 6 | -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/InspectorUtils.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export type InspectorUtils = any; 6 | -------------------------------------------------------------------------------- /locales/en-US/dot-l10n.js: -------------------------------------------------------------------------------- 1 | # This Source Code Form is subject to the terms of the Mozilla Public 2 | # License, v. 2.0. If a copy of the MPL was not distributed with this 3 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 4 | 5 | #filter substitution 6 | 7 | pref("spellchecker.dictionary", "@AB_CD@"); -------------------------------------------------------------------------------- /tests/js/window-open/popup.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | window.open popup 7 | 8 | 9 |

Popup Window

10 | 11 | -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/nsIDragService.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface nsIDragService {} 6 | -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/services/logins.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface ServicesLogins {} 6 | -------------------------------------------------------------------------------- /base/content/browser-compat.inc.xhtml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/nsIBrowserHandler.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface nsIBrowserHandler {} 6 | -------------------------------------------------------------------------------- /actors/DotClickHandlerChild.sys.mjs: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export class DotClickHandlerChild extends JSWindowActorChild {} 6 | -------------------------------------------------------------------------------- /app/macbuild/Contents/Resources/English.lproj/InfoPlist.strings.in: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | CFBundleName = "@MAC_APP_NAME@"; 6 | -------------------------------------------------------------------------------- /components/contextmenu/content/browser-context-menu.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | browser-context-menu { 6 | --menu-min-width: 250px; 7 | } -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/Marionette.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface Marionette { 6 | running: boolean; 7 | } 8 | -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/RemoteAgent.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface RemoteAgent { 6 | running: boolean; 7 | } 8 | -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/EventEmitter.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this file, 3 | * You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export const EventEmitter: { 6 | decorate: (target: object) => void; 7 | }; -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/WindowRoot.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface WindowRoot extends EventTarget { 6 | ownerGlobal: Window; 7 | } 8 | -------------------------------------------------------------------------------- /components/customizableui/content/browser-customizable-template.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | browser-customizable-template { 6 | display: none !important; 7 | } -------------------------------------------------------------------------------- /components/toolbar/content/browser-toolbar-overflow.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | button[is=browser-toolbar-overflow] { 6 | margin-inline-end: var(--padding); 7 | } -------------------------------------------------------------------------------- /themes/osx/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | JAR_MANIFESTS += ["jar.mn"] -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/nsJSID.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface nsJSID { 6 | number: string; 7 | equals(value: any): boolean; 8 | } -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/services/appshell.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface ServicesAppShell { 6 | hiddenDOMWindow: ChromeWindow; 7 | } 8 | -------------------------------------------------------------------------------- /third_party/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | JAR_MANIFESTS += ["jar.mn"] -------------------------------------------------------------------------------- /components/dev/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | JAR_MANIFESTS += ["jar.mn"] -------------------------------------------------------------------------------- /components/menus/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | JAR_MANIFESTS += ["jar.mn"] -------------------------------------------------------------------------------- /components/toolbar/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | JAR_MANIFESTS += ["jar.mn"] -------------------------------------------------------------------------------- /components/widgets/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | JAR_MANIFESTS += ["jar.mn"] -------------------------------------------------------------------------------- /themes/addons/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | JAR_MANIFESTS += ["jar.mn"] 8 | -------------------------------------------------------------------------------- /themes/linux/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | JAR_MANIFESTS += ["jar.mn"] 8 | -------------------------------------------------------------------------------- /themes/windows/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | JAR_MANIFESTS += ["jar.mn"] -------------------------------------------------------------------------------- /.mailmap: -------------------------------------------------------------------------------- 1 | # This file provides the canonical name and email of contributors 2 | # when their name is not always written in the same way or they 3 | # author commits under different email addresses. 4 | 5 | # See more: https://git-scm.com/docs/gitmailmap 6 | 7 | Ejaz Ali 8 | Kieran Drewett 9 | Kieran Drewett -------------------------------------------------------------------------------- /components/contextmenu/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | JAR_MANIFESTS += ["jar.mn"] -------------------------------------------------------------------------------- /components/onboarding/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | JAR_MANIFESTS += ["jar.mn"] -------------------------------------------------------------------------------- /app/settings/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | DIRS += ["dumps"] 8 | -------------------------------------------------------------------------------- /components/extensions/jar.mn: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | dot.jar: 8 | % content dot %content/ -------------------------------------------------------------------------------- /components/interstitials/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | JAR_MANIFESTS += ["jar.mn"] 8 | -------------------------------------------------------------------------------- /components/widgets/content/browser-spring.js: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | class BrowserSpring extends MozHTMLElement {} 6 | 7 | customElements.define("browser-spring", BrowserSpring); 8 | -------------------------------------------------------------------------------- /components/menus/content/xul-menugroup.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | menugroup { 6 | display: flex; 7 | gap: 2px; 8 | } 9 | 10 | menugroup>menuitem { 11 | flex: 1; 12 | } -------------------------------------------------------------------------------- /components/settings/content/settings.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | html, 6 | body { 7 | margin: 0; 8 | padding: 0; 9 | box-sizing: border-box; 10 | font: message-box; 11 | } -------------------------------------------------------------------------------- /themes/osx/jar.mn: -------------------------------------------------------------------------------- 1 | # This Source Code Form is subject to the terms of the Mozilla Public 2 | # License, v. 2.0. If a copy of the MPL was not distributed with this 3 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 4 | 5 | dot.jar: 6 | % skin dot classic/1.0 %skin/classic/dot/ 7 | #include ../shared/jar.inc.mn 8 | skin/classic/dot/browser.css 9 | skin/classic/dot/global.css -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/Cr.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | type ResultsKey = `NS_${Uppercase}`; 6 | 7 | export interface Cr { 8 | [key: ResultsKey]: number; 9 | } 10 | -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/nsIInterfaceRequestor.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this file, 3 | * You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface nsIInterfaceRequestor { 6 | getInterface(uuid: object, result: any): void; 7 | } 8 | 9 | -------------------------------------------------------------------------------- /components/onboarding/content/onboarding.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | html, 6 | body { 7 | margin: 0; 8 | padding: 0; 9 | box-sizing: border-box; 10 | font: message-box; 11 | } -------------------------------------------------------------------------------- /components/startpage/content/startpage.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | html, 6 | body { 7 | margin: 0; 8 | padding: 0; 9 | box-sizing: border-box; 10 | font: message-box; 11 | } -------------------------------------------------------------------------------- /themes/windows/jar.mn: -------------------------------------------------------------------------------- 1 | # This Source Code Form is subject to the terms of the Mozilla Public 2 | # License, v. 2.0. If a copy of the MPL was not distributed with this 3 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 4 | 5 | dot.jar: 6 | % skin dot classic/1.0 %skin/classic/dot/ 7 | #include ../shared/jar.inc.mn 8 | skin/classic/dot/browser.css 9 | skin/classic/dot/global.css -------------------------------------------------------------------------------- /components/identity/jar.mn: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | dot.jar: 8 | % content dot %content/ contentaccessible=yes 9 | -------------------------------------------------------------------------------- /components/prompts/jar.mn: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | dot.jar: 8 | % content dot %content/ contentaccessible=yes 9 | -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/services/uuid.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | import { nsIJSIID } from "../nsIJSIID"; 6 | 7 | export interface ServicesUUID { 8 | generateUUID(): nsIJSIID; 9 | } -------------------------------------------------------------------------------- /components/startup/moz.build: -------------------------------------------------------------------------------- 1 | # vim: set filetype=python: 2 | # This Source Code Form is subject to the terms of the Mozilla Public 3 | # License, v. 2.0. If a copy of the MPL was not distributed with this 4 | # file, you can obtain one at http://mozilla.org/MPL/2.0/. 5 | 6 | FINAL_TARGET_FILES.actors += [ 7 | "BrowserStartupChild.sys.mjs", 8 | "BrowserStartupParent.sys.mjs", 9 | ] 10 | -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/MozHTMLElement.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | import { MozElementMixin } from "./MozElementMixin"; 6 | 7 | export interface MozHTMLElement extends HTMLElement, MozElementMixin {} -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/MozXULElement.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | import { MozElementMixin } from "./MozElementMixin"; 6 | 7 | export interface MozXULElement extends XULElement, MozElementMixin {} -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/nsIJSIID.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | import { nsJSID } from "./nsJSID"; 6 | 7 | export interface nsIJSIID extends nsJSID { 8 | name: N; 9 | } 10 | -------------------------------------------------------------------------------- /components/customizableui/content/browser-customizable-overflowable-area.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | :host(.customizable-area[overflowable])>.customizable-container [overflowing] { 6 | display: none !important; 7 | } -------------------------------------------------------------------------------- /components/favicons/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | EXTRA_JS_MODULES += [ 8 | "FaviconsDatastore.sys.mjs", 9 | ] 10 | -------------------------------------------------------------------------------- /components/navigation/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | EXTRA_JS_MODULES += [ 8 | "NavigationHelper.sys.mjs", 9 | ] 10 | -------------------------------------------------------------------------------- /components/shortcuts/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | EXTRA_JS_MODULES += [ 8 | "BrowserShortcuts.sys.mjs", 9 | ] 10 | -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/nsIArray.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | import { nsIJSIID } from "./nsIJSIID"; 6 | 7 | export interface nsIArray 8 | extends nsIJSIID<"nsIArray">, 9 | Omit {} 10 | -------------------------------------------------------------------------------- /branding/official/configure.sh: -------------------------------------------------------------------------------- 1 | # This Source Code Form is subject to the terms of the Mozilla Public 2 | # License, v. 2.0. If a copy of the MPL was not distributed with this 3 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 4 | 5 | MOZ_APP_VENDOR="Dot HQ" 6 | MOZ_APP_BASENAME=Dot 7 | MOZ_APP_PROFILE=dot 8 | MOZ_APP_DISPLAYNAME="Dot Browser" 9 | MOZ_MACBUNDLE_ID=browser 10 | MOZ_DISTRIBUTION_ID=org.dothq -------------------------------------------------------------------------------- /global.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | declare const gBrowserInit: any; 6 | declare const dump: (message: string) => void; 7 | declare const require: (moduleURI: string) => T; 8 | 9 | declare module "resource://*"; 10 | -------------------------------------------------------------------------------- /locales/l10n.ini: -------------------------------------------------------------------------------- 1 | # This Source Code Form is subject to the terms of the Mozilla Public 2 | # License, v. 2.0. If a copy of the MPL was not distributed with this 3 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 4 | 5 | [general] 6 | depth = ../.. 7 | all = dot/locales/all-locales 8 | 9 | [compare] 10 | dirs = dot 11 | dot/branding/official 12 | 13 | [extras] 14 | dirs = extensions/spellcheck 15 | -------------------------------------------------------------------------------- /themes/linux/jar.mn: -------------------------------------------------------------------------------- 1 | # This Source Code Form is subject to the terms of the Mozilla Public 2 | # License, v. 2.0. If a copy of the MPL was not distributed with this 3 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 4 | 5 | dot.jar: 6 | % skin dot classic/1.0 %skin/classic/dot/ 7 | #include ../shared/jar.inc.mn 8 | skin/classic/dot/browser.css 9 | skin/classic/dot/global.css 10 | skin/classic/dot/gtk.css -------------------------------------------------------------------------------- /components/extensions/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | DIRS += ["/browser/components/extensions"] 8 | 9 | JAR_MANIFESTS += ["jar.mn"] 10 | -------------------------------------------------------------------------------- /locales/en-US/dot/search.ftl: -------------------------------------------------------------------------------- 1 | # This Source Code Form is subject to the terms of the Mozilla Public 2 | # License, v. 2.0. If a copy of the MPL was not distributed with this 3 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 4 | 5 | addressbar-input-field = 6 | .placeholder = Search the web or enter address 7 | 8 | addressbar-input-field-with-engine = 9 | .placeholder = Search with { $engine } or enter address -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/services/wm.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this file, 3 | * You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface ServicesWm { 6 | getMostRecentWindow: (name: string) => ChromeWindow; 7 | getMostRecentNonPBWindow: (name: string) => ChromeWindow; 8 | } -------------------------------------------------------------------------------- /themes/osx/browser.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | @import url("chrome://dot/skin/browser-shared.css"); 6 | 7 | @namespace html url("http://www.w3.org/1999/xhtml"); 8 | 9 | :root { 10 | --chrome-content-separator-color: #e1e1e2; 11 | } -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/nsIConsoleListener.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | import { nsIConsoleMessage } from "./nsIConsoleMessage"; 6 | 7 | export interface nsIConsoleListener { 8 | observe(message: nsIConsoleMessage): void; 9 | } -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/services/scriptloader.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this file, 3 | * You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface ServicesScriptloader { 6 | loadSubScript(url: string, options?: any); 7 | loadSubScriptWithOptions(url: string, options: any); 8 | } -------------------------------------------------------------------------------- /components/csd/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | JAR_MANIFESTS += ["jar.mn"] 8 | 9 | EXTRA_JS_MODULES += [ 10 | "NativeTitlebar.sys.mjs", 11 | ] -------------------------------------------------------------------------------- /components/devtools/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | JAR_MANIFESTS += ["jar.mn"] 8 | 9 | EXTRA_JS_MODULES += [ 10 | "TabDevTools.sys.mjs" 11 | ] -------------------------------------------------------------------------------- /components/storage/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | EXTRA_JS_MODULES += [ 8 | "BrowserStorage.sys.mjs", 9 | "Datastore.sys.mjs", 10 | ] 11 | -------------------------------------------------------------------------------- /locales/en-US/dot/tooltips.ftl: -------------------------------------------------------------------------------- 1 | # This Source Code Form is subject to the terms of the Mozilla Public 2 | # License, v. 2.0. If a copy of the MPL was not distributed with this 3 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 4 | 5 | tooltip-label = { $label } 6 | 7 | tooltip-shortcut-label = 8 | { PLATFORM() -> 9 | [macos] { $label } { $shortcut } 10 | *[other] { $label } ({ $shortcut }) 11 | } -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/XULElement.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface XULElement extends HTMLElement { 6 | new (): XULElement; 7 | prototype: XULElement; 8 | 9 | isInstance: (el: XULElement) => boolean; 10 | } 11 | -------------------------------------------------------------------------------- /components/actions/jar.mn: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | dot.jar: 8 | % content dot %content/ contentaccessible=yes 9 | content/actions/ (content/*) -------------------------------------------------------------------------------- /components/customizableui/content/browser-customizable-area-empty.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | browser-customizable-area-empty { 6 | display: flex; 7 | 8 | width: 100%; 9 | height: 100%; 10 | 11 | justify-content: center; 12 | } -------------------------------------------------------------------------------- /components/startpage/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | EXTRA_JS_MODULES += [ 8 | "StartPage.sys.mjs", 9 | ] 10 | 11 | JAR_MANIFESTS += ["jar.mn"] 12 | -------------------------------------------------------------------------------- /modules/DotAppConstants.sys.mjs: -------------------------------------------------------------------------------- 1 | #filter substitution 2 | 3 | /* This Source Code Form is subject to the terms of the Mozilla Public 4 | * License, v. 2.0. If a copy of the MPL was not distributed with this 5 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 6 | 7 | export const DotAppConstants = Object.freeze({ 8 | DOT_APP_VERSION: "@DOT_APP_VERSION@", 9 | DOT_APP_VERSION_DISPLAY: "@DOT_APP_VERSION_DISPLAY@" 10 | }) -------------------------------------------------------------------------------- /themes/windows/browser.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | @import url("chrome://dot/skin/browser-shared.css"); 6 | 7 | @namespace html url("http://www.w3.org/1999/xhtml"); 8 | 9 | :root { 10 | --chrome-content-separator-color: ThreeDShadow; 11 | } -------------------------------------------------------------------------------- /branding/official/locales/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | DEFINES['MOZ_DISTRIBUTION_ID_UNQUOTED'] = CONFIG['MOZ_DISTRIBUTION_ID'] 8 | 9 | JAR_MANIFESTS += ['jar.mn'] -------------------------------------------------------------------------------- /components/DotComponents.manifest: -------------------------------------------------------------------------------- 1 | # DotGlue.sys.mjs 2 | 3 | # This component must restrict its registration for the app-startup category 4 | # to the specific list of apps that use it so it doesn't get loaded in xpcshell. 5 | # Thus we restrict it to these apps: 6 | # 7 | # dot: {818c990f-687c-498c-bc9a-a99d9729702a} 8 | 9 | category app-startup nsDotGlue @dothq.org/dot/dotglue;1 application={818c990f-687c-498c-bc9a-a99d9729702a} 10 | -------------------------------------------------------------------------------- /components/compat/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | JAR_MANIFESTS += ["jar.mn"] 8 | 9 | EXTRA_JS_MODULES += [ 10 | "BrowserCompatibility.sys.mjs" 11 | ] -------------------------------------------------------------------------------- /components/contextmenu/content/browser-contextual-menu.js: -------------------------------------------------------------------------------- 1 | // /* This Source Code Form is subject to the terms of the Mozilla Public 2 | // * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | // * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | class BrowserContextualMenu extends BrowserCustomizableArea { 6 | 7 | } 8 | 9 | customElements.define("browser-contextual-menu", BrowserContextualMenu); 10 | -------------------------------------------------------------------------------- /components/identity/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | EXTRA_JS_MODULES += [ 8 | "TabIdentityHandler.sys.mjs", 9 | ] 10 | 11 | JAR_MANIFESTS += ["jar.mn"] -------------------------------------------------------------------------------- /components/search/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | EXTRA_JS_MODULES += [ 8 | "BrowserSearch.sys.mjs", 9 | ] 10 | 11 | JAR_MANIFESTS += ["jar.mn"] 12 | -------------------------------------------------------------------------------- /components/tooltips/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | EXTRA_JS_MODULES += [ 8 | "TooltipLabelProvider.sys.mjs" 9 | ] 10 | 11 | JAR_MANIFESTS += ["jar.mn"] -------------------------------------------------------------------------------- /themes/shared/browser-dialog.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | #window-modal-dialog { 6 | border: none; 7 | padding: 0; 8 | border-radius: 8px; 9 | box-shadow: rgba(0, 0, 0, 0.07) 0px 0px 10px 2px, rgba(0, 0, 0, 0.05) 0px 2px 12px 6px; 10 | } -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/services/startup.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this file, 3 | * You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface ServicesStartup { 6 | quit: (optionsBitmask: number) => void; 7 | eForceQuit: number; 8 | eRestart: number; 9 | shuttingDown: boolean; 10 | } 11 | -------------------------------------------------------------------------------- /app/settings/dumps/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | DIRS += ["dot"] 8 | 9 | FINAL_TARGET_FILES.defaults.settings += ["last_modified.json"] 10 | -------------------------------------------------------------------------------- /components/accessibility/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | JAR_MANIFESTS += ["jar.mn"] 8 | 9 | EXTRA_JS_MODULES += [ 10 | "BrowserAccessibility.sys.mjs", 11 | ] -------------------------------------------------------------------------------- /components/settings/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | EXTRA_JS_MODULES += [ 8 | "PreferencesManager.sys.mjs", 9 | ] 10 | 11 | JAR_MANIFESTS += ["jar.mn"] 12 | -------------------------------------------------------------------------------- /branding/official/content/aboutdebugging-logo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /components/prompts/BrowserPrompts.sys.mjs: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export class BrowserPrompts { 6 | /** @type {Window} */ 7 | #win = null; 8 | 9 | /** 10 | * @param {Window} win 11 | */ 12 | constructor(win) { 13 | this.#win = win; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/services/ppmm.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this file, 3 | * You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface ServicesPPMMSharedData extends Map { 6 | flush(): void; 7 | } 8 | 9 | export interface ServicesPPMM { 10 | sharedData: ServicesPPMMSharedData; 11 | } 12 | -------------------------------------------------------------------------------- /third_party/jar.mn: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | dot.jar: 8 | % resource third-party %res/third-party/ contentaccessible=yes 9 | res/third-party/libs/anime.js (./juliangarnier/anime.js) -------------------------------------------------------------------------------- /components/compat/jar.mn: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | dot.jar: 8 | % content dot %content/ contentaccessible=yes 9 | content/compat/blank.css (content/blank.css) -------------------------------------------------------------------------------- /components/widgets/content/browser-spring.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | browser-spring { 6 | flex: 80 80; 7 | min-width: 1px; 8 | max-width: var(--spring-grip); 9 | justify-content: center; 10 | align-items: center; 11 | user-select: none; 12 | } -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "gecko-types", 3 | "version": "0.0.1", 4 | "description": "TypeScript definitions for Gecko APIs", 5 | "homepage": "https://github.com/dothq/gecko-types", 6 | "license": "MPL-2.0", 7 | "main": "", 8 | "types": "index.d.ts", 9 | "repository": "https://github.com/dothq/gecko-types", 10 | "scripts": {}, 11 | "dependencies": {}, 12 | "devDependencies": {} 13 | } 14 | -------------------------------------------------------------------------------- /branding/official/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | DIRS += ["locales"] 8 | 9 | JAR_MANIFESTS += ["jar.mn"] 10 | 11 | include("../branding-common.mozbuild") 12 | DotBranding() 13 | -------------------------------------------------------------------------------- /components/search/content/browser-urlbar-container.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | @import url("chrome://dot/content/widgets/browser-urlbar.css"); 6 | 7 | :host(browser-urlbar-container) { 8 | display: flex; 9 | flex: 1; 10 | max-height: var(--urlbar-height); 11 | } -------------------------------------------------------------------------------- /config/mozconfigs/common: -------------------------------------------------------------------------------- 1 | # This Source Code Form is subject to the terms of the Mozilla Public 2 | # License, v. 2.0. If a copy of the MPL was not distributed with this 3 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 4 | 5 | # This file is included by the Dot Browser mozconfig 6 | 7 | # Set build target to Dot Browser 8 | ac_add_options --enable-application=dot 9 | 10 | # Enable bootstrapping of mozbuild components 11 | ac_add_options --enable-bootstrap -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/NetUtil.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | import { nsIChannel } from "."; 6 | 7 | export interface NetUtil { 8 | newURI(target: any, originCharset?: string, baseURI?: nsIURI): nsIURI; 9 | newChannel(whatToLoad: object): nsIChannel; 10 | } -------------------------------------------------------------------------------- /modules/README.md: -------------------------------------------------------------------------------- 1 | # Modules 2 | 3 | Modules that have been written by *us* will typically have "Dot" prepended to the module name and export. 4 | 5 | This is because we don't want to cause disruption and disparity with existing modules, especially since some `toolkit` code relies on a error from a `importESModule` to determine if the module can be used. If we were to re-use the same module name as a `browser` module, our APIs wouldn't line up with what is expected, causing problems. -------------------------------------------------------------------------------- /base/content/global-theme.js: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | // Scoped 6 | (() => { 7 | const { LightweightThemeConsumer } = ChromeUtils.importESModule( 8 | "resource://gre/modules/LightweightThemeConsumer.sys.mjs" 9 | ); 10 | 11 | new LightweightThemeConsumer(document); 12 | })(); 13 | -------------------------------------------------------------------------------- /components/customizableui/schemas/customizable_custom_component.schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://json-schema.org/draft/2020-12/schema", 3 | "$id": "chrome://dot/content/customizableui/schemas/customizable_custom_component.schema.json", 4 | "title": "Customizable Custom Component", 5 | "type": "object", 6 | "properties": { 7 | "name": { 8 | "type": "string" 9 | } 10 | }, 11 | "required": [ 12 | "name" 13 | ] 14 | } -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/nsIEnvironment.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this file, 3 | * You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export class nsIEnvironment { } 6 | 7 | export interface Environment { 8 | exists(envName: string): boolean; 9 | get(envName: string): string; 10 | set(envName: string, value: string): void; 11 | } -------------------------------------------------------------------------------- /base/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | DEFINES["DOT_APP_VERSION"] = CONFIG["DOT_APP_VERSION"] 8 | DEFINES["DOT_APP_VERSION_DISPLAY"] = CONFIG["DOT_APP_VERSION_DISPLAY"] 9 | 10 | JAR_MANIFESTS += ["jar.mn"] -------------------------------------------------------------------------------- /app/permissions: -------------------------------------------------------------------------------- 1 | # This file has default permissions for the permission manager. 2 | # The file-format is strict: 3 | # * matchtype \t type \t permission \t host 4 | # * "origin" should be used for matchtype, "host" is supported for legacy reasons 5 | # * type is a string that identifies the type of permission (e.g. "cookie") 6 | # * permission is an integer between 1 and 15 7 | # See nsPermissionManager.cpp for more... 8 | 9 | # XPInstall 10 | origin install 1 https://addons.mozilla.org 11 | -------------------------------------------------------------------------------- /base/content/main-popupset.inc.xhtml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /components/tooltips/content/browser-tooltip.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | tooltip.browser-tooltip { 6 | opacity: 0; 7 | 8 | &[animate="true"] { 9 | transition: 0.15s opacity cubic-bezier(0.19, 1, 0.22, 1); 10 | } 11 | 12 | &[showing] { 13 | opacity: 1; 14 | } 15 | } -------------------------------------------------------------------------------- /app/profile/channel-prefs.js: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | // 5 | // This pref is in its own file for complex reasons. See the comment in 6 | // dot/app/Makefile.in, bug 756325, and bug 1431342 for details. Do not add 7 | // other prefs to this file. 8 | 9 | pref("app.update.channel", "@MOZ_UPDATE_CHANNEL@"); 10 | -------------------------------------------------------------------------------- /components/search/content/browser-urlbar-results.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | :host(browser-urlbar-results) { 6 | display: flex; 7 | height: 400px; 8 | padding: 0 2px; 9 | margin-block-start: var(--urlbar-expanded-padding); 10 | border-top: 1px solid var(--arrowpanel-border-color); 11 | } -------------------------------------------------------------------------------- /themes/addons/system/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 2, 3 | "applications": { 4 | "gecko": { 5 | "id": "default-theme@mozilla.org" 6 | } 7 | }, 8 | "name": "System", 9 | "description": "Follow the system setting for buttons, menus, and windows.", 10 | "author": "Dot HQ", 11 | "version": "1.0", 12 | "icons": { 13 | "32": "icon.svg" 14 | }, 15 | "theme": {}, 16 | "dark_theme": {}, 17 | "theme_experiment": {} 18 | } -------------------------------------------------------------------------------- /components/status/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | EXTRA_JS_MODULES += [ 8 | "BrowserStatus.sys.mjs", 9 | "StatusManager.sys.mjs", 10 | "TabStatusManager.sys.mjs", 11 | ] 12 | 13 | JAR_MANIFESTS += ["jar.mn"] -------------------------------------------------------------------------------- /components/tabs/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | EXTRA_JS_MODULES += [ 8 | "BrowserTabs.sys.mjs", 9 | "BrowserTabsUtils.sys.mjs", 10 | "TabProgressListener.sys.mjs", 11 | ] 12 | 13 | JAR_MANIFESTS += ["jar.mn"] -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": [ 3 | "NathanRidley.autotrim", 4 | "dbaeumer.vscode-eslint", 5 | "esbenp.prettier-vscode", 6 | "llvm-vs-code-extensions.vscode-clangd", 7 | "rust-lang.rust", 8 | "rust-lang.rust-analyzer", 9 | "ecmel.vscode-html-css", 10 | "firefox-devtools.vscode-firefox-debug", 11 | "mythmon.idl", 12 | "vtrois.gitmoji-vscode", 13 | "jock.svg", 14 | "ctf0.macros", 15 | "esbenp.prettier-vscode", 16 | "dave-deletethis.midl-webidl-syntax", 17 | ] 18 | } -------------------------------------------------------------------------------- /app/macbuild/Contents/moz.build: -------------------------------------------------------------------------------- 1 | defs = [] 2 | 3 | for s in ( 4 | "MOZ_GECKODRIVER", 5 | "MOZ_ASAN", 6 | "MOZ_TSAN", 7 | "MOZ_CRASHREPORTER", 8 | "MOZ_APP_NAME", 9 | ): 10 | if CONFIG[s]: 11 | defs.append("-D%s=%s" % (s, "1" if CONFIG[s] is True else CONFIG[s])) 12 | 13 | GeneratedFile( 14 | "MacOS-files.txt", 15 | script="/python/mozbuild/mozbuild/action/preprocessor.py", 16 | entry_point="generate", 17 | inputs=["MacOS-files.in"], 18 | flags=defs, 19 | ) 20 | -------------------------------------------------------------------------------- /mach: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | # This Source Code Form is subject to the terms of the Mozilla Public 3 | # License, v. 2.0. If a copy of the MPL was not distributed with this 4 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 5 | 6 | # Allows use of mach in dot directory 7 | 8 | import os 9 | import sys 10 | 11 | # Hacky way of getting to topsrcdir 12 | os.chdir("..") 13 | 14 | print(f"Executing mach from cwd {os.getcwd()}.") 15 | 16 | sys.exit( 17 | os.WEXITSTATUS(os.system(" ".join(sys.argv))) 18 | ) -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/BrowserTab.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this file, 3 | * You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | import { ChromeBrowser } from "./ChromeBrowser"; 6 | 7 | export interface BrowserTab extends HTMLElement { 8 | linkedBrowser: ChromeBrowser; 9 | 10 | _sharingState: { 11 | geo?: boolean; 12 | xr?: boolean; 13 | webRTC?: any; 14 | }; 15 | } 16 | -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/SharedLibrary.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this file, 3 | * You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface SharedLibrary { 6 | start: number; 7 | end: number; 8 | offset: number; 9 | name: string; 10 | path: string; 11 | debugName: string; 12 | debugPath: string; 13 | breakpadId: string; 14 | arch: string; 15 | } -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/nsISecureBrowserUI.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | import { nsITransportSecurityInfo } from "./nsITransportSecurityInfo"; 6 | 7 | export interface nsISecureBrowserUI { 8 | readonly state: number; 9 | readonly isSecureContext: boolean; 10 | readonly secInfo: nsITransportSecurityInfo; 11 | } -------------------------------------------------------------------------------- /modules/moz.build: -------------------------------------------------------------------------------- 1 | # This Source Code Form is subject to the terms of the Mozilla Public 2 | # License, v. 2.0. If a copy of the MPL was not distributed with this 3 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 4 | 5 | EXTRA_JS_MODULES += [ 6 | "AccessibilityFocus.sys.mjs", 7 | "AnimationEngine.sys.mjs", 8 | "DevToolsServer.sys.mjs", 9 | "DOMUtils.sys.mjs", 10 | "DotWindowTracker.sys.mjs", 11 | "ProcessArguments.sys.mjs", 12 | ] 13 | 14 | EXTRA_PP_JS_MODULES += [ 15 | "DotAppConstants.sys.mjs", 16 | ] -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/services/obs.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this file, 3 | * You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface ServicesObs { 6 | addObserver: ( 7 | observer: object, 8 | type: string, 9 | holdWeak?: boolean 10 | ) => void; 11 | removeObserver: (observer: object, type: string) => void; 12 | notifyObservers: (subject: any, topic: string) => void; 13 | } 14 | -------------------------------------------------------------------------------- /branding/official/locales/jar.mn: -------------------------------------------------------------------------------- 1 | #filter substitution 2 | # This Source Code Form is subject to the terms of the Mozilla Public 3 | # License, v. 2.0. If a copy of the MPL was not distributed with this 4 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 5 | 6 | [localization] @AB_CD@.jar: 7 | branding (%*.ftl) 8 | 9 | @AB_CD@.jar: 10 | % locale branding @AB_CD@ %locale/branding/ 11 | locale/branding/brand.dtd (%brand.dtd) 12 | locale/branding/brand.properties (%brand.properties) 13 | -------------------------------------------------------------------------------- /components/tabs/content/browser-tab-button.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | button.browser-tab-button { 6 | padding: 0px; 7 | 8 | min-height: 0px; 9 | min-width: 0px; 10 | 11 | --button-default-color: transparent; 12 | 13 | --button-inner-padding-scale: 0.5; 14 | 15 | & .browser-button-icon { 16 | --size: 14px; 17 | } 18 | } -------------------------------------------------------------------------------- /components/menus/content/xul-menuseparator.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | menuseparator { 6 | width: calc(100% - 4px * 2); 7 | height: 1px; 8 | margin-block: 4px; 9 | margin-inline: 4px; 10 | background: linear-gradient(to top, var(--arrowpanel-border-color), var(--arrowpanel-border-color)), color-mix(in srgb, currentColor 15%, transparent 100%); 11 | } -------------------------------------------------------------------------------- /components/onboarding/jar.mn: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | dot.jar: 8 | % content dot %content/ contentaccessible=yes 9 | content/onboarding/onboarding.html (content/onboarding.html) 10 | content/onboarding/onboarding.css (content/onboarding.css) -------------------------------------------------------------------------------- /components/status/jar.mn: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | dot.jar: 8 | % content dot %content/ contentaccessible=yes 9 | content/widgets/browser-status.js (content/browser-status.js) 10 | content/widgets/browser-status.css (content/browser-status.css) 11 | -------------------------------------------------------------------------------- /themes/shared/xul/menu.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | @import url("chrome://dot/skin/browser-theme.css"); 6 | 7 | @import url("chrome://dot/content/widgets/xul-menupopup.css"); 8 | @import url("chrome://dot/content/widgets/xul-menuitem.css"); 9 | @import url("chrome://dot/content/widgets/xul-menuseparator.css"); 10 | @import url("chrome://dot/content/widgets/xul-menugroup.css"); -------------------------------------------------------------------------------- /app/macbuild/Contents/MacOS-files.in: -------------------------------------------------------------------------------- 1 | #if 0 2 | ; Specifies files that should be copied (preserving symlinks) from dist/bin 3 | ; to the .app/Contents/MacOS directory. 4 | #endif 5 | #filter substitution 6 | /*.app/*** 7 | /certutil 8 | /@MOZ_APP_NAME@-bin 9 | #if defined(MOZ_GECKODRIVER) 10 | /geckodriver 11 | #endif 12 | /gtest/*** 13 | /http3server 14 | #if defined(MOZ_ASAN) || defined(MOZ_TSAN) 15 | /llvm-symbolizer 16 | #endif 17 | #if defined(MOZ_CRASHREPORTER) 18 | /minidump-analyzer 19 | #endif 20 | /pingsender 21 | /pk12util 22 | /ssltunnel 23 | /xpcshell 24 | /XUL 25 | -------------------------------------------------------------------------------- /components/accessibility/jar.mn: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | dot.jar: 8 | % content dot %content/ contentaccessible=yes 9 | content/widgets/browser-a11y-ring.js (content/browser-a11y-ring.js) 10 | content/widgets/browser-a11y-ring.css (content/browser-a11y-ring.css) -------------------------------------------------------------------------------- /components/search/content/browser-urlbar-input.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | input[is=browser-urlbar-input] { 6 | appearance: none; 7 | 8 | background-color: transparent; 9 | 10 | border: none; 11 | outline: none; 12 | 13 | padding: 0 calc(var(--urlbar-container-padding) * 3); 14 | margin: 0; 15 | 16 | flex: 500 500; 17 | 18 | font: inherit; 19 | } -------------------------------------------------------------------------------- /components/startpage/content/startpage.js: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | const time = document.getElementById("time"); 6 | 7 | const tick = () => { 8 | const d = new Date(); 9 | 10 | time.textContent = `${d.getHours().toString().padStart(2, "0")}:${d 11 | .getMinutes() 12 | .toString() 13 | .padStart(2, "0")}`; 14 | }; 15 | 16 | tick(); 17 | setInterval(() => tick(), 1000); 18 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "dot", 3 | "version(note)": "See dot/app/config/version.txt for browser version.", 4 | "version": "0.0.0", 5 | "description": "Dot Browser for Windows, macOS and Linux", 6 | "main": "-", 7 | "repository": "https://github.com/dothq/browser-desktop", 8 | "author": "Dot HQ ", 9 | "license": "MPL-2.0", 10 | "private": true, 11 | "devDependencies": { 12 | "esbuild": "^0.20.2", 13 | "glob": "^10.3.10", 14 | "prettier": "^3.2.5", 15 | "typescript": "^5.3.3" 16 | } 17 | } -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/Cc.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | import * as Gecko from "."; 6 | 7 | export interface Cc { 8 | "@mozilla.org/process/environment;1": { 9 | getService(service: Gecko.nsIEnvironment): Gecko.Environment; 10 | }; 11 | "@mozilla.org/filepicker;1": { 12 | createInstance( 13 | instance: Gecko.nsIFilePicker 14 | ): Gecko.FilePicker; 15 | }; 16 | } 17 | -------------------------------------------------------------------------------- /branding/official/locales/en-US/brand.properties: -------------------------------------------------------------------------------- 1 | # This Source Code Form is subject to the terms of the Mozilla Public 2 | # License, v. 2.0. If a copy of the MPL was not distributed with this 3 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 4 | 5 | brandShorterName=Dot 6 | brandShortName=Dot Browser 7 | brandFullName=Dot Browser 8 | # LOCALIZATION NOTE(brandProductName): 9 | # This brand name can be used in messages where the product name needs to 10 | # remain unchanged across different versions (Nightly, Beta, etc.). 11 | brandProductName=Dot 12 | vendorShortName=Dot HQ 13 | -------------------------------------------------------------------------------- /components/csd/jar.mn: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | dot.jar: 8 | % content dot %content/ contentaccessible=yes 9 | content/widgets/browser-window-controls.js (content/browser-window-controls.js) 10 | content/widgets/browser-window-controls.css (content/browser-window-controls.css) -------------------------------------------------------------------------------- /components/prompts/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | EXTRA_JS_MODULES += [ 8 | "BrowserChromePrompts.sys.mjs", 9 | "BrowserContentPrompts.sys.mjs", 10 | "BrowserPromptManager.sys.mjs", 11 | "BrowserPrompts.sys.mjs", 12 | "BrowserWindowPrompts.sys.mjs", 13 | ] 14 | 15 | JAR_MANIFESTS += ["jar.mn"] -------------------------------------------------------------------------------- /components/commands/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | JAR_MANIFESTS += ["jar.mn"] 8 | 9 | EXTRA_JS_MODULES += [ 10 | "BrowserCommands.sys.mjs", 11 | "Command.sys.mjs", 12 | "CommandAudiences.sys.mjs", 13 | "CommandSubscription.sys.mjs", 14 | "GeckoCommand.sys.mjs", 15 | "TabCommand.sys.mjs" 16 | ] -------------------------------------------------------------------------------- /components/widgets/content/browser-separator.js: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | class BrowserSeparator extends BrowserContextualMixin(MozHTMLElement) { 6 | /** 7 | * The allowed customizable attributes for the group 8 | */ 9 | static get customizableAttributes() { 10 | return { 11 | orientation: "orientation" 12 | }; 13 | } 14 | } 15 | 16 | customElements.define("browser-separator", BrowserSeparator); 17 | -------------------------------------------------------------------------------- /locales/en-US/defines.inc: -------------------------------------------------------------------------------- 1 | # This Source Code Form is subject to the terms of the Mozilla Public 2 | # License, v. 2.0. If a copy of the MPL was not distributed with this 3 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 4 | #filter emptyLines 5 | 6 | #define MOZ_LANGPACK_CREATOR dothq.org 7 | 8 | # If non-English locales wish to credit multiple contributors, uncomment this 9 | # variable definition and use the format specified. 10 | # #define MOZ_LANGPACK_CONTRIBUTORS Joe Solon Suzy Solon 11 | 12 | #unfilter emptyLines 13 | -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/DevToolsSocketStatus.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface DevToolsSocketStatus { 6 | hasSocketOpened(options: { 7 | excludeBrowserToolboxSockets?: boolean; 8 | }): boolean; 9 | 10 | notifySocketOpened(options: { 11 | fromBrowserToolbox?: boolean; 12 | }): void; 13 | notifySocketClosed(options: { 14 | fromBrowserToolbox?: boolean; 15 | }): void; 16 | } 17 | -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/JSActor.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this file, 3 | * You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | import { ReceiveMessageArgument } from "./ReceiveMessageArgument"; 6 | 7 | export class JSActor { 8 | sendAsyncMessage(messageName: string, obj?: any): void; 9 | 10 | sendQuery(messageName: string, obj?: any): Promise; 11 | 12 | receiveMessage(message?: ReceiveMessageArgument): void; 13 | 14 | readonly name: string; 15 | } -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/nsIException.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface nsIException { 6 | filename: string; 7 | name: string; 8 | sourceId: number; 9 | lineNumber: number; 10 | columnNumber: number; 11 | sourceLine: string; 12 | asyncCause: string; 13 | asyncCaller: any; 14 | caller: any; 15 | formattedStack: string; 16 | nativeSavedFrame: any; 17 | toString(): string; 18 | } 19 | -------------------------------------------------------------------------------- /components/widgets/content/browser-group.js: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | class BrowserGroup extends BrowserContextualMixin(MozHTMLElement) { 6 | /** 7 | * The allowed customizable attributes for the group 8 | */ 9 | static get customizableAttributes() { 10 | return { 11 | orientation: "orientation", 12 | mode: "mode" 13 | }; 14 | } 15 | } 16 | 17 | customElements.define("browser-group", BrowserGroup); 18 | -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/services/dirsvc.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | import { nsIDirectoryService } from "../nsIDirectoryService"; 6 | import { nsIDirectoryServiceProvider2 } from "../nsIDirectoryServiceProvider"; 7 | import { nsIFile } from "../nsIFile"; 8 | import { nsIProperties } from "../nsIProperties"; 9 | 10 | export type ServicesDirsvc = nsIDirectoryService & nsIProperties & nsIDirectoryServiceProvider2; -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/nsIFilePicker.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this file, 3 | * You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export class nsIFilePicker { } 6 | 7 | export interface FilePicker { 8 | init: (window: Window, title: string, mode: number) => void; 9 | open: (callback: (rv: number) => unknown) => void; 10 | // The following are enum values. 11 | modeGetFolder: number; 12 | returnOK: number; 13 | file: { 14 | path: string; 15 | }; 16 | } -------------------------------------------------------------------------------- /branding/official/dot.VisualElementsManifest.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 12 | 13 | -------------------------------------------------------------------------------- /components/settings/jar.mn: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | dot.jar: 8 | % content dot %content/ contentaccessible=yes 9 | content/settings/settings.html (content/settings.html) 10 | content/settings/settings.css (content/settings.css) 11 | content/settings/settings.js (content/settings.js) -------------------------------------------------------------------------------- /docs/book.toml: -------------------------------------------------------------------------------- 1 | [book] 2 | title = "Dot Browser Source Documentation" 3 | authors = ["Dot HQ"] 4 | language = "en" 5 | multilingual = false 6 | src = "src" 7 | 8 | [output.html] 9 | git-repository-url = "https://github.com/dothq/browser-desktop/tree/nightly/docs" 10 | edit-url-template = "https://github.com/dothq/browser-desktop/edit/nightly/docs/{path}" 11 | 12 | [output.html.playground] 13 | editable = true 14 | line-numbers = true 15 | 16 | [output.html.search] 17 | limit-results = 20 18 | use-boolean-and = true 19 | boost-title = 2 20 | boost-hierarchy = 2 21 | boost-paragraph = 1 22 | expand = true 23 | heading-split-level = 2 -------------------------------------------------------------------------------- /components/actions/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | JAR_MANIFESTS += ["jar.mn"] 8 | 9 | EXTRA_JS_MODULES += [ 10 | "Action.sys.mjs", 11 | "ActionRegistry.sys.mjs", 12 | "ActionsDispatcher.sys.mjs", 13 | "ActionsIPC.sys.mjs", 14 | "ActionsMessenger.sys.mjs", 15 | "ActionsReceiver.sys.mjs", 16 | "BrowserActions.sys.mjs", 17 | ] -------------------------------------------------------------------------------- /components/tabs/content/browser-tabs-overflow-button.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | @import url("chrome://dot/content/widgets/browser-toolbar-button.css"); 6 | 7 | button.browser-tabs-overflow-button { 8 | display: none; 9 | 10 | & .browser-button-container { 11 | padding: 0 calc(var(--x-padding) / 2); 12 | } 13 | } 14 | 15 | :host(browser-tabs[overflowing]) button.browser-tabs-overflow-button { 16 | display: flex; 17 | } -------------------------------------------------------------------------------- /components/widgets/content/browser-group.css: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | browser-group { 6 | display: flex; 7 | gap: inherit; 8 | } 9 | 10 | browser-group[orientation=vertical], 11 | :host([orientation=vertical]) browser-group:not([orientation]) { 12 | flex-direction: column; 13 | } 14 | 15 | browser-group[orientation=horizontal], 16 | :host([orientation=horizontal]) browser-group:not([orientation]) { 17 | flex-direction: row; 18 | } -------------------------------------------------------------------------------- /themes/addons/dark/icon.svg: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /themes/addons/system/icon.svg: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /components/about/moz.build: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | EXPORTS.dot.browser += [ 8 | "AboutRedirector.h", 9 | ] 10 | 11 | SOURCES += [ 12 | "AboutRedirector.cpp", 13 | ] 14 | 15 | XPCOM_MANIFESTS += [ 16 | "components.conf", 17 | ] 18 | 19 | LOCAL_INCLUDES += [ 20 | "/dom/base", 21 | ] 22 | 23 | Library("dotcomps") 24 | FINAL_LIBRARY = "xul" 25 | -------------------------------------------------------------------------------- /components/customizableui/schemas/customizable_state.schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://json-schema.org/draft/2020-12/schema", 3 | "$id": "chrome://dot/content/customizableui/schemas/customizable_state.schema.json", 4 | "title": "Customizable UI State", 5 | "type": "object", 6 | "properties": { 7 | "version": { 8 | "type": "integer" 9 | }, 10 | "state": { 11 | "$ref": "chrome://dot/content/customizableui/schemas/customizable_defs.schema.json#/$defs/components-array" 12 | } 13 | }, 14 | "required": [ 15 | "version", 16 | "state" 17 | ] 18 | } -------------------------------------------------------------------------------- /components/menus/content/xul-menuitem.js: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | { 6 | Services.scriptloader.loadSubScript( 7 | "chrome://dot/content/widgets/xul-menu-base.js" 8 | ); 9 | 10 | class MozMenuItem extends MozMenuItemBaseMixin(MozXULElement) {} 11 | customElements.define("menuitem", MozMenuItem); 12 | 13 | class MozMenuCaption extends MozMenuItemBaseMixin(MozXULElement) {} 14 | customElements.define("menucaption", MozMenuCaption); 15 | } 16 | -------------------------------------------------------------------------------- /themes/addons/light/icon.svg: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /components/commands/content/internal/cut.js: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | const { GeckoCommand } = ChromeUtils.importESModule( 6 | "resource://gre/modules/GeckoCommand.sys.mjs" 7 | ); 8 | 9 | export class CutCommand extends GeckoCommand { 10 | constructor(subscription, subscriber, area) { 11 | super(subscription, subscriber, area); 12 | 13 | this.geckoCommandId = "cmd_cut"; 14 | 15 | this.label = "Cut"; 16 | this.icon = "cut"; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /components/commands/content/internal/select-all.js: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | const { GeckoCommand } = ChromeUtils.importESModule( 6 | "resource://gre/modules/GeckoCommand.sys.mjs" 7 | ); 8 | 9 | export class SelectAllCommand extends GeckoCommand { 10 | constructor(subscription, subscriber, area) { 11 | super(subscription, subscriber, area); 12 | 13 | this.geckoCommandId = "cmd_selectAll"; 14 | 15 | this.label = "Select All"; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /components/search/content/browser-urlbar-button.js: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | class BrowserUrlbarButton extends BrowserCommandButton { 6 | constructor() { 7 | super(); 8 | } 9 | 10 | connectedCallback() { 11 | super.connectedCallback(); 12 | } 13 | 14 | disconnectedCallback() { 15 | super.disconnectedCallback(); 16 | } 17 | } 18 | 19 | customElements.define("browser-urlbar-button", BrowserUrlbarButton, { 20 | extends: "button" 21 | }); 22 | -------------------------------------------------------------------------------- /components/toolbar/content/browser-toolbar-overflow.js: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | class BrowserToolbarOverflow extends BrowserButton { 6 | connectedCallback() { 7 | super.connectedCallback(); 8 | 9 | this.classList.add("browser-toolbar-button"); 10 | 11 | this.label = "More..."; 12 | this.icon = "chevron-down"; 13 | } 14 | } 15 | 16 | customElements.define("browser-toolbar-overflow", BrowserToolbarOverflow, { 17 | extends: "button" 18 | }); 19 | -------------------------------------------------------------------------------- /installer/windows/nsis/updater_append.ini: -------------------------------------------------------------------------------- 1 | 2 | ; IMPORTANT: This file should always start with a newline in case a locale 3 | ; provided updater.ini does not end with a newline. 4 | ; Application to launch after an update has been successfully applied. This 5 | ; must be in the same directory or a sub-directory of the directory of the 6 | ; application executable that initiated the software update. 7 | [PostUpdateWin] 8 | ; ExeRelPath is the path to the PostUpdateWin executable relative to the 9 | ; application executable. 10 | ExeRelPath=uninstall\helper.exe 11 | ; ExeArg is the argument to pass to the PostUpdateWin exe 12 | ExeArg=/PostUpdate 13 | -------------------------------------------------------------------------------- /components/commands/content/internal/copy.js: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | const { GeckoCommand } = ChromeUtils.importESModule( 6 | "resource://gre/modules/GeckoCommand.sys.mjs" 7 | ); 8 | 9 | export class CopyCommand extends GeckoCommand { 10 | constructor(subscription, subscriber, area) { 11 | super(subscription, subscriber, area); 12 | 13 | this.geckoCommandId = "cmd_copy"; 14 | 15 | this.label = "Copy"; 16 | this.icon = "copy"; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /components/commands/jar.mn: -------------------------------------------------------------------------------- 1 | # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- 2 | # vim: set filetype=python: 3 | # This Source Code Form is subject to the terms of the Mozilla Public 4 | # License, v. 2.0. If a copy of the MPL was not distributed with this 5 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. 6 | 7 | dot.jar: 8 | % content dot %content/ contentaccessible=yes 9 | content/commands/ (content/*) 10 | 11 | content/widgets/browser-command-button.js (widgets/browser-command-button.js) 12 | content/widgets/browser-command-element.js (widgets/browser-command-element.js) -------------------------------------------------------------------------------- /components/commands/content/internal/paste.js: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this 3 | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | const { GeckoCommand } = ChromeUtils.importESModule( 6 | "resource://gre/modules/GeckoCommand.sys.mjs" 7 | ); 8 | 9 | export class PasteCommand extends GeckoCommand { 10 | constructor(subscription, subscriber, area) { 11 | super(subscription, subscriber, area); 12 | 13 | this.geckoCommandId = "cmd_paste"; 14 | 15 | this.label = "Paste"; 16 | this.icon = "paste"; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /third_party/dothq/gecko-types/lib/services/textToSubURI.d.ts: -------------------------------------------------------------------------------- 1 | /* This Source Code Form is subject to the terms of the Mozilla Public 2 | * License, v. 2.0. If a copy of the MPL was not distributed with this file, 3 | * You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 | 5 | export interface ServicesTextToSubURI { 6 | ConvertAndEscape: (charset: string, text: string) => string; 7 | UnEscapeAndConvert: (charset: string, text: string) => string; 8 | unEscapeNonAsciiURI: ( 9 | charset: string, 10 | uriFragment: string 11 | ) => string; 12 | unEscapeURIForUI: ( 13 | uriFragment: string, 14 | dontEscape?: boolean 15 | ) => string; 16 | } 17 | -------------------------------------------------------------------------------- /base/content/browser-dialog.inc.xhtml: -------------------------------------------------------------------------------- 1 | 4 | 5 |