browser/base/content/browser.xul
author Gavin Sharp <gavin@mozilla.com>
Tue, 26 Aug 2008 19:39:16 -0400
changeset 18431 7fdbccdc1e94321e936dfbe9f9403d45b8027d17
parent 17152 f2c91301a760b048bae9c86fbc2b13d7040471d6
child 18432 6c7c234319ba58c4dc1d876c22df36631337c6c3
permissions -rw-r--r--
Bug 452135: add nsBadCertHandler to packages-static, patch by Manish Singh <manish@flock.com>, r=me

<?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>
#
# 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://browser/skin/" type="text/css"?> 

<?xml-stylesheet href="chrome://global/skin/toolbar.css" 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();"
        contenttitlesetting="true"
        title="&mainWindow.title;"
        titlemodifier="&mainWindow.title;"
        titlemenuseparator="&mainWindow.titlemodifiermenuseparator;"
        windowtype="navigator:browser"
        screenX="4" screenY="4"
        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/x-javascript" src="chrome://browser/content/nsContextMenu.js"/>

#ifdef MOZ_SAFE_BROWSING
<script type="application/x-javascript" src="chrome://browser/content/safebrowsing/sb-loader.js"/>
#endif
<script type="application/x-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="backForwardMenu"
               chromedir="&locale.dir;"
               onpopupshowing="return FillHistoryMenu(event.target);"
               oncommand="gotoHistoryIndex(event);"
               onclick="checkForMiddleClick(this, event);"/>
    <tooltip id="aHTMLTooltip" onpopupshowing="return FillInHTMLTooltip(document.tooltipNode);"/>

    <!-- for search and content formfill/pw manager -->
    <panel type="autocomplete" chromedir="&locale.dir;" id="PopupAutoComplete" noautofocus="true" hidden="true"/>

    <!-- for url bar autocomplete -->
    <panel type="autocomplete-richlistbox" chromedir="&locale.dir;" id="PopupAutoCompleteRichResult" noautofocus="true" hidden="true"/>

    <!-- XXX panel element that has one or more text fields should not be
             top-most panel, for IME users. See bug 433340 comment 100. -->
    <panel id="editBookmarkPanel"
           orient="vertical"
           ignorekeys="true"
           hidden="true"
           noautohide="true"
           onpopupshowing="this.removeAttribute('noautohide');"
           onpopupshown="StarUI.panelShown(event);"
           aria-labelledby="editBookmarkPanelTitle">
      <hbox flex="1" align="top">
        <image id="editBookmarkPanelStarIcon"/>
        <vbox flex="1">
          <label id="editBookmarkPanelTitle" flex="1"/>
          <description id="editBookmarkPanelDescription" flex="1"/>
          <hbox>
            <button id="editBookmarkPanelUndoRemoveButton"
                    hidden="true"
                    oncommand="StarUI.undoRemoveBookmarkCommand();"
                    label="&editBookmark.undo.label;"
                    accesskey="&editBookmark.undo.accessKey;"/>
            <button id="editBookmarkPanelRemoveButton"
                    oncommand="StarUI.removeBookmarkButtonCommand();"
                    label="&editBookmark.removeBookmark.label;"
                    accesskey="&editBookmark.removeBookmark.accessKey;"/>
            <button id="editBookmarkPanelEditButton"
                    oncommand="StarUI.editButtonCommand();"
                    label="&editBookmark.edit.label;"
                    accesskey="&editBookmark.edit.accessKey;"/>
          </hbox>
        </vbox>
      </hbox>
      <vbox id="editBookmarkPanelContent" flex="1" hidden="true"/>
      <hbox flex="1" id="editBookmarkPanelBottomButtons">
        <spacer flex="1"/>
#ifndef XP_UNIX
        <button id="editBookmarkPanelDoneButton"
                label="&editBookmark.done.label;"
                default="true"
                oncommand="StarUI.panel.hidePopup();"/>
        <button id="editBookmarkPanelDeleteButton"
                label="&editBookmark.cancel.label;"
                oncommand="StarUI.cancelButtonOnCommand();"/>
#else
        <button id="editBookmarkPanelDeleteButton"
                label="&editBookmark.cancel.label;"
                oncommand="StarUI.cancelButtonOnCommand();"/>
        <button id="editBookmarkPanelDoneButton"
                label="&editBookmark.done.label;"
                default="true"
                oncommand="StarUI.panel.hidePopup();"/>
#endif
      </hbox>
    </panel>

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

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

    <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>

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

    <popup id="placesContext"/>

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

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

    <panel id="ctrlTab-panel" class="KUI-panel" hidden="true" noautofocus="true">
      <label id="ctrlTab-label" flex="1"/>
      <svg:svg id="ctrlTab-svgRoot">
        <svg:defs>
          <svg:linearGradient id="ctrlTab-fadeGradient" x1="1" y1="1" x2="1" y2="0">
            <svg:stop id="ctrlTab-fadeGradientBottom" offset="0"/>
            <svg:stop id="ctrlTab-fadeGradientTop" offset="1"/>
          </svg:linearGradient>
          <svg:filter id="ctrlTab-iconShadow">
            <svg:feOffset result="shadow" in="SourceAlpha" dx="2" dy="-1"/>
            <svg:feColorMatrix result="transparent-shadow" in="shadow"
                               values="1 0 0 0   0
                                       0 1 0 0   0
                                       0 0 1 0   0
                                       0 0 0 0.5 0"/>
            <svg:feBlend in="SourceGraphic" in2="transparent-shadow"/>
          </svg:filter>
        </svg:defs>
        <svg:g id="ctrlTab-container"/>
        <svg:rect id="ctrlTab-groundFade" fill="url(#ctrlTab-fadeGradient)" width="100%"/>
      </svg:svg>
    </panel>
  </popupset>

  <!-- bookmarks toolbar tooltip -->
  <tooltip id="btTooltip" noautohide="true"
           onpopupshowing="return BookmarksEventHandler.fillInBTTooltip(document.tooltipNode)">
    <vbox id="btTooltipTextBox" flex="1">
      <label id="btTitleText" class="tooltip-label" />
      <label id="btUrlText" class="tooltip-label" />
    </vbox>
  </tooltip>

  <toolbox id="navigator-toolbox" class="toolbox-top" mode="icons"
           defaultmode="icons">
    <!-- Menu -->
    <toolbar type="menubar" id="toolbar-menubar" class="chromeclass-menubar" customizable="true"
#ifdef XP_MACOSX
             defaultset="menubar-items"
#else
             defaultset="menubar-items,spring,throbber-box"
#endif
             mode="icons" iconsize="small" defaulticonsize="small"
             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>

    <toolbarpalette id="BrowserToolbarPalette">

      <toolbaritem id="unified-back-forward-button" class="chromeclass-toolbar-additional"
                   context="backForwardMenu"
                   onbroadcast="document.getElementById('back-forward-dropmarker').disabled =
                                  document.getElementById('Browser:Back').hasAttribute('disabled') &amp;&amp;
                                  document.getElementById('Browser:Forward').hasAttribute('disabled');">
        <toolbarbutton id="back-button" class="toolbarbutton-1"
                       chromedir="&locale.dir;"
                       label="&backCmd.label;"
                       oncommand="BrowserBack(event)"
                       onclick="checkForMiddleClick(this, event);"
                       tooltiptext="&backButton.tooltip;">
          <observes element="Browser:Back" attribute="disabled"/>
        </toolbarbutton>
        <toolbarbutton id="forward-button" class="toolbarbutton-1"
                       chromedir="&locale.dir;"
                       label="&forwardCmd.label;"
                       oncommand="BrowserForward(event)"
                       onclick="checkForMiddleClick(this, event);"
                       tooltiptext="&forwardButton.tooltip;">
          <observes element="Browser:Forward" attribute="disabled"/>
        </toolbarbutton>
        <toolbarbutton id="back-forward-dropmarker" type="menu" chromedir="&locale.dir;"
                       disabled="true" tooltiptext="&backForwardMenu.tooltip;">
          <!-- bug 415444: event.stopPropagation is here for the cloned version of
               this menupopup -->
          <menupopup context=""
                     chromedir="&locale.dir;"
                     position="after_start"
                     onpopupshowing="return FillHistoryMenu(event.target);"
                     oncommand="gotoHistoryIndex(event); event.stopPropagation();"
                     onclick="checkForMiddleClick(this, event);"/>
        </toolbarbutton>
      </toolbaritem>

      <toolbarbutton id="reload-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                     label="&reloadCmd.label;"
                     command="Browser:Reload"
                     tooltiptext="&reloadButton.tooltip;"/>

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

      <toolbarbutton id="home-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                     persist="class"
                     label="&homeButton.label;"
                     ondragover="nsDragAndDrop.dragOver(event, homeButtonObserver);"
                     ondragdrop="nsDragAndDrop.drop(event, homeButtonObserver);"
                     ondragexit="nsDragAndDrop.dragExit(event, homeButtonObserver);"
                     onclick="BrowserGoHome(event);"/>

      <toolbaritem id="urlbar-container" align="center" flex="400" persist="width"
                   title="&locationItem.title;" class="chromeclass-location">
        <textbox id="urlbar" flex="1"
                 chromedir="&locale.dir;"
                 type="autocomplete"
                 autocompletesearch="history"
                 autocompletepopup="PopupAutoCompleteRichResult"
                 completeselectedindex="true"
                 tabscrolling="true"
                 showcommentcolumn="true"
                 showimagecolumn="true"
                 enablehistory="true"
                 maxrows="6"
                 newlines="stripsurroundingwhitespace"
                 oninput="gBrowser.userTypedValue = this.value;"
                 ontextentered="return handleURLBarCommand(param);"
                 ontextreverted="return handleURLBarRevert();"
                 pageproxystate="invalid"
                 onsearchbegin="LocationBarHelpers._searchBegin();"
                 onsearchcomplete="LocationBarHelpers._searchComplete();"
                 onfocus="document.getElementById('identity-box').style.MozUserFocus= 'normal'"
                 onblur="document.getElementById('identity-box').style.MozUserFocus = 'ignore';">
          <!-- 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"
               chromedir="&locale.dir;"
               onclick="getIdentityHandler().handleIdentityButtonEvent(event);"
               onkeypress="getIdentityHandler().handleIdentityButtonEvent(event);">
            <hbox 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"
                       ondraggesture="PageProxyDragGesture(event);"
                       onerror="this.removeAttribute('src');"/>
              </stack>
              <label id="identity-icon-label" crop="center" flex="1"/>
            </hbox>
          </box>
          <hbox id="urlbar-icons">
            <button type="menu"
                    style="-moz-user-focus: none"
                    class="plain urlbar-icon"
                    id="feed-button"
                    chromedir="&locale.dir;"
                    onclick="return FeedHandler.onFeedButtonClick(event);">
              <menupopup position="after_end"
                         onpopupshowing="return FeedHandler.buildFeedList(this);"
                         oncommand="return FeedHandler.subscribeToFeed(null, event);"
                         onclick="checkForMiddleClick(this, event);"/>
            </button>
            <image id="star-button"
                   class="urlbar-icon"
                   onclick="PlacesStarButton.onClick(event);"/>
            <image id="go-button"
                   chromedir="&locale.dir;"
                   class="urlbar-icon"
                   tooltiptext="&goEndCap.tooltip;"
                   onclick="handleURLBarCommand(event);"/>
          </hbox>
        </textbox>
      </toolbaritem>

      <toolbaritem id="search-container" title="&searchItem.title;"
                   align="center" class="chromeclass-toolbar-additional"
                   flex="100" persist="width">
        <searchbar id="searchbar" flex="1" chromedir="&locale.dir;"
                   newlines="replacewithspaces"/>
      </toolbaritem>

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

      <toolbaritem id="throbber-box" title="&throbberItem.title;" align="center" pack="center">
        <button id="navigator-throbber" disabled="true"/>
      </toolbaritem>

      <toolbaritem flex="1" id="personal-bookmarks" title="&bookmarksItem.title;">
         <hbox id="bookmarksBarContent" flex="1"
               type="places"
               place="place:folder=TOOLBAR"
               context="placesContext"
               onclick="BookmarksEventHandler.onClick(event);"
               oncommand="BookmarksEventHandler.onCommand(event);"
               onpopupshowing="BookmarksEventHandler.onPopupShowing(event);"
               tooltip="btTooltip"/>
      </toolbaritem>

        <toolbarbutton id="downloads-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                       observes="Tools:Downloads"
                       ondragdrop="nsDragAndDrop.drop(event, DownloadsButtonDNDObserver); event.stopPropagation()"
                       ondragover="nsDragAndDrop.dragOver(event, DownloadsButtonDNDObserver); event.stopPropagation()"
                       ondragenter="nsDragAndDrop.dragEnter(event, DownloadsButtonDNDObserver); event.stopPropagation()"
                       ondragexit="nsDragAndDrop.dragExit(event, DownloadsButtonDNDObserver); event.stopPropagation()"
                       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;"
                       ondragover="nsDragAndDrop.dragOver(event, bookmarksButtonObserver);"
                       ondragdrop="nsDragAndDrop.drop(event, bookmarksButtonObserver);"
                       ondragexit="nsDragAndDrop.dragExit(event, bookmarksButtonObserver);"/>

        <toolbarbutton id="new-tab-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                       label="&tabCmd.label;"
                       command="cmd_newNavigatorTab"
                       tooltiptext="&newTabButton.tooltip;"
                       ondragover="nsDragAndDrop.dragOver(event, newTabButtonObserver);"
                       ondragdrop="nsDragAndDrop.drop(event, newTabButtonObserver);"
                       ondragexit="nsDragAndDrop.dragExit(event, newTabButtonObserver);"/>

        <toolbarbutton id="new-window-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
                       label="&newNavigatorCmd.label;"
                       command="key_newNavigator"
                       tooltiptext="&newWindowButton.tooltip;"
                       ondragover="nsDragAndDrop.dragOver(event, newWindowButtonObserver);"
                       ondragdrop="nsDragAndDrop.drop(event, newWindowButtonObserver);"
                       ondragexit="nsDragAndDrop.dragExit(event, newWindowButtonObserver);"/>

        <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;"/>

    </toolbarpalette>

    <toolbar id="nav-bar" class="toolbar-primary chromeclass-toolbar"
             toolbarname="&navbarCmd.label;" accesskey="&navbarCmd.accesskey;"
             fullscreentoolbar="true" mode="icons" iconsize="large"
             customizable="true"
#ifdef XP_MACOSX
             defaultset="unified-back-forward-button,reload-button,stop-button,home-button,urlbar-container,search-container,throbber-box"
#else
             defaultset="unified-back-forward-button,reload-button,stop-button,home-button,urlbar-container,search-container,fullscreenflex,window-controls"
#endif
             context="toolbar-context-menu">
#ifndef XP_MACOSX
      <hbox id="fullscreenflex" flex="1" hidden="true" fullscreencontrol="true"/>
      <hbox id="window-controls" hidden="true" fullscreencontrol="true">
        <toolbarbutton id="minimize-button" class="toolbarbutton-1"
                       tooltiptext="&fullScreenMinimize.tooltip;"
                       oncommand="window.minimize();"/>

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

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

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

    <toolbar id="PersonalToolbar"
             mode="icons" iconsize="small" defaulticonsize="small"
             class="chromeclass-directories"
             context="toolbar-context-menu"
             defaultset="personal-bookmarks"
             toolbarname="&personalbarCmd.label;" accesskey="&personalbarCmd.accesskey;"
             customizable="true"/>
  </toolbox>

  <hbox flex="1" id="browser">
    <vbox id="sidebar-box" hidden="true" class="chromeclass-extrachrome">
      <sidebarheader 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"
                  contentcontextmenu="contentAreaContextMenu"
                  onnewtab="BrowserOpenTab();"
                  autocompletepopup="PopupAutoComplete"
                  ondragdrop="nsDragAndDrop.drop(event, contentAreaDNDObserver);"
                  onclick="return contentAreaClick(event, false);"/>
    </vbox>
  </hbox>
#ifdef TOOLBAR_CUSTOMIZATION_SHEET
  <panel id="customizeToolbarSheetPopup" noautohide="true">
    <iframe id="customizeToolbarSheetIFrame"
            style="&dialog.style;"
            hidden="true"/>
  </panel>
#endif

  <vbox id="browser-bottombox">
    <findbar browserid="content" id="FindToolbar"/>
  
    <statusbar class="chromeclass-status" id="status-bar"
               ondragdrop="nsDragAndDrop.drop(event, contentAreaDNDObserver);">
      <statusbarpanel id="statusbar-display" label="" flex="1"/>
      <statusbarpanel class="statusbarpanel-progress" collapsed="true" id="statusbar-progresspanel">
        <progressmeter class="progressmeter-statusbar" id="statusbar-icon" mode="normal" value="0"/>
      </statusbarpanel>
      <statusbarpanel id="download-monitor" class="statusbarpanel-iconic-text"
                      tooltiptext="&downloadMonitor2.tooltip;" hidden="true"
                      command="Tools:Downloads"/>
      <statusbarpanel id="security-button" class="statusbarpanel-iconic-text"
                      ondblclick="if (event.button == 0) displaySecurityInfo();"/>
      <statusbarpanel id="page-report-button" type="menu"
                      class="statusbarpanel-menu-iconic"
                      tooltiptext="&pageReportIcon.tooltip;">
        <menupopup onpopupshowing="gPopupBlockerObserver.fillPopupList(event);">
          <menuitem observes="blockedPopupAllowSite"/>
          <menuitem observes="blockedPopupEditSettings"/>
          <menuitem observes="blockedPopupDontShowMessage"/>
          <menuseparator observes="blockedPopupsSeparator"/>
        </menupopup>
      </statusbarpanel>
    </statusbar>
  </vbox>
</window>