DocShell: Difference between revisions

328 bytes removed ,  12 May 2015
Page moved
m (Reverted edit of Zuza78, changed back to last version by Jhermans)
(Page moved)
 
(28 intermediate revisions by 20 users not shown)
Line 9: Line 9:


* [http://www.mozilla.org/projects/embedding/docshell.html About] (What actually is docshell?)
* [http://www.mozilla.org/projects/embedding/docshell.html About] (What actually is docshell?)
* [[DocShell:Fastback|How fastback is implemented]]
* [[DocShell/Fastback|How fastback is implemented]]


== 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?


== Session history (needs work) ==
== Session history (needs work) ==
== URI loading (needs work) ==
 
<h2> URI loading (needs work) </h2>
 
== Progress notifications (needs work) ==
== Progress notifications (needs work) ==


Line 57: Line 52:
== Current plans for docshell ==
== Current plans for docshell ==


[[DocShell:IRC_Logs]] has some IRC discussions concerning the future direction of docshell and docloader
[[DocShell/IRC_Logs]] has some IRC discussions concerning the future direction of docshell and docloader




Can we eliminate mOSHE/mLSHE in favor of just accessing the shistory's entry for mIndex/mRequestedIndex?
Can we eliminate mOSHE/mLSHE in favor of just accessing the shistory's entry for mIndex/mRequestedIndex?


== Completed Work ==
== Window targeting ==
 
Current and proposed setup discussed at [[DocShell/Window targeting]].
 
== Completed Works ==


nsIWebShell removed. Thanks to bz!  -- [http://bonsai.mozilla.org/cvsquery.cgi?treeid=default&module=all&branch=&branchtype=match&dir=&file=&filetype=match&who=&whotype=match&sortby=Date&hours=2&date=explicit&mindate=2005-01-03+14%3A49&maxdate=2005-01-03+14%3A51&cvsroot=%2Fcvsroot Bonsai]
nsIWebShell removed. Thanks to bz!  -- [http://bonsai.mozilla.org/cvsquery.cgi?treeid=default&module=all&branch=&branchtype=match&dir=&file=&filetype=match&who=&whotype=match&sortby=Date&hours=2&date=explicit&mindate=2005-01-03+14%3A49&maxdate=2005-01-03+14%3A51&cvsroot=%2Fcvsroot Bonsai]
canmove, Confirmed users, Bureaucrats and Sysops emeriti
960

edits