Title: [217687] trunk/Source/WebCore
Revision
217687
Author
[email protected]
Date
2017-06-01 15:40:03 -0700 (Thu, 01 Jun 2017)

Log Message

Remove the redundant selectionOnly argument from RenderLayer::paintForegroundForFragments()
https://bugs.webkit.org/show_bug.cgi?id=172835

Reviewed by Zalan Bujtas.

The 'selectionOnly' state is already encoded in localPaintingInfo.paintBehavior so there's
no need to pass it separately.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::paintForegroundForFragments):
* rendering/RenderLayer.h:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (217686 => 217687)


--- trunk/Source/WebCore/ChangeLog	2017-06-01 22:32:24 UTC (rev 217686)
+++ trunk/Source/WebCore/ChangeLog	2017-06-01 22:40:03 UTC (rev 217687)
@@ -1,3 +1,18 @@
+2017-06-01  Simon Fraser  <[email protected]>
+
+        Remove the redundant selectionOnly argument from RenderLayer::paintForegroundForFragments()
+        https://bugs.webkit.org/show_bug.cgi?id=172835
+
+        Reviewed by Zalan Bujtas.
+
+        The 'selectionOnly' state is already encoded in localPaintingInfo.paintBehavior so there's
+        no need to pass it separately.
+
+        * rendering/RenderLayer.cpp:
+        (WebCore::RenderLayer::paintLayerContents):
+        (WebCore::RenderLayer::paintForegroundForFragments):
+        * rendering/RenderLayer.h:
+
 2017-06-01  Yoshiaki Jitsukawa  <[email protected]>
 
         Fix compilation errors in LocalizedStrings.cpp on platform not USE(CF) nor USE(GLIB)

Modified: trunk/Source/WebCore/rendering/RenderLayer.cpp (217686 => 217687)


--- trunk/Source/WebCore/rendering/RenderLayer.cpp	2017-06-01 22:32:24 UTC (rev 217686)
+++ trunk/Source/WebCore/rendering/RenderLayer.cpp	2017-06-01 22:40:03 UTC (rev 217687)
@@ -4353,6 +4353,7 @@
 
     bool selectionAndBackgroundsOnly = paintingInfo.paintBehavior & PaintBehaviorSelectionAndBackgroundsOnly;
     bool selectionOnly = paintingInfo.paintBehavior & PaintBehaviorSelectionOnly;
+
     LayerFragments layerFragments;
     RenderObject* subtreePaintRootForRenderer = nullptr;
 
@@ -4420,7 +4421,7 @@
         if (isPaintingCompositedForeground) {
             if (shouldPaintContent) {
                 paintForegroundForFragments(layerFragments, currentContext, context, paintingInfo.paintDirtyRect, haveTransparency,
-                    localPaintingInfo, paintBehavior, subtreePaintRootForRenderer, selectionOnly || selectionAndBackgroundsOnly);
+                    localPaintingInfo, paintBehavior, subtreePaintRootForRenderer);
             }
         }
 
@@ -4765,7 +4766,7 @@
 
 void RenderLayer::paintForegroundForFragments(const LayerFragments& layerFragments, GraphicsContext& context, GraphicsContext& contextForTransparencyLayer,
     const LayoutRect& transparencyPaintDirtyRect, bool haveTransparency, const LayerPaintingInfo& localPaintingInfo, PaintBehavior paintBehavior,
-    RenderObject* subtreePaintRootForRenderer, bool selectionOnly)
+    RenderObject* subtreePaintRootForRenderer)
 {
     // Begin transparency if we have something to paint.
     if (haveTransparency) {
@@ -4801,6 +4802,7 @@
     
     // We have to loop through every fragment multiple times, since we have to repaint in each specific phase in order for
     // interleaving of the fragments to work properly.
+    bool selectionOnly = localPaintingInfo.paintBehavior & (PaintBehaviorSelectionAndBackgroundsOnly | PaintBehaviorSelectionOnly);
     paintForegroundForFragmentsWithPhase(selectionOnly ? PaintPhaseSelection : PaintPhaseChildBlockBackgrounds, layerFragments,
         context, localPaintingInfo, localPaintBehavior, subtreePaintRootForRenderer);
     

Modified: trunk/Source/WebCore/rendering/RenderLayer.h (217686 => 217687)


--- trunk/Source/WebCore/rendering/RenderLayer.h	2017-06-01 22:32:24 UTC (rev 217686)
+++ trunk/Source/WebCore/rendering/RenderLayer.h	2017-06-01 22:40:03 UTC (rev 217687)
@@ -844,8 +844,7 @@
     void paintBackgroundForFragments(const LayerFragments&, GraphicsContext&, GraphicsContext& transparencyLayerContext,
         const LayoutRect& transparencyPaintDirtyRect, bool haveTransparency, const LayerPaintingInfo&, PaintBehavior, RenderObject* paintingRootForRenderer);
     void paintForegroundForFragments(const LayerFragments&, GraphicsContext&, GraphicsContext& transparencyLayerContext,
-        const LayoutRect& transparencyPaintDirtyRect, bool haveTransparency, const LayerPaintingInfo&, PaintBehavior, RenderObject* paintingRootForRenderer,
-        bool selectionOnly);
+        const LayoutRect& transparencyPaintDirtyRect, bool haveTransparency, const LayerPaintingInfo&, PaintBehavior, RenderObject* paintingRootForRenderer);
     void paintForegroundForFragmentsWithPhase(PaintPhase, const LayerFragments&, GraphicsContext&, const LayerPaintingInfo&, PaintBehavior, RenderObject* paintingRootForRenderer);
     void paintOutlineForFragments(const LayerFragments&, GraphicsContext&, const LayerPaintingInfo&, PaintBehavior, RenderObject* paintingRootForRenderer);
     void paintOverflowControlsForFragments(const LayerFragments&, GraphicsContext&, const LayerPaintingInfo&);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to