[webkit-changes] [295655] trunk/Source/WebCore/page/FocusController.cpp

2022-06-17 Thread nmouchtaris
Title: [295655] trunk/Source/WebCore/page/FocusController.cpp








Revision 295655
Author nmouchta...@apple.com
Date 2022-06-17 20:57:40 -0700 (Fri, 17 Jun 2022)


Log Message
Assertion failed m_page.shouldSuppressScrollbarAnimations() in FocusController::setIsVisibleAndActiveInternal(bool)
https://bugs.webkit.org/show_bug.cgi?id=241609

Reviewed by Simon Fraser.

Revert to original assert after change in  https://bugs.webkit.org/show_bug.cgi?id=238497. In the case of a scrollable
area with no scrollbars, m_scrollerImpPair is not nil, but its members _horizontalScrollerImp and _verticalScrollerImp
are nil, so presumably the NSScroller API handles this case correctly.

* Source/WebCore/page/FocusController.cpp:
(WebCore::FocusController::setIsVisibleAndActiveInternal):

Canonical link: https://commits.webkit.org/251660@main

Modified Paths

trunk/Source/WebCore/page/FocusController.cpp




Diff

Modified: trunk/Source/WebCore/page/FocusController.cpp (295654 => 295655)

--- trunk/Source/WebCore/page/FocusController.cpp	2022-06-18 03:46:55 UTC (rev 295654)
+++ trunk/Source/WebCore/page/FocusController.cpp	2022-06-18 03:57:40 UTC (rev 295655)
@@ -963,10 +963,7 @@
 continue;
 
 for (auto& scrollableArea : *scrollableAreas) {
-if (!scrollableArea->scrollbarsCanBeActive())
-continue;
-ASSERT(m_page.shouldSuppressScrollbarAnimations());
-
+ASSERT(scrollableArea->scrollbarsCanBeActive() || m_page.shouldSuppressScrollbarAnimations());
 contentAreaDidShowOrHide(scrollableArea, contentIsVisible);
 }
 }






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [295448] trunk

2022-06-10 Thread nmouchtaris
Title: [295448] trunk








Revision 295448
Author nmouchta...@apple.com
Date 2022-06-10 01:04:47 -0700 (Fri, 10 Jun 2022)


Log Message
REGRESSION: CSS scroll-behavior: smooth with overflow: hidden breaks JS scrollTo/scrollLeft/scrollTop
https://bugs.webkit.org/show_bug.cgi?id=238497


Reviewed by Simon Fraser.

Add scrollable area to frame view's list of scrollable areas if necessary in scrollToOffset.
This is necessary as Document::runScrollSteps() looks through the list of scrollable areas
to service animations on the scrollable area. It is necessary to add the scrollable area
in scrollToOffset as for a scrollable area that is not user scrollable (such as a scrollable
area with overflow: hidden) it would not be added, so the animation would not occur.

* LayoutTests/fast/scrolling/smooth-scroll-with-overflow-hidden-expected.txt: Added.
* LayoutTests/fast/scrolling/smooth-scroll-with-overflow-hidden.html: Added.
* Source/WebCore/page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::absoluteEventTrackingRegionsForFrame const):
* Source/WebCore/platform/ScrollableArea.h:
(WebCore::ScrollableArea::isVisibleToHitTesting const):
* Source/WebCore/rendering/RenderLayerScrollableArea.cpp:
(WebCore::RenderLayerScrollableArea::clear):
(WebCore::RenderLayerScrollableArea::scrollToOffset):
(WebCore::RenderLayerScrollableArea::isVisibleToHitTesting const):
(WebCore::RenderLayerScrollableArea::updateScrollableAreaSet):
(WebCore::RenderLayerScrollableArea::registerScrollableArea):
* Source/WebCore/rendering/RenderLayerScrollableArea.h:

Canonical link: https://commits.webkit.org/251454@main

Modified Paths

trunk/Source/WebCore/page/FocusController.cpp
trunk/Source/WebCore/page/FrameView.cpp
trunk/Source/WebCore/page/FrameView.h
trunk/Source/WebCore/page/scrolling/ScrollingCoordinator.cpp
trunk/Source/WebCore/platform/ScrollableArea.h
trunk/Source/WebCore/rendering/RenderLayerScrollableArea.cpp
trunk/Source/WebCore/rendering/RenderLayerScrollableArea.h
trunk/Source/WebCore/rendering/RenderListBox.h


Added Paths

trunk/LayoutTests/fast/scrolling/mac/smooth-scroll-with-overflow-hidden-expected.txt
trunk/LayoutTests/fast/scrolling/mac/smooth-scroll-with-overflow-hidden.html




Diff

Added: trunk/LayoutTests/fast/scrolling/mac/smooth-scroll-with-overflow-hidden-expected.txt (0 => 295448)

--- trunk/LayoutTests/fast/scrolling/mac/smooth-scroll-with-overflow-hidden-expected.txt	(rev 0)
+++ trunk/LayoutTests/fast/scrolling/mac/smooth-scroll-with-overflow-hidden-expected.txt	2022-06-10 08:04:47 UTC (rev 295448)
@@ -0,0 +1,5 @@
+PASS scrollContainer.scrollLeft is 500
+PASS successfullyParsed is true
+
+TEST COMPLETE
+


Added: trunk/LayoutTests/fast/scrolling/mac/smooth-scroll-with-overflow-hidden.html (0 => 295448)

--- trunk/LayoutTests/fast/scrolling/mac/smooth-scroll-with-overflow-hidden.html	(rev 0)
+++ trunk/LayoutTests/fast/scrolling/mac/smooth-scroll-with-overflow-hidden.html	2022-06-10 08:04:47 UTC (rev 295448)
@@ -0,0 +1,54 @@
+ 
+
+
+
+.scroll-container {
+height: 250px;
+width: 300px;
+border: 1px solid black;
+overflow-y: scroll;
+overflow: hidden;
+}
+
+.contents {
+height: 100%;
+width: 400%;
+background-image: repeating-linear-gradient(to right, white, silver 250px);
+}
+
+
+jsTestIsAsync = true;
+
+async function runTest()
+{
+scrollContainer = document.querySelector('.scroll-container');
+
+eventSender.monitorWheelEvents();
+
+scrollContainer.scrollTo({
+top: 0,
+left: 500,
+behavior: 'smooth'
+});
+
+await UIHelper.waitForScrollCompletion();
+
+shouldBe('scrollContainer.scrollLeft', '500');
+finishJSTest();
+}
+
+window.addEventListener('load', () => {
+setTimeout(runTest, 0);
+}, false);
+
+
+
+
+
+
+
+

[webkit-changes] [295260] trunk/Source/WebCore/platform/graphics/filters/FilterImage.cpp

2022-06-04 Thread nmouchtaris
Title: [295260] trunk/Source/WebCore/platform/graphics/filters/FilterImage.cpp








Revision 295260
Author nmouchta...@apple.com
Date 2022-06-04 01:30:21 -0700 (Sat, 04 Jun 2022)


Log Message
Add checks for overflow in FilterImage::copyImageBytes
https://bugs.webkit.org/show_bug.cgi?id=241296


Reviewed by Said Abou-Hallawa.

Add overflow checks to copyImageBytes functions in FilterImage class.

* Source/WebCore/platform/graphics/filters/FilterImage.cpp:
(WebCore::copyImageBytes):

Canonical link: https://commits.webkit.org/251306@main

Modified Paths

trunk/Source/WebCore/platform/graphics/filters/FilterImage.cpp




Diff

Modified: trunk/Source/WebCore/platform/graphics/filters/FilterImage.cpp (295259 => 295260)

--- trunk/Source/WebCore/platform/graphics/filters/FilterImage.cpp	2022-06-04 02:17:32 UTC (rev 295259)
+++ trunk/Source/WebCore/platform/graphics/filters/FilterImage.cpp	2022-06-04 08:30:21 UTC (rev 295260)
@@ -120,7 +120,9 @@
 ASSERT(sourcePixelBuffer.size() == destinationPixelBuffer.size());
 
 auto destinationSize = destinationPixelBuffer.size();
-unsigned rowBytes = destinationSize.width() * 4;
+auto rowBytes = CheckedUint32(destinationSize.width()) * 4;
+if (UNLIKELY(rowBytes.hasOverflowed()))
+return;
 
 ConstPixelBufferConversionView source { sourcePixelBuffer.format(), rowBytes, sourcePixelBuffer.bytes() };
 PixelBufferConversionView destination { destinationPixelBuffer.format(), rowBytes, destinationPixelBuffer.bytes() };
@@ -153,12 +155,18 @@
 if (destinationRect.isEmpty())
 return;
 
-int size = sourceRectClipped.width() * 4;
-int destinationBytesPerRow = destinationPixelBufferRect.width() * 4;
-int sourceBytesPerRow = sourcePixelBufferRect.width() * 4;
-uint8_t* destinationPixel = destinationPixelBuffer.bytes() + destinationRect.y() * destinationBytesPerRow + destinationRect.x() * 4;
-const uint8_t* sourcePixel = sourcePixelBuffer.bytes() + sourceRectClipped.y() * sourceBytesPerRow + sourceRectClipped.x() * 4;
+auto size = CheckedUint32(sourceRectClipped.width()) * 4;
+auto destinationBytesPerRow = CheckedUint32(destinationPixelBufferRect.width()) * 4;
+auto sourceBytesPerRow = CheckedUint32(sourcePixelBufferRect.width()) * 4;
+auto destinationOffset = destinationRect.y() * destinationBytesPerRow + CheckedUint32(destinationRect.x()) * 4;
+auto sourceOffset = sourceRectClipped.y() * sourceBytesPerRow + CheckedUint32(sourceRectClipped.x()) * 4;
 
+if (UNLIKELY(size.hasOverflowed() || destinationBytesPerRow.hasOverflowed() || sourceBytesPerRow.hasOverflowed() || destinationOffset.hasOverflowed() || sourceOffset.hasOverflowed()))
+return;
+
+uint8_t* destinationPixel = destinationPixelBuffer.bytes() + destinationOffset.value();
+const uint8_t* sourcePixel = sourcePixelBuffer.bytes() + sourceOffset.value();
+
 for (int y = 0; y < sourceRectClipped.height(); ++y) {
 memcpy(destinationPixel, sourcePixel, size);
 destinationPixel += destinationBytesPerRow;






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [295170] trunk/Source

2022-06-02 Thread nmouchtaris
Title: [295170] trunk/Source








Revision 295170
Author nmouchta...@apple.com
Date 2022-06-02 22:35:30 -0700 (Thu, 02 Jun 2022)


Log Message
Add check for pixel buffer format in RemoteRenderingBackend::getPixelBufferForImageBuffer
https://bugs.webkit.org/show_bug.cgi?id=241243


Reviewed by Simon Fraser.

Add check to ensure that pixel buffer format is supported.

* Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.cpp:
(WebKit::RemoteRenderingBackend::getPixelBufferForImageBuffer):

Canonical link: https://commits.webkit.org/251254@main

Modified Paths

trunk/Source/WebCore/platform/graphics/PixelBuffer.h
trunk/Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.cpp




Diff

Modified: trunk/Source/WebCore/platform/graphics/PixelBuffer.h (295169 => 295170)

--- trunk/Source/WebCore/platform/graphics/PixelBuffer.h	2022-06-03 05:31:49 UTC (rev 295169)
+++ trunk/Source/WebCore/platform/graphics/PixelBuffer.h	2022-06-03 05:35:30 UTC (rev 295170)
@@ -39,7 +39,7 @@
 class PixelBuffer : public RefCounted {
 WTF_MAKE_NONCOPYABLE(PixelBuffer);
 public:
-static bool supportedPixelFormat(PixelFormat);
+WEBCORE_EXPORT static bool supportedPixelFormat(PixelFormat);
 
 WEBCORE_EXPORT static RefPtr tryCreate(const PixelBufferFormat&, const IntSize&);
 WEBCORE_EXPORT static RefPtr tryCreate(const PixelBufferFormat&, const IntSize&, Ref&&);


Modified: trunk/Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.cpp (295169 => 295170)

--- trunk/Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.cpp	2022-06-03 05:31:49 UTC (rev 295169)
+++ trunk/Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.cpp	2022-06-03 05:35:30 UTC (rev 295170)
@@ -207,6 +207,7 @@
 void RemoteRenderingBackend::getPixelBufferForImageBuffer(RenderingResourceIdentifier imageBuffer, PixelBufferFormat&& destinationFormat, IntRect&& srcRect, CompletionHandler&& completionHandler)
 {
 MESSAGE_CHECK(m_getPixelBufferSharedMemory, "No shared memory for getPixelBufferForImageBuffer");
+MESSAGE_CHECK(PixelBuffer::supportedPixelFormat(destinationFormat.pixelFormat), "Pixel format not supported");
 QualifiedRenderingResourceIdentifier qualifiedImageBuffer { imageBuffer, m_gpuConnectionToWebProcess->webProcessIdentifier() };
 if (auto imageBuffer = m_remoteResourceCache.cachedImageBuffer(qualifiedImageBuffer)) {
 auto pixelBuffer = imageBuffer->getPixelBuffer(destinationFormat, srcRect);






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [294908] trunk/LayoutTests/platform

2022-05-26 Thread nmouchtaris
Title: [294908] trunk/LayoutTests/platform








Revision 294908
Author nmouchta...@apple.com
Date 2022-05-26 16:41:44 -0700 (Thu, 26 May 2022)


Log Message
Disable heic tests temporarily
https://bugs.webkit.org/show_bug.cgi?id=240990

Unreviewed test expectation chnage.

* LayoutTests/platform/ios/TestExpectations:
* LayoutTests/platform/mac/TestExpectations:

Canonical link: https://commits.webkit.org/251030@main

Modified Paths

trunk/LayoutTests/platform/ios/TestExpectations
trunk/LayoutTests/platform/mac/TestExpectations




Diff

Modified: trunk/LayoutTests/platform/ios/TestExpectations (294907 => 294908)

--- trunk/LayoutTests/platform/ios/TestExpectations	2022-05-26 23:41:11 UTC (rev 294907)
+++ trunk/LayoutTests/platform/ios/TestExpectations	2022-05-26 23:41:44 UTC (rev 294908)
@@ -72,9 +72,9 @@
 perf/accessibility-title-ui-element.html
 
 # webkit.org/b/240843
-fast/images/heic-as-background-image.html [ Pass ]
-fast/images/animated-heics-verify.html [ Pass ]
-fast/images/animated-heics-draw.html [ Pass ]
+fast/images/heic-as-background-image.html [ Skip ]
+fast/images/animated-heics-verify.html [ Skip ]
+fast/images/animated-heics-draw.html [ Skip ]
 
 # No fullscreen API on iOS
 fullscreen


Modified: trunk/LayoutTests/platform/mac/TestExpectations (294907 => 294908)

--- trunk/LayoutTests/platform/mac/TestExpectations	2022-05-26 23:41:11 UTC (rev 294907)
+++ trunk/LayoutTests/platform/mac/TestExpectations	2022-05-26 23:41:44 UTC (rev 294908)
@@ -90,9 +90,9 @@
 #//
 
 # webkit.org/b/240843
-fast/images/animated-heics-draw.html [ Pass ]
-fast/images/animated-heics-verify.html [ Pass ]
-fast/images/heic-as-background-image.html [ Pass ]
+fast/images/animated-heics-draw.html [ Skip ]
+fast/images/animated-heics-verify.html [ Skip ]
+fast/images/heic-as-background-image.html [ Skip ]
 
 #  fast/events/mouseout-on-window.html needs mac DRT to issue mouse out events
 fast/events/mouseout-on-window.html [ Failure ]






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [294520] trunk

2022-05-19 Thread nmouchtaris
Title: [294520] trunk








Revision 294520
Author nmouchta...@apple.com
Date 2022-05-19 18:22:33 -0700 (Thu, 19 May 2022)


Log Message
Implement contain flag for ray() in offset path
https://bugs.webkit.org/show_bug.cgi?id=240259


Reviewed by Simon Fraser.

Implement contain flag for ray(). Contains purpose is to have the entire box
being animated be contained within the path. "Contained within the path" is
defined as having the box remain within a circle with the radius of the path
length and positioned at the offset anchor. This solution is adapted from the
repository of the spec writer: https://github.com/ewilligers/petrogale-purpureicollis.

The way this solution works is that you construct a coordinate system with the origin
being the offset anchor. You then calculate the position of each vertex of the box.
Then, rotate the vertices based on the angles difference from the x-axis. Next, using
the circle equation, we want to find an offset such that (x + offset)^2 + y^2 = r^2.
This results in a lower and upper bound for offset: -x - sqrt(r^2 - y^2) <= offset <=
-x + sqrt(r^2 + y^2). Finally we choose the minimal value of these upper and lower
bounds to get the final clamped offset.

This patch currently doesn't take into account if it is not possible to fit the box
within the path, as this will be completed in a seperate patch. Currently, test 4 is
failing due to rounding error, and test 5 is failing due to the unimplemented part.

* Source/WebCore/platform/graphics/GeometryUtilities.cpp:
(WebCore::toRelatedAcuteAngle):
(WebCore::distanceOfPointToSidesOfRect):
(WebCore::verticesForBox):
* Source/WebCore/platform/graphics/GeometryUtilities.h:
* Source/WebCore/rendering/PathOperation.cpp:
(WebCore::RayPathOperation::lengthForContainPath const):
(WebCore::RayPathOperation::pathForReferenceRect const):
* Source/WebCore/rendering/PathOperation.h:
* Source/WebCore/rendering/style/RenderStyle.cpp:
(WebCore::getPathFromPathOperation):
(WebCore::RenderStyle::applyMotionPathTransform const):
* LayoutTests/TestExpectations:

Canonical link: https://commits.webkit.org/250776@main

Modified Paths

trunk/LayoutTests/TestExpectations
trunk/Source/WebCore/platform/graphics/GeometryUtilities.cpp
trunk/Source/WebCore/platform/graphics/GeometryUtilities.h
trunk/Source/WebCore/rendering/PathOperation.cpp
trunk/Source/WebCore/rendering/PathOperation.h
trunk/Source/WebCore/rendering/style/RenderStyle.cpp




Diff

Modified: trunk/LayoutTests/TestExpectations (294519 => 294520)

--- trunk/LayoutTests/TestExpectations	2022-05-20 01:17:40 UTC (rev 294519)
+++ trunk/LayoutTests/TestExpectations	2022-05-20 01:22:33 UTC (rev 294520)
@@ -5078,9 +5078,6 @@
 webkit.org/b/233344 imported/w3c/web-platform-tests/css/motion/offset-path-ray-007.html [ ImageOnlyFailure ]
 
 # CSS motion path needs to implement contain for ray: https://bugs.webkit.org/show_bug.cgi?id=240259.
-webkit.org/b/233344 imported/w3c/web-platform-tests/css/motion/offset-path-ray-contain-001.html [ ImageOnlyFailure ]
-webkit.org/b/233344 imported/w3c/web-platform-tests/css/motion/offset-path-ray-contain-002.html [ ImageOnlyFailure ]
-webkit.org/b/233344 imported/w3c/web-platform-tests/css/motion/offset-path-ray-contain-003.html [ ImageOnlyFailure ]
 webkit.org/b/233344 imported/w3c/web-platform-tests/css/motion/offset-path-ray-contain-004.html [ ImageOnlyFailure ]
 webkit.org/b/233344 imported/w3c/web-platform-tests/css/motion/offset-path-ray-contain-005.html [ ImageOnlyFailure ]
 


Modified: trunk/Source/WebCore/platform/graphics/GeometryUtilities.cpp (294519 => 294520)

--- trunk/Source/WebCore/platform/graphics/GeometryUtilities.cpp	2022-05-20 01:17:40 UTC (rev 294519)
+++ trunk/Source/WebCore/platform/graphics/GeometryUtilities.cpp	2022-05-20 01:22:33 UTC (rev 294520)
@@ -277,7 +277,7 @@
 }
 
 // Compute acute angle from vertical axis
-static float toRelatedAcuteAngle(float angle)
+float toRelatedAcuteAngle(float angle)
 {
 angle = toPositiveAngle(angle);
 if (angle < 90)
@@ -287,16 +287,24 @@
 return std::abs(360 - angle);
 }
 
-RectEdges distanceOfPointToSidesOfRect(const FloatRect& boundingRect, const FloatPoint& position)
+RectEdges distanceOfPointToSidesOfRect(const FloatRect& box, const FloatPoint& position)
 {
 // Compute distance to each side of the containing box
 double top = std::abs(position.y());
-double bottom = std::abs(position.y() - boundingRect.height());
+double bottom = std::abs(position.y() - box.height());
 double left = std::abs(position.x());
-double right = std::abs(position.x() - boundingRect.width());
+double right = std::abs(position.x() - box.width());
 return RectEdges(top, right, bottom, left);
 }
 
+std::array verticesForBox(const FloatRect& box, const FloatPoint position)
+{
+return { FloatPoint(-position.x(), -position.y()),
+FloatPoint(box.width() - position.x(), -position.y()),
+FloatPoint(box.width() - position.x(), box.height() - position.y()),
+

[webkit-changes] [294408] trunk/metadata/contributors.json

2022-05-18 Thread nmouchtaris
Title: [294408] trunk/metadata/contributors.json








Revision 294408
Author nmouchta...@apple.com
Date 2022-05-18 11:12:43 -0700 (Wed, 18 May 2022)


Log Message
Add nmoucht to contributors.json
https://bugs.webkit.org/show_bug.cgi?id=240588

Reviewed by Tim Nguyen.

* metadata/contributors.json:

Canonical link: https://commits.webkit.org/250702@main

Modified Paths

trunk/metadata/contributors.json




Diff

Modified: trunk/metadata/contributors.json (294407 => 294408)

--- trunk/metadata/contributors.json	2022-05-18 18:07:44 UTC (rev 294407)
+++ trunk/metadata/contributors.json	2022-05-18 18:12:43 UTC (rev 294408)
@@ -5204,6 +5204,7 @@
   "emails" : [
  "nmouchta...@apple.com"
   ],
+  "github" : "nmoucht",
   "name" : "Nikolaos Mouchtaris",
   "status" : "committer"
},






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [294001] trunk

2022-05-10 Thread nmouchtaris
Title: [294001] trunk








Revision 294001
Author nmouchta...@apple.com
Date 2022-05-09 23:48:49 -0700 (Mon, 09 May 2022)


Log Message
Support ray() shape in offset-path
https://bugs.webkit.org/show_bug.cgi?id=233344

Reviewed by Simon Fraser.

Source/WebCore:

Add support for rendering ray path. Involves getting containing block and offset
of the element from the containing block. Using the size of the containing block
and offset, calculate the length of the ray and create a Line path using the length
and angle. Calculating closest/farthest-side and closest/farthest-corner are simple
but calculating side requires some explanation. First, we get the two possible sides of
the containing block the ray could be intersecting with, based on the angle. To calculate
which side is being intersected, if tan(theta) * top/bottom is outside of the containing
block, this means that the ray is intersecting with the other side. Finally, we calculate
the acute angle based on which side we intersected with. Using the length and angle, we
calculate the length of the hypotenuse, which corresponds with the length of the start point
of the ray to its intersection with a side of the containing block. Test 7 is still failing
due to getting incorrect width of containing block (doesn't happen when animating the path
for some reason). Will implement contain in another patch.

* WebCore.xcodeproj/project.pbxproj:
* rendering/PathOperation.cpp:
(WebCore::toPositiveAngle):
(WebCore::RayPathOperation::getLengthForPath const):
(WebCore::RayPathOperation::pathForReferenceRect const):
* rendering/PathOperation.h:
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::setReferenceBoxForPathOperations):
(WebCore::RenderLayer::updateTransform):
* rendering/RenderLayer.h:
* rendering/style/RenderStyle.cpp:
(WebCore::getPathFromPathOperation):

LayoutTests:

* TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/TestExpectations
trunk/LayoutTests/platform/gtk/TestExpectations
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
trunk/Source/WebCore/css/CSSGradientValue.cpp
trunk/Source/WebCore/platform/graphics/GeometryUtilities.cpp
trunk/Source/WebCore/platform/graphics/GeometryUtilities.h
trunk/Source/WebCore/rendering/PathOperation.cpp
trunk/Source/WebCore/rendering/PathOperation.h
trunk/Source/WebCore/rendering/RenderLayer.cpp
trunk/Source/WebCore/rendering/RenderLayer.h
trunk/Source/WebCore/rendering/style/RenderStyle.cpp




Diff

Modified: trunk/LayoutTests/ChangeLog (294000 => 294001)

--- trunk/LayoutTests/ChangeLog	2022-05-10 05:20:24 UTC (rev 294000)
+++ trunk/LayoutTests/ChangeLog	2022-05-10 06:48:49 UTC (rev 294001)
@@ -1,3 +1,12 @@
+2022-05-09  Nikolaos Mouchtaris  
+
+Support ray() shape in offset-path
+https://bugs.webkit.org/show_bug.cgi?id=233344
+
+Reviewed by Simon Fraser.
+
+* TestExpectations:
+
 2022-05-09  Tim Nguyen  
 
 Implement CSS :modal pseudo class


Modified: trunk/LayoutTests/TestExpectations (294000 => 294001)

--- trunk/LayoutTests/TestExpectations	2022-05-10 05:20:24 UTC (rev 294000)
+++ trunk/LayoutTests/TestExpectations	2022-05-10 06:48:49 UTC (rev 294001)
@@ -5074,23 +5074,15 @@
 webkit.org/b/233340 imported/w3c/web-platform-tests/css/motion/offset-anchor-transform-box-fill-box-002.html [ ImageOnlyFailure ]
 webkit.org/b/233340 imported/w3c/web-platform-tests/css/motion/offset-anchor-transform-box-fill-box-003.html [ ImageOnlyFailure ]
 
-# CSS motion path that depends on ray(), currently not implemented.
-webkit.org/b/233344 imported/w3c/web-platform-tests/css/motion/offset-path-ray-001.html [ ImageOnlyFailure ]
-webkit.org/b/233344 imported/w3c/web-platform-tests/css/motion/offset-path-ray-002.html [ ImageOnlyFailure ]
-webkit.org/b/233344 imported/w3c/web-platform-tests/css/motion/offset-path-ray-003.html [ ImageOnlyFailure ]
-webkit.org/b/233344 imported/w3c/web-platform-tests/css/motion/offset-path-ray-004.html [ ImageOnlyFailure ]
-webkit.org/b/233344 imported/w3c/web-platform-tests/css/motion/offset-path-ray-005.html [ ImageOnlyFailure ]
-webkit.org/b/233344 imported/w3c/web-platform-tests/css/motion/offset-path-ray-006.html [ ImageOnlyFailure ]
+# CSS motion path ray test failing due to getting wrong size from containing block.
 webkit.org/b/233344 imported/w3c/web-platform-tests/css/motion/offset-path-ray-007.html [ ImageOnlyFailure ]
-webkit.org/b/233344 imported/w3c/web-platform-tests/css/motion/offset-path-ray-008.html [ ImageOnlyFailure ]
-webkit.org/b/233344 imported/w3c/web-platform-tests/css/motion/offset-path-ray-009.html [ ImageOnlyFailure ]
+
+# CSS motion path needs to implement contain for ray: https://bugs.webkit.org/show_bug.cgi?id=240259.
 webkit.org/b/233344 imported/w3c/web-platform-tests/css/motion/offset-path-ray-contain-001.html [ ImageOnlyFailure ]
 webkit.org/b/233344 imported/w3c/web-platform-tests/css/motion/offset-path-ray-contain-002.html [ ImageOnlyFailure ]
 

[webkit-changes] [293870] trunk/Source/WebCore

2022-05-05 Thread nmouchtaris
Title: [293870] trunk/Source/WebCore








Revision 293870
Author nmouchta...@apple.com
Date 2022-05-05 16:50:17 -0700 (Thu, 05 May 2022)


Log Message
Add check if referenced element is SVG for clip-path
https://bugs.webkit.org/show_bug.cgi?id=240096

Reviewed by Simon Fraser.

Add check when creating new ReferencePathOperation that it is referencing
an svg element.

* style/StyleBuilderConverter.h:
(WebCore::Style::BuilderConverter::convertPathOperation):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/rendering/style/RenderStyle.cpp
trunk/Source/WebCore/style/StyleBuilderConverter.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (293869 => 293870)

--- trunk/Source/WebCore/ChangeLog	2022-05-05 23:43:45 UTC (rev 293869)
+++ trunk/Source/WebCore/ChangeLog	2022-05-05 23:50:17 UTC (rev 293870)
@@ -1,3 +1,16 @@
+2022-05-05  Nikolaos Mouchtaris  
+
+Add check if referenced element is SVG for clip-path
+https://bugs.webkit.org/show_bug.cgi?id=240096
+
+Reviewed by Simon Fraser.
+
+Add check when creating new ReferencePathOperation that it is referencing
+an svg element.
+
+* style/StyleBuilderConverter.h:
+(WebCore::Style::BuilderConverter::convertPathOperation):
+
 2022-05-05  Cameron McCormack  
 
 Avoid using WebCore::Colors created with out-of-line components in DrawGlyphsRecorder


Modified: trunk/Source/WebCore/rendering/style/RenderStyle.cpp (293869 => 293870)

--- trunk/Source/WebCore/rendering/style/RenderStyle.cpp	2022-05-05 23:43:45 UTC (rev 293869)
+++ trunk/Source/WebCore/rendering/style/RenderStyle.cpp	2022-05-05 23:50:17 UTC (rev 293870)
@@ -1527,7 +1527,7 @@
 case PathOperation::Shape:
 return downcast(operation).pathForReferenceRect(box);
 case PathOperation::Reference:
-if (!is(downcast(operation).element()) && !is(downcast(operation).element()))
+if (!downcast(operation).element() || (!is(downcast(operation).element()) && !is(downcast(operation).element(
 return std::nullopt;
 return pathFromGraphicsElement(downcast(operation).element());
 case PathOperation::Box:


Modified: trunk/Source/WebCore/style/StyleBuilderConverter.h (293869 => 293870)

--- trunk/Source/WebCore/style/StyleBuilderConverter.h	2022-05-05 23:43:45 UTC (rev 293869)
+++ trunk/Source/WebCore/style/StyleBuilderConverter.h	2022-05-05 23:50:17 UTC (rev 293870)
@@ -629,7 +629,9 @@
 auto fragment = SVGURIReference::fragmentIdentifierFromIRIString(cssURLValue, builderState.document());
 // FIXME: It doesn't work with external SVG references (see https://bugs.webkit.org/show_bug.cgi?id=126133)
 auto target = SVGURIReference::targetElementFromIRIString(cssURLValue, builderState.document());
-return ReferencePathOperation::create(cssURLValue, fragment, downcast(target.element.get()));
+if (is(target.element.get()))
+return ReferencePathOperation::create(cssURLValue, fragment, downcast(target.element.get()));
+return ReferencePathOperation::create(cssURLValue, fragment, nullptr);
 }
 ASSERT(primitiveValue.valueID() == CSSValueNone);
 return nullptr;






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [292893] trunk

2022-04-14 Thread nmouchtaris
Title: [292893] trunk








Revision 292893
Author nmouchta...@apple.com
Date 2022-04-14 16:32:40 -0700 (Thu, 14 Apr 2022)


Log Message
calc(): Serialize top level min/max/hypot as calc()
https://bugs.webkit.org/show_bug.cgi?id=239019

Reviewed by Darin Adler.

LayoutTests/imported/w3c:

* web-platform-tests/css/css-values/hypot-pow-sqrt-invalid-expected.txt:
* web-platform-tests/css/css-values/hypot-pow-sqrt-serialize-expected.txt:
* web-platform-tests/css/css-values/minmax-angle-serialize-expected.txt:
* web-platform-tests/css/css-values/minmax-length-percent-serialize-expected.txt:
* web-platform-tests/css/css-values/minmax-length-serialize-expected.txt:
* web-platform-tests/css/css-values/minmax-number-serialize-expected.txt:
* web-platform-tests/css/css-values/minmax-percentage-serialize-expected.txt:
* web-platform-tests/css/css-values/minmax-time-serialize-expected.txt:

Source/WebCore:

For functions that would have no effect on the top level value, serialize as calc() rather
than the function.

* css/calc/CSSCalcOperationNode.cpp:
(WebCore::CSSCalcOperationNode::simplifyNode):
* css/calc/CSSCalcOperationNode.h:

LayoutTests:

* fast/css/calc-parsing-expected.txt:
* fast/css/calc-parsing.html:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/fast/css/calc-parsing-expected.txt
trunk/LayoutTests/fast/css/calc-parsing.html
trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/hypot-pow-sqrt-invalid-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/hypot-pow-sqrt-serialize-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-angle-serialize-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-length-percent-serialize-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-length-serialize-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-number-serialize-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-percentage-serialize-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/minmax-time-serialize-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/calc/CSSCalcOperationNode.cpp
trunk/Source/WebCore/css/calc/CSSCalcOperationNode.h




Diff

Modified: trunk/LayoutTests/ChangeLog (292892 => 292893)

--- trunk/LayoutTests/ChangeLog	2022-04-14 23:26:34 UTC (rev 292892)
+++ trunk/LayoutTests/ChangeLog	2022-04-14 23:32:40 UTC (rev 292893)
@@ -1,3 +1,13 @@
+2022-04-14  Nikolaos Mouchtaris  
+
+calc(): Serialize top level min/max/hypot as calc()
+https://bugs.webkit.org/show_bug.cgi?id=239019
+
+Reviewed by Darin Adler.
+
+* fast/css/calc-parsing-expected.txt:
+* fast/css/calc-parsing.html:
+
 2022-04-14  Karl Rackler  
 
 [ Mac ] editing/execCommand/insert-ordered-list-and-delete.html is a flaky failure


Modified: trunk/LayoutTests/fast/css/calc-parsing-expected.txt (292892 => 292893)

--- trunk/LayoutTests/fast/css/calc-parsing-expected.txt	2022-04-14 23:26:34 UTC (rev 292892)
+++ trunk/LayoutTests/fast/css/calc-parsing-expected.txt	2022-04-14 23:32:40 UTC (rev 292893)
@@ -9,15 +9,15 @@
 PASS getComputedStyle(element).getPropertyValue('width') is "100px"
 
 element.style["width"] = "max(100px + 200px)"
-PASS element.style['width'] is "max(300px)"
+PASS element.style['width'] is "calc(300px)"
 PASS getComputedStyle(element).getPropertyValue('width') is "300px"
 
 element.style["width"] = "max(100px , 200px)"
-PASS element.style['width'] is "max(200px)"
+PASS element.style['width'] is "calc(200px)"
 PASS getComputedStyle(element).getPropertyValue('width') is "200px"
 
 element.style["width"] = "max(100px,200px)"
-PASS element.style['width'] is "max(200px)"
+PASS element.style['width'] is "calc(200px)"
 PASS getComputedStyle(element).getPropertyValue('width') is "200px"
 
 element.style["width"] = "clamp(100px,123px,200px)"
@@ -73,11 +73,11 @@
 PASS getComputedStyle(element).getPropertyValue('width') is "1024px"
 
 element.style["width"] = "hypot(4px, 5px, 7px, 9px)"
-PASS element.style['width'] is "hypot(13.076697px)"
+PASS element.style['width'] is "calc(13.076697px)"
 PASS getComputedStyle(element).getPropertyValue('width') is "13.0625px"
 
 element.style["width"] = "hypot(3px, 4px)"
-PASS element.style['width'] is "hypot(5px)"
+PASS element.style['width'] is "calc(5px)"
 PASS getComputedStyle(element).getPropertyValue('width') is "5px"
 
 element.style["width"] = "calc(100px * hypot(3, 4))"
@@ -85,7 +85,7 @@
 PASS getComputedStyle(element).getPropertyValue('width') is "500px"
 
 element.style["width"] = "hypot(-5px)"
-PASS element.style['width'] is "hypot(5px)"
+PASS element.style['width'] is "calc(5px)"
 PASS getComputedStyle(element).getPropertyValue('width') is "5px"
 
 element.style["width"] = "calc(1px * hypot(-5))"
@@ -269,15 +269,15 @@
 PASS 

[webkit-changes] [292732] trunk

2022-04-11 Thread nmouchtaris
Title: [292732] trunk








Revision 292732
Author nmouchta...@apple.com
Date 2022-04-11 16:05:22 -0700 (Mon, 11 Apr 2022)


Log Message
calc(): Propogate nan for min, max, clamp, and hypot
https://bugs.webkit.org/show_bug.cgi?id=238974

Reviewed by Darin Adler.

LayoutTests/imported/w3c:

* web-platform-tests/css/css-values/calc-catch-divide-by-0-expected.txt:
* web-platform-tests/css/css-values/calc-infinity-nan-serialize-angle-expected.txt:
* web-platform-tests/css/css-values/calc-infinity-nan-serialize-length-expected.txt:
* web-platform-tests/css/css-values/calc-infinity-nan-serialize-time-expected.txt:

Source/WebCore:

If min, max, clamp, and hypot have a NaN value we need to propagate the NaN. This has to
do with the "infectious" NaN behavior the spec mentions. This patch also removes some
unnecessary code in CSSCalcPrimitiveValueNode::invert() and has clamp() properly serialize.
May want to separate them and expand clamp() serialization testing so it would have caught
this issue.

* css/calc/CSSCalcOperationNode.cpp:
(WebCore::CSSCalcOperationNode::combineChildren):
(WebCore::CSSCalcOperationNode::simplifyNode):
(WebCore::CSSCalcOperationNode::evaluateOperator):
* css/calc/CSSCalcOperationNode.h:
* css/calc/CSSCalcPrimitiveValueNode.cpp:
(WebCore::CSSCalcPrimitiveValueNode::invert):

Modified Paths

trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-catch-divide-by-0-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-serialize-angle-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-serialize-length-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-serialize-time-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/clamp-length-serialize.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/calc/CSSCalcOperationNode.cpp
trunk/Source/WebCore/css/calc/CSSCalcOperationNode.h
trunk/Source/WebCore/css/calc/CSSCalcPrimitiveValueNode.cpp




Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (292731 => 292732)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2022-04-11 22:56:48 UTC (rev 292731)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2022-04-11 23:05:22 UTC (rev 292732)
@@ -1,3 +1,15 @@
+2022-04-11  Nikolaos Mouchtaris  
+
+calc(): Propogate nan for min, max, clamp, and hypot
+https://bugs.webkit.org/show_bug.cgi?id=238974
+
+Reviewed by Darin Adler.
+
+* web-platform-tests/css/css-values/calc-catch-divide-by-0-expected.txt:
+* web-platform-tests/css/css-values/calc-infinity-nan-serialize-angle-expected.txt:
+* web-platform-tests/css/css-values/calc-infinity-nan-serialize-length-expected.txt:
+* web-platform-tests/css/css-values/calc-infinity-nan-serialize-time-expected.txt:
+
 2022-04-11  Youenn Fablet  
 
 Expose more ServiceWorker interfaces to workers


Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-catch-divide-by-0-expected.txt (292731 => 292732)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-catch-divide-by-0-expected.txt	2022-04-11 22:56:48 UTC (rev 292731)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-catch-divide-by-0-expected.txt	2022-04-11 23:05:22 UTC (rev 292732)
@@ -13,11 +13,11 @@
 PASS 'calc(1px * max(0/0, 0))' as a specified value should serialize as 'calc(NaN * 1px)'.
 PASS 'calc(1px * min(0/0, 0))' as a specified value should serialize as 'calc(NaN * 1px)'.
 PASS 'calc(1px * max(0/0, min(0,10)))' as a specified value should serialize as 'calc(NaN * 1px)'.
-FAIL 'calc(1px * clamp(0/0, 0, 10))' as a specified value should serialize as 'calc(NaN * 1px)'. assert_equals: 'calc(1px * clamp(0/0, 0, 10))' and 'calc(NaN * 1px)' should serialize the same in specified values. expected "calc(NaN * 1px)" but got "calc(1px * clamp(NaN, 0, 10))"
-FAIL 'calc(1px * max(0, min(10, 0/0)))' as a specified value should serialize as 'calc(NaN * 1px)'. assert_equals: 'calc(1px * max(0, min(10, 0/0)))' and 'calc(NaN * 1px)' should serialize the same in specified values. expected "calc(NaN * 1px)" but got "calc(10px)"
-FAIL 'calc(1px * clamp(0, 10, 0/0))' as a specified value should serialize as 'calc(NaN * 1px)'. assert_equals: 'calc(1px * clamp(0, 10, 0/0))' and 'calc(NaN * 1px)' should serialize the same in specified values. expected "calc(NaN * 1px)" but got "calc(1px * clamp(0, 10, NaN))"
-FAIL 'calc(1px * max(0, min(0/0, 10)))' as a specified value should serialize as 'calc(NaN * 1px)'. assert_equals: 'calc(1px * max(0, min(0/0, 10)))' and 'calc(NaN * 1px)' should serialize the same in specified values. expected "calc(NaN * 1px)" but got "calc(0px)"
-FAIL 'calc(1px * clamp(0, 0/0, 10))' as a specified value should serialize as 'calc(NaN * 1px)'. assert_equals: 'calc(1px * clamp(0, 0/0, 10))' and 'calc(NaN * 1px)' 

[webkit-changes] [292382] trunk

2022-04-05 Thread nmouchtaris
Title: [292382] trunk








Revision 292382
Author nmouchta...@apple.com
Date 2022-04-05 01:03:38 -0700 (Tue, 05 Apr 2022)


Log Message
Support rendering url(), CSS basic shapes other than path(), and coord-box for offset-path
https://bugs.webkit.org/show_bug.cgi?id=233382

Reviewed by Simon Fraser.

LayoutTests/imported/w3c:

* web-platform-tests/css/motion/offset-path-shape-expected.html: Added.
* web-platform-tests/css/motion/offset-path-shape.html: Added.
* web-platform-tests/css/motion/offset-path-url-expected.html: Added.
* web-platform-tests/css/motion/offset-path-url.html: Added.

Source/WebCore:

Introduce support for url(), CSS basic shapes, and coord-box. Url() allows references to SVG
shapes, so we check for either an SVGPathElement or SVGGeometryElement (which includes
circles, polygons, etc.). We can then get a Path object for that particular SVGElement
 using pathFromGraphicsElement(). For coord-box, we check the value for the BoxPathOperation
(if it exists) in updateTransform(), and choose the corresponding reference box to the
referenceBox() value of the BoxPathOperation.

Tests: imported/w3c/web-platform-tests/css/motion/offset-path-shape.html
   imported/w3c/web-platform-tests/css/motion/offset-path-url.html

* Sources.txt:
* rendering/PathOperation.cpp: Added.
(WebCore::ReferencePathOperation::create):
(WebCore::ReferencePathOperation::ReferencePathOperation):
(WebCore::ReferencePathOperation::element const):
* rendering/PathOperation.h:
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateTransform):
* rendering/style/RenderStyle.cpp:
(WebCore::getPathFromPathOperation):
* style/StyleBuilderConverter.h:
(WebCore::Style::BuilderConverter::convertPathOperation):

Modified Paths

trunk/LayoutTests/imported/w3c/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Sources.txt
trunk/Source/WebCore/rendering/PathOperation.h
trunk/Source/WebCore/rendering/RenderLayer.cpp
trunk/Source/WebCore/rendering/style/RenderStyle.cpp
trunk/Source/WebCore/style/StyleBuilderConverter.h


Added Paths

trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/offset-path-geometry-box-expected.html
trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/offset-path-geometry-box.html
trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/offset-path-shape-expected.html
trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/offset-path-shape.html
trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/offset-path-url-expected.html
trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/offset-path-url.html
trunk/Source/WebCore/rendering/PathOperation.cpp




Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (292381 => 292382)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2022-04-05 08:01:50 UTC (rev 292381)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2022-04-05 08:03:38 UTC (rev 292382)
@@ -1,3 +1,15 @@
+2022-04-05  Nikolaos Mouchtaris  
+
+Support rendering url(), CSS basic shapes other than path(), and coord-box for offset-path
+https://bugs.webkit.org/show_bug.cgi?id=233382
+
+Reviewed by Simon Fraser.
+
+* web-platform-tests/css/motion/offset-path-shape-expected.html: Added.
+* web-platform-tests/css/motion/offset-path-shape.html: Added.
+* web-platform-tests/css/motion/offset-path-url-expected.html: Added.
+* web-platform-tests/css/motion/offset-path-url.html: Added.
+
 2022-04-04  Ziran Sun  
 
 [Forms] change the default appearance of button, checkbox etc. to 'auto'


Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/offset-path-geometry-box-expected.html (0 => 292382)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/offset-path-geometry-box-expected.html	(rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/offset-path-geometry-box-expected.html	2022-04-05 08:03:38 UTC (rev 292382)
@@ -0,0 +1,21 @@
+
+
+  
+CSS Motion Path: path(geometry-box) paths
+
+  #target {
+position: absolute;
+left: 300px;
+top: 0px;
+width: 300px;
+height: 200px;
+background-color: lime;
+transform-origin: 0px 0px;
+transform: translate(0px, 0px);
+  }
+
+  
+  
+
+  
+


Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/offset-path-geometry-box.html (0 => 292382)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/offset-path-geometry-box.html	(rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/offset-path-geometry-box.html	2022-04-05 08:03:38 UTC (rev 292382)
@@ -0,0 +1,24 @@
+
+
+  
+CSS Motion Path: path(basic-shape) paths
+
+
+  #target {
+position: absolute;
+left: 300px;
+top: 0px;
+width: 300px;
+height: 200px;
+background-color: lime;
+transform-origin: 0px 0px;
+offset-path: 

[webkit-changes] [292018] trunk

2022-03-28 Thread nmouchtaris
Title: [292018] trunk








Revision 292018
Author nmouchta...@apple.com
Date 2022-03-28 18:16:31 -0700 (Mon, 28 Mar 2022)


Log Message
Clamp degenerate calc() values for 
https://bugs.webkit.org/show_bug.cgi?id=238401

Reviewed by Simon Fraser.

LayoutTests/imported/w3c:

* web-platform-tests/css/css-values/calc-infinity-nan-computed-expected.txt:

Source/WebCore:

Clamp nan, infinity and -infinity to zero for . Issue discussing this:
https://github.com/w3c/csswg-drafts/issues/6105.

* css/calc/CSSCalcValue.cpp:
(WebCore::CSSCalcValue::clampToPermittedRange const):

Modified Paths

trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-computed-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/calc/CSSCalcValue.cpp




Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (292017 => 292018)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2022-03-29 01:14:28 UTC (rev 292017)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2022-03-29 01:16:31 UTC (rev 292018)
@@ -1,3 +1,12 @@
+2022-03-28  Nikolaos Mouchtaris  
+
+Clamp degenerate calc() values for 
+https://bugs.webkit.org/show_bug.cgi?id=238401
+
+Reviewed by Simon Fraser.
+
+* web-platform-tests/css/css-values/calc-infinity-nan-computed-expected.txt:
+
 2022-03-28  Cameron McCormack  
 
 Remove the 1ms minimum for setTimeout


Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-computed-expected.txt (292017 => 292018)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-computed-expected.txt	2022-03-29 01:14:28 UTC (rev 292017)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-computed-expected.txt	2022-03-29 01:16:31 UTC (rev 292018)
@@ -21,16 +21,16 @@
 PASS Property transition-delay value 'calc(-infinity* 1s)'
 PASS Property transition-delay value 'calc(max(1s, 0s) + min(-infinity * 1s, infinity * 1s))'
 PASS Property transition-delay value 'calc(min(-infinity * 1s, 10s))'
-FAIL Property rotate(calc(infinity * 1deg)) value expected same with rotate(0deg) in +/-0.0001 assert_array_approx_equals: lengths differ, expected 6 got 16
-FAIL Property rotate(calc(-infinity * 1deg)) value expected same with rotate(0deg) in +/-0.0001 assert_array_approx_equals: lengths differ, expected 6 got 16
-FAIL Property rotate(calc(NaN * 1deg)) value expected same with rotate(0deg) in +/-0.0001 assert_array_approx_equals: lengths differ, expected 6 got 16
-FAIL Property rotate(calc(infinity * 1turn)) value expected same with rotate(0turn) in +/-0.0001 assert_array_approx_equals: lengths differ, expected 6 got 16
-FAIL Property rotate(calc(-infinity * 1turn)) value expected same with rotate(0turn) in +/-0.0001 assert_array_approx_equals: lengths differ, expected 6 got 16
-FAIL Property rotate(calc(NaN * 1turn)) value expected same with rotate(0turn) in +/-0.0001 assert_array_approx_equals: lengths differ, expected 6 got 16
-FAIL Property rotate(calc(infinity * 1rad)) value expected same with rotate(0rad) in +/-0.0001 assert_array_approx_equals: lengths differ, expected 6 got 16
-FAIL Property rotate(calc(-infinity * 1rad)) value expected same with rotate(0rad) in +/-0.0001 assert_array_approx_equals: lengths differ, expected 6 got 16
-FAIL Property rotate(calc(NaN * 1rad)) value expected same with rotate(0rad) in +/-0.0001 assert_array_approx_equals: lengths differ, expected 6 got 16
-FAIL Property rotate(calc(infinity * 1grad)) value expected same with rotate(0grad) in +/-0.0001 assert_array_approx_equals: lengths differ, expected 6 got 16
-FAIL Property rotate(calc(-infinity * 1grad)) value expected same with rotate(0grad) in +/-0.0001 assert_array_approx_equals: lengths differ, expected 6 got 16
-FAIL Property rotate(calc(NaN * 1grad)) value expected same with rotate(0grad) in +/-0.0001 assert_array_approx_equals: lengths differ, expected 6 got 16
+PASS Property rotate(calc(infinity * 1deg)) value expected same with rotate(0deg) in +/-0.0001
+PASS Property rotate(calc(-infinity * 1deg)) value expected same with rotate(0deg) in +/-0.0001
+PASS Property rotate(calc(NaN * 1deg)) value expected same with rotate(0deg) in +/-0.0001
+PASS Property rotate(calc(infinity * 1turn)) value expected same with rotate(0turn) in +/-0.0001
+PASS Property rotate(calc(-infinity * 1turn)) value expected same with rotate(0turn) in +/-0.0001
+PASS Property rotate(calc(NaN * 1turn)) value expected same with rotate(0turn) in +/-0.0001
+PASS Property rotate(calc(infinity * 1rad)) value expected same with rotate(0rad) in +/-0.0001
+PASS Property rotate(calc(-infinity * 1rad)) value expected same with rotate(0rad) in +/-0.0001
+PASS Property rotate(calc(NaN * 1rad)) value expected same with rotate(0rad) in +/-0.0001
+PASS Property rotate(calc(infinity * 1grad)) value expected same with rotate(0grad) in +/-0.0001
+PASS Property rotate(calc(-infinity * 

[webkit-changes] [291911] trunk

2022-03-25 Thread nmouchtaris
Title: [291911] trunk








Revision 291911
Author nmouchta...@apple.com
Date 2022-03-25 18:45:25 -0700 (Fri, 25 Mar 2022)


Log Message
Incorrect handling of NaN inside calc() for top-level calculation
https://bugs.webkit.org/show_bug.cgi?id=234176

Reviewed by Simon Fraser.

LayoutTests/imported/w3c:

* web-platform-tests/css/css-values/calc-infinity-nan-computed-expected.txt: Added.
* web-platform-tests/css/css-values/calc-infinity-nan-computed.html: Added.
* web-platform-tests/css/css-values/round-function-expected.txt:
* web-platform-tests/css/css-values/round-function.html:

Source/WebCore:

Add function to convert any top level NaN values to infinity values as per the spec.
This only affects the computed value of the calc _expression_, not its serialization.

Test: imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-computed.html

* css/calc/CSSCalcOperationNode.cpp:
(WebCore::CSSCalcOperationNode::combineChildren):
(WebCore::convertToTopLevelValue):
(WebCore::CSSCalcOperationNode::evaluateOperator):
* css/calc/CSSCalcOperationNode.h:

Modified Paths

trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/round-function-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/round-function.html
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/calc/CSSCalcOperationNode.cpp
trunk/Source/WebCore/css/calc/CSSCalcOperationNode.h


Added Paths

trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-computed-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-computed.html




Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (291910 => 291911)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2022-03-26 01:38:42 UTC (rev 291910)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2022-03-26 01:45:25 UTC (rev 291911)
@@ -1,3 +1,15 @@
+2022-03-25  Nikolaos Mouchtaris  
+
+Incorrect handling of NaN inside calc() for top-level calculation
+https://bugs.webkit.org/show_bug.cgi?id=234176
+
+Reviewed by Simon Fraser.
+
+* web-platform-tests/css/css-values/calc-infinity-nan-computed-expected.txt: Added.
+* web-platform-tests/css/css-values/calc-infinity-nan-computed.html: Added.
+* web-platform-tests/css/css-values/round-function-expected.txt:
+* web-platform-tests/css/css-values/round-function.html:
+
 2022-03-25  Youenn Fablet  
 
 Add support for focused and visible ServiceWorkerWindowClient states


Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-computed-expected.txt (0 => 291911)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-computed-expected.txt	(rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-computed-expected.txt	2022-03-26 01:45:25 UTC (rev 291911)
@@ -0,0 +1,36 @@
+
+PASS Property width value 'calc(NaN * 1px)'
+PASS Property width value 'calc(infinity * 1px)'
+PASS Property width value 'calc(infinity * 1cm)'
+PASS Property width value 'calc(NaN * 1rem)'
+FAIL Property width value 'calc(infinity * 1px - infinity * 1%)' assert_greater_than_equal: calc(infinity * 1px - infinity * 1%) expected a number greater than or equal to 33554400 but got 0
+PASS Property width value 'calc(infinity * 1px + infinity * 1%)'
+PASS Property width value 'calc(min(NaN * 1px, infinity * 1px) + max(infinity * 1px, -infinity * 1px))'
+FAIL Property width value 'calc(infinity * 1px - max(infinity * 1%, 0%))' assert_greater_than_equal: calc(infinity * 1px - max(infinity * 1%, 0%)) expected a number greater than or equal to 33554400 but got 0
+PASS Property width value 'calc(max(infinity * 1px, 10px))'
+PASS Property margin-left value 'calc(-infinity * 1px)'
+PASS Property margin-left value 'calc(min(1px, -infinity * 1%))'
+PASS Property margin-left value 'calc(-infinity * 1%)'
+PASS Property margin-left value 'calc(max(1px, 0px) + min(-infinity * 1px, infinity * 1px))'
+PASS Property margin-left value 'calc(-infinity * 1px - infinity * 1px)'
+PASS Property margin-left value 'calc(min(-infinity * 1px, 10px))'
+PASS Property animation-duration value 'calc(NaN * 1s)'
+PASS Property animation-duration value 'calc(infinity * 1s)'
+PASS Property animation-duration value 'calc(1 / 0 * 1s)'
+PASS Property animation-duration value 'calc(max(infinity * 1s, 10s)'
+PASS Property transition-delay value 'calc(-infinity* 1s)'
+PASS Property transition-delay value 'calc(max(1s, 0s) + min(-infinity * 1s, infinity * 1s))'
+PASS Property transition-delay value 'calc(min(-infinity * 1s, 10s))'
+FAIL Property rotate(calc(infinity * 1deg)) value expected same with rotate(0deg) in +/-0.0001 assert_array_approx_equals: lengths differ, expected 6 got 16
+FAIL Property rotate(calc(-infinity * 1deg)) value expected same with rotate(0deg) in +/-0.0001 

[webkit-changes] [291841] trunk

2022-03-24 Thread nmouchtaris
Title: [291841] trunk








Revision 291841
Author nmouchta...@apple.com
Date 2022-03-24 18:03:07 -0700 (Thu, 24 Mar 2022)


Log Message
calc(): Handle finite value with infinite step in round()
https://bugs.webkit.org/show_bug.cgi?id=238231

Reviewed by Simon Fraser.

LayoutTests/imported/w3c:

* web-platform-tests/css/css-values/round-function-expected.txt:

Source/WebCore:

Add handling for finite value with infinite step in round().

* css/calc/CSSCalcOperationNode.cpp:
(WebCore::CSSCalcOperationNode::evaluateOperator):
* css/calc/CSSCalcPrimitiveValueNode.cpp:
(WebCore::CSSCalcPrimitiveValueNode::invert):

Modified Paths

trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/round-function-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/calc/CSSCalcOperationNode.cpp
trunk/Source/WebCore/css/calc/CSSCalcPrimitiveValueNode.cpp




Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (291840 => 291841)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2022-03-25 00:50:04 UTC (rev 291840)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2022-03-25 01:03:07 UTC (rev 291841)
@@ -1,5 +1,14 @@
 2022-03-24  Nikolaos Mouchtaris  
 
+calc(): Handle finite value with infinite step in round()
+https://bugs.webkit.org/show_bug.cgi?id=238231
+
+Reviewed by Simon Fraser.
+
+* web-platform-tests/css/css-values/round-function-expected.txt:
+
+2022-03-24  Nikolaos Mouchtaris  
+
 Fix serialization of nan, infinity, -infinity for calc()
 https://bugs.webkit.org/show_bug.cgi?id=238288
 


Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/round-function-expected.txt (291840 => 291841)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/round-function-expected.txt	2022-03-25 00:50:04 UTC (rev 291840)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/round-function-expected.txt	2022-03-25 01:03:07 UTC (rev 291841)
@@ -49,20 +49,20 @@
 PASS round(infinity, -5) should be used-value-equivalent to calc(infinity)
 PASS round(-infinity, 5) should be used-value-equivalent to calc(-infinity)
 PASS round(-infinity, -5) should be used-value-equivalent to calc(-infinity)
-FAIL calc(1 / round(5, infinity)) should be used-value-equivalent to calc(infinity) assert_equals: calc(1 / round(5, infinity)) and calc(infinity) serialize to the same thing in used values. expected "matrix3d(infinity, NaN, NaN, NaN, NaN, infinity, NaN, NaN, 0, 0, 1, 0, 0, 0, 0, 1)" but got "matrix3d(NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, 0, 0, 1, 0, 0, 0, 0, 1)"
-FAIL calc(1 / round(5, -infinity)) should be used-value-equivalent to calc(infinity) assert_equals: calc(1 / round(5, -infinity)) and calc(infinity) serialize to the same thing in used values. expected "matrix3d(infinity, NaN, NaN, NaN, NaN, infinity, NaN, NaN, 0, 0, 1, 0, 0, 0, 0, 1)" but got "matrix3d(NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, 0, 0, 1, 0, 0, 0, 0, 1)"
-FAIL calc(1 / round(-5, infinity)) should be used-value-equivalent to calc(-infinity) assert_equals: calc(1 / round(-5, infinity)) and calc(-infinity) serialize to the same thing in used values. expected "matrix3d(-infinity, NaN, NaN, NaN, NaN, -infinity, NaN, NaN, 0, 0, 1, 0, 0, 0, 0, 1)" but got "matrix3d(NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, 0, 0, 1, 0, 0, 0, 0, 1)"
-FAIL calc(1 / round(-5, -infinity)) should be used-value-equivalent to calc(-infinity) assert_equals: calc(1 / round(-5, -infinity)) and calc(-infinity) serialize to the same thing in used values. expected "matrix3d(-infinity, NaN, NaN, NaN, NaN, -infinity, NaN, NaN, 0, 0, 1, 0, 0, 0, 0, 1)" but got "matrix3d(NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, 0, 0, 1, 0, 0, 0, 0, 1)"
-FAIL calc(1 / round(to-zero, 5, infinity)) should be used-value-equivalent to calc(infinity) assert_equals: calc(1 / round(to-zero, 5, infinity)) and calc(infinity) serialize to the same thing in used values. expected "matrix3d(infinity, NaN, NaN, NaN, NaN, infinity, NaN, NaN, 0, 0, 1, 0, 0, 0, 0, 1)" but got "matrix3d(NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, 0, 0, 1, 0, 0, 0, 0, 1)"
-FAIL calc(1 / round(to-zero, 5, -infinity)) should be used-value-equivalent to calc(infinity) assert_equals: calc(1 / round(to-zero, 5, -infinity)) and calc(infinity) serialize to the same thing in used values. expected "matrix3d(infinity, NaN, NaN, NaN, NaN, infinity, NaN, NaN, 0, 0, 1, 0, 0, 0, 0, 1)" but got "matrix3d(NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, 0, 0, 1, 0, 0, 0, 0, 1)"
-FAIL calc(1 / round(to-zero, -5, infinity)) should be used-value-equivalent to calc(-infinity) assert_equals: calc(1 / round(to-zero, -5, infinity)) and calc(-infinity) serialize to the same thing in used values. expected "matrix3d(-infinity, NaN, NaN, NaN, NaN, -infinity, NaN, NaN, 0, 0, 1, 0, 0, 0, 0, 1)" but got "matrix3d(NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, 0, 0, 1, 0, 0, 0, 0, 1)"
-FAIL calc(1 / round(to-zero, -5, -infinity)) should be used-value-equivalent 

[webkit-changes] [291830] trunk

2022-03-24 Thread nmouchtaris
Title: [291830] trunk








Revision 291830
Author nmouchta...@apple.com
Date 2022-03-24 16:53:00 -0700 (Thu, 24 Mar 2022)


Log Message
Fix serialization of nan, infinity, -infinity for calc()
https://bugs.webkit.org/show_bug.cgi?id=238288

Reviewed by Simon Fraser.

LayoutTests/imported/w3c:

* web-platform-tests/css/css-values/calc-catch-divide-by-0-expected.txt:
* web-platform-tests/css/css-values/calc-infinity-nan-serialize-angle-expected.txt:
* web-platform-tests/css/css-values/calc-infinity-nan-serialize-length-expected.txt:
* web-platform-tests/css/css-values/calc-infinity-nan-serialize-time-expected.txt:

Source/WebCore:

Update serializing of nan, infinity, -infinity to be in line with step 2 of:
https://drafts.csswg.org/css-values/#calc-serialize.

* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::formatNumberValue const):
(WebCore::CSSPrimitiveValue::formatIntegerValue const):

Modified Paths

trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-catch-divide-by-0-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-serialize-angle-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-serialize-length-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-serialize-time-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/CSSPrimitiveValue.cpp
trunk/Source/WebCore/css/CSSPrimitiveValue.h




Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (291829 => 291830)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2022-03-24 23:48:48 UTC (rev 291829)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2022-03-24 23:53:00 UTC (rev 291830)
@@ -1,3 +1,15 @@
+2022-03-24  Nikolaos Mouchtaris  
+
+Fix serialization of nan, infinity, -infinity for calc()
+https://bugs.webkit.org/show_bug.cgi?id=238288
+
+Reviewed by Simon Fraser.
+
+* web-platform-tests/css/css-values/calc-catch-divide-by-0-expected.txt:
+* web-platform-tests/css/css-values/calc-infinity-nan-serialize-angle-expected.txt:
+* web-platform-tests/css/css-values/calc-infinity-nan-serialize-length-expected.txt:
+* web-platform-tests/css/css-values/calc-infinity-nan-serialize-time-expected.txt:
+
 2022-03-24  Cathie Chen  
 
 Update css/css-sizing/contain-intrinsic-size tests from WPT


Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-catch-divide-by-0-expected.txt (291829 => 291830)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-catch-divide-by-0-expected.txt	2022-03-24 23:48:48 UTC (rev 291829)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-catch-divide-by-0-expected.txt	2022-03-24 23:53:00 UTC (rev 291830)
@@ -1,23 +1,23 @@
 
-FAIL 'calc(100px * 0 / 0)' as a specified value should serialize as 'calc(NaN * 1px)'. assert_equals: 'calc(NaN * 1px)' should round-trip exactly in specified values. expected "calc(NaN * 1px)" but got "calc(NaNpx)"
-FAIL 'calc(100px / 0)' as a specified value should serialize as 'calc(infinity * 1px)'. assert_equals: 'calc(infinity * 1px)' should round-trip exactly in specified values. expected "calc(infinity * 1px)" but got "calc(infinitypx)"
-FAIL 'calc(100px / (0))' as a specified value should serialize as 'calc(infinity * 1px)'. assert_equals: 'calc(infinity * 1px)' should round-trip exactly in specified values. expected "calc(infinity * 1px)" but got "calc(infinitypx)"
-FAIL 'calc(100px / (2 - 2))' as a specified value should serialize as 'calc(infinity * 1px)'. assert_equals: 'calc(infinity * 1px)' should round-trip exactly in specified values. expected "calc(infinity * 1px)" but got "calc(infinitypx)"
-FAIL 'calc(100px / (2 - (-62 + 64)))' as a specified value should serialize as 'calc(infinity * 1px)'. assert_equals: 'calc(infinity * 1px)' should round-trip exactly in specified values. expected "calc(infinity * 1px)" but got "calc(infinitypx)"
-FAIL 'calc(100px * (1 / 0))' as a specified value should serialize as 'calc(infinity * 1px)'. assert_equals: 'calc(infinity * 1px)' should round-trip exactly in specified values. expected "calc(infinity * 1px)" but got "calc(infinitypx)"
-FAIL 'calc(100px * (1 / (0)))' as a specified value should serialize as 'calc(infinity * 1px)'. assert_equals: 'calc(infinity * 1px)' should round-trip exactly in specified values. expected "calc(infinity * 1px)" but got "calc(infinitypx)"
-FAIL 'calc(100px * (1 / (2 - 2)))' as a specified value should serialize as 'calc(infinity * 1px)'. assert_equals: 'calc(infinity * 1px)' should round-trip exactly in specified values. expected "calc(infinity * 1px)" but got "calc(infinitypx)"
-FAIL 'calc(100px * (1 / (2 - (-62 + 64' as a specified value should serialize as 'calc(infinity * 1px)'. assert_equals: 'calc(infinity * 1px)' should round-trip exactly in specified values. expected 

[webkit-changes] [291738] trunk/LayoutTests/imported/w3c

2022-03-23 Thread nmouchtaris
Title: [291738] trunk/LayoutTests/imported/w3c








Revision 291738
Author nmouchta...@apple.com
Date 2022-03-23 01:02:37 -0700 (Wed, 23 Mar 2022)


Log Message
Import calc() infinite/nan tests
https://bugs.webkit.org/show_bug.cgi?id=238237

Unreviewed, test import.


* web-platform-tests/css/css-values/calc-catch-divide-by-0-expected.txt: Added.
* web-platform-tests/css/css-values/calc-catch-divide-by-0.html: Added.
* web-platform-tests/css/css-values/calc-infinity-nan-serialize-angle-expected.txt: Added.
* web-platform-tests/css/css-values/calc-infinity-nan-serialize-angle.html: Added.
* web-platform-tests/css/css-values/calc-infinity-nan-serialize-length-expected.txt: Added.
* web-platform-tests/css/css-values/calc-infinity-nan-serialize-length.html: Added.
* web-platform-tests/css/css-values/calc-infinity-nan-serialize-time-expected.txt: Added.
* web-platform-tests/css/css-values/calc-infinity-nan-serialize-time.html: Added.

Modified Paths

trunk/LayoutTests/imported/w3c/ChangeLog


Added Paths

trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-catch-divide-by-0-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-catch-divide-by-0.html
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-serialize-angle-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-serialize-angle.html
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-serialize-length-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-serialize-length.html
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-serialize-time-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-infinity-nan-serialize-time.html




Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (291737 => 291738)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2022-03-23 06:47:41 UTC (rev 291737)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2022-03-23 08:02:37 UTC (rev 291738)
@@ -1,3 +1,19 @@
+2022-03-23  Nikolaos Mouchtaris  
+
+Import calc() infinite/nan tests
+https://bugs.webkit.org/show_bug.cgi?id=238237
+
+Unreviewed, test import.
+
+* web-platform-tests/css/css-values/calc-catch-divide-by-0-expected.txt: Added.
+* web-platform-tests/css/css-values/calc-catch-divide-by-0.html: Added.
+* web-platform-tests/css/css-values/calc-infinity-nan-serialize-angle-expected.txt: Added.
+* web-platform-tests/css/css-values/calc-infinity-nan-serialize-angle.html: Added.
+* web-platform-tests/css/css-values/calc-infinity-nan-serialize-length-expected.txt: Added.
+* web-platform-tests/css/css-values/calc-infinity-nan-serialize-length.html: Added.
+* web-platform-tests/css/css-values/calc-infinity-nan-serialize-time-expected.txt: Added.
+* web-platform-tests/css/css-values/calc-infinity-nan-serialize-time.html: Added.
+
 2022-03-22  Sihui Liu  
 
 Check if origin can access storage in Storage API


Added: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-catch-divide-by-0-expected.txt (0 => 291738)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-catch-divide-by-0-expected.txt	(rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/calc-catch-divide-by-0-expected.txt	2022-03-23 08:02:37 UTC (rev 291738)
@@ -0,0 +1,23 @@
+
+FAIL 'calc(100px * 0 / 0)' as a specified value should serialize as 'calc(NaN * 1px)'. assert_equals: 'calc(NaN * 1px)' should round-trip exactly in specified values. expected "calc(NaN * 1px)" but got "calc(NaNpx)"
+FAIL 'calc(100px / 0)' as a specified value should serialize as 'calc(infinity * 1px)'. assert_equals: 'calc(infinity * 1px)' should round-trip exactly in specified values. expected "calc(infinity * 1px)" but got "calc(infinitypx)"
+FAIL 'calc(100px / (0))' as a specified value should serialize as 'calc(infinity * 1px)'. assert_equals: 'calc(infinity * 1px)' should round-trip exactly in specified values. expected "calc(infinity * 1px)" but got "calc(infinitypx)"
+FAIL 'calc(100px / (2 - 2))' as a specified value should serialize as 'calc(infinity * 1px)'. assert_equals: 'calc(infinity * 1px)' should round-trip exactly in specified values. expected "calc(infinity * 1px)" but got "calc(infinitypx)"
+FAIL 'calc(100px / (2 - (-62 + 64)))' as a specified value should serialize as 'calc(infinity * 1px)'. assert_equals: 'calc(infinity * 1px)' should round-trip exactly in specified values. expected "calc(infinity * 1px)" but got "calc(infinitypx)"
+FAIL 'calc(100px * (1 / 0))' as a specified value should serialize as 'calc(infinity * 1px)'. assert_equals: 'calc(infinity * 1px)' should round-trip exactly in specified values. expected "calc(infinity * 1px)" but got "calc(infinitypx)"
+FAIL 'calc(100px * (1 / (0)))' as 

[webkit-changes] [291516] trunk/Source/WebCore

2022-03-18 Thread nmouchtaris
Title: [291516] trunk/Source/WebCore








Revision 291516
Author nmouchta...@apple.com
Date 2022-03-18 17:59:09 -0700 (Fri, 18 Mar 2022)


Log Message
Calc() cleanup
https://bugs.webkit.org/show_bug.cgi?id=237982

Reviewed by Simon Fraser.

Small cleanup of CSSCalcExpressionNodeParser and CSSCalcOperationNode needed after
adding more math functions.

* css/calc/CSSCalcExpressionNodeParser.cpp:
(WebCore::CSSCalcExpressionNodeParser::parseCalcFunction):
* css/calc/CSSCalcOperationNode.cpp:
(WebCore::determineCategory):
(WebCore::CSSCalcOperationNode::simplifyNode):
* css/calc/CSSCalcOperationNode.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/calc/CSSCalcExpressionNodeParser.cpp
trunk/Source/WebCore/css/calc/CSSCalcOperationNode.cpp
trunk/Source/WebCore/css/calc/CSSCalcOperationNode.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (291515 => 291516)

--- trunk/Source/WebCore/ChangeLog	2022-03-19 00:55:48 UTC (rev 291515)
+++ trunk/Source/WebCore/ChangeLog	2022-03-19 00:59:09 UTC (rev 291516)
@@ -1,3 +1,20 @@
+2022-03-18  Nikolaos Mouchtaris  
+
+Calc() cleanup
+https://bugs.webkit.org/show_bug.cgi?id=237982
+
+Reviewed by Simon Fraser.
+
+Small cleanup of CSSCalcExpressionNodeParser and CSSCalcOperationNode needed after 
+adding more math functions.
+
+* css/calc/CSSCalcExpressionNodeParser.cpp:
+(WebCore::CSSCalcExpressionNodeParser::parseCalcFunction):
+* css/calc/CSSCalcOperationNode.cpp:
+(WebCore::determineCategory):
+(WebCore::CSSCalcOperationNode::simplifyNode):
+* css/calc/CSSCalcOperationNode.h:
+
 2022-03-18  Eric Carlson  
 
 [iOS] Fix more build breakage from r291361


Modified: trunk/Source/WebCore/css/calc/CSSCalcExpressionNodeParser.cpp (291515 => 291516)

--- trunk/Source/WebCore/css/calc/CSSCalcExpressionNodeParser.cpp	2022-03-19 00:55:48 UTC (rev 291515)
+++ trunk/Source/WebCore/css/calc/CSSCalcExpressionNodeParser.cpp	2022-03-19 00:59:09 UTC (rev 291516)
@@ -140,11 +140,6 @@
 std::optional maxArgumentCount;
 
 switch (functionID) {
-case CSSValueMin:
-case CSSValueMax:
-case CSSValueHypot:
-maxArgumentCount = std::nullopt;
-break;
 case CSSValueClamp:
 minArgumentCount = 3;
 maxArgumentCount = 3;


Modified: trunk/Source/WebCore/css/calc/CSSCalcOperationNode.cpp (291515 => 291516)

--- trunk/Source/WebCore/css/calc/CSSCalcOperationNode.cpp	2022-03-19 00:55:48 UTC (rev 291515)
+++ trunk/Source/WebCore/css/calc/CSSCalcOperationNode.cpp	2022-03-19 00:59:09 UTC (rev 291516)
@@ -73,30 +73,7 @@
 if (rightCategory != CalculationCategory::Number)
 return CalculationCategory::Other;
 return leftCategory;
-case CalcOperator::Sin:
-case CalcOperator::Cos:
-case CalcOperator::Tan:
-case CalcOperator::Min:
-case CalcOperator::Max:
-case CalcOperator::Clamp:
-case CalcOperator::Log:
-case CalcOperator::Exp:
-case CalcOperator::Asin:
-case CalcOperator::Acos:
-case CalcOperator::Atan:
-case CalcOperator::Atan2:
-case CalcOperator::Abs:
-case CalcOperator::Sign:
-case CalcOperator::Mod:
-case CalcOperator::Rem:
-case CalcOperator::Round:
-case CalcOperator::Up:
-case CalcOperator::Down:
-case CalcOperator::Nearest:
-case CalcOperator::ToZero:
-case CalcOperator::Pow:
-case CalcOperator::Sqrt:
-case CalcOperator::Hypot:
+default:
 ASSERT_NOT_REACHED();
 return CalculationCategory::Other;
 }
@@ -162,33 +139,13 @@
 return CalculationCategory::Other;
 break;
 }
-case CalcOperator::Sin:
-case CalcOperator::Cos:
-case CalcOperator::Tan:
-case CalcOperator::Abs:
-case CalcOperator::Sign:
-case CalcOperator::Min:
-case CalcOperator::Max:
-case CalcOperator::Clamp:
-case CalcOperator::Log:
-case CalcOperator::Exp:
-case CalcOperator::Asin:
-case CalcOperator::Acos:
-case CalcOperator::Atan:
-case CalcOperator::Atan2:
-case CalcOperator::Mod:
-case CalcOperator::Rem:
-case CalcOperator::Round:
-case CalcOperator::Up:
-case CalcOperator::Down:
-case CalcOperator::Nearest:
-case CalcOperator::ToZero:
-case CalcOperator::Hypot:
-return CalculationCategory::Other;
 case CalcOperator::Pow:
 case CalcOperator::Sqrt:
 // The type of pow() and sqrt() functions must evaluate to a number.
 return CalculationCategory::Number;
+default:
+return CalculationCategory::Other;
+
 }
 }
 
@@ -933,43 +890,15 @@
 
 if (calcOperationNode.isCalcSumNode()) {
 calcOperationNode.hoistChildrenWithOperator(CalcOperator::Add);
-calcOperationNode.combineChildren();
 }
 

[webkit-changes] [291497] trunk

2022-03-18 Thread nmouchtaris
Title: [291497] trunk








Revision 291497
Author nmouchta...@apple.com
Date 2022-03-18 14:59:15 -0700 (Fri, 18 Mar 2022)


Log Message
Allow history swipe in scroller with overscroll-behavior
https://bugs.webkit.org/show_bug.cgi?id=235851

Reviewed by Simon Fraser.

Source/WebCore:

Re-add code to allow history swipe. Does so by returning unhandled if a horizontal
swipe is used. Also add test to make sure history swipes are allowed in scrolling nodes
with overscroll-behavior.

Test: scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe-overscroll-behavior.html

* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::handleWheelEventWithNode):
* page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::shouldRubberBand const):
(WebCore::ScrollingTreeScrollingNode::computeScrollPropagation const):
(WebCore::ScrollingTreeScrollingNode::shouldBlockScrollPropagation const): Deleted.
* page/scrolling/ScrollingTreeScrollingNode.h:

LayoutTests:

* scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe-overscroll-behavior-expected.txt: Added.
* scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe-overscroll-behavior.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/scrolling/ScrollingTree.cpp
trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp
trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h


Added Paths

trunk/LayoutTests/scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe-overscroll-behavior-expected.txt
trunk/LayoutTests/scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe-overscroll-behavior.html




Diff

Modified: trunk/LayoutTests/ChangeLog (291496 => 291497)

--- trunk/LayoutTests/ChangeLog	2022-03-18 21:53:45 UTC (rev 291496)
+++ trunk/LayoutTests/ChangeLog	2022-03-18 21:59:15 UTC (rev 291497)
@@ -1,3 +1,13 @@
+2022-03-18  Nikolaos Mouchtaris  
+
+Allow history swipe in scroller with overscroll-behavior
+https://bugs.webkit.org/show_bug.cgi?id=235851
+
+Reviewed by Simon Fraser.
+
+* scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe-overscroll-behavior-expected.txt: Added.
+* scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe-overscroll-behavior.html: Added.
+
 2022-03-18  Simon Fraser  
 
 REGRESSION (r290628): Scrubber makes a visual trail when scrubbing on tv.youtube.com


Added: trunk/LayoutTests/scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe-overscroll-behavior-expected.txt (0 => 291497)

--- trunk/LayoutTests/scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe-overscroll-behavior-expected.txt	(rev 0)
+++ trunk/LayoutTests/scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe-overscroll-behavior-expected.txt	2022-03-18 21:59:15 UTC (rev 291497)
@@ -0,0 +1,14 @@
+Scrolls vertically
+Scrolls horizontally
+A back swipe, over a scrolled-to-left overflow, should start a navigation gesture.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+Swipe to the left
+PASS minXOffset is 0
+PASS maxXOffset is -1000
+PASS successfullyParsed is true
+
+TEST COMPLETE
+


Added: trunk/LayoutTests/scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe-overscroll-behavior.html (0 => 291497)

--- trunk/LayoutTests/scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe-overscroll-behavior.html	(rev 0)
+++ trunk/LayoutTests/scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe-overscroll-behavior.html	2022-03-18 21:59:15 UTC (rev 291497)
@@ -0,0 +1,116 @@
+ 
+
+
+
+body {
+height: 2000px;
+}
+
+.scroller {
+margin: 10px;
+width: 500px;
+height: 400px;
+overflow: auto;
+border: 2px solid black;
+}
+
+.horizontal .scroller {
+width: 400px;
+height: 400px;
+margin: 10px;
+overscroll-behavior: contain;
+}
+
+.filler {
+height: 200px;
+width: 100%;
+margin: 10px;
+background-color: silver;
+}
+
+.horizontal .filler {
+height: 80%;
+width: 200%;
+background-color: silver;
+}
+
+
+jsTestIsAsync = true;
+
+var minXOffset = 0;
+var maxXOffset = -1000;
+
+async function onScrollCompletion(x, y)
+{
+eventSender.monitorWheelEvents();
+eventSender.mouseMoveTo(x, y);
+eventSender.mouseScrollByWithWheelAndMomentumPhases(1, 0, "began", "none");
+eventSender.mouseScrollByWithWheelAndMomentumPhases(10, 0, "changed", "none");
+eventSender.mouseScrollByWithWheelAndMomentumPhases(10, 0, "changed", "none");
+ 

[webkit-changes] [291198] trunk

2022-03-11 Thread nmouchtaris
Title: [291198] trunk








Revision 291198
Author nmouchta...@apple.com
Date 2022-03-11 15:42:47 -0800 (Fri, 11 Mar 2022)


Log Message
[iOS] Fix ovserscroll-behavior for main document
https://bugs.webkit.org/show_bug.cgi?id=237696

Reviewed by Simon Fraser.

Source/WebCore:

Make getters for overscroll behavior public.

Test: fast/scrolling/ios/overscroll-behavior-on-body.html

* page/scrolling/ScrollingTreeScrollingNode.h:

Source/WebKit:

Get value of over scroll behavior from root scrolling node to set whether root
UIScrollView should rubber band or not. Add new UIScrollView SPI.

* Platform/spi/ios/UIKitSPI.h:
* UIProcess/API/ios/WKWebViewIOS.mm:
(-[WKWebView _updateScrollViewForTransaction:]):
* UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp:
(WebKit::RemoteScrollingCoordinatorProxy::rootNode const):
* UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h:
* UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.h:
* UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm:
(WebKit::ScrollingTreeScrollingNodeDelegateIOS::updateScrollViewForOverscrollBehavior):
(WebKit::ScrollingTreeScrollingNodeDelegateIOS::commitStateAfterChildren):

LayoutTests:

Added test that does a scroll expecting a rubberband, sets overscroll-behavior:none for
the body, then does another scroll, expected that no rubberband occurs.

* fast/scrolling/ios/overscroll-behavior-on-body-expected.txt: Added.
* fast/scrolling/ios/overscroll-behavior-on-body.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Platform/spi/ios/UIKitSPI.h
trunk/Source/WebKit/UIProcess/API/ios/WKWebViewIOS.mm
trunk/Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp
trunk/Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h
trunk/Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.h
trunk/Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm


Added Paths

trunk/LayoutTests/fast/scrolling/ios/overscroll-behavior-on-body-expected.txt
trunk/LayoutTests/fast/scrolling/ios/overscroll-behavior-on-body.html




Diff

Modified: trunk/LayoutTests/ChangeLog (291197 => 291198)

--- trunk/LayoutTests/ChangeLog	2022-03-11 23:34:29 UTC (rev 291197)
+++ trunk/LayoutTests/ChangeLog	2022-03-11 23:42:47 UTC (rev 291198)
@@ -1,3 +1,16 @@
+2022-03-11  Nikolaos Mouchtaris  
+
+[iOS] Fix ovserscroll-behavior for main document
+https://bugs.webkit.org/show_bug.cgi?id=237696
+
+Reviewed by Simon Fraser.
+
+Added test that does a scroll expecting a rubberband, sets overscroll-behavior:none for 
+the body, then does another scroll, expected that no rubberband occurs.
+
+* fast/scrolling/ios/overscroll-behavior-on-body-expected.txt: Added.
+* fast/scrolling/ios/overscroll-behavior-on-body.html: Added.
+
 2022-03-11  Matteo Flores  
 
 [ iOS ] fast/events/ios/rotation/layout-viewport-during-safari-type-rotation.html is flaky failing


Added: trunk/LayoutTests/fast/scrolling/ios/overscroll-behavior-on-body-expected.txt (0 => 291198)

--- trunk/LayoutTests/fast/scrolling/ios/overscroll-behavior-on-body-expected.txt	(rev 0)
+++ trunk/LayoutTests/fast/scrolling/ios/overscroll-behavior-on-body-expected.txt	2022-03-11 23:42:47 UTC (rev 291198)
@@ -0,0 +1,11 @@
+Top
+PASS window.pageYOffset is 0
+PASS window.pageXOffset is 0
+PASS window.pageYOffset is not 0
+PASS window.pageXOffset is not 0
+PASS window.pageYOffset is 0
+PASS window.pageXOffset is 0
+PASS successfullyParsed is true
+
+TEST COMPLETE
+


Added: trunk/LayoutTests/fast/scrolling/ios/overscroll-behavior-on-body.html (0 => 291198)

--- trunk/LayoutTests/fast/scrolling/ios/overscroll-behavior-on-body.html	(rev 0)
+++ trunk/LayoutTests/fast/scrolling/ios/overscroll-behavior-on-body.html	2022-03-11 23:42:47 UTC (rev 291198)
@@ -0,0 +1,43 @@
+ 
+
+
+
+
+body {
+height: 5000px;
+width: 200%;
+}
+
+
+var jsTestIsAsync = true;
+
+async function doTest()
+{
+shouldBe('window.pageYOffset', '0');
+shouldBe('window.pageXOffset', '0');
+
+await UIHelper.dragFromPointToPoint(150, 150, 200, 200, 0.1);
+shouldNotBe('window.pageYOffset', '0');
+shouldNotBe('window.pageXOffset', '0');
+
+document.documentElement.style.overscrollBehavior = "none";
+await UIHelper.dragFromPointToPoint(150, 150, 200, 200, 0.1);
+shouldBe('window.pageYOffset', '0');
+shouldBe('window.pageXOffset', '0');
+finishJSTest();
+}
+
+window.addEventListener('load', () => {
+doTest();
+}, false);
+
+
+
+Top

[webkit-changes] [290417] trunk/Source/WTF

2022-02-24 Thread nmouchtaris
Title: [290417] trunk/Source/WTF








Revision 290417
Author nmouchta...@apple.com
Date 2022-02-24 00:57:30 -0800 (Thu, 24 Feb 2022)


Log Message
REGRESSION(r289683): [GTK][WPE] Scrolling with the mouse wheel doesn't work in twitter after r289683
https://bugs.webkit.org/show_bug.cgi?id=237093

Reviewed by Carlos Garcia Campos.

Turn off by default for wpe/gtk and windows to investigate issue.

* Scripts/Preferences/WebPreferencesExperimental.yaml:

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml




Diff

Modified: trunk/Source/WTF/ChangeLog (290416 => 290417)

--- trunk/Source/WTF/ChangeLog	2022-02-24 08:56:54 UTC (rev 290416)
+++ trunk/Source/WTF/ChangeLog	2022-02-24 08:57:30 UTC (rev 290417)
@@ -1,3 +1,14 @@
+2022-02-24  Nikolaos Mouchtaris  
+
+REGRESSION(r289683): [GTK][WPE] Scrolling with the mouse wheel doesn't work in twitter after r289683
+https://bugs.webkit.org/show_bug.cgi?id=237093
+
+Reviewed by Carlos Garcia Campos.
+ 
+Turn off by default for wpe/gtk and windows to investigate issue.
+
+* Scripts/Preferences/WebPreferencesExperimental.yaml:
+
 2022-02-24  Chris Dumez  
 
 Small optimizations to TinyLRUCache


Modified: trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml (290416 => 290417)

--- trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml	2022-02-24 08:56:54 UTC (rev 290416)
+++ trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml	2022-02-24 08:57:30 UTC (rev 290417)
@@ -977,8 +977,10 @@
 WebKitLegacy:
   default: false
 WebKit:
+  "PLATFORM(WIN) || PLATFORM(GTK) || PLATFORM(WPE)": false
   default: true
 WebCore:
+  "PLATFORM(WIN) || PLATFORM(GTK) || PLATFORM(WPE)": false
   default: true
 
 PageAtRuleSupportEnabled:






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [290071] trunk/Source/WTF

2022-02-17 Thread nmouchtaris
Title: [290071] trunk/Source/WTF








Revision 290071
Author nmouchta...@apple.com
Date 2022-02-17 13:45:19 -0800 (Thu, 17 Feb 2022)


Log Message
Enable CSS Motion Path by default
https://bugs.webkit.org/show_bug.cgi?id=236681

Unreviewed enable of WebKitLegacy.

* Scripts/Preferences/WebPreferencesExperimental.yaml:

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml




Diff

Modified: trunk/Source/WTF/ChangeLog (290070 => 290071)

--- trunk/Source/WTF/ChangeLog	2022-02-17 21:38:44 UTC (rev 290070)
+++ trunk/Source/WTF/ChangeLog	2022-02-17 21:45:19 UTC (rev 290071)
@@ -1,5 +1,14 @@
 2022-02-17  Nikolaos Mouchtaris  
 
+Enable CSS Motion Path by default
+https://bugs.webkit.org/show_bug.cgi?id=236681
+
+Unreviewed enable of WebKitLegacy.
+
+* Scripts/Preferences/WebPreferencesExperimental.yaml:
+
+2022-02-17  Nikolaos Mouchtaris  
+
 [Web Animations] Enable Composite Animations
 https://bugs.webkit.org/show_bug.cgi?id=236682
 


Modified: trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml (290070 => 290071)

--- trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml	2022-02-17 21:38:44 UTC (rev 290070)
+++ trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml	2022-02-17 21:45:19 UTC (rev 290071)
@@ -339,7 +339,7 @@
   humanReadableDescription: "Enable CSS Motion Path support"
   defaultValue:
 WebKitLegacy:
-  default: false
+  default: true
 WebKit:
   default: true
 WebCore:






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [290067] trunk/Source/WTF

2022-02-17 Thread nmouchtaris
Title: [290067] trunk/Source/WTF








Revision 290067
Author nmouchta...@apple.com
Date 2022-02-17 13:29:19 -0800 (Thu, 17 Feb 2022)


Log Message
[Web Animations] Enable Composite Animations
https://bugs.webkit.org/show_bug.cgi?id=236682

Reviewed by Dean Jackson.

* Scripts/Preferences/WebPreferencesExperimental.yaml:

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml




Diff

Modified: trunk/Source/WTF/ChangeLog (290066 => 290067)

--- trunk/Source/WTF/ChangeLog	2022-02-17 21:27:37 UTC (rev 290066)
+++ trunk/Source/WTF/ChangeLog	2022-02-17 21:29:19 UTC (rev 290067)
@@ -1,5 +1,14 @@
 2022-02-17  Nikolaos Mouchtaris  
 
+[Web Animations] Enable Composite Animations
+https://bugs.webkit.org/show_bug.cgi?id=236682
+
+Reviewed by Dean Jackson.
+
+* Scripts/Preferences/WebPreferencesExperimental.yaml:
+
+2022-02-17  Nikolaos Mouchtaris  
+
 Enable CSS Motion Path by default
 https://bugs.webkit.org/show_bug.cgi?id=236681
 


Modified: trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml (290066 => 290067)

--- trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml	2022-02-17 21:27:37 UTC (rev 290066)
+++ trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml	2022-02-17 21:29:19 UTC (rev 290067)
@@ -1518,7 +1518,6 @@
 WebKit:
   default: true
 
-# FIXME: This is enabled when ENABLE(EXPERIMENTAL_FEATURES) is true in WebKit2. Perhaps we should consider using that for WebKitLegacy as well.
 WebAnimationsCompositeOperationsEnabled:
   type: bool
   humanReadableName: "Web Animations composite operations"
@@ -1525,12 +1524,11 @@
   humanReadableDescription: "Support for the CompositeOperation enum and properties consuming it"
   defaultValue:
 WebKitLegacy:
-  default: false
+  default: true
 WebKit:
-  "ENABLE(EXPERIMENTAL_FEATURES)" : true
-  default: false
+  default: true
 WebCore:
-  default: false
+  default: true
 
 WebAnimationsCustomEffectsEnabled:
   type: bool






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [290051] trunk/Source/WTF

2022-02-17 Thread nmouchtaris
Title: [290051] trunk/Source/WTF








Revision 290051
Author nmouchta...@apple.com
Date 2022-02-17 12:27:17 -0800 (Thu, 17 Feb 2022)


Log Message
Enable CSS Motion Path by default
https://bugs.webkit.org/show_bug.cgi?id=236681

Reviewed by Dean Jackson.

* Scripts/Preferences/WebPreferencesExperimental.yaml:

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml




Diff

Modified: trunk/Source/WTF/ChangeLog (290050 => 290051)

--- trunk/Source/WTF/ChangeLog	2022-02-17 20:21:43 UTC (rev 290050)
+++ trunk/Source/WTF/ChangeLog	2022-02-17 20:27:17 UTC (rev 290051)
@@ -1,3 +1,12 @@
+2022-02-17  Nikolaos Mouchtaris  
+
+Enable CSS Motion Path by default
+https://bugs.webkit.org/show_bug.cgi?id=236681
+
+Reviewed by Dean Jackson.
+
+* Scripts/Preferences/WebPreferencesExperimental.yaml:
+
 2022-02-17  Chris Dumez  
 
 Clean up / optimize call sites constructing vectors


Modified: trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml (290050 => 290051)

--- trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml	2022-02-17 20:21:43 UTC (rev 290050)
+++ trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml	2022-02-17 20:27:17 UTC (rev 290051)
@@ -341,9 +341,9 @@
 WebKitLegacy:
   default: false
 WebKit:
-  default: false
+  default: true
 WebCore:
-  default: false
+  default: true
 
 CSSOMViewSmoothScrollingEnabled:
   type: bool






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [289876] trunk

2022-02-15 Thread nmouchtaris
Title: [289876] trunk








Revision 289876
Author nmouchta...@apple.com
Date 2022-02-15 21:27:04 -0800 (Tue, 15 Feb 2022)


Log Message
Implement parsing and animation support for offset shorthand
https://bugs.webkit.org/show_bug.cgi?id=233109

Reviewed by Dean Jackson.

LayoutTests/imported/w3c:

* web-platform-tests/css/motion/animation/offset-interpolation-expected.txt:
* web-platform-tests/css/motion/parsing/offset-parsing-valid-expected.txt:
* web-platform-tests/css/motion/parsing/offset-parsing-valid.html:
* web-platform-tests/css/motion/parsing/offset-shorthand-expected.txt:

Source/WebCore:

This patch implements support for the offset shorthand for css motion path. This involves
adding the offset property to CSSProperties.json, the introduction of consumeOffset() to
parse the set offset, and serialization of the offset values.

* animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
* animation/KeyframeEffect.cpp:
(WebCore::KeyframeEffect::CSSPropertyIDToIDLAttributeName):
(WebCore::IDLAttributeNameToAnimationPropertyName):
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::valueForOffsetShorthand):
(WebCore::ComputedStyleExtractor::valueForPropertyInStyle):
* css/CSSOffsetRotateValue.cpp:
(WebCore::CSSOffsetRotateValue::initialValue):
(WebCore::CSSOffsetRotateValue::isInitialValue const):
* css/CSSOffsetRotateValue.h:
* css/CSSProperties.json:
* css/StyleProperties.cpp:
(WebCore::StyleProperties::getPropertyValue const):
(WebCore::StyleProperties::offsetValue const):
* css/StyleProperties.h:
* css/parser/CSSPropertyParser.cpp:
(WebCore::consumeBasicShapeOrBox):
(WebCore::CSSPropertyParser::consumeOffset):
(WebCore::CSSPropertyParser::parseShorthand):
* css/parser/CSSPropertyParser.h:

Modified Paths

trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/animation/offset-interpolation-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/parsing/offset-parsing-valid-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/parsing/offset-parsing-valid.html
trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/parsing/offset-shorthand-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp
trunk/Source/WebCore/animation/KeyframeEffect.cpp
trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp
trunk/Source/WebCore/css/CSSOffsetRotateValue.cpp
trunk/Source/WebCore/css/CSSOffsetRotateValue.h
trunk/Source/WebCore/css/CSSProperties.json
trunk/Source/WebCore/css/StyleProperties.cpp
trunk/Source/WebCore/css/StyleProperties.h
trunk/Source/WebCore/css/parser/CSSPropertyParser.cpp
trunk/Source/WebCore/css/parser/CSSPropertyParser.h




Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (289875 => 289876)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2022-02-16 05:20:04 UTC (rev 289875)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2022-02-16 05:27:04 UTC (rev 289876)
@@ -1,5 +1,17 @@
 2022-02-15  Nikolaos Mouchtaris  
 
+Implement parsing and animation support for offset shorthand
+https://bugs.webkit.org/show_bug.cgi?id=233109
+
+Reviewed by Dean Jackson.
+
+* web-platform-tests/css/motion/animation/offset-interpolation-expected.txt:
+* web-platform-tests/css/motion/parsing/offset-parsing-valid-expected.txt:
+* web-platform-tests/css/motion/parsing/offset-parsing-valid.html:
+* web-platform-tests/css/motion/parsing/offset-shorthand-expected.txt:
+
+2022-02-15  Nikolaos Mouchtaris  
+
 [css-transforms] properly handle interpolation of non-invertible matrices
 https://bugs.webkit.org/show_bug.cgi?id=236480
 


Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/animation/offset-interpolation-expected.txt (289875 => 289876)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/animation/offset-interpolation-expected.txt	2022-02-16 05:20:04 UTC (rev 289875)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/motion/animation/offset-interpolation-expected.txt	2022-02-16 05:27:04 UTC (rev 289876)
@@ -1,38 +1,38 @@
 
-FAIL CSS Transitions: property  from [path("M0 200H 700") 500px 800deg] to [path("M0 300H 700 Z") 600px 900deg] at (-0.3) should be [path("M0 300H 700 Z") 470px 770deg] assert_true: 'from' value should be supported expected true got false
-FAIL CSS Transitions: property  from [path("M0 200H 700") 500px 800deg] to [path("M0 300H 700 Z") 600px 900deg] at (0) should be [path("M0 300H 700 Z") 500px 800deg] assert_true: 'from' value should be supported expected true got false
-FAIL CSS Transitions: property  from [path("M0 200H 700") 500px 800deg] to [path("M0 300H 700 Z") 600px 900deg] at (0.3) should be [path("M0 300H 700 Z") 530px 830deg] assert_true: 'from' value should be supported expected true got false
-FAIL CSS Transitions: property  from [path("M0 200H 700") 500px 800deg] to [path("M0 300H 

[webkit-changes] [289862] trunk

2022-02-15 Thread nmouchtaris
Title: [289862] trunk








Revision 289862
Author nmouchta...@apple.com
Date 2022-02-15 16:26:24 -0800 (Tue, 15 Feb 2022)


Log Message
[css-transforms] properly handle interpolation of non-invertible matrices
https://bugs.webkit.org/show_bug.cgi?id=236480

Reviewed by Martin Robinson.

LayoutTests/imported/w3c:

* web-platform-tests/css/css-transforms/animation/transform-matrix-composition-expected.txt:
* web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt:

Source/WebCore:

All composition types should fall back to discrete animation behavior when
interpolating non-invertible matrices. Need to segment progress value
depending on either side of 0.5.

* platform/graphics/transforms/TransformOperations.cpp:
(WebCore::TransformOperations::shouldFallbackToDiscreteAnimation const):
(WebCore::TransformOperations::blendByMatchingOperations const):
(WebCore::TransformOperations::blendByUsingMatrixInterpolation const):
* platform/graphics/transforms/TransformOperations.h:
(WebCore::TransformOperations::hasMatrixOperation const):
* platform/graphics/transforms/TransformationMatrix.cpp:
(WebCore::TransformationMatrix::blend):

Modified Paths

trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-matrix-composition-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/transforms/TransformOperations.cpp
trunk/Source/WebCore/platform/graphics/transforms/TransformOperations.h
trunk/Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp




Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (289861 => 289862)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2022-02-16 00:26:00 UTC (rev 289861)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2022-02-16 00:26:24 UTC (rev 289862)
@@ -1,3 +1,13 @@
+2022-02-15  Nikolaos Mouchtaris  
+
+[css-transforms] properly handle interpolation of non-invertible matrices
+https://bugs.webkit.org/show_bug.cgi?id=236480
+
+Reviewed by Martin Robinson.
+
+* web-platform-tests/css/css-transforms/animation/transform-matrix-composition-expected.txt:
+* web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt:
+
 2022-02-15  Antti Koivisto  
 
 [CSS Container Queries] Support all size features


Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-matrix-composition-expected.txt (289861 => 289862)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-matrix-composition-expected.txt	2022-02-16 00:26:00 UTC (rev 289861)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-matrix-composition-expected.txt	2022-02-16 00:26:24 UTC (rev 289862)
@@ -13,20 +13,20 @@
 PASS Compositing: property  underlying [matrix3d(0.8535533905932737,0.1464466094067262,-0.5,0,0.1464466094067262,0.8535533905932737,0.5,0,0.5,-0.5,0.7071067811865476,0,100,0,0,1)] from add [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 100, 0, 0, 1)] to add [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 200, 0, 0, 1)] at (0.75) should be [translateX(100px) rotate3d(1, 1, 0, 45deg) translateX(175px)]
 PASS Compositing: property  underlying [matrix3d(0.8535533905932737,0.1464466094067262,-0.5,0,0.1464466094067262,0.8535533905932737,0.5,0,0.5,-0.5,0.7071067811865476,0,100,0,0,1)] from add [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 100, 0, 0, 1)] to add [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 200, 0, 0, 1)] at (1) should be [translateX(100px) rotate3d(1, 1, 0, 45deg) translateX(200px)]
 PASS Compositing: property  underlying [matrix3d(0.8535533905932737,0.1464466094067262,-0.5,0,0.1464466094067262,0.8535533905932737,0.5,0,0.5,-0.5,0.7071067811865476,0,100,0,0,1)] from add [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 100, 0, 0, 1)] to add [matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 200, 0, 0, 1)] at (1.5) should be [translateX(100px) rotate3d(1, 1, 0, 45deg) translateX(250px)]
-FAIL Compositing: property  underlying [matrix(1, 1, 0, 0, 0, 100)] from add [matrix(1, 0, 0, 1, 100, 0)] to add [matrix(1, 0, 0, 1, 200, 0)] at (-0.5) should be [matrix(1, 1, 0, 0, 100, 200)] assert_equals: expected "matrix ( 1 , 1 , 0 , 0 , 100 , 200 ) " but got "matrix ( 1 , 1 , 0 , 0 , 100 , 100 ) "
+PASS Compositing: property  underlying [matrix(1, 1, 0, 0, 0, 100)] from add [matrix(1, 0, 0, 1, 100, 0)] to add [matrix(1, 0, 0, 1, 200, 0)] at (-0.5) should be [matrix(1, 1, 0, 0, 100, 200)]
 PASS Compositing: property  underlying [matrix(1, 1, 0, 0, 0, 100)] from add [matrix(1, 0, 0, 1, 100, 0)] to add [matrix(1, 0, 0, 1, 200, 0)] at (0) should be [matrix(1, 1, 0, 0, 100, 200)]
-FAIL Compositing: property  underlying 

[webkit-changes] [289683] trunk/Source/WTF

2022-02-11 Thread nmouchtaris
Title: [289683] trunk/Source/WTF








Revision 289683
Author nmouchta...@apple.com
Date 2022-02-11 17:35:41 -0800 (Fri, 11 Feb 2022)


Log Message
Turn overscroll-behavior on by default
https://bugs.webkit.org/show_bug.cgi?id=236060

Reviewed by Tim Nguyen.

* Scripts/Preferences/WebPreferencesExperimental.yaml:

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml




Diff

Modified: trunk/Source/WTF/ChangeLog (289682 => 289683)

--- trunk/Source/WTF/ChangeLog	2022-02-12 01:15:31 UTC (rev 289682)
+++ trunk/Source/WTF/ChangeLog	2022-02-12 01:35:41 UTC (rev 289683)
@@ -1,3 +1,12 @@
+2022-02-11  Nikolaos Mouchtaris  
+
+Turn overscroll-behavior on by default
+https://bugs.webkit.org/show_bug.cgi?id=236060
+
+Reviewed by Tim Nguyen.
+
+* Scripts/Preferences/WebPreferencesExperimental.yaml:
+
 2022-02-11  Wenson Hsieh  
 
 [iOS] Add a "Copy Cropped Image" context menu item when long pressing images


Modified: trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml (289682 => 289683)

--- trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml	2022-02-12 01:15:31 UTC (rev 289682)
+++ trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml	2022-02-12 01:35:41 UTC (rev 289683)
@@ -976,9 +976,9 @@
 WebKitLegacy:
   default: false
 WebKit:
-  default: false
+  default: true
 WebCore:
-  default: false
+  default: true
 
 PageAtRuleSupportEnabled:
   type: bool






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [289599] trunk

2022-02-10 Thread nmouchtaris
Title: [289599] trunk








Revision 289599
Author nmouchta...@apple.com
Date 2022-02-10 18:27:02 -0800 (Thu, 10 Feb 2022)


Log Message
Web animations- Composite operation accumulation support for transform properties
https://bugs.webkit.org/show_bug.cgi?id=236116

Reviewed by Simon Fraser.

LayoutTests/imported/w3c:

* web-platform-tests/css/css-transforms/animation/transform-matrix-composition-expected.txt:
* web-platform-tests/css/css-transforms/animation/transform-rotate-composition-expected.txt:
* web-platform-tests/css/css-transforms/animation/transform-skew-composition-expected.txt:
* web-platform-tests/css/css-transforms/animation/transform-translate-composition-expected.txt:
* web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt:
* web-platform-tests/web-animations/animation-model/combining-effects/effect-composition-expected.txt:

Source/WebCore:

This patch brings further support for accumulation on transform properties. The main aspect being addressed
is handling accumulation of TransformationMatrices. This involves accumulating on the decomposed functions,
which occurs in blendFloat() and accumulateQuaternion(). Since we need to perform accumulation for one-based
values on certain decomposed functions, (scale, diagonals of matrices, etc), we set the operation to accumulate
only for these cases.

A couple of bugs introduced by this additional support are also addressed. For a property with a
different transform operation than the keyframes given, transformFunctionListsMatch() would return
true when it shouldn't. Addressed by checking in blendByMatchingOperations and falling back on matrix
interpolation. Another bug is that we need to pass the composite operation to TransformationMatrix blend().
Another bug is that we should to use Replace behavior if either of the transform matrices are
non-invertible.

* animation/CSSPropertyAnimation.cpp:
(WebCore::blendFunc):
* platform/graphics/transforms/Matrix3DTransformOperation.cpp:
(WebCore::createOperation):
* platform/graphics/transforms/MatrixTransformOperation.cpp:
(WebCore::MatrixTransformOperation::blend):
* platform/graphics/transforms/RotateTransformOperation.cpp:
(WebCore::RotateTransformOperation::blend):
* platform/graphics/transforms/TransformOperations.cpp:
(WebCore::TransformOperations::blendByMatchingOperations const):
(WebCore::TransformOperations::blendByUsingMatrixInterpolation const):
(WebCore::TransformOperations::blend const):
* platform/graphics/transforms/TransformOperations.h:
(WebCore::TransformOperations::isInvertible const):
* platform/graphics/transforms/TransformationMatrix.cpp:
(WebCore::blendFloat):
(WebCore::TransformationMatrix::blend2):
(WebCore::accumulateQuaternion):
(WebCore::TransformationMatrix::blend4):
(WebCore::TransformationMatrix::blend):

Modified Paths

trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-matrix-composition-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-rotate-composition-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-skew-composition-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-translate-composition-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/combining-effects/effect-composition-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp
trunk/Source/WebCore/platform/graphics/transforms/Matrix3DTransformOperation.cpp
trunk/Source/WebCore/platform/graphics/transforms/MatrixTransformOperation.cpp
trunk/Source/WebCore/platform/graphics/transforms/RotateTransformOperation.cpp
trunk/Source/WebCore/platform/graphics/transforms/TransformOperations.cpp
trunk/Source/WebCore/platform/graphics/transforms/TransformOperations.h
trunk/Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp




Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (289598 => 289599)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2022-02-11 02:03:18 UTC (rev 289598)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2022-02-11 02:27:02 UTC (rev 289599)
@@ -1,3 +1,17 @@
+2022-02-10  Nikolaos Mouchtaris  
+
+Web animations- Composite operation accumulation support for transform properties
+https://bugs.webkit.org/show_bug.cgi?id=236116
+
+Reviewed by Simon Fraser.
+
+* web-platform-tests/css/css-transforms/animation/transform-matrix-composition-expected.txt:
+* web-platform-tests/css/css-transforms/animation/transform-rotate-composition-expected.txt:
+* web-platform-tests/css/css-transforms/animation/transform-skew-composition-expected.txt:
+   

[webkit-changes] [289074] trunk

2022-02-03 Thread nmouchtaris
Title: [289074] trunk








Revision 289074
Author nmouchta...@apple.com
Date 2022-02-03 13:32:43 -0800 (Thu, 03 Feb 2022)


Log Message
Implement CSS overscroll-behavior for synchronous scroll
https://bugs.webkit.org/show_bug.cgi?id=222968

Reviewed by Simon Fraser.

Source/WebCore:

Tests: fast/scrolling/sync-scroll-overscroll-behavior-element.html
   fast/scrolling/sync-scroll-overscroll-behavior-iframe.html
   fast/scrolling/sync-scroll-overscroll-behavior-unscrollable-element.html
   fast/scrolling/sync-scroll-overscroll-behavior-unscrollable-iframe.html

Split up patch by Cathie Chen and Frederic Wang. Add function for blocking scroll chaining
and filtering scroll delta depending on the values of overscroll behavior for a scrollable
area. This patch is for synchronous scrolling only.

* page/EventHandler.cpp:
(WebCore::EventHandler::handleWheelEventInternal):
(WebCore::scrollViaNonPlatformEvent):
(WebCore::EventHandler::handleWheelEventInAppropriateEnclosingBox):
(WebCore::EventHandler::scrollableAreaCanHandleEvent):
* page/EventHandler.h:
* page/mac/EventHandlerMac.mm:
(WebCore::findEnclosingScrollableContainer):
* page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::eventForPropagation const):
* platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::deltaForPropagation const):
(WebCore::ScrollableArea::shouldBlockScrollPropagation const):
* platform/ScrollableArea.h:
(WebCore::ScrollableArea::horizontalOverscrollBehaviorPreventsPropagation const):
(WebCore::ScrollableArea::verticalOverscrollBehaviorPreventsPropagation const):
* platform/ScrollingEffectsController.h:
* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::allowsVerticalStretching const):
(WebCore::ScrollAnimatorMac::allowsHorizontalStretching const):
* platform/mac/ScrollingEffectsController.mm:
(WebCore::ScrollingEffectsController::wheelDeltaBiasingTowardsVertical):

LayoutTests:

* fast/scrolling/sync-scroll-overscroll-behavior-element-expected.txt: Added.
* fast/scrolling/sync-scroll-overscroll-behavior-element.html: Added.
* fast/scrolling/sync-scroll-overscroll-behavior-iframe-expected.txt: Added.
* fast/scrolling/sync-scroll-overscroll-behavior-iframe.html: Added.
* fast/scrolling/sync-scroll-overscroll-behavior-unscrollable-element-expected.txt: Added.
* fast/scrolling/sync-scroll-overscroll-behavior-unscrollable-element.html: Added.
* fast/scrolling/sync-scroll-overscroll-behavior-unscrollable-iframe-expected.txt: Added.
* fast/scrolling/sync-scroll-overscroll-behavior-unscrollable-iframe.html: Added.
* platform/mac-wk1/TestExpectations:
* platform/win/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/ios/TestExpectations
trunk/LayoutTests/platform/mac-wk1/TestExpectations
trunk/LayoutTests/platform/win/TestExpectations
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/EventHandler.cpp
trunk/Source/WebCore/page/EventHandler.h
trunk/Source/WebCore/page/mac/EventHandlerMac.mm
trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp
trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h
trunk/Source/WebCore/platform/ScrollableArea.cpp
trunk/Source/WebCore/platform/ScrollableArea.h
trunk/Source/WebCore/platform/ScrollingEffectsController.h
trunk/Source/WebCore/platform/mac/ScrollAnimatorMac.mm
trunk/Source/WebCore/platform/mac/ScrollingEffectsController.mm


Added Paths

trunk/LayoutTests/fast/scrolling/sync-scroll-overscroll-behavior-element-expected.txt
trunk/LayoutTests/fast/scrolling/sync-scroll-overscroll-behavior-element.html
trunk/LayoutTests/fast/scrolling/sync-scroll-overscroll-behavior-iframe-expected.txt
trunk/LayoutTests/fast/scrolling/sync-scroll-overscroll-behavior-iframe.html
trunk/LayoutTests/fast/scrolling/sync-scroll-overscroll-behavior-unscrollable-element-expected.txt
trunk/LayoutTests/fast/scrolling/sync-scroll-overscroll-behavior-unscrollable-element.html
trunk/LayoutTests/fast/scrolling/sync-scroll-overscroll-behavior-unscrollable-iframe-expected.txt
trunk/LayoutTests/fast/scrolling/sync-scroll-overscroll-behavior-unscrollable-iframe.html




Diff

Modified: trunk/LayoutTests/ChangeLog (289073 => 289074)

--- trunk/LayoutTests/ChangeLog	2022-02-03 21:30:22 UTC (rev 289073)
+++ trunk/LayoutTests/ChangeLog	2022-02-03 21:32:43 UTC (rev 289074)
@@ -1,3 +1,21 @@
+2022-02-03  Nikolaos Mouchtaris  
+
+Implement CSS overscroll-behavior for synchronous scroll
+https://bugs.webkit.org/show_bug.cgi?id=222968
+
+Reviewed by Simon Fraser.
+
+* fast/scrolling/sync-scroll-overscroll-behavior-element-expected.txt: Added.
+* fast/scrolling/sync-scroll-overscroll-behavior-element.html: Added.
+* fast/scrolling/sync-scroll-overscroll-behavior-iframe-expected.txt: Added.
+* fast/scrolling/sync-scroll-overscroll-behavior-iframe.html: Added.
+* fast/scrolling/sync-scroll-overscroll-behavior-unscrollable-element-expected.txt: Added.
+* 

[webkit-changes] [288782] trunk/Source/WebKit

2022-01-28 Thread nmouchtaris
Title: [288782] trunk/Source/WebKit








Revision 288782
Author nmouchta...@apple.com
Date 2022-01-28 20:22:39 -0800 (Fri, 28 Jan 2022)


Log Message
Implement CSS overscroll-behavior for iOS
https://bugs.webkit.org/show_bug.cgi?id=233788

Reviewed by Simon Fraser.

Add setting of ScrollView parameters based on overscroll-behavior values.

* UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm:
(WebKit::ScrollingTreeScrollingNodeDelegateIOS::commitStateAfterChildren):

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (288781 => 288782)

--- trunk/Source/WebKit/ChangeLog	2022-01-29 03:29:55 UTC (rev 288781)
+++ trunk/Source/WebKit/ChangeLog	2022-01-29 04:22:39 UTC (rev 288782)
@@ -1,3 +1,15 @@
+2022-01-28  Nikolaos Mouchtaris  
+
+Implement CSS overscroll-behavior for iOS
+https://bugs.webkit.org/show_bug.cgi?id=233788
+
+Reviewed by Simon Fraser.
+
+Add setting of ScrollView parameters based on overscroll-behavior values.
+
+* UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm:
+(WebKit::ScrollingTreeScrollingNodeDelegateIOS::commitStateAfterChildren):
+
 2022-01-28  Per Arne Vollan  
 
 [macOS][WP] Temporarily add syscall to sandbox


Modified: trunk/Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm (288781 => 288782)

--- trunk/Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm	2022-01-29 03:29:55 UTC (rev 288781)
+++ trunk/Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm	2022-01-29 04:22:39 UTC (rev 288782)
@@ -230,7 +230,8 @@
 || scrollingStateNode.hasChangedProperty(ScrollingStateNode::Property::TotalContentsSize)
 || scrollingStateNode.hasChangedProperty(ScrollingStateNode::Property::ReachableContentsSize)
 || scrollingStateNode.hasChangedProperty(ScrollingStateNode::Property::ScrollPosition)
-|| scrollingStateNode.hasChangedProperty(ScrollingStateNode::Property::ScrollOrigin)) {
+|| scrollingStateNode.hasChangedProperty(ScrollingStateNode::Property::ScrollOrigin)
+|| scrollingStateNode.hasChangedProperty(ScrollingStateNode::Property::ScrollableAreaParams)) {
 BEGIN_BLOCK_OBJC_EXCEPTIONS
 UIScrollView *scrollView = this->scrollView();
 if (scrollingStateNode.hasChangedProperty(ScrollingStateNode::Property::ScrollContainerLayer)) {
@@ -251,7 +252,15 @@
 scrollView.contentSize = scrollingStateNode.reachableContentsSize();
 recomputeInsets = true;
 }
-
+#if HAVE(UIKIT_OVERSCROLL_BEHAVIOR_SUPPORT)
+if (scrollingStateNode.hasChangedProperty(ScrollingStateNode::Property::ScrollableAreaParams)) {
+auto params = scrollingStateNode.scrollableAreaParameters();
+scrollView.bouncesHorizontally = params.horizontalOverscrollBehavior != OverscrollBehavior::None;
+scrollView.bouncesVertically = params.verticalOverscrollBehavior != OverscrollBehavior::None;
+scrollView._allowsParentToBeginHorizontally = params.horizontalOverscrollBehavior == OverscrollBehavior::Auto;
+scrollView._allowsParentToBeginVertically = params.verticalOverscrollBehavior == OverscrollBehavior::Auto;
+}
+#endif
 if (scrollingStateNode.hasChangedProperty(ScrollingStateNode::Property::ScrollOrigin))
 recomputeInsets = true;
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [288777] trunk

2022-01-28 Thread nmouchtaris
Title: [288777] trunk








Revision 288777
Author nmouchta...@apple.com
Date 2022-01-28 18:56:40 -0800 (Fri, 28 Jan 2022)


Log Message
Implement CSS overscroll-behavior for asynchronous scroll on Mac
https://bugs.webkit.org/show_bug.cgi?id=220139

Reviewed by Simon Fraser.

Source/WebCore:

Split up patch by Cathie Chen and Frederic Wang. Add function for blocking scroll chaining
and filtering scroll delta depending on the values of overscroll behavior for a scrolling
node. This patch is for asynchronous scrolling only.

Tests: fast/scrolling/mac/async-overscroll-behavior-element.html
   fast/scrolling/mac/async-overscroll-behavior-iframe.html
   fast/scrolling/mac/async-overscroll-behavior-unscrollable-element.html
   fast/scrolling/mac/async-overscroll-behavior-unscrollable-iframe.html

* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::shouldBlockScrollChainingWithNode):
(WebCore::ScrollingTree::handleWheelEventWithNode):
* page/scrolling/ScrollingTree.h:
* page/scrolling/ScrollingTreeScrollingNode.h:
* page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm:
(WebCore::ScrollingTreeScrollingNodeDelegateMac::allowsHorizontalStretching const):
(WebCore::ScrollingTreeScrollingNodeDelegateMac::allowsVerticalStretching const):
* rendering/RenderLayerCompositor.cpp:
(WebCore::recompositeChangeRequiresGeometryUpdate):
(WebCore::RenderLayerCompositor::rootOrBodyStyleChanged):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::changeRequiresRecompositeLayer const):

LayoutTests:

* fast/scrolling/mac/async-overscroll-behavior-element-expected.txt: Added.
* fast/scrolling/mac/async-overscroll-behavior-element.html: Added.
* fast/scrolling/mac/async-overscroll-behavior-iframe-expected.txt: Added.
* fast/scrolling/mac/async-overscroll-behavior-iframe.html: Added.
* fast/scrolling/mac/async-overscroll-behavior-unscrollable-element-expected.txt: Added.
* fast/scrolling/mac/async-overscroll-behavior-unscrollable-element.html: Added.
* fast/scrolling/mac/async-overscroll-behavior-unscrollable-iframe-expected.txt: Added.
* fast/scrolling/mac/async-overscroll-behavior-unscrollable-iframe.html: Added.
* fast/scrolling/resources/overscroll-behavior-support.js: Added.
(getDeltas):
(async mouseWheelScrollAndWait):

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp
trunk/Source/WebCore/page/scrolling/ScrollingTree.cpp
trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp
trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h
trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp
trunk/Source/WebCore/rendering/style/RenderStyle.cpp


Added Paths

trunk/LayoutTests/fast/scrolling/mac/async-overscroll-behavior-element-expected.txt
trunk/LayoutTests/fast/scrolling/mac/async-overscroll-behavior-element.html
trunk/LayoutTests/fast/scrolling/mac/async-overscroll-behavior-iframe-expected.txt
trunk/LayoutTests/fast/scrolling/mac/async-overscroll-behavior-iframe.html
trunk/LayoutTests/fast/scrolling/mac/async-overscroll-behavior-unscrollable-element-expected.txt
trunk/LayoutTests/fast/scrolling/mac/async-overscroll-behavior-unscrollable-element.html
trunk/LayoutTests/fast/scrolling/mac/async-overscroll-behavior-unscrollable-iframe-expected.txt
trunk/LayoutTests/fast/scrolling/mac/async-overscroll-behavior-unscrollable-iframe.html
trunk/LayoutTests/fast/scrolling/resources/overscroll-behavior-support.js




Diff

Modified: trunk/LayoutTests/ChangeLog (288776 => 288777)

--- trunk/LayoutTests/ChangeLog	2022-01-29 02:42:21 UTC (rev 288776)
+++ trunk/LayoutTests/ChangeLog	2022-01-29 02:56:40 UTC (rev 288777)
@@ -1,3 +1,22 @@
+2022-01-28  Nikolaos Mouchtaris  
+
+Implement CSS overscroll-behavior for asynchronous scroll on Mac
+https://bugs.webkit.org/show_bug.cgi?id=220139
+
+Reviewed by Simon Fraser.
+
+* fast/scrolling/mac/async-overscroll-behavior-element-expected.txt: Added.
+* fast/scrolling/mac/async-overscroll-behavior-element.html: Added.
+* fast/scrolling/mac/async-overscroll-behavior-iframe-expected.txt: Added.
+* fast/scrolling/mac/async-overscroll-behavior-iframe.html: Added.
+* fast/scrolling/mac/async-overscroll-behavior-unscrollable-element-expected.txt: Added.
+* fast/scrolling/mac/async-overscroll-behavior-unscrollable-element.html: Added.
+* fast/scrolling/mac/async-overscroll-behavior-unscrollable-iframe-expected.txt: Added.
+* fast/scrolling/mac/async-overscroll-behavior-unscrollable-iframe.html: Added.
+* fast/scrolling/resources/overscroll-behavior-support.js: Added.
+(getDeltas):
+(async mouseWheelScrollAndWait):
+
 2022-01-28  Robert Jenner  
 
 [ BigSur+ Release wk1 arm64 ] Bots are flaky exiting testing after 500 layout-test failures (235733)


Added: trunk/LayoutTests/fast/scrolling/mac/async-overscroll-behavior-element-expected.txt (0 => 

[webkit-changes] [285904] trunk/Source

2021-11-16 Thread nmouchtaris
Title: [285904] trunk/Source








Revision 285904
Author nmouchta...@apple.com
Date 2021-11-16 17:26:57 -0800 (Tue, 16 Nov 2021)


Log Message
Rename TextDecoration to TextDecorationLine
https://bugs.webkit.org/show_bug.cgi?id=232729

Reviewed by Myles C. Maxfield.

Source/WebCore:

Split up patch by Tim Nguyen: https://bugs.webkit.org/show_bug.cgi?id=230083. This patch
renames enum TextDecoration to TextDecorationLine, to be more in line with the current spec.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::hasUnderline const):
* accessibility/atk/WebKitAccessibleInterfaceText.cpp:
(getAttributeSetForAccessibilityObject):
* accessibility/mac/WebAccessibilityObjectWrapperBase.mm:
(AXAttributeStringSetStyle):
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(AXAttributeStringSetStyle):
* animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::renderTextDecorationLineFlagsToCSSValue):
(WebCore::ComputedStyleExtractor::valueForPropertyInStyle):
(WebCore::renderTextDecorationFlagsToCSSValue): Deleted.
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::operator OptionSet const):
(WebCore::CSSPrimitiveValue::operator OptionSet const): Deleted.
* editing/Editor.cpp:
(WebCore::Editor::fontAttributesAtSelectionStart):
* editing/cocoa/HTMLConverter.mm:
(WebCore::editingAttributedString):
* rendering/StyledMarkedText.cpp:
(WebCore::resolveStyleForMarkedText):
* rendering/TextDecorationPainter.cpp:
(WebCore::TextDecorationPainter::TextDecorationPainter):
(WebCore::TextDecorationPainter::paintTextDecoration):
(WebCore::collectStylesForRenderer):
(WebCore::TextDecorationPainter::textDecorationsInEffectForStyle):
(WebCore::TextDecorationPainter::stylesForRenderer):
* rendering/TextDecorationPainter.h:
* rendering/style/RenderStyle.h:
(WebCore::RenderStyle::textDecorationsInEffect const):
(WebCore::RenderStyle::textDecoration const):
(WebCore::RenderStyle::addToTextDecorationsInEffect):
(WebCore::RenderStyle::setTextDecorationsInEffect):
(WebCore::RenderStyle::setTextDecoration):
(WebCore::RenderStyle::initialTextDecoration):
* rendering/style/RenderStyleConstants.cpp:
(WebCore::operator<<):
* rendering/style/RenderStyleConstants.h:
* rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::paint):
(WebCore::positionOffsetForDecoration):
(WebCore::thicknessForDecoration):
(WebCore::SVGInlineTextBox::paintDecoration):
(WebCore::SVGInlineTextBox::paintDecorationWithStyle):
* rendering/svg/SVGInlineTextBox.h:
* style/InlineTextBoxStyle.cpp:
(WebCore::minLogicalTopForTextDecorationLine):
(WebCore::maxLogicalBottomForTextDecorationLine):
(WebCore::enclosingRendererWithTextDecoration):
(WebCore::computeUnderlineOffset):
(WebCore::visualOverflowForDecorations):
* style/StyleBuilderConverter.h:
(WebCore::Style::BuilderConverter::convertTextDecoration):

Source/WebKitLegacy/mac:

* WebView/WebView.mm:
(-[WebView updateTextTouchBar]):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/accessibility/AccessibilityRenderObject.cpp
trunk/Source/WebCore/accessibility/atk/WebKitAccessibleInterfaceText.cpp
trunk/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.mm
trunk/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm
trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp
trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp
trunk/Source/WebCore/css/CSSPrimitiveValueMappings.h
trunk/Source/WebCore/editing/Editor.cpp
trunk/Source/WebCore/editing/cocoa/HTMLConverter.mm
trunk/Source/WebCore/rendering/StyledMarkedText.cpp
trunk/Source/WebCore/rendering/TextDecorationPainter.cpp
trunk/Source/WebCore/rendering/TextDecorationPainter.h
trunk/Source/WebCore/rendering/style/RenderStyle.h
trunk/Source/WebCore/rendering/style/RenderStyleConstants.cpp
trunk/Source/WebCore/rendering/style/RenderStyleConstants.h
trunk/Source/WebCore/rendering/svg/SVGInlineTextBox.cpp
trunk/Source/WebCore/rendering/svg/SVGInlineTextBox.h
trunk/Source/WebCore/style/InlineTextBoxStyle.cpp
trunk/Source/WebCore/style/StyleBuilderConverter.h
trunk/Source/WebKitLegacy/mac/ChangeLog
trunk/Source/WebKitLegacy/mac/WebView/WebView.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (285903 => 285904)

--- trunk/Source/WebCore/ChangeLog	2021-11-17 01:08:34 UTC (rev 285903)
+++ trunk/Source/WebCore/ChangeLog	2021-11-17 01:26:57 UTC (rev 285904)
@@ -1,3 +1,69 @@
+2021-11-16  Nikolaos Mouchtaris  
+
+Rename TextDecoration to TextDecorationLine
+https://bugs.webkit.org/show_bug.cgi?id=232729
+
+Reviewed by Myles C. Maxfield.
+
+Split up patch by Tim Nguyen: https://bugs.webkit.org/show_bug.cgi?id=230083. This patch
+renames enum TextDecoration to TextDecorationLine, to be more in line with the current spec.
+
+* accessibility/AccessibilityRenderObject.cpp:
+

[webkit-changes] [285893] trunk/Source

2021-11-16 Thread nmouchtaris
Title: [285893] trunk/Source








Revision 285893
Author nmouchta...@apple.com
Date 2021-11-16 15:53:48 -0800 (Tue, 16 Nov 2021)


Log Message
Add overscroll behavior to ScrollableAreaParameters
https://bugs.webkit.org/show_bug.cgi?id=233159

Reviewed by Simon Fraser.

Source/WebCore:

Split patch by Cathie Chen and Frederic Wang. This patch lands the addition of
horizontalOverscrollBehavior and verticalOverscrollBehavior to ScrollableAreaParameters
to track value of over scroll behavior for particular scroll node. Patches for synchronous/
asynchronous scrolling on Mac and on iOS to come.

* page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::setScrollingNodeScrollableAreaGeometry):
* page/scrolling/ScrollingCoordinatorTypes.h:
(WebCore::ScrollableAreaParameters::operator== const):
* page/scrolling/ScrollingTreeScrollingNode.h:
* platform/ScrollableArea.h:
(WebCore::ScrollableArea::horizontalOverscrollBehavior const):
(WebCore::ScrollableArea::verticalOverscrollBehavior const):
* rendering/RenderLayerScrollableArea.cpp:
(WebCore::RenderLayerScrollableArea::horizontalOverscrollBehavior const):
(WebCore::RenderLayerScrollableArea::verticalOverscrollBehavior const):
* rendering/RenderLayerScrollableArea.h:

Source/WebKit:

* Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder::encode):
(IPC::ArgumentCoder::decode):
* Shared/WebCoreArgumentCoders.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/FrameView.cpp
trunk/Source/WebCore/page/FrameView.h
trunk/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp
trunk/Source/WebCore/page/scrolling/ScrollingCoordinatorTypes.h
trunk/Source/WebCore/platform/ScrollableArea.h
trunk/Source/WebCore/rendering/RenderLayerScrollableArea.cpp
trunk/Source/WebCore/rendering/RenderLayerScrollableArea.h
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Shared/WebCoreArgumentCoders.cpp
trunk/Source/WebKit/Shared/WebCoreArgumentCoders.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (285892 => 285893)

--- trunk/Source/WebCore/ChangeLog	2021-11-16 22:58:57 UTC (rev 285892)
+++ trunk/Source/WebCore/ChangeLog	2021-11-16 23:53:48 UTC (rev 285893)
@@ -1,3 +1,28 @@
+2021-11-16  Nikolaos Mouchtaris  
+
+Add overscroll behavior to ScrollableAreaParameters
+https://bugs.webkit.org/show_bug.cgi?id=233159
+
+Reviewed by Simon Fraser.
+
+Split patch by Cathie Chen and Frederic Wang. This patch lands the addition of 
+horizontalOverscrollBehavior and verticalOverscrollBehavior to ScrollableAreaParameters
+to track value of over scroll behavior for particular scroll node. Patches for synchronous/
+asynchronous scrolling on Mac and on iOS to come.
+
+* page/scrolling/AsyncScrollingCoordinator.cpp:
+(WebCore::AsyncScrollingCoordinator::setScrollingNodeScrollableAreaGeometry):
+* page/scrolling/ScrollingCoordinatorTypes.h:
+(WebCore::ScrollableAreaParameters::operator== const):
+* page/scrolling/ScrollingTreeScrollingNode.h:
+* platform/ScrollableArea.h:
+(WebCore::ScrollableArea::horizontalOverscrollBehavior const):
+(WebCore::ScrollableArea::verticalOverscrollBehavior const):
+* rendering/RenderLayerScrollableArea.cpp:
+(WebCore::RenderLayerScrollableArea::horizontalOverscrollBehavior const):
+(WebCore::RenderLayerScrollableArea::verticalOverscrollBehavior const):
+* rendering/RenderLayerScrollableArea.h:
+
 2021-11-16  Rob Buis  
 
 [css-contain] Support contain:paint


Modified: trunk/Source/WebCore/page/FrameView.cpp (285892 => 285893)

--- trunk/Source/WebCore/page/FrameView.cpp	2021-11-16 22:58:57 UTC (rev 285892)
+++ trunk/Source/WebCore/page/FrameView.cpp	2021-11-16 23:53:48 UTC (rev 285893)
@@ -5739,6 +5739,24 @@
 verticalScrollbar()->setSteps(Scrollbar::pixelsPerLineStep(), pageStep);
 }
 }
+
+OverscrollBehavior FrameView::horizontalOverscrollBehavior() const
+{
+auto* document = frame().document();
+auto scrollingObject = document && document->documentElement() ? document->documentElement()->renderer() : nullptr;
+if (scrollingObject && renderView() && renderView()->canBeScrolledAndHasScrollableArea())
+return scrollingObject->style().overscrollBehaviorX();
+return OverscrollBehavior::Auto;
+}
+
+OverscrollBehavior FrameView::verticalOverscrollBehavior()  const
+{
+auto* document = frame().document();
+auto scrollingObject = document && document->documentElement() ? document->documentElement()->renderer() : nullptr;
+if (scrollingObject && renderView() && renderView()->canBeScrolledAndHasScrollableArea())
+return scrollingObject->style().overscrollBehaviorY();
+return OverscrollBehavior::Auto;
+}
 } // namespace WebCore
 
 #undef PAGE_ID


Modified: trunk/Source/WebCore/page/FrameView.h (285892 => 285893)

--- trunk/Source/WebCore/page/FrameView.h	2021-11-16 22:58:57 UTC (rev 285892)
+++ 

[webkit-changes] [285669] trunk

2021-11-11 Thread nmouchtaris
Title: [285669] trunk








Revision 285669
Author nmouchta...@apple.com
Date 2021-11-11 14:41:39 -0800 (Thu, 11 Nov 2021)


Log Message
REGRESSION: (r283871) [ macOS wk2 Release ] 2 css/cssom-view/scroll-behavior-main-frame tests are failing
https://bugs.webkit.org/show_bug.cgi?id=231600

Reviewed by Simon Fraser.

Source/WebCore:

Fix for issue where a scroll animation is not properly cancelled by a second scroll request.
This occurs when the first scroll animation has not been fully started by the time the second
request has been received by the scrolling thread (first animation still in
m_nodesWithPendingScrollAnimations). For the scenario where the second scroll request is animated,
we change ThreadedScrollingTree::scrollingTreeNodeRequestsScroll to use set (add is ignored if
key exists in the hash map which caused the second request to be ignored). For the scenario
where the second scroll request is not animated, we clear the pending request for that
scrolling node (if one exists).

* page/scrolling/ScrollingTree.h:
(WebCore::ScrollingTree::removePendingScrollAnimationForNode):
* page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::handleScrollPositionRequest):
* page/scrolling/ThreadedScrollingTree.cpp:
(WebCore::ThreadedScrollingTree::scrollingTreeNodeRequestsScroll):
(WebCore::ThreadedScrollingTree::removePendingScrollAnimationForNode):
* page/scrolling/ThreadedScrollingTree.h:

LayoutTests:

* platform/mac-wk2/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/mac-wk2/TestExpectations
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/scrolling/ScrollingTree.h
trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp
trunk/Source/WebCore/page/scrolling/ThreadedScrollingTree.cpp
trunk/Source/WebCore/page/scrolling/ThreadedScrollingTree.h




Diff

Modified: trunk/LayoutTests/ChangeLog (285668 => 285669)

--- trunk/LayoutTests/ChangeLog	2021-11-11 22:40:57 UTC (rev 285668)
+++ trunk/LayoutTests/ChangeLog	2021-11-11 22:41:39 UTC (rev 285669)
@@ -1,3 +1,12 @@
+2021-11-11  Nikolaos Mouchtaris  
+
+REGRESSION: (r283871) [ macOS wk2 Release ] 2 css/cssom-view/scroll-behavior-main-frame tests are failing
+https://bugs.webkit.org/show_bug.cgi?id=231600
+
+Reviewed by Simon Fraser.
+
+* platform/mac-wk2/TestExpectations:
+
 2021-11-11  Ryan Haddad  
 
 REGRESSION (r285618): [mac-wk1] ASSERTION FAILED: cgContext == [currentContext CGContext]


Modified: trunk/LayoutTests/platform/mac-wk2/TestExpectations (285668 => 285669)

--- trunk/LayoutTests/platform/mac-wk2/TestExpectations	2021-11-11 22:40:57 UTC (rev 285668)
+++ trunk/LayoutTests/platform/mac-wk2/TestExpectations	2021-11-11 22:41:39 UTC (rev 285669)
@@ -1679,9 +1679,6 @@
 
 webkit.org/b/231386 [ BigSur ] http/tests/resourceLoadStatistics/website-data-removal-for-site-with-user-interaction.html [ Pass Timeout ]
 
-webkit.org/b/231600 [ Release ] imported/w3c/web-platform-tests/css/cssom-view/scroll-behavior-main-frame-window.html [ Pass Failure ]
-webkit.org/b/231600 [ Release ] imported/w3c/web-platform-tests/css/cssom-view/scroll-behavior-main-frame-root.html [ Failure ]
-
 webkit.org/b/231765 [ Release ] http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration.html [ Pass Timeout ]
 
 webkit.org/b/231780 [ Debug ] imported/w3c/web-platform-tests/webrtc/simulcast/basic.https.html [ Pass Failure ]


Modified: trunk/Source/WebCore/ChangeLog (285668 => 285669)

--- trunk/Source/WebCore/ChangeLog	2021-11-11 22:40:57 UTC (rev 285668)
+++ trunk/Source/WebCore/ChangeLog	2021-11-11 22:41:39 UTC (rev 285669)
@@ -1,3 +1,28 @@
+2021-11-11  Nikolaos Mouchtaris  
+
+REGRESSION: (r283871) [ macOS wk2 Release ] 2 css/cssom-view/scroll-behavior-main-frame tests are failing
+https://bugs.webkit.org/show_bug.cgi?id=231600
+
+Reviewed by Simon Fraser.
+
+Fix for issue where a scroll animation is not properly cancelled by a second scroll request.
+This occurs when the first scroll animation has not been fully started by the time the second
+request has been received by the scrolling thread (first animation still in 
+m_nodesWithPendingScrollAnimations). For the scenario where the second scroll request is animated, 
+we change ThreadedScrollingTree::scrollingTreeNodeRequestsScroll to use set (add is ignored if
+key exists in the hash map which caused the second request to be ignored). For the scenario 
+where the second scroll request is not animated, we clear the pending request for that 
+scrolling node (if one exists).
+
+* page/scrolling/ScrollingTree.h:
+(WebCore::ScrollingTree::removePendingScrollAnimationForNode):
+* page/scrolling/ScrollingTreeScrollingNode.cpp:
+(WebCore::ScrollingTreeScrollingNode::handleScrollPositionRequest):
+* 

[webkit-changes] [285640] trunk/Source

2021-11-11 Thread nmouchtaris
Title: [285640] trunk/Source








Revision 285640
Author nmouchta...@apple.com
Date 2021-11-11 10:31:29 -0800 (Thu, 11 Nov 2021)


Log Message
Make scroll granularity an enum class
https://bugs.webkit.org/show_bug.cgi?id=232641

Reviewed by Cameron McCormack.

Source/WebCore:

* dom/Element.cpp:
(WebCore::Element::scrollByLines):
(WebCore::Element::scrollByPages):
* editing/EditorCommand.cpp:
(WebCore::executeScrollPageBackward):
(WebCore::executeScrollPageForward):
(WebCore::executeScrollLineUp):
(WebCore::executeScrollLineDown):
(WebCore::executeScrollToBeginningOfDocument):
(WebCore::executeScrollToEndOfDocument):
* page/EventHandler.cpp:
(WebCore::wheelGranularityToScrollGranularity):
(WebCore::EventHandler::logicalScrollRecursively):
(WebCore::EventHandler::defaultSpaceEventHandler):
(WebCore::EventHandler::scrollDistance):
* page/FrameView.cpp:
(WebCore::FrameView::adjustScrollStepForFixedContent):
* platform/KeyboardScrollingAnimator.cpp:
(WebCore::KeyboardScrollingAnimator::scrollDistance const):
(WebCore::KeyboardScrollingAnimator::keyboardScrollForKeyboardEvent const):
(WebCore::KeyboardScrollingAnimator::beginKeyboardScrollGesture):
* platform/ScrollAnimator.cpp:
(WebCore::ScrollAnimator::handleWheelEvent):
* platform/ScrollTypes.h:
* platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::scroll):
* platform/Scrollbar.cpp:
(WebCore::Scrollbar::pressedPartScrollGranularity):
* platform/ios/ScrollAnimatorIOS.mm:
(WebCore::ScrollAnimatorIOS::handleTouchEvent):
* platform/win/PopupMenuWin.cpp:
(WebCore::PopupMenuWin::wndProc):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::logicalScroll):

Source/WebKit:

* Scripts/webkit/messages.py:
(headers_for_type):
* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView keyboardScrollViewAnimator:distanceForIncrement:inDirection:]):
* UIProcess/ios/WKKeyboardScrollingAnimator.mm:
(-[WKKeyboardScrollingAnimator keyboardScrollForEvent:]):
(-[WKKeyboardScrollingAnimator beginWithEvent:]):
(-[WKKeyboardScrollViewAnimator distanceForIncrement:inDirection:]):
* UIProcess/win/WebPopupMenuProxyWin.cpp:
(WebKit::WebPopupMenuProxyWin::onMouseWheel):
* UIProcess/win/WebView.cpp:
(WebKit::WebView::onHorizontalScroll):
(WebKit::WebView::onVerticalScroll):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::scrollBy):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:
* WebProcess/WebPage/gtk/WebPageGtk.cpp:
(WebKit::WebPage::performDefaultBehaviorForKeyEvent):
* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::performNonEditingBehaviorForSelector):
* WebProcess/WebPage/win/WebPageWin.cpp:
(WebKit::WebPage::performDefaultBehaviorForKeyEvent):

Source/WebKitLegacy/mac:

* WebView/WebFrameView.mm:
(-[WebFrameView _scrollToBeginningOfDocument]):
(-[WebFrameView _scrollToEndOfDocument]):
(-[WebFrameView _pageVertically:]):
(-[WebFrameView _pageHorizontally:]):
(-[WebFrameView _scrollLineVertically:]):
(-[WebFrameView _scrollLineHorizontally:]):

Source/WebKitLegacy/win:

* WebView.cpp:
(WebView::verticalScroll):
(WebView::horizontalScroll):
(WebView::keyDown):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/Element.cpp
trunk/Source/WebCore/editing/EditorCommand.cpp
trunk/Source/WebCore/page/EventHandler.cpp
trunk/Source/WebCore/page/FrameView.cpp
trunk/Source/WebCore/platform/KeyboardScrollingAnimator.cpp
trunk/Source/WebCore/platform/ScrollAnimator.cpp
trunk/Source/WebCore/platform/ScrollTypes.h
trunk/Source/WebCore/platform/ScrollableArea.cpp
trunk/Source/WebCore/platform/Scrollbar.cpp
trunk/Source/WebCore/platform/ios/ScrollAnimatorIOS.mm
trunk/Source/WebCore/platform/win/PopupMenuWin.cpp
trunk/Source/WebCore/rendering/RenderBox.cpp
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Scripts/webkit/messages.py
trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm
trunk/Source/WebKit/UIProcess/ios/WKKeyboardScrollingAnimator.mm
trunk/Source/WebKit/UIProcess/win/WebPopupMenuProxyWin.cpp
trunk/Source/WebKit/UIProcess/win/WebView.cpp
trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp
trunk/Source/WebKit/WebProcess/WebPage/WebPage.h
trunk/Source/WebKit/WebProcess/WebPage/WebPage.messages.in
trunk/Source/WebKit/WebProcess/WebPage/gtk/WebPageGtk.cpp
trunk/Source/WebKit/WebProcess/WebPage/mac/WebPageMac.mm
trunk/Source/WebKit/WebProcess/WebPage/win/WebPageWin.cpp
trunk/Source/WebKitLegacy/mac/ChangeLog
trunk/Source/WebKitLegacy/mac/WebView/WebFrameView.mm
trunk/Source/WebKitLegacy/win/ChangeLog
trunk/Source/WebKitLegacy/win/WebView.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (285639 => 285640)

--- trunk/Source/WebCore/ChangeLog	2021-11-11 18:29:14 UTC (rev 285639)
+++ trunk/Source/WebCore/ChangeLog	2021-11-11 18:31:29 UTC (rev 285640)
@@ -1,3 +1,45 @@
+2021-11-11  Nikolaos Mouchtaris  
+
+Make scroll granularity an enum class
+https://bugs.webkit.org/show_bug.cgi?id=232641
+
+Reviewed by Cameron McCormack.
+
+* dom/Element.cpp:
+

[webkit-changes] [285357] trunk/Source

2021-11-05 Thread nmouchtaris
Title: [285357] trunk/Source








Revision 285357
Author nmouchta...@apple.com
Date 2021-11-05 16:06:50 -0700 (Fri, 05 Nov 2021)


Log Message
Make scroll bar mode an enum class
https://bugs.webkit.org/show_bug.cgi?id=232651

Reviewed by Simon Fraser.

Source/WebCore:

* html/HTMLFrameElementBase.cpp:
(WebCore::HTMLFrameElementBase::scrollingMode const):
* html/HTMLFrameOwnerElement.h:
(WebCore::HTMLFrameOwnerElement::scrollingMode const):
* page/Frame.cpp:
(WebCore::Frame::createView):
* page/Frame.h:
* page/FrameView.cpp:
(WebCore::FrameView::resetScrollbars):
(WebCore::FrameView::init):
(WebCore::FrameView::updateCanHaveScrollbars):
(WebCore::FrameView::applyOverflowToViewport):
(WebCore::FrameView::calculateScrollbarModesForLayout):
(WebCore::FrameView::adjustScrollbarsForLayout):
(WebCore::FrameView::performFixedWidthAutoSize):
(WebCore::FrameView::performSizeToContentAutoSize):
(WebCore::FrameView::isScrollable):
(WebCore::FrameView::enableAutoSizeMode):
* page/SpatialNavigation.cpp:
(WebCore::canScrollInDirection):
* page/scrolling/ScrollingCoordinatorTypes.h:
* page/scrolling/ScrollingTreeScrollingNode.h:
* platform/ScrollTypes.cpp:
(WebCore::operator<<):
* platform/ScrollTypes.h:
* platform/ScrollView.cpp:
(WebCore::ScrollView::setCanHaveScrollbars):
(WebCore::ScrollView::updateScrollbars):
(WebCore::ScrollView::platformScrollbarModes const):
* platform/ScrollView.h:
* platform/ScrollableArea.h:
(WebCore::ScrollableArea::horizontalScrollbarMode const):
(WebCore::ScrollableArea::verticalScrollbarMode const):
(WebCore::ScrollableArea::canHaveScrollbars const):
* platform/ios/wak/WAKScrollView.mm:
(-[WAKScrollView horizontalScrollingMode]):
(-[WAKScrollView verticalScrollingMode]):
* rendering/RenderFrameBase.cpp:
(WebCore::RenderFrameBase::performLayoutWithFlattening):
* rendering/RenderIFrame.cpp:
(WebCore::RenderIFrame::flattenFrame const):
* rendering/RenderLayer.cpp:
(WebCore::frameElementAndViewPermitScroll):
* rendering/RenderLayerBacking.cpp:
(WebCore::computePageTiledBackingCoverage):

Source/WebKit:

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setAlwaysShowsHorizontalScroller):
(WebKit::WebPage::setAlwaysShowsVerticalScroller):

Source/WebKitLegacy/mac:

* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::transitionToCommittedForNewPage):
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView setAllowsHorizontalScrolling:]):
(-[WebDynamicScrollBarsView updateScrollers]):
(-[WebDynamicScrollBarsView allowsHorizontalScrolling]):
(-[WebDynamicScrollBarsView allowsVerticalScrolling]):
* WebView/WebView.mm:
(-[WebView setAlwaysShowVerticalScroller:]):
(-[WebView alwaysShowVerticalScroller]):
(-[WebView setAlwaysShowHorizontalScroller:]):
(-[WebView alwaysShowHorizontalScroller]):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/html/HTMLFrameElementBase.cpp
trunk/Source/WebCore/html/HTMLFrameOwnerElement.h
trunk/Source/WebCore/page/Frame.cpp
trunk/Source/WebCore/page/Frame.h
trunk/Source/WebCore/page/FrameView.cpp
trunk/Source/WebCore/page/SpatialNavigation.cpp
trunk/Source/WebCore/page/scrolling/ScrollingCoordinatorTypes.h
trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h
trunk/Source/WebCore/platform/ScrollTypes.cpp
trunk/Source/WebCore/platform/ScrollTypes.h
trunk/Source/WebCore/platform/ScrollView.cpp
trunk/Source/WebCore/platform/ScrollView.h
trunk/Source/WebCore/platform/ScrollableArea.h
trunk/Source/WebCore/platform/ios/wak/WAKScrollView.mm
trunk/Source/WebCore/rendering/RenderFrameBase.cpp
trunk/Source/WebCore/rendering/RenderIFrame.cpp
trunk/Source/WebCore/rendering/RenderLayer.cpp
trunk/Source/WebCore/rendering/RenderLayerBacking.cpp
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp
trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp
trunk/Source/WebKitLegacy/mac/ChangeLog
trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.mm
trunk/Source/WebKitLegacy/mac/WebView/WebDynamicScrollBarsView.mm
trunk/Source/WebKitLegacy/mac/WebView/WebView.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (285356 => 285357)

--- trunk/Source/WebCore/ChangeLog	2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/ChangeLog	2021-11-05 23:06:50 UTC (rev 285357)
@@ -1,3 +1,56 @@
+2021-11-05  Nikolaos Mouchtaris  
+
+Make scroll bar mode an enum class
+https://bugs.webkit.org/show_bug.cgi?id=232651
+
+Reviewed by Simon Fraser.
+
+* html/HTMLFrameElementBase.cpp:
+(WebCore::HTMLFrameElementBase::scrollingMode const):
+* html/HTMLFrameOwnerElement.h:
+(WebCore::HTMLFrameOwnerElement::scrollingMode const):
+* page/Frame.cpp:
+(WebCore::Frame::createView):
+* page/Frame.h:
+* page/FrameView.cpp:
+(WebCore::FrameView::resetScrollbars):
+

[webkit-changes] [285347] trunk/Source

2021-11-05 Thread nmouchtaris
Title: [285347] trunk/Source








Revision 285347
Author nmouchta...@apple.com
Date 2021-11-05 11:46:21 -0700 (Fri, 05 Nov 2021)


Log Message
Make scroll elasticity an enum class
https://bugs.webkit.org/show_bug.cgi?id=232646

Reviewed by Simon Fraser.

Source/WebCore:

* page/FrameView.cpp:
(WebCore::FrameView::FrameView):
* page/Page.cpp:
(WebCore::Page::Page):
* page/Page.h:
* page/scrolling/ScrollingCoordinatorTypes.h:
* page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm:
(WebCore::ScrollingTreeScrollingNodeDelegateMac::allowsHorizontalStretching const):
(WebCore::ScrollingTreeScrollingNodeDelegateMac::allowsVerticalStretching const):
* platform/ScrollTypes.cpp:
(WebCore::operator<<):
* platform/ScrollTypes.h:
* platform/ScrollableArea.h:
* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::allowsVerticalStretching const):
(WebCore::ScrollAnimatorMac::allowsHorizontalStretching const):
* rendering/RenderLayerScrollableArea.cpp:
(WebCore::RenderLayerScrollableArea::setHasHorizontalScrollbar):
(WebCore::RenderLayerScrollableArea::setHasVerticalScrollbar):

Source/WebKit:

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setEnableVerticalRubberBanding):
(WebKit::WebPage::setEnableHorizontalRubberBanding):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/FrameView.cpp
trunk/Source/WebCore/page/Page.cpp
trunk/Source/WebCore/page/Page.h
trunk/Source/WebCore/page/scrolling/ScrollingCoordinatorTypes.h
trunk/Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm
trunk/Source/WebCore/platform/ScrollTypes.cpp
trunk/Source/WebCore/platform/ScrollTypes.h
trunk/Source/WebCore/platform/ScrollableArea.h
trunk/Source/WebCore/platform/mac/ScrollAnimatorMac.mm
trunk/Source/WebCore/rendering/RenderLayerScrollableArea.cpp
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (285346 => 285347)

--- trunk/Source/WebCore/ChangeLog	2021-11-05 18:14:31 UTC (rev 285346)
+++ trunk/Source/WebCore/ChangeLog	2021-11-05 18:46:21 UTC (rev 285347)
@@ -1,3 +1,30 @@
+2021-11-05  Nikolaos Mouchtaris  
+
+Make scroll elasticity an enum class
+https://bugs.webkit.org/show_bug.cgi?id=232646
+
+Reviewed by Simon Fraser.
+
+* page/FrameView.cpp:
+(WebCore::FrameView::FrameView):
+* page/Page.cpp:
+(WebCore::Page::Page):
+* page/Page.h:
+* page/scrolling/ScrollingCoordinatorTypes.h:
+* page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm:
+(WebCore::ScrollingTreeScrollingNodeDelegateMac::allowsHorizontalStretching const):
+(WebCore::ScrollingTreeScrollingNodeDelegateMac::allowsVerticalStretching const):
+* platform/ScrollTypes.cpp:
+(WebCore::operator<<):
+* platform/ScrollTypes.h:
+* platform/ScrollableArea.h:
+* platform/mac/ScrollAnimatorMac.mm:
+(WebCore::ScrollAnimatorMac::allowsVerticalStretching const):
+(WebCore::ScrollAnimatorMac::allowsHorizontalStretching const):
+* rendering/RenderLayerScrollableArea.cpp:
+(WebCore::RenderLayerScrollableArea::setHasHorizontalScrollbar):
+(WebCore::RenderLayerScrollableArea::setHasVerticalScrollbar):
+
 2021-11-05  Devin Rousso  
 
 [css-values-4] viewport units should be floats


Modified: trunk/Source/WebCore/page/FrameView.cpp (285346 => 285347)

--- trunk/Source/WebCore/page/FrameView.cpp	2021-11-05 18:14:31 UTC (rev 285346)
+++ trunk/Source/WebCore/page/FrameView.cpp	2021-11-05 18:46:21 UTC (rev 285347)
@@ -196,14 +196,14 @@
 init();
 
 #if HAVE(RUBBER_BANDING)
-ScrollElasticity verticalElasticity = ScrollElasticityNone;
-ScrollElasticity horizontalElasticity = ScrollElasticityNone;
+auto verticalElasticity = ScrollElasticity::None;
+auto horizontalElasticity = ScrollElasticity::None;
 if (m_frame->isMainFrame()) {
-verticalElasticity = m_frame->page() ? m_frame->page()->verticalScrollElasticity() : ScrollElasticityAllowed;
-horizontalElasticity = m_frame->page() ? m_frame->page()->horizontalScrollElasticity() : ScrollElasticityAllowed;
+verticalElasticity = m_frame->page() ? m_frame->page()->verticalScrollElasticity() : ScrollElasticity::Allowed;
+horizontalElasticity = m_frame->page() ? m_frame->page()->horizontalScrollElasticity() : ScrollElasticity::Allowed;
 } else if (m_frame->settings().rubberBandingForSubScrollableRegionsEnabled()) {
-verticalElasticity = ScrollElasticityAutomatic;
-horizontalElasticity = ScrollElasticityAutomatic;
+verticalElasticity = ScrollElasticity::Automatic;
+horizontalElasticity = ScrollElasticity::Automatic;
 }
 
 ScrollableArea::setVerticalScrollElasticity(verticalElasticity);


Modified: trunk/Source/WebCore/page/Page.cpp (285346 => 285347)

--- trunk/Source/WebCore/page/Page.cpp	2021-11-05 18:14:31 UTC (rev 285346)
+++ 

[webkit-changes] [285316] trunk/Source

2021-11-04 Thread nmouchtaris
Title: [285316] trunk/Source








Revision 285316
Author nmouchta...@apple.com
Date 2021-11-04 14:58:31 -0700 (Thu, 04 Nov 2021)


Log Message
Make scrollbar orientation an enum class
https://bugs.webkit.org/show_bug.cgi?id=232648

Reviewed by Simon Fraser.

Source/WebCore:

* accessibility/AccessibilityScrollbar.cpp:
(WebCore::AccessibilityScrollbar::orientation const):
* css/SelectorChecker.h:
* css/SelectorCheckerTestFunctions.h:
(WebCore::scrollbarMatchesHorizontalPseudoClass):
(WebCore::scrollbarMatchesVerticalPseudoClass):
* page/FrameView.cpp:
(WebCore::FrameView::horizontalScrollbarHiddenByStyle const):
(WebCore::FrameView::verticalScrollbarHiddenByStyle const):
(WebCore::FrameView::performSizeToContentAutoSize):
(WebCore::FrameView::adjustScrollStepForFixedContent):
* page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::scrollableAreaScrollbarLayerDidChange):
* platform/ScrollAnimator.cpp:
(WebCore::ScrollAnimator::scroll):
(WebCore::ScrollAnimator::deltaFromStep):
(WebCore::ScrollAnimator::handleWheelEvent):
* platform/ScrollTypes.h:
* platform/ScrollView.cpp:
(WebCore::ScrollView::setHasHorizontalScrollbar):
(WebCore::ScrollView::setHasVerticalScrollbar):
* platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::scroll):
(WebCore::ScrollableArea::scrollToOffsetWithoutAnimation):
(WebCore::ScrollableArea::didAddScrollbar):
(WebCore::ScrollableArea::willRemoveScrollbar):
(WebCore::ScrollableArea::doPostThumbMoveSnapping):
* platform/ScrollableArea.h:
(WebCore::offsetForOrientation):
* platform/Scrollbar.cpp:
(WebCore::Scrollbar::pressedPartScrollDirection):
(WebCore::Scrollbar::moveThumb):
(WebCore::Scrollbar::mouseMoved):
(WebCore::Scrollbar::mouseDown):
* platform/ScrollbarThemeComposite.cpp:
(WebCore::ScrollbarThemeComposite::splitTrack):
(WebCore::ScrollbarThemeComposite::trackPosition):
(WebCore::ScrollbarThemeComposite::trackLength):
* platform/mac/ScrollbarThemeMac.mm:
(WebCore::ScrollbarThemeMac::registerScrollbar):
(WebCore::ScrollbarThemeMac::hasButtons):
(WebCore::ScrollbarThemeMac::hasThumb):
(WebCore::buttonRepaintRect):
(WebCore::ScrollbarThemeMac::backButtonRect):
(WebCore::ScrollbarThemeMac::forwardButtonRect):
(WebCore::ScrollbarThemeMac::trackRect):
* platform/mac/ScrollbarsControllerMac.mm:
(-[WebScrollerImpDelegate layer]):
(-[WebScrollerImpDelegate setUpAlphaAnimation:scrollerPainter:part:animateAlphaTo:duration:]):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::hasAutoScrollbar const):
(WebCore::RenderBox::hasAlwaysPresentScrollbar const):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateOverflowControlsLayers):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateOverflowControlsLayers):
(WebCore::RenderLayerCompositor::destroyRootLayer):
* rendering/RenderLayerScrollableArea.cpp:
(WebCore::RenderLayerScrollableArea::clear):
(WebCore::RenderLayerScrollableArea::destroyScrollbar):
(WebCore::RenderLayerScrollableArea::setHasHorizontalScrollbar):
(WebCore::RenderLayerScrollableArea::setHasVerticalScrollbar):
(WebCore::RenderLayerScrollableArea::updateScrollbarPresenceAndState):
(WebCore::RenderLayerScrollableArea::updateScrollbarsAfterLayout):
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::layout):
(WebCore::RenderListBox::scrollToRevealElementAtListIndex):
(WebCore::RenderListBox::setScrollTop):
(WebCore::RenderListBox::createScrollbar):
(WebCore::RenderListBox::destroyScrollbar):
* rendering/RenderScrollbar.cpp:
(WebCore::RenderScrollbar::RenderScrollbar):
(WebCore::RenderScrollbar::updateScrollbarParts):
(WebCore::RenderScrollbar::buttonRect const):
(WebCore::RenderScrollbar::trackRect const):
(WebCore::RenderScrollbar::trackPieceRectWithMargins const):
(WebCore::RenderScrollbar::minimumThumbLength const):
* rendering/RenderScrollbarPart.cpp:
(WebCore::RenderScrollbarPart::layout):
* rendering/RenderScrollbarTheme.cpp:
(WebCore::RenderScrollbarTheme::buttonSizesAlongTrackAxis):
(WebCore::RenderScrollbarTheme::hasButtons):
(WebCore::RenderScrollbarTheme::constrainTrackRectToTrackPieces):

Source/WebKit:

* Shared/WebHitTestResultData.cpp:
(WebKit::WebHitTestResultData::WebHitTestResultData):
* WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::updateScrollbars):
(WebKit::PDFPlugin::createScrollbar):
(WebKit::PDFPlugin::destroyScrollbar):
(WebKit::PDFPlugin::destroy):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/accessibility/AccessibilityScrollbar.cpp
trunk/Source/WebCore/css/SelectorChecker.h
trunk/Source/WebCore/css/SelectorCheckerTestFunctions.h
trunk/Source/WebCore/page/FrameView.cpp
trunk/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp
trunk/Source/WebCore/platform/ScrollAnimator.cpp
trunk/Source/WebCore/platform/ScrollTypes.h
trunk/Source/WebCore/platform/ScrollView.cpp
trunk/Source/WebCore/platform/ScrollableArea.cpp
trunk/Source/WebCore/platform/ScrollableArea.h
trunk/Source/WebCore/platform/Scrollbar.cpp

[webkit-changes] [285238] trunk/LayoutTests

2021-11-03 Thread nmouchtaris
Title: [285238] trunk/LayoutTests








Revision 285238
Author nmouchta...@apple.com
Date 2021-11-03 15:41:25 -0700 (Wed, 03 Nov 2021)


Log Message
Add platform test expectations for imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001.html
https://bugs.webkit.org/show_bug.cgi?id=232504

Reviewed by Myles Maxfield.

Fix expectations for Big Sur wk1.

* platform/glib/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt: Added.
* platform/mac-bigsur/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt: Added.

Modified Paths

trunk/LayoutTests/ChangeLog


Added Paths

trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt
trunk/LayoutTests/platform/mac-bigsur/imported/w3c/web-platform-tests/mathml/
trunk/LayoutTests/platform/mac-bigsur/imported/w3c/web-platform-tests/mathml/relations/
trunk/LayoutTests/platform/mac-bigsur/imported/w3c/web-platform-tests/mathml/relations/html5-tree/
trunk/LayoutTests/platform/mac-bigsur/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt
trunk/LayoutTests/platform/mac-catalina/imported/w3c/web-platform-tests/mathml/relations/html5-tree/
trunk/LayoutTests/platform/mac-catalina/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt


Removed Paths

trunk/LayoutTests/platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/mathml/
trunk/LayoutTests/platform/mac-catalina-wk2/imported/w3c/web-platform-tests/mathml/




Diff

Modified: trunk/LayoutTests/ChangeLog (285237 => 285238)

--- trunk/LayoutTests/ChangeLog	2021-11-03 22:40:59 UTC (rev 285237)
+++ trunk/LayoutTests/ChangeLog	2021-11-03 22:41:25 UTC (rev 285238)
@@ -1,3 +1,15 @@
+2021-11-03  Nikos Mouchtaris  
+
+Add platform test expectations for imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001.html
+https://bugs.webkit.org/show_bug.cgi?id=232504
+
+Reviewed by Myles Maxfield.
+ 
+Fix expectations for Big Sur wk1.
+
+* platform/glib/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt: Added.
+* platform/mac-bigsur/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt: Added.
+
 2021-11-03  Rob Buis  
 
 Return nullopt in aspect-ratio+intrinsic width case


Copied: trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt (from rev 285236, trunk/LayoutTests/platform/mac-catalina-wk2/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt) (0 => 285238)

--- trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt	(rev 0)
+++ trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt	2021-11-03 22:41:25 UTC (rev 285238)
@@ -0,0 +1,101 @@
+
+PASS Adding missing children to mfrac
+PASS Removing child from valid mfrac
+FAIL Adding child to valid mfrac assert_approx_equals: block position (child 1) expected 0 +/- 1 but got 13.234375
+PASS Removing extra child from mfrac
+PASS Adding missing children to munder
+PASS Removing child from valid munder
+FAIL Adding child to valid munder assert_approx_equals: block position (child 1) expected 0 +/- 1 but got 11.90625
+PASS Removing extra child from munder
+PASS Adding missing children to mover
+FAIL Removing child from valid mover assert_approx_equals: block position (child 0) expected 0 +/- 1 but got 22.53125
+FAIL Adding child to valid mover assert_approx_equals: block position (child 0) expected 0 +/- 1 but got 22.53125
+PASS Removing extra child from mover
+PASS Adding missing children to munderover
+FAIL Removing child from valid munderover assert_approx_equals: block position (child 0) expected 0 +/- 1 but got 32.53125
+FAIL Adding child to valid munderover assert_approx_equals: block position (child 0) expected 0 +/- 1 but got 32.53125
+PASS Removing extra child from munderover
+PASS Adding missing children to msub
+PASS Removing child from valid msub
+FAIL Adding child to valid msub assert_approx_equals: inline position (child 1) expected 0 +/- 1 but got 10
+PASS Removing extra child from msub
+PASS Adding missing children to msup
+FAIL Removing child from valid msup assert_approx_equals: block position (child 0) expected 0 +/- 1 but got 16
+FAIL Adding child to valid msup assert_approx_equals: block position (child 0) expected 0 +/- 1 but got 16
+PASS Removing extra child from msup
+PASS Adding missing children to msubsup
+FAIL Removing child from valid msubsup assert_approx_equals: block position (child 0) expected 0 +/- 1 but got 26
+FAIL Adding child to valid msubsup 

[webkit-changes] [285134] trunk/LayoutTests

2021-11-01 Thread nmouchtaris
Title: [285134] trunk/LayoutTests








Revision 285134
Author nmouchta...@apple.com
Date 2021-11-01 15:04:09 -0700 (Mon, 01 Nov 2021)


Log Message
Add platform test expectations for imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001.html
https://bugs.webkit.org/show_bug.cgi?id=232504

Reviewed by Myles C. Maxfield.

* platform/ios-simulator-wk2/TestExpectations:
* platform/ios-wk2/TestExpectations:
* platform/mac-bigsur/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt: Added.
* platform/mac/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations
trunk/LayoutTests/platform/ios-wk2/TestExpectations
trunk/LayoutTests/platform/mac/TestExpectations


Added Paths

trunk/LayoutTests/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt
trunk/LayoutTests/platform/ios-simulator-wk2/imported/w3c/web-platform-tests/mathml/
trunk/LayoutTests/platform/ios-simulator-wk2/imported/w3c/web-platform-tests/mathml/relations/
trunk/LayoutTests/platform/ios-simulator-wk2/imported/w3c/web-platform-tests/mathml/relations/html5-tree/
trunk/LayoutTests/platform/ios-simulator-wk2/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt
trunk/LayoutTests/platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/mathml/
trunk/LayoutTests/platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/mathml/relations/
trunk/LayoutTests/platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/mathml/relations/html5-tree/
trunk/LayoutTests/platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt
trunk/LayoutTests/platform/mac-catalina-wk2/imported/w3c/web-platform-tests/mathml/
trunk/LayoutTests/platform/mac-catalina-wk2/imported/w3c/web-platform-tests/mathml/relations/
trunk/LayoutTests/platform/mac-catalina-wk2/imported/w3c/web-platform-tests/mathml/relations/html5-tree/
trunk/LayoutTests/platform/mac-catalina-wk2/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt


Removed Paths

trunk/LayoutTests/platform/glib/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt
trunk/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt
trunk/LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt
trunk/LayoutTests/platform/mac-wk2/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt




Diff

Modified: trunk/LayoutTests/ChangeLog (285133 => 285134)

--- trunk/LayoutTests/ChangeLog	2021-11-01 21:58:38 UTC (rev 285133)
+++ trunk/LayoutTests/ChangeLog	2021-11-01 22:04:09 UTC (rev 285134)
@@ -1,3 +1,15 @@
+2021-11-01  Nikos Mouchtaris  
+
+Add platform test expectations for imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001.html
+https://bugs.webkit.org/show_bug.cgi?id=232504
+
+Reviewed by Myles C. Maxfield.
+
+* platform/ios-simulator-wk2/TestExpectations:
+* platform/ios-wk2/TestExpectations:
+* platform/mac-bigsur/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt: Added.
+* platform/mac/TestExpectations:
+
 2021-11-01  Ayumi Kojima  
 
 [ iOS Debug ] http/wpt/push-api tests are flaky failing.


Copied: trunk/LayoutTests/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt (from rev 285133, trunk/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt) (0 => 285134)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt	(rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-001-expected.txt	2021-11-01 22:04:09 UTC (rev 285134)
@@ -0,0 +1,101 @@
+
+PASS Adding missing children to mfrac
+PASS Removing child from valid mfrac
+FAIL Adding child to valid mfrac assert_approx_equals: block position (child 1) expected 0 +/- 1 but got 12.375
+PASS Removing extra child from mfrac
+PASS Adding missing children to munder
+PASS Removing child from valid munder
+FAIL Adding child to valid munder assert_approx_equals: block position (child 1) expected 0 +/- 1 but got 12.390625
+PASS Removing extra child from munder
+PASS Adding missing children to mover
+FAIL Removing child from valid mover assert_approx_equals: block position (child 0) expected 0 +/- 1 but got 23.1875
+FAIL Adding child to valid mover assert_approx_equals: block position (child 0) expected 0 +/- 1 but got 23.1875
+PASS Removing extra child from mover
+PASS Adding missing 

[webkit-changes] [285015] trunk

2021-10-28 Thread nmouchtaris
Title: [285015] trunk








Revision 285015
Author nmouchta...@apple.com
Date 2021-10-28 19:19:51 -0700 (Thu, 28 Oct 2021)


Log Message
if border-radius includes a var(), the value is not readable from .style
https://bugs.webkit.org/show_bug.cgi?id=230389

Reviewed by Myles Maxfield.
Source/WebCore:

Return correct string for shorthand CSS values set by var. Add extra checks for if all
longhand properties are pending values and if the requested shorthand property was set
to a variable.

Test: css3/short-hand-var-serialization.html

* css/StyleProperties.cpp:
(WebCore::StyleProperties::getPropertyValue const):

LayoutTests:

* css3/short-hand-var-serialization-expected.txt: Added.
* css3/short-hand-var-serialization.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-logical/logicalprops-with-variables-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-variables/variable-reference-shorthands-cssom-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-variables/variable-reference-shorthands-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/shorthand-serialization-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/StyleProperties.cpp
trunk/Source/WebCore/css/StyleProperties.h


Added Paths

trunk/LayoutTests/css3/short-hand-var-serialization-expected.txt
trunk/LayoutTests/css3/short-hand-var-serialization.html


Removed Paths

trunk/LayoutTests/fast/css/variables/rule-property-get-expected.html
trunk/LayoutTests/fast/css/variables/rule-property-get.html




Diff

Modified: trunk/LayoutTests/ChangeLog (285014 => 285015)

--- trunk/LayoutTests/ChangeLog	2021-10-29 02:00:18 UTC (rev 285014)
+++ trunk/LayoutTests/ChangeLog	2021-10-29 02:19:51 UTC (rev 285015)
@@ -1,3 +1,13 @@
+2021-10-28  Nikos Mouchtaris  
+
+if border-radius includes a var(), the value is not readable from .style
+https://bugs.webkit.org/show_bug.cgi?id=230389
+
+Reviewed by Myles Maxfield.
+
+* css3/short-hand-var-serialization-expected.txt: Added.
+* css3/short-hand-var-serialization.html: Added.
+
 2021-10-28  Arcady Goldmints-Orlov  
 
 [GLIB] Update test baselines. Unreviewed test gardening.


Added: trunk/LayoutTests/css3/short-hand-var-serialization-expected.txt (0 => 285015)

--- trunk/LayoutTests/css3/short-hand-var-serialization-expected.txt	(rev 0)
+++ trunk/LayoutTests/css3/short-hand-var-serialization-expected.txt	2021-10-29 02:19:51 UTC (rev 285015)
@@ -0,0 +1,15 @@
+Test that shorthand css properties set to a variable return that variable when accessed through the style sheet.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+- Tests -
+PASS styleSheet.rules[1].style.borderRadius is "var(--v0)"
+PASS styleSheet.rules[2].style.margin is "var(--v0)"
+PASS styleSheet.rules[3].style.borderBlockWidth is "var(--v0)"
+PASS styleSheet.rules[4].style.borderInlineWidth is "var(--v0)"
+PASS styleSheet.rules[5].style.perspectiveOrigin is "var(--v0)"
+PASS successfullyParsed is true
+
+TEST COMPLETE
+


Added: trunk/LayoutTests/css3/short-hand-var-serialization.html (0 => 285015)

--- trunk/LayoutTests/css3/short-hand-var-serialization.html	(rev 0)
+++ trunk/LayoutTests/css3/short-hand-var-serialization.html	2021-10-29 02:19:51 UTC (rev 285015)
@@ -0,0 +1,55 @@
+
+
+
+div {
+width: 100px;
+height: 100px;
+border: 3px solid red;
+}
+#div0 {
+--v0: 50px;
+border-radius: var(--v0);
+}
+#div1 {
+--v0: 50px;
+margin: var(--v0);
+}
+
+#div2 {
+--v0: 50px;
+border-block-width: var(--v0);
+}
+
+#div3 {
+--v0: 50px;
+border-inline-width: var(--v0);
+}
+
+#div4 {
+--v0: left;
+perspective-origin: var(--v0);
+}
+
+
+
+
+
+
+
+
+