This came about from http://bugzilla.mozilla.org/show_bug.cgi?id=73951. The problem there is that global history is not hooked up to the docshell of a webbrowser when a webbrowser is made. Right now, in order to do this, an embedding app has to do something like: http://lxr.mozilla.org/seamonkey/source/embedding/browser/powerplant/source/CBrowserShell.cpp#156 in order to use global history. We want to avoid this. The simple way of avoiding this would be: Hook up the global history to the docshell from inside the webbrowser lib and, as long as a global history component was available, it would work. The problem with this is that somebody, for a particular type of window, may not want to have global history whereas for another type of window they do. If it was just hooked up automatically, this would be a problem. So, another option is this: Add something like SETUP_WANT_GLOBAL_HISTORY to nsIWebBrowserSetup so, if you wanted it, you could simply request the feature. -Conrad
