Title: [132533] trunk/Source/WebKit/chromium
Revision
132533
Author
[email protected]
Date
2012-10-25 14:04:36 -0700 (Thu, 25 Oct 2012)

Log Message

[chromium] Regression: navigating between composited pages doesn't cause redraw until scrolled
https://bugs.webkit.org/show_bug.cgi?id=100396

Patch by James Robinson <[email protected]> on 2012-10-25
Reviewed by Adrienne Walker.

This partially reverts r132173.  It's not valid to suppress invalidations in commitDocumentData since for small
or cached pages this could load up the whole document.  Also adds and improves some of the tracing.

* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::commitDocumentData):
(WebKit::WebFrameImpl::createFrameView):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::scheduleComposite):

Modified Paths

Diff

Modified: trunk/Source/WebKit/chromium/ChangeLog (132532 => 132533)


--- trunk/Source/WebKit/chromium/ChangeLog	2012-10-25 21:02:19 UTC (rev 132532)
+++ trunk/Source/WebKit/chromium/ChangeLog	2012-10-25 21:04:36 UTC (rev 132533)
@@ -1,3 +1,19 @@
+2012-10-25  James Robinson  <[email protected]>
+
+        [chromium] Regression: navigating between composited pages doesn't cause redraw until scrolled
+        https://bugs.webkit.org/show_bug.cgi?id=100396
+
+        Reviewed by Adrienne Walker.
+
+        This partially reverts r132173.  It's not valid to suppress invalidations in commitDocumentData since for small
+        or cached pages this could load up the whole document.  Also adds and improves some of the tracing.
+
+        * src/WebFrameImpl.cpp:
+        (WebKit::WebFrameImpl::commitDocumentData):
+        (WebKit::WebFrameImpl::createFrameView):
+        * src/WebViewImpl.cpp:
+        (WebKit::WebViewImpl::scheduleComposite):
+
 2012-10-25  Sami Kyostila  <[email protected]>
 
         Composited/HW content have the red and blue channels inverted in DRT on Chromium Android

Modified: trunk/Source/WebKit/chromium/src/WebFrameImpl.cpp (132532 => 132533)


--- trunk/Source/WebKit/chromium/src/WebFrameImpl.cpp	2012-10-25 21:02:19 UTC (rev 132532)
+++ trunk/Source/WebKit/chromium/src/WebFrameImpl.cpp	2012-10-25 21:04:36 UTC (rev 132533)
@@ -148,6 +148,7 @@
 #include "SubstituteData.h"
 #include "TextAffinity.h"
 #include "TextIterator.h"
+#include "TraceEvent.h"
 #include "UserGestureIndicator.h"
 #include "V8DOMFileSystem.h"
 #include "V8DirectoryEntry.h"
@@ -1114,15 +1115,7 @@
 
 void WebFrameImpl::commitDocumentData(const char* data, size_t length)
 {
-    WebViewImpl* webView = viewImpl();
-    bool isMainFrame = webView->mainFrameImpl()->frame() == frame();
-    if (isMainFrame)
-        webView->suppressInvalidations(true);
-
     frame()->loader()->documentLoader()->commitData(data, length);
-
-    if (isMainFrame)
-        webView->suppressInvalidations(false);
 }
 
 unsigned WebFrameImpl::unloadListenerCount() const
@@ -2275,6 +2268,8 @@
 
 void WebFrameImpl::createFrameView()
 {
+    TRACE_EVENT0("webkit", "WebFrameImpl::createFrameView");
+
     ASSERT(frame()); // If frame() doesn't exist, we probably didn't init properly.
 
     WebViewImpl* webView = viewImpl();

Modified: trunk/Source/WebKit/chromium/src/WebViewImpl.cpp (132532 => 132533)


--- trunk/Source/WebKit/chromium/src/WebViewImpl.cpp	2012-10-25 21:02:19 UTC (rev 132532)
+++ trunk/Source/WebKit/chromium/src/WebViewImpl.cpp	2012-10-25 21:04:36 UTC (rev 132533)
@@ -4102,7 +4102,7 @@
 void WebViewImpl::scheduleComposite()
 {
     if  (m_suppressInvalidations) {
-        TRACE_EVENT0("webkit", "WebViewImpl invalidations suppressed");
+        TRACE_EVENT_INSTANT0("webkit", "WebViewImpl invalidations suppressed");
         return;
     }
 
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to