Fix for 18244. Don't load messages if splitter between thread and message pane is collapsed.

reviewed by hangas.
This commit is contained in:
putterman%netscape.com 1999-11-11 20:24:46 +00:00
Родитель ab88d596f5
Коммит f27e2cdda5
4 изменённых файлов: 50 добавлений и 7 удалений

Просмотреть файл

@ -347,18 +347,36 @@ function ToggleMessageFlagged(treeItem)
messenger.MarkMessageFlagged(tree.database, treeItem, !flagged);
}
function ThreadPaneSelectionChange(selectedElement)
//Called when the splitter in between the thread and message panes is clicked.
function OnClickThreadAndMessagePaneSplitter()
{
var collapsed = IsThreadAndMessagePaneSplitterCollapsed();
//collapsed is the previous state so we know we are opening.
if(collapsed)
LoadSelectionIntoMessagePane();
}
//Called when selection changes in the thread pane.
function ThreadPaneSelectionChange()
{
var collapsed = IsThreadAndMessagePaneSplitterCollapsed();
if(!collapsed)
{
LoadSelectionIntoMessagePane();
}
}
//takes the selection from the thread pane and loads it into the message pane
function LoadSelectionIntoMessagePane()
{
var tree = GetThreadTree();
var selArray = tree.selectedItems;
dump('In ThreadPaneSelectionChange(). Num Selected Items = ' + selArray.length);
dump('\n');
if ( selArray && (selArray.length == 1) )
LoadMessage(selArray[0]);
else
ClearMessagePane();
}
function FolderPaneSelectionChange()

Просмотреть файл

@ -541,7 +541,9 @@ Rights Reserved.
<tree id="threadTree"/>
</html:div>
<splitter id="gray_horizontal_splitter" collapse="after" persist="state"/>
<!-- if you change this id, please change GetThreadAndMessagePaneSplitter() -->
<splitter id="gray_horizontal_splitter" collapse="after" persist="state"
onclick="OnClickThreadAndMessagePaneSplitter()"/>
<!-- message view -->
<html:iframe flex="3" style="height:0px" name="messagepane" src="about:blank"/>

Просмотреть файл

@ -35,6 +35,8 @@ var messageDSProgID = datasourceProgIDPrefix + "mailnewsmessages";
var gFolderTree;
var gThreadTree;
var gThreadAndMessagePaneSplitter = null;
var gCurrentLoadingFolderURI;
var gCurrentLoadingFolderIsThreaded = false;
var gCurrentLoadingFolderSortID ="";
@ -357,6 +359,26 @@ function GetThreadTreeFolder()
return tree;
}
function GetThreadAndMessagePaneSplitter()
{
if(gThreadAndMessagePaneSplitter) return gThreadAndMessagePaneSplitter;
var splitter = document.getElementById('gray_horizontal_splitter');
gThreadAndMessagePaneSplitter = splitter;
return splitter;
}
function IsThreadAndMessagePaneSplitterCollapsed()
{
var splitter = GetThreadAndMessagePaneSplitter();
if(splitter)
{
var state = splitter.getAttribute('state');
return (state == "collapsed");
}
else
return false;
}
function FindMessenger()
{
return messenger;

Просмотреть файл

@ -30,9 +30,11 @@ Rights Reserved.
>
<tree datasources="rdf:null" id="threadTree" style="width: 100%; height: 100%"
onselect="top.ThreadPaneSelectionChange(event.target); document.commandDispatcher.updateCommands('tree-select');"
onselect="top.ThreadPaneSelectionChange(); document.commandDispatcher.updateCommands('tree-select');"
onblur="goOnEvent(this,'blur')"
containment="http://home.netscape.com/NC-rdf#MessageChild">
allownegativeassertions="false"
coalesceduplicatearcs="false">
<template>
<rule>
@ -41,7 +43,6 @@ Rights Reserved.
Status="rdf:http://home.netscape.com/NC-rdf#Status"
Flagged="rdf:http://home.netscape.com/NC-rdf#Flagged"
Priority="rdf:http://home.netscape.com/NC-rdf#Priority">
<treerow>
<treecell value="rdf:http://home.netscape.com/NC-rdf#Thread"/>
<treecell indent="true" value="rdf:http://home.netscape.com/NC-rdf#Subject"/>