[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.17-1283-gcf603cf
eric at webkit.org
eric at webkit.org
Tue Jan 5 23:39:53 UTC 2010
The following commit has been merged in the webkit-1.1 branch:
commit aefe6b2831ba2d4cd4cd5d4a0500a310bda8b312
Author: eric at webkit.org <eric at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Tue Dec 1 18:41:36 2009 +0000
2009-12-01 Xiyuan Xia <xiyuan at chromium.org>
Reviewed by Darin Fisher.
Only fire start/stop events when main frame is not loading.
https://bugs.webkit.org/show_bug.cgi?id=31838
* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::dispatchDidChangeLocationWithinPage):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@51548 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit/chromium/ChangeLog b/WebKit/chromium/ChangeLog
index dfc3a0c..b021532 100644
--- a/WebKit/chromium/ChangeLog
+++ b/WebKit/chromium/ChangeLog
@@ -1,3 +1,14 @@
+2009-12-01 Xiyuan Xia <xiyuan at chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Only fire start/stop events when main frame is not loading.
+
+ https://bugs.webkit.org/show_bug.cgi?id=31838
+
+ * src/FrameLoaderClientImpl.cpp:
+ (WebKit::FrameLoaderClientImpl::dispatchDidChangeLocationWithinPage):
+
2009-11-27 Yury Semikhatsky <yurys at chromium.org>
Reviewed by Pavel Feldman.
diff --git a/WebKit/chromium/src/FrameLoaderClientImpl.cpp b/WebKit/chromium/src/FrameLoaderClientImpl.cpp
index cbb8eb7..cd4e025 100644
--- a/WebKit/chromium/src/FrameLoaderClientImpl.cpp
+++ b/WebKit/chromium/src/FrameLoaderClientImpl.cpp
@@ -539,7 +539,16 @@ void FrameLoaderClientImpl::dispatchDidChangeLocationWithinPage()
// Anchor fragment navigations are not normal loads, so we need to synthesize
// some events for our delegate.
WebViewImpl* webView = m_webFrame->viewImpl();
- if (webView->client())
+
+ // Flag of whether frame loader is completed. Generate didStartLoading and
+ // didStopLoading only when loader is completed so that we don't fire
+ // them for fragment redirection that happens in window.onload handler.
+ // See https://bugs.webkit.org/show_bug.cgi?id=31838
+ bool loaderCompleted =
+ !m_webFrame->frame()->page()->mainFrame()->loader()->isLoading();
+
+ // Generate didStartLoading if loader is completed.
+ if (webView->client() && loaderCompleted)
webView->client()->didStartLoading();
WebDataSourceImpl* ds = m_webFrame->dataSourceImpl();
@@ -585,7 +594,8 @@ void FrameLoaderClientImpl::dispatchDidChangeLocationWithinPage()
if (m_webFrame->client())
m_webFrame->client()->didChangeLocationWithinPage(m_webFrame, isNewNavigation);
- if (webView->client())
+ // Generate didStopLoading if loader is completed.
+ if (webView->client() && loaderCompleted)
webView->client()->didStopLoading();
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list