Title: [264448] trunk
Revision
264448
Author
[email protected]
Date
2020-07-16 01:19:52 -0700 (Thu, 16 Jul 2020)

Log Message

REGRESSION(r264272) [GTK][WPE] css3/color/composited-solid-backgrounds.html is failing
https://bugs.webkit.org/show_bug.cgi?id=214260

Reviewed by Darin Adler.

Source/WebCore:

The problem is that clampToComponentFloat is returning a uint8_t instead of a float, so we always end up
returning 0.

* platform/graphics/ColorUtilities.h:
(WebCore::clampToComponentFloat):

Tools:

Add a test case.

* TestWebKitAPI/Tests/WebCore/ExtendedColorTests.cpp:
(TestWebKitAPI::TEST):

LayoutTests:

Remove expectations of css3/color/composited-solid-backgrounds.html.

* platform/glib/TestExpectations:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (264447 => 264448)


--- trunk/LayoutTests/ChangeLog	2020-07-16 06:32:56 UTC (rev 264447)
+++ trunk/LayoutTests/ChangeLog	2020-07-16 08:19:52 UTC (rev 264448)
@@ -1,3 +1,14 @@
+2020-07-16  Carlos Garcia Campos  <[email protected]>
+
+        REGRESSION(r264272) [GTK][WPE] css3/color/composited-solid-backgrounds.html is failing
+        https://bugs.webkit.org/show_bug.cgi?id=214260
+
+        Reviewed by Darin Adler.
+
+        Remove expectations of css3/color/composited-solid-backgrounds.html.
+
+        * platform/glib/TestExpectations:
+
 2020-07-15  Yusuke Suzuki  <[email protected]>
 
         Should clear exception after microtask draining

Modified: trunk/LayoutTests/platform/glib/TestExpectations (264447 => 264448)


--- trunk/LayoutTests/platform/glib/TestExpectations	2020-07-16 06:32:56 UTC (rev 264447)
+++ trunk/LayoutTests/platform/glib/TestExpectations	2020-07-16 08:19:52 UTC (rev 264448)
@@ -155,8 +155,6 @@
 # Pass instead of removing this line.
 webkit.org/b/214259 fast/gradients/conic-gradient-alpha.html [ ImageOnlyFailure ]
 
-webkit.org/b/214260 css3/color/composited-solid-backgrounds.html [ ImageOnlyFailure ]
-
 #////////////////////////////////////////////////////////////////////////////////////////
 # End of CSS-related bugs
 #////////////////////////////////////////////////////////////////////////////////////////
@@ -699,7 +697,6 @@
 http/wpt/crypto/rsa-pss-crash.any.html [ Pass ]
 http/wpt/crypto/rsa-pss-crash.any.worker.html [ Pass ]
 
-
 fast/text/emoji-gender-2-3.html [ Pass ]
 fast/text/emoji-gender-2-4.html [ Pass ]
 fast/text/emoji-gender-2-5.html [ Pass ]

Modified: trunk/Source/WebCore/ChangeLog (264447 => 264448)


--- trunk/Source/WebCore/ChangeLog	2020-07-16 06:32:56 UTC (rev 264447)
+++ trunk/Source/WebCore/ChangeLog	2020-07-16 08:19:52 UTC (rev 264448)
@@ -1,3 +1,16 @@
+2020-07-16  Carlos Garcia Campos  <[email protected]>
+
+        REGRESSION(r264272) [GTK][WPE] css3/color/composited-solid-backgrounds.html is failing
+        https://bugs.webkit.org/show_bug.cgi?id=214260
+
+        Reviewed by Darin Adler.
+
+        The problem is that clampToComponentFloat is returning a uint8_t instead of a float, so we always end up
+        returning 0.
+
+        * platform/graphics/ColorUtilities.h:
+        (WebCore::clampToComponentFloat):
+
 2020-07-15  Yusuke Suzuki  <[email protected]>
 
         Should clear exception after microtask draining

Modified: trunk/Source/WebCore/platform/graphics/ColorUtilities.h (264447 => 264448)


--- trunk/Source/WebCore/platform/graphics/ColorUtilities.h	2020-07-16 06:32:56 UTC (rev 264447)
+++ trunk/Source/WebCore/platform/graphics/ColorUtilities.h	2020-07-16 08:19:52 UTC (rev 264448)
@@ -51,7 +51,7 @@
 constexpr float convertToComponentFloat(uint8_t);
 
 constexpr uint8_t clampToComponentByte(int);
-constexpr uint8_t clampToComponentFloat(float);
+constexpr float clampToComponentFloat(float);
 
 template<typename T> T convertComponentByteTo(uint8_t);
 template<typename T> T convertComponentFloatTo(float);
@@ -97,7 +97,7 @@
     return std::clamp(c, 0, 255);
 }
 
-constexpr uint8_t clampToComponentFloat(float f)
+constexpr float clampToComponentFloat(float f)
 {
     return std::clamp(f, 0.0f, 1.0f);
 }

Modified: trunk/Tools/ChangeLog (264447 => 264448)


--- trunk/Tools/ChangeLog	2020-07-16 06:32:56 UTC (rev 264447)
+++ trunk/Tools/ChangeLog	2020-07-16 08:19:52 UTC (rev 264448)
@@ -1,3 +1,15 @@
+2020-07-16  Carlos Garcia Campos  <[email protected]>
+
+        REGRESSION(r264272) [GTK][WPE] css3/color/composited-solid-backgrounds.html is failing
+        https://bugs.webkit.org/show_bug.cgi?id=214260
+
+        Reviewed by Darin Adler.
+
+        Add a test case.
+
+        * TestWebKitAPI/Tests/WebCore/ExtendedColorTests.cpp:
+        (TestWebKitAPI::TEST):
+
 2020-07-15  Dean Jackson  <[email protected]>
 
         MiniBrowser toolbar is ugly with default macOS Big Sur style

Modified: trunk/Tools/TestWebKitAPI/Tests/WebCore/ExtendedColorTests.cpp (264447 => 264448)


--- trunk/Tools/TestWebKitAPI/Tests/WebCore/ExtendedColorTests.cpp	2020-07-16 06:32:56 UTC (rev 264447)
+++ trunk/Tools/TestWebKitAPI/Tests/WebCore/ExtendedColorTests.cpp	2020-07-16 08:19:52 UTC (rev 264448)
@@ -261,4 +261,36 @@
     EXPECT_TRUE(WTF::areEssentiallyEqual(sRGBAColor.alpha, 0.75f));
 }
 
+TEST(ExtendedColor, ColorWithAlphaMultipliedBy)
+{
+    Color color { SRGBA<float> { 0., 0., 1., 0.6 } };
+    EXPECT_TRUE(color.isExtended());
+
+    {
+        Color colorWithAlphaMultipliedBy = color.colorWithAlphaMultipliedBy(1.);
+        EXPECT_TRUE(colorWithAlphaMultipliedBy.isExtended());
+        EXPECT_EQ(color, colorWithAlphaMultipliedBy);
+    }
+
+    {
+        Color colorWithAlphaMultipliedBy = color.colorWithAlphaMultipliedBy(0.5);
+        EXPECT_TRUE(colorWithAlphaMultipliedBy.isExtended());
+        auto [r, g, b, a] = colorWithAlphaMultipliedBy.asExtended().components();
+        EXPECT_FLOAT_EQ(r, 0.);
+        EXPECT_FLOAT_EQ(g, 0.);
+        EXPECT_FLOAT_EQ(b, 1.);
+        EXPECT_FLOAT_EQ(a, 0.3);
+    }
+
+    {
+        Color colorWithAlphaMultipliedBy = color.colorWithAlphaMultipliedBy(0.);
+        EXPECT_TRUE(colorWithAlphaMultipliedBy.isExtended());
+        auto [r, g, b, a] = colorWithAlphaMultipliedBy.asExtended().components();
+        EXPECT_FLOAT_EQ(r, 0.);
+        EXPECT_FLOAT_EQ(g, 0.);
+        EXPECT_FLOAT_EQ(b, 1.);
+        EXPECT_FLOAT_EQ(a, 0.);
+    }
+}
+
 } // namespace TestWebKitAPI
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to