Source code

Revision control

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
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
<!-- The "global.css" stylesheet is imported first to allow other stylesheets to
override rules using selectors with the same specificity. This applies to
both "content" and "skin" packages, which bug 1385444 will unify later. -->
<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?>
<!-- While these stylesheets are defined in Toolkit, they are only used in the
main browser window, so we can load them here. Bug 1474241 is on file to
consider moving these widgets to the "browser" folder. -->
<?xml-stylesheet href="chrome://global/content/tabprompts.css" type="text/css"?>
<?xml-stylesheet href="chrome://global/skin/tabprompts.css" type="text/css"?>
<?xml-stylesheet href="chrome://browser/content/browser.css" type="text/css"?>
<?xml-stylesheet href="chrome://browser/content/tabbrowser.css" type="text/css"?>
<?xml-stylesheet href="chrome://browser/content/downloads/downloads.css" type="text/css"?>
<?xml-stylesheet href="chrome://browser/content/places/places.css" type="text/css"?>
<?xml-stylesheet href="chrome://browser/content/usercontext/usercontext.css" type="text/css"?>
<?xml-stylesheet href="chrome://browser/skin/" type="text/css"?>
<?xml-stylesheet href="chrome://browser/skin/controlcenter/panel.css" type="text/css"?>
<?xml-stylesheet href="chrome://browser/skin/customizableui/panelUI.css" type="text/css"?>
<?xml-stylesheet href="chrome://browser/skin/downloads/downloads.css" type="text/css"?>
<?xml-stylesheet href="chrome://browser/skin/searchbar.css" type="text/css"?>
<?xml-stylesheet href="chrome://browser/skin/places/tree-icons.css" type="text/css"?>
<?xml-stylesheet href="chrome://browser/skin/places/editBookmark.css" type="text/css"?>
# All DTD information is stored in a separate file so that it can be shared by
# hiddenWindowMac.xhtml.
<!DOCTYPE window [
#include browser-doctype.inc
]>
<html id="main-window"
#ifdef XP_MACOSX
data-l10n-id="browser-main-window-mac"
#else
data-l10n-id="browser-main-window"
#endif
data-l10n-args="{&quot;content-title&quot;:&quot;CONTENTTITLE&quot;}"
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>
<link rel="localization" href="branding/brand.ftl"/>
<link rel="localization" href="browser/branding/sync-brand.ftl"/>
<link rel="localization" href="browser/branding/brandings.ftl"/>
<link rel="localization" href="toolkit/global/textActions.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/menubar.ftl"/>
<link rel="localization" href="browser/protectionsPanel.ftl"/>
<link rel="localization" href="browser/appmenu.ftl"/>
<link rel="localization" href="preview/interventions.ftl"/>
<link rel="localization" href="browser/sidebarMenu.ftl"/>
<link rel="localization" href="browser/allTabsMenu.ftl"/>
<link rel="localization" href="browser/places.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://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-media.js", this);
Services.scriptloader.loadSubScript("chrome://browser/content/browser-pageActions.js", this);
Services.scriptloader.loadSubScript("chrome://browser/content/browser-sidebar.js", this);
Services.scriptloader.loadSubScript("chrome://browser/content/browser-tabsintitlebar.js", this);
Services.scriptloader.loadSubScript("chrome://browser/content/tabbrowser.js", this);
Services.scriptloader.loadSubScript("chrome://browser/content/tabbrowser-tab.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);
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
<popupset id="mainPopupSet">
<menupopup id="tabContextMenu"
onpopupshowing="if (event.target == this) TabContextMenu.updateContextMenu(this);"
onpopuphidden="if (event.target == this) TabContextMenu.contextTab = null;">
<menuitem id="context_reloadTab" data-lazy-l10n-id="reload-tab"
oncommand="gBrowser.reloadTab(TabContextMenu.contextTab);"/>
<menuitem id="context_reloadSelectedTabs" data-lazy-l10n-id="reload-tabs" hidden="true"
oncommand="gBrowser.reloadMultiSelectedTabs();"/>
<menuitem id="context_toggleMuteTab" oncommand="TabContextMenu.contextTab.toggleMuteAudio();"/>
<menuitem id="context_toggleMuteSelectedTabs" hidden="true"
oncommand="gBrowser.toggleMuteAudioOnMultiSelectedTabs(TabContextMenu.contextTab);"/>
<menuitem id="context_pinTab" data-lazy-l10n-id="pin-tab"
oncommand="gBrowser.pinTab(TabContextMenu.contextTab);"/>
<menuitem id="context_unpinTab" data-lazy-l10n-id="unpin-tab" hidden="true"
oncommand="gBrowser.unpinTab(TabContextMenu.contextTab);"/>
<menuitem id="context_pinSelectedTabs" data-lazy-l10n-id="pin-selected-tabs" hidden="true"
oncommand="gBrowser.pinMultiSelectedTabs();"/>
<menuitem id="context_unpinSelectedTabs" data-lazy-l10n-id="unpin-selected-tabs" hidden="true"
oncommand="gBrowser.unpinMultiSelectedTabs();"/>
<menuitem id="context_duplicateTab" data-lazy-l10n-id="duplicate-tab"
oncommand="duplicateTabIn(TabContextMenu.contextTab, 'tab');"/>
<menuitem id="context_duplicateTabs" data-lazy-l10n-id="duplicate-tabs"
oncommand="TabContextMenu.duplicateSelectedTabs();"/>
<menuseparator/>
<menuitem id="context_selectAllTabs" data-lazy-l10n-id="select-all-tabs"
oncommand="gBrowser.selectAllTabs();"/>
<menuitem id="context_bookmarkSelectedTabs"
hidden="true"
data-lazy-l10n-id="bookmark-selected-tabs"
oncommand="PlacesUIUtils.showBookmarkPagesDialog(PlacesCommandHook.uniqueSelectedPages);"/>
<menuitem id="context_bookmarkTab"
data-lazy-l10n-id="bookmark-tab"
oncommand="PlacesUIUtils.showBookmarkPagesDialog(PlacesCommandHook.getUniquePages([TabContextMenu.contextTab]));"/>
<menu id="context_reopenInContainer"
data-lazy-l10n-id="reopen-in-container"
hidden="true">
<menupopup oncommand="TabContextMenu.reopenInContainer(event);"
onpopupshowing="TabContextMenu.createReopenInContainerMenu(event);"/>
</menu>
<menu id="context_moveTabOptions"
data-lazy-l10n-id="tab-context-move-tabs"
data-l10n-args='{"tabCount": 1}'>
<menupopup id="moveTabOptionsMenu">
<menuitem id="context_moveToStart"
data-lazy-l10n-id="move-to-start"
tbattr="tabbrowser-multiple"
oncommand="gBrowser.moveTabsToStart(TabContextMenu.contextTab);"/>
<menuitem id="context_moveToEnd"
data-lazy-l10n-id="move-to-end"
tbattr="tabbrowser-multiple"
oncommand="gBrowser.moveTabsToEnd(TabContextMenu.contextTab);"/>
<menuitem id="context_openTabInWindow" data-lazy-l10n-id="move-to-new-window"
tbattr="tabbrowser-multiple"
oncommand="gBrowser.replaceTabsWithWindow(TabContextMenu.contextTab);"/>
</menupopup>
</menu>
<menu id="context_sendTabToDevice"
class="sync-ui-item">
<menupopup id="context_sendTabToDevicePopupMenu"
onpopupshowing="gSync.populateSendTabToDevicesMenu(event.target, TabContextMenu.contextTab.linkedBrowser.currentURI.spec, TabContextMenu.contextTab.linkedBrowser.contentTitle, TabContextMenu.contextTab.multiselected);"/>
</menu>
<menuseparator/>
<menu id="context_closeTabOptions"
data-lazy-l10n-id="tab-context-close-multiple-tabs">
<menupopup id="closeTabOptions">
<menuitem id="context_closeTabsToTheEnd" data-lazy-l10n-id="close-tabs-to-the-end"
oncommand="gBrowser.removeTabsToTheEndFrom(TabContextMenu.contextTab, {animate: true});"/>
<menuitem id="context_closeOtherTabs" data-lazy-l10n-id="close-other-tabs"
oncommand="gBrowser.removeAllTabsBut(TabContextMenu.contextTab);"/>
</menupopup>
</menu>
<menuitem id="context_undoCloseTab"
data-lazy-l10n-id="tab-context-undo-close-tabs"
data-l10n-args='{"tabCount": 1}'
observes="History:UndoCloseTab"/>
<menuitem id="context_closeTab"
data-lazy-l10n-id="tab-context-close-tabs"
data-l10n-args='{"tabCount": 1}'
oncommand="TabContextMenu.closeContextTabs();"/>
</menupopup>
<!-- bug 415444/582485: event.stopPropagation is here for the cloned version
of this menupopup -->
<menupopup id="backForwardMenu"
onpopupshowing="return FillHistoryMenu(event.target);"
oncommand="gotoHistoryIndex(event); event.stopPropagation();"
onclick="checkForMiddleClick(this, event);"/>
<tooltip id="aHTMLTooltip" page="true"/>
<tooltip id="remoteBrowserTooltip"/>
<menupopup id="new-tab-button-popup"
onpopupshowing="return CreateContainerTabMenu(event);"
onclick="checkForMiddleClick(this, event);"/>
<!-- for search and content formfill/pw manager -->
<panel is="autocomplete-richlistbox-popup"
type="autocomplete-richlistbox"
id="PopupAutoComplete"
role="group"
noautofocus="true"
hidden="true"
overflowpadding="4"
norolluponanchor="true"
nomaxresults="true" />
<!-- for search with one-off buttons -->
<panel is="search-autocomplete-richlistbox-popup"
type="autocomplete-richlistbox"
id="PopupSearchAutoComplete"
role="group"
noautofocus="true"
hidden="true" />
<html:template id="dateTimePickerTemplate">
<!-- for date/time picker. consumeoutsideclicks is set to never, so that
clicks on the anchored input box are never consumed. -->
<panel id="DateTimePickerPanel"
type="arrow"
hidden="true"
orient="vertical"
noautofocus="true"
norolluponanchor="true"
consumeoutsideclicks="never"
level="parent"
tabspecific="true">
</panel>
</html:template>
<!-- for select dropdowns. The menupopup is what shows the list of options,
and the popuponly menulist makes things like the menuactive attributes
work correctly on the menupopup. ContentSelectDropdown expects the
popuponly menulist to be its immediate parent. -->
<menulist popuponly="true" id="ContentSelectDropdown" hidden="true">
<menupopup rolluponmousewheel="true"
activateontab="true" position="after_start"
level="parent"
#ifdef XP_WIN
consumeoutsideclicks="false" ignorekeys="shortcuts"
#endif
/>
</menulist>
<html:template id="printTabModalTemplate">
<vbox id="printTabModalTemplate" class="tabSubDialogBoxContainer printDialogContainer" hidden="true">
<vbox class="dialogBox" pack="end" role="dialog" aria-labelledby="dialogTitle">
<hbox class="dialogTitleBar" align="center" hidden="true">
<label class="dialogTitle" flex="1"/>
<button class="dialogClose close-icon"/>
</hbox>
<hbox class="printTabModalView">
<browser class="printSettingsBrowser dialogFrame"/>
</hbox>
</vbox>
</vbox>
</html:template>
<html:template id="invalidFormTemplate">
<!-- for invalid form error message -->
<panel id="invalid-form-popup" type="arrow" orient="vertical" noautofocus="true" level="parent">
<description/>
</panel>
</html:template>
<html:template id="editBookmarkPanelTemplate">
<panel id="editBookmarkPanel"
class="panel-no-padding"
type="arrow"
orient="vertical"
ignorekeys="true"
hidden="true"
tabspecific="true"
aria-labelledby="editBookmarkPanelTitle">
<box class="panel-header">
<label id="editBookmarkPanelTitle"/>
<toolbarbutton tabindex="0" id="editBookmarkPanelInfoButton" class="panel-info-button" oncommand="StarUI.toggleRecommendation();" >
<image/>
</toolbarbutton>
</box>
<html:div id="editBookmarkPanelInfoArea">
<html:div id="editBookmarkPanelRecommendation"></html:div>
<html:div id="editBookmarkPanelFaviconContainer">
<html:img id="editBookmarkPanelFavicon"/>
</html:div>
<html:div id="editBookmarkPanelImage"></html:div>
</html:div>
#include ../../components/places/content/editBookmarkPanel.inc.xhtml
<vbox id="editBookmarkPanelBottomContent"
flex="1">
<checkbox id="editBookmarkPanel_showForNewBookmarks"
data-l10n-id="bookmark-panel-show-editor-checkbox"
oncommand="StarUI.onShowForNewBookmarksCheckboxCommand();"/>
</vbox>
<hbox id="editBookmarkPanelBottomButtons"
class="panel-footer"
data-l10n-id="bookmark-panel"
data-l10n-attrs="style">
#ifndef XP_UNIX
<button id="editBookmarkPanelDoneButton"
class="editBookmarkPanelBottomButton"
data-l10n-id="bookmark-panel-done-button"
default="true"
oncommand="StarUI.panel.hidePopup();"/>
<button id="editBookmarkPanelRemoveButton"
class="editBookmarkPanelBottomButton"
oncommand="StarUI.removeBookmarkButtonCommand();"/>
#else
<button id="editBookmarkPanelRemoveButton"
class="editBookmarkPanelBottomButton"
oncommand="StarUI.removeBookmarkButtonCommand();"/>
<button id="editBookmarkPanelDoneButton"
class="editBookmarkPanelBottomButton"
data-l10n-id="bookmark-panel-done-button"
default="true"
oncommand="StarUI.panel.hidePopup();"/>
#endif
</hbox>
</panel>
</html:template>
<html:template id="UITourTooltipTemplate">
<!-- UI tour experience -->
<panel id="UITourTooltip"
type="arrow"
noautofocus="true"
noautohide="true"
align="start"
orient="vertical"
role="alert">
<vbox>
<hbox id="UITourTooltipBody">
<image id="UITourTooltipIcon"/>
<vbox flex="1">
<hbox id="UITourTooltipTitleContainer">
<label id="UITourTooltipTitle" flex="1"/>
<toolbarbutton id="UITourTooltipClose" class="close-icon"
tooltiptext="&uiTour.infoPanel.close;"/>
</hbox>
<description id="UITourTooltipDescription" flex="1"/>
</vbox>
</hbox>
<hbox id="UITourTooltipButtons" flex="1" align="center"/>
</vbox>
</panel>
</html:template>
<html:template id="UITourHighlightTemplate">
<!-- type="default" forces frames to be created so that the panel's size can be determined -->
<panel id="UITourHighlightContainer"
type="default"
noautofocus="true"
noautohide="true"
flip="none"
consumeoutsideclicks="false">
<box id="UITourHighlight"></box>
</panel>
</html:template>
<panel id="sidebarMenu-popup"
class="cui-widget-panel"
role="group"
type="arrow"
hidden="true"
flip="slide"
orient="vertical"
position="bottomcenter topleft">
<toolbarbutton id="sidebar-switcher-bookmarks"
type="checkbox"
data-l10n-id="sidebar-menu-bookmarks"
class="subviewbutton subviewbutton-iconic"
key="viewBookmarksSidebarKb"
oncommand="SidebarUI.show('viewBookmarksSidebar');"/>
<toolbarbutton id="sidebar-switcher-history"
type="checkbox"
data-l10n-id="sidebar-menu-history"
class="subviewbutton subviewbutton-iconic"
key="key_gotoHistory"
oncommand="SidebarUI.show('viewHistorySidebar');"/>
<toolbarbutton id="sidebar-switcher-tabs"
type="checkbox"
data-l10n-id="sidebar-menu-synced-tabs"
class="subviewbutton subviewbutton-iconic sync-ui-item"
oncommand="SidebarUI.show('viewTabsSidebar');"/>
<toolbarseparator/>
<!-- Extension toolbarbuttons go here. -->
<toolbarseparator id="sidebar-extensions-separator"/>
<toolbarbutton id="sidebar-reverse-position"
class="subviewbutton"
oncommand="SidebarUI.reversePosition()"/>
<toolbarseparator/>
<toolbarbutton data-l10n-id="sidebar-menu-close"
class="subviewbutton"
oncommand="SidebarUI.hide()"/>
</panel>
<menupopup id="toolbar-context-menu"
onpopupshowing="onViewToolbarsPopupShowing(event, document.getElementById('viewToolbarsMenuSeparator')); ToolbarContextMenu.updateDownloadsAutoHide(this); ToolbarContextMenu.updateExtension(this)">
<menuitem oncommand="ToolbarContextMenu.openAboutAddonsForContextAction(this.parentElement)"
data-lazy-l10n-id="toolbar-context-menu-manage-extension"
contexttype="toolbaritem"
class="customize-context-manageExtension"/>
<menuitem oncommand="ToolbarContextMenu.removeExtensionForContextAction(this.parentElement)"
data-lazy-l10n-id="toolbar-context-menu-remove-extension"
contexttype="toolbaritem"
class="customize-context-removeExtension"/>
<menuitem oncommand="ToolbarContextMenu.reportExtensionForContextAction(this.parentElement, 'toolbar_context_menu')"
data-lazy-l10n-id="toolbar-context-menu-report-extension"
contexttype="toolbaritem"
class="customize-context-reportExtension"/>
<menuseparator/>
<menuitem oncommand="gCustomizeMode.addToPanel(document.popupNode, 'toolbar-context-menu')"
data-lazy-l10n-id="toolbar-context-menu-pin-to-overflow-menu"
contexttype="toolbaritem"
class="customize-context-moveToPanel"/>
<menuitem id="toolbar-context-autohide-downloads-button"
oncommand="ToolbarContextMenu.onDownloadsAutoHideChange(event);"
type="checkbox"
data-lazy-l10n-id="toolbar-context-menu-auto-hide-downloads-button"
contexttype="toolbaritem"/>
<menuitem oncommand="gCustomizeMode.removeFromArea(document.popupNode, 'toolbar-context-menu')"
data-lazy-l10n-id="toolbar-context-menu-remove-from-toolbar"
contexttype="toolbaritem"
class="customize-context-removeFromToolbar"/>
<menuitem id="toolbar-context-reloadSelectedTab"
contexttype="tabbar"
oncommand="gBrowser.reloadMultiSelectedTabs();"
data-lazy-l10n-id="toolbar-context-menu-reload-selected-tab"/>
<menuitem id="toolbar-context-reloadSelectedTabs"
contexttype="tabbar"
oncommand="gBrowser.reloadMultiSelectedTabs();"
data-lazy-l10n-id="toolbar-context-menu-reload-selected-tabs"/>
<menuitem id="toolbar-context-bookmarkSelectedTab"
contexttype="tabbar"
oncommand="PlacesUIUtils.showBookmarkPagesDialog(PlacesCommandHook.uniqueSelectedPages);"
data-lazy-l10n-id="toolbar-context-menu-bookmark-selected-tab"/>
<menuitem id="toolbar-context-bookmarkSelectedTabs"
contexttype="tabbar"
oncommand="PlacesUIUtils.showBookmarkPagesDialog(PlacesCommandHook.uniqueSelectedPages);"
data-lazy-l10n-id="toolbar-context-menu-bookmark-selected-tabs"/>
<menuitem id="toolbar-context-selectAllTabs"
contexttype="tabbar"
oncommand="gBrowser.selectAllTabs();"
data-lazy-l10n-id="toolbar-context-menu-select-all-tabs"/>
<menuitem id="toolbar-context-undoCloseTab"
contexttype="tabbar"
data-lazy-l10n-id="toolbar-context-menu-undo-close-tabs"
observes="History:UndoCloseTab"/>
<menuseparator/>
<menuseparator id="viewToolbarsMenuSeparator"/>
<!-- XXXgijs: we're using oncommand handler here to avoid the event being
redirected to the command element, thus preventing
listeners on the menupopup or further up the tree from
seeing the command event pass by. The observes attribute is
here so that the menuitem is still disabled and re-enabled
correctly. -->
<menuitem oncommand="gCustomizeMode.enter()"
observes="cmd_CustomizeToolbars"
class="viewCustomizeToolbar"
data-lazy-l10n-id="toolbar-context-menu-view-customize-toolbar"/>
</menupopup>
<menupopup id="blockedPopupOptions"
onpopupshowing="gPopupBlockerObserver.fillPopupList(event);"
onpopuphiding="gPopupBlockerObserver.onPopupHiding(event);">
<menuitem id="blockedPopupAllowSite"
accesskey="&allowPopups.accesskey;"
oncommand="gPopupBlockerObserver.toggleAllowPopupsForSite(event);"/>
<menuitem
#ifdef XP_WIN
label="&editPopupSettings.label;"
#else
label="&editPopupSettingsUnix.label;"
#endif
accesskey="&editPopupSettings.accesskey;"
oncommand="gPopupBlockerObserver.editPopupSettings();"/>
<menuitem id="blockedPopupDontShowMessage"
accesskey="&dontShowMessage.accesskey;"
type="checkbox"
oncommand="gPopupBlockerObserver.dontShowMessage();"/>
<menuseparator id="blockedPopupsSeparator"/>
</menupopup>
<menupopup id="autohide-context"
onpopupshowing="FullScreen.getAutohide(this.firstChild);">
<menuitem type="checkbox" data-l10n-id="full-screen-autohide"
oncommand="FullScreen.setAutohide();"/>
<menuseparator/>
<menuitem data-l10n-id="full-screen-exit"
oncommand="BrowserFullScreen();"/>
</menupopup>
<menupopup id="contentAreaContextMenu" pagemenu="#page-menu-separator"
onpopupshowing="if (event.target != this)
return true;
gContextMenu = new nsContextMenu(this, event.shiftKey);
if (gContextMenu.shouldDisplay)
updateEditUIVisibility();
return gContextMenu.shouldDisplay;"
onpopuphiding="if (event.target != this)
return;
gContextMenu.hiding();
gContextMenu = null;
updateEditUIVisibility();">
#include browser-context.inc
</menupopup>
<menupopup id="pictureInPictureToggleContextMenu">
<menuitem label="&pictureInPictureHideToggle.label;"
accesskey="&pictureInPictureHideToggle.accesskey;"
oncommand="PictureInPicture.hideToggle();" />
</menupopup>
#include ../../components/places/content/placesContextMenu.inc.xhtml
<panel id="ctrlTab-panel" hidden="true" norestorefocus="true" level="top">
<hbox id="ctrlTab-previews"/>
<hbox id="ctrlTab-showAll-container" pack="center"/>
</panel>
<panel id="pageActionPanel"
class="cui-widget-panel panel-no-padding"
role="group"
type="arrow"
hidden="true"
flip="slide"
position="bottomcenter topright"
tabspecific="true"
noautofocus="true"
pinTab-title="&pinTab.label;"
unpinTab-title="&unpinTab.label;"
pocket-title="&saveToPocketCmd.label;"
copyURL-title="&pageAction.copyLink.label;"
emailLink-title="&emailPageCmd.label;"
sendToDevice-notReadyTitle="&sendToDevice.syncNotReady.label;"
shareURL-title="&pageAction.shareUrl.label;"
shareMore-label="&pageAction.shareMore.label;">
<panelmultiview id="pageActionPanelMultiView"
mainViewId="pageActionPanelMainView"
viewCacheId="appMenu-viewCache">
<panelview id="pageActionPanelMainView"
context="pageActionContextMenu"
class="PanelUI-subView">
<vbox class="panel-subview-body"/>
</panelview>
</panelmultiview>
</panel>
<html:template id="confirmation-hint-wrapper">
<panel id="confirmation-hint"
role="alert"
type="arrow"
flip="slide"
position="bottomcenter topright"
tabspecific="true"
noautofocus="true">
<hbox id="confirmation-hint-checkmark-animation-container">
<image id="confirmation-hint-checkmark-image"/>
</hbox>
<vbox id="confirmation-hint-message-container">
<label id="confirmation-hint-message"/>
<label id="confirmation-hint-description"/>
</vbox>
</panel>
</html:template>
<menupopup id="pageActionContextMenu"
onpopupshowing="BrowserPageActions.onContextMenuShowing(event, this);">
<menuitem class="pageActionContextMenuItem builtInUnpinned"
oncommand="BrowserPageActions.togglePinningForContextAction();"
data-l10n-id="page-action-add-to-urlbar"/>
<menuitem class="pageActionContextMenuItem builtInPinned"
oncommand="BrowserPageActions.togglePinningForContextAction();"
data-l10n-id="page-action-remove-from-urlbar"/>
<menuitem class="pageActionContextMenuItem extensionUnpinned"
oncommand="BrowserPageActions.togglePinningForContextAction();"
data-l10n-id="page-action-add-to-urlbar"/>
<menuitem class="pageActionContextMenuItem extensionPinned"
oncommand="BrowserPageActions.togglePinningForContextAction();"
data-l10n-id="page-action-remove-from-urlbar"/>
<menuseparator class="pageActionContextMenuItem extensionPinned extensionUnpinned"/>
<menuitem class="pageActionContextMenuItem extensionPinned extensionUnpinned"
oncommand="BrowserPageActions.openAboutAddonsForContextAction();"
data-l10n-id="page-action-manage-extension"/>
<menuitem class="pageActionContextMenuItem extensionPinned extensionUnpinned removeExtensionItem"
oncommand="BrowserPageActions.removeExtensionForContextAction();"
data-l10n-id="page-action-remove-extension"/>
</menupopup>
#include ../../components/places/content/bookmarksHistoryTooltip.inc.xhtml
<tooltip id="tabbrowser-tab-tooltip" onpopupshowing="gBrowser.createTooltip(event);"/>
<tooltip id="back-button-tooltip">
<description class="tooltip-label" data-l10n-id="navbar-tooltip-back"/>
<description class="tooltip-label" data-l10n-id="navbar-tooltip-instruction"/>
</tooltip>
<tooltip id="forward-button-tooltip">
<description class="tooltip-label" data-l10n-id="navbar-tooltip-forward"/>
<description class="tooltip-label" data-l10n-id="navbar-tooltip-instruction"/>
</tooltip>
#include popup-notifications.inc
#include ../../components/customizableui/content/panelUI.inc.xhtml
#include ../../components/controlcenter/content/identityPanel.inc.xhtml
#include ../../components/controlcenter/content/protectionsPanel.inc.xhtml
#include ../../components/downloads/content/downloadsPanel.inc.xhtml
#include ../../../devtools/startup/enableDevToolsPopup.inc.xhtml
#include browser-allTabsMenu.inc.xhtml
<hbox id="downloads-animation-container">
<vbox id="downloads-notification-anchor" hidden="true">
<vbox id="downloads-indicator-notification"/>
</vbox>
</hbox>
<tooltip id="dynamic-shortcut-tooltip"
onpopupshowing="UpdateDynamicShortcutTooltipText(this);"/>
<menupopup id="SyncedTabsSidebarContext">
<menuitem data-lazy-l10n-id="synced-tabs-context-open"
id="syncedTabsOpenSelected" where="current"/>
<menuitem data-lazy-l10n-id="synced-tabs-context-open-in-new-tab"
id="syncedTabsOpenSelectedInTab" where="tab"/>
<menuitem data-lazy-l10n-id="synced-tabs-context-open-in-new-window"
id="syncedTabsOpenSelectedInWindow" where="window"/>
<menuitem data-lazy-l10n-id="synced-tabs-context-open-in-new-private-window"
id="syncedTabsOpenSelectedInPrivateWindow" where="window" private="true"/>
<menuseparator/>
<menuitem data-lazy-l10n-id="synced-tabs-context-bookmark-single-tab"
id="syncedTabsBookmarkSelected"/>
<menuitem data-lazy-l10n-id="synced-tabs-context-copy"
id="syncedTabsCopySelected"/>
<menuseparator/>
<menuitem data-lazy-l10n-id="synced-tabs-context-open-all-in-tabs"
id="syncedTabsOpenAllInTabs"/>
<menuitem data-lazy-l10n-id="synced-tabs-context-manage-devices"
id="syncedTabsManageDevices"
oncommand="gSync.openDevicesManagementPage('syncedtabs-sidebar');"/>
<menuitem data-lazy-l10n-id="synced-tabs-context-sync-now"
id="syncedTabsRefresh"/>
</menupopup>
<menupopup id="SyncedTabsSidebarTabsFilterContext"
class="textbox-contextmenu">
<menuitem data-l10n-id="text-action-undo"
cmd="cmd_undo"/>
<menuseparator/>
<menuitem data-l10n-id="text-action-cut"
cmd="cmd_cut"/>
<menuitem data-l10n-id="text-action-copy"
cmd="cmd_copy"/>
<menuitem data-l10n-id="text-action-paste"
cmd="cmd_paste"/>
<menuitem data-l10n-id="text-action-delete"
cmd="cmd_delete"/>
<menuseparator/>
<menuitem data-l10n-id="text-action-select-all"
cmd="cmd_selectAll"/>
<menuseparator/>
<menuitem data-lazy-l10n-id="synced-tabs-context-sync-now"
id="syncedTabsRefreshFilter"/>
</menupopup>
<hbox id="statuspanel" inactive="true">
<hbox id="statuspanel-inner">
<label id="statuspanel-label"
role="status"
aria-live="off"
flex="1"
crop="end"/>
</hbox>
</hbox>
<html:template id="sharing-tabs-warning-panel-template">
<panel id="sharing-tabs-warning-panel"
role="alert"
flip="slide"
type="arrow"
orient="vertical"
ignorekeys="true"
consumeoutsideclicks="never"
norolluponanchor="true"
onpopupshown="gSharedTabWarning.sharedTabWarningShown();">
<hbox type="window" align="start">
<image class="screen-icon popup-notification-icon"></image>
<vbox flex="1" pack="start">
<label>
<html:span id="sharing-warning-window-panel-header"
role="heading"
aria-level="1"
data-l10n-id="sharing-warning-window"/>
<html:span id="sharing-warning-screen-panel-header"
role="heading"
aria-level="1"
data-l10n-id="sharing-warning-screen"/>
</label>
<hbox align="center">
<button id="sharing-warning-proceed-to-tab" oncommand="gSharedTabWarning.allowSharedTabSwitch();" flex="1" data-l10n-id="sharing-warning-proceed-to-tab"/>
</hbox>
<hbox pack="start">
<checkbox id="sharing-warning-disable-for-session" data-l10n-id="sharing-warning-disable-for-session"/>
</hbox>
</vbox>
</hbox>
</panel>
</html:template>
</popupset>
<html:template id="appMenu-viewCache">
<panelview id="PanelUI-history" flex="1">
<vbox class="panel-subview-body">
<toolbarbutton id="appMenuViewHistorySidebar"
label="&appMenuHistory.viewSidebar.label;"
label-checked="&appMenuHistory.hideSidebar.label;"
label-unchecked="&appMenuHistory.viewSidebar.label;"
type="checkbox"
class="subviewbutton subviewbutton-iconic"
key="key_gotoHistory"
oncommand="SidebarUI.toggle('viewHistorySidebar');">
<observes element="sidebar-box" attribute="positionend"/>
</toolbarbutton>
<toolbarbutton id="appMenuClearRecentHistory"
label="&appMenuHistory.clearRecent.label;"
class="subviewbutton subviewbutton-iconic"
command="Tools:Sanitize"/>
<toolbarseparator/>
<toolbarbutton id="appMenuRecentlyClosedTabs"
label="&historyUndoMenu.label;"
class="subviewbutton subviewbutton-iconic subviewbutton-nav"
closemenu="none"
oncommand="PanelUI.showSubView('appMenu-library-recentlyClosedTabs', this)"/>
<toolbarbutton id="appMenuRecentlyClosedWindows"
label="&historyUndoWindowMenu.label;"
class="subviewbutton subviewbutton-iconic subviewbutton-nav"
closemenu="none"
oncommand="PanelUI.showSubView('appMenu-library-recentlyClosedWindows', this)"/>
<toolbarseparator/>
<label value="&appMenuHistory.recentHistory.label;"
class="subview-subheader"/>
<toolbaritem id="appMenu_historyMenu"
orient="vertical"
smoothscroll="false"
flatList="true"
tooltip="bhTooltip">
<!-- history menu items will go here -->
</toolbaritem>
</vbox>
<toolbarbutton id="PanelUI-historyMore"
class="panel-subview-footer subviewbutton"
label="&appMenuHistory.showAll.label;"
oncommand="PlacesCommandHook.showPlacesOrganizer('History'); CustomizableUI.hidePanelForNode(this);"/>
</panelview>
<panelview id="appMenu-library-recentlyClosedTabs"/>
<panelview id="appMenu-library-recentlyClosedWindows"/>
<panelview id="PanelUI-containers" flex="1">
<vbox id="PanelUI-containersItems"/>
</panelview>
<panelview id="PanelUI-helpView" flex="1" class="PanelUI-subView">
<vbox id="PanelUI-helpItems" class="panel-subview-body"/>
</panelview>
<panelview id="PanelUI-developer" flex="1">
<vbox id="PanelUI-developerItems" class="panel-subview-body"/>
</panelview>
<panelview id="PanelUI-bookmarks" flex="1" class="PanelUI-subView">
<vbox class="panel-subview-body">
<toolbarbutton id="panelMenuBookmarkThisPage"
class="subviewbutton subviewbutton-iconic"
command="Browser:AddBookmarkAs"
data-l10n-id="menu-bookmark-this-page"
onclick="PanelUI.hide();"/>
<toolbarbutton id="panelMenu_bookmarkingTools"
label="&bookmarkingTools.label;"
class="subviewbutton subviewbutton-iconic subviewbutton-nav"
closemenu="none"
oncommand="BookmarkingUI.showBookmarkingTools(this);"/>
<toolbarbutton id="panelMenu_searchBookmarks"
label="&searchBookmarks.label;"
class="subviewbutton subviewbutton-iconic"
oncommand="PlacesCommandHook.searchBookmarks(); PanelUI.hide();"/>
<toolbarseparator/>
<label id="panelMenu_recentBookmarks"
value="&recentBookmarks.label;"
class="subview-subheader"/>
<toolbaritem id="panelMenu_bookmarksMenu"
orient="vertical"
smoothscroll="false"
flatList="true"
tooltip="bhTooltip">
<!-- bookmarks menu items will go here -->
</toolbaritem>
</vbox>
<toolbarbutton id="panelMenu_showAllBookmarks"
label="&showAllBookmarks2.label;"
class="subviewbutton panel-subview-footer"
command="Browser:ShowAllBookmarks"
onclick="PanelUI.hide();"/>
</panelview>
<panelview id="PanelUI-profiler" flex="1" descriptionheightworkaround="true">
<vbox id="PanelUI-profiler-container">
<vbox id="PanelUI-profiler-header" animationready="false">
<hbox id="PanelUI-profiler-header-bar">
<label flex="1" value="Firefox Profiler" />
<vbox class="PanelUI-profiler-toolbarbutton-container">
<toolbarbutton id="PanelUI-profiler-info-button"
class="panel-info-button"
aria-label="Reveal more information">
<image/>
</toolbarbutton>
</vbox>
</hbox>
<hbox id="PanelUI-profiler-info">
<vbox>
<hbox id="PanelUI-profiler-info-graphic" flex="1">
<spacer flex="1" />
<vbox>
<spacer flex="1" />
<image class="PanelUI-profiler-info-icon" />
</vbox>
</hbox>
<label value="Record, analyze, share" />
<description>
Collaborate on performance issues by publishing profiles to share with your team.
</description>
<hbox>
<button id="PanelUI-profiler-learn-more" tabindex="-1">Learn more</button>
<space flex="1" />
</hbox>
</vbox>
</hbox>
</vbox>
<vbox id="PanelUI-profiler-content">
<vbox id="PanelUI-profiler-content-settings">
<label class="PanelUI-profiler-content-label"
value="Settings" />
<menulist id="PanelUI-profiler-presets"
flex="1"
value="custom">
<menupopup id="PanelUI-profiler-presets-menupopup" presetsbuilt="false">
<!-- The rest of the values get dynamically inserted. The "presetsbuilt"
attribute will get updated to "true" once the presets have been
built. -->
<menuitem id="PanelUI-profiler-presets-custom" label="Custom" value="custom"/>
</menupopup>
</menulist>
<!-- The following description gets inserted dynamically. -->
<description id="PanelUI-profiler-content-description" />
<hbox id="PanelUI-profiler-content-custom">
<button id="PanelUI-profiler-content-custom-button">
Edit Settings…
</button>
</hbox>
</vbox>
<hbox id="PanelUI-profiler-content-recording">
<spacer flex="1" />
<image class="PanelUI-profiler-recording-icon" />
<label class="PanelUI-profiler-recording-label">Recording…</label>
<spacer flex="1" />
</hbox>
<description id="PanelUI-profiler-locked">
The profiler is currently disabled, most likely due to a Private Browsing
window being open.
</description>
<hbox id="PanelUI-profiler-inactive" class="PanelUI-profiler-buttons">
<spacer flex="1" />
<vbox>
<button label="Start Recording"
id="PanelUI-profiler-startRecording"
class="PanelUI-profiler-button PanelUI-profiler-button-primary" />
<label class="PanelUI-profiler-shortcut">^⇧1</label>
</vbox>
<spacer flex="1" />
</hbox>
<hbox id="PanelUI-profiler-active" class="PanelUI-profiler-buttons">
<vbox flex="1">
<button label="Discard"
class="PanelUI-profiler-button"
id="PanelUI-profiler-stopAndDiscard" />
<label class="PanelUI-profiler-shortcut">^⇧1</label>
</vbox>
<vbox flex="1">
<button label="Capture"
class="PanelUI-profiler-button PanelUI-profiler-button-primary"
id="PanelUI-profiler-stopAndCapture" />
<label class="PanelUI-profiler-shortcut">^⇧2</label>
</vbox>
</hbox>
</vbox>
</vbox>
</panelview>
<panelview id="PanelUI-characterEncodingView" flex="1">
<vbox class="panel-subview-body">
<vbox id="PanelUI-characterEncodingView-pinned"
class="PanelUI-characterEncodingView-list"/>
<toolbarseparator/>
<vbox id="PanelUI-characterEncodingView-charsets"
class="PanelUI-characterEncodingView-list"/>
</vbox>
</panelview>
<panelview id="PanelUI-panicView" flex="1"
descriptionheightworkaround="true">
<vbox class="panel-subview-body">
<hbox id="PanelUI-panic-timeframe">
<image id="PanelUI-panic-timeframe-icon" alt=""/>
<vbox flex="1">
<description data-l10n-id="panic-main-timeframe-desc" id="PanelUI-panic-mainDesc"></description>
<radiogroup id="PanelUI-panic-timeSpan" aria-labelledby="PanelUI-panic-mainDesc" closemenu="none">
<radio id="PanelUI-panic-5min" data-l10n-id="panic-button-5min" selected="true"
value="5" class="subviewradio"/>
<radio id="PanelUI-panic-2hr" data-l10n-id="panic-button-2hr"
value="2" class="subviewradio"/>
<radio id="PanelUI-panic-day" data-l10n-id="panic-button-day"
value="6" class="subviewradio"/>
</radiogroup>
</vbox>
</hbox>
<vbox id="PanelUI-panic-explanations">
<label id="PanelUI-panic-actionlist-main-label" data-l10n-id="panic-button-action-desc"></label>
<label id="PanelUI-panic-actionlist-windows" class="PanelUI-panic-actionlist" data-l10n-id="panic-button-delete-tabs-and-windows"></label>
<label id="PanelUI-panic-actionlist-cookies" class="PanelUI-panic-actionlist" data-l10n-id="panic-button-delete-cookies"></label>
<label id="PanelUI-panic-actionlist-history" class="PanelUI-panic-actionlist" data-l10n-id="panic-button-delete-history"></label>
<label id="PanelUI-panic-actionlist-newwindow" class="PanelUI-panic-actionlist" data-l10n-id="panic-button-open-new-window"></label>
<label id="PanelUI-panic-warning" data-l10n-id="panic-button-undo-warning"></label>
</vbox>
<button id="PanelUI-panic-view-button"
data-l10n-id="panic-button-forget-button"/>
</vbox>
</panelview>
<panelview id="appMenu-SSBView" class="PanelUI-subView">
<vbox class="panel-subview-body">
</vbox>
</panelview>
<panelview id="appMenu-moreView" title="&moreMenu.label;" class="PanelUI-subView">
<vbox class="panel-subview-body">
<toolbarbutton id="appMenu-taskmanager-button"
class="subviewbutton subviewbutton-iconic"
label="&taskManagerCmd.label;"
oncommand="switchToTabHavingURI('about:performance', true)"/>
<toolbarbutton id="appMenu-characterencoding-button"
class="subviewbutton subviewbutton-nav"
label="&charsetMenu2.label;"
closemenu="none"
oncommand="PanelUI.showSubView('PanelUI-characterEncodingView', this)"/>
<toolbarbutton id="appMenu-workoffline-button"
class="subviewbutton"
data-l10n-id="menu-file-go-offline"
type="checkbox"
command="cmd_toggleOfflineStatus"/>
</vbox>
</panelview>
<panelview id="PanelUI-remotetabs" flex="1" class="PanelUI-subView"
descriptionheightworkaround="true">
<vbox class="panel-subview-body">
<!-- this widget has 3 boxes in the body, but only 1 is ever visible -->
<!-- When Sync is ready to sync -->
<vbox id="PanelUI-remotetabs-main" hidden="true">
<vbox id="PanelUI-remotetabs-buttons">
<toolbarbutton id="PanelUI-remotetabs-view-sidebar"
class="subviewbutton subviewbutton-iconic"
label="&appMenuRemoteTabs.sidebar.label;"
label-checked="&appMenuRemoteTabs.hidesidebar.label;"
label-unchecked="&appMenuRemoteTabs.sidebar.label;"
oncommand="SidebarUI.toggle('viewTabsSidebar', this);"/>
<toolbarbutton id="PanelUI-remotetabs-view-managedevices"
class="subviewbutton subviewbutton-iconic"
label="&appMenuRemoteTabs.managedevices.label;"
oncommand="gSync.openDevicesManagementPage('syncedtabs-menupanel');">
<observes element="sidebar-box" attribute="positionend"/>
</toolbarbutton>
<toolbarbutton id="PanelUI-remotetabs-syncnow"
data-l10n-id="fxa-toolbar-sync-now"
syncinglabel="fxa-toolbar-sync-syncing-tabs"
class="syncNowBtn subviewbutton subviewbutton-iconic"
oncommand="gSync.doSync();"
onmouseover="gSync.refreshSyncButtonsTooltip();"
closemenu="none"/>
<toolbarseparator id="PanelUI-remotetabs-separator"/>
</vbox>
<deck id="PanelUI-remotetabs-deck">
<!-- Sync is ready to Sync and the "tabs" engine is enabled -->
<vbox id="PanelUI-remotetabs-tabspane">
<vbox id="PanelUI-remotetabs-tabslist"
showAllLabel="&appMenuRemoteTabs.showAll.label;"
showAllTooltipText="&appMenuRemoteTabs.showAll.tooltip;"
showMoreLabel="&appMenuRemoteTabs.showMore.label;"
showMoreTooltipText="&appMenuRemoteTabs.showMore.tooltip;"
notabsforclientlabel="&appMenuRemoteTabs.notabs.label;"
/>
</vbox>
<!-- Sync is ready to Sync but the "tabs" engine isn't enabled-->
<hbox id="PanelUI-remotetabs-tabsdisabledpane" pack="center" flex="1">
<vbox class="PanelUI-remotetabs-instruction-box" align="center">
<hbox pack="center">
<image class="fxaSyncIllustrationIssue"/>
</hbox>
<label class="PanelUI-remotetabs-instruction-label">&appMenuRemoteTabs.tabsnotsyncing.label;</label>
<hbox pack="center">
<toolbarbutton class="PanelUI-remotetabs-button"
id="PanelUI-remotetabs-tabsdisabledpane-button"
label="&appMenuRemoteTabs.opensyncprefs.label;"
oncommand="gSync.openPrefs('synced-tabs');"/>
</hbox>
</vbox>
</hbox>
<!-- Sync is ready to Sync but we are still fetching the tabs to show -->
<vbox id="PanelUI-remotetabs-fetching">
<!-- Show intentionally blank panel, see bug 1239845 -->
</vbox>
<!-- Sync has only 1 (ie, this) device connected -->
<hbox id="PanelUI-remotetabs-nodevicespane" pack="center" flex="1">
<vbox class="PanelUI-remotetabs-instruction-box" align="center">
<hbox pack="center">
<image class="fxaSyncIllustrationIssue"/>
</hbox>
<label class="PanelUI-remotetabs-instruction-label">&appMenuRemoteTabs.noclients.subtitle;</label>
<toolbarbutton id="PanelUI-remotetabs-connect-device-button"
class="PanelUI-remotetabs-button"
label="&appMenuRemoteTabs.connectdevice.label;"
oncommand="gSync.openConnectAnotherDevice('synced-tabs');"/>
</vbox>
</hbox>
</deck>
</vbox>
<!-- a box to ensure contained boxes are centered horizonally -->
<hbox pack="center" flex="1">
<!-- When Sync is not configured -->
<vbox id="PanelUI-remotetabs-setupsync"
flex="1"
align="center"
class="PanelUI-remotetabs-instruction-box"
hidden="true">
<image class="fxaSyncIllustration"/>
<label class="PanelUI-remotetabs-instruction-label">&appMenuRemoteTabs.welcome.label;</label>
<toolbarbutton class="PanelUI-remotetabs-button"
id="PanelUI-remotetabs-setupsync-button"
label="&appMenuRemoteTabs.signintosync.label;"
oncommand="gSync.openPrefs('synced-tabs');"/>
</vbox>
<!-- When Sync is not enabled -->
<vbox id="PanelUI-remotetabs-syncdisabled"
flex="1"
align="center"
class="PanelUI-remotetabs-instruction-box"
hidden="true">
<image class="fxaSyncIllustration"/>
<label class="PanelUI-remotetabs-instruction-label">&appMenuRemoteTabs.welcome.label;</label>
<toolbarbutton class="PanelUI-remotetabs-button"
id="PanelUI-remotetabs-syncdisabled-button"
label="&appMenuRemoteTabs.turnonsync.label;"
oncommand="gSync.openPrefs('synced-tabs');"/>
</vbox>
<!-- When Sync needs re-authentication -->
<vbox id="PanelUI-remotetabs-reauthsync"
flex="1"
align="center"
class="PanelUI-remotetabs-instruction-box"
hidden="true">
<image class="fxaSyncIllustrationIssue"/>
<label class="PanelUI-remotetabs-instruction-label">&appMenuRemoteTabs.welcome.label;</label>
<toolbarbutton class="PanelUI-remotetabs-button"
id="PanelUI-remotetabs-reauthsync-button"
label="&appMenuRemoteTabs.signintosync.label;"
oncommand="gSync.openPrefs('synced-tabs');"/>
</vbox>
<!-- When Sync needs verification -->
<vbox id="PanelUI-remotetabs-unverified"
flex="1"
align="center"
class="PanelUI-remotetabs-instruction-box"
hidden="true">
<image class="fxaSyncIllustrationIssue"/>
<label class="PanelUI-remotetabs-instruction-label">&appMenuRemoteTabs.unverified.label;</label>
<toolbarbutton class="PanelUI-remotetabs-button"
id="PanelUI-remotetabs-unverified-button"
label="&appMenuRemoteTabs.opensyncprefs.label;"
oncommand="gSync.openPrefs('synced-tabs');"/>
</vbox>
</hbox>
</vbox>
</panelview>
<panelview id="PanelUI-fxa" title="&fxa.menu.account.label;" class="PanelUI-subView" descriptionheightworkaround="true">
<vbox id="PanelUI-fxa-menu" class="panel-subview-body">
<toolbarbutton id="fxa-manage-account-button"
align="center"
class="fxa-menu-header subviewbutton"
oncommand="gSync.clickFxAMenuHeaderButton(this);">
<image role="presentation" id="fxa-menu-avatar"/>
<vbox flex="1">
<label id="fxa-menu-header-title"
defaultLabel="&fxa.menu.signin.label;">&fxa.menu.signin.label;</label>
<label id="fxa-menu-header-description"
crop="end"
defaultLabel="&fxa.menu.turnOnSync.label;">&fxa.menu.turnOnSync.label;</label>
</vbox>
</toolbarbutton>
<toolbarseparator/>
<toolbarbutton id="PanelUI-fxa-menu-sendtab-button"
class="subviewbutton subviewbutton-iconic subviewbutton-nav"
closemenu="none"
oncommand="gSync.showSendToDeviceViewFromFxaMenu(this);"/>
<toolbarseparator/>
<!-- The `Connect Another Device` button is disabled by default until the user logs into Sync. -->
<toolbarbutton id="PanelUI-fxa-menu-connect-device-button"
class="subviewbutton subviewbutton-iconic"
label="&fxa.menu.connectAnotherDevice2.label;"
disabled="true"
oncommand="gSync.openConnectAnotherDeviceFromFxaMenu(this);"/>
<toolbarseparator/>
<!-- The `Sync Now` button is hidden by default until the user logs into Sync. -->
<toolbarbutton id="PanelUI-fxa-menu-syncnow-button"
data-l10n-id="fxa-toolbar-sync-now"
syncinglabel="fxa-toolbar-sync-syncing"
hidden="true"
class="syncNowBtn subviewbutton subviewbutton-iconic"
onmouseover="gSync.refreshSyncButtonsTooltip();"
oncommand="gSync.doSyncFromFxaMenu(this);"
closemenu="none"/>
<toolbarbutton id="PanelUI-fxa-menu-setup-sync-button"
class="subviewbutton subviewbutton-iconic"
label="&fxa.menu.setupSync.label;"
oncommand="gSync.openPrefsFromFxaMenu('sync_settings', this);"/>
<toolbarbutton id="PanelUI-fxa-menu-remotetabs-button"
class="subviewbutton subviewbutton-iconic subviewbutton-nav"
label="&appMenuRemoteTabs.label;"
closemenu="none"
oncommand="gSync.showRemoteTabsFromFxaMenu(this);"/>
<toolbarbutton id="PanelUI-fxa-menu-sync-prefs-button"
class="subviewbutton subviewbutton-iconic"
label="&fxa.menu.syncSettings2.label;"
hidden="true"
oncommand="gSync.openPrefsFromFxaMenu('sync_settings', this);"/>
<toolbarseparator/>
<toolbarbutton id="PanelUI-fxa-menu-logins-button"
class="subviewbutton subviewbutton-iconic"
label="&logins.label;"
oncommand="LoginHelper.openPasswordManager(window, { entryPoint: 'fxamenu' })"/>
<toolbarseparator id="fxa-menu-service-separator"/>
<label id="fxa-menu-service-label"
value="&fxa.menu.firefoxServices.label;"
class="subview-subheader"/>
<toolbarbutton id="PanelUI-fxa-menu-monitor-button"
class="subviewbutton subviewbutton-iconic"
label="&monitorFullName;"
type="open-to-new"
oncommand="gSync.openMonitorFromFxaMenu(this);"/>
<toolbarbutton id="PanelUI-fxa-menu-send-button"
class="subviewbutton subviewbutton-iconic"
label="&sendFullName;"
type="open-to-new"
oncommand="gSync.openSendFromFxaMenu(this);"/>
</vbox>
</panelview>
<panelview id="PanelUI-fxa-menu-account-panel" flex="1" title="&fxa.menu.accountSettings.label;" class="PanelUI-subView" descriptionheightworkaround="true">
<vbox class="panel-subview-body">
<toolbarbutton id="PanelUI-fxa-menu-account-settings-button"
class="subviewbutton subviewbutton-iconic"
label="&fxa.menu.manageAccount2.label;"
type="open-to-new"
oncommand="gSync.openFxAManagePageFromFxaMenu(this)"/>
<toolbarseparator/>
<toolbarbutton id="PanelUI-fxa-menu-account-signout-button"
class="subviewbutton subviewbutton-iconic"
label="&fxa.menu.signOut.label;"
oncommand="gSync.disconnect();"/>
</vbox>
</panelview>
<!-- This panelview is used to contain the dynamically created buttons for send tab to devices -->
<panelview id="PanelUI-sendTabToDevice" flex="1" class="PanelUI-subView">
<vbox class="panel-subview-body">
<toolbarbutton id="PanelUI-sendTabToDevice-syncingDevices" class="subviewbutton subviewbutton-iconic pageAction-sendToDevice-notReady"
label="&sendToDevice.syncNotReady.label;"
disabled="true"/>
</vbox>
</panelview>
<panelview id="PanelUI-fxa-menu-sendtab-not-configured" flex="1" class="PanelUI-subView">
<vbox id="PanelUI-fxa-sendtab-not-configured" align="center" class="panel-subview-body">
<image class="fxaSendToDeviceLogo" role="presentation"/>
<label class="PanelUI-fxa-service-description-label">&fxa.service.sendTab.description;</label>
<toolbarbutton id="PanelUI-fxa-menu-sendtab-not-configured-button"
class="PanelUI-fxa-signin-button"
label="&fxa.menu.signin.label;"
oncommand="gSync.openPrefsFromFxaMenu('send_tab', this);"/>
</vbox>
</panelview>
<panelview id="PanelUI-fxa-menu-sendtab-no-devices" flex="1" class="PanelUI-subView">
<vbox id="PanelUI-fxa-sendtab-no-devices" align="center" class="panel-subview-body">
<image class="fxaSendToDeviceLogo" role="presentation"/>
<label class="PanelUI-fxa-service-description-label">&fxa.service.sendTab.description;</label>
<toolbarbutton id="PanelUI-fxa-menu-sendtab-connect-device-button"
class="PanelUI-fxa-signin-button"
label="&appMenuRemoteTabs.connectdevice.label;"
oncommand="gSync.openConnectAnotherDeviceFromFxaMenu(this);"/>
</vbox>
</panelview>
<panelview id="appMenu-libraryView" class="PanelUI-subView">
<vbox class="panel-subview-body">
<toolbarbutton id="appMenu-library-bookmarks-button"
class="subviewbutton subviewbutton-iconic subviewbutton-nav"
label="&bookmarksSubview.label;"
closemenu="none"
oncommand="BookmarkingUI.showSubView(this);"/>
<toolbarbutton id="appMenu-library-pocket-button"
class="subviewbutton subviewbutton-iconic"
label="&pocketMenuitem.label;"
oncommand="Pocket.openList(event)"/>
<toolbarbutton id="appMenu-library-history-button"
class="subviewbutton subviewbutton-iconic subviewbutton-nav"
label="&historyMenu.label;"
closemenu="none"
oncommand="PanelUI.showSubView('PanelUI-history', this)"/>
<toolbarbutton id="appMenu-library-downloads-button"
class="subviewbutton subviewbutton-iconic subviewbutton-nav"
label="&libraryDownloads.label;"
closemenu="none"
oncommand="DownloadsSubview.show(this);"/>
<toolbarbutton id="appMenu-library-remotetabs-button"
class="subviewbutton subviewbutton-iconic subviewbutton-nav sync-ui-item"
label="&appMenuRemoteTabs.label;"
closemenu="none"
oncommand="PanelUI.showSubView('PanelUI-remotetabs', this)"/>
<toolbarseparator hidden="true"/>
<label value="&appMenuRecentHighlights.label;"
hidden="true"
class="subview-subheader"/>
<toolbaritem id="appMenu-library-recentHighlights"
hidden="true"
orient="vertical"
smoothscroll="false"
flatList="true"
tooltip="bhTooltip">
<!-- Recent Highlights will go here -->
</toolbaritem>
</vbox>
</panelview>
<panelview id="PanelUI-bookmarkingTools" class="PanelUI-subView">
<vbox class="panel-subview-body">
<toolbarbutton id="panelMenu_toggleBookmarksMenu"
class="subviewbutton subviewbutton-iconic"
label-show="&addBookmarksMenu.label;"
label-hide="&removeBookmarksMenu.label;"
oncommand="BookmarkingUI.toggleMenuButtonInToolbar(this);"/>
<toolbarbutton id="panelMenu_viewBookmarksSidebar"
class="subviewbutton subviewbutton-iconic"
label-show="&viewBookmarksSidebar2.label;"
label-hide="&hideBookmarksSidebar.label;"
key="viewBookmarksSidebarKb"
oncommand="SidebarUI.toggle('viewBookmarksSidebar', this);">
<observes element="sidebar-box" attribute="positionend"/>
</toolbarbutton>
<toolbarbutton id="panelMenu_viewBookmarksToolbar"
class="subviewbutton subviewbutton-iconic"
label-show="&viewBookmarksToolbar.label;"
label-hide="&hideBookmarksToolbar.label;"
oncommand="BookmarkingUI.toggleBookmarksToolbar('bookmark-tools');"/>
</vbox>
</panelview>
<panelview id="PanelUI-whatsNew" class="PanelUI-subView">
<vbox class="panel-subview-body">
<box id="PanelUI-whatsNew-title" class="panel-header">
<label data-l10n-id="whatsnew-panel-header"/>
</box>
<toolbaritem id="PanelUI-whatsNew-content"
orient="vertical"
smoothscroll="false">
<html:div id="PanelUI-whatsNew-message-container" role="document">
<!-- What's New messages will be rendered here -->
</html:div>
</toolbaritem>
</vbox>
<checkbox id="panelMenu-toggleWhatsNew"
class="panelMenu-toggleWhatsNew-checkbox"
oncommand="ToolbarPanelHub.toggleWhatsNewPref(event)"
data-l10n-id="whatsnew-panel-footer-checkbox"/>
</panelview>
</html:template>
<!-- Temporary wrapper until we move away from XUL flex to allow a negative
margin-top to slide the toolbox off screen in fullscreen layout.-->
<box>
<toolbox id="navigator-toolbox" flex="1">
<vbox id="titlebar">
<!-- Menu -->
<toolbar type="menubar" id="toolbar-menubar"
class="browser-toolbar chromeclass-menubar titlebar-color"
customizable="true"
mode="icons"
#ifdef MENUBAR_CAN_AUTOHIDE
toolbarname="&menubarCmd.label;"
accesskey="&menubarCmd.accesskey;"
autohide="true"
#endif
context="toolbar-context-menu">
<toolbaritem id="menubar-items" align="center">
# The entire main menubar is placed into browser-menubar.inc, so that it can be
# shared with other top level windows in macWindow.inc.xhtml.
#include browser-menubar.inc
</toolbaritem>
<spacer flex="1" skipintoolbarset="true" style="-moz-box-ordinal-group: 1000;"/>
#include titlebar-items.inc.xhtml
</toolbar>
<toolbar id="TabsToolbar"
class="browser-toolbar titlebar-color"
fullscreentoolbar="true"
customizable="true"
customizationtarget="TabsToolbar-customization-target"
mode="icons"
aria-label="&tabsToolbar.label;"
context="toolbar-context-menu"
flex="1">
<hbox class="titlebar-spacer" type="pre-tabs"/>
<hbox flex="1" align="end" class="toolbar-items">
<hbox id="TabsToolbar-customization-target" flex="1">
<tabs id="tabbrowser-tabs"
is="tabbrowser-tabs"
flex="1"
aria-multiselectable="true"
setfocus="false"
tooltip="tabbrowser-tab-tooltip"
stopwatchid="FX_TAB_CLICK_MS">
<hbox class="tab-drop-indicator" hidden="true"/>
<arrowscrollbox id="tabbrowser-arrowscrollbox" orient="horizontal" flex="1" style="min-width: 1px;" clicktoscroll="true" scrolledtostart="true" scrolledtoend="true">
<tab is="tabbrowser-tab" class="tabbrowser-tab" selected="true" visuallyselected="true" fadein="true"/>
<toolbarbutton id="tabs-newtab-button"
class="toolbarbutton-1"
command="cmd_newNavigatorTab"
onclick="checkForMiddleClick(this, event);"
tooltip="dynamic-shortcut-tooltip"/>
<spacer class="closing-tabs-spacer" style="width: 0;"/>
</arrowscrollbox>
<html:span id="tabbrowser-tab-a11y-desc" hidden="true"/>
</tabs>
<toolbarbutton id="new-tab-button"
class="toolbarbutton-1 chromeclass-toolbar-additional"
label="&tabCmd.label;"
command="cmd_newNavigatorTab"
onclick="checkForMiddleClick(this, event);"
tooltip="dynamic-shortcut-tooltip"
ondrop="newTabButtonObserver.onDrop(event)"
ondragover="newTabButtonObserver.onDragOver(event)"
ondragenter="newTabButtonObserver.onDragOver(event)"
ondragexit="newTabButtonObserver.onDragExit(event)"
cui-areatype="toolbar"
removable="true"/>
<toolbarbutton id="alltabs-button"
class="toolbarbutton-1 chromeclass-toolbar-additional tabs-alltabs-button"
badged="true"
oncommand="gTabsPanel.showAllTabsPanel(event);"
label="&listAllTabs.label;"
tooltiptext="&listAllTabs.label;"
removable="false"/>
</hbox>
</hbox>
<hbox class="titlebar-spacer" type="post-tabs"/>
#ifndef XP_MACOSX
<button class="accessibility-indicator" tooltiptext="&accessibilityIndicator.tooltip;"
aria-live="polite"/>
<hbox class="private-browsing-indicator"/>
#endif
#include titlebar-items.inc.xhtml
#ifdef XP_MACOSX
<!-- OS X does not natively support RTL for its titlebar items, so we prevent this secondary
buttonbox from reversing order in RTL by forcing an LTR direction. -->
<hbox id="titlebar-secondary-buttonbox" dir="ltr">
<button class="accessibility-indicator" tooltiptext="&accessibilityIndicator.tooltip;" aria-live="polite"/>
<hbox class="private-browsing-indicator"/>
<hbox id="titlebar-fullscreen-button"/>
</hbox>
#endif
</toolbar>
</vbox>
<toolbar id="nav-bar"
class="browser-toolbar"
aria-label="&navbar.accessibleLabel;"
fullscreentoolbar="true" mode="icons" customizable="true"
customizationtarget="nav-bar-customization-target"
overflowable="true"
overflowbutton="nav-bar-overflow-button"
overflowtarget="widget-overflow-list"
overflowpanel="widget-overflow"
context="toolbar-context-menu">
<toolbartabstop/>
<hbox id="nav-bar-customization-target" flex="1">
<toolbarbutton id="back-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
data-l10n-id="toolbar-button-back"
removable="false" overflows="false"
keepbroadcastattributeswhencustomizing="true"
command="Browser:BackOrBackDuplicate"
onclick="checkForMiddleClick(this, event);"
tooltip="back-button-tooltip"
context="backForwardMenu"/>
<toolbarbutton id="forward-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
data-l10n-id="toolbar-button-forward"
removable="false" overflows="false"
keepbroadcastattributeswhencustomizing="true"
command="Browser:ForwardOrForwardDuplicate"
onclick="checkForMiddleClick(this, event);"
tooltip="forward-button-tooltip"
context="backForwardMenu"/>
<toolbaritem id="stop-reload-button" class="chromeclass-toolbar-additional"
data-l10n-id="toolbar-button-stop-reload"
removable="true" overflows="false">
<toolbarbutton id="reload-button" class="toolbarbutton-1"
data-l10n-id="toolbar-button-reload"
command="Browser:ReloadOrDuplicate"
onclick="checkForMiddleClick(this, event);"
tooltip="dynamic-shortcut-tooltip">
<box class="toolbarbutton-animatable-box">
<image class="toolbarbutton-animatable-image"/>
</box>
</toolbarbutton>
<toolbarbutton id="stop-button" class="toolbarbutton-1"
data-l10n-id="toolbar-button-stop"
command="Browser:Stop"
tooltip="dynamic-shortcut-tooltip">
<box class="toolbarbutton-animatable-box">
<image class="toolbarbutton-animatable-image"/>
</box>
</toolbarbutton>
</toolbaritem>
<toolbarbutton id="home-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
removable="true"
label="&homeButton.label;"
ondragover="homeButtonObserver.onDragOver(event)"
ondragenter="homeButtonObserver.onDragOver(event)"
ondrop="homeButtonObserver.onDrop(event)"
ondragexit="homeButtonObserver.onDragExit(event)"
key="goHome"
onclick="BrowserHome(event);"
cui-areatype="toolbar"
tooltiptext="&homeButton.defaultPage.tooltip;"/>
<toolbarspring cui-areatype="toolbar" class="chromeclass-toolbar-additional"/>
<toolbaritem id="urlbar-container" flex="400" persist="width"
removable="false"
class="chromeclass-location" overflows="false">
<toolbartabstop/>
<hbox id="urlbar" flex="1"
context=""
focused="true"
pageproxystate="invalid">
<hbox id="urlbar-background"/>
<hbox id="urlbar-input-container"
flex="1"
pageproxystate="invalid">
<box id="urlbar-search-button"
class="chromeclass-toolbar-additional"/>
<!-- Use onclick instead of normal popup= syntax since the popup
code fires onmousedown, and hence eats our favicon drag events. -->
<box id="tracking-protection-icon-container" align="center"
role="button"
onclick="gProtectionsHandler.handleProtectionsButtonEvent(event);"
onkeypress="gProtectionsHandler.handleProtectionsButtonEvent(event);"
onmouseover="gProtectionsHandler.onTrackingProtectionIconHoveredOrFocused();"
onfocus="gProtectionsHandler.onTrackingProtectionIconHoveredOrFocused();"
tooltip="tracking-protection-icon-tooltip">
<box id="tracking-protection-icon-box">
<image id="tracking-protection-icon"/>
<box id="tracking-protection-icon-animatable-box" flex="1">
<image id="tracking-protection-icon-animatable-image" flex="1"/>
</box>
</box>
<tooltip id="tracking-protection-icon-tooltip">
<description id="tracking-protection-icon-tooltip-label" class="tooltip-label"/>
</tooltip>
</box>
<box id="identity-box" role="button"
align="center"
data-l10n-id="urlbar-identity-button"
pageproxystate="invalid"
onclick="gIdentityHandler.handleIdentityButtonEvent(event);"
onkeypress="gIdentityHandler.handleIdentityButtonEvent(event);"
ondragstart="gIdentityHandler.onDragStart(event);">
<image id="identity-icon"
consumeanchor="identity-box"
onclick="PageProxyClickHandler(event);"/>
<image id="permissions-granted-icon"
data-l10n-id="urlbar-permissions-granted"/>
<box style="pointer-events: none;">
<image class="sharing-icon" id="webrtc-sharing-icon"/>
<image class="sharing-icon geo-icon" id="geo-sharing-icon"/>
<image class="sharing-icon xr-icon" id="xr-sharing-icon"/>
</box>
<box id="blocked-permissions-container" align="center">
<image data-permission-id="geo" class="blocked-permission-icon geo-icon" role="button"
data-l10n-id="urlbar-geolocation-blocked"/>
<image data-permission-id="xr" class="blocked-permission-icon xr-icon" role="button"
data-l10n-id="urlbar-xr-blocked"/>
<image data-permission-id="desktop-notification" class="blocked-permission-icon desktop-notification-icon" role="button"
data-l10n-id="urlbar-web-notifications-blocked"/>
<image data-permission-id="camera" class="blocked-permission-icon camera-icon" role="button"
data-l10n-id="urlbar-camera-blocked"/>
<image data-permission-id="microphone" class="blocked-permission-icon microphone-icon" role="button"
data-l10n-id="urlbar-microphone-blocked"/>
<image data-permission-id="screen" class="blocked-permission-icon screen-icon" role="button"
data-l10n-id="urlbar-screen-blocked"/>
<image data-permission-id="persistent-storage" class="blocked-permission-icon persistent-storage-icon" role="button"
data-l10n-id="urlbar-persistent-storage-blocked"/>
<image data-permission-id="popup" class="blocked-permission-icon popup-icon" role="button"
data-l10n-id="urlbar-popup-blocked"/>
<image data-permission-id="autoplay-media" class="blocked-permission-icon autoplay-media-icon" role="button"
data-l10n-id="urlbar-autoplay-media-blocked"/>
<image data-permission-id="canvas" class="blocked-permission-icon canvas-icon" role="button"
data-l10n-id="urlbar-canvas-blocked"/>
<image data-permission-id="midi" class="blocked-permission-icon midi-icon" role="button"
data-l10n-id="urlbar-midi-blocked"/>
<image data-permission-id="install" class="blocked-permission-icon install-icon" role="button"
data-l10n-id="urlbar-install-blocked"/>
</box>
<box id="notification-popup-box"
hidden="true"
onmouseover="document.getElementById('identity-box').classList.add('no-hover');"
onmouseout="document.getElementById('identity-box').classList.remove('no-hover');"
align="center">
<image id="default-notification-icon" class="notification-anchor-icon" role="button"
data-l10n-id="urlbar-default-notification-anchor"/>
<image id="geo-notification-icon" class="notification-anchor-icon geo-icon" role="button"
data-l10n-id="urlbar-geolocation-notification-anchor"/>
<image id="xr-notification-icon" class="notification-anchor-icon xr-icon" role="button"
data-l10n-id="urlbar-xr-notification-anchor"/>
<image id="autoplay-media-notification-icon" class="notification-anchor-icon autoplay-media-icon" role="button"
data-l10n-id="urlbar-autoplay-notification-anchor"/>
<image id="addons-notification-icon" class="notification-anchor-icon install-icon" role="button"
data-l10n-id="urlbar-addons-notification-anchor"/>
<image id="canvas-notification-icon" class="notification-anchor-icon" role="button"
data-l10n-id="urlbar-canvas-notification-anchor"/>
<image id="indexedDB-notification-icon" class="notification-anchor-icon indexedDB-icon" role="button"
data-l10n-id="urlbar-indexed-db-notification-anchor"/>
<image id="password-notification-icon" class="notification-anchor-icon login-icon" role="button"
data-l10n-id="urlbar-password-notification-anchor"/>
<stack id="plugins-notification-icon" class="notification-anchor-icon" role="button" align="center" data-l10n-id="urlbar-plugins-notification-anchor">
<image class="plugin-icon" />
<image id="plugin-icon-badge" />
</stack>
<image id="web-notifications-notification-icon" class="notification-anchor-icon desktop-notification-icon" role="button"
data-l10n-id="urlbar-web-notification-anchor"/>
<image id="webRTC-shareDevices-notification-icon" class="notification-anchor-icon camera-icon" role="button"
data-l10n-id="urlbar-web-rtc-share-devices-notification-anchor"/>
<image id="webRTC-shareMicrophone-notification-icon" class="notification-anchor-icon microphone-icon" role="button"
data-l10n-id="urlbar-web-rtc-share-microphone-notification-anchor"/>
<image id="webRTC-shareScreen-notification-icon" class="notification-anchor-icon screen-icon" role="button"
data-l10n-id="urlbar-web-rtc-share-screen-notification-anchor"/>
<image id="servicesInstall-notification-icon" class="notification-anchor-icon service-icon" role="button"
data-l10n-id="urlbar-services-notification-anchor"/>
<image id="translate-notification-icon" class="notification-anchor-icon translation-icon" role="button"
data-l10n-id="urlbar-translate-notification-anchor"/>
<image id="translated-notification-icon" class="notification-anchor-icon translation-icon in-use" role="button"
data-l10n-id="urlbar-translated-notification-anchor"/>
<image id="eme-notification-icon" class="notification-anchor-icon drm-icon" role="button"
data-l10n-id="urlbar-eme-notification-anchor"/>
<image id="persistent-storage-notification-icon" class="notification-anchor-icon persistent-storage-icon" role="button"
data-l10n-id="urlbar-persistent-storage-notification-anchor"/>
<image id="midi-notification-icon" class="notification-anchor-icon midi-icon" role="button"
data-l10n-id="urlbar-midi-notification-anchor"/>
<image id="webauthn-notification-icon" class="notification-anchor-icon" role="button"
data-l10n-id="urlbar-web-authn-anchor"/>
<image id="storage-access-notification-icon" class="notification-anchor-icon storage-access-icon" role="button"
data-l10n-id="urlbar-storage-access-anchor"/>
</box>
<image id="remote-control-icon"
data-l10n-id="urlbar-remote-control-notification-anchor"/>
<label id="identity-icon-label" class="plain" crop="center" flex="1"/>
</box>
<box id="urlbar-label-box" align="center">
<label id="urlbar-label-switchtab" class="urlbar-label" data-l10n-id="urlbar-switch-to-tab"/>
<label id="urlbar-label-extension" class="urlbar-label" data-l10n-id="urlbar-extension"/>
<label id="urlbar-label-search-mode" class="urlbar-label"/>
</box>
<html:div id="urlbar-search-mode-indicator">
<html:span id="urlbar-search-mode-indicator-title"/>
<html:div id="urlbar-search-mode-indicator-close"
class="close-button"
role="button"/>
</html:div>
<moz-input-box tooltip="aHTMLTooltip"
class="urlbar-input-box"
flex="1"
role="combobox"
aria-owns="urlbar-results">
<html:input id="urlbar-scheme"
required="required"/>
<html:input id="urlbar-input"
anonid="input"
aria-controls="urlbar-results"
aria-autocomplete="both"
inputmode="mozAwesomebar"
data-l10n-id="urlbar-placeholder"
data-l10n-attrs="placeholder"/>
</moz-input-box>
<image id="urlbar-go-button"
class="urlbar-icon"
onclick="gURLBar.handleCommand(event);"
data-l10n-id="urlbar-go-button"/>
<hbox id="page-action-buttons" context="pageActionContextMenu">
<toolbartabstop/>
<hbox id="contextual-feature-recommendation" role="button" hidden="true">
<hbox id="cfr-label-container">
<label id="cfr-label"/>
</hbox>
<image id="cfr-button"
class="urlbar-icon urlbar-page-action"
role="presentation"/>
</hbox>
<hbox id="userContext-icons" hidden="true">
<label id="userContext-label"/>
<image id="userContext-indicator"/>
</hbox>
<image id="reader-mode-button"
class="urlbar-icon urlbar-page-action"
tooltip="dynamic-shortcut-tooltip"
role="button"
hidden="true"
onclick="AboutReaderParent.buttonClick(event);"/>
<toolbarbutton id="urlbar-zoom-button"
onclick="FullZoom.reset();"
tooltip="dynamic-shortcut-tooltip"
hidden="true"/>
<box id="pageActionSeparator" class="urlbar-page-action"/>
<image id="pageActionButton"
class="urlbar-icon urlbar-page-action"
role="button"
data-l10n-id="urlbar-page-action-button"
onmousedown="BrowserPageActions.mainButtonClicked(event);"
onkeypress="BrowserPageActions.mainButtonClicked(event);"/>
<image id="pocket-button"
class="urlbar-icon urlbar-page-action"
data-l10n-id="urlbar-pocket-button"
role="button"
hidden="true"
onclick="BrowserPageActions.doCommandForAction(PageActions.actionForID('pocket'), event, this);"/>
<hbox id="star-button-box"
hidden="true"
class="urlbar-icon-wrapper urlbar-page-action"
onclick="BrowserPageActions.doCommandForAction(PageActions.actionForID('bookmark'), event, this);">
<image id="star-button"
class="urlbar-icon"
role="button"/>
<hbox id="star-button-animatable-box">
<image id="star-button-animatable-image"
role="presentation"/>
</hbox>
</hbox>
</hbox>
</hbox>
</hbox>
<toolbartabstop/>
</toolbaritem>
<toolbarspring cui-areatype="toolbar" class="chromeclass-toolbar-additional"/>
<!-- This is a placeholder for the Downloads Indicator. It is visible
during the customization of the toolbar, in the palette, and before
the Downloads Indicator overlay is loaded. -->
<toolbarbutton id="downloads-button"
class="toolbarbutton-1 chromeclass-toolbar-additional"
badged="true"
key="key_openDownloads"
onmousedown="DownloadsIndicatorView.onCommand(event);"
onkeypress="DownloadsIndicatorView.onCommand(event);"
ondrop="DownloadsIndicatorView.onDrop(event);"
ondragover="DownloadsIndicatorView.onDragOver(event);"
ondragenter="DownloadsIndicatorView.onDragOver(event);"
label="&downloads.label;"
removable="true"
overflows="false"
cui-areatype="toolbar"
hidden="true"
tooltip="dynamic-shortcut-tooltip"
indicator="true">
<!-- The panel's anchor area is smaller than the outer button, but must
always be visible and must not move or resize when the indicator
state changes, otherwise the panel could change its position or lose
its arrow unexpectedly. -->
<stack id="downloads-indicator-anchor"
consumeanchor="downloads-button">
<box id="downloads-indicator-icon"/>
<stack id="downloads-indicator-progress-outer">
<box id="downloads-indicator-progress-inner"/>
</stack>
</stack>
</toolbarbutton>
<toolbarbutton id="library-button" class="toolbarbutton-1 chromeclass-toolbar-additional subviewbutton-nav"
removable="true"
onmousedown="PanelUI.showSubView('appMenu-libraryView', this, event);"
onkeypress="PanelUI.showSubView('appMenu-libraryView', this, event);"
closemenu="none"
cui-areatype="toolbar"
tooltiptext="&libraryButton.tooltip;"
label="&places.library.title;"/>
<toolbarbutton id="fxa-toolbar-menu-button" class="toolbarbutton-1 chromeclass-toolbar-additional subviewbutton-nav"
badged="true"
onmousedown="gSync.toggleAccountPanel('PanelUI-fxa', this, event)"
onkeypress="gSync.toggleAccountPanel('PanelUI-fxa', this, event)"
consumeanchor="fxa-toolbar-menu-button"
closemenu="none"
label="&fxa.menu.firefoxAccount;"
tooltiptext="&fxa.menu.firefoxAccount;"
cui-areatype="toolbar"
removable="true">
<vbox>
<image id="fxa-avatar-image"/>
</vbox>
</toolbarbutton>
</hbox>
<toolbarbutton id="nav-bar-overflow-button"
class="toolbarbutton-1 chromeclass-toolbar-additional overflow-button"
skipintoolbarset="true"
tooltiptext="&navbarOverflow.label;">
<box class="toolbarbutton-animatable-box">
<image class="toolbarbutton-animatable-image"/>
</box>
</toolbarbutton>
<toolbaritem id="PanelUI-button"
removable="false">
<toolbarbutton id="pioneer-button"
class="toolbarbutton-1"
hidden="true"
badged="true"
onmousedown="switchToTabHavingURI('about:pioneer', true);"
onkeypress="switchToTabHavingURI('about:pioneer', true);"/>
<toolbarbutton id="whats-new-menu-button"
class="toolbarbutton-1"
hidden="true"
badged="true"
onmousedown="PanelUI.showSubView('PanelUI-whatsNew', this, event);"
onkeypress="PanelUI.showSubView('PanelUI-whatsNew', this, event);"/>
<toolbarbutton id="PanelUI-menu-button"
class="toolbarbutton-1"
badged="true"
consumeanchor="PanelUI-button"
label="&brandShortName;"
tooltiptext="&appmenu.tooltip;"/>
</toolbaritem>
<hbox id="window-controls" hidden="true" pack="end" skipintoolbarset="true"
style="-moz-box-ordinal-group: 1000;">
<toolbarbutton id="minimize-button"
data-l10n-id="browser-window-minimize-button"
oncommand="window.minimize();"/>
<toolbarbutton id="restore-button"
data-l10n-id="browser-window-restore-down-button"
oncommand="BrowserFullScreen();"/>
<toolbarbutton id="close-button"
data-l10n-id="browser-window-close-button"
oncommand="BrowserTryToCloseWindow();"/>
</hbox>
<box id="library-animatable-box" class="toolbarbutton-animatable-box">
<image class="toolbarbutton-animatable-image"/>
</box>
</toolbar>
<toolbar id="PersonalToolbar"
mode="icons"
class="browser-toolbar chromeclass-directories"
context="toolbar-context-menu"
toolbarname="&personalbarCmd.label;" accesskey="&personalbarCmd.accesskey;"
aria-label="&personalbar.accessibleLabel;"
collapsed="true"
customizable="true">
<toolbartabstop skipintoolbarset="true"/>
<toolbaritem id="personal-bookmarks"
title="&bookmarksToolbarItem.label;"
cui-areatype="toolbar"
removable="true">
<toolbarbutton id="bookmarks-toolbar-placeholder"
class="bookmark-item"
label="&bookmarksToolbarItem.label;"/>
<toolbarbutton id="bookmarks-toolbar-button"
class="toolbarbutton-1"
flex="1"
label="&bookmarksToolbarItem.label;"
oncommand="PlacesToolbarHelper.onPlaceholderCommand();"/>
<hbox flex="1"
id="PlacesToolbar"
context="placesContext"
onmouseup="BookmarksEventHandler.onMouseUp(event);"
onclick="BookmarksEventHandler.onClick(event, this._placesView);"
oncommand="BookmarksEventHandler.onCommand(event);"
tooltip="bhTooltip"
popupsinherittooltip="true">
<hbox flex="1">
<hbox id="PlacesToolbarDropIndicatorHolder" align="center" collapsed="true">
<image id="PlacesToolbarDropIndicator"
collapsed="true"/>
</hbox>
<scrollbox orient="horizontal"
id="PlacesToolbarItems"
flex="1"/>
<toolbarbutton type="menu"
id="PlacesChevron"
class="toolbarbutton-1"
collapsed="true"
tooltiptext="&bookmarksToolbarChevron.tooltip;"
onpopupshowing="document.getElementById('PlacesToolbar')
._placesView._onChevronPopupShowing(event);">
<menupopup id="PlacesChevronPopup"
is="places-popup"
placespopup="true"
tooltip="bhTooltip" popupsinherittooltip="true"
context="placesContext"/>
</toolbarbutton>
</hbox>
</hbox>
</toolbaritem>
</toolbar>
<html:template id="BrowserToolbarPalette">
<toolbarbutton id="print-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
#ifdef XP_MACOSX
command="cmd_print"
tooltip="dynamic-shortcut-tooltip"
#else
command="cmd_printPreview"
tooltiptext="&printButton.tooltip;"
#endif
label="&printButton.label;"/>
<toolbarbutton id="new-window-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
label="&newNavigatorCmd.label;"
command="cmd_newNavigator"
tooltip="dynamic-shortcut-tooltip"
ondrop="newWindowButtonObserver.onDrop(event)"
ondragover="newWindowButtonObserver.onDragOver(event)"
ondragenter="newWindowButtonObserver.onDragOver(event)"
ondragexit="newWindowButtonObserver.onDragExit(event)"/>
<toolbarbutton id="fullscreen-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
observes="View:FullScreen"
type="checkbox"
label="&fullScreenCmd.label;"
tooltip="dynamic-shortcut-tooltip"/>
<toolbarbutton id="bookmarks-menu-button"
class="toolbarbutton-1 chromeclass-toolbar-additional subviewbutton-nav"
type="menu"
label="&bookmarksMenuButton2.label;"
tooltip="dynamic-shortcut-tooltip"
ondragenter="PlacesMenuDNDHandler.onDragEnter(event);"
ondragover="PlacesMenuDNDHandler.onDragOver(event);"
ondragleave="PlacesMenuDNDHandler.onDragLeave(event);"
ondrop="PlacesMenuDNDHandler.onDrop(event);"
oncommand="BookmarkingUI.onCommand(event);">
<menupopup id="BMB_bookmarksPopup"
is="places-popup-arrow"
class="cui-widget-panel cui-widget-panelview cui-widget-panelWithFooter PanelUI-subView"
placespopup="true"
context="placesContext"
openInTabs="children"
side="top"
onmouseup="BookmarksEventHandler.onMouseUp(event);"
oncommand="BookmarksEventHandler.onCommand(event);"
onclick="BookmarksEventHandler.onClick(event, this.parentNode._placesView);"
onpopupshowing="BookmarkingUI.onPopupShowing(event);
BookmarkingUI.attachPlacesView(event, this);"
tooltip="bhTooltip" popupsinherittooltip="true">
<menuitem id="BMB_viewBookmarksSidebar"
class="menuitem-iconic subviewbutton"
label-show="&viewBookmarksSidebar2.label;"
label-hide="&hideBookmarksSidebar.label;"
oncommand="SidebarUI.toggle('viewBookmarksSidebar');"/>
<!-- NB: temporary solution for bug 985024, this should go away soon. -->
<menuitem id="BMB_bookmarksShowAllTop"
class="menuitem-iconic subviewbutton"
label="&showAllBookmarks2.label;"
command="Browser:ShowAllBookmarks"
key="manBookmarkKb"/>
<menuseparator/>
<menu id="BMB_bookmarksToolbar"
class="menu-iconic bookmark-item subviewbutton"
label="&personalbarCmd.label;"
container="true">
<menupopup id="BMB_bookmarksToolbarPopup"
is="places-popup"
placespopup="true"
nofooterpopup="true"
context="placesContext"
onpopupshowing="if (!this.parentNode._placesView)
new PlacesMenu(event, `place:parent=${PlacesUtils.bookmarks.toolbarGuid}`,
PlacesUIUtils.getViewForNode(this.parentNode.parentNode).options);">
<menuitem id="BMB_viewBookmarksToolbar"
class="menuitem-iconic subviewbutton"
label-show="&viewBookmarksToolbar.label;"
label-hide="&hideBookmarksToolbar.label;"
oncommand="BookmarkingUI.toggleBookmarksToolbar('bookmarks-widget');"/>
<menuseparator/>
<!-- Bookmarks toolbar items -->
</menupopup>
</menu>
<menu id="BMB_unsortedBookmarks"
class="menu-iconic bookmark-item subviewbutton"
label="&bookmarksMenuButton.other.label;"
container="true">
<menupopup id="BMB_unsortedBookmarksPopup"
is="places-popup"
placespopup="true"
nofooterpopup="true"
context="placesContext"
onpopupshowing="if (!this.parentNode._placesView)
new PlacesMenu(event, `place:parent=${PlacesUtils.bookmarks.unfiledGuid}`,
PlacesUIUtils.getViewForNode(this.parentNode.parentNode).options);"/>
</menu>
<menu id="BMB_mobileBookmarks"
class="menu-iconic bookmark-item subviewbutton"
label="&bookmarksMenuButton.mobile.label;"
hidden="true"
container="true">
<menupopup id="BMB_mobileBookmarksPopup"
is="places-popup"
placespopup="true"
nofooterpopup="true"
context="placesContext"
onpopupshowing="if (!this.parentNode._placesView)
new PlacesMenu(event, `place:parent=${PlacesUtils.bookmarks.mobileGuid}`,
PlacesUIUtils.getViewForNode(this.parentNode.parentNode).options);"/>
</menu>
<menuseparator/>
<!-- Bookmarks menu items will go here -->
<menuitem id="BMB_bookmarksShowAll"
class="subviewbutton panel-subview-footer"
label="&showAllBookmarks2.label;"
command="Browser:ShowAllBookmarks"
key="manBookmarkKb"/>
</menupopup>
</toolbarbutton>
<toolbaritem id="search-container"
class="chromeclass-toolbar-additional"
title="&searchItem.title;"
align="center"
flex="175"
persist="width">
<toolbartabstop/>
<searchbar id="searchbar" flex="1"/>
<toolbartabstop/>
</toolbaritem>
</html:template>
</toolbox>
</box>
<hbox id="fullscr-toggler" hidden="true"/>
<hbox flex="1" id="browser">
<vbox id="browser-border-start" hidden="true" layer="true"/>
<vbox id="sidebar-box" hidden="true" class="chromeclass-extrachrome">
<box id="sidebar-header" align="center">
<toolbarbutton id="sidebar-switcher-target" flex="1" class="tabbable">
<image id="sidebar-icon" consumeanchor="sidebar-switcher-target"/>
<label id="sidebar-title" crop="end" flex="1" control="sidebar"/>
<image id="sidebar-switcher-arrow"/>
</toolbarbutton>
<image id="sidebar-throbber"/>
# To ensure the button label's intrinsic width doesn't expand the sidebar
# if the label is long, the button needs flex=1.
# To ensure the button doesn't expand unnecessarily for short labels, the
# spacer should significantly out-flex the button.
<spacer flex="1000"/>
<toolbarbutton id="sidebar-close" class="close-icon tabbable" tooltiptext="&sidebarCloseButton.tooltip;" oncommand="SidebarUI.hide();"/>
</box>
<browser id="sidebar" flex="1" autoscroll="false" disablehistory="true" disablefullscreen="true"
style="min-width: 14em; width: 18em; max-width: 36em;" tooltip="aHTMLTooltip"/>
</vbox>
<splitter id="sidebar-splitter" class="chromeclass-extrachrome sidebar-splitter" hidden="true"/>
<vbox id="appcontent" flex="1">
<!-- gHighPriorityNotificationBox will be added here lazily. -->
<tabbox id="tabbrowser-tabbox"
flex="1" tabcontainer="tabbrowser-tabs">
<tabpanels id="tabbrowser-tabpanels"
flex="1" class="plain" selectedIndex="0"/>
</tabbox>
</vbox>
<vbox id="browser-border-end" hidden="true" layer="true"/>
</hbox>
<html:template id="customizationPanel">
<box id="customization-container" flex="1" hidden="true"><![CDATA[
#include ../../components/customizableui/content/customizeMode.inc.xhtml
]]></box>
</html:template>
<html:div id="fullscreen-and-pointerlock-wrapper">
<html:div id="fullscreen-warning" class="pointerlockfswarning" hidden="true">
<html:div class="pointerlockfswarning-domain-text">
&fullscreenWarning.beforeDomain.label;
<html:span class="pointerlockfswarning-domain"/>
&fullscreenWarning.afterDomain.label;
</html:div>
<html:div class="pointerlockfswarning-generic-text">
&fullscreenWarning.generic.label;
</html:div>
<html:button id="fullscreen-exit-button"
onclick="FullScreen.exitDomFullScreen();">
#ifdef XP_MACOSX
&exitDOMFullscreenMac.button;
#else
&exitDOMFullscreen.button;
#endif
</html:button>
</html:div>
<html:div id="pointerlock-warning" class="pointerlockfswarning" hidden="true">
<html:div class="pointerlockfswarning-domain-text">
&pointerlockWarning.beforeDomain.label;
<html:span class="pointerlockfswarning-domain"/>
&pointerlockWarning.afterDomain.label;
</html:div>
<html:div class="pointerlockfswarning-generic-text">
&pointerlockWarning.generic.label;
</html:div>
</html:div>
</html:div>
<vbox id="browser-bottombox" layer="true">
<!-- gNotificationBox will be added here lazily. -->
</vbox>
<html:div id="a11y-announcement" role="alert"/>
</html:body>
</html>