Title: [291668] branches/safari-613-branch
Revision
291668
Author
alanc...@apple.com
Date
2022-03-22 10:56:53 -0700 (Tue, 22 Mar 2022)

Log Message

Cherry-pick r291303. rdar://problem/72432683

    background-clip:text doesn't work with display:flex
    https://bugs.webkit.org/show_bug.cgi?id=169125
    <rdar://problem/72432683>

    Reviewed by Simon Fraser.

    LayoutTests/imported/w3c:

    * web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex-expected.html: Added.
    * web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex-ref.html: Added.
    * web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex.html: Added.

    Source/WebCore:

    Tests: imported/w3c/web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex.html

    * rendering/RenderElement.cpp:
    (WebCore::RenderElement::paintAsInlineBlock):

    Flexbox children paint as inline blocks. This path didn't support text clip paint phase.

    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@291303 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Modified Paths

Added Paths

Diff

Modified: branches/safari-613-branch/LayoutTests/imported/w3c/ChangeLog (291667 => 291668)


--- branches/safari-613-branch/LayoutTests/imported/w3c/ChangeLog	2022-03-22 17:56:48 UTC (rev 291667)
+++ branches/safari-613-branch/LayoutTests/imported/w3c/ChangeLog	2022-03-22 17:56:53 UTC (rev 291668)
@@ -1,5 +1,45 @@
 2022-03-21  Alan Coon  <alanc...@apple.com>
 
+        Cherry-pick r291303. rdar://problem/72432683
+
+    background-clip:text doesn't work with display:flex
+    https://bugs.webkit.org/show_bug.cgi?id=169125
+    <rdar://problem/72432683>
+    
+    Reviewed by Simon Fraser.
+    
+    LayoutTests/imported/w3c:
+    
+    * web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex-expected.html: Added.
+    * web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex-ref.html: Added.
+    * web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex.html: Added.
+    
+    Source/WebCore:
+    
+    Tests: imported/w3c/web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex.html
+    
+    * rendering/RenderElement.cpp:
+    (WebCore::RenderElement::paintAsInlineBlock):
+    
+    Flexbox children paint as inline blocks. This path didn't support text clip paint phase.
+    
+    
+    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@291303 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+    2022-03-15  Antti Koivisto  <an...@apple.com>
+
+            background-clip:text doesn't work with display:flex
+            https://bugs.webkit.org/show_bug.cgi?id=169125
+            <rdar://problem/72432683>
+
+            Reviewed by Simon Fraser.
+
+            * web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex-expected.html: Added.
+            * web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex-ref.html: Added.
+            * web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex.html: Added.
+
+2022-03-21  Alan Coon  <alanc...@apple.com>
+
         Cherry-pick r291282. rdar://problem/88857731
 
     Dialog element only animates once

Added: branches/safari-613-branch/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex-expected.html (0 => 291668)


--- branches/safari-613-branch/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex-expected.html	                        (rev 0)
+++ branches/safari-613-branch/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex-expected.html	2022-03-22 17:56:53 UTC (rev 291668)
@@ -0,0 +1,16 @@
+<!DOCTYPE html>
+<link rel="stylesheet" href=""
+<style>
+.clip {
+  font-size: 80px;
+  color: green;
+}
+.flex {
+    display: flex;
+}
+.inline-flex {
+    display: inline-flex;
+}
+</style>
+<div class="clip flex">flex</div>
+<div class="clip inline-flex">inline-flex</div>

Added: branches/safari-613-branch/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex-ref.html (0 => 291668)


--- branches/safari-613-branch/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex-ref.html	                        (rev 0)
+++ branches/safari-613-branch/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex-ref.html	2022-03-22 17:56:53 UTC (rev 291668)
@@ -0,0 +1,16 @@
+<!DOCTYPE html>
+<link rel="stylesheet" href=""
+<style>
+.clip {
+  font-size: 80px;
+  color: green;
+}
+.flex {
+    display: flex;
+}
+.inline-flex {
+    display: inline-flex;
+}
+</style>
+<div class="clip flex">flex</div>
+<div class="clip inline-flex">inline-flex</div>

Added: branches/safari-613-branch/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex.html (0 => 291668)


--- branches/safari-613-branch/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex.html	                        (rev 0)
+++ branches/safari-613-branch/LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex.html	2022-03-22 17:56:53 UTC (rev 291668)
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<title>background-clip:text with display:flex</title>
+<link rel="help" href=""
+<link rel="match" href=""
+<link rel="stylesheet" href=""
+<style>
+.clip {
+  font-size: 80px;
+  color: transparent;
+  background-color: green;
+  background-clip: text;
+}
+.flex {
+    display: flex;
+}
+.inline-flex {
+    display: inline-flex;
+}
+</style>
+<div class="clip flex">flex</div>
+<div class="clip inline-flex">inline-flex</div>

Modified: branches/safari-613-branch/Source/WebCore/ChangeLog (291667 => 291668)


--- branches/safari-613-branch/Source/WebCore/ChangeLog	2022-03-22 17:56:48 UTC (rev 291667)
+++ branches/safari-613-branch/Source/WebCore/ChangeLog	2022-03-22 17:56:53 UTC (rev 291668)
@@ -1,5 +1,48 @@
 2022-03-21  Alan Coon  <alanc...@apple.com>
 
+        Cherry-pick r291303. rdar://problem/72432683
+
+    background-clip:text doesn't work with display:flex
+    https://bugs.webkit.org/show_bug.cgi?id=169125
+    <rdar://problem/72432683>
+    
+    Reviewed by Simon Fraser.
+    
+    LayoutTests/imported/w3c:
+    
+    * web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex-expected.html: Added.
+    * web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex-ref.html: Added.
+    * web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex.html: Added.
+    
+    Source/WebCore:
+    
+    Tests: imported/w3c/web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex.html
+    
+    * rendering/RenderElement.cpp:
+    (WebCore::RenderElement::paintAsInlineBlock):
+    
+    Flexbox children paint as inline blocks. This path didn't support text clip paint phase.
+    
+    
+    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@291303 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+    2022-03-15  Antti Koivisto  <an...@apple.com>
+
+            background-clip:text doesn't work with display:flex
+            https://bugs.webkit.org/show_bug.cgi?id=169125
+            <rdar://problem/72432683>
+
+            Reviewed by Simon Fraser.
+
+            Tests: imported/w3c/web-platform-tests/css/css-backgrounds/background-clip/clip-text-flex.html
+
+            * rendering/RenderElement.cpp:
+            (WebCore::RenderElement::paintAsInlineBlock):
+
+            Flexbox children paint as inline blocks. This path didn't support text clip paint phase.
+
+2022-03-21  Alan Coon  <alanc...@apple.com>
+
         Cherry-pick r291282. rdar://problem/88857731
 
     Dialog element only animates once

Modified: branches/safari-613-branch/Source/WebCore/rendering/RenderElement.cpp (291667 => 291668)


--- branches/safari-613-branch/Source/WebCore/rendering/RenderElement.cpp	2022-03-22 17:56:48 UTC (rev 291667)
+++ branches/safari-613-branch/Source/WebCore/rendering/RenderElement.cpp	2022-03-22 17:56:53 UTC (rev 291668)
@@ -1141,7 +1141,7 @@
     // (See Appendix E.2, section 6.4 on inline block/table/replaced elements in the CSS2.1 specification.)
     // This is also used by other elements (e.g. flex items and grid items).
     PaintPhase paintPhaseToUse = isExcludedAndPlacedInBorder() ? paintInfo.phase : PaintPhase::Foreground;
-    if (paintInfo.phase == PaintPhase::Selection || paintInfo.phase == PaintPhase::EventRegion)
+    if (paintInfo.phase == PaintPhase::Selection || paintInfo.phase == PaintPhase::EventRegion || paintInfo.phase == PaintPhase::TextClip)
         paint(paintInfo, childPoint);
     else if (paintInfo.phase == paintPhaseToUse) {
         paintPhase(*this, PaintPhase::BlockBackground, paintInfo, childPoint);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to