LayoutTests/ChangeLog

 12010-10-13 Jenn Braithwaite <jennb@chromium.org>
 2
 3 Reviewed by NOBODY (OOPS!).
 4
 5 Resource tracking failure when trying to move a frame between documents
 6 https://bugs.webkit.org/show_bug.cgi?id=44713
 7
 8 * fast/frames/iframe-reparenting-fail-load-expected.txt: Added.
 9 * fast/frames/iframe-reparenting-fail-load.html: Added.
 10 * platform/mac/Skipped:
 11 Re-enabled test that failed due to this bug.
 12
1132010-10-13 Robert Hogan <robert@webkit.org>
214
315 Rubber-stamped by Csaba Osztrogonac.

LayoutTests/fast/frames/iframe-reparenting-fail-load-expected.txt

 1This test adopts an iframe into a second page, then closes that page, cancelling that iframe load.

LayoutTests/fast/frames/iframe-reparenting-fail-load.html

 1<html>
 2<script>
 3if (window.layoutTestController) {
 4 layoutTestController.dumpAsText();
 5 layoutTestController.waitUntilDone();
 6 layoutTestController.setCanOpenWindows(true);
 7}
 8
 9function test()
 10{
 11 var w = window.open("about:blank");
 12 var f = w.document.adoptNode(document.getElementsByTagName("iframe")[0]);
 13 w.document.body.appendChild(f);
 14 w.close();
 15 if (window.layoutTestController)
 16 layoutTestController.notifyDone();
 17}
 18</script>
 19<body onload="test()">
 20<iframe src="data:text/html,foo"></iframe>
 21<p>This test adopts an iframe into a second page, then closes that page, cancelling that iframe load.</p>
 22</body>

LayoutTests/platform/mac/Skipped

@@media/context-menu-actions.html
303303# FileSystem API is not supported.
304304fast/filesystem
305305
306 # https://bugs.webkit.org/show_bug.cgi?id=44713
307 fast/frames/iframe-reparenting-adopt-node.html
308 
309306# https://bugs.webkit.org/show_bug.cgi?id=46223
310307# The WebKit plugin implementation does not support iframe shims.
311308plugins/iframe-shims.html

WebCore/ChangeLog

 12010-10-13 Jenn Braithwaite <jennb@chromium.org>
 2
 3 Reviewed by NOBODY (OOPS!).
 4
 5 Resource tracking failure when trying to move a frame between documents
 6 https://bugs.webkit.org/show_bug.cgi?id=44713
 7
 8 Test: fast/frames/iframe-reparenting-fail-load.html
 9
 10 * loader/DocumentLoader.cpp:
 11 (WebCore::DocumentLoader::transferLoadingResourcesToNewPage):
 12 Added method that notifies the client to update resource tracking for
 13 loading resources that have been transferred to a new apge.
 14 * loader/DocumentLoader.h:
 15 * loader/EmptyClients.h:
 16 (WebCore::EmptyFrameLoaderClient::transferLoadingResourceToNewPage):
 17 Empty method.
 18 * loader/FrameLoader.h:
 19 * loader/FrameLoader.cpp:
 20 Added method that triggers resource tracking updates. This wraps
 21 the DocumentLoader method as it appears DocumentLoader is opaque
 22 to Frame.
 23 * loader/FrameLoaderClient.h:
 24 Added API to notify the client to update resource tracking for
 25 a loading resource that has been transferred to a new page.
 26 * page/Frame.cpp:
 27 (WebCore::Frame::transferChildFrameToNewDocument):
 28 Update resource tracking if page has changed.
 29
1302010-10-13 Gavin Barraclough <barraclough@apple.com>
231
332 Reviewed by Oliver Hunt.

WebCore/loader/DocumentLoader.cpp

@@void DocumentLoader::subresourceLoaderFinishedLoadingOnePart(ResourceLoader* loa
787787 frame->loader()->checkLoadComplete();
788788}
789789
 790void DocumentLoader::transferLoadingResourcesToNewPage(Page* oldPage)
 791{
 792 if (oldPage == m_frame->page())
 793 return;
 794
 795 FrameLoaderClient* frameLoaderClient = frameLoader()->client();
 796 const ResourceRequest& request = originalRequest();
 797 if (isLoadingMainResource()) {
 798 frameLoaderClient->transferLoadingResourceToNewPage(
 799 m_mainResourceLoader->identifier(), this, request, oldPage);
 800 }
 801
 802 if (isLoadingSubresources()) {
 803 ResourceLoaderSet::const_iterator it = m_subresourceLoaders.begin();
 804 ResourceLoaderSet::const_iterator end = m_subresourceLoaders.end();
 805 for (; it != end; ++it) {
 806 frameLoaderClient->transferLoadingResourceToNewPage(
 807 (*it)->identifier(), this, request, oldPage);
 808 }
 809 }
 810}
 811
790812void DocumentLoader::iconLoadDecisionAvailable()
791813{
792814 if (m_frame)

WebCore/loader/DocumentLoader.h

@@namespace WebCore {
4646 class Frame;
4747 class FrameLoader;
4848 class MainResourceLoader;
 49 class Page;
4950 class ResourceLoader;
5051 class SchedulePair;
5152 class SharedBuffer;

@@namespace WebCore {
195196 void removePlugInStreamLoader(ResourceLoader*);
196197
197198 void subresourceLoaderFinishedLoadingOnePart(ResourceLoader*);
198 
 199
 200 void transferLoadingResourcesToNewPage(Page* oldPage);
 201
199202 void setDeferMainResourceDataLoad(bool defer) { m_deferMainResourceDataLoad = defer; }
200203 bool deferMainResourceDataLoad() const { return m_deferMainResourceDataLoad; }
201204

WebCore/loader/EmptyClients.h

@@public:
337337 virtual void didRunInsecureContent(SecurityOrigin*) { }
338338 virtual PassRefPtr<Frame> createFrame(const KURL&, const String&, HTMLFrameOwnerElement*, const String&, bool, int, int) { return 0; }
339339 virtual void didTransferChildFrameToNewDocument(Page*) { }
 340 virtual void transferLoadingResourceToNewPage(unsigned long, DocumentLoader*, const ResourceRequest&, Page*) { }
340341 virtual PassRefPtr<Widget> createPlugin(const IntSize&, HTMLPlugInElement*, const KURL&, const Vector<String>&, const Vector<String>&, const String&, bool) { return 0; }
341342 virtual PassRefPtr<Widget> createJavaAppletWidget(const IntSize&, HTMLAppletElement*, const KURL&, const Vector<String>&, const Vector<String>&) { return 0; }
342343#if ENABLE(PLUGIN_PROXY_FOR_VIDEO)

WebCore/loader/FrameLoader.cpp

@@bool FrameLoader::frameHasLoaded() const
17431743 return m_stateMachine.committedFirstRealDocumentLoad() || (m_provisionalDocumentLoader && !m_stateMachine.creatingInitialEmptyDocument());
17441744}
17451745
 1746void FrameLoader::transferLoadingResourcesToNewPage(Page* oldPage)
 1747{
 1748 ASSERT(oldPage != m_frame->page());
 1749 if (isLoading())
 1750 activeDocumentLoader()->transferLoadingResourcesToNewPage(oldPage);
 1751}
 1752
17461753void FrameLoader::setDocumentLoader(DocumentLoader* loader)
17471754{
17481755 if (!loader && !m_documentLoader)

WebCore/loader/FrameLoader.h

@@class HTMLFormElement;
6868class IconLoader;
6969class NavigationAction;
7070class NetworkingContext;
 71class Page;
7172class ProtectionSpace;
7273class ResourceError;
7374class ResourceLoader;

@@public:
133134 bool isLoadingMainResource() const { return m_isLoadingMainResource; }
134135 bool isLoading() const;
135136 bool frameHasLoaded() const;
 137 void transferLoadingResourcesToNewPage(Page* oldPage);
136138
137139 int numPendingOrLoadingRequests(bool recurse) const;
138140 String referrer() const;

WebCore/loader/FrameLoaderClient.h

@@namespace WebCore {
231231 virtual PassRefPtr<Frame> createFrame(const KURL& url, const String& name, HTMLFrameOwnerElement* ownerElement,
232232 const String& referrer, bool allowsScrolling, int marginWidth, int marginHeight) = 0;
233233 virtual void didTransferChildFrameToNewDocument(Page* oldPage) = 0;
 234 virtual void transferLoadingResourceToNewPage(unsigned long identifier, DocumentLoader*, const ResourceRequest&, Page* oldPage) = 0;
234235 virtual PassRefPtr<Widget> createPlugin(const IntSize&, HTMLPlugInElement*, const KURL&, const Vector<String>&, const Vector<String>&, const String&, bool loadManually) = 0;
235236 virtual void redirectDataToPlugin(Widget* pluginWidget) = 0;
236237

WebCore/page/Frame.cpp

@@void Frame::transferChildFrameToNewDocument()
744744 // Let external clients update themselves.
745745 loader()->client()->didTransferChildFrameToNewDocument(oldPage);
746746
 747 // Update resource tracking now that frame is in a different page.
 748 if (oldPage != newPage)
 749 loader()->transferLoadingResourcesToNewPage(oldPage);
 750
747751 // Do the same for all the children.
748752 for (Frame* child = tree()->firstChild(); child; child = child->tree()->nextSibling())
749753 child->transferChildFrameToNewDocument();

WebKit/chromium/ChangeLog

 12010-10-13 Jenn Braithwaite <jennb@chromium.org>
 2
 3 Reviewed by NOBODY (OOPS!).
 4
 5 Resource tracking failure when trying to move a frame between documents
 6 https://bugs.webkit.org/show_bug.cgi?id=44713
 7
 8 * src/FrameLoaderClientImpl.cpp:
 9 (WebKit::FrameLoaderClientImpl::transferLoadingResourceToNewPage):
 10 Empty method.
 11 * src/FrameLoaderClientImpl.h:
 12
1132010-10-13 Gavin Barraclough <barraclough@apple.com>
214
315 Reviewed by Oliver Hunt.

WebKit/chromium/src/FrameLoaderClientImpl.cpp

@@void FrameLoaderClientImpl::didTransferChildFrameToNewDocument(Page*)
13811381 m_webFrame->setClient(newParent->client());
13821382}
13831383
 1384void FrameLoaderClientImpl::transferLoadingResourceToNewPage(unsigned long, DocumentLoader*, const ResourceRequest&, Page*)
 1385{
 1386}
 1387
13841388PassRefPtr<Widget> FrameLoaderClientImpl::createPlugin(
13851389 const IntSize& size, // FIXME: how do we use this?
13861390 HTMLPlugInElement* element,

WebKit/chromium/src/FrameLoaderClientImpl.h

@@public:
180180 const WTF::String& referrer, bool allowsScrolling,
181181 int marginWidth, int marginHeight);
182182 virtual void didTransferChildFrameToNewDocument(WebCore::Page*);
 183 virtual void transferLoadingResourceToNewPage(unsigned long, WebCore::DocumentLoader*, const WebCore::ResourceRequest&, WebCore::Page*);
183184 virtual PassRefPtr<WebCore::Widget> createPlugin(
184185 const WebCore::IntSize&, WebCore::HTMLPlugInElement*, const WebCore::KURL&,
185186 const Vector<WTF::String>&, const Vector<WTF::String>&,

WebKit/efl/ChangeLog

 12010-10-13 Jenn Braithwaite <jennb@chromium.org>
 2
 3 Reviewed by NOBODY (OOPS!).
 4
 5 Resource tracking failure when trying to move a frame between documents
 6 https://bugs.webkit.org/show_bug.cgi?id=44713
 7
 8 * WebCoreSupport/FrameLoaderClientEfl.cpp:
 9 (WebCore::FrameLoaderClientEfl::transferLoadingResourceToNewPage):
 10 Empty method.
 11 * WebCoreSupport/FrameLoaderClientEfl.h:
 12
1132010-10-13 Gyuyoung Kim <gyuyoung.kim@samsung.com>
214
315 Reviewed by Kenneth Rohde Christiansen.

WebKit/efl/WebCoreSupport/FrameLoaderClientEfl.cpp

@@void FrameLoaderClientEfl::didTransferChildFrameToNewDocument(Page*)
383383{
384384}
385385
 386void FrameLoaderClientEfl::transferLoadingResourceToNewPage(unsigned long, DocumentLoader*, const ResourceRequest&, Page*)
 387{
 388}
 389
386390void FrameLoaderClientEfl::redirectDataToPlugin(Widget* pluginWidget)
387391{
388392 ASSERT(!m_pluginView);

WebKit/efl/WebCoreSupport/FrameLoaderClientEfl.h

@@class FrameLoaderClientEfl : public FrameLoaderClient {
135135 virtual PassRefPtr<Frame> createFrame(const KURL& url, const String& name, HTMLFrameOwnerElement* ownerElement,
136136 const String& referrer, bool allowsScrolling, int marginWidth, int marginHeight);
137137 virtual void didTransferChildFrameToNewDocument(Page*);
 138 virtual void transferLoadingResourceToNewPage(unsigned long, WebCore::DocumentLoader*, const ResourceRequest&, WebCore::Page*);
138139
139140 virtual PassRefPtr<Widget> createPlugin(const IntSize&, HTMLPlugInElement*, const KURL&, const WTF::Vector<String>&, const WTF::Vector<String>&, const String&, bool);
140141 virtual void redirectDataToPlugin(Widget* pluginWidget);

WebKit/gtk/ChangeLog

 12010-10-13 Jenn Braithwaite <jennb@chromium.org>
 2
 3 Reviewed by NOBODY (OOPS!).
 4
 5 Resource tracking failure when trying to move a frame between documents
 6 https://bugs.webkit.org/show_bug.cgi?id=44713
 7
 8 * WebCoreSupport/FrameLoaderClientGtk.cpp:
 9 (WebKit::FrameLoaderClient::transferLoadingResourceToNewPage):
 10 Empty method.
 11 * WebCoreSupport/FrameLoaderClientGtk.h:
 12
1132010-10-13 Xan Lopez <xlopez@igalia.com>
214
315 Reviewed by Gustavo Noronha.

WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp

@@void FrameLoaderClient::didTransferChildFrameToNewDocument(WebCore::Page*)
618618 ASSERT(core(getViewFromFrame(m_frame)) == coreFrame->page());
619619}
620620
 621void FrameLoaderClient::transferLoadingResourceToNewPage(unsigned long, WebCore::DocumentLoader*, const WebCore::ResourceRequest&, WebCore::Page*)
 622{
 623}
 624
621625void FrameLoaderClient::redirectDataToPlugin(Widget* pluginWidget)
622626{
623627 ASSERT(!m_pluginView);

WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.h

@@namespace WebKit {
115115 virtual PassRefPtr<WebCore::Frame> createFrame(const WebCore::KURL& url, const WTF::String& name, WebCore::HTMLFrameOwnerElement* ownerElement,
116116 const WTF::String& referrer, bool allowsScrolling, int marginWidth, int marginHeight);
117117 virtual void didTransferChildFrameToNewDocument(WebCore::Page*);
 118 virtual void transferLoadingResourceToNewPage(unsigned long, WebCore::DocumentLoader*, const WebCore::ResourceRequest&, WebCore::Page*);
118119 virtual PassRefPtr<WebCore::Widget> createPlugin(const WebCore::IntSize&, WebCore::HTMLPlugInElement*, const WebCore::KURL&, const WTF::Vector<WTF::String>&, const WTF::Vector<WTF::String>&, const WTF::String&, bool);
119120 virtual void redirectDataToPlugin(WebCore::Widget* pluginWidget);
120121 virtual PassRefPtr<WebCore::Widget> createJavaAppletWidget(const WebCore::IntSize&, WebCore::HTMLAppletElement*, const WebCore::KURL& baseURL, const WTF::Vector<WTF::String>& paramNames, const WTF::Vector<WTF::String>& paramValues);

WebKit/haiku/ChangeLog

 12010-10-13 Jenn Braithwaite <jennb@chromium.org>
 2
 3 Reviewed by NOBODY (OOPS!).
 4
 5 Resource tracking failure when trying to move a frame between documents
 6 https://bugs.webkit.org/show_bug.cgi?id=44713
 7
 8 * WebCoreSupport/FrameLoaderClientHaiku.cpp:
 9 (WebCore::FrameLoaderClientHaiku::transferLoadingResourceToNewPage):
 10 Empty method.
 11 * WebCoreSupport/FrameLoaderClientHaiku.h:
 12
1132010-09-28 Jenn Braithwaite <jennb@chromium.org>
214
315 Reviewed by Dmitry Titov.

WebKit/haiku/WebCoreSupport/FrameLoaderClientHaiku.cpp

@@void FrameLoaderClientHaiku::didTransferChildFrameToNewDocument(Page*)
745745{
746746}
747747
 748void FrameLoaderClientHaiku::transferLoadingResourceToNewPage(unsigned long, DocumentLoader*, const ResourceRequest&, Page*)
 749{
 750}
 751
748752ObjectContentType FrameLoaderClientHaiku::objectContentType(const KURL& url, const String& mimeType)
749753{
750754 notImplemented();

WebKit/haiku/WebCoreSupport/FrameLoaderClientHaiku.h

@@namespace WebCore {
222222 HTMLFrameOwnerElement*, const String& referrer,
223223 bool allowsScrolling, int marginWidth, int marginHeight);
224224 virtual void didTransferChildFrameToNewDocument(WebCore::Page*);
 225 virtual void transferLoadingResourceToNewPage(unsigned long, WebCore::DocumentLoader*, const ResourceRequest&, WebCore::Page*);
225226 virtual PassRefPtr<Widget> createPlugin(const IntSize&, HTMLPlugInElement*, const KURL&,
226227 const Vector<String>&, const Vector<String>&, const String&,
227228 bool loadManually);

WebKit/mac/ChangeLog

 12010-10-13 Jenn Braithwaite <jennb@chromium.org>
 2
 3 Reviewed by NOBODY (OOPS!).
 4
 5 Resource tracking failure when trying to move a frame between documents
 6 https://bugs.webkit.org/show_bug.cgi?id=44713
 7
 8 * WebCoreSupport/WebFrameLoaderClient.h:
 9 * WebCoreSupport/WebFrameLoaderClient.mm:
 10 (WebFrameLoaderClient::didTransferChildFrameToNewDocument):
 11 Empty method.
 12 (WebFrameLoaderClient::transferLoadingResourceToNewPage):
 13 Update resource tracking for a resource load that has been transferred
 14 to a new page.
 15
 16 * WebView/WebDelegateImplementationCaching.h:
 17 * WebView/WebResourceLoadDelegate.h:
 18 Added API for WebResourceLoadDelegate to transfer info about a loading resource from an old WebView.
 19 * WebView/WebView.mm:
 20 (-[WebView _cacheResourceLoadDelegateImplementations]):
 21 Cache the new function for transferring loading resource.
 22
1232010-10-12 Andy Estes <aestes@apple.com>
224
325 Rubber-stamped by Darin Adler.

WebKit/mac/WebCoreSupport/WebFrameLoaderClient.h

@@private:
194194 virtual PassRefPtr<WebCore::Frame> createFrame(const WebCore::KURL& url, const WTF::String& name, WebCore::HTMLFrameOwnerElement*,
195195 const WTF::String& referrer, bool allowsScrolling, int marginWidth, int marginHeight);
196196 virtual void didTransferChildFrameToNewDocument(WebCore::Page* oldPage);
 197 virtual void transferLoadingResourceToNewPage(unsigned long identifier, WebCore::DocumentLoader*, const WebCore::ResourceRequest&, WebCore::Page* oldPage);
197198 virtual PassRefPtr<WebCore::Widget> createPlugin(const WebCore::IntSize&, WebCore::HTMLPlugInElement*, const WebCore::KURL&, const Vector<WTF::String>&,
198199 const Vector<WTF::String>&, const WTF::String&, bool);
199200 virtual void redirectDataToPlugin(WebCore::Widget* pluginWidget);

WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm

@@PassRefPtr<Frame> WebFrameLoaderClient::createFrame(const KURL& url, const Strin
13861386
13871387void WebFrameLoaderClient::didTransferChildFrameToNewDocument(Page* oldPage)
13881388{
1389  if (oldPage == core(m_webFrame.get())->page())
1390  return;
 1389}
 1390
 1391void WebFrameLoaderClient::transferLoadingResourceToNewPage(unsigned long identifier, DocumentLoader* loader, const ResourceRequest& request, Page* oldPage)
 1392{
 1393 Frame* coreFrame = core(m_webFrame.get());
 1394 ASSERT(oldPage != coreFrame->page());
 1395
 1396 WebView* webView = getWebView(m_webFrame.get());
 1397 ASSERT(![webView _objectForIdentifier:identifier]);
 1398
 1399 assignIdentifierToInitialRequest(identifier, loader, request);
 1400
 1401 WebView* oldWebView = kit(oldPage);
 1402 id oldResource = [oldWebView _objectForIdentifier:identifier];
 1403 ASSERT(oldResource);
 1404
 1405 // Transfer info that may be stored about the resource from the old WebView.
 1406 WebResourceDelegateImplementationCache* implementations = WebViewGetResourceLoadDelegateImplementations(webView);
 1407 if (implementations->transferLoadingResourceFromWebViewFunc)
 1408 CallResourceLoadDelegate(implementations->transferLoadingResourceFromWebViewFunc, webView, @selector(webView:resource:transferLoadingResource:fromWebView:), [webView _objectForIdentifier:identifier], oldResource, oldWebView);
13911409
1392  // Update resource tracking now that frame is in a different page.
1393  // TODO(jennb): update resource tracking [bug 44713]
 1410 [oldWebView _removeObjectForIdentifier:identifier];
13941411}
13951412
13961413ObjectContentType WebFrameLoaderClient::objectContentType(const KURL& url, const String& mimeType)

WebKit/mac/WebView/WebDelegateImplementationCaching.h

@@struct WebResourceDelegateImplementationCache {
4848 IMP willCacheResponseFunc;
4949 IMP plugInFailedWithErrorFunc;
5050 IMP shouldUseCredentialStorageFunc;
 51 IMP transferLoadingResourceFromWebViewFunc;
5152};
5253
5354struct WebFrameLoadDelegateImplementationCache {

WebKit/mac/WebView/WebResourceLoadDelegate.h

161161*/
162162- (void)webView:(WebView *)sender plugInFailedWithError:(NSError *)error dataSource:(WebDataSource *)dataSource;
163163
 164/*!
 165 @method webView:resource:transferLoadingResource:fromWebView:
 166 @discussion This message is sent after a frame has been moved to a new page without disrupting resource loads. Any resources that are being loaded by that frame are transferred to the new page. If the WebResourceLoadDelegate implementation stores any information about the loading resource, that information should be transferred from the WebResourceLoadDelegate of the old WebView. The old WebView must cease tracking of the resource load after this notification.
 167 @param webView The WebView who is the sender of the message.
 168 @param identifier An identifier that can be used to track the progress of a resource load across multiple call backs.
 169 @param oldResource The identifier used by the old WebView to track the progress of a resource load across multiple call backs.
 170 @param oldWebView The WebView in the old page who was the sender of the message.
 171 */
 172- (void)webView:(WebView *)sender resource:(id)identifier transferLoadingResource:(id)oldResource fromWebView:(WebView *)oldWebView;
 173
164174@end
165175
166176#undef WebNSInteger

WebKit/mac/WebView/WebView.mm

@@static inline IMP getMethod(id o, SEL s)
15341534 cache->willCacheResponseFunc = getMethod(delegate, @selector(webView:resource:willCacheResponse:fromDataSource:));
15351535 cache->willSendRequestFunc = getMethod(delegate, @selector(webView:resource:willSendRequest:redirectResponse:fromDataSource:));
15361536 cache->shouldUseCredentialStorageFunc = getMethod(delegate, @selector(webView:resource:shouldUseCredentialStorageForDataSource:));
 1537 cache->transferLoadingResourceFromWebViewFunc = getMethod(delegate, @selector(webView:resource:transferLoadingResource:fromWebView:));
15371538}
15381539
15391540- (void)_cacheFrameLoadDelegateImplementations

WebKit/qt/ChangeLog

 12010-10-13 Jenn Braithwaite <jennb@chromium.org>
 2
 3 Reviewed by NOBODY (OOPS!).
 4
 5 Resource tracking failure when trying to move a frame between documents
 6 https://bugs.webkit.org/show_bug.cgi?id=44713
 7
 8 * WebCoreSupport/FrameLoaderClientQt.cpp:
 9 (WebCore::FrameLoaderClientQt::transferLoadingResourceToNewPage):
 10 Emtpy method.
 11 * WebCoreSupport/FrameLoaderClientQt.h:
 12
1132010-10-13 Dinu Jacob <dinu.jacob@nokia.com>
214
315 Reviewed by Andreas Kling.

WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp

@@void FrameLoaderClientQt::didTransferChildFrameToNewDocument(Page*)
12631263 }
12641264}
12651265
 1266void FrameLoaderClientQt::transferLoadingResourceToNewPage(unsigned long, DocumentLoader*, const ResourceRequest&, Page*)
 1267{
 1268}
 1269
12661270ObjectContentType FrameLoaderClientQt::objectContentType(const KURL& url, const String& _mimeType)
12671271{
12681272// qDebug()<<" ++++++++++++++++ url is "<<url.prettyURL()<<", mime = "<<_mimeType;

WebKit/qt/WebCoreSupport/FrameLoaderClientQt.h

@@public:
199199 virtual PassRefPtr<Frame> createFrame(const KURL& url, const String& name, HTMLFrameOwnerElement* ownerElement,
200200 const String& referrer, bool allowsScrolling, int marginWidth, int marginHeight);
201201 virtual void didTransferChildFrameToNewDocument(WebCore::Page*);
 202 virtual void transferLoadingResourceToNewPage(unsigned long, WebCore::DocumentLoader*, const WebCore::ResourceRequest&, WebCore::Page*);
202203 virtual PassRefPtr<Widget> createPlugin(const IntSize&, HTMLPlugInElement*, const KURL&, const Vector<String>&, const Vector<String>&, const String&, bool);
203204 virtual void redirectDataToPlugin(Widget* pluginWidget);
204205

WebKit/win/ChangeLog

 12010-10-13 Jenn Braithwaite <jennb@chromium.org>
 2
 3 Reviewed by NOBODY (OOPS!).
 4
 5 Resource tracking failure when trying to move a frame between documents
 6 https://bugs.webkit.org/show_bug.cgi?id=44713
 7
 8 * WebCoreSupport/WebFrameLoaderClient.cpp:
 9 (WebFrameLoaderClient::transferLoadingResourceToNewPage):
 10 Empty method.
 11 * WebCoreSupport/WebFrameLoaderClient.h:
 12
1132010-10-12 Adam Roben <aroben@apple.com>
214
315 Build TestWebKitAPI on Windows

WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp

@@void WebFrameLoaderClient::didTransferChildFrameToNewDocument(Page*)
733733{
734734}
735735
 736void WebFrameLoaderClient::transferLoadingResourceToNewPage(unsigned long, DocumentLoader*, const ResourceRequest&, Page*)
 737{
 738}
 739
736740PassRefPtr<Frame> WebFrameLoaderClient::createFrame(const KURL& URL, const String& name, HTMLFrameOwnerElement* ownerElement, const String& referrer)
737741{
738742 Frame* coreFrame = core(m_webFrame);

WebKit/win/WebCoreSupport/WebFrameLoaderClient.h

@@public:
113113 virtual PassRefPtr<WebCore::Frame> createFrame(const WebCore::KURL& url, const WTF::String& name, WebCore::HTMLFrameOwnerElement* ownerElement,
114114 const WTF::String& referrer, bool allowsScrolling, int marginWidth, int marginHeight);
115115 virtual void didTransferChildFrameToNewDocument(WebCore::Page*);
 116 virtual void transferLoadingResourceToNewPage(unsigned long, WebCore::DocumentLoader*, const WebCore::ResourceRequest&, WebCore::Page*);
116117 virtual PassRefPtr<WebCore::Widget> createPlugin(const WebCore::IntSize&, WebCore::HTMLPlugInElement*, const WebCore::KURL&, const Vector<WTF::String>&, const Vector<WTF::String>&, const WTF::String&, bool loadManually);
117118 virtual void redirectDataToPlugin(WebCore::Widget* pluginWidget);
118119

WebKit/wince/ChangeLog

 12010-10-13 Jenn Braithwaite <jennb@chromium.org>
 2
 3 Reviewed by NOBODY (OOPS!).
 4
 5 Resource tracking failure when trying to move a frame between documents
 6 https://bugs.webkit.org/show_bug.cgi?id=44713
 7
 8 * WebCoreSupport/FrameLoaderClientWinCE.cpp:
 9 (WebKit::FrameLoaderClientWinCE::transferLoadingResourceToNewPage):
 10 Empty method.
 11 * WebCoreSupport/FrameLoaderClientWinCE.h:
 12
1132010-09-28 Jenn Braithwaite <jennb@chromium.org>
214
315 Reviewed by Dmitry Titov.

WebKit/wince/WebCoreSupport/FrameLoaderClientWinCE.cpp

@@void FrameLoaderClientWinCE::didTransferChildFrameToNewDocument(Page*)
165165{
166166}
167167
 168void FrameLoaderClientWinCE::transferLoadingResourceToNewPage(unsigned long, DocumentLoader*, const ResourceRequest&, Page*)
 169{
 170}
 171
168172void FrameLoaderClientWinCE::redirectDataToPlugin(Widget* pluginWidget)
169173{
170174 ASSERT(!m_pluginView);

WebKit/wince/WebCoreSupport/FrameLoaderClientWinCE.h

@@public:
109109 virtual PassRefPtr<WebCore::Frame> createFrame(const WebCore::KURL& url, const WTF::String& name, WebCore::HTMLFrameOwnerElement* ownerElement,
110110 const WTF::String& referrer, bool allowsScrolling, int marginWidth, int marginHeight);
111111 virtual void didTransferChildFrameToNewDocument(WebCore::Page*);
 112 virtual void transferLoadingResourceToNewPage(unsigned long, WebCore::DocumentLoader*, const WebCore::ResourceRequest&, WebCore::Page*);
112113 virtual PassRefPtr<WebCore::Widget> createPlugin(const WebCore::IntSize&, WebCore::HTMLPlugInElement*, const WebCore::KURL&, const WTF::Vector<WTF::String>&, const WTF::Vector<WTF::String>&, const WTF::String&, bool);
113114 virtual void redirectDataToPlugin(WebCore::Widget* pluginWidget);
114115 virtual PassRefPtr<WebCore::Widget> createJavaAppletWidget(const WebCore::IntSize&, WebCore::HTMLAppletElement*, const WebCore::KURL& baseURL, const WTF::Vector<WTF::String>& paramNames, const WTF::Vector<WTF::String>& paramValues);

WebKit/wx/ChangeLog

 12010-10-13 Jenn Braithwaite <jennb@chromium.org>
 2
 3 Reviewed by NOBODY (OOPS!).
 4
 5 Resource tracking failure when trying to move a frame between documents
 6 https://bugs.webkit.org/show_bug.cgi?id=44713
 7
 8 * WebKitSupport/FrameLoaderClientWx.cpp:
 9 (WebCore::FrameLoaderClientWx::transferLoadingResourceToNewPage):
 10 Empty method.
 11 * WebKitSupport/FrameLoaderClientWx.h:
 12
1132010-09-28 Jenn Braithwaite <jennb@chromium.org>
214
315 Reviewed by Dmitry Titov.

WebKit/wx/WebKitSupport/FrameLoaderClientWx.cpp

@@void FrameLoaderClientWx::didTransferChildFrameToNewDocument(Page*)
864864{
865865}
866866
 867void FrameLoaderClientWx::transferLoadingResourceToNewPage(unsigned long, DocumentLoader*, const ResourceRequest&, Page*)
 868{
 869}
 870
867871ObjectContentType FrameLoaderClientWx::objectContentType(const KURL& url, const String& mimeType)
868872{
869873 notImplemented();

WebKit/wx/WebKitSupport/FrameLoaderClientWx.h

@@namespace WebCore {
204204 virtual PassRefPtr<Frame> createFrame(const KURL& url, const String& name, HTMLFrameOwnerElement* ownerElement,
205205 const String& referrer, bool allowsScrolling, int marginWidth, int marginHeight);
206206 virtual void didTransferChildFrameToNewDocument(Page*);
 207 virtual void transferLoadingResourceToNewPage(unsigned long, DocumentLoader*, const ResourceRequest&, Page*);
207208 virtual PassRefPtr<Widget> createPlugin(const IntSize&, HTMLPlugInElement*, const KURL&, const Vector<String>&, const Vector<String>&, const String&, bool loadManually) ;
208209 virtual void redirectDataToPlugin(Widget* pluginWidget);
209210 virtual ResourceError pluginWillHandleLoadError(const ResourceResponse&);

WebKit2/ChangeLog

 12010-10-13 Jenn Braithwaite <jennb@chromium.org>
 2
 3 Reviewed by NOBODY (OOPS!).
 4
 5 Resource tracking failure when trying to move a frame between documents
 6 https://bugs.webkit.org/show_bug.cgi?id=44713
 7
 8 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
 9 (WebKit::WebFrameLoaderClient::transferLoadingResourceToNewPage):
 10 Empty method.
 11 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
 12
1132010-10-13 Brent Fulgham <bfulgham@webkit.org>
214
315 Unreviewed build fixes after r69538.

WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp

@@void WebFrameLoaderClient::didTransferChildFrameToNewDocument(Page*)
967967 notImplemented();
968968}
969969
 970void WebFrameLoaderClient::transferLoadingResourceToNewPage(unsigned long, DocumentLoader*, const ResourceRequest&, Page*)
 971{
 972 notImplemented();
 973}
 974
970975PassRefPtr<Widget> WebFrameLoaderClient::createPlugin(const IntSize&, HTMLPlugInElement* pluginElement, const KURL& url, const Vector<String>& paramNames, const Vector<String>& paramValues, const String& mimeType, bool loadManually)
971976{
972977 ASSERT(paramNames.size() == paramValues.size());

WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.h

@@private:
176176 virtual PassRefPtr<WebCore::Frame> createFrame(const WebCore::KURL& url, const String& name, WebCore::HTMLFrameOwnerElement* ownerElement,
177177 const String& referrer, bool allowsScrolling, int marginWidth, int marginHeight);
178178 virtual void didTransferChildFrameToNewDocument(WebCore::Page*);
 179 virtual void transferLoadingResourceToNewPage(unsigned long, WebCore::DocumentLoader*, const WebCore::ResourceRequest&, WebCore::Page*);
179180
180181 virtual PassRefPtr<WebCore::Widget> createPlugin(const WebCore::IntSize&, WebCore::HTMLPlugInElement*, const WebCore::KURL&, const Vector<String>&, const Vector<String>&, const String&, bool loadManually);
181182 virtual void redirectDataToPlugin(WebCore::Widget* pluginWidget);