Bug 488907 Tidy up some includes in nsIMsgFolder.idl/nsIMsgWindow.idl. r/sr=bienvenu
authorMark Banner <bugzilla@standard8.plus.com>
Tue, 21 Apr 2009 09:33:22 +0100
changeset 2437 f02f2adc5f62d7b8d12b30454b2112c04cfeff93
parent 2436 b8c8bf5edbf2d9c95e9f313eb9b879286f5cb426
child 2438 2e28575d773cbca49421940a672d4c8fe5cb9dbe
push idunknown
push userunknown
push dateunknown
bugs488907
Bug 488907 Tidy up some includes in nsIMsgFolder.idl/nsIMsgWindow.idl. r/sr=bienvenu
mailnews/base/public/nsIMsgFolder.idl
mailnews/base/public/nsIMsgWindow.idl
mailnews/base/search/public/nsIMsgFilterService.idl
mailnews/base/search/src/nsMsgFilterService.cpp
mailnews/base/search/src/nsMsgImapSearch.cpp
mailnews/base/search/src/nsMsgLocalSearch.cpp
mailnews/base/search/src/nsMsgSearchAdapter.cpp
mailnews/base/search/src/nsMsgSearchNews.cpp
mailnews/base/src/nsMessengerBootstrap.cpp
mailnews/base/src/nsMessengerContentHandler.cpp
mailnews/base/src/nsMsgAccountManager.cpp
mailnews/base/src/nsMsgFolderCompactor.cpp
mailnews/base/src/nsMsgMailSession.h
mailnews/base/src/nsMsgOfflineManager.cpp
mailnews/base/src/nsMsgStatusFeedback.cpp
mailnews/base/util/nsImapMoveCoalescer.h
mailnews/base/util/nsMsgProtocol.cpp
mailnews/base/util/nsMsgTxn.cpp
mailnews/base/util/nsMsgTxn.h
mailnews/extensions/mdn/src/nsMsgMdnGenerator.h
mailnews/imap/src/nsImapMailFolder.cpp
mailnews/imap/src/nsImapOfflineSync.h
mailnews/imap/src/nsImapProtocol.cpp
mailnews/imap/src/nsImapProtocol.h
mailnews/imap/src/nsImapUndoTxn.cpp
mailnews/news/src/nsNewsDownloader.cpp
mailnews/news/src/nsNewsDownloader.h
--- a/mailnews/base/public/nsIMsgFolder.idl
+++ b/mailnews/base/public/nsIMsgFolder.idl
@@ -35,17 +35,16 @@
  * the terms of any one of the MPL, the GPL or the LGPL.
  *
  * ***** END LICENSE BLOCK ***** */
 
 #include "nsISupports.idl"
 #include "nsIFolderListener.idl"
 #include "nsIMsgThread.idl"
 #include "nsIMsgIncomingServer.idl"
-#include "nsISupportsArray.idl"
 #include "nsIMsgCopyServiceListener.idl"
 #include "nsIUrlListener.idl"
 #include "nsISimpleEnumerator.idl"
 
 [ptr] native octet_ptr(PRUint8);
 
 interface nsIMsgDBHdr;
 interface nsIMsgWindow;
@@ -57,16 +56,17 @@ interface nsIMsgFolderCacheElement;
 interface nsITransport;
 interface nsIFile;
 interface nsIOutputStream;
 interface nsIInputStream;
 interface nsILocalFile;
 interface nsIMsgIdentity;
 interface nsIArray;
 interface nsIMutableArray;
+interface nsISupportsArray;
 
 typedef long nsMsgBiffState;
 
 // enumerated type for determining if a message has been replied to, forwarded, etc.
 typedef long nsMsgDispositionState;
 [scriptable, uuid(8e15538f-0510-42a3-aaae-39ccd436b7a7)]
 interface nsIMsgFolder : nsISupports {
 
--- a/mailnews/base/public/nsIMsgWindow.idl
+++ b/mailnews/base/public/nsIMsgWindow.idl
@@ -31,19 +31,19 @@
  * decision by deleting the provisions above and replace them with the notice
  * and other provisions required by the GPL or the LGPL. If you do not delete
  * the provisions above, a recipient may use your version of this file under
  * the terms of any one of the MPL, the GPL or the LGPL.
  *
  * ***** END LICENSE BLOCK ***** */
 
 #include "nsISupports.idl"
-#include "nsIMsgStatusFeedback.idl"
-#include "nsIMsgFolder.idl"
 
+interface nsIMsgStatusFeedback;
+interface nsIMsgFolder;
 interface nsITransactionManager;
 interface nsIDocShell;
 interface nsIDOMWindowInternal;
 interface nsIMsgHeaderSink;
 interface nsIPrompt;
 interface nsIInterfaceRequestor;
 
 [scriptable, uuid(7B8F4A65-CFC4-4b3f-BF5C-152AA8D5CD10)]
--- a/mailnews/base/search/public/nsIMsgFilterService.idl
+++ b/mailnews/base/search/public/nsIMsgFilterService.idl
@@ -34,21 +34,25 @@
  * decision by deleting the provisions above and replace them with the notice
  * and other provisions required by the GPL or the LGPL. If you do not delete
  * the provisions above, a recipient may use your version of this file under
  * the terms of any one of the MPL, the GPL or the LGPL.
  *
  * ***** END LICENSE BLOCK ***** */
 
 #include "nsISupports.idl"
-#include "nsIMsgFilterList.idl"
-#include "nsIMsgWindow.idl"
+#include "nsMsgFilterCore.idl"
 
+interface nsIMsgFilterList;
+interface nsIMsgWindow;
 interface nsIMsgFilterCustomAction;
 interface nsISimpleEnumerator;
+interface nsILocalFile;
+interface nsIMsgFolder;
+interface nsISupportsArray;
 
 [scriptable, uuid(5D7DF40A-CD9C-4729-A715-D5666C3AA713)]
 interface nsIMsgFilterService : nsISupports {
 
     nsIMsgFilterList OpenFilterList(in nsILocalFile filterFile, in nsIMsgFolder rootFolder, in nsIMsgWindow msgWindow);
     void CloseFilterList(in nsIMsgFilterList filterList);
 
     void SaveFilterList(in nsIMsgFilterList filterList,
--- a/mailnews/base/search/src/nsMsgFilterService.cpp
+++ b/mailnews/base/search/src/nsMsgFilterService.cpp
@@ -44,17 +44,16 @@
 
 #include "msgCore.h"
 #include "nsMsgFilterService.h"
 #include "nsMsgFilterList.h"
 #include "nsMsgSearchScopeTerm.h"
 #include "nsDirectoryServiceDefs.h"
 #include "nsIPrompt.h"
 #include "nsIDocShell.h"
-#include "nsIMsgWindow.h"
 #include "nsIInterfaceRequestor.h"
 #include "nsIInterfaceRequestorUtils.h"
 #include "nsIStringBundle.h"
 #include "nsIMsgSearchNotify.h"
 #include "nsIUrlListener.h"
 #include "nsIMsgCopyServiceListener.h"
 #include "nsIMsgLocalMailFolder.h"
 #include "nsIMsgDatabase.h"
@@ -69,16 +68,17 @@
 #include "nsNetUtil.h"
 #include "nsMsgUtils.h"
 #include "nsIMutableArray.h"
 #include "nsArrayUtils.h"
 #include "nsCOMArray.h"
 #include "nsIMsgFilterCustomAction.h"
 #include "nsArrayEnumerator.h"
 #include "nsMsgMessageFlags.h"
+#include "nsIMsgWindow.h"
 
 NS_IMPL_ISUPPORTS1(nsMsgFilterService, nsIMsgFilterService)
 
 nsMsgFilterService::nsMsgFilterService()
 {
 }
 
 nsMsgFilterService::~nsMsgFilterService()
--- a/mailnews/base/search/src/nsMsgImapSearch.cpp
+++ b/mailnews/base/search/src/nsMsgImapSearch.cpp
@@ -37,16 +37,17 @@
 #include "msgCore.h"
 #include "nsMsgSearchAdapter.h"
 #include "nsMsgSearchScopeTerm.h"
 #include "nsMsgResultElement.h"
 #include "nsMsgSearchTerm.h"
 #include "nsIMsgHdr.h"
 #include "nsMsgSearchImap.h"
 #include "prmem.h"
+#include "nsISupportsArray.h"
 // Implementation of search for IMAP mail folders
 
 
 nsMsgSearchOnlineMail::nsMsgSearchOnlineMail (nsMsgSearchScopeTerm *scope, nsISupportsArray *termList) : nsMsgSearchAdapter (scope, termList)
 {
 }
 
 
--- a/mailnews/base/search/src/nsMsgLocalSearch.cpp
+++ b/mailnews/base/search/src/nsMsgLocalSearch.cpp
@@ -42,17 +42,17 @@
 #include "nsIMsgDatabase.h"
 #include "nsMsgSearchCore.h"
 #include "nsMsgLocalSearch.h"
 #include "nsIStreamListener.h"
 #include "nsMsgSearchBoolExpression.h"
 #include "nsMsgSearchTerm.h"
 #include "nsMsgResultElement.h"
 #include "nsIDBFolderInfo.h"
-
+#include "nsISupportsArray.h"
 #include "nsMsgBaseCID.h"
 #include "nsMsgSearchValue.h"
 #include "nsIMsgLocalMailFolder.h"
 #include "nsIMsgWindow.h"
 #include "nsIMsgHdr.h"
 #include "nsIMsgFilterPlugin.h"
 #include "nsMsgMessageFlags.h"
 
--- a/mailnews/base/search/src/nsMsgSearchAdapter.cpp
+++ b/mailnews/base/search/src/nsMsgSearchAdapter.cpp
@@ -52,16 +52,17 @@
 #include "prprf.h"
 #include "nsAutoPtr.h"
 #include "prmem.h"
 #include "MailNewsTypes.h"
 #include "nsComponentManagerUtils.h"
 #include "nsServiceManagerUtils.h"
 #include "nsMemory.h"
 #include "nsMsgMessageFlags.h"
+#include "nsISupportsArray.h"
 
 // This stuff lives in the base class because the IMAP search syntax
 // is used by the Dredd SEARCH command as well as IMAP itself
 
 // km - the NOT and HEADER strings are not encoded with a trailing
 //      <space> because they always precede a mnemonic that has a
 //      preceding <space> and double <space> characters cause some
 //    imap servers to return an error.
--- a/mailnews/base/search/src/nsMsgSearchNews.cpp
+++ b/mailnews/base/search/src/nsMsgSearchNews.cpp
@@ -42,16 +42,17 @@
 #include "nsMsgSearchTerm.h"
 #include "nsIMsgHdr.h"
 #include "nsMsgSearchNews.h"
 #include "nsIDBFolderInfo.h"
 #include "prprf.h"
 #include "nsIMsgDatabase.h"
 #include "nsMemory.h"
 #include <ctype.h>
+#include "nsISupportsArray.h"
 
 // Implementation of search for IMAP mail folders
 
 
 // Implementation of search for newsgroups
 
 
 //-----------------------------------------------------------------------------
--- a/mailnews/base/src/nsMessengerBootstrap.cpp
+++ b/mailnews/base/src/nsMessengerBootstrap.cpp
@@ -67,16 +67,17 @@
 #include "nsNetUtil.h"
 #include "nsIFileURL.h"
 #include "nsNativeCharsetUtils.h"
 #include "nsIRDFResource.h"
 #include "nsIRDFService.h"
 #include "nsIMsgHdr.h"
 #include "nsMsgUtils.h"
 #include "nsEscape.h"
+#include "nsIMsgFolder.h"
 
 #ifdef XP_MACOSX
 #include "nsDirectoryServiceDefs.h"
 #endif
 
 NS_IMPL_THREADSAFE_ADDREF(nsMessengerBootstrap)
 NS_IMPL_THREADSAFE_RELEASE(nsMessengerBootstrap)
 
--- a/mailnews/base/src/nsMessengerContentHandler.cpp
+++ b/mailnews/base/src/nsMessengerContentHandler.cpp
@@ -41,16 +41,17 @@
 #include "nsPIDOMWindow.h"
 #include "nsIServiceManager.h"
 #include "nsIWindowWatcher.h"
 #include "nsIDocShell.h"
 #include "nsIWebNavigation.h"
 #include "nsIMsgMailSession.h"
 #include "nsMsgBaseCID.h"
 #include "plstr.h"
+#include "nsIURL.h"
 
 nsMessengerContentHandler::nsMessengerContentHandler()
 {
 }
 
 /* the following macro actually implement addref, release and query interface for our component. */
 NS_IMPL_ISUPPORTS1(nsMessengerContentHandler, nsIContentHandler)
 
--- a/mailnews/base/src/nsMsgAccountManager.cpp
+++ b/mailnews/base/src/nsMsgAccountManager.cpp
@@ -90,16 +90,17 @@
 #include "nsIDBChangeListener.h"
 #include "nsIDBFolderInfo.h"
 #include "nsIMsgHdr.h"
 #include "nsILineInputStream.h"
 #include "nsThreadUtils.h"
 #include "nsNetUtil.h"
 #include "nsIStringBundle.h"
 #include "nsMsgMessageFlags.h"
+#include "nsIMsgFilterList.h"
 
 #define PREF_MAIL_ACCOUNTMANAGER_ACCOUNTS "mail.accountmanager.accounts"
 #define PREF_MAIL_ACCOUNTMANAGER_DEFAULTACCOUNT "mail.accountmanager.defaultaccount"
 #define PREF_MAIL_ACCOUNTMANAGER_LOCALFOLDERSSERVER "mail.accountmanager.localfoldersserver"
 #define PREF_MAIL_SERVER_PREFIX "mail.server."
 #define ACCOUNT_PREFIX "account"
 #define SERVER_PREFIX "server"
 #define ID_PREFIX "id"
--- a/mailnews/base/src/nsMsgFolderCompactor.cpp
+++ b/mailnews/base/src/nsMsgFolderCompactor.cpp
@@ -55,16 +55,17 @@
 #include "nsIMsgImapMailFolder.h"
 #include "nsMailHeaders.h"
 #include "nsMsgI18N.h"
 #include "prprf.h"
 #include "nsMsgLocalFolderHdrs.h"
 #include "nsIMsgDatabase.h"
 #include "nsArrayUtils.h"
 #include "nsMsgMessageFlags.h"
+#include "nsIMsgStatusFeedback.h"
 
 //////////////////////////////////////////////////////////////////////////////
 // nsFolderCompactState
 //////////////////////////////////////////////////////////////////////////////
 
 NS_IMPL_ISUPPORTS5(nsFolderCompactState, nsIMsgFolderCompactor, nsIRequestObserver, nsIStreamListener, nsICopyMessageStreamListener, nsIUrlListener)
 
 nsFolderCompactState::nsFolderCompactState()
--- a/mailnews/base/src/nsMsgMailSession.h
+++ b/mailnews/base/src/nsMsgMailSession.h
@@ -47,16 +47,17 @@
 #include "nsCOMArray.h"
 #include "nsIMsgShutdown.h"
 #include "nsIObserver.h"
 #include "nsIMutableArray.h"
 #include "nsIMsgProgress.h"
 #include "nsTArray.h"
 #include "nsTObserverArray.h"
 #include "nsIMsgUserFeedbackListener.h"
+#include "nsIUrlListener.h"
 
 ///////////////////////////////////////////////////////////////////////////////////
 // The mail session is a replacement for the old 4.x MSG_Master object. It contains
 // mail session generic information such as the user's current mail identity, ....
 // I'm starting this off as an empty interface and as people feel they need to
 // add more information to it, they can. I think this is a better approach than 
 // trying to port over the old MSG_Master in its entirety as that had a lot of 
 // cruft in it....
--- a/mailnews/base/src/nsMsgOfflineManager.cpp
+++ b/mailnews/base/src/nsMsgOfflineManager.cpp
@@ -48,16 +48,17 @@
 #include "nsMsgImapCID.h"
 #include "nsIMsgSendLater.h"
 #include "nsIMsgAccountManager.h"
 #include "nsMsgCompCID.h"
 #include "nsIIOService.h"
 #include "nsNetCID.h"
 #include "nsMsgNewsCID.h"
 #include "nsINntpService.h"
+#include "nsIMsgStatusFeedback.h"
 
 static NS_DEFINE_CID(kMsgSendLaterCID, NS_MSGSENDLATER_CID); 
 
 NS_IMPL_THREADSAFE_ISUPPORTS5(nsMsgOfflineManager,
                               nsIMsgOfflineManager,
                               nsIMsgSendLaterListener,
                               nsIObserver,
                               nsISupportsWeakReference,
--- a/mailnews/base/src/nsMsgStatusFeedback.cpp
+++ b/mailnews/base/src/nsMsgStatusFeedback.cpp
@@ -49,16 +49,17 @@
 #include "prinrval.h"
 #include "nsInt64.h"
 #include "nsITimelineService.h"
 #include "nsIMsgMailNewsUrl.h"
 #include "nsIMimeMiscStatus.h"
 #include "nsIMsgWindow.h"
 #include "nsMsgUtils.h"
 #include "nsIMsgHdr.h"
+#include "nsIMsgFolder.h"
 
 #define MSGFEEDBACK_TIMER_INTERVAL 500
 
 nsMsgStatusFeedback::nsMsgStatusFeedback() :
   m_lastPercent(0)
 {
   LL_I2L(m_lastProgressTime, 0);
 
--- a/mailnews/base/util/nsImapMoveCoalescer.h
+++ b/mailnews/base/util/nsImapMoveCoalescer.h
@@ -39,16 +39,18 @@
 #define _nsImapMoveCoalescer_H
 
 #include "msgCore.h"
 #include "nsCOMArray.h"
 #include "nsIMsgWindow.h"
 #include "nsCOMPtr.h"
 #include "MailNewsTypes.h"
 #include "nsTArray.h"
+#include "nsIUrlListener.h"
+#include "nsIMsgCopyServiceListener.h"
 
 // imap move coalescer class - in order to keep nsImapMailFolder from growing like Topsy
 // Logically, we want to keep track of an nsTArray<nsMsgKey> per nsIMsgFolder, and then
 // be able to retrieve them one by one and play back the moves.
 // This utility class will be used by both the filter code and the offline playback code,
 // to avoid multiple moves to the same folder.
 
 class NS_MSG_BASE nsImapMoveCoalescer : public nsIUrlListener
--- a/mailnews/base/util/nsMsgProtocol.cpp
+++ b/mailnews/base/util/nsMsgProtocol.cpp
@@ -59,16 +59,17 @@
 #include "nsIProtocolProxyService.h"
 #include "nsIProxyInfo.h"
 #include "nsThreadUtils.h"
 #include "nsIPrefBranch.h"
 #include "nsIPrefService.h"
 #include "nsDirectoryServiceDefs.h"
 #include "nsMsgUtils.h"
 #include "nsILineInputStream.h"
+#include "nsIMsgIncomingServer.h"
 
 NS_IMPL_THREADSAFE_ADDREF(nsMsgProtocol)
 NS_IMPL_THREADSAFE_RELEASE(nsMsgProtocol)
 
 NS_INTERFACE_MAP_BEGIN(nsMsgProtocol)
    NS_INTERFACE_MAP_ENTRY_AMBIGUOUS(nsISupports, nsIChannel)
    NS_INTERFACE_MAP_ENTRY(nsIStreamListener)
    NS_INTERFACE_MAP_ENTRY(nsIRequestObserver)
--- a/mailnews/base/util/nsMsgTxn.cpp
+++ b/mailnews/base/util/nsMsgTxn.cpp
@@ -40,16 +40,17 @@
 #include "nsIMsgHdr.h"
 #include "nsIMsgDatabase.h"
 #include "nsCOMArray.h"
 #include "nsArrayEnumerator.h"
 #include "nsComponentManagerUtils.h"
 #include "nsIVariant.h"
 #include "nsIProperty.h"
 #include "nsMsgMessageFlags.h"
+#include "nsIMsgFolder.h"
 
 NS_IMPL_THREADSAFE_ADDREF(nsMsgTxn)
 NS_IMPL_THREADSAFE_RELEASE(nsMsgTxn)
 NS_INTERFACE_MAP_BEGIN(nsMsgTxn)
   NS_INTERFACE_MAP_ENTRY(nsIWritablePropertyBag)
   NS_INTERFACE_MAP_ENTRY_AMBIGUOUS(nsIPropertyBag, nsIWritablePropertyBag)
   NS_INTERFACE_MAP_ENTRY_AMBIGUOUS(nsISupports, nsIWritablePropertyBag)
   NS_INTERFACE_MAP_ENTRY(nsITransaction)
--- a/mailnews/base/util/nsMsgTxn.h
+++ b/mailnews/base/util/nsMsgTxn.h
@@ -39,17 +39,17 @@
 #ifndef nsMsgTxn_h__
 #define nsMsgTxn_h__
 
 #include "nsITransaction.h"
 #include "msgCore.h"
 #include "nsCOMPtr.h"
 #include "nsIMsgWindow.h"
 #include "nsInterfaceHashtable.h"
-
+#include "MailNewsTypes2.h"
 #include "nsIVariant.h"
 #include "nsIWritablePropertyBag.h"
 #include "nsIWritablePropertyBag2.h"
 
 #define NS_MESSAGETRANSACTION_IID \
 { /* da621b30-1efc-11d3-abe4-00805f8ac968 */ \
     0xda621b30, 0x1efc, 0x11d3, \
   { 0xab, 0xe4, 0x00, 0x80, 0x5f, 0x8a, 0xc9, 0x68 } }
--- a/mailnews/extensions/mdn/src/nsMsgMdnGenerator.h
+++ b/mailnews/extensions/mdn/src/nsMsgMdnGenerator.h
@@ -43,16 +43,17 @@
 #include "nsCOMPtr.h"
 #include "nsIUrlListener.h"
 #include "nsIMsgIncomingServer.h"
 #include "nsIOutputStream.h"
 #include "nsIFile.h"
 #include "nsIMsgIdentity.h"
 #include "nsIMsgWindow.h"
 #include "nsIMimeHeaders.h"
+#include "nsStringGlue.h"
 
 #define eNeverSendOp ((PRInt32) 0)
 #define eAutoSendOp ((PRInt32) 1)
 #define eAskMeOp ((PRInt32) 2)
 #define eDeniedOp ((PRInt32) 3)
 
 class nsMsgMdnGenerator : public nsIMsgMdnGenerator, public nsIUrlListener
 {
--- a/mailnews/imap/src/nsImapMailFolder.cpp
+++ b/mailnews/imap/src/nsImapMailFolder.cpp
@@ -121,17 +121,17 @@
 #include "prprf.h"
 #include "nsIMutableArray.h"
 #include "nsArrayUtils.h"
 #include "nsArrayEnumerator.h"
 #include "nsAutoSyncManager.h"
 #include "nsIMsgFilterCustomAction.h"
 #include "nsMsgReadStateTxn.h"
 #include "nsIStringEnumerator.h"
-
+#include "nsIMsgStatusFeedback.h"
 
 static NS_DEFINE_CID(kRDFServiceCID, NS_RDFSERVICE_CID);
 static NS_DEFINE_CID(kParseMailMsgStateCID, NS_PARSEMAILMSGSTATE_CID);
 static NS_DEFINE_CID(kCImapHostSessionList, NS_IIMAPHOSTSESSIONLIST_CID);
 
 nsIAtom* nsImapMailFolder::mImapHdrDownloadedAtom=nsnull;
 
 #define FOUR_K 4096
--- a/mailnews/imap/src/nsImapOfflineSync.h
+++ b/mailnews/imap/src/nsImapOfflineSync.h
@@ -40,16 +40,17 @@
 
 
 #include "nsIMsgDatabase.h"
 #include "nsIUrlListener.h"
 #include "nsIMsgOfflineImapOperation.h"
 #include "nsIMsgWindow.h"
 #include "nsIMsgFolder.h"
 #include "nsCOMArray.h"
+#include "nsIEnumerator.h"
 
 class nsImapOfflineSync : public nsIUrlListener, public nsIMsgCopyServiceListener {
 public:												// set to one folder to playback one folder only
   nsImapOfflineSync(nsIMsgWindow *window, nsIUrlListener *listener, nsIMsgFolder *singleFolderOnly = nsnull, PRBool isPseudoOffline = PR_FALSE);
 
   virtual ~nsImapOfflineSync();
   
   NS_DECL_ISUPPORTS
--- a/mailnews/imap/src/nsImapProtocol.cpp
+++ b/mailnews/imap/src/nsImapProtocol.cpp
@@ -51,17 +51,17 @@
 #include "nsIServiceManager.h"
 #include "nsICharsetConverterManager.h"
 #include "nsIStringBundle.h"
 #include "nsReadableUtils.h"
 
 #include "nsMsgImapCID.h"
 #include "nsThreadUtils.h"
 #include "nsISupportsObsolete.h"
-
+#include "nsIMsgStatusFeedback.h"
 #include "nsImapCore.h"
 #include "nsImapProtocol.h"
 #include "nsIMsgMailNewsUrl.h"
 #include "nsIMAPHostSessionList.h"
 #include "nsIMAPBodyShell.h"
 #include "nsImapMailFolder.h"
 #include "nsImapServerResponseParser.h"
 #include "nspr.h"
--- a/mailnews/imap/src/nsImapProtocol.h
+++ b/mailnews/imap/src/nsImapProtocol.h
@@ -81,16 +81,17 @@
 #include "nsIImapIncomingServer.h"
 #include "nsIMsgWindow.h"
 #include "nsICacheListener.h"
 #include "nsIImapHeaderXferInfo.h"
 #include "nsMsgLineBuffer.h"
 #include "nsIAsyncInputStream.h"
 #include "nsITimer.h"
 #include "nsAutoPtr.h"
+#include "nsIMsgFolder.h"
 
 class nsIMAPMessagePartIDArray;
 class nsIMsgIncomingServer;
 class nsIPrefBranch;
 
 #define kDownLoadCacheSize 16000 // was 1536 - try making it bigger
 
 
--- a/mailnews/imap/src/nsImapUndoTxn.cpp
+++ b/mailnews/imap/src/nsImapUndoTxn.cpp
@@ -40,16 +40,17 @@
 #include "nsMsgImapCID.h"
 #include "nsIMsgHdr.h"
 #include "nsImapUndoTxn.h"
 #include "nsIIMAPHostSessionList.h"
 #include "nsIMsgIncomingServer.h"
 #include "nsIDBFolderInfo.h"
 #include "nsIMsgDatabase.h"
 #include "nsMsgUtils.h"
+#include "nsISupportsArray.h"
 
 nsImapMoveCopyMsgTxn::nsImapMoveCopyMsgTxn() :
     m_idsAreUids(PR_FALSE), m_isMove(PR_FALSE), m_srcIsPop3(PR_FALSE)
 {
 }
 
 nsresult
 nsImapMoveCopyMsgTxn::Init(nsIMsgFolder* srcFolder, nsTArray<nsMsgKey>* srcKeyArray, 
--- a/mailnews/news/src/nsNewsDownloader.cpp
+++ b/mailnews/news/src/nsNewsDownloader.cpp
@@ -47,16 +47,17 @@
 #include "nsIMsgSearchTerm.h"
 #include "nsIMsgSearchValidityManager.h"
 #include "nsRDFCID.h"
 #include "nsIMsgAccountManager.h"
 #include "nsMsgFolderFlags.h"
 #include "nsIRequestObserver.h"
 #include "nsIMsgMailSession.h"
 #include "nsMsgMessageFlags.h"
+#include "nsIMsgStatusFeedback.h"
 
 // This file contains the news article download state machine.
 
 // if pIds is not null, download the articles whose id's are passed in. Otherwise,
 // which articles to download is determined by nsNewsDownloader object,
 // or subclasses thereof. News can download marked objects, for example.
 nsresult nsNewsDownloader::DownloadArticles(nsIMsgWindow *window, nsIMsgFolder *folder, nsTArray<nsMsgKey> *pIds)
 {
--- a/mailnews/news/src/nsNewsDownloader.h
+++ b/mailnews/news/src/nsNewsDownloader.h
@@ -41,16 +41,17 @@
 
 #include "nsIMsgDatabase.h"
 #include "nsIUrlListener.h"
 #include "nsIMsgFolder.h"
 #include "nsIMsgHdr.h"
 #include "nsIMsgWindow.h"
 #include "nsIMsgSearchNotify.h"
 #include "nsIMsgSearchSession.h"
+#include "nsIEnumerator.h"
 
 // base class for downloading articles in a single newsgroup. Keys to download are passed in
 // to DownloadArticles method.
 class nsNewsDownloader : public nsIUrlListener, public nsIMsgSearchNotify
 {
 public:
   nsNewsDownloader(nsIMsgWindow *window, nsIMsgDatabase *db, nsIUrlListener *listener);
   virtual ~nsNewsDownloader();