For the Chromium port, we would like to know the window disposition (e.g., background/foreground tab/window) inside WebViewClient::createView. Chromium's WebNavigationPolicy enum tracks the window disposition, and it is currently stored as a member of FrameLoaderClientImpl from dispatchDecidePolicyForNewWindowAction until dispatchCreatePage, where it gets passed to WebViewImpl for use in show. To make it available to createView, we also need to change dispatchCreatePage to give it to ChromeClientImpl. This is useful for opening new window navigations in a new process, as part of http://crbug.com/69267.
Created attachment 129757 [details] Patch
Comment on attachment 129757 [details] Patch Attachment 129757 [details] did not pass win-ews (win): Output: http://queues.webkit.org/results/11767628
Note: the current patch isn't quite right yet, but it shows the general intent. There are some paths we can take to ChromeClientImpl::createWindow without going through FrameLoaderClientImpl::dispatchCreatePage, in which case we don't set the WebNavigationPolicy first. As a result, we fail the assert.
Comment on attachment 129757 [details] Patch This is what I was expecting...
Created attachment 129966 [details] Patch
Please wait for approval from fishd@chromium.org before submitting because this patch contains changes to the Chromium public API.
Comment on attachment 129966 [details] Patch That makes sense. R=me
Comment on attachment 129966 [details] Patch Clearing flags on attachment: 129966 Committed r109778: <http://trac.webkit.org/changeset/109778>
All reviewed patches have been landed. Closing bug.