The nsIWebProgress interface is used to add or remove nsIWebProgressListener
instances to observe the loading of asynchronous requests (usually in the
context of a DOM window).
nsIWebProgress instances may be arranged in a parent-child configuration,
corresponding to the parent-child configuration of their respective DOM
windows. However, in some cases a nsIWebProgress instance may not have an
associated DOM window. The parent-child relationship of nsIWebProgress
instances is not made explicit by this interface, but the relationship may
exist in some implementations.
A nsIWebProgressListener instance receives notifications for the
nsIWebProgress instance to which it added itself, and it may also receive
notifications from any nsIWebProgress instances that are children of that
nsIWebProgress instance.
Registers a listener to receive web progress events.
@throw NS_ERROR_INVALID_ARG
Indicates that aListener was either null or that it does not
support weak references.
@throw NS_ERROR_FAILURE
Indicates that aListener was already registered.
aListener | The listener interface to be called when a progress event occurs. This object must also implement nsISupportsWeakReference. |
aNotifyMask | The types of notifications to receive. |
Removes a previously registered listener of progress events.
@throw NS_ERROR_FAILURE
Indicates that aListener was not registered.
aListener | The listener interface previously registered with a call to addProgressListener. |
The DOM window associated with this nsIWebProgress instance.
@throw NS_ERROR_FAILURE
Indicates that there is no associated DOM window.
Indicates whether DOMWindow.top == DOMWindow.
Indicates whether or not a document is currently being loaded
in the context of this nsIWebProgress instance.
Contains a load type as specified by the load* constants in
nsIDocShellLoadInfo.idl.
The following flags may be combined to form the aNotifyMask parameter for
the addProgressListener method. They limit the set of events that are
delivered to an nsIWebProgressListener instance.
These flags indicate the state transistions to observe, corresponding to
nsIWebProgressListener::onStateChange.
NOTIFY_STATE_REQUEST
Only receive the onStateChange event if the aStateFlags parameter
includes nsIWebProgressListener::STATE_IS_REQUEST.
NOTIFY_STATE_DOCUMENT
Only receive the onStateChange event if the aStateFlags parameter
includes nsIWebProgressListener::STATE_IS_DOCUMENT.
NOTIFY_STATE_NETWORK
Only receive the onStateChange event if the aStateFlags parameter
includes nsIWebProgressListener::STATE_IS_NETWORK.
NOTIFY_STATE_WINDOW
Only receive the onStateChange event if the aStateFlags parameter
includes nsIWebProgressListener::STATE_IS_WINDOW.
NOTIFY_STATE_ALL
Receive all onStateChange events.
These flags indicate the other events to observe, corresponding to the
other four methods defined on nsIWebProgressListener.
NOTIFY_PROGRESS
Receive onProgressChange events.
NOTIFY_STATUS
Receive onStatusChange events.
NOTIFY_SECURITY
Receive onSecurityChange events.
NOTIFY_LOCATION
Receive onLocationChange events.
NOTIFY_REFRESH
Receive onRefreshAttempted events.
This is defined on nsIWebProgressListener2.
This flag enables all notifications.