Source code
Revision control
Copy as Markdown
Other Tools
#filter substitution
<?xml version="1.0"?>
# -*- Mode: HTML -*-
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
<html id="main-window"
#ifdef XP_MACOSX
data-l10n-id="browser-main-window-mac-window-titles"
#else
data-l10n-id="browser-main-window-window-titles"
#endif
data-l10n-args="{"content-title":"CONTENTTITLE"}"
data-l10n-attrs="data-content-title-default, data-content-title-private, data-title-default, data-title-private"
#ifdef XP_WIN
chromemargin="0,2,2,2"
#else
chromemargin="0,-1,-1,-1"
#endif
tabsintitlebar="true"
windowtype="navigator:browser"
macanimationtype="document"
macnativefullscreen="true"
screenX="4" screenY="4"
sizemode="normal"
retargetdocumentfocus="urlbar-input"
scrolling="false"
persist="screenX screenY width height sizemode"
data-l10n-sync="true">
<head>
<!-- The "global.css" stylesheet is imported first to allow other stylesheets to
override rules using selectors with the same specificity. This applies to
<link rel="stylesheet" href="chrome://global/skin/global.css" />
<link
rel="stylesheet"
href="chrome://browser/content/downloads/downloads.css"
/>
<link rel="stylesheet" href="chrome://browser/content/places/places.css" />
<link
rel="stylesheet"
href="chrome://browser/content/usercontext/usercontext.css"
/>
<link rel="stylesheet" href="chrome://browser/skin/controlcenter/panel.css" />
<link
rel="stylesheet"
href="chrome://browser/skin/customizableui/panelUI.css"
/>
<link rel="stylesheet" href="chrome://browser/skin/downloads/downloads.css" />
<link rel="stylesheet" href="chrome://browser/skin/translations/panel.css" />
<link rel="stylesheet" href="chrome://browser/skin/places/tree-icons.css" />
<link rel="stylesheet" href="chrome://browser/skin/places/editBookmark.css" />
<link rel="localization" href="branding/brand.ftl"/>
<link rel="localization" href="browser/allTabsMenu.ftl"/>
<link rel="localization" href="browser/appmenu.ftl"/>
<link rel="localization" href="browser/browser.ftl"/>
<link rel="localization" href="browser/browserContext.ftl"/>
<link rel="localization" href="browser/browserSets.ftl"/>
<link rel="localization" href="browser/firefoxView.ftl"/>
<link rel="localization" href="browser/genai.ftl"/>
<link rel="localization" href="browser/identityCredentialNotification.ftl" />
<link rel="localization" href="browser/menubar.ftl"/>
<link rel="localization" href="browser/originControls.ftl"/>
<link rel="localization" href="browser/panelUI.ftl"/>
<link rel="localization" href="browser/places.ftl"/>
<link rel="localization" href="browser/protectionsPanel.ftl"/>
<link rel="localization" href="browser/reportBrokenSite.ftl"/>
<link rel="localization" href="browser/screenshots.ftl"/>
<link rel="localization" href="browser/search.ftl"/>
<link rel="localization" href="browser/sidebarMenu.ftl"/>
<link rel="localization" href="browser/tabbrowser.ftl"/>
<link rel="localization" href="browser/toolbarContextMenu.ftl"/>
<link rel="localization" href="browser/translations.ftl" />
<link rel="localization" href="browser/unifiedExtensions.ftl"/>
<link rel="localization" href="browser/webrtcIndicator.ftl"/>
<link rel="localization" href="toolkit/branding/brandings.ftl"/>
<link rel="localization" href="toolkit/global/contextual-identity.ftl"/>
<link rel="localization" href="toolkit/global/textActions.ftl"/>
<link rel="localization" href="toolkit/printing/printUI.ftl"/>
<!-- Untranslated FTL files -->
<link rel="localization" href="preview/credentialChooser.ftl" />
<link rel="localization" href="preview/enUS-searchFeatures.ftl" />
<link rel="localization" href="preview/interventions.ftl" />
<link rel="localization" href="browser/shopping.ftl"/>
<link rel="localization" href="preview/shopping.ftl"/>
<link rel="localization" href="browser/sidebar.ftl"/>
<link rel="localization" href="browser/profiles.ftl"/>
<link rel="localization" href="preview/onboarding.ftl"/>
<link rel="localization" href="preview/firefoxRelayToAllBrowsers.ftl"/>
<link rel="localization" href="preview/tabGroups.ftl"/>
<link rel="localization" href="preview/tabUnload.ftl"/>
<title data-l10n-id="browser-main-window-title"></title>
# All JS files which are needed by browser.xhtml and other top level windows to
# support MacOS specific features *must* go into the global-scripts.inc file so
# that they can be shared with macWindow.inc.xhtml.
#include global-scripts.inc
<script>
/* eslint-env mozilla/browser-window */
Services.scriptloader.loadSubScript("chrome://browser/content/browser-init.js", this);
Services.scriptloader.loadSubScript("chrome://global/content/contentAreaUtils.js", this);
Services.scriptloader.loadSubScript("chrome://browser/content/browser-captivePortal.js", this);
if (AppConstants.MOZ_DATA_REPORTING) {
Services.scriptloader.loadSubScript("chrome://browser/content/browser-data-submission-info-bar.js", this);
}
if (!AppConstants.MOZILLA_OFFICIAL) {
Services.scriptloader.loadSubScript("chrome://browser/content/browser-development-helpers.js", this);
}
Services.scriptloader.loadSubScript("chrome://browser/content/browser-pageActions.js", this);
Services.scriptloader.loadSubScript("chrome://browser/content/sidebar/browser-sidebar.js", this);
Services.scriptloader.loadSubScript("chrome://browser/content/browser-tabsintitlebar.js", this);
Services.scriptloader.loadSubScript("chrome://browser/content/browser-unified-extensions.js", this);
Services.scriptloader.loadSubScript("chrome://browser/content/tabbrowser/tab.js", this);
Services.scriptloader.loadSubScript("chrome://browser/content/tabbrowser/tabbrowser.js", this);
Services.scriptloader.loadSubScript("chrome://browser/content/tabbrowser/tabgroup.js", this);
Services.scriptloader.loadSubScript("chrome://browser/content/tabbrowser/tabgroup-menu.js", this);
Services.scriptloader.loadSubScript("chrome://browser/content/tabbrowser/tabs.js", this);
Services.scriptloader.loadSubScript("chrome://browser/content/places/places-menupopup.js", this);
Services.scriptloader.loadSubScript("chrome://browser/content/search/autocomplete-popup.js", this);
Services.scriptloader.loadSubScript("chrome://browser/content/search/searchbar.js", this);
Services.scriptloader.loadSubScript("chrome://browser/content/shopping/shopping-sidebar.js", this);
window.onload = gBrowserInit.onLoad.bind(gBrowserInit);
window.onunload = gBrowserInit.onUnload.bind(gBrowserInit);
window.onclose = WindowIsClosing;
window.addEventListener("MozBeforeInitialXULLayout",
gBrowserInit.onBeforeInitialXULLayout.bind(gBrowserInit), { once: true });
// The listener of DOMContentLoaded must be set on window, rather than
// document, because the window can go away before the event is fired.
// In that case, we don't want to initialize anything, otherwise we
// may be leaking things because they will never be destroyed after.
window.addEventListener("DOMContentLoaded",
gBrowserInit.onDOMContentLoaded.bind(gBrowserInit), { once: true });
</script>
</head>
# All sets except for popupsets (commands, keys, and stringbundles)
# *must* go into the browser-sets.inc file so that they can be shared with other
# top level windows in macWindow.inc.xhtml.
#include browser-sets.inc
#include main-popupset.inc.xhtml
#include appmenu-viewcache.inc.xhtml
#include unified-extensions-viewcache.inc.xhtml
<html:dialog id="window-modal-dialog" style="visibility: hidden; height: 0; width: 0"/>
<html:template id="window-modal-dialog-template">
<vbox class="dialogTemplate dialogOverlay" topmost="true">
<hbox class="dialogBox">
<browser class="dialogFrame" autoscroll="false" disablehistory="true"/>
</hbox>
</vbox>
</html:template>
#include navigator-toolbox.inc.xhtml
#include browser-box.inc.xhtml
<html:template id="customizationPanel">
<box id="customization-container" flex="1" hidden="true"><![CDATA[
#include ../../components/customizableui/content/customizeMode.inc.xhtml
]]></box>
</html:template>
#include fullscreen-and-pointerlock.inc.xhtml
<html:div id="a11y-announcement" role="alert"/>
<!-- Put it at the very end to make sure it's not covered by anything. -->
<html:div id="fullscr-toggler" hidden="hidden"/>
</html:body>
</html>