[SCM] WebKit Debian packaging branch, webkit-1.2, updated. upstream/1.1.90-6072-g9a69373
ajwong at chromium.org
ajwong at chromium.org
Thu Apr 8 01:22:40 UTC 2010
The following commit has been merged in the webkit-1.2 branch:
commit 31c7897314a656e4e1af56600f6b7921c9cbc584
Author: ajwong at chromium.org <ajwong at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Sat Jan 23 02:07:57 2010 +0000
Not reviewed. backout.
Backout r53705. Causes ui_tests to timeout, and browser_tests to fail with
TestConnectToBadPort and WindowOpenInvalidExtension.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@53747 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit/chromium/ChangeLog b/WebKit/chromium/ChangeLog
index 49f6141..5118492 100644
--- a/WebKit/chromium/ChangeLog
+++ b/WebKit/chromium/ChangeLog
@@ -1,3 +1,19 @@
+2010-01-22 Albert J. Wong <ajwong at chromium.org>
+
+ Not reviewed. backout.
+
+ Backout r53705.
+ Causes ui_tests to timeout, and browser_tests to fail with
+ TestConnectToBadPort and WindowOpenInvalidExtension.
+
+ * src/FrameLoaderClientImpl.cpp:
+ (WebKit::FrameLoaderClientImpl::dispatchDidChangeLocationWithinPage):
+ (WebKit::FrameLoaderClientImpl::postProgressStartedNotification):
+ (WebKit::FrameLoaderClientImpl::postProgressFinishedNotification):
+ * src/WebViewImpl.cpp:
+ (WebKit::WebViewImpl::WebViewImpl):
+ * src/WebViewImpl.h:
+
2010-01-22 Peter Kasting <pkasting at google.com>
Not reviewed, backout.
diff --git a/WebKit/chromium/src/FrameLoaderClientImpl.cpp b/WebKit/chromium/src/FrameLoaderClientImpl.cpp
index 27e77d1..4333c5d 100644
--- a/WebKit/chromium/src/FrameLoaderClientImpl.cpp
+++ b/WebKit/chromium/src/FrameLoaderClientImpl.cpp
@@ -554,10 +554,16 @@ void FrameLoaderClientImpl::dispatchDidChangeLocationWithinPage()
// some events for our delegate.
WebViewImpl* webView = m_webFrame->viewImpl();
- // It is possible for a fragment redirection to occur after the page has
- // fully loaded, so we may need to synthesize didStartLoading and
- // didStopLoading. See https://bugs.webkit.org/show_bug.cgi?id=31838
- webView->didStartLoading();
+ // 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();
ASSERT(ds); // Should not be null when navigating to a reference fragment!
@@ -602,7 +608,9 @@ void FrameLoaderClientImpl::dispatchDidChangeLocationWithinPage()
if (m_webFrame->client())
m_webFrame->client()->didChangeLocationWithinPage(m_webFrame, isNewNavigation);
- webView->didStopLoading();
+ // Generate didStopLoading if loader is completed.
+ if (webView->client() && loaderCompleted)
+ webView->client()->didStopLoading();
}
void FrameLoaderClientImpl::dispatchDidPushStateWithinPage()
@@ -974,9 +982,9 @@ void FrameLoaderClientImpl::setMainDocumentError(DocumentLoader*,
void FrameLoaderClientImpl::postProgressStartedNotification()
{
- WebViewImpl* webView = m_webFrame->viewImpl();
- if (webView)
- webView->didStartLoading();
+ WebViewImpl* webview = m_webFrame->viewImpl();
+ if (webview && webview->client())
+ webview->client()->didStartLoading();
}
void FrameLoaderClientImpl::postProgressEstimateChangedNotification()
@@ -987,9 +995,9 @@ void FrameLoaderClientImpl::postProgressEstimateChangedNotification()
void FrameLoaderClientImpl::postProgressFinishedNotification()
{
// FIXME: why might the webview be null? http://b/1234461
- WebViewImpl* webView = m_webFrame->viewImpl();
- if (webView)
- webView->didStopLoading();
+ WebViewImpl* webview = m_webFrame->viewImpl();
+ if (webview && webview->client())
+ webview->client()->didStopLoading();
}
void FrameLoaderClientImpl::setMainFrameDocumentReady(bool ready)
diff --git a/WebKit/chromium/src/WebViewImpl.cpp b/WebKit/chromium/src/WebViewImpl.cpp
index a1deebd..c64afa7 100644
--- a/WebKit/chromium/src/WebViewImpl.cpp
+++ b/WebKit/chromium/src/WebViewImpl.cpp
@@ -200,7 +200,6 @@ WebViewImpl::WebViewImpl(WebViewClient* client)
#ifndef NDEBUG
, m_newNavigationLoader(0)
#endif
- , m_isLoading(0)
, m_zoomLevel(0)
, m_contextMenuAllowed(false)
, m_doingDragAndDrop(false)
@@ -1668,22 +1667,6 @@ void WebViewImpl::didCommitLoad(bool* isNewNavigation)
m_observedNewNavigation = false;
}
-void WebViewImpl::didStartLoading()
-{
- if (!m_isLoading++) {
- if (m_client)
- m_client->didStartLoading();
- }
-}
-
-void WebViewImpl::didStopLoading()
-{
- if (!--m_isLoading) {
- if (m_client)
- m_client->didStopLoading();
- }
-}
-
bool WebViewImpl::navigationPolicyFromMouseEvent(unsigned short button,
bool ctrl, bool shift,
bool alt, bool meta,
diff --git a/WebKit/chromium/src/WebViewImpl.h b/WebKit/chromium/src/WebViewImpl.h
index 62ec2ec..dd5191e 100644
--- a/WebKit/chromium/src/WebViewImpl.h
+++ b/WebKit/chromium/src/WebViewImpl.h
@@ -223,13 +223,6 @@ public:
// load.
void didCommitLoad(bool* isNewNavigation);
- // Notifies the WebView that loading started or stopped. It is okay to
- // call didStartLoading multiple times before calling didStopLoading.
- // However, didStopLoading must be called just as many times as
- // didStartLoading in order for the loading state to return to false.
- void didStartLoading();
- void didStopLoading();
-
bool contextMenuAllowed() const
{
return m_contextMenuAllowed;
@@ -330,9 +323,6 @@ private:
const WebCore::DocumentLoader* m_newNavigationLoader;
#endif
- // This counter is non-zero if we are loading.
- int m_isLoading;
-
// An object that can be used to manipulate m_page->settings() without linking
// against WebCore. This is lazily allocated the first time GetWebSettings()
// is called.
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list