Includes front end re-write to use the outliner widget for the thread pane.
Improvements in scrolling, folder loading, message display, replyto time, sorting, selecting, deleting, the list goes
on and on.
enjoy =).
you right click on a folder. thanks to sspitzer and bienvenu for good review. Thanks to
david for providing nsMsgFolder::ListDescendents function and all the help.
make it so you can view "threads with unread". (#52927)
threaded and unread are no longer mutually exclusive.
later, I'll add "unread threaded" which is no the
same thing as "thread with unread".
fix the nsMsgMessageDataSource() to ask the view, thread or msg database for existance of messages, instead of getting an enumerator for all messages, and seeing if it is non empty. more performance work on the way.
move enums from MailNewsTypes.h to MailNewsTypes2.idl, so that I can use the same ones from JS and C++.
sr=bienvenu
- expose event notifications through nsIFolder so that non-folders can trigger notifications on individual folders
- add generic OnItemEvent to nsIFolderListener, and implement in base classes
to it so that you don't lose your place in the thread pane. More work on 26456. r=alecf.
Some performance improvements for loading folders by speeding up building up a uri.
added to the nsIMsgProtocolInfo interface defaultCopiesAndFoldersPrefsToServer,
which we use to see for a given server type, do the defaults live on the server
or not (where not would mean "Local Folders").
fix the getFoldersWithFlag method in the nsIMsgFolder interface so it
would be easier to use in JS.
r=alecf
implemented or they were just stubs. I added CanRename and CanCreateSubfolder
(which follow the naming convention, so we'll keep them) without knowing these were there. I move over the additional logic for special folders (like INBOX, TRASH, etc) in CanBeRenamed to CanRename, and put the logic in one place, in nsMsgFolder::CanRename(), instead of in multiple places. thanks to alecf for pointing out that CanBeRenamed and CanCreateChildren were already there.
r=alecf
major fixes for the new folder / rename folder / subscribe dialogs.
we no longer use an html select for the folder picker.
now we use cascading menu popups, like the copy and move menus.
this fixes a lot of bugs, and allows pre-flighting to finally work.
our folder data source has some new properies:
CanFileMessages, CanSubscribe, CanRename, and CanCreateSubfolders
we use these to determine what cascading menu to build, what to disable, etc.
also, nsMessenger::NewFolder() and nsMessenger::RenameFolder() were changes to
take a nsIRDFResource instead of a nsIDOMXULElement. Before we were
passing through to the back end the selected xul element, now we pass
the resource in.
other cool side effects:
in the copy & move menus, you don't get the choice to file or copy to a server, on folders
in the rename dialog, you can't pick a server, on a folder
in the new folder dialog, you can't pick the imap inbox. (* more needs to be done here.)
bugs fixed: #14773, #14254, #20599, #20646
r=alecf
a couple bullet proofing fixes to prevent some crashes reported on fullcircle
r=bienvenu