mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-12 04:45:45 +00:00
fix selection going away from thread pane if you delete a msg before its finished loading, sr=mscott 183394
This commit is contained in:
parent
8fa21d0d61
commit
a16282566c
@ -311,7 +311,8 @@ function fillFolderPaneContextMenu()
|
||||
ShowMenuItem("folderPaneContext-emptyTrash", (numSelected <= 1) && (specialFolder == 'Trash'));
|
||||
EnableMenuItem("folderPaneContext-emptyTrash", true);
|
||||
|
||||
var showSendUnsentMessages = (numSelected <= 1) && (specialFolder == 'Unsent Messages');
|
||||
var showSendUnsentMessages = (numSelected <= 1)
|
||||
&& (specialFolder == 'Unsent Messages' || specialFolder == 'Unsent');
|
||||
ShowMenuItem("folderPaneContext-sendUnsentMessages", showSendUnsentMessages);
|
||||
if (showSendUnsentMessages) {
|
||||
EnableMenuItem("folderPaneContext-sendUnsentMessages", IsSendUnsentMsgsEnabled(folderResource));
|
||||
|
@ -371,11 +371,11 @@ function viewRefreshCustomMailViews(aCurrentViewValue)
|
||||
// see mailWindowOverlay.xul
|
||||
function ViewMessagesBy(id)
|
||||
{
|
||||
var viewPicker = document.getElementById('viewPicker');
|
||||
if (viewPicker)
|
||||
var viewPicker = document.getElementById('viewPicker');
|
||||
if (viewPicker)
|
||||
{
|
||||
viewPicker.selectedItem = document.getElementById(id);
|
||||
viewChange(viewPicker, viewPicker.value);
|
||||
viewChange(viewPicker, viewPicker.value);
|
||||
}
|
||||
}
|
||||
|
||||
@ -2314,7 +2314,12 @@ function OnMsgLoaded(aUrl)
|
||||
// if the user clicks on another message then that message stays selected
|
||||
// and the selection does not "snap back" to the message chosen by
|
||||
// SetNextMessageAfterDelete() when the operation completes (bug 243532).
|
||||
gNextMessageViewIndexAfterDelete = -2;
|
||||
// But the just loaded message might be getting deleted, if the user
|
||||
// deletes it before the message is loaded (bug 183394)
|
||||
var treeSelection = GetThreadTree().view.selection;
|
||||
|
||||
if (treeSelection.currentIndex != gSelectedIndexWhenDeleting)
|
||||
gNextMessageViewIndexAfterDelete = -2;
|
||||
|
||||
if (!(/type=application\/x-message-display/.test(msgURI)))
|
||||
msgHdr = messenger.messageServiceFromURI(msgURI).messageURIToMsgHdr(msgURI);
|
||||
|
@ -76,6 +76,7 @@ var gCurrentDisplayedMessage = null;
|
||||
var gNextMessageAfterDelete = null;
|
||||
var gNextMessageAfterLoad = null;
|
||||
var gNextMessageViewIndexAfterDelete = -2;
|
||||
var gSelectedIndexWhenDeleting = -1;
|
||||
var gCurrentlyDisplayedMessage=nsMsgViewIndex_None;
|
||||
var gStartFolderUri = null;
|
||||
var gStartMsgKey = nsMsgKey_None;
|
||||
@ -1554,7 +1555,10 @@ function SetNextMessageAfterDelete()
|
||||
var treeSelection = GetThreadTree().view.selection;
|
||||
|
||||
if (treeSelection.isSelected(treeSelection.currentIndex))
|
||||
{
|
||||
gNextMessageViewIndexAfterDelete = gDBView.msgToSelectAfterDelete;
|
||||
gSelectedIndexWhenDeleting = treeSelection.currentIndex;
|
||||
}
|
||||
else if(gDBView.removeRowOnMoveOrDelete)
|
||||
{
|
||||
// Only set gThreadPaneDeleteOrMoveOccurred to true if the message was
|
||||
|
Loading…
Reference in New Issue
Block a user