I don't disagree with the principal, but I think these methods are more complicated
than they
should be, both for the embedder and the browser object. It would be simpler if the
API allowed
only a single nsIInterfaceRequestor object to be added and that the browser object
would use
the one on the chrome if none was specified.
Judson Valeski wrote:
> http://bugzilla.mozilla.org/show_bug.cgi?id=46848
>
> Suggests that nsIWebBrowser be the root of all listener registration.
> Since filing this, Adam Lock has voiced some concern over it's legitimacy.
>
> Here's nsWebBrowser's impl of the listener registration methods
>
>(http://lxr.mozilla.org/seamonkey/source/embedding/browser/webBrowser/nsWebBrowser.cpp#136)
> and as best I can tell, the array of listeners never gets used.
>
> Currently anyone wanting "progress" adds specific listeners (URIContent,
> webprogress) through explicit methods hanging off of webbrowser, or we
> rely on their objects implementing certain interfaces. This seems a bit
> sloppy to me, and thus I'm inclined to support the root registration
> methods (and to fix 46848).
>
> Adam, can you voice why you believe 46848 should be invalidated?
>
> Jud