Title: [190734] trunk/Source/WebCore
Revision
190734
Author
[email protected]
Date
2015-10-08 11:46:20 -0700 (Thu, 08 Oct 2015)

Log Message

Fallback to the RenderView when repaint container is null.
https://bugs.webkit.org/show_bug.cgi?id=149903

Reviewed by Simon Fraser.

Reduces code complexity at the calling sites.

No change in functionality.

* rendering/RenderObject.cpp:
(WebCore::RenderObject::repaintUsingContainer):
(WebCore::RenderObject::repaint):
(WebCore::RenderObject::repaintRectangle):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (190733 => 190734)


--- trunk/Source/WebCore/ChangeLog	2015-10-08 17:44:18 UTC (rev 190733)
+++ trunk/Source/WebCore/ChangeLog	2015-10-08 18:46:20 UTC (rev 190734)
@@ -1,3 +1,19 @@
+2015-10-08  Zalan Bujtas  <[email protected]>
+
+        Fallback to the RenderView when repaint container is null.
+        https://bugs.webkit.org/show_bug.cgi?id=149903
+
+        Reviewed by Simon Fraser.
+
+        Reduces code complexity at the calling sites.
+
+        No change in functionality.
+
+        * rendering/RenderObject.cpp:
+        (WebCore::RenderObject::repaintUsingContainer):
+        (WebCore::RenderObject::repaint):
+        (WebCore::RenderObject::repaintRectangle):
+
 2015-10-08  Jiewen Tan  <[email protected]>
 
         Add NULL check for renderBox::layer() on applying zoom level change

Modified: trunk/Source/WebCore/rendering/RenderObject.cpp (190733 => 190734)


--- trunk/Source/WebCore/rendering/RenderObject.cpp	2015-10-08 17:44:18 UTC (rev 190733)
+++ trunk/Source/WebCore/rendering/RenderObject.cpp	2015-10-08 18:46:20 UTC (rev 190734)
@@ -882,10 +882,8 @@
     if (r.isEmpty())
         return;
 
-    if (!repaintContainer) {
-        view().repaintViewRectangle(r);
-        return;
-    }
+    if (!repaintContainer)
+        repaintContainer = &view();
 
     if (is<RenderFlowThread>(*repaintContainer)) {
         downcast<RenderFlowThread>(*repaintContainer).repaintRectangleInRegions(r);
@@ -897,17 +895,21 @@
         return;
     }
 
-    RenderView& v = view();
     if (repaintContainer->isRenderView()) {
-        ASSERT(repaintContainer == &v);
-        bool viewHasCompositedLayer = v.isComposited();
-        if (!viewHasCompositedLayer || v.layer()->backing()->paintsIntoWindow()) {
-            v.repaintViewRectangle(viewHasCompositedLayer && v.layer()->transform() ? LayoutRect(v.layer()->transform()->mapRect(snapRectToDevicePixels(r, document().deviceScaleFactor()))) : r);
+        RenderView& view = this->view();
+        ASSERT(repaintContainer == &view);
+        bool viewHasCompositedLayer = view.isComposited();
+        if (!viewHasCompositedLayer || view.layer()->backing()->paintsIntoWindow()) {
+            LayoutRect rect = r;
+            if (viewHasCompositedLayer && view.layer()->transform())
+                rect = LayoutRect(view.layer()->transform()->mapRect(snapRectToDevicePixels(rect, document().deviceScaleFactor())));
+            view.repaintViewRectangle(rect);
             return;
         }
     }
     
-    if (v.usesCompositing()) {
+
+    if (view().usesCompositing()) {
         ASSERT(repaintContainer->isComposited());
         repaintContainer->layer()->setBackingNeedsRepaintInRect(r, shouldClipToLayer ? GraphicsLayer::ClipToLayer : GraphicsLayer::DoNotClipToLayer);
     }
@@ -924,7 +926,7 @@
         return;
 
     RenderLayerModelObject* repaintContainer = containerForRepaint();
-    repaintUsingContainer(repaintContainer ? repaintContainer : &view, clippedOverflowRectForRepaint(repaintContainer));
+    repaintUsingContainer(repaintContainer, clippedOverflowRectForRepaint(repaintContainer));
 }
 
 void RenderObject::repaintRectangle(const LayoutRect& r, bool shouldClipToLayer) const
@@ -943,7 +945,7 @@
     dirtyRect.move(view.layoutDelta());
 
     RenderLayerModelObject* repaintContainer = containerForRepaint();
-    repaintUsingContainer(repaintContainer ? repaintContainer : &view, computeRectForRepaint(dirtyRect, repaintContainer), shouldClipToLayer);
+    repaintUsingContainer(repaintContainer, computeRectForRepaint(dirtyRect, repaintContainer), shouldClipToLayer);
 }
 
 void RenderObject::repaintSlowRepaintObject() const
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to