Title: [152407] trunk/Source/WebKit2
Revision
152407
Author
ander...@apple.com
Date
2013-07-04 14:17:40 -0700 (Thu, 04 Jul 2013)

Log Message

Paint the page background if we haven't received our first update
https://bugs.webkit.org/show_bug.cgi?id=118402
<rdar://problem/13893308>

Reviewed by Simon Fraser.

Make sure that we always paint something when we haven't received our first update from the web process.

* UIProcess/API/mac/WKView.mm:
(-[WKView drawRect:]):
* UIProcess/DrawingAreaProxyImpl.h:
(WebKit::DrawingAreaProxyImpl::hasReceivedFirstUpdate):

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (152406 => 152407)


--- trunk/Source/WebKit2/ChangeLog	2013-07-04 20:28:12 UTC (rev 152406)
+++ trunk/Source/WebKit2/ChangeLog	2013-07-04 21:17:40 UTC (rev 152407)
@@ -1,5 +1,20 @@
 2013-07-04  Anders Carlsson  <ander...@apple.com>
 
+        Paint the page background if we haven't received our first update
+        https://bugs.webkit.org/show_bug.cgi?id=118402
+        <rdar://problem/13893308>
+
+        Reviewed by Simon Fraser.
+
+        Make sure that we always paint something when we haven't received our first update from the web process.
+
+        * UIProcess/API/mac/WKView.mm:
+        (-[WKView drawRect:]):
+        * UIProcess/DrawingAreaProxyImpl.h:
+        (WebKit::DrawingAreaProxyImpl::hasReceivedFirstUpdate):
+
+2013-07-04  Anders Carlsson  <ander...@apple.com>
+
         Crash when createPluginInternal ends up destroying the plug-in
         https://bugs.webkit.org/show_bug.cgi?id=118397
         <rdar://problem/14155051>

Modified: trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm (152406 => 152407)


--- trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm	2013-07-04 20:28:12 UTC (rev 152406)
+++ trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm	2013-07-04 21:17:40 UTC (rev 152407)
@@ -2165,7 +2165,7 @@
 
             // If the window doesn't have a valid backing store, we need to fill the parts of the page that we
             // didn't paint with the background color (white or clear), to avoid garbage in those areas.
-            if (!_data->_windowHasValidBackingStore) {
+            if (!_data->_windowHasValidBackingStore || !drawingArea->hasReceivedFirstUpdate()) {
                 Vector<IntRect> unpaintedRects = unpaintedRegion.rects();
                 for (size_t i = 0; i < unpaintedRects.size(); ++i)
                     drawPageBackground(context, _data->_page.get(), unpaintedRects[i]);

Modified: trunk/Source/WebKit2/UIProcess/DrawingAreaProxyImpl.h (152406 => 152407)


--- trunk/Source/WebKit2/UIProcess/DrawingAreaProxyImpl.h	2013-07-04 20:28:12 UTC (rev 152406)
+++ trunk/Source/WebKit2/UIProcess/DrawingAreaProxyImpl.h	2013-07-04 21:17:40 UTC (rev 152407)
@@ -52,6 +52,8 @@
     bool isInAcceleratedCompositingMode() const { return !m_layerTreeContext.isEmpty(); }
 #endif
 
+    bool hasReceivedFirstUpdate() const { return m_hasReceivedFirstUpdate; }
+
 private:
     explicit DrawingAreaProxyImpl(WebPageProxy*);
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to