diff options
Diffstat (limited to 'browser/base/content/browser.xhtml')
-rw-r--r-- | browser/base/content/browser.xhtml | 2341 |
1 files changed, 2341 insertions, 0 deletions
diff --git a/browser/base/content/browser.xhtml b/browser/base/content/browser.xhtml new file mode 100644 index 0000000000..da7d002aba --- /dev/null +++ b/browser/base/content/browser.xhtml @@ -0,0 +1,2341 @@ +#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" + xmlns:html="http://www.w3.org/1999/xhtml" + xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" + xmlns="http://www.w3.org/1999/xhtml" +#ifdef XP_MACOSX + data-l10n-id="browser-main-window-mac" +#else + data-l10n-id="browser-main-window" +#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> + <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"/> + <link rel="localization" href="toolkit/printing/printUI.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-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> +<html:body xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> +# 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, to prevent already-handled clicks on menu items from + propagating to the back or forward button. + --> + <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="printPreviewStackTemplate"> + <stack class="previewStack" rendering="true" flex="1" previewtype="primary"> + <vbox class="previewRendering" flex="1"> + <h1 class="print-pending-label" data-l10n-id="printui-loading"></h1> + </vbox> + </stack> + </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> + + <html:template id="dialogStackTemplate"> + <stack class="dialogStack tab-dialog-box" hidden="true"> + <vbox class="dialogTemplate dialogOverlay" align="center" topmost="true" hidden="true"> + <hbox class="dialogBox"> + <browser class="dialogFrame" + autoscroll="false" + disablehistory="true"/> + </hbox> + </vbox> + </stack> + </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> + + <html:template id="pageActionPanelTemplate"> + <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"> + <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> + + <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="appMenu-mainView" class="PanelUI-subView" + descriptionheightworkaround="true"> + <vbox class="panel-subview-body"> + <vbox id="appMenu-addon-banners"/> + <toolbarbutton id="appMenu-update-banner" class="panel-banner-item" + data-l10n-id="appmenuitem-update-banner" + data-l10n-attrs="label-update-downloading" + label-update-available="&updateAvailable.panelUI.label;" + label-update-manual="&updateManual.panelUI.label;" + label-update-unsupported="&updateUnsupported.panelUI.label;" + label-update-restart="&updateRestart.panelUI.label2;" + oncommand="PanelUI._onBannerItemSelected(event)" + wrap="true" + hidden="true"/> + <toolbaritem id="appMenu-fxa-status" + class="sync-ui-item" + defaultlabel="&fxa.menu.signin.label;" + flex="1"> + <image id="appMenu-fxa-avatar"/> + <toolbarbutton id="appMenu-fxa-label" + class="subviewbutton subviewbutton-iconic subviewbutton-nav" + label="&fxa.menu.signin.label;" + closemenu="none" + oncommand="gSync.toggleAccountPanel('PanelUI-fxa', this, event)"/> + </toolbaritem> + <toolbarseparator class="sync-ui-item"/> + <toolbaritem> + <toolbarbutton id="appMenu-protection-report-button" + class="subviewbutton subviewbutton-iconic" + oncommand="gProtectionsHandler.openProtections(); gProtectionsHandler.recordClick('open_full_report', null, 'app_menu');"> + <image id="appMenu-protection-report-icon" class="toolbarbutton-icon"/> + <label id="appMenu-protection-report-text" + class="toolbarbutton-text" + data-l10n-id="appmenuitem-protection-dashboard-title"> + </label> + </toolbarbutton> + </toolbaritem> + <toolbarseparator id="appMenu-tp-separator"/> + <toolbarbutton id="appMenu-new-window-button" + class="subviewbutton subviewbutton-iconic" + label="&newNavigatorCmd.label;" + key="key_newNavigator" + command="cmd_newNavigator"/> + <toolbarbutton id="appMenu-private-window-button" + class="subviewbutton subviewbutton-iconic" + label="&newPrivateWindow.label;" + key="key_privatebrowsing" + command="Tools:PrivateBrowsing"/> +#ifdef NIGHTLY_BUILD + <toolbarbutton id="appMenu-fission-window-button" + class="subviewbutton subviewbutton-iconic" + label="New Fission Window" + accesskey="s" + command="Tools:FissionWindow"/> + <toolbarbutton id="appMenu-non-fission-window-button" + class="subviewbutton subviewbutton-iconic" + label="New Non-Fission Window" + accesskey="s" + command="Tools:NonFissionWindow"/> +#endif + <toolbarbutton id="appMenuRestoreLastSession" + label="&appMenuHistory.restoreSession.label;" + class="subviewbutton subviewbutton-iconic" + command="Browser:RestoreLastSession"/> + <toolbarseparator/> + <toolbaritem id="appMenu-zoom-controls" class="toolbaritem-combined-buttons" closemenu="none"> + <!-- Use a spacer, because panel sizing code gets confused when using CSS methods. --> + <spacer class="before-label"/> + <label value="&fullZoom.label;"/> + <!-- This spacer keeps the scrollbar from overlapping the view. --> + <spacer class="after-label"/> + <toolbarbutton id="appMenu-zoomReduce-button" + class="subviewbutton subviewbutton-iconic" + command="cmd_fullZoomReduce" + data-l10n-id="appmenuitem-zoom-reduce" + tooltip="dynamic-shortcut-tooltip"/> + <toolbarbutton id="appMenu-zoomReset-button" + class="subviewbutton" + command="cmd_fullZoomReset" + tooltip="dynamic-shortcut-tooltip"/> + <toolbarbutton id="appMenu-zoomEnlarge-button" + class="subviewbutton subviewbutton-iconic" + command="cmd_fullZoomEnlarge" + data-l10n-id="appmenuitem-zoom-enlarge" + tooltip="dynamic-shortcut-tooltip"/> + <toolbarseparator orient="vertical"/> + <toolbarbutton id="appMenu-fullscreen-button" + class="subviewbutton subviewbutton-iconic" + label="&fullScreenCmd.label;" + observes="View:FullScreen" + type="checkbox" + closemenu="auto" + onclick="if (event.button == 0) this.closest('panel').hidePopup();" + tooltip="dynamic-shortcut-tooltip"/> + </toolbaritem> + <toolbarseparator/> + <toolbaritem id="appMenu-edit-controls" class="toolbaritem-combined-buttons" closemenu="none"> + <!-- Use a spacer, because panel sizing code gets confused when using CSS methods. --> + <spacer class="before-label"/> + <label value="&editMenu.label;"/> + <!-- This spacer keeps the scrollbar from overlapping the view. --> + <spacer class="after-label"/> + <toolbarbutton id="appMenu-cut-button" + class="subviewbutton subviewbutton-iconic" + command="cmd_cut" + tooltip="dynamic-shortcut-tooltip"/> + <toolbarbutton id="appMenu-copy-button" + class="subviewbutton subviewbutton-iconic" + command="cmd_copy" + tooltip="dynamic-shortcut-tooltip"/> + <toolbarbutton id="appMenu-paste-button" + class="subviewbutton subviewbutton-iconic" + command="cmd_paste" + tooltip="dynamic-shortcut-tooltip"/> + </toolbaritem> + <toolbarseparator/> + <toolbarbutton id="appMenu-library-button" + class="subviewbutton subviewbutton-iconic subviewbutton-nav" + label="&places.library.title;" + closemenu="none" + oncommand="PanelUI.showSubView('appMenu-libraryView', this)"/> + <toolbarbutton id="appMenu-logins-button" + class="subviewbutton subviewbutton-iconic" + label="&logins.label;" + oncommand="LoginHelper.openPasswordManager(window, { entryPoint: 'mainmenu' })" + /> + <toolbarbutton id="appMenu-addons-button" + class="subviewbutton subviewbutton-iconic" + label="&addons.label;" + key="key_openAddons" + command="Tools:Addons" + /> + <toolbarbutton id="appMenu-preferences-button" + class="subviewbutton subviewbutton-iconic" +#ifdef XP_WIN + label="&preferencesCmd2.label;" +#else + label="&preferencesCmdUnix.label;" +#ifdef XP_MACOSX + key="key_preferencesCmdMac" +#endif +#endif + oncommand="openPreferences()" + /> + <toolbarbutton id="appMenu-customize-button" + class="subviewbutton subviewbutton-iconic" + data-l10n-id="appmenuitem-customize-mode" + command="cmd_CustomizeToolbars" + /> + <toolbarseparator/> + <toolbarbutton id="appMenu-open-file-button" + class="subviewbutton" + label="&openFileCmd.label;" + key="openFileKb" + command="Browser:OpenFile" + /> + <toolbarbutton id="appMenu-save-file-button" + class="subviewbutton" + data-l10n-id="appmenuitem-save-page" + key="key_savePage" + command="Browser:SavePage" + /> + <toolbarbutton id="appMenu-print-button" + class="subviewbutton subviewbutton-iconic" + label="&printCmd.label;" + key="printKb" +#ifdef XP_MACOSX + command="cmd_print" +#else + command="cmd_printPreview" +#endif + /> + <toolbarseparator/> + <toolbarbutton id="appMenu-find-button" + class="subviewbutton subviewbutton-iconic" + label="&findOnCmd.label;" + key="key_find" + command="cmd_find"/> + <toolbarbutton id="appMenu-more-button" + class="subviewbutton subviewbutton-nav" + label="&moreMenu.label;" + closemenu="none" + oncommand="PanelUI.showSubView('appMenu-moreView', this)"/> + <toolbarbutton id="appMenu-developer-button" + class="subviewbutton subviewbutton-nav" + label="&webDeveloperMenu.label;" + closemenu="none" + oncommand="PanelUI.showSubView('PanelUI-developer', this)"/> + <toolbarbutton id="appMenu-whatsnew-button" + class="subviewbutton subviewbutton-iconic subviewbutton-nav" + hidden="true" + closemenu="none" + oncommand="PanelUI.showSubView('PanelUI-whatsNew', this)"/> + <toolbarbutton id="appMenu-help-button" + class="subviewbutton subviewbutton-iconic subviewbutton-nav" + label="&appMenuHelp.label;" + closemenu="none" + oncommand="PanelUI.showSubView('PanelUI-helpView', this)"/> +#ifndef XP_MACOSX + <toolbarseparator/> + <toolbarbutton id="appMenu-quit-button" + class="subviewbutton subviewbutton-iconic" +#ifdef XP_WIN + data-l10n-id="menu-quit-button-win" +#else + data-l10n-id="menu-quit-button" +#endif + key="key_quitApplication" + command="cmd_quitApplication"/> +#endif + </vbox> + </panelview> + + <!-- This is a placeholder app menu which should be replaced with the "real" + Proton app menu before the Proton pref starts getting enabled. --> + <panelview id="appMenu-protonMainView" class="PanelUI-subView" + descriptionheightworkaround="true"> + <vbox class="panel-subview-body"> + <toolbarbutton id="appMenu-new-window-button2" + class="subviewbutton subviewbutton-iconic" + label="&newNavigatorCmd.label;" + key="key_newNavigator" + command="cmd_newNavigator"/> + <toolbarbutton id="appMenu-library-button2" + class="subviewbutton subviewbutton-iconic subviewbutton-nav" + label="&places.library.title;" + closemenu="none" + oncommand="PanelUI.showSubView('appMenu-libraryView', this)"/> + <toolbarseparator/> + <toolbarbutton id="appMenu-quit-button2" + class="subviewbutton subviewbutton-iconic" +#ifdef XP_WIN + data-l10n-id="menu-quit-button-win" +#else + data-l10n-id="menu-quit-button" +#endif + key="key_quitApplication" + command="cmd_quitApplication"/> + </vbox> + </panelview> + + <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" + data-l10n-id="bookmarks-tools" + class="subviewbutton subviewbutton-iconic subviewbutton-nav" + closemenu="none" + oncommand="BookmarkingUI.showBookmarkingTools(this);"/> + <toolbarbutton id="panelMenu_searchBookmarks" + data-l10n-id="bookmarks-search" + class="subviewbutton subviewbutton-iconic" + oncommand="PlacesCommandHook.searchBookmarks(); PanelUI.hide();"/> + <toolbarseparator/> + <label id="panelMenu_recentBookmarks" + data-l10n-id="bookmarks-recent-bookmarks" + 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" + data-l10n-id="bookmarks-show-all-bookmarks" + 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" data-l10n-id="profiler-popup-title" /> + <vbox class="PanelUI-profiler-toolbarbutton-container"> + <toolbarbutton id="PanelUI-profiler-info-button" + class="panel-info-button" + data-l10n-id="profiler-popup-reveal-description-button"> + <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 data-l10n-id="profiler-popup-description-title" /> + <description data-l10n-id="profiler-popup-description" /> + <hbox> + <button id="PanelUI-profiler-learn-more" + tabindex="-1" + data-l10n-id="profiler-popup-learn-more" /> + <space flex="1" /> + </hbox> + </vbox> + </hbox> + </vbox> + <vbox id="PanelUI-profiler-content"> + <vbox id="PanelUI-profiler-content-settings"> + <label class="PanelUI-profiler-content-label" + data-l10n-id="profiler-popup-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" + data-l10n-id="profiler-popup-presets-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" + data-l10n-id="profiler-popup-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" data-l10n-id="profiler-popup-recording-screen" /> + <spacer flex="1" /> + </hbox> + <description id="PanelUI-profiler-locked" + data-l10n-id="profiler-popup-disabled" /> + <hbox id="PanelUI-profiler-inactive" class="PanelUI-profiler-buttons"> + <spacer flex="1" /> + <vbox> + <button data-l10n-id="profiler-popup-start-recording-button" + id="PanelUI-profiler-startRecording" + class="PanelUI-profiler-button PanelUI-profiler-button-primary" /> + <label class="PanelUI-profiler-shortcut" + data-l10n-id="profiler-popup-start-shortcut" /> + </vbox> + <spacer flex="1" /> + </hbox> + <hbox id="PanelUI-profiler-active" class="PanelUI-profiler-buttons"> + <vbox flex="1"> + <button data-l10n-id="profiler-popup-discard-button" + class="PanelUI-profiler-button" + id="PanelUI-profiler-stopAndDiscard" /> + <label class="PanelUI-profiler-shortcut" + data-l10n-id="profiler-popup-start-shortcut" /> + </vbox> + <vbox flex="1"> + <button data-l10n-id="profiler-popup-capture-button" + class="PanelUI-profiler-button PanelUI-profiler-button-primary" + id="PanelUI-profiler-stopAndCapture" /> + <label data-l10n-id="profiler-popup-capture-shortcut" + class="PanelUI-profiler-shortcut" /> + </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-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="more-menu-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" + crop="end" + value="&fxa.menu.signin.label;" + defaultLabel="&fxa.menu.signin.label;"/> + <label id="fxa-menu-header-description" + crop="end" + value="&fxa.menu.turnOnSync.label;" + defaultLabel="&fxa.menu.turnOnSync.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" + data-l10n-id="library-bookmarks-menu" + 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" + data-l10n-id="bookmarks-tools-menu-button-visibility" + data-l10n-args='{ "isVisible": false }' + oncommand="BookmarkingUI.toggleMenuButtonInToolbar(this);"/> + <toolbarbutton id="panelMenu_viewBookmarksSidebar" + class="subviewbutton subviewbutton-iconic" + data-l10n-id="bookmarks-tools-sidebar-visibility" + data-l10n-args='{ "isVisible": false }' + key="viewBookmarksSidebarKb" + oncommand="SidebarUI.toggle('viewBookmarksSidebar', this);"> + <observes element="sidebar-box" attribute="positionend"/> + </toolbarbutton> + <toolbarbutton id="panelMenu_viewBookmarksToolbar" + class="subviewbutton subviewbutton-iconic" + data-l10n-id="bookmarks-tools-toolbar-visibility" + data-l10n-args='{ "isVisible": false }' + 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" + onclick="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(); FullZoom.resetScalingZoom();" + 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="ion-button" + class="toolbarbutton-1" + hidden="true" + badged="true" + tooltiptext="Ion" + onmousedown="switchToTabHavingURI('about:ion', true);" + onkeypress="switchToTabHavingURI('about:ion', 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" + data-l10n-id="bookmarks-toolbar" + data-l10n-attrs="toolbarname" + customizable="true"> + <toolbartabstop skipintoolbarset="true"/> + + <hbox id="personal-toolbar-empty" skipintoolbarset="true" removable="false" hidden="true"> + <description id="personal-toolbar-empty-description" + data-l10n-id="bookmarks-toolbar-empty-message" + onclick="BookmarkingUI.openLibraryIfLinkClicked(event);" + onkeydown="BookmarkingUI.openLibraryIfLinkClicked(event);"> + <html:a data-l10n-name="manage-bookmarks" class="text-link" tabindex="0"/> + </description> + </hbox> + + <toolbaritem id="personal-bookmarks" + data-l10n-id="bookmarks-toolbar-placeholder" + cui-areatype="toolbar" + removable="true"> + <toolbarbutton id="bookmarks-toolbar-placeholder" + class="bookmark-item" + data-l10n-id="bookmarks-toolbar-placeholder-button"/> + <toolbarbutton id="bookmarks-toolbar-button" + class="toolbarbutton-1" + flex="1" + data-l10n-id="bookmarks-toolbar-placeholder-button" + 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" + data-l10n-id="bookmarks-toolbar-chevron" + 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="import-button" + class="toolbarbutton-1 chromeclass-toolbar-additional" + oncommand="MigrationUtils.showMigrationWizard(window, [MigrationUtils.MIGRATION_ENTRYPOINT_BOOKMARKS_TOOLBAR]);" + data-l10n-id="browser-import-button2"/> + + <toolbarbutton id="print-button" class="toolbarbutton-1 chromeclass-toolbar-additional" +#ifdef XP_MACOSX + command="cmd_print" +#else + command="cmd_printPreview" + print-button-title="&printButton.tooltip;" +#endif + keepbroadcastattributeswhencustomizing="true" + tooltip="dynamic-shortcut-tooltip" + 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" + data-l10n-id="bookmarks-menu-button" + 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" + type="arrow" + 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" + data-l10n-id="bookmarks-tools-sidebar-visibility" + data-l10n-args='{ "isVisible": false }' + oncommand="SidebarUI.toggle('viewBookmarksSidebar');"/> + <!-- NB: temporary solution for bug 985024, this should go away soon. --> + <menuitem id="BMB_bookmarksShowAllTop" + class="menuitem-iconic subviewbutton" + data-l10n-id="bookmarks-show-all-bookmarks" + command="Browser:ShowAllBookmarks" + key="manBookmarkKb"/> + <menuseparator/> + <menu id="BMB_bookmarksToolbar" + class="menu-iconic bookmark-item subviewbutton" + data-l10n-id="bookmarks-toolbar-menu" + 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" + data-l10n-id="bookmarks-tools-toolbar-visibility" + data-l10n-args='{ "isVisible": false }' + oncommand="BookmarkingUI.toggleBookmarksToolbar('bookmarks-widget');"/> + <menuseparator/> + <!-- Bookmarks toolbar items --> + </menupopup> + </menu> + <menu id="BMB_unsortedBookmarks" + class="menu-iconic bookmark-item subviewbutton" + data-l10n-id="bookmarks-other-bookmarks-menu" + 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" + data-l10n-id="bookmarks-mobile-bookmarks-menu" + 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" + data-l10n-id="bookmarks-show-all-bookmarks" + 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 flex="1" id="browser"> + <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> + </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"> + <html:span class="pointerlockfswarning-domain" data-l10n-name="domain"/> + </html:div> + <html:div class="pointerlockfswarning-generic-text" + data-l10n-id="fullscreen-warning-no-domain"></html:div> + <html:button id="fullscreen-exit-button" + onclick="FullScreen.exitDomFullScreen();" +#ifdef XP_MACOSX + data-l10n-id="fullscreen-exit-mac-button" +#else + data-l10n-id="fullscreen-exit-button" +#endif + > + </html:button> + </html:div> + + <html:div id="pointerlock-warning" class="pointerlockfswarning" hidden="true"> + <html:div class="pointerlockfswarning-domain-text"> + <html:span class="pointerlockfswarning-domain" data-l10n-name="domain"/> + </html:div> + <html:div class="pointerlockfswarning-generic-text" + data-l10n-id="pointerlock-warning-no-domain"></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"/> + + <!-- 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> |