Title: [290548] trunk
- Revision
- 290548
- Author
- [email protected]
- Date
- 2022-02-26 10:43:07 -0800 (Sat, 26 Feb 2022)
Log Message
No animation when scroll snap scroller is navigated with the keyboard
https://bugs.webkit.org/show_bug.cgi?id=236244
Reviewed by Tim Horton.
Source/WebCore:
Keyboard-driven scrolls in overflow didn't animate, simply because scrollAnimatorEnabled()
wasn't implemented for RenderLayerScrollableArea.
I could not figure out a reliable way to test that we animated the scroll.
* rendering/RenderLayerScrollableArea.cpp:
(WebCore::RenderLayerScrollableArea::scrollAnimatorEnabled const):
* rendering/RenderLayerScrollableArea.h:
LayoutTests:
Turn off the scroll animator for these tests that assume that scrolling is instantaneous.
* css3/scroll-snap/scroll-padding-overflow-paging.html:
* fast/events/wheelevent-in-scrolling-div.html:
* tiled-drawing/scrolling/scroll-snap/scroll-snap-proximity-overflow-rtl-with-keyboard.html:
Modified Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (290547 => 290548)
--- trunk/LayoutTests/ChangeLog 2022-02-26 12:07:43 UTC (rev 290547)
+++ trunk/LayoutTests/ChangeLog 2022-02-26 18:43:07 UTC (rev 290548)
@@ -1,3 +1,16 @@
+2022-02-26 Simon Fraser <[email protected]>
+
+ No animation when scroll snap scroller is navigated with the keyboard
+ https://bugs.webkit.org/show_bug.cgi?id=236244
+
+ Reviewed by Tim Horton.
+
+ Turn off the scroll animator for these tests that assume that scrolling is instantaneous.
+
+ * css3/scroll-snap/scroll-padding-overflow-paging.html:
+ * fast/events/wheelevent-in-scrolling-div.html:
+ * tiled-drawing/scrolling/scroll-snap/scroll-snap-proximity-overflow-rtl-with-keyboard.html:
+
2022-02-26 Youenn Fablet <[email protected]>
REGRESSION(r290358): [ Debug EWS ] ASSERTION FAILED: sample && sample->pixelBuffer()
Modified: trunk/LayoutTests/css3/scroll-snap/scroll-padding-overflow-paging.html (290547 => 290548)
--- trunk/LayoutTests/css3/scroll-snap/scroll-padding-overflow-paging.html 2022-02-26 12:07:43 UTC (rev 290547)
+++ trunk/LayoutTests/css3/scroll-snap/scroll-padding-overflow-paging.html 2022-02-26 18:43:07 UTC (rev 290548)
@@ -1,4 +1,4 @@
-<!DOCTYPE html>
+<!DOCTYPE html> <!-- webkit-test-runner [ ScrollAnimatorEnabled=false ] -->
<html>
<head>
<style>
Modified: trunk/LayoutTests/fast/events/wheelevent-in-scrolling-div.html (290547 => 290548)
--- trunk/LayoutTests/fast/events/wheelevent-in-scrolling-div.html 2022-02-26 12:07:43 UTC (rev 290547)
+++ trunk/LayoutTests/fast/events/wheelevent-in-scrolling-div.html 2022-02-26 18:43:07 UTC (rev 290548)
@@ -1,3 +1,4 @@
+<!DOCTYPE html> <!-- webkit-test-runner [ ScrollAnimatorEnabled=false ] -->
<html>
<head>
<script src=""
Modified: trunk/LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-proximity-overflow-rtl-with-keyboard.html (290547 => 290548)
--- trunk/LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-proximity-overflow-rtl-with-keyboard.html 2022-02-26 12:07:43 UTC (rev 290547)
+++ trunk/LayoutTests/tiled-drawing/scrolling/scroll-snap/scroll-snap-proximity-overflow-rtl-with-keyboard.html 2022-02-26 18:43:07 UTC (rev 290548)
@@ -1,4 +1,4 @@
-<!DOCTYPE HTML>
+<!DOCTYPE html> <!-- webkit-test-runner [ ScrollAnimatorEnabled=false ] -->
<html>
<head>
<style>
Modified: trunk/Source/WebCore/ChangeLog (290547 => 290548)
--- trunk/Source/WebCore/ChangeLog 2022-02-26 12:07:43 UTC (rev 290547)
+++ trunk/Source/WebCore/ChangeLog 2022-02-26 18:43:07 UTC (rev 290548)
@@ -1,3 +1,19 @@
+2022-02-26 Simon Fraser <[email protected]>
+
+ No animation when scroll snap scroller is navigated with the keyboard
+ https://bugs.webkit.org/show_bug.cgi?id=236244
+
+ Reviewed by Tim Horton.
+
+ Keyboard-driven scrolls in overflow didn't animate, simply because scrollAnimatorEnabled()
+ wasn't implemented for RenderLayerScrollableArea.
+
+ I could not figure out a reliable way to test that we animated the scroll.
+
+ * rendering/RenderLayerScrollableArea.cpp:
+ (WebCore::RenderLayerScrollableArea::scrollAnimatorEnabled const):
+ * rendering/RenderLayerScrollableArea.h:
+
2022-02-25 Simon Fraser <[email protected]>
Scrollbars disappear when very long or wide
Modified: trunk/Source/WebCore/rendering/RenderLayerScrollableArea.cpp (290547 => 290548)
--- trunk/Source/WebCore/rendering/RenderLayerScrollableArea.cpp 2022-02-26 12:07:43 UTC (rev 290547)
+++ trunk/Source/WebCore/rendering/RenderLayerScrollableArea.cpp 2022-02-26 18:43:07 UTC (rev 290548)
@@ -1542,6 +1542,11 @@
return false;
}
+bool RenderLayerScrollableArea::scrollAnimatorEnabled() const
+{
+ return m_layer.page().settings().scrollAnimatorEnabled();
+}
+
void RenderLayerScrollableArea::paintOverlayScrollbars(GraphicsContext& context, const LayoutRect& damageRect, OptionSet<PaintBehavior> paintBehavior, RenderObject* subtreePaintRoot)
{
if (!m_containsDirtyOverlayScrollbars)
Modified: trunk/Source/WebCore/rendering/RenderLayerScrollableArea.h (290547 => 290548)
--- trunk/Source/WebCore/rendering/RenderLayerScrollableArea.h 2022-02-26 12:07:43 UTC (rev 290547)
+++ trunk/Source/WebCore/rendering/RenderLayerScrollableArea.h 2022-02-26 18:43:07 UTC (rev 290548)
@@ -193,6 +193,7 @@
bool isRubberBandInProgress() const final;
bool forceUpdateScrollbarsOnMainThreadForPerformanceTesting() const final;
bool isScrollSnapInProgress() const final;
+ bool scrollAnimatorEnabled() const final;
bool mockScrollbarsControllerEnabled() const final;
void logMockScrollbarsControllerMessage(const String&) const final;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes