DocShell: Difference between revisions

432 bytes removed ,  19 May 2012
Get rid of old stuff that is no longer relevant
(Get rid of old stuff that is no longer relevant)
Line 13: Line 13:
== Interfaces Implemented by Docshell ==
== Interfaces Implemented by Docshell ==


Docshell + webshell implement the following interfaces
Docshell implement the following interfaces
 
Webshell:
 
* nsIWebShell                [http://lxr.mozilla.org/mozilla/source/webshell/public/nsIWebShell.h#75 LXR]
* nsIWebShellContainer        [http://lxr.mozilla.org/mozilla/source/webshell/public/nsIWebShell.h#66 LXR]
* nsIWebShellServices        [http://lxr.mozilla.org/mozilla/source/webshell/public/nsIWebShellServices.h#52 LXR]
* nsILinkHandler              [http://lxr.mozilla.org/mozilla/source/webshell/public/nsILinkHandler.h#70 LXR]
* nsIClipboardCommands (why?) [http://lxr.mozilla.org/mozilla/source/webshell/public/nsIClipboardCommands.idl#42 LXR]
 
Docshell:


* nsIDocShell                [http://lxr.mozilla.org/mozilla/source/docshell/base/nsIDocShell.idl#68 LXR]
* nsIDocShell                [http://lxr.mozilla.org/mozilla/source/docshell/base/nsIDocShell.idl#68 LXR]
Line 41: Line 31:
* nsIEditorDocShell          [http://lxr.mozilla.org/mozilla/source/docshell/base/nsIEditorDocShell.idl#45 LXR]
* nsIEditorDocShell          [http://lxr.mozilla.org/mozilla/source/docshell/base/nsIEditorDocShell.idl#45 LXR]
* nsIWebPageDescriptor        [http://lxr.mozilla.org/mozilla/source/docshell/base/nsIWebPageDescriptor.idl#38 LXR]
* nsIWebPageDescriptor        [http://lxr.mozilla.org/mozilla/source/docshell/base/nsIWebPageDescriptor.idl#38 LXR]
* nsIWebShellServices        [http://lxr.mozilla.org/mozilla/source/webshell/public/nsIWebShellServices.h#52 LXR]
* nsILinkHandler              [http://lxr.mozilla.org/mozilla/source/webshell/public/nsILinkHandler.h#70 LXR]
* nsIClipboardCommands (why?) [http://lxr.mozilla.org/mozilla/source/webshell/public/nsIClipboardCommands.idl#42 LXR]


In my view, nsIDocShellTree* and nsIWebShellContainer should all be merged into a single "tree node" interface.  nsIWebShell should merge into nsIDocShell.  nsILinkHandler, not sure.  nsIContentViewerContainer and nsIScriptGlobalObjectOwner, do we really need those?  nsIRefreshURI is probably something to merge into nsIDocShell (or even nsIWebNavigation?).  nsIEditorDocshell also doesn't really need to be a separate interface.
nsIContentViewerContainer and nsIScriptGlobalObjectOwner, do we really need those?  nsIRefreshURI is probably something to merge into nsIDocShell (or even nsIWebNavigation?).  nsIEditorDocshell also doesn't really need to be a separate interface.


Then again, do we want to just dump all sorts of stuff onto nsIDocShell?  Not sure about that.  Maybe we should look at who uses nsIDocShell and these other interfaces and why?
Then again, do we want to just dump all sorts of stuff onto nsIDocShell?  Not sure about that.  Maybe we should look at who uses nsIDocShell and these other interfaces and why?
Confirmed users, Bureaucrats and Sysops emeriti
969

edits