browser/base/content/browser.xul
author Dão Gottwald <dao@mozilla.com>
Fri, 10 Dec 2010 09:34:29 +0100
changeset 59072 a4544a4b322400eb612ea1fd18c88c6bf08379b3
parent 59012 e968527f1f6ffc1892924a0571e3cebe22ffed3a
child 59117 dc366807e083e1c8532d9df4c262c7362870a8c4
permissions -rw-r--r--
Bug 588764 - Add border around content area. r=dolske a=b

#filter substitution
<?xml version="1.0"?>
# -*- Mode: HTML -*-
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is Mozilla Communicator client code, released
# March 31, 1998.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1998-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#   Blake Ross <blake@cs.stanford.edu>
#   David Hyatt <hyatt@mozilla.org>
#   Joe Hewitt <hewitt@netscape.com>
#   Pierre Chanial <chanial@noos.fr>
#   Dean Tessman <dean_tessman@hotmail.com>
#   Johnathan Nightingale <johnath@mozilla.com>
#   Dão Gottwald <dao@mozilla.com>
#   Ehsan Akhgari <ehsan.akhgari@gmail.com>
#   Robert Strong <robert.bugzilla@gmail.com>
#   Rob Campbell <rcampbell@mozilla.com>
#   Patrick Walton <pcwalton@mozilla.com>
#   David Dahl <ddahl@mozilla.com>
#   Frank Yan <fyan@mozilla.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****

<?xml-stylesheet href="chrome://browser/content/browser.css" type="text/css"?>
<?xml-stylesheet href="chrome://browser/content/places/places.css" type="text/css"?>
<?xml-stylesheet href="chrome://global/skin/webConsole.css" type="text/css"?>
<?xml-stylesheet href="chrome://browser/skin/" type="text/css"?>

<?xul-overlay href="chrome://global/content/editMenuOverlay.xul"?>
<?xul-overlay href="chrome://browser/content/baseMenuOverlay.xul"?>
<?xul-overlay href="chrome://browser/content/places/placesOverlay.xul"?>

# All DTD information is stored in a separate file so that it can be shared by
# hiddenWindow.xul.
#include browser-doctype.inc

<window id="main-window"
        xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
        xmlns:svg="http://www.w3.org/2000/svg"
        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
        onload="BrowserStartup()" onunload="BrowserShutdown()" onclose="return WindowIsClosing();"
        title="&mainWindow.title;@PRE_RELEASE_SUFFIX@"
        title_normal="&mainWindow.title;@PRE_RELEASE_SUFFIX@"
#ifdef XP_MACOSX
        title_privatebrowsing="&mainWindow.title;@PRE_RELEASE_SUFFIX@&mainWindow.titlemodifiermenuseparator;&mainWindow.titlePrivateBrowsingSuffix;"
        titledefault="&mainWindow.title;@PRE_RELEASE_SUFFIX@"
        titlemodifier=""
        titlemodifier_normal=""
        titlemodifier_privatebrowsing="&mainWindow.titlePrivateBrowsingSuffix;"
#else
        title_privatebrowsing="&mainWindow.titlemodifier;@PRE_RELEASE_SUFFIX@ &mainWindow.titlePrivateBrowsingSuffix;"
        titlemodifier="&mainWindow.titlemodifier;@PRE_RELEASE_SUFFIX@"
        titlemodifier_normal="&mainWindow.titlemodifier;@PRE_RELEASE_SUFFIX@"
        titlemodifier_privatebrowsing="&mainWindow.titlemodifier;@PRE_RELEASE_SUFFIX@ &mainWindow.titlePrivateBrowsingSuffix;"
#endif
        titlemenuseparator="&mainWindow.titlemodifiermenuseparator;"
        lightweightthemes="true"
        lightweightthemesfooter="browser-bottombox"
        windowtype="navigator:browser"
        screenX="4" screenY="4"
        browsingmode="normal"
        persist="screenX screenY width height sizemode">

# All JS files which are not content (only) dependent that browser.xul
# wishes to include *must* go into the global-scripts.inc file
# so that they can be shared by macBrowserOverlay.xul.
#include global-scripts.inc
<script type="application/javascript" src="chrome://browser/content/nsContextMenu.js"/>

#ifdef MOZ_SAFE_BROWSING
<script type="application/javascript" src="chrome://browser/content/safebrowsing/sb-loader.js"/>
#endif
<script type="application/javascript" src="chrome://global/content/contentAreaUtils.js"/>

<script type="application/javascript" src="chrome://browser/content/places/editBookmarkOverlay.js"/>

# All sets except for popupsets (commands, keys, stringbundles and broadcasters) *must* go into the
# browser-sets.inc file for sharing with hiddenWindow.xul.
#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" label="&reloadTab.label;" accesskey="&reloadTab.accesskey;"
                oncommand="gBrowser.reloadTab(TabContextMenu.contextTab);"/>
      <menuseparator/>
      <menuitem id="context_pinTab" label="&pinAppTab.label;"
                accesskey="&pinAppTab.accesskey;"
                oncommand="gBrowser.pinTab(TabContextMenu.contextTab);"/>
      <menuitem id="context_unpinTab" label="&unpinAppTab.label;" hidden="true"
                accesskey="&unpinAppTab.accesskey;"
                oncommand="gBrowser.unpinTab(TabContextMenu.contextTab);"/>
      <menu id="context_tabViewMenu" label="&moveToGroup.label;"
            accesskey="&moveToGroup.accesskey;">
        <menupopup id="context_tabViewMenuPopup"
                   onpopupshowing="if (event.target == this) TabView.updateContextMenu(TabContextMenu.contextTab, this);">
          <menuseparator id="context_tabViewNamedGroups" hidden="true"/>
          <menuitem id="context_tabViewNewGroup" label="&moveToNewGroup.label;"
                    oncommand="TabView.moveTabTo(TabContextMenu.contextTab, null);"/>
        </menupopup>
      </menu>
      <menuitem id="context_openTabInWindow" label="&moveToNewWindow.label;"
                accesskey="&moveToNewWindow.accesskey;"
                tbattr="tabbrowser-multiple"
                oncommand="gBrowser.replaceTabWithWindow(TabContextMenu.contextTab);"/>
      <menuseparator/>
      <menuitem id="context_reloadAllTabs" label="&reloadAllTabs.label;" accesskey="&reloadAllTabs.accesskey;"
                tbattr="tabbrowser-multiple"
                oncommand="gBrowser.reloadAllTabs();"/>
      <menuitem id="context_bookmarkAllTabs"
                label="&bookmarkAllTabs.label;"
                accesskey="&bookmarkAllTabs.accesskey;"
                command="Browser:BookmarkAllTabs"/>
      <menuitem id="context_closeOtherTabs" label="&closeOtherTabs.label;" accesskey="&closeOtherTabs.accesskey;"
                oncommand="gBrowser.removeAllTabsBut(TabContextMenu.contextTab);"/>
      <menuseparator/>
      <menuitem id="context_undoCloseTab"
                label="&undoCloseTab.label;"
                accesskey="&undoCloseTab.accesskey;"
                observes="History:UndoCloseTab"/>
      <menuitem id="context_closeTab" label="&closeTab.label;" accesskey="&closeTab.accesskey;"
                oncommand="gBrowser.removeTab(TabContextMenu.contextTab, { animate: true });"/>
    </menupopup>

    <!-- bug 415444/582485: event.stopPropagation is here for the cloned version
         of this menupopup -->
    <menupopup id="backForwardMenu"
               onpopupshowing="return FillHistoryMenu(event.target);"
               oncommand="gotoHistoryIndex(event); event.stopPropagation();"
               onclick="checkForMiddleClick(this, event);"/>
    <tooltip id="aHTMLTooltip" onpopupshowing="return FillInHTMLTooltip(document.tooltipNode);"/>

    <!-- for search and content formfill/pw manager -->
    <panel type="autocomplete" id="PopupAutoComplete" noautofocus="true" hidden="true"/>

    <!-- for url bar autocomplete -->
    <panel type="autocomplete-richlistbox" id="PopupAutoCompleteRichResult" noautofocus="true" hidden="true"/>

    <!-- for invalid form error message -->
    <panel id="invalid-form-popup" type="arrow" orient="vertical" noautofocus="true" hidden="true" level="parent">
      <description/>
    </panel>

    <panel id="editBookmarkPanel"
           type="arrow"
           orient="vertical"
           ignorekeys="true"
           hidden="true"
           onpopupshown="StarUI.panelShown(event);"
           aria-labelledby="editBookmarkPanelTitle">
      <row id="editBookmarkPanelHeader" align="center" hidden="true">
        <vbox align="center">
          <image id="editBookmarkPanelStarIcon"/>
        </vbox>
        <vbox>
          <label id="editBookmarkPanelTitle"/>
          <description id="editBookmarkPanelDescription"/>
          <hbox>
            <button id="editBookmarkPanelRemoveButton"
                    class="editBookmarkPanelHeaderButton"
                    oncommand="StarUI.removeBookmarkButtonCommand();"
                    accesskey="&editBookmark.removeBookmark.accessKey;"/>
          </hbox>
        </vbox>
      </row>
      <vbox id="editBookmarkPanelContent" flex="1" hidden="true"/>
      <hbox id="editBookmarkPanelBottomButtons" pack="end">
#ifndef XP_UNIX
        <button id="editBookmarkPanelDoneButton"
                class="editBookmarkPanelBottomButton"
                label="&editBookmark.done.label;"
                default="true"
                oncommand="StarUI.panel.hidePopup();"/>
        <button id="editBookmarkPanelDeleteButton"
                class="editBookmarkPanelBottomButton"
                label="&editBookmark.cancel.label;"
                oncommand="StarUI.cancelButtonOnCommand();"/>
#else
        <button id="editBookmarkPanelDeleteButton"
                class="editBookmarkPanelBottomButton"
                label="&editBookmark.cancel.label;"
                oncommand="StarUI.cancelButtonOnCommand();"/>
        <button id="editBookmarkPanelDoneButton"
                class="editBookmarkPanelBottomButton"
                label="&editBookmark.done.label;"
                default="true"
                oncommand="StarUI.panel.hidePopup();"/>
#endif
      </hbox>
    </panel>

    <panel id="highlighter-panel"
           hidden="true"
           ignorekeys="true"
           noautofocus="true"
           noautohide="true"
           onclick="InspectorUI.stopInspecting();"
           onmousemove="InspectorUI.highlighter.handleMouseMove(event);"
           onMozMousePixelScroll="InspectorUI.highlighter.handlePixelScroll(event);"/>

    <panel id="inspector-tree-panel"
           orient="vertical"
           hidden="true"
           ignorekeys="true"
           noautofocus="true"
           noautohide="true"
           titlebar="normal"
           close="true"
           onpopuphiding="InspectorUI.closeInspectorUI(true);"
           label="&inspectPanelTitle.label;">
      <toolbar id="inspector-toolbar"
               nowindowdrag="true">
        <toolbarbutton id="inspector-inspect-toolbutton"
                       label="&inspectButton.label;"
                       accesskey="&inspectButton.accesskey;"
                       class="toolbarbutton-text"
                       command="Inspector:Inspect"/>
        <toolbarbutton id="inspector-previous-toolbutton"
                       label="&inspectPreviousButton.label;"
                       accesskey="&inspectPreviousButton.accesskey;"
                       class="toolbarbutton-text"
                       command="Inspector:Previous"/>
        <toolbarbutton id="inspector-next-toolbutton"
                       label="&inspectNextButton.label;"
                       accesskey="&inspectNextButton.accesskey;"
                       class="toolbarbutton-text"
                       command="Inspector:Next"/>
        <toolbarbutton id="inspector-style-toolbutton"
                       label="&inspectStyleButton.label;"
                       accesskey="&inspectStyleButton.accesskey;"
                       class="toolbarbutton-text"
                       oncommand="InspectorUI.toggleStylePanel();"/>
        <toolbarbutton id="inspector-dom-toolbutton"
                       label="&inspectObjectButton.label;"
                       accesskey="&inspectObjectButton.accesskey;"
                       class="toolbarbutton-text"
                       oncommand="InspectorUI.toggleDOMPanel();"/>
      </toolbar>
      <hbox id="tree-panel-resizer-box" align="end">
        <spacer flex="1" />
        <resizer dir="bottomend" />
      </hbox>
    </panel>

    <panel id="inspector-style-panel"
           hidden="true"
           orient="vertical"
           ignorekeys="true"
           noautofocus="true"
           noautohide="true"
           titlebar="normal"
           label="&inspectStylePanelTitle.label;">
        <listbox id="inspector-style-listbox" flex="1"/>
        <hbox align="end">
          <spacer flex="1" />
          <resizer dir="bottomend"/>
        </hbox>
    </panel>

    <menupopup id="toolbar-context-menu"
               onpopupshowing="onViewToolbarsPopupShowing(event);">
      <menuseparator/>
      <menuitem command="cmd_ToggleTabsOnTop"
                type="checkbox"
                label="&viewTabsOnTop.label;"
                accesskey="&viewTabsOnTop.accesskey;"/>
      <menuseparator/>
      <menuitem command="cmd_CustomizeToolbars"
                label="&viewCustomizeToolbar.label;"
                accesskey="&viewCustomizeToolbar.accesskey;"/>
    </menupopup>

    <menupopup id="blockedPopupOptions"
               onpopupshowing="gPopupBlockerObserver.fillPopupList(event);">
      <menuitem observes="blockedPopupAllowSite"/>
      <menuitem observes="blockedPopupEditSettings"/>
      <menuitem observes="blockedPopupDontShowMessage"/>
      <menuseparator observes="blockedPopupsSeparator"/>
    </menupopup>

    <menupopup id="autohide-context"
           onpopupshowing="FullScreen.getAutohide(this.firstChild);">
      <menuitem type="checkbox" label="&fullScreenAutohide.label;"
                accesskey="&fullScreenAutohide.accesskey;"
                oncommand="FullScreen.setAutohide();"/>
      <menuseparator/>
      <menuitem label="&fullScreenExit.label;"
                accesskey="&fullScreenExit.accesskey;"
                oncommand="BrowserFullScreen();"/>
    </menupopup>

    <menupopup id="contentAreaContextMenu"
               onpopupshowing="if (event.target != this)
                                 return true;
                               gContextMenu = new nsContextMenu(this, gBrowser);
                               if (gContextMenu.shouldDisplay)
                                 updateEditUIVisibility();
                               return gContextMenu.shouldDisplay;"
               onpopuphiding="if (event.target == this) { gContextMenu = null; updateEditUIVisibility(); }">
#include browser-context.inc
    </menupopup>

    <menupopup id="placesContext"/>

    <panel id="notification-popup" type="arrow" position="after_start"
           hidden="true" orient="vertical"/>

    <!-- Popup for site identity information -->
    <panel id="identity-popup"
           type="arrow"
           hidden="true"
           noautofocus="true"
           onpopupshown="document.getElementById('identity-popup-more-info-button').focus();"
           level="top">
      <hbox id="identity-popup-container" align="top">
        <image id="identity-popup-icon"/>
        <vbox id="identity-popup-content-box">
          <label id="identity-popup-connectedToLabel"
                 class="identity-popup-label"
                 value="&identity.connectedTo;"/>
          <label id="identity-popup-connectedToLabel2"
                 class="identity-popup-label"
                 value="&identity.unverifiedsite2;"/>
          <description id="identity-popup-content-host"
                       class="identity-popup-description"/>
          <label id="identity-popup-runByLabel"
                 class="identity-popup-label"
                 value="&identity.runBy;"/>
          <description id="identity-popup-content-owner"
                       class="identity-popup-description"/>
          <description id="identity-popup-content-supplemental"
                       class="identity-popup-description"/>
          <description id="identity-popup-content-verifier"
                       class="identity-popup-description"/>
          <hbox id="identity-popup-encryption" flex="1">
            <vbox>
              <image id="identity-popup-encryption-icon"/>
            </vbox>
            <description id="identity-popup-encryption-label" flex="1"
                         class="identity-popup-description"/>
          </hbox>
          <!-- Footer button to open security page info -->
          <hbox pack="end">
            <button id="identity-popup-more-info-button"
                    label="&identity.moreInfoLinkText;"
                    onblur="gIdentityHandler.hideIdentityPopup();"
                    oncommand="gIdentityHandler.handleMoreInfoClick(event);"/>
          </hbox>
        </vbox>
      </hbox>
    </panel>

    <tooltip id="urlTooltip">
      <label crop="center" flex="1" class="tooltip-label"/>
    </tooltip>

    <panel id="ctrlTab-panel" class="KUI-panel" hidden="true" norestorefocus="true" level="top">
      <hbox>
        <button class="ctrlTab-preview" flex="1"/>
        <button class="ctrlTab-preview" flex="1"/>
        <button class="ctrlTab-preview" flex="1"/>
        <button class="ctrlTab-preview" flex="1"/>
        <button class="ctrlTab-preview" flex="1"/>
        <button class="ctrlTab-preview" flex="1"/>
      </hbox>
      <hbox pack="center">
        <button id="ctrlTab-showAll" class="ctrlTab-preview" noicon="true"/>
      </hbox>
    </panel>

    <panel id="allTabs-panel" hidden="true" norestorefocus="true" ignorekeys="true"
           onmouseover="allTabs._updateTabCloseButton(event);">
      <hbox id="allTabs-meta" align="center">
        <spacer flex="1"/>
        <textbox id="allTabs-filter"
                 tooltiptext="&allTabs.filter.emptyText;"
                 type="search"
                 oncommand="allTabs.filter();"/>
        <spacer flex="1"/>
        <toolbarbutton class="KUI-panel-closebutton"
                       oncommand="allTabs.close()"
                       tooltiptext="&closeCmd.label;"/>
      </hbox>
      <stack id="allTabs-stack">
        <vbox id="allTabs-container"><hbox/></vbox>
        <toolbarbutton id="allTabs-tab-close-button"
                       class="tabs-closebutton"
                       oncommand="allTabs.closeTab(event);"
                       tooltiptext="&closeCmd.label;"
                       style="visibility:hidden"/>
      </stack>
    </panel>

    <!-- Bookmarks and history tooltip -->
    <tooltip id="bhTooltip"/>

    <panel id="customizeToolbarSheetPopup"
           noautohide="true">
      <iframe id="customizeToolbarSheetIFrame"
              style="&dialog.style;"
              hidden="true"/>
    </panel>

    <tooltip id="tabbrowser-tab-tooltip" onpopupshowing="gBrowser.createTooltip(event);"/>
  </popupset>

#ifdef CAN_DRAW_IN_TITLEBAR
<vbox id="titlebar">
  <hbox id="titlebar-content">
    <hbox id="appmenu-button-container">
      <button id="appmenu-button"
              type="menu"
              label="&brandShortName;"
              style="-moz-user-focus: ignore;">
#include browser-appmenu.inc
      </button>
    </hbox>
    <spacer id="titlebar-spacer" flex="1"/>
    <hbox id="titlebar-buttonbox-container" align="start">
      <hbox id="titlebar-buttonbox">
        <toolbarbutton class="titlebar-button" id="titlebar-min" oncommand="window.minimize();"/>
        <toolbarbutton class="titlebar-button" id="titlebar-max" oncommand="onTitlebarMaxClick();"/>
        <toolbarbutton class="titlebar-button" id="titlebar-close" command="cmd_closeWindow"/>
      </hbox>
    </hbox>
  </hbox>
</vbox>
#endif

<deck flex="1" id="tab-view-deck">
<vbox flex="1">

  <toolbox id="navigator-toolbox"
           defaultmode="icons" mode="icons"
#ifdef WINCE
           defaulticonsize="small" iconsize="small"
#endif
           tabsontop="true"
           persist="tabsontop">
    <!-- Menu -->
    <toolbar type="menubar" id="toolbar-menubar" class="chromeclass-menubar" customizable="true"
             defaultset="menubar-items"
             mode="icons" iconsize="small" defaulticonsize="small"
             lockiconsize="true"
#ifdef MENUBAR_CAN_AUTOHIDE
             toolbarname="&menubarCmd.label;"
             accesskey="&menubarCmd.accesskey;"
#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 by
# hiddenWindow.xul.
#include browser-menubar.inc
      </toolbaritem>
    </toolbar>

    <toolbar id="nav-bar" class="toolbar-primary chromeclass-toolbar"
             toolbarname="&navbarCmd.label;" accesskey="&navbarCmd.accesskey;"
             fullscreentoolbar="true" mode="icons" customizable="true"
#ifdef WINCE
             iconsize="small" defaulticonsize="small"
             defaultset="unified-back-forward-button,urlbar-container,reload-button,stop-button,search-container,home-button,bookmarks-menu-button-container,navigator-throbber,fullscreenflex,window-controls"
#else
             iconsize="large"
             defaultset="unified-back-forward-button,urlbar-container,reload-button,stop-button,search-container,home-button,bookmarks-menu-button-container,fullscreenflex,window-controls"
#endif
             context="toolbar-context-menu">

      <toolbaritem id="unified-back-forward-button" class="chromeclass-toolbar-additional"
                   context="backForwardMenu" removable="true"
                   title="&backForwardItem.title;">
        <toolbarbutton id="back-button" class="toolbarbutton-1"
                       label="&backCmd.label;"
                       command="Browser:BackOrBackDuplicate"
                       onclick="checkForMiddleClick(this, event);"
                       tooltiptext="&backButton.tooltip;"/>
        <toolbarbutton id="forward-button" class="toolbarbutton-1"
                       label="&forwardCmd.label;"
                       command="Browser:ForwardOrForwardDuplicate"
                       onclick="checkForMiddleClick(this, event);"
                       tooltiptext="&forwardButton.tooltip;"/>
      </toolbaritem>

      <toolbaritem id="urlbar-container" align="center" flex="400" persist="width" combined="true"
                   title="&locationItem.title;" class="chromeclass-location" removable="true">
        <textbox id="urlbar" flex="1"
                 placeholder="&urlbar.placeholder;"
                 type="autocomplete"
                 autocompletesearch="history"
                 autocompletesearchparam="enable-actions"
                 autocompletepopup="PopupAutoCompleteRichResult"
                 completeselectedindex="true"
                 tabscrolling="true"
                 showcommentcolumn="true"
                 showimagecolumn="true"
                 enablehistory="true"
                 maxrows="6"
                 newlines="stripsurroundingwhitespace"
                 oninput="gBrowser.userTypedValue = this.value;"
                 ontextentered="this.handleCommand(param);"
                 ontextreverted="return this.handleRevert();"
                 pageproxystate="invalid"
                 onsearchbegin="LocationBarHelpers._searchBegin();"
                 onsearchcomplete="LocationBarHelpers._searchComplete();"
                 onfocus="document.getElementById('identity-box').style.MozUserFocus= 'normal'"
                 onblur="setTimeout(function() document.getElementById('identity-box').style.MozUserFocus = '', 0);">
          <box id="notification-popup-box" hidden="true" align="center">
            <image id="geo-notification-icon" class="notification-anchor-icon" role="button"/>
            <image id="addons-notification-icon" class="notification-anchor-icon" role="button"/>
            <image id="indexedDB-notification-icon" class="notification-anchor-icon" role="button"/>
            <image id="password-notification-icon" class="notification-anchor-icon" role="button"/>
          </box>
          <!-- Use onclick instead of normal popup= syntax since the popup
               code fires onmousedown, and hence eats our favicon drag events.
               We only add the identity-box button to the tab order when the location bar
               has focus, otherwise pressing F6 focuses it instead of the location bar -->
          <box id="identity-box" role="button"
               onclick="gIdentityHandler.handleIdentityButtonEvent(event);"
               onkeypress="gIdentityHandler.handleIdentityButtonEvent(event);"
               ondragstart="gIdentityHandler.onDragStart(event);">
            <hbox id="identity-box-inner" align="center">
              <stack id="page-proxy-stack"
                     onclick="PageProxyClickHandler(event);">
                <image id="urlbar-throbber" busy="false"/>
                <image id="page-proxy-favicon" validate="never"
                       pageproxystate="invalid"
                       onerror="this.removeAttribute('src');"/>
              </stack>
              <hbox id="identity-icon-labels">
                <label id="identity-icon-label" class="plain" flex="1"/>
                <label id="identity-icon-country-label" class="plain"/>
              </hbox>
            </hbox>
          </box>
          <label id="urlbar-display" value="&urlbar.switchToTab.label;"/>
          <hbox id="urlbar-icons">
            <image id="star-button"
                   class="urlbar-icon"
                   onclick="PlacesStarButton.onClick(event);"/>
            <image id="go-button"
                   class="urlbar-icon"
                   tooltiptext="&goEndCap.tooltip;"
                   onclick="gURLBar.handleCommand(event);"/>
          </hbox>
          <toolbarbutton id="urlbar-go-button"
                         class="chromeclass-toolbar-additional"
                         onclick="gURLBar.handleCommand(event);"
                         tooltiptext="&goEndCap.tooltip;"/>
          <toolbarbutton id="urlbar-reload-button"
                         class="chromeclass-toolbar-additional"
                         command="Browser:ReloadOrDuplicate"
                         onclick="checkForMiddleClick(this, event);"
                         tooltiptext="&reloadButton.tooltip;"/>
          <toolbarbutton id="urlbar-stop-button"
                         class="chromeclass-toolbar-additional"
                         command="Browser:Stop"
                         tooltiptext="&stopButton.tooltip;"/>
        </textbox>
      </toolbaritem>

      <toolbarbutton id="reload-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                     label="&reloadCmd.label;" removable="true"
                     command="Browser:ReloadOrDuplicate"
                     onclick="checkForMiddleClick(this, event);"
                     tooltiptext="&reloadButton.tooltip;"/>

      <toolbarbutton id="stop-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                     label="&stopCmd.label;" removable="true"
                     command="Browser:Stop"
                     tooltiptext="&stopButton.tooltip;"/>

      <toolbaritem id="search-container" title="&searchItem.title;"
                   align="center" class="chromeclass-toolbar-additional"
                   flex="100" persist="width" removable="true">
        <searchbar id="searchbar" flex="1"/>
      </toolbaritem>

      <toolbarbutton id="home-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                     persist="class" removable="true"
                     label="&homeButton.label;"
                     ondragover="homeButtonObserver.onDragOver(event)"
                     ondragenter="homeButtonObserver.onDragOver(event)"
                     ondrop="homeButtonObserver.onDrop(event)"
                     ondragexit="homeButtonObserver.onDragExit(event)"
                     onclick="BrowserGoHome(event);"
                     aboutHomeOverrideTooltip="&abouthome.pageTitle;"/>

      <toolbaritem id="bookmarks-menu-button-container"
                   class="chromeclass-toolbar-additional"
                   removable="true"
                   title="&bookmarksMenuButton.label;">
        <toolbarbutton id="bookmarks-menu-button"
                       type="menu"
                       class="toolbarbutton-1"
                       label="&bookmarksMenuButton.label;"
                       tooltiptext="&bookmarksMenuButton.tooltip;"
                       ondragenter="PlacesMenuDNDHandler.onDragEnter(event);"
                       ondragover="PlacesMenuDNDHandler.onDragOver(event);"
                       ondragexit="PlacesMenuDNDHandler.onDragExit(event);"
                       ondrop="PlacesMenuDNDHandler.onDrop(event);">
          <menupopup id="BMB_bookmarksPopup"
                     placespopup="true"
                     context="placesContext"
                     openInTabs="children"
                     oncommand="BookmarksEventHandler.onCommand(event);"
                     onclick="BookmarksEventHandler.onClick(event);"
                     onpopupshowing="BookmarksMenuButton.onPopupShowing(event);
                                     if (!this.parentNode._placesView)
                                       new PlacesMenu(event, 'place:folder=BOOKMARKS_MENU');"
                     tooltip="bhTooltip" popupsinherittooltip="true">
            <menuitem id="BMB_viewBookmarksToolbar"
                      placesanonid="view-toolbar"
                      toolbarId="PersonalToolbar"
                      type="checkbox"
                      oncommand="onViewToolbarCommand(event)"
                      label="&viewBookmarksToolbar.label;"/>
            <menuseparator/>
            <menuitem id="BMB_bookmarksShowAll"
                      label="&showAllBookmarks2.label;"
                      command="Browser:ShowAllBookmarks"
                      key="manBookmarkKb"/>
            <menuseparator/>
            <menuitem id="BMB_bookmarkThisPage"
#ifndef XP_MACOSX
                      class="menuitem-iconic"
#endif
                      label="&bookmarkThisPageCmd.label;"
                      command="Browser:AddBookmarkAs"
                      key="addBookmarkAsKb"/>
            <menuitem id="BMB_subscribeToPageMenuitem"
#ifndef XP_MACOSX
                      class="menuitem-iconic"
#endif
                      label="&subscribeToPageMenuitem.label;"
                      oncommand="return FeedHandler.subscribeToFeed(null, event);"
                      onclick="checkForMiddleClick(this, event);"
                      observes="singleFeedMenuitemState"/>
            <menu id="BMB_subscribeToPageMenupopup"
#ifndef XP_MACOSX
                  class="menu-iconic"
#endif
                  label="&subscribeToPageMenupopup.label;"
                  observes="multipleFeedsMenuState">
              <menupopup id="BMB_subscribeToPageSubmenuMenupopup"
                         onpopupshowing="return FeedHandler.buildFeedList(event.target);"
                         oncommand="return FeedHandler.subscribeToFeed(null, event);"
                         onclick="checkForMiddleClick(this, event);"/>
            </menu>
            <menuseparator/>
            <menu id="BMB_bookmarksToolbar"
                  placesanonid="toolbar-autohide"
                  class="menu-iconic bookmark-item"
                  label="&personalbarCmd.label;"
                  container="true">
              <menupopup id="BMB_bookmarksToolbarPopup"
                         placespopup="true"
                         context="placesContext"
                         onpopupshowing="if (!this.parentNode._placesView)
                                           new PlacesMenu(event, 'place:folder=TOOLBAR');"/>
            </menu>
            <menuseparator/>
            <!-- Bookmarks menu items -->
            <menuseparator builder="end"
                           class="hide-if-empty-places-result"/>
            <menuitem id="BMB_unsortedBookmarks"
                      label="&bookmarksMenuButton.unsorted.label;"
                      oncommand="PlacesCommandHook.showPlacesOrganizer('UnfiledBookmarks');"
                      class="menuitem-iconic"/>
          </menupopup>
        </toolbarbutton>
      </toolbaritem>

      <hbox id="fullscreenflex" flex="1" hidden="true" fullscreencontrol="true"/>
      <hbox id="window-controls" hidden="true" fullscreencontrol="true">
        <toolbarbutton id="minimize-button"
                       tooltiptext="&fullScreenMinimize.tooltip;"
                       oncommand="window.minimize();"/>

        <toolbarbutton id="restore-button"
                       tooltiptext="&fullScreenRestore.tooltip;"
                       oncommand="BrowserFullScreen();"/>

        <toolbarbutton id="close-button"
                       tooltiptext="&fullScreenClose.tooltip;"
                       oncommand="BrowserTryToCloseWindow();"/>
      </hbox>
    </toolbar>

    <toolbarset id="customToolbars" context="toolbar-context-menu"/>

    <toolbar id="PersonalToolbar"
             mode="icons" iconsize="small" defaulticonsize="small"
             lockiconsize="true"
             class="chromeclass-directories"
             context="toolbar-context-menu"
             defaultset="personal-bookmarks"
             toolbarname="&personalbarCmd.label;" accesskey="&personalbarCmd.accesskey;"
             collapsed="true"
             customizable="true">
      <toolbaritem flex="1" id="personal-bookmarks" title="&bookmarksItem.title;"
                   removable="true">
        <hbox flex="1"
              id="PlacesToolbar"
              context="placesContext"
              onclick="BookmarksEventHandler.onClick(event);"
              oncommand="BookmarksEventHandler.onCommand(event);"
              tooltip="bhTooltip"
              popupsinherittooltip="true">
          <toolbarbutton class="bookmark-item bookmarks-toolbar-customize"
                         mousethrough="never"
                         label="&bookmarksToolbarItem.label;"/>
          <hbox flex="1">
            <hbox align="center">
              <image id="PlacesToolbarDropIndicator"
                     mousethrough="always"
                     collapsed="true"/>
            </hbox>
            <scrollbox orient="horizontal"
                       id="PlacesToolbarItems"
                       flex="1"/>
            <toolbarbutton type="menu"
                           id="PlacesChevron"
                           class="chevron"
                           mousethrough="never"
                           collapsed="true"
                           tooltiptext="&bookmarksToolbarChevron.tooltip;"
                           onpopupshowing="document.getElementById('PlacesToolbar')
                                                   ._placesView._onChevronPopupShowing(event);">
              <menupopup id="PlacesChevronPopup"
                         placespopup="true"
                         tooltip="bhTooltip" popupsinherittooltip="true"
                         context="placesContext"/>
            </toolbarbutton>
          </hbox>
        </hbox>
      </toolbaritem>
    </toolbar>

#ifdef MENUBAR_CAN_AUTOHIDE
#ifndef CAN_DRAW_IN_TITLEBAR
#define APPMENU_ON_TABBAR
#endif
#endif


    <toolbar id="TabsToolbar"
             fullscreentoolbar="true"
             customizable="true"
             mode="icons" lockmode="true"
             iconsize="small" defaulticonsize="small" lockiconsize="true"
             aria-label="&tabsToolbar.label;"
             context="toolbar-context-menu"
#ifdef APPMENU_ON_TABBAR
             defaultset="appmenu-toolbar-button,tabbrowser-tabs,new-tab-button,alltabs-button,tabview-button,tabs-closebutton"
#else
             defaultset="tabbrowser-tabs,new-tab-button,alltabs-button,tabview-button,tabs-closebutton"
#endif
             collapsed="true">

#ifdef APPMENU_ON_TABBAR
      <toolbarbutton id="appmenu-toolbar-button"
                     class="chromeclass-toolbar-additional"
                     type="menu"
                     label="&brandShortName;"
                     tooltiptext="&appMenuButton.tooltip;">
#include browser-appmenu.inc
      </toolbarbutton>
#endif

      <tabs id="tabbrowser-tabs"
            class="tabbrowser-tabs"
            tabbrowser="content"
            flex="1"
            setfocus="false"
            tooltip="tabbrowser-tab-tooltip">
        <tab class="tabbrowser-tab" selected="true" fadein="true"/>
      </tabs>

      <toolbarbutton id="new-tab-button"
                     class="toolbarbutton-1 chromeclass-toolbar-additional"
                     label="&tabCmd.label;"
                     command="cmd_newNavigatorTab"
                     onclick="checkForMiddleClick(this, event);"
                     tooltiptext="&newTabButton.tooltip;"
                     ondrop="newTabButtonObserver.onDrop(event)"
                     ondragover="newTabButtonObserver.onDragOver(event)"
                     ondragenter="newTabButtonObserver.onDragOver(event)"
                     ondragexit="newTabButtonObserver.onDragExit(event)"
                     removable="true"/>

      <toolbarbutton id="alltabs-button"
                     class="toolbarbutton-1 chromeclass-toolbar-additional tabs-alltabs-button"
                     type="menu"
                     label="&listAllTabs.label;"
                     tooltiptext="&listAllTabs.label;"
                     removable="true">
        <menupopup id="alltabs-popup"
                   position="after_end"/>
      </toolbarbutton>

      <toolbarbutton id="tabview-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                     label="&tabGroupsButton.label;"
                     command="Browser:ToggleTabView"
                     tooltiptext="&tabGroupsButton.tooltip;"
                     removable="true"
                     observes="tabviewGroupsNumber"/>

      <toolbarbutton id="tabs-closebutton"
                     class="close-button tabs-closebutton"
                     command="cmd_close"
                     label="&closeTab.label;"
                     tooltiptext="&closeTab.label;"/>

    </toolbar>

    <toolbarpalette id="BrowserToolbarPalette">

# Update primaryToolbarButtons in browser/themes/browserShared.inc when adding
# or removing default items with the toolbarbutton-1 class.

      <toolbarbutton id="print-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                     label="&printButton.label;" command="cmd_print"
                     tooltiptext="&printButton.tooltip;"/>

      <toolbaritem id="navigator-throbber" title="&throbberItem.title;" align="center" pack="center"
                   mousethrough="always">
        <image/>
      </toolbaritem>

      <toolbarbutton id="downloads-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                     observes="Tools:Downloads"
                     ondrop="DownloadsButtonDNDObserver.onDrop(event)"
                     ondragover="DownloadsButtonDNDObserver.onDragOver(event)"
                     ondragenter="DownloadsButtonDNDObserver.onDragOver(event)"
                     ondragexit="DownloadsButtonDNDObserver.onDragExit(event)"
                     label="&downloads.label;"
                     tooltiptext="&downloads.tooltip;"/>

      <toolbarbutton id="history-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                     observes="viewHistorySidebar" label="&historyButton.label;"
                     tooltiptext="&historyButton.tooltip;"/>

      <toolbarbutton id="bookmarks-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                     observes="viewBookmarksSidebar"
                     tooltiptext="&bookmarksButton.tooltip;"
                     ondrop="bookmarksButtonObserver.onDrop(event)"
                     ondragover="bookmarksButtonObserver.onDragOver(event)"
                     ondragenter="bookmarksButtonObserver.onDragOver(event)"
                     ondragexit="bookmarksButtonObserver.onDragExit(event)"/>

      <toolbarbutton id="new-window-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                     label="&newNavigatorCmd.label;"
                     command="key_newNavigator"
                     tooltiptext="&newWindowButton.tooltip;"
                     ondrop="newWindowButtonObserver.onDrop(event)"
                     ondragover="newWindowButtonObserver.onDragOver(event)"
                     ondragenter="newWindowButtonObserver.onDragOver(event)"
                     ondragexit="newWindowButtonObserver.onDragExit(event)"/>

      <toolbarbutton id="cut-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                     label="&cutCmd.label;"
                     command="cmd_cut"
                     tooltiptext="&cutButton.tooltip;"/>

      <toolbarbutton id="copy-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                     label="&copyCmd.label;"
                     command="cmd_copy"
                     tooltiptext="&copyButton.tooltip;"/>

      <toolbarbutton id="paste-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                     label="&pasteCmd.label;"
                     command="cmd_paste"
                     tooltiptext="&pasteButton.tooltip;"/>

      <toolbarbutton id="fullscreen-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                     observes="View:FullScreen"
                     type="checkbox"
                     label="&fullScreenCmd.label;"
                     tooltiptext="&fullScreenButton.tooltip;"/>

      <toolbaritem id="zoom-controls" class="chromeclass-toolbar-additional"
                   title="&zoomControls.label;">
        <toolbarbutton id="zoom-out-button" class="toolbarbutton-1"
                       label="&fullZoomReduceCmd.label;"
                       command="cmd_fullZoomReduce"
                       tooltiptext="&zoomOutButton.tooltip;"/>
        <toolbarbutton id="zoom-in-button" class="toolbarbutton-1"
                       label="&fullZoomEnlargeCmd.label;"
                       command="cmd_fullZoomEnlarge"
                       tooltiptext="&zoomInButton.tooltip;"/>
      </toolbaritem>
#ifdef MOZ_SERVICES_SYNC
      <toolbarbutton id="sync-button"
                     class="toolbarbutton-1 chromeclass-toolbar-additional"
                     label="&syncToolbarButton.label;"
                     oncommand="gSyncUI.handleToolbarButton()"/>
#endif
      <toolbarbutton id="feed-button"
                     type="menu"
                     class="toolbarbutton-1 chromeclass-toolbar-additional"
                     disabled="true"
                     label="&feedButton.label;"
                     tooltiptext="&feedButton.tooltip;"
                     onclick="return FeedHandler.onFeedButtonClick(event);">
        <menupopup position="after_end"
                   id="feed-menu"
                   onpopupshowing="return FeedHandler.buildFeedList(this);"
                   oncommand="return FeedHandler.subscribeToFeed(null, event);"
                   onclick="checkForMiddleClick(this, event);"/>
      </toolbarbutton>
    </toolbarpalette>
  </toolbox>

  <hbox flex="1" id="browser">
    <vbox id="browser-border-start" hidden="true" layer="true"/>
    <vbox id="sidebar-box" hidden="true" class="chromeclass-extrachrome">
      <sidebarheader id="sidebar-header" align="center">
        <label id="sidebar-title" persist="value" flex="1" crop="end" control="sidebar"/>
        <image id="sidebar-throbber"/>
        <toolbarbutton class="tabs-closebutton" tooltiptext="&sidebarCloseButton.tooltip;" oncommand="toggleSidebar();"/>
      </sidebarheader>
      <browser id="sidebar" flex="1" autoscroll="false" disablehistory="true"
                style="min-width: 14em; width: 18em; max-width: 36em;"/>
    </vbox>

    <splitter id="sidebar-splitter" class="chromeclass-extrachrome" hidden="true"/>
    <vbox id="appcontent" flex="1">
      <tabbrowser id="content" disablehistory="true"
                  flex="1" contenttooltip="aHTMLTooltip"
                  tabcontainer="tabbrowser-tabs"
                  contentcontextmenu="contentAreaContextMenu"
                  autocompletepopup="PopupAutoComplete"
                  onclick="return contentAreaClick(event, false);"/>
    </vbox>
    <vbox id="browser-border-end" hidden="true" layer="true"/>
  </hbox>

  <vbox id="browser-bottombox" layer="true">
    <toolbar id="addon-bar"
             toolbarname="&addonBarCmd.label;" accesskey="&addonBarCmd.accesskey;"
             collapsed="true"
             class="toolbar-primary chromeclass-toolbar"
             context="toolbar-context-menu" toolboxid="navigator-toolbox"
             mode="icons" iconsize="small" defaulticonsize="small"
             lockiconsize="true"
             defaultset="addonbar-closebutton,addonbar-spring,status-bar"
             customizable="true">
      <toolbarbutton id="addonbar-closebutton"
                     tooltiptext="&addonBarCloseButton.tooltip;"
                     oncommand="setToolbarVisibility(this.parentNode, false);"/>
      <hbox id="addonbar-spring" flex="1"/>
      <statusbar id="status-bar"/>
    </toolbar>
  </vbox>

#ifndef XP_UNIX
  <svg:svg height="0">
    <svg:mask id="winstripe-keyhole-forward-mask" maskContentUnits="objectBoundingBox">
      <svg:rect x="0" y="0" width="1" height="1" fill="white"/>
      <svg:circle cx="-0.46" cy="0.5" r="0.63"/>
    </svg:mask>
    <svg:mask id="winstripe-keyhole-forward-mask-hover" maskContentUnits="objectBoundingBox">
      <svg:rect x="0" y="0" width="1" height="1" fill="white"/>
      <svg:circle cx="-0.35" cy="0.5" r="0.58"/>
    </svg:mask>
  </svg:svg>
#endif
#ifdef XP_MACOSX
  <svg:svg height="0">
    <svg:mask id="pinstripe-tab-ontop-left-curve-mask" maskContentUnits="userSpaceOnUse">
      <svg:circle cx="9" cy="3" r="3" fill="white"/>
      <svg:rect x="9" y="0" width="3" height="3" fill="white"/>
      <svg:rect x="6" y="3" width="6" height="19" fill="white"/>
      <svg:rect x="1" y="17" width="5" height="5" fill="white"/>
      <svg:circle cx="1" cy="17" r="5"/>
      <svg:rect x="0" y="22" width="12" height="1" fill="white"/>
    </svg:mask>
    <svg:mask id="pinstripe-tab-ontop-right-curve-mask" maskContentUnits="userSpaceOnUse">
      <svg:circle cx="3" cy="3" r="3" fill="white"/>
      <svg:rect x="0" y="0" width="3" height="3" fill="white"/>
      <svg:rect x="0" y="3" width="6" height="19" fill="white"/>
      <svg:rect x="6" y="17" width="5" height="5" fill="white"/>
      <svg:circle cx="11" cy="17" r="5"/>
      <svg:rect x="0" y="22" width="12" height="1" fill="white"/>
    </svg:mask>
    <svg:mask id="pinstripe-tab-onbottom-left-curve-mask" maskContentUnits="userSpaceOnUse">
      <svg:circle cx="9" cy="20" r="3" fill="white"/>
      <svg:rect x="9" y="20" width="3" height="3" fill="white"/>
      <svg:rect x="6" y="1" width="6" height="19" fill="white"/>
      <svg:rect x="1" y="1" width="5" height="5" fill="white"/>
      <svg:circle cx="1" cy="6" r="5"/>
      <svg:rect x="0" y="0" width="12" height="1" fill="white"/>
    </svg:mask>
    <svg:mask id="pinstripe-tab-onbottom-right-curve-mask" maskContentUnits="userSpaceOnUse">
      <svg:circle cx="3" cy="20" r="3" fill="white"/>
      <svg:rect x="0" y="20" width="3" height="3" fill="white"/>
      <svg:rect x="0" y="1" width="6" height="19" fill="white"/>
      <svg:rect x="6" y="1" width="5" height="5" fill="white"/>
      <svg:circle cx="11" cy="6" r="5"/>
      <svg:rect x="0" y="0" width="12" height="1" fill="white"/>
    </svg:mask>
  </svg:svg>
#endif

</vbox>
# <iframe id="tab-view"> is dynamically appended as the 2nd child of #tab-view-deck.
#     Introducing the iframe dynamically, as needed, was found to be better than
#     starting with an empty iframe here in browser.xul from a Ts standpoint.
</deck>

</window>