sr=sfraser@netscape.com,mscott@netscape.com r=jfrancis@netscape.com
* nsITransaction, nsITransactionListenter, nsITransactionManager have
been XPIDL'ized and moved into mozilla/editor/txmgr/idl. The versions
of these interfaces in mozilla/editor/txmgr/public are being CVS removed.
* Renamed Do(), Undo(), and Redo() to DoTransaction(), UndoTransaction(),
and RedoTransaction() to avoid reserved word problems in languages like
JS. I did a sweep through editor and mailnews to remove these methods.
* PeekUndoStack() and PeekRedoStack() now return an AddRef'd pointer.
* Removed GetUndoString(), GetRedoString() and Write() from the
nsITransaction interface. Neither editor or mailnews really made
use of these methods.
* Removed Write() from the nsITransactionManager.cpp interface.
* The Transaction Manager now supports weak references.
* Added support for nsITransactionList to the TransactionManager
to allow access to all transactions on the Undo and Redo stacks, as
well as auto-aggregated transactions.
* Removed all references to nsITransactionDescription from txmgr and editor.
* Added nsPIEditorTransaction and made all Editor internal transactions
inherit from it so we can distinguish between our transactions and
ones from 3rd parties.
New files checked in:
editor/txmgr/idl/nsITransaction.idl
editor/txmgr/idl/nsITransactionList.idl
editor/txmgr/idl/nsITransactionListener.idl
editor/txmgr/idl/nsITransactionManager.idl
editor/txmgr/src/nsITransactionList.cpp
editor/txmgr/src/nsITransactionList.h
editor/idl/nsPIEditorTransaction.idl
Files that were CVS removed:
editor/txmgr/public/nsITransaction.h
editor/txmgr/public/nsITransactionListener.h
editor/txmgr/public/nsITransactionManager.h
editor/txmgr/idl/nsITransactionDescription.h
editor/base/IMECommitTxn.cpp
editor/base/IMECommitTxn.h
Files modified:
editor/Makefile.in
editor/makefile.win
editor/base/ChangeAttributeTxn.cpp
editor/base/ChangeAttributeTxn.h
editor/base/CreateElementTxn.cpp
editor/base/CreateElementTxn.h
editor/base/DeleteElementTxn.cpp
editor/base/DeleteElementTxn.h
editor/base/DeleteRangeTxn.cpp
editor/base/DeleteRangeTxn.h
editor/base/DeleteTextTxn.cpp
editor/base/DeleteTextTxn.h
editor/base/EditAggregateTxn.cpp
editor/base/EditAggregateTxn.h
editor/base/EditTxn.cpp
editor/base/EditTxn.h
editor/base/IMECommitTxn.cpp
editor/base/IMECommitTxn.h
editor/base/IMETextTxn.cpp
editor/base/IMETextTxn.h
editor/base/InsertElementTxn.cpp
editor/base/InsertElementTxn.h
editor/base/InsertTextTxn.cpp
editor/base/InsertTextTxn.h
editor/base/JoinElementTxn.cpp
editor/base/JoinElementTxn.h
editor/base/nsEditor.cpp
editor/base/nsEditorShell.cpp
editor/base/nsEditorShell.h
editor/base/nsEditorTxnLog.cpp
editor/base/nsStyleSheetTxns.cpp
editor/base/nsStyleSheetTxns.h
editor/base/PlaceholderTxn.cpp
editor/base/PlaceholderTxn.h
editor/base/SetDocTitleTxn.cpp
editor/base/SetDocTitleTxn.h
editor/base/SplitElementTxn.cpp
editor/base/SplitElementTxn.h
editor/idl/Makefile.in
editor/idl/makefile.win
editor/idl/MANIFEST
editor/idl/nsIEditorShell.idl
editor/macbuild/editor.mcp
editor/macbuild/EditorIDL.mcp
editor/txmgr/idl/Makefile.in
editor/txmgr/idl/makefile.win
editor/txmgr/idl/MANIFEST
editor/txmgr/idl/nsITransactionManager.idl
editor/txmgr/macbuild/txmgr.mcp
editor/txmgr/macbuild/txmgrIDL.mcp
editor/txmgr/public/Makefile.in
editor/txmgr/public/makefile.win
editor/txmgr/public/MANIFEST
editor/txmgr/src/Makefile.in
editor/txmgr/src/makefile.win
editor/txmgr/src/nsTransactionItem.cpp
editor/txmgr/src/nsTransactionItem.h
editor/txmgr/src/nsTransactionList.cpp
editor/txmgr/src/nsTransactionList.h
editor/txmgr/src/nsTransactionManager.cpp
editor/txmgr/src/nsTransactionManager.h
editor/txmgr/src/nsTransactionManagerFactory.cpp
editor/txmgr/src/nsTransactionStack.cpp
editor/txmgr/src/nsTransactionStack.h
editor/txmgr/tests/TestTXMgr.cpp
editor/ui/composer/content/EditorCommandsDebug.js
editor/ui/composer/content/editorOverlay.xul
editor/ui/composer/locale/en-US/editorOverlay.dtd
mailnews/base/src/nsMessenger.cpp
mailnews/base/util/nsMsgTxn.cpp
mailnews/base/util/nsMsgTxn.h
mailnews/imap/src/nsImapMailFolder.cpp
mailnews/imap/src/nsImapUndoTxn.cpp
mailnews/imap/src/nsImapUndoTxn.h
mailnews/local/src/nsLocalMailFolder.cpp
mailnews/local/src/nsLocalUndoTxn.cpp
mailnews/local/src/nsLocalUndoTxn.h
Revising nsIChannel to allow for overlapped i/o. This consists of three parts:
1. Factoring nsIChannel into a protocol specific part, the nsIChannel, and a socket specific, the nsITransport.
2. Derive the nsIChannel from a nsIRequest.
2. Changes the notification system from necko and the URILoader to pass the nsIRequest interface instead of nsIChannel interface.
This goal stems from wanting to be able to have active AsyncRead and AsyncWrite operations on nsSocketTransport.
This is desired because it would greatly simplify the task of maintaining persistent/reusable socket connections
for FTP, HTTP, and Imap (and potentially other protocols). The problem with the existing nsIChannel interface is
that it does not allow one to selectively suspend just one of the read or write operations while keeping the other active.
r=darin@netscape.comsr=rpotts@netscape.com
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.
1. Factoring nsIChannel into a protocol specific part, the nsIChannel, and a socket specific, the nsITransport.
2. Derive the nsIChannel from a nsIRequest.
2. Changes the notification system from necko and the URILoader to pass the nsIRequest interface instead of nsIChannel interface.
This goal stems from wanting to be able to have active AsyncRead and AsyncWrite operations on nsSocketTransport.
This is desired because it would greatly simplify the task of maintaining persistent/reusable socket connections
for FTP, HTTP, and Imap (and potentially other protocols). The problem with the existing nsIChannel interface is
that it does not allow one to selectively suspend just one of the read or write operations while keeping the other active.
The full details of the change on written up in the netlib newsgroup.
r=darin@netscape.comsr=rpotts@netscape.com
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
1) add ui and backend support for "log into this account at startup". all that is missing is the code to actually do the logging in at startup. that comes next.
2) hide the user name for news servers in the account manager.
3) fix ui to allow users to edit the username and hostname for a server, but disable it until the back end can handle a live swap of those values.
sr=bienvenu