gecko-dev/mail/base/content/messenger.xul
scott%scott-macgregor.org 84c5c040f2 Better way to fix Bug #234707 --> stop the message pane splitter from jiggling up and down.
Thanks to neil for the suggestion.

still needs some work though. i'd rather not have to remove the flex when not in the classic view...
2004-02-24 22:41:31 +00:00

380 lines
19 KiB
XML

<?xml version="1.0"?>
# The contents of this file are subject to the Netscape 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/NPL/
#
# 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 Netscape are
# Copyright (C) 1998-1999 Netscape Communications Corporation. All
# Rights Reserved.
<?xml-stylesheet href="chrome://messenger/skin/mailWindow1.css" type="text/css"?>
<?xul-overlay href="chrome://global/content/globalOverlay.xul"?>
<?xul-overlay href="chrome://communicator/content/utilityOverlay.xul"?>
<?xul-overlay href="chrome://messenger/content/msgHdrViewOverlay.xul"?>
<?xul-overlay href="chrome://messenger/content/mailWindowOverlay.xul"?>
<?xul-overlay href="chrome://messenger/content/mailOverlay.xul"?>
<?xul-overlay href="chrome://communicator/content/contentAreaContextOverlay.xul"?>
<!DOCTYPE window [
<!ENTITY % brandDTD SYSTEM "chrome://global/locale/brand.dtd" >
%brandDTD;
<!ENTITY % messengerDTD SYSTEM "chrome://messenger/locale/messenger.dtd" >
%messengerDTD;
]>
<window id="messengerWindow"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
xmlns:nc="http://home.netscape.com/NC-rdf#"
title="&messengerWindow.title;"
titledefault="&titledefault.label;"
titlemenuseparator="&titleSeparator.label;"
onload="OnLoadMessenger()"
onunload="OnUnloadMessenger()"
width="750"
height="500"
screenX="10" screenY="10"
persist="width height screenX screenY sizemode"
windowtype="mail:3pane">
<stringbundleset id="stringbundleset">
<stringbundle id="bundle_messenger" src="chrome://messenger/locale/messenger.properties"/>
<stringbundle id="bundle_brand" src="chrome://global/locale/brand.properties"/>
<stringbundle id="bundle_search" src="chrome://messenger/locale/search.properties"/>
</stringbundleset>
<script type="application/x-javascript" src="chrome://messenger/content/widgetglue.js"/>
<script type="application/x-javascript" src="chrome://messenger/content/commandglue.js"/>
<script type="application/x-javascript" src="chrome://messenger/content/shareglue.js"/>
<script type="application/x-javascript" src="chrome://messenger/content/msgViewNavigation.js"/>
<script type="application/x-javascript" src="chrome://messenger/content/mailWindow.js"/>
<script type="application/x-javascript" src="chrome://messenger/content/msgMail3PaneWindow.js"/>
<script type="application/x-javascript" src="chrome://messenger/content/mail3PaneWindowCommands.js"/>
<script type="application/x-javascript" src="chrome://messenger/content/mailContextMenus.js"/>
<script type="application/x-javascript" src="chrome://messenger/content/messengerdnd.js"/>
<script type="application/x-javascript" src="chrome://messenger/content/accountUtils.js"/>
<script type="application/x-javascript" src="chrome://messenger/content/msgAccountCentral.js"/>
<script type="application/x-javascript" src="chrome://messenger/content/searchBar.js"/>
<script type="application/x-javascript" src="chrome://communicator/content/contentAreaClick.js"/>
<script type="application/x-javascript" src="chrome://global/content/nsTransferable.js"/>
<script type="application/x-javascript" src="chrome://global/content/nsDragAndDrop.js"/>
<!-- move needed functions into a single js file -->
<script type="application/x-javascript" src="chrome://messenger/content/threadPane.js"/>
<commandset id="mailCommands">
<commandset id="mailFileMenuItems"/>
<commandset id="mailViewMenuItems"/>
<commandset id="mailEditMenuItems"/>
<commandset id="mailEditContextMenuItems"/>
<commandset id="mailSearchMenuItems"/>
<commandset id="mailGoMenuItems"/>
<commandset id="mailMessageMenuItems"/>
<commandset id="mailToolbarItems"/>
<commandset id="mailGetMsgMenuItems"/>
<commandset id="mailMarkMenuItems"/>
<commandset id="mailLabelMenuItems"/>
<commandset id="mailToolsMenuItems"/>
<commandset id="globalEditMenuItems"/>
<commandset id="selectEditMenuItems"/>
<commandset id="clipboardEditMenuItems"/>
<commandset id="FocusRingUpdate_Mail"
commandupdater="true"
events="focus"
oncommandupdate="FocusRingUpdate_Mail()"/>
<commandset id="tasksCommands"/>
#ifdef XP_MACOSX
<commandset id="macWindowMenuItems"/>
#endif
</commandset>
<broadcasterset id="mailBroadcasters">
<!-- File Menu -->
<broadcaster id="Communicator:WorkMode"/>
<!-- Edit Menu -->
</broadcasterset>
<keyset id="mailKeys">
<keyset id="tasksKeys"/>
</keyset>
<popup id="threadPaneContext"/>
<popup id="folderPaneContext"/>
<popup id="attachmentListContext"/>
<popup id="toolbar-context-menu"/>
<tooltip id="attachmentListTooltip"/>
<popup id="emailAddressPopup" popupanchor="bottomleft" onpopupshowing="goUpdateCommand('cmd_createFilterFromPopup')">
<menuitem label="&AddToAddressBook.label;"
accesskey="&AddToAddressBook.accesskey;"
oncommand="AddNodeToAddressBook(document.popupNode)"/>
<menuitem label="&SendMailTo.label;"
accesskey="&SendMailTo.accesskey;"
oncommand="SendMailToNode(document.popupNode)"/>
<menuitem label="&CopyEmailAddress.label;"
accesskey="&CopyEmailAddress.accesskey;"
oncommand="CopyEmailAddress(document.popupNode)"/>
<menuitem label="&CreateFilter.label;"
accesskey="&CreateFilter.accesskey;"
oncommand="CreateFilter(document.popupNode)"
observes="cmd_createFilterFromPopup"/>
</popup>
<popup id="allHeadersPopup" onpopupshowing="return fillAllHeadersPopup(document.popupNode);" popupanchor="bottomleft">
<hbox id="allHeadersPopupContainer">
</hbox>
</popup>
<popup id="messagePaneContext"/>
<toolbox id="mail-toolbox" class="toolbox-top">
</toolbox>
<!-- when we move to the alternate 3-pane, mailContentWrapper gets toggled to a vertical orientation -->
<box id="mailContentWrapper" orient="horizontal" flex="1">
<hbox id="mailContent" flex="1">
<vbox id="folderPaneBox" minwidth="100" width="200" persist="collapsed width">
<label id="folderColumnLabel" hidden="true" value="&folderColumn.label;"/>
<hbox id="folderPaneHeaderContainer">
<sidebarheader id="folderPaneHeader" align="center" flex="1">
<label id="folderpane-title" value="&folderPaneHeader.label;"/>
</sidebarheader>
</hbox>
<tree id="folderTree" class="plain focusring" flex="1" seltype="single" selstyle="primary"
context="folderPaneContext"
disableKeyNavigation="true"
datasources="rdf:null"
statedatasource="rdf:mailnewsfolders"
flags="dont-build-content"
ondraggesture="BeginDragFolderTree(event);"
onselect="FolderPaneSelectionChange();">
<template>
<rule>
<conditions>
<content uri="?container"/>
<member container="?container" child="?member" />
</conditions>
<bindings>
<binding subject="?member"
predicate="http://home.netscape.com/NC-rdf#FolderTreeName"
object="?folderTreeName" />
<binding subject="?member"
predicate="http://home.netscape.com/NC-rdf#FolderTreeName?sort=true"
object="?folderTreeNameSort" />
<binding subject="?member"
predicate="http://home.netscape.com/NC-rdf#FolderTreeSimpleName"
object="?folderTreeSimpleName" />
<binding subject="?member"
predicate="http://home.netscape.com/NC-rdf#SpecialFolder"
object="?specialFolder" />
<binding subject="?member"
predicate="http://home.netscape.com/NC-rdf#BiffState"
object="?biffState" />
<binding subject="?member"
predicate="http://home.netscape.com/NC-rdf#IsServer"
object="?isServer" />
<binding subject="?member"
predicate="http://home.netscape.com/NC-rdf#NewMessages"
object="?newMessages" />
<binding subject="?member"
predicate="http://home.netscape.com/NC-rdf#HasUnreadMessages"
object="?hasUnreadMessages" />
<binding subject="?member"
predicate="http://home.netscape.com/NC-rdf#SubfoldersHaveUnreadMessages"
object="?subfoldersHaveUnreadMessages" />
<binding subject="?member"
predicate="http://home.netscape.com/NC-rdf#IsSecure"
object="?isSecure" />
<binding subject="?member"
predicate="http://home.netscape.com/NC-rdf#ServerType"
object="?serverType" />
<binding subject="?member"
predicate="http://home.netscape.com/NC-rdf#RedirectorType"
object="?redirectorType" />
<binding subject="?member"
predicate="http://home.netscape.com/NC-rdf#NoSelect"
object="?noSelect" />
<binding subject="?member"
predicate="http://home.netscape.com/NC-rdf#ImapShared"
object="?imapShared" />
<binding subject="?member"
predicate="http://home.netscape.com/NC-rdf#TotalUnreadMessages"
object="?unreadCount" />
<binding subject="?member"
predicate="http://home.netscape.com/NC-rdf#TotalMessages"
object="?totalCount" />
<binding subject="?member"
predicate="http://home.netscape.com/NC-rdf#FolderSize"
object="?folderSize" />
</bindings>
<action>
<treechildren>
<treeitem uri="?member">
<treerow>
<treecell id="folderNameCell"
label="?folderTreeName"
properties="specialFolder-?specialFolder biffState-?biffState isServer-?isServer newMessages-?newMessages hasUnreadMessages-?hasUnreadMessages subfoldersHaveUnreadMessages-?subfoldersHaveUnreadMessages isSecure-?isSecure serverType-?serverType redirectorType-?redirectorType noSelect-?noSelect imapShared-?imapShared"/>
<treecell label="?unreadCount"
properties="hasUnreadMessages-?hasUnreadMessages subfoldersHaveUnreadMessages-?subfoldersHaveUnreadMessages"/>
<treecell label="?totalCount"
properties="hasUnreadMessages-?hasUnreadMessages subfoldersHaveUnreadMessages-?subfoldersHaveUnreadMessages"/>
<treecell label="?folderSize"/>
</treerow>
</treeitem>
</treechildren>
</action>
</rule>
</template>
<treecols>
<treecol id="folderNameCol"
flex="5"
crop="center"
persist="width"
hideheader="true"
ignoreincolumnpicker="true"
primary="true"
sort="?folderTreeNameSort"
sortActive="true"
sortDirection="ascending"/>
<splitter class="tree-splitter"/>
<treecol id="folderUnreadCol"
persist="hidden width"
flex="1"
label="&unreadColumn.label;"/>
<splitter class="tree-splitter"/>
<treecol id="folderTotalCol"
persist="hidden width"
flex="1"
label="&totalColumn.label;"/>
<splitter class="tree-splitter"/>
<treecol id="folderSizeCol"
persist="hidden width"
flex="1"
label="&folderSizeColumn.label;"/>
</treecols>
</tree>
</vbox>
<splitter id="folderpane_splitter" collapse="before" persist="state"/>
<vbox flex="1">
<hbox id="searchBox"/>
<box orient="vertical" id="messagesBox" flex="1">
<hbox id="messengerBox" flex="1" minheight="100" height="100" persist="height">
<vbox id="threadPaneBox" flex="1">
<tree id="threadTree" persist="lastfoldersent" flex="2" enableColumnDrag="true" _selectDelay="500" class="plain focusring" lastfoldersent="false"
disableKeyNavigation="true"
context="threadPaneContext"
onkeypress="ThreadPaneKeyPress(event);"
onselect="ThreadPaneSelectionChanged();">
<treecols pickertooltiptext="&columnChooser.tooltip;">
<treecol id="threadCol" persist="hidden ordinal" fixed="true" cycler="true"
class="treecol-image threadColumnHeader" currentView="unthreaded"
display="&threadColumn.label;" tooltiptext="&threadColumn.tooltip;"/>
<splitter class="tree-splitter"/>
<treecol id="attachmentCol" persist="hidden ordinal" fixed="true"
class="treecol-image attachmentColumnHeader"
display="&attachmentColumn.label;" tooltiptext="&attachmentColumn.tooltip;"/>
<splitter class="tree-splitter"/>
<treecol id="subjectCol" persist="hidden ordinal width" flex="7" ignoreincolumnpicker="true"
label="&subjectColumn.label;" tooltiptext="&subjectColumn.tooltip;"/>
<splitter class="tree-splitter"/>
<treecol id="unreadButtonColHeader" persist="hidden ordinal" fixed="true" cycler="true"
class="treecol-image readColumnHeader"
display="&readColumn.label;" tooltiptext="&readColumn.tooltip;"/>
<splitter class="tree-splitter"/>
<treecol id="senderCol" persist="hidden swappedhidden ordinal width" flex="4"
hidden="false" swappedhidden="true"
label="&senderColumn.label;" tooltiptext="&senderColumn.tooltip;"/>
<splitter class="tree-splitter"/>
<treecol id="recipientCol" persist="hidden swappedhidden ordinal width" flex="4"
hidden="true" swappedhidden="false"
label="&recipientColumn.label;" tooltiptext="&recipientColumn.tooltip;"/>
<splitter class="tree-splitter"/>
<treecol id="junkStatusCol" persist="hidden ordinal width" fixed="true" cycler="true"
class="treecol-image junkStatusHeader"
display="&junkStatusColumn.label;" tooltiptext="&junkStatusColumn.tooltip;"/>
<splitter class="tree-splitter"/>
<treecol id="dateCol" persist="hidden ordinal width" flex="2"
label="&dateColumn.label;" tooltiptext="&dateColumn.tooltip;"/>
<splitter class="tree-splitter"/>
<treecol id="statusCol" persist="hidden ordinal width" flex="1" hidden="true"
label="&statusColumn.label;" tooltiptext="&statusColumn.tooltip;"/>
<splitter class="tree-splitter"/>
<treecol id="sizeCol" persist="hidden ordinal width" flex="1" hidden="true"
label="&sizeColumn.label;" tooltiptext="&sizeColumn.tooltip;"/>
<splitter class="tree-splitter"/>
<treecol id="flaggedCol" persist="hidden ordinal" fixed="true" cycler="true" hidden="true"
class="treecol-image flagColumnHeader"
display="&flagColumn.label;" tooltiptext="&flagColumn.tooltip;"/>
<splitter class="tree-splitter"/>
<treecol id="labelCol" persist="hidden ordinal width" flex="1" hidden="true"
label="&labelColumn.label;" tooltiptext="&labelColumn.tooltip;"/>
<splitter class="tree-splitter"/>
<treecol id="priorityCol" persist="hidden ordinal width" flex="1" hidden="true"
label="&priorityColumn.label;" tooltiptext="&priorityColumn.tooltip;"/>
<splitter class="tree-splitter"/>
<treecol id="unreadCol" persist="hidden ordinal width" flex="1" hidden="true"
label="&unreadColumn.label;" tooltiptext="&unreadColumn.tooltip;"/>
<splitter class="tree-splitter"/>
<treecol id="totalCol" persist="hidden ordinal width" flex="1" hidden="true"
label="&totalColumn.label;" tooltiptext="&totalColumn.tooltip;"/>
<splitter class="tree-splitter"/>
<treecol id="locationCol" persist="width" flex="1" hidden="true" ignoreincolumnpicker="true"
label="&locationColumn.label;" tooltiptext="&locationColumn.tooltip;"/>
<splitter class="tree-splitter"/>
<treecol id="idCol" persist="hidden ordinal width" flex="1" hidden="true"
label="&idColumn.label;" tooltiptext="&idColumn.tooltip;"/>
</treecols>
<treechildren ondraggesture="BeginDragThreadPane(event);"/>
</tree>
<vbox id="accountCentralBox" flex="1" collapsed="true">
<iframe name="accountCentralPane" width="150" flex="1" src="about:blank"/>
</vbox>
</vbox>
</hbox>
<!-- if you change this id, please change GetThreadAndMessagePaneSplitter() and MsgToggleMessagePane() -->
<splitter id="threadpane-splitter" collapse="after" persist="state"
onmouseup="OnMouseUpThreadAndMessagePaneSplitter()"/>
<vbox id="messagepanebox" flex="1" minheight="100" height="200" minwidth="100" width="200" persist="collapsed height width">
<hbox id="junkBar"/>
<hbox id="msgHeaderView"/>
<browser id="messagepane" context="messagePaneContext" autofind="false"
minheight="1" flex="1" name="messagepane"
disablehistory="true" type="content-primary" src="about:blank"
disablesecurity="true" onclick="contentAreaClick(event);"/>
<hbox id="attachmentView"/>
</vbox>
</box>
</vbox>
</hbox>
</box> <!-- end of mailContentWrapper -->
<statusbar id="status-bar" class="chromeclass-status">
<statusbarpanel id="unreadMessageCount"/>
<statusbarpanel id="totalMessageCount"/>
</statusbar>
</window>