Rick Potts wrote:
> I'm currently looking at the nsIWebNavigation interface... I think
> that the following changes to the interface are necessary:
>
> 1. Add a 'postData' argument to LoadURI(...).
> This will address bug #46870...
> 2. Rework the LOAD_FLAGS for LOADURI(...).
> See my previous posting on 'load flags' for my justifications :-)
we had previously discussed hanging load flags, post data, referrer,
etc, off of some sort of nsILoadInfo that could be passed into
LoadURI(). there would be a readonly nsILoadInfo attribute hanging off
of nsIWebNavigation. is this idea dead? I liked it because it would
ultimately mean fewer mods to nsIWebNavigation as new attributes/flags
cropped up, and it would also keep nsIWebNavigation clean.
> 3. Add a 'readonly attribute' postData.
> This addresses bug #40867. This patch has already been applied to
> the branch.
if we go this route, I'd be inclined to have the attribute be
read/write, then do away w/ the argument to LoadURI(). it seems disjoint
to put the post-data in one place, then pull it out another.
> 5. Add a 'flags' argument to Stop() to allow control over what is
> stopped...
> Currently, there is no way via public interfaces to stop content,
> the network, or both...
> flag states:
> STOP_CONTENT - call nsIContentViewer::Stop().
> STOP_NETWORK - stop refresh timers and call nsIURILoader::Stop().
> This is the same as
> nsIDocShell:StopLoad()
> STOP_ALL - STOP_CONTENT | STOP_NETWORK
great idea. should STOP_CONTENT be broken out into STOP_JS and
STOP_CONTENT (animated images for example). does STOP_CONTENT imply stop
plugins (I assume no)?
> Open Issues:
> -------------
> - I hope that we can avoid adding a 'window target' argument to
> LoadURI(...). See bug #90722 for details.
we've definately been confronted a few times with "I want to have a load
happen in a specific named window" comments/suggestions/questions. I
think the right model to support is one that maintains the binding
between nsIWebNavigation and a "window" (nsIWebBrowser/nsIDOMWindow).
Adding the target arg to LoadURI() would break this binding. danm
pointed out that you can target loads using nsIWindowWatcher, and I
think that's a good story.
> - We need to define the mechanism for going between nsIWebNavigation
> and nsIDOMWindow. How do we want to go from one to the other... Do
> we want to say that nsIInterfaceRequestor::GetInterface(...) can be
> used to go from one to the other?
radha just went through this excersize I believe; radha?
Jud