diff --git a/mozilla/docshell/base/nsDocShell.h b/mozilla/docshell/base/nsDocShell.h index bfca595b63b..c8421d22a93 100644 --- a/mozilla/docshell/base/nsDocShell.h +++ b/mozilla/docshell/base/nsDocShell.h @@ -1,4 +1,4 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- * * The contents of this file are subject to the Mozilla Public * License Version 1.1 (the "License"); you may not use this file @@ -77,28 +77,28 @@ /* load commands */ enum LoadCmd { - LOAD_CMD_NORMAL = 0x1, // Normal load - LOAD_CMD_RELOAD = 0x2, // Reload - LOAD_CMD_HISTORY = 0x4 // Load from history + LOAD_CMD_NORMAL = 0x1, // Normal load + LOAD_CMD_RELOAD = 0x2, // Reload + LOAD_CMD_HISTORY = 0x4 // Load from history }; -/* load types are legal combinations of load commands and flags*/ +/* load types are legal combinations of load commands and flags */ enum LoadType { - LOAD_NORMAL = MAKE_LOAD_TYPE(LOAD_CMD_NORMAL, nsIWebNavigation::LOAD_FLAGS_NONE), - LOAD_NORMAL_REPLACE = MAKE_LOAD_TYPE(LOAD_CMD_NORMAL, nsIWebNavigation::LOAD_FLAGS_REPLACE_HISTORY), - LOAD_HISTORY = MAKE_LOAD_TYPE(LOAD_CMD_HISTORY, nsIWebNavigation::LOAD_FLAGS_NONE), - LOAD_RELOAD_NORMAL = MAKE_LOAD_TYPE(LOAD_CMD_RELOAD, nsIWebNavigation::LOAD_FLAGS_NONE), - LOAD_RELOAD_BYPASS_CACHE = MAKE_LOAD_TYPE(LOAD_CMD_RELOAD, nsIWebNavigation::LOAD_FLAGS_BYPASS_CACHE), - LOAD_RELOAD_BYPASS_PROXY = MAKE_LOAD_TYPE(LOAD_CMD_RELOAD, nsIWebNavigation::LOAD_FLAGS_BYPASS_PROXY), - LOAD_RELOAD_BYPASS_PROXY_AND_CACHE = MAKE_LOAD_TYPE(LOAD_CMD_RELOAD, nsIWebNavigation::LOAD_FLAGS_BYPASS_CACHE | nsIWebNavigation::LOAD_FLAGS_BYPASS_PROXY), - LOAD_LINK = MAKE_LOAD_TYPE(LOAD_CMD_NORMAL, nsIWebNavigation::LOAD_FLAGS_IS_LINK), - LOAD_REFRESH = MAKE_LOAD_TYPE(LOAD_CMD_NORMAL, nsIWebNavigation::LOAD_FLAGS_IS_REFRESH) + LOAD_NORMAL = MAKE_LOAD_TYPE(LOAD_CMD_NORMAL, nsIWebNavigation::LOAD_FLAGS_NONE), + LOAD_NORMAL_REPLACE = MAKE_LOAD_TYPE(LOAD_CMD_NORMAL, nsIWebNavigation::LOAD_FLAGS_REPLACE_HISTORY), + LOAD_HISTORY = MAKE_LOAD_TYPE(LOAD_CMD_HISTORY, nsIWebNavigation::LOAD_FLAGS_NONE), + LOAD_RELOAD_NORMAL = MAKE_LOAD_TYPE(LOAD_CMD_RELOAD, nsIWebNavigation::LOAD_FLAGS_NONE), + LOAD_RELOAD_BYPASS_CACHE = MAKE_LOAD_TYPE(LOAD_CMD_RELOAD, nsIWebNavigation::LOAD_FLAGS_BYPASS_CACHE), + LOAD_RELOAD_BYPASS_PROXY = MAKE_LOAD_TYPE(LOAD_CMD_RELOAD, nsIWebNavigation::LOAD_FLAGS_BYPASS_PROXY), + LOAD_RELOAD_BYPASS_PROXY_AND_CACHE = MAKE_LOAD_TYPE(LOAD_CMD_RELOAD, nsIWebNavigation::LOAD_FLAGS_BYPASS_CACHE | nsIWebNavigation::LOAD_FLAGS_BYPASS_PROXY), + LOAD_LINK = MAKE_LOAD_TYPE(LOAD_CMD_NORMAL, nsIWebNavigation::LOAD_FLAGS_IS_LINK), + LOAD_REFRESH = MAKE_LOAD_TYPE(LOAD_CMD_NORMAL, nsIWebNavigation::LOAD_FLAGS_IS_REFRESH) }; /* internally used ViewMode types */ enum ViewMode { - viewNormal = 0x0, - viewSource = 0x1 + viewNormal = 0x0, + viewSource = 0x1 }; //***************************************************************************** @@ -108,21 +108,21 @@ enum ViewMode { class nsRefreshTimer : public nsITimerCallback { public: - nsRefreshTimer(); + nsRefreshTimer(); - NS_DECL_ISUPPORTS - - // nsITimerCallback interface - NS_IMETHOD_(void) Notify(nsITimer *timer); + NS_DECL_ISUPPORTS + + // nsITimerCallback interface + NS_IMETHOD_(void) Notify(nsITimer * timer); - nsCOMPtr mDocShell; - nsCOMPtr mURI; - PRBool mRepeat; - PRInt32 mDelay; - PRBool mMetaRefresh; + nsCOMPtr mDocShell; + nsCOMPtr mURI; + PRBool mRepeat; + PRInt32 mDelay; + PRBool mMetaRefresh; protected: - virtual ~nsRefreshTimer(); + virtual ~nsRefreshTimer(); }; //***************************************************************************** @@ -132,11 +132,11 @@ protected: class nsDocShellInitInfo { public: - //nsIGenericWindow Stuff - PRInt32 x; - PRInt32 y; - PRInt32 cx; - PRInt32 cy; + //nsIGenericWindow Stuff + PRInt32 x; + PRInt32 y; + PRInt32 cx; + PRInt32 cy; }; //***************************************************************************** @@ -161,172 +161,174 @@ class nsDocShell : public nsIDocShell, friend class nsDSURIContentListener; public: - // Object Management - nsDocShell(); + // Object Management + nsDocShell(); - NS_DECL_ISUPPORTS + NS_DECL_ISUPPORTS - NS_DECL_NSIDOCSHELL - NS_DECL_NSIDOCSHELLTREEITEM - NS_DECL_NSIDOCSHELLTREENODE - NS_DECL_NSIDOCSHELLHISTORY - NS_DECL_NSIWEBNAVIGATION - NS_DECL_NSIBASEWINDOW - NS_DECL_NSISCROLLABLE - NS_DECL_NSITEXTSCROLL - NS_DECL_NSIINTERFACEREQUESTOR - NS_DECL_NSISCRIPTGLOBALOBJECTOWNER - NS_DECL_NSIWEBPROGRESSLISTENER - NS_DECL_NSIREFRESHURI - NS_DECL_NSICONTENTVIEWERCONTAINER + NS_DECL_NSIDOCSHELL + NS_DECL_NSIDOCSHELLTREEITEM + NS_DECL_NSIDOCSHELLTREENODE + NS_DECL_NSIDOCSHELLHISTORY + NS_DECL_NSIWEBNAVIGATION + NS_DECL_NSIBASEWINDOW + NS_DECL_NSISCROLLABLE + NS_DECL_NSITEXTSCROLL + NS_DECL_NSIINTERFACEREQUESTOR + NS_DECL_NSISCRIPTGLOBALOBJECTOWNER + NS_DECL_NSIWEBPROGRESSLISTENER + NS_DECL_NSIREFRESHURI + NS_DECL_NSICONTENTVIEWERCONTAINER - nsresult SetLoadCookie(nsISupports *aCookie); - nsresult GetLoadCookie(nsISupports **aResult); - // used when the docshell gets content that's being redirected (so we don't go through - // our own InternalLoad method) to reset the load type... - nsresult SetLoadType(PRUint32 aLoadType); - nsDocShellInfoLoadType ConvertLoadTypeToDocShellLoadInfo(PRUint32 aLoadType); - PRUint32 ConvertDocShellLoadInfoToLoadType(nsDocShellInfoLoadType aDocShellLoadType); + nsresult SetLoadCookie(nsISupports * aCookie); + nsresult GetLoadCookie(nsISupports ** aResult); + // used when the docshell gets content that's being redirected (so we don't go through + // our own InternalLoad method) to reset the load type... + nsresult SetLoadType(PRUint32 aLoadType); + nsDocShellInfoLoadType ConvertLoadTypeToDocShellLoadInfo(PRUint32 aLoadType); + PRUint32 ConvertDocShellLoadInfoToLoadType(nsDocShellInfoLoadType aDocShellLoadType); protected: - // Object Management - virtual ~nsDocShell(); - NS_IMETHOD DestroyChildren(); + // Object Management + virtual ~nsDocShell(); + NS_IMETHOD DestroyChildren(); - // Content Viewer Management - NS_IMETHOD EnsureContentViewer(); - NS_IMETHOD EnsureDeviceContext(); - NS_IMETHOD CreateAboutBlankContentViewer(); - NS_IMETHOD CreateContentViewer(const char* aContentType, - nsIRequest *request, nsIStreamListener** aContentHandler); - NS_IMETHOD NewContentViewerObj(const char* aContentType, - nsIRequest *request, nsILoadGroup* aLoadGroup, - nsIStreamListener** aContentHandler, nsIContentViewer** aViewer); - NS_IMETHOD SetupNewViewer(nsIContentViewer* aNewViewer); + // Content Viewer Management + NS_IMETHOD EnsureContentViewer(); + NS_IMETHOD EnsureDeviceContext(); + NS_IMETHOD CreateAboutBlankContentViewer(); + NS_IMETHOD CreateContentViewer(const char * aContentType, + nsIRequest * request, nsIStreamListener ** aContentHandler); + NS_IMETHOD NewContentViewerObj(const char * aContentType, + nsIRequest * request, nsILoadGroup * aLoadGroup, + nsIStreamListener ** aContentHandler, nsIContentViewer ** aViewer); + NS_IMETHOD SetupNewViewer(nsIContentViewer * aNewViewer); - NS_IMETHOD InternalLoad(nsIURI* aURI, nsIURI* aReferrerURI, - nsISupports* owner, PRBool inheritOwnerFromDocument, PRBool stopActiveDoc, - const char* aWindowTarget=nsnull, - nsIInputStream* aPostData=nsnull, nsIInputStream* aHeadersData=nsnull, PRUint32 aLoadType=LOAD_NORMAL, nsISHEntry * aSHEntry = nsnull); - NS_IMETHOD CreateFixupURI(const PRUnichar* aStringURI, nsIURI** aURI); - NS_IMETHOD GetCurrentDocumentOwner(nsISupports** aOwner); - NS_IMETHOD DoURILoad(nsIURI* aURI, nsIURI* aReferrer, nsISupports *aOwner, - PRBool inheritOwnerFromDocument, nsURILoadCommand aLoadCmd, - const char* aWindowTarget, - nsIInputStream* aPostData, nsIInputStream* aHeadersData); - NS_IMETHOD AddHeadersToChannel(nsIInputStream *aHeadersData, - nsIChannel *aChannel); - NS_IMETHOD DoChannelLoad(nsIChannel* aChannel, nsURILoadCommand aLoadCmd, - const char* aWindowTarget, nsIURILoader *aURILoader); - NS_IMETHOD ScrollIfAnchor(nsIURI* aURI, PRBool* aWasAnchor); - NS_IMETHOD OnLoadingSite(nsIChannel* aChannel); + NS_IMETHOD InternalLoad(nsIURI * aURI, nsIURI * aReferrerURI, + nsISupports * owner, PRBool inheritOwnerFromDocument, + PRBool stopActiveDoc, const char * aWindowTarget = nsnull, + nsIInputStream * aPostData = nsnull, + nsIInputStream * aHeadersData = nsnull, + PRUint32 aLoadType = LOAD_NORMAL, nsISHEntry * aSHEntry = nsnull); + NS_IMETHOD CreateFixupURI(const PRUnichar * aStringURI, nsIURI ** aURI); + NS_IMETHOD GetCurrentDocumentOwner(nsISupports ** aOwner); + NS_IMETHOD DoURILoad(nsIURI * aURI, nsIURI * aReferrer, + nsISupports * aOwner, PRBool inheritOwnerFromDocument, + nsURILoadCommand aLoadCmd, const char * aWindowTarget, + nsIInputStream * aPostData, nsIInputStream * aHeadersData); + NS_IMETHOD AddHeadersToChannel(nsIInputStream * aHeadersData, + nsIChannel * aChannel); + NS_IMETHOD DoChannelLoad(nsIChannel * aChannel, nsURILoadCommand aLoadCmd, + const char * aWindowTarget, nsIURILoader * aURILoader); + NS_IMETHOD ScrollIfAnchor(nsIURI * aURI, PRBool * aWasAnchor); + NS_IMETHOD OnLoadingSite(nsIChannel * aChannel); - NS_IMETHOD OnNewURI(nsIURI *aURI, nsIChannel* aChannel, PRUint32 aLoadType); + NS_IMETHOD OnNewURI(nsIURI * aURI, nsIChannel * aChannel, PRUint32 aLoadType); - virtual void SetCurrentURI(nsIURI* aURI); - virtual void SetReferrerURI(nsIURI* aURI); + virtual void SetCurrentURI(nsIURI * aURI); + virtual void SetReferrerURI(nsIURI * aURI); - // Session History - virtual PRBool ShouldAddToSessionHistory(nsIURI* aURI); - virtual nsresult AddToSessionHistory(nsIURI* aURI, nsIChannel *aChannel, - nsISHEntry **aNewEntry); + // Session History + virtual PRBool ShouldAddToSessionHistory(nsIURI * aURI); + virtual nsresult AddToSessionHistory(nsIURI * aURI, nsIChannel * aChannel, + nsISHEntry ** aNewEntry); - NS_IMETHOD LoadHistoryEntry(nsISHEntry* aEntry, PRUint32 aLoadType); -// NS_IMETHOD GetCurrentSHE(PRInt32 aChildOffset, nsISHEntry ** aResult); - NS_IMETHOD PersistLayoutHistoryState(); - NS_IMETHOD CloneAndReplace(nsISHEntry* srcEntry, PRUint32 aCloneID, - nsISHEntry * areplaceEntry, nsISHEntry **destEntry); - // Global History - NS_IMETHOD ShouldAddToGlobalHistory(nsIURI* aURI, PRBool* aShouldAdd); - NS_IMETHOD AddToGlobalHistory(nsIURI* aURI); - NS_IMETHOD UpdateCurrentGlobalHistory(); + NS_IMETHOD LoadHistoryEntry(nsISHEntry * aEntry, PRUint32 aLoadType); + NS_IMETHOD PersistLayoutHistoryState(); + NS_IMETHOD CloneAndReplace(nsISHEntry * srcEntry, PRUint32 aCloneID, + nsISHEntry * areplaceEntry, nsISHEntry ** destEntry); + + // Global History + NS_IMETHOD ShouldAddToGlobalHistory(nsIURI * aURI, PRBool * aShouldAdd); + NS_IMETHOD AddToGlobalHistory(nsIURI * aURI); + NS_IMETHOD UpdateCurrentGlobalHistory(); - // Helper Routines - nsDocShellInitInfo* InitInfo(); - NS_IMETHOD GetPromptAndStringBundle(nsIPrompt** aPrompt, nsIStringBundle** - aStringBundle); - NS_IMETHOD GetChildOffset(nsIDOMNode* aChild, nsIDOMNode* aParent, - PRInt32* aOffset); - NS_IMETHOD GetRootScrollableView(nsIScrollableView** aOutScrollView); - NS_IMETHOD EnsureContentListener(); - NS_IMETHOD EnsureScriptEnvironment(); + // Helper Routines + nsDocShellInitInfo * InitInfo(); + NS_IMETHOD GetPromptAndStringBundle(nsIPrompt ** aPrompt, + nsIStringBundle ** aStringBundle); + NS_IMETHOD GetChildOffset(nsIDOMNode * aChild, nsIDOMNode * aParent, + PRInt32 * aOffset); + NS_IMETHOD GetRootScrollableView(nsIScrollableView ** aOutScrollView); + NS_IMETHOD EnsureContentListener(); + NS_IMETHOD EnsureScriptEnvironment(); - PRBool IsFrame(); + PRBool IsFrame(); - // - // Helper method that is called when a new document (including any - // sub-documents - ie. frames) has been completely loaded. - // - virtual nsresult EndPageLoad(nsIWebProgress *aProgress, - nsIChannel *aChannel, - nsresult aResult); + // + // Helper method that is called when a new document (including any + // sub-documents - ie. frames) has been completely loaded. + // + virtual nsresult EndPageLoad(nsIWebProgress * aProgress, + nsIChannel * aChannel, + nsresult aResult); protected: - nsString mName; - nsString mTitle; - nsVoidArray mChildren; - nsCOMPtr mRefreshURIList; - nsDSURIContentListener* mContentListener; - nsDocShellInitInfo* mInitInfo; - nsCOMPtr mContentViewer; - nsCOMPtr mDocumentCharsetInfo; - nsCOMPtr mDeviceContext; - nsCOMPtrmDocLoader; - nsCOMPtr mDocLoaderObserver; - nsCOMPtr mParentWidget; - nsCOMPtr mPrefs; - nsCOMPtr mCurrentURI; - nsCOMPtr mReferrerURI; - nsCOMPtr mScriptGlobal; - nsCOMPtr mScriptContext; - nsCOMPtr mSessionHistory; - nsCOMPtr mGlobalHistory; - nsCOMPtr mLoadCookie; // the load cookie associated with the window context. - nsCOMPtr mURIFixup; - PRInt32 mMarginWidth; - PRInt32 mMarginHeight; - PRInt32 mItemType; - nsPoint mCurrentScrollbarPref; // this document only - nsPoint mDefaultScrollbarPref; // persistent across doc loads - PRUint32 mLoadType; - PRBool mInitialPageLoad; - PRBool mAllowPlugins; - PRBool mAllowJavascript; - PRBool mAllowMetaRedirects; - PRBool mAllowSubframes; - PRUint32 mAppType; - PRInt32 mChildOffset; // Offset in the parent's child list. - PRUint32 mBusyFlags; - // Reference to the SHEntry for this docshell until the page is destroyed. - // Somebody give me better name - nsCOMPtr OSHE; - // Reference to the SHEntry for this docshell until the page is loaded - // Somebody give me better name - nsCOMPtr LSHE; + nsString mName; + nsString mTitle; + nsVoidArray mChildren; + nsCOMPtr mRefreshURIList; + nsDSURIContentListener * mContentListener; + nsDocShellInitInfo * mInitInfo; + nsCOMPtr mContentViewer; + nsCOMPtr mDocumentCharsetInfo; + nsCOMPtr mDeviceContext; + nsCOMPtrmDocLoader; + nsCOMPtr mDocLoaderObserver; + nsCOMPtr mParentWidget; + nsCOMPtr mPrefs; + nsCOMPtr mCurrentURI; + nsCOMPtr mReferrerURI; + nsCOMPtr mScriptGlobal; + nsCOMPtr mScriptContext; + nsCOMPtr mSessionHistory; + nsCOMPtr mGlobalHistory; + nsCOMPtr mLoadCookie; // the load cookie associated with the window context. + nsCOMPtr mURIFixup; + PRInt32 mMarginWidth; + PRInt32 mMarginHeight; + PRInt32 mItemType; + nsPoint mCurrentScrollbarPref; // this document only + nsPoint mDefaultScrollbarPref; // persistent across doc loads + PRUint32 mLoadType; + PRBool mInitialPageLoad; + PRBool mAllowPlugins; + PRBool mAllowJavascript; + PRBool mAllowMetaRedirects; + PRBool mAllowSubframes; + PRUint32 mAppType; + PRInt32 mChildOffset; // Offset in the parent's child list. + PRUint32 mBusyFlags; + // Reference to the SHEntry for this docshell until the page is destroyed. + // Somebody give me better name + nsCOMPtr OSHE; + // Reference to the SHEntry for this docshell until the page is loaded + // Somebody give me better name + nsCOMPtr LSHE; - // this flag is for bug #21358. a docshell may load many urls - // which don't result in new documents being created (i.e. a new content viewer) - // we want to make sure we don't call a on load event more than once for a given - // content viewer. - PRBool mEODForCurrentDocument; - PRBool mURIResultedInDocument; + // this flag is for bug #21358. a docshell may load many urls + // which don't result in new documents being created (i.e. a new content viewer) + // we want to make sure we don't call a on load event more than once for a given + // content viewer. + PRBool mEODForCurrentDocument; + PRBool mURIResultedInDocument; - // used to keep track of whether user click links should be handle by us - // or immediately kicked out to an external application. mscott: eventually - // i'm going to try to fold this up into the uriloader where it belongs but i haven't - // figured out how to do that yet. - PRBool mUseExternalProtocolHandler; + // used to keep track of whether user click links should be handle by us + // or immediately kicked out to an external application. mscott: eventually + // i'm going to try to fold this up into the uriloader where it belongs but i haven't + // figured out how to do that yet. + PRBool mUseExternalProtocolHandler; - // Disallow popping up new windows with target= - PRBool mDisallowPopupWindows; + // Disallow popping up new windows with target= + PRBool mDisallowPopupWindows; - /* WEAK REFERENCES BELOW HERE. - Note these are intentionally not addrefd. Doing so will create a cycle. - For that reasons don't use nsCOMPtr.*/ - nsIDocShellTreeItem* mParent; // Weak Reference - nsIDocShellTreeOwner* mTreeOwner; // Weak Reference - nsIChromeEventHandler* mChromeEventHandler; //Weak Reference + // WEAK REFERENCES BELOW HERE. + // Note these are intentionally not addrefd. Doing so will create a cycle. + // For that reasons don't use nsCOMPtr. + nsIDocShellTreeItem * mParent; // Weak Reference + nsIDocShellTreeOwner * mTreeOwner; // Weak Reference + nsIChromeEventHandler * mChromeEventHandler; //Weak Reference }; #endif /* nsDocShell_h__ */ diff --git a/mozilla/docshell/base/nsWebShell.h b/mozilla/docshell/base/nsWebShell.h index ebf2aefa35d..b5a1daa3c63 100644 --- a/mozilla/docshell/base/nsWebShell.h +++ b/mozilla/docshell/base/nsWebShell.h @@ -1,3 +1,24 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * + * The contents of this file are subject to the Mozilla Public + * License Version 1.1 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS + * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + * implied. See the License for the specific language governing + * rights and limitations under the License. + * + * The Original Code is the Mozilla browser. + * + * The Initial Developer of the Original Code is Netscape + * Communications, Inc. Portions created by Netscape are + * Copyright (C) 1999, Mozilla. All Rights Reserved. + * + * Contributor(s): + * + */ #ifndef webshell____h #define webshell____h @@ -10,9 +31,9 @@ class nsIController; typedef enum { - eCharsetReloadInit, - eCharsetReloadRequested, - eCharsetReloadStopOrigional +eCharsetReloadInit, +eCharsetReloadRequested, +eCharsetReloadStopOrigional } eCharsetReloadState; class nsWebShell : public nsDocShell, @@ -23,148 +44,131 @@ class nsWebShell : public nsDocShell, public nsIClipboardCommands { public: - nsWebShell(); - virtual ~nsWebShell(); + nsWebShell(); + virtual ~nsWebShell(); - NS_DECL_AND_IMPL_ZEROING_OPERATOR_NEW + NS_DECL_AND_IMPL_ZEROING_OPERATOR_NEW - NS_DECL_ISUPPORTS_INHERITED - NS_DECL_NSIINTERFACEREQUESTOR - NS_DECL_NSICLIPBOARDCOMMANDS - NS_DECL_NSIWEBSHELLSERVICES + NS_DECL_ISUPPORTS_INHERITED + NS_DECL_NSIINTERFACEREQUESTOR + NS_DECL_NSICLIPBOARDCOMMANDS + NS_DECL_NSIWEBSHELLSERVICES - NS_IMETHOD SetupNewViewer(nsIContentViewer* aViewer); + NS_IMETHOD SetupNewViewer(nsIContentViewer* aViewer); - // nsIContentViewerContainer - NS_IMETHOD Embed(nsIContentViewer* aDocViewer, + // nsIContentViewerContainer + NS_IMETHOD Embed(nsIContentViewer* aDocViewer, const char* aCommand, nsISupports* aExtraInfo); - // nsIWebShell - NS_IMETHOD SetContainer(nsIWebShellContainer* aContainer); - NS_IMETHOD GetContainer(nsIWebShellContainer*& aResult); - NS_IMETHOD GetTopLevelWindow(nsIWebShellContainer** aWebShellWindow); - NS_IMETHOD GetRootWebShell(nsIWebShell*& aResult); - /*NS_IMETHOD SetParent(nsIWebShell* aParent); - NS_IMETHOD GetParent(nsIWebShell*& aParent);*/ - NS_IMETHOD GetReferrer(nsIURI **aReferrer); + // nsIWebShell + NS_IMETHOD SetContainer(nsIWebShellContainer* aContainer); + NS_IMETHOD GetContainer(nsIWebShellContainer*& aResult); + NS_IMETHOD GetTopLevelWindow(nsIWebShellContainer** aWebShellWindow); + NS_IMETHOD GetRootWebShell(nsIWebShell*& aResult); + /*NS_IMETHOD SetParent(nsIWebShell* aParent); + NS_IMETHOD GetParent(nsIWebShell*& aParent);*/ + NS_IMETHOD GetReferrer(nsIURI **aReferrer); - // Document load api's - NS_IMETHOD GetDocumentLoader(nsIDocumentLoader*& aResult); + // Document load api's + NS_IMETHOD GetDocumentLoader(nsIDocumentLoader*& aResult); -/* NS_IMETHOD LoadURL(const PRUnichar *aURLSpec, - const char* aCommand, - nsIInputStream* aPostDataStream=nsnull, - PRBool aModifyHistory=PR_TRUE, - nsLoadFlags aType = nsIChannel::LOAD_NORMAL, - nsISupports * aHistoryState=nsnull, - const PRUnichar* aReferrer=nsnull, - const char * aWindowTarget = nsnull); + void SetReferrer(const PRUnichar* aReferrer); - NS_IMETHOD LoadURI(nsIURI * aUri, - const char * aCommand, - nsIInputStream* aPostDataStream=nsnull, - PRBool aModifyHistory=PR_TRUE, - nsLoadFlags aType = nsIChannel::LOAD_NORMAL, - nsISupports * aHistoryState=nsnull, - const PRUnichar* aReferrer=nsnull, - const char * aWindowTarget = nsnull); - */ - void SetReferrer(const PRUnichar* aReferrer); + // History api's + NS_IMETHOD GoTo(PRInt32 aHistoryIndex); + NS_IMETHOD GetHistoryLength(PRInt32& aResult); + NS_IMETHOD GetHistoryIndex(PRInt32& aResult); + NS_IMETHOD GetURL(PRInt32 aHistoryIndex, const PRUnichar** aURLResult); - // History api's - NS_IMETHOD GoTo(PRInt32 aHistoryIndex); - NS_IMETHOD GetHistoryLength(PRInt32& aResult); - NS_IMETHOD GetHistoryIndex(PRInt32& aResult); - NS_IMETHOD GetURL(PRInt32 aHistoryIndex, const PRUnichar** aURLResult); + // nsIWebShellContainer + NS_IMETHOD SetHistoryState(nsISupports* aLayoutHistoryState); + NS_IMETHOD FireUnloadEvent(void); - // nsIWebShellContainer - NS_IMETHOD SetHistoryState(nsISupports* aLayoutHistoryState); - NS_IMETHOD FireUnloadEvent(void); - - // nsILinkHandler - NS_IMETHOD OnLinkClick(nsIContent* aContent, - nsLinkVerb aVerb, - const PRUnichar* aURLSpec, - const PRUnichar* aTargetSpec, - nsIInputStream* aPostDataStream = 0, - nsIInputStream* aHeadersDataStream = 0); - NS_IMETHOD OnOverLink(nsIContent* aContent, - const PRUnichar* aURLSpec, - const PRUnichar* aTargetSpec); - NS_IMETHOD GetLinkState(const char* aLinkURI, nsLinkState& aState); + // nsILinkHandler + NS_IMETHOD OnLinkClick(nsIContent* aContent, + nsLinkVerb aVerb, + const PRUnichar* aURLSpec, + const PRUnichar* aTargetSpec, + nsIInputStream* aPostDataStream = 0, + nsIInputStream* aHeadersDataStream = 0); + NS_IMETHOD OnOverLink(nsIContent* aContent, + const PRUnichar* aURLSpec, + const PRUnichar* aTargetSpec); + NS_IMETHOD GetLinkState(const char* aLinkURI, nsLinkState& aState); - NS_IMETHOD FindNext(const PRUnichar * aSearchStr, PRBool aMatchCase, PRBool aSearchDown, PRBool &aIsFound); + NS_IMETHOD FindNext(const PRUnichar * aSearchStr, PRBool aMatchCase, + PRBool aSearchDown, PRBool &aIsFound); - // nsIBaseWindow - NS_IMETHOD SetPositionAndSize(PRInt32 x, PRInt32 y, PRInt32 cx, - PRInt32 cy, PRBool fRepaint); - NS_IMETHOD GetPositionAndSize(PRInt32* x, PRInt32* y, - PRInt32* cx, PRInt32* cy); - NS_IMETHOD Create(); - NS_IMETHOD Destroy(); + // nsIBaseWindow + NS_IMETHOD SetPositionAndSize(PRInt32 x, PRInt32 y, PRInt32 cx, + PRInt32 cy, PRBool fRepaint); + NS_IMETHOD GetPositionAndSize(PRInt32* x, PRInt32* y, + PRInt32* cx, PRInt32* cy); + NS_IMETHOD Create(); + NS_IMETHOD Destroy(); // nsWebShell - nsIEventQueue* GetEventQueue(void); - void HandleLinkClickEvent(nsIContent *aContent, - nsLinkVerb aVerb, - const PRUnichar* aURLSpec, - const PRUnichar* aTargetSpec, - nsIInputStream* aPostDataStream = 0, - nsIInputStream* aHeadersDataStream = 0); + nsIEventQueue* GetEventQueue(void); + void HandleLinkClickEvent(nsIContent *aContent, + nsLinkVerb aVerb, + const PRUnichar* aURLSpec, + const PRUnichar* aTargetSpec, + nsIInputStream* aPostDataStream = 0, + nsIInputStream* aHeadersDataStream = 0); - static nsEventStatus PR_CALLBACK HandleEvent(nsGUIEvent *aEvent); + static nsEventStatus PR_CALLBACK HandleEvent(nsGUIEvent *aEvent); - NS_IMETHOD SetURL(const PRUnichar* aURL); + NS_IMETHOD SetURL(const PRUnichar* aURL); - // XXX: Temporary - until I can get rid of SetDocLoaderObserver :-) - NS_IMETHOD OnStateChange(nsIWebProgress *aProgress, - nsIRequest *aRequest, - PRInt32 aStateFlags, - nsresult aStatus); + // XXX: Temporary - until I can get rid of SetDocLoaderObserver :-) + NS_IMETHOD OnStateChange(nsIWebProgress *aProgress, + nsIRequest *aRequest, + PRInt32 aStateFlags, + nsresult aStatus); protected: - void GetRootWebShellEvenIfChrome(nsIWebShell** aResult); - void InitFrameData(); - + void GetRootWebShellEvenIfChrome(nsIWebShell** aResult); + void InitFrameData(); + // helpers for executing commands - virtual nsresult GetControllerForCommand ( const nsAReadableString & inCommand, nsIController** outController ); - virtual nsresult IsCommandEnabled ( const nsAReadableString & inCommand, PRBool* outEnabled ); - virtual nsresult DoCommand ( const nsAReadableString & inCommand ); + virtual nsresult GetControllerForCommand ( const nsAReadableString & inCommand, nsIController** outController ); + virtual nsresult IsCommandEnabled ( const nsAReadableString & inCommand, PRBool* outEnabled ); + virtual nsresult DoCommand ( const nsAReadableString & inCommand ); - // - // Helper method that is called when a new document (including any - // sub-documents - ie. frames) has been completely loaded. - // - virtual nsresult EndPageLoad(nsIWebProgress *aProgress, - nsIChannel* channel, - nsresult aStatus); + // + // Helper method that is called when a new document (including any + // sub-documents - ie. frames) has been completely loaded. + // + virtual nsresult EndPageLoad(nsIWebProgress *aProgress, + nsIChannel* channel, + nsresult aStatus); - nsIEventQueue* mThreadEventQueue; + nsIEventQueue* mThreadEventQueue; - nsIWebShellContainer* mContainer; - nsIDocumentLoader* mDocLoader; + nsIWebShellContainer* mContainer; + nsIDocumentLoader* mDocLoader; - PRBool mFiredUnloadEvent; + PRBool mFiredUnloadEvent; - nsRect mBounds; + nsRect mBounds; - eCharsetReloadState mCharsetReloadState; + eCharsetReloadState mCharsetReloadState; - nsISupports* mHistoryState; // Weak reference. Session history owns this. + nsISupports* mHistoryState; // Weak reference. Session history owns this. - nsresult FireUnloadForChildren(); + nsresult FireUnloadForChildren(); - nsresult CreateViewer(nsIRequest* request, - const char* aContentType, - const char* aCommand, - nsIStreamListener** aResult); + nsresult CreateViewer(nsIRequest* request, + const char* aContentType, + const char* aCommand, + nsIStreamListener** aResult); #ifdef DEBUG private: - // We're counting the number of |nsWebShells| to help find leaks - static unsigned long gNumberOfWebShells; + // We're counting the number of |nsWebShells| to help find leaks + static unsigned long gNumberOfWebShells; #endif /* DEBUG */ };