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 :-)
3. Add a 'readonly attribute' postData.
This addresses bug #40867. This patch has already been applied to
the branch.
4. Add a referrer attribute to allow access to the 'referring URI' from
public APIs...
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
Open Issues:
-------------
- I hope that we can avoid adding a 'window target' argument to
LoadURI(...). See bug #90722 for details.
- 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?
-- rick