Existing FrameLoaderClient::transferLoadingResourceFromPage notification is not very useful because it comes with DocumentLoader, and in case of subresources does not give enough information to the embedder to redirect the network notifications properly. The solution is to pass ResourceLoader of each loading resource into this notification. ResourceLoader wraps all the information about current load, including embedder- and platform- specific (via ResourceHandle) which should give the embedder all the info it needs to associate the ongoing load requests with the new top-level WebFrame/WebView objects.
Created attachment 103816 [details] Patch The patch changes signature of FrameLoaderClient method from: virtual void transferLoadingResourceFromPage(unsigned long identifier, DocumentLoader*, const ResourceRequest&, Page* oldPage) = 0; to: virtual void transferLoadingResourceFromPage(ResourceLoader*, const ResourceRequest&, Page* oldPage) = 0; The old parameters 'identifier' and 'documentLoader' are accessible from ResourceLoader Also fixed a bug when this notification was invoked in DocumentLoader with the same ResourceRequest for all subresources.
To my memory Adam and Nate have done many changes in this area. btw, no r? yet.
Comment on attachment 103816 [details] Patch Attachment 103816 [details] did not pass gtk-ews (gtk): Output: http://queues.webkit.org/results/9378024
Created attachment 103831 [details] Fixed Gtk build error.
Comment on attachment 103831 [details] Fixed Gtk build error. Attachment 103831 [details] did not pass mac-ews (mac): Output: http://queues.webkit.org/results/9378071
Created attachment 103937 [details] Fixed Mac build error
Comment on attachment 103937 [details] Fixed Mac build error Clearing flags on attachment: 103937 Committed r93066: <http://trac.webkit.org/changeset/93066>
All reviewed patches have been landed. Closing bug.