Title: [275354] trunk/Source
Revision
275354
Author
[email protected]
Date
2021-04-01 04:45:53 -0700 (Thu, 01 Apr 2021)

Log Message

Expose an alias for ScrollSnapOffsetInfo<T> to make it easier to use
https://bugs.webkit.org/show_bug.cgi?id=223986

Patch by Martin Robinson <[email protected]> on 2021-04-01
Reviewed by Sergio Villar Senin.

Source/WebCore:

No new tests. This should not change behavior.

* page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::setStateScrollingNodeSnapOffsetsAsFloat): Use new aliases.
* page/scrolling/ScrollSnapOffsetsInfo.cpp:
(WebCore::FloatScrollSnapOffsetsInfo::convertUnits const): Ditto.
(WebCore::LayoutScrollSnapOffsetsInfo::convertUnits const): Ditto.
(WebCore::LayoutScrollSnapOffsetsInfo::closestSnapOffset const): Ditto.
(WebCore::FloatScrollSnapOffsetsInfo::closestSnapOffset const): Ditto.
(WebCore::ScrollSnapOffsetsInfo<float>::convertUnits const): Deleted.
(WebCore::ScrollSnapOffsetsInfo<LayoutUnit>::convertUnits const): Deleted.
(WebCore::ScrollSnapOffsetsInfo<LayoutUnit>::closestSnapOffset const): Deleted.
(WebCore::ScrollSnapOffsetsInfo<float>::closestSnapOffset const): Deleted.
* page/scrolling/ScrollSnapOffsetsInfo.h: Ditto.
* page/scrolling/ScrollingStateScrollingNode.cpp:
(WebCore::ScrollingStateScrollingNode::setSnapOffsetsInfo): Ditto.
* page/scrolling/ScrollingStateScrollingNode.h:
(WebCore::ScrollingStateScrollingNode::snapOffsetsInfo const): Ditto.
* page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::snapOffsetsInfo const): Ditto.
* page/scrolling/ScrollingTreeScrollingNode.h: Ditto.
* platform/ScrollController.cpp:
(WebCore::ScrollController::updateScrollSnapPoints): Ditto.
* platform/ScrollController.h: Ditto.
* platform/ScrollSnapAnimatorState.h:
(WebCore::ScrollSnapAnimatorState::snapOffsetInfo const): Ditto.
(WebCore::ScrollSnapAnimatorState::setSnapOffsetInfo): Ditto.
* platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::ensureSnapOffsetsInfo): Ditto.
(WebCore::ScrollableArea::snapOffsetInfo const): Ditto.
(WebCore::ScrollableArea::setScrollSnapOffsetInfo): Ditto.
* platform/ScrollableArea.h: Ditto.
* platform/mac/ScrollAnimatorMac.mm:
(WebCore::gestureShouldBeginSnap): Ditto.

Source/WebKit:

* Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp:
(ArgumentCoder<ScrollingStateScrollingNode>::decode): Use new aliases.
(ArgumentCoder<FloatScrollSnapOffsetsInfo>::encode): Ditto.
(ArgumentCoder<FloatScrollSnapOffsetsInfo>::decode): Ditto.
(ArgumentCoder<ScrollSnapOffsetsInfo<float>>::encode): Deleted.
(ArgumentCoder<ScrollSnapOffsetsInfo<float>>::decode): Deleted.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (275353 => 275354)


--- trunk/Source/WebCore/ChangeLog	2021-04-01 11:36:19 UTC (rev 275353)
+++ trunk/Source/WebCore/ChangeLog	2021-04-01 11:45:53 UTC (rev 275354)
@@ -1,3 +1,45 @@
+2021-04-01  Martin Robinson  <[email protected]>
+
+        Expose an alias for ScrollSnapOffsetInfo<T> to make it easier to use
+        https://bugs.webkit.org/show_bug.cgi?id=223986
+
+        Reviewed by Sergio Villar Senin.
+
+        No new tests. This should not change behavior.
+
+        * page/scrolling/AsyncScrollingCoordinator.cpp:
+        (WebCore::setStateScrollingNodeSnapOffsetsAsFloat): Use new aliases.
+        * page/scrolling/ScrollSnapOffsetsInfo.cpp:
+        (WebCore::FloatScrollSnapOffsetsInfo::convertUnits const): Ditto.
+        (WebCore::LayoutScrollSnapOffsetsInfo::convertUnits const): Ditto.
+        (WebCore::LayoutScrollSnapOffsetsInfo::closestSnapOffset const): Ditto.
+        (WebCore::FloatScrollSnapOffsetsInfo::closestSnapOffset const): Ditto.
+        (WebCore::ScrollSnapOffsetsInfo<float>::convertUnits const): Deleted.
+        (WebCore::ScrollSnapOffsetsInfo<LayoutUnit>::convertUnits const): Deleted.
+        (WebCore::ScrollSnapOffsetsInfo<LayoutUnit>::closestSnapOffset const): Deleted.
+        (WebCore::ScrollSnapOffsetsInfo<float>::closestSnapOffset const): Deleted.
+        * page/scrolling/ScrollSnapOffsetsInfo.h: Ditto.
+        * page/scrolling/ScrollingStateScrollingNode.cpp:
+        (WebCore::ScrollingStateScrollingNode::setSnapOffsetsInfo): Ditto.
+        * page/scrolling/ScrollingStateScrollingNode.h:
+        (WebCore::ScrollingStateScrollingNode::snapOffsetsInfo const): Ditto.
+        * page/scrolling/ScrollingTreeScrollingNode.cpp:
+        (WebCore::ScrollingTreeScrollingNode::snapOffsetsInfo const): Ditto.
+        * page/scrolling/ScrollingTreeScrollingNode.h: Ditto.
+        * platform/ScrollController.cpp:
+        (WebCore::ScrollController::updateScrollSnapPoints): Ditto.
+        * platform/ScrollController.h: Ditto.
+        * platform/ScrollSnapAnimatorState.h:
+        (WebCore::ScrollSnapAnimatorState::snapOffsetInfo const): Ditto.
+        (WebCore::ScrollSnapAnimatorState::setSnapOffsetInfo): Ditto.
+        * platform/ScrollableArea.cpp:
+        (WebCore::ScrollableArea::ensureSnapOffsetsInfo): Ditto.
+        (WebCore::ScrollableArea::snapOffsetInfo const): Ditto.
+        (WebCore::ScrollableArea::setScrollSnapOffsetInfo): Ditto.
+        * platform/ScrollableArea.h: Ditto.
+        * platform/mac/ScrollAnimatorMac.mm:
+        (WebCore::gestureShouldBeginSnap): Ditto.
+
 2021-04-01  Rob Buis  <[email protected]>
 
         Use Element for checking Settings in CSSComputedStyleDeclaration

Modified: trunk/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp (275353 => 275354)


--- trunk/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp	2021-04-01 11:36:19 UTC (rev 275353)
+++ trunk/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp	2021-04-01 11:45:53 UTC (rev 275354)
@@ -92,10 +92,10 @@
 #endif
 
 #if ENABLE(CSS_SCROLL_SNAP)
-static inline void setStateScrollingNodeSnapOffsetsAsFloat(ScrollingStateScrollingNode& node, const ScrollSnapOffsetsInfo<LayoutUnit>* offsetInfo, float deviceScaleFactor)
+static inline void setStateScrollingNodeSnapOffsetsAsFloat(ScrollingStateScrollingNode& node, const LayoutScrollSnapOffsetsInfo* offsetInfo, float deviceScaleFactor)
 {
     if (!offsetInfo) {
-        node.setSnapOffsetsInfo(ScrollSnapOffsetsInfo<float>());
+        node.setSnapOffsetsInfo(FloatScrollSnapOffsetsInfo());
         return;
     }
 

Modified: trunk/Source/WebCore/page/scrolling/ScrollSnapOffsetsInfo.cpp (275353 => 275354)


--- trunk/Source/WebCore/page/scrolling/ScrollSnapOffsetsInfo.cpp	2021-04-01 11:36:19 UTC (rev 275353)
+++ trunk/Source/WebCore/page/scrolling/ScrollSnapOffsetsInfo.cpp	2021-04-01 11:45:53 UTC (rev 275354)
@@ -377,25 +377,25 @@
 }
 
 template <> template <>
-ScrollSnapOffsetsInfo<LayoutUnit> ScrollSnapOffsetsInfo<float>::convertUnits(float /* unusedScaleFactor */) const
+LayoutScrollSnapOffsetsInfo FloatScrollSnapOffsetsInfo::convertUnits(float /* unusedScaleFactor */) const
 {
     return convertOffsetInfo<float, LayoutUnit>(*this);
 }
 
 template <> template <>
-ScrollSnapOffsetsInfo<float> ScrollSnapOffsetsInfo<LayoutUnit>::convertUnits(float deviceScaleFactor) const
+FloatScrollSnapOffsetsInfo LayoutScrollSnapOffsetsInfo::convertUnits(float deviceScaleFactor) const
 {
     return convertOffsetInfo<LayoutUnit, float>(*this, deviceScaleFactor);
 }
 
 template <>
-std::pair<LayoutUnit, unsigned> ScrollSnapOffsetsInfo<LayoutUnit>::closestSnapOffset(ScrollEventAxis axis, LayoutUnit scrollDestinationOffset, float velocity, Optional<LayoutUnit> originalPositionForDirectionalSnapping) const
+std::pair<LayoutUnit, unsigned> LayoutScrollSnapOffsetsInfo::closestSnapOffset(ScrollEventAxis axis, LayoutUnit scrollDestinationOffset, float velocity, Optional<LayoutUnit> originalPositionForDirectionalSnapping) const
 {
     return closestSnapOffsetWithOffsetsAndRanges(offsetsForAxis(axis), offsetRangesForAxis(axis), scrollDestinationOffset, velocity, originalPositionForDirectionalSnapping);
 }
 
 template <>
-std::pair<float, unsigned> ScrollSnapOffsetsInfo<float>::closestSnapOffset(ScrollEventAxis axis, float scrollDestinationOffset, float velocity, Optional<float> originalPositionForDirectionalSnapping) const
+std::pair<float, unsigned> FloatScrollSnapOffsetsInfo::closestSnapOffset(ScrollEventAxis axis, float scrollDestinationOffset, float velocity, Optional<float> originalPositionForDirectionalSnapping) const
 {
     return closestSnapOffsetWithOffsetsAndRanges(offsetsForAxis(axis), offsetRangesForAxis(axis), scrollDestinationOffset, velocity, originalPositionForDirectionalSnapping);
 }

Modified: trunk/Source/WebCore/page/scrolling/ScrollSnapOffsetsInfo.h (275353 => 275354)


--- trunk/Source/WebCore/page/scrolling/ScrollSnapOffsetsInfo.h	2021-04-01 11:36:19 UTC (rev 275353)
+++ trunk/Source/WebCore/page/scrolling/ScrollSnapOffsetsInfo.h	2021-04-01 11:45:53 UTC (rev 275354)
@@ -89,15 +89,18 @@
     WEBCORE_EXPORT std::pair<T, unsigned> closestSnapOffset(ScrollEventAxis, T scrollDestinationOffset, float velocity, Optional<T> originalPositionForDirectionalSnapping = WTF::nullopt) const;
 };
 
+using LayoutScrollSnapOffsetsInfo = ScrollSnapOffsetsInfo<LayoutUnit>;
+using FloatScrollSnapOffsetsInfo = ScrollSnapOffsetsInfo<float>;
+
 template <> template <>
-ScrollSnapOffsetsInfo<LayoutUnit> ScrollSnapOffsetsInfo<float>::convertUnits(float /* unusedScaleFactor */) const;
+LayoutScrollSnapOffsetsInfo FloatScrollSnapOffsetsInfo::convertUnits(float /* unusedScaleFactor */) const;
 template <>
-WEBCORE_EXPORT std::pair<float, unsigned> ScrollSnapOffsetsInfo<float>::closestSnapOffset(ScrollEventAxis, float scrollDestinationOffset, float velocity, Optional<float> originalPositionForDirectionalSnapping) const;
+WEBCORE_EXPORT std::pair<float, unsigned> FloatScrollSnapOffsetsInfo::closestSnapOffset(ScrollEventAxis, float scrollDestinationOffset, float velocity, Optional<float> originalPositionForDirectionalSnapping) const;
 
 template <> template <>
-ScrollSnapOffsetsInfo<float> ScrollSnapOffsetsInfo<LayoutUnit>::convertUnits(float deviceScaleFactor) const;
+FloatScrollSnapOffsetsInfo LayoutScrollSnapOffsetsInfo::convertUnits(float deviceScaleFactor) const;
 template <>
-WEBCORE_EXPORT std::pair<LayoutUnit, unsigned> ScrollSnapOffsetsInfo<LayoutUnit>::closestSnapOffset(ScrollEventAxis, LayoutUnit scrollDestinationOffset, float velocity, Optional<LayoutUnit> originalPositionForDirectionalSnapping) const;
+WEBCORE_EXPORT std::pair<LayoutUnit, unsigned> LayoutScrollSnapOffsetsInfo::closestSnapOffset(ScrollEventAxis, LayoutUnit scrollDestinationOffset, float velocity, Optional<LayoutUnit> originalPositionForDirectionalSnapping) const;
 
 const unsigned invalidSnapOffsetIndex = UINT_MAX;
 

Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateScrollingNode.cpp (275353 => 275354)


--- trunk/Source/WebCore/page/scrolling/ScrollingStateScrollingNode.cpp	2021-04-01 11:36:19 UTC (rev 275353)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateScrollingNode.cpp	2021-04-01 11:45:53 UTC (rev 275354)
@@ -157,7 +157,7 @@
 }
 
 #if ENABLE(CSS_SCROLL_SNAP)
-void ScrollingStateScrollingNode::setSnapOffsetsInfo(const ScrollSnapOffsetsInfo<float>& info)
+void ScrollingStateScrollingNode::setSnapOffsetsInfo(const FloatScrollSnapOffsetsInfo& info)
 {
     if (m_snapOffsetsInfo.isEqual(info))
         return;

Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateScrollingNode.h (275353 => 275354)


--- trunk/Source/WebCore/page/scrolling/ScrollingStateScrollingNode.h	2021-04-01 11:36:19 UTC (rev 275353)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateScrollingNode.h	2021-04-01 11:45:53 UTC (rev 275354)
@@ -71,8 +71,8 @@
     WEBCORE_EXPORT void setScrollOrigin(const IntPoint&);
 
 #if ENABLE(CSS_SCROLL_SNAP)
-    const ScrollSnapOffsetsInfo<float>& snapOffsetsInfo() const { return m_snapOffsetsInfo; }
-    WEBCORE_EXPORT void setSnapOffsetsInfo(const ScrollSnapOffsetsInfo<float>& newOffsetsInfo);
+    const FloatScrollSnapOffsetsInfo& snapOffsetsInfo() const { return m_snapOffsetsInfo; }
+    WEBCORE_EXPORT void setSnapOffsetsInfo(const FloatScrollSnapOffsetsInfo& newOffsetsInfo);
 
     unsigned currentHorizontalSnapPointIndex() const { return m_currentHorizontalSnapPointIndex; }
     WEBCORE_EXPORT void setCurrentHorizontalSnapPointIndex(unsigned);
@@ -130,7 +130,7 @@
     IntPoint m_scrollOrigin;
 
 #if ENABLE(CSS_SCROLL_SNAP)
-    ScrollSnapOffsetsInfo<float> m_snapOffsetsInfo;
+    FloatScrollSnapOffsetsInfo m_snapOffsetsInfo;
     unsigned m_currentHorizontalSnapPointIndex { 0 };
     unsigned m_currentVerticalSnapPointIndex { 0 };
 #endif

Modified: trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp (275353 => 275354)


--- trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp	2021-04-01 11:36:19 UTC (rev 275353)
+++ trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp	2021-04-01 11:45:53 UTC (rev 275354)
@@ -335,7 +335,7 @@
 }
 
 #if ENABLE(CSS_SCROLL_SNAP)
-const ScrollSnapOffsetsInfo<float>& ScrollingTreeScrollingNode::snapOffsetsInfo() const
+const FloatScrollSnapOffsetsInfo& ScrollingTreeScrollingNode::snapOffsetsInfo() const
 {
     return m_snapOffsetsInfo;
 }

Modified: trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h (275353 => 275354)


--- trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h	2021-04-01 11:36:19 UTC (rev 275353)
+++ trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h	2021-04-01 11:45:53 UTC (rev 275354)
@@ -95,7 +95,7 @@
     bool canHaveScrollbars() const { return m_scrollableAreaParameters.horizontalScrollbarMode != ScrollbarAlwaysOff || m_scrollableAreaParameters.verticalScrollbarMode != ScrollbarAlwaysOff; }
 
 #if ENABLE(CSS_SCROLL_SNAP)
-    const ScrollSnapOffsetsInfo<float>& snapOffsetsInfo() const;
+    const FloatScrollSnapOffsetsInfo& snapOffsetsInfo() const;
     unsigned currentHorizontalSnapPointIndex() const { return m_currentHorizontalSnapPointIndex; }
     unsigned currentVerticalSnapPointIndex() const { return m_currentVerticalSnapPointIndex; }
     void setCurrentHorizontalSnapPointIndex(unsigned index) { m_currentHorizontalSnapPointIndex = index; }
@@ -159,7 +159,7 @@
     FloatPoint m_currentScrollPosition;
     IntPoint m_scrollOrigin;
 #if ENABLE(CSS_SCROLL_SNAP)
-    ScrollSnapOffsetsInfo<float> m_snapOffsetsInfo;
+    FloatScrollSnapOffsetsInfo m_snapOffsetsInfo;
     unsigned m_currentHorizontalSnapPointIndex { 0 };
     unsigned m_currentVerticalSnapPointIndex { 0 };
 #endif

Modified: trunk/Source/WebCore/platform/ScrollController.cpp (275353 => 275354)


--- trunk/Source/WebCore/platform/ScrollController.cpp	2021-04-01 11:36:19 UTC (rev 275353)
+++ trunk/Source/WebCore/platform/ScrollController.cpp	2021-04-01 11:45:53 UTC (rev 275354)
@@ -67,7 +67,7 @@
     updateScrollSnapPoints(*snapOffsetInfo);
 }
 
-void ScrollController::updateScrollSnapPoints(const ScrollSnapOffsetsInfo<LayoutUnit>& snapOffsetInfo)
+void ScrollController::updateScrollSnapPoints(const LayoutScrollSnapOffsetsInfo& snapOffsetInfo)
 {
     if (snapOffsetInfo.isEmpty()) {
         m_scrollSnapState = nullptr;

Modified: trunk/Source/WebCore/platform/ScrollController.h (275353 => 275354)


--- trunk/Source/WebCore/platform/ScrollController.h	2021-04-01 11:36:19 UTC (rev 275353)
+++ trunk/Source/WebCore/platform/ScrollController.h	2021-04-01 11:45:53 UTC (rev 275354)
@@ -132,7 +132,7 @@
     void scrollPositionChanged();
 
 #if ENABLE(CSS_SCROLL_SNAP)
-    void updateScrollSnapPoints(const ScrollSnapOffsetsInfo<LayoutUnit>&);
+    void updateScrollSnapPoints(const LayoutScrollSnapOffsetsInfo&);
     void setActiveScrollSnapIndexForAxis(ScrollEventAxis, unsigned);
     void setActiveScrollSnapIndicesForOffset(ScrollOffset);
     bool activeScrollSnapIndexDidChange() const { return m_activeScrollSnapIndexDidChange; }

Modified: trunk/Source/WebCore/platform/ScrollSnapAnimatorState.h (275353 => 275354)


--- trunk/Source/WebCore/platform/ScrollSnapAnimatorState.h	2021-04-01 11:36:19 UTC (rev 275353)
+++ trunk/Source/WebCore/platform/ScrollSnapAnimatorState.h	2021-04-01 11:45:53 UTC (rev 275354)
@@ -62,8 +62,8 @@
         return axis == ScrollEventAxis::Horizontal ? m_snapOffsetsInfo.horizontalSnapOffsetRanges : m_snapOffsetsInfo.verticalSnapOffsetRanges;
     }
 
-    const ScrollSnapOffsetsInfo<LayoutUnit>& snapOffsetInfo() const { return m_snapOffsetsInfo; }
-    void setSnapOffsetInfo(const ScrollSnapOffsetsInfo<LayoutUnit>& newInfo) { m_snapOffsetsInfo = newInfo; }
+    const LayoutScrollSnapOffsetsInfo& snapOffsetInfo() const { return m_snapOffsetsInfo; }
+    void setSnapOffsetInfo(const LayoutScrollSnapOffsetsInfo& newInfo) { m_snapOffsetsInfo = newInfo; }
 
     void setSnapOffsetsAndPositionRangesForAxis(ScrollEventAxis axis, const Vector<SnapOffset<LayoutUnit>>& snapOffsets, const Vector<ScrollOffsetRange<LayoutUnit>>& snapOffsetRanges)
     {
@@ -106,7 +106,7 @@
 
     ScrollSnapState m_currentState { ScrollSnapState::UserInteraction };
 
-    ScrollSnapOffsetsInfo<LayoutUnit> m_snapOffsetsInfo;
+    LayoutScrollSnapOffsetsInfo m_snapOffsetsInfo;
 
     unsigned m_activeSnapIndexX { 0 };
     unsigned m_activeSnapIndexY { 0 };

Modified: trunk/Source/WebCore/platform/ScrollableArea.cpp (275353 => 275354)


--- trunk/Source/WebCore/platform/ScrollableArea.cpp	2021-04-01 11:36:19 UTC (rev 275353)
+++ trunk/Source/WebCore/platform/ScrollableArea.cpp	2021-04-01 11:45:53 UTC (rev 275354)
@@ -479,19 +479,19 @@
 }
 
 #if ENABLE(CSS_SCROLL_SNAP)
-ScrollSnapOffsetsInfo<LayoutUnit>& ScrollableArea::ensureSnapOffsetsInfo()
+LayoutScrollSnapOffsetsInfo& ScrollableArea::ensureSnapOffsetsInfo()
 {
     if (!m_snapOffsetsInfo)
-        m_snapOffsetsInfo = makeUnique<ScrollSnapOffsetsInfo<LayoutUnit>>();
+        m_snapOffsetsInfo = makeUnique<LayoutScrollSnapOffsetsInfo>();
     return *m_snapOffsetsInfo;
 }
 
-const ScrollSnapOffsetsInfo<LayoutUnit>* ScrollableArea::snapOffsetInfo() const
+const LayoutScrollSnapOffsetsInfo* ScrollableArea::snapOffsetInfo() const
 {
     return m_snapOffsetsInfo.get();
 }
 
-void ScrollableArea::setScrollSnapOffsetInfo(const ScrollSnapOffsetsInfo<LayoutUnit>& info)
+void ScrollableArea::setScrollSnapOffsetInfo(const LayoutScrollSnapOffsetsInfo& info)
 {
     if (info.isEmpty()) {
         clearSnapOffsets();

Modified: trunk/Source/WebCore/platform/ScrollableArea.h (275353 => 275354)


--- trunk/Source/WebCore/platform/ScrollableArea.h	2021-04-01 11:36:19 UTC (rev 275353)
+++ trunk/Source/WebCore/platform/ScrollableArea.h	2021-04-01 11:45:53 UTC (rev 275354)
@@ -91,9 +91,9 @@
     bool usesScrollSnap() const;
 
 #if ENABLE(CSS_SCROLL_SNAP)
-    WEBCORE_EXPORT const ScrollSnapOffsetsInfo<LayoutUnit>* snapOffsetInfo() const;
+    WEBCORE_EXPORT const LayoutScrollSnapOffsetsInfo* snapOffsetInfo() const;
     virtual void updateSnapOffsets() { };
-    void setScrollSnapOffsetInfo(const ScrollSnapOffsetsInfo<LayoutUnit>&);
+    void setScrollSnapOffsetInfo(const LayoutScrollSnapOffsetsInfo&);
     void clearSnapOffsets();
     unsigned currentHorizontalSnapPointIndex() const { return m_currentHorizontalSnapPointIndex; }
     void setCurrentHorizontalSnapPointIndex(unsigned index) { m_currentHorizontalSnapPointIndex = index; }
@@ -385,8 +385,8 @@
     mutable std::unique_ptr<ScrollAnimator> m_scrollAnimator;
 
 #if ENABLE(CSS_SCROLL_SNAP)
-    ScrollSnapOffsetsInfo<LayoutUnit>& ensureSnapOffsetsInfo();
-    std::unique_ptr<ScrollSnapOffsetsInfo<LayoutUnit>> m_snapOffsetsInfo;
+    LayoutScrollSnapOffsetsInfo& ensureSnapOffsetsInfo();
+    std::unique_ptr<LayoutScrollSnapOffsetsInfo> m_snapOffsetsInfo;
     unsigned m_currentHorizontalSnapPointIndex { 0 };
     unsigned m_currentVerticalSnapPointIndex { 0 };
 #endif

Modified: trunk/Source/WebCore/platform/mac/ScrollAnimatorMac.mm (275353 => 275354)


--- trunk/Source/WebCore/platform/mac/ScrollAnimatorMac.mm	2021-04-01 11:36:19 UTC (rev 275353)
+++ trunk/Source/WebCore/platform/mac/ScrollAnimatorMac.mm	2021-04-01 11:45:53 UTC (rev 275354)
@@ -1278,7 +1278,7 @@
 }
 
 #if ENABLE(CSS_SCROLL_SNAP)
-static bool gestureShouldBeginSnap(const PlatformWheelEvent& wheelEvent, ScrollEventAxis axis, const ScrollSnapOffsetsInfo<LayoutUnit>* offsetInfo)
+static bool gestureShouldBeginSnap(const PlatformWheelEvent& wheelEvent, ScrollEventAxis axis, const LayoutScrollSnapOffsetsInfo* offsetInfo)
 {
     if (!offsetInfo)
         return false;

Modified: trunk/Source/WebKit/ChangeLog (275353 => 275354)


--- trunk/Source/WebKit/ChangeLog	2021-04-01 11:36:19 UTC (rev 275353)
+++ trunk/Source/WebKit/ChangeLog	2021-04-01 11:45:53 UTC (rev 275354)
@@ -1,3 +1,17 @@
+2021-04-01  Martin Robinson  <[email protected]>
+
+        Expose an alias for ScrollSnapOffsetInfo<T> to make it easier to use
+        https://bugs.webkit.org/show_bug.cgi?id=223986
+
+        Reviewed by Sergio Villar Senin.
+
+        * Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp:
+        (ArgumentCoder<ScrollingStateScrollingNode>::decode): Use new aliases.
+        (ArgumentCoder<FloatScrollSnapOffsetsInfo>::encode): Ditto.
+        (ArgumentCoder<FloatScrollSnapOffsetsInfo>::decode): Ditto.
+        (ArgumentCoder<ScrollSnapOffsetsInfo<float>>::encode): Deleted.
+        (ArgumentCoder<ScrollSnapOffsetsInfo<float>>::decode): Deleted.
+
 2021-04-01  Per Arne  <[email protected]>
 
         Add IOKit method filter telemetry

Modified: trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp (275353 => 275354)


--- trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp	2021-04-01 11:36:19 UTC (rev 275353)
+++ trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteScrollingCoordinatorTransaction.cpp	2021-04-01 11:45:53 UTC (rev 275354)
@@ -98,9 +98,9 @@
     static WARN_UNUSED_RETURN bool decode(Decoder&, RequestedScrollData&);
 };
 
-template<> struct ArgumentCoder<ScrollSnapOffsetsInfo<float>> {
-    static void encode(Encoder&, const ScrollSnapOffsetsInfo<float>&);
-    static WARN_UNUSED_RETURN bool decode(Decoder&, ScrollSnapOffsetsInfo<float>&);
+template<> struct ArgumentCoder<FloatScrollSnapOffsetsInfo> {
+    static void encode(Encoder&, const FloatScrollSnapOffsetsInfo&);
+    static WARN_UNUSED_RETURN bool decode(Decoder&, FloatScrollSnapOffsetsInfo&);
 };
 
 template<> struct ArgumentCoder<SnapOffset<float>> {
@@ -311,7 +311,7 @@
     SCROLLING_NODE_DECODE(ScrollingStateNode::Property::ScrollPosition, FloatPoint, setScrollPosition);
     SCROLLING_NODE_DECODE(ScrollingStateNode::Property::ScrollOrigin, IntPoint, setScrollOrigin);
 #if ENABLE(CSS_SCROLL_SNAP)
-    SCROLLING_NODE_DECODE(ScrollingStateNode::Property::SnapOffsetsInfo, ScrollSnapOffsetsInfo<float>, setSnapOffsetsInfo);
+    SCROLLING_NODE_DECODE(ScrollingStateNode::Property::SnapOffsetsInfo, FloatScrollSnapOffsetsInfo, setSnapOffsetsInfo);
     SCROLLING_NODE_DECODE(ScrollingStateNode::Property::CurrentHorizontalSnapOffsetIndex, unsigned, setCurrentHorizontalSnapPointIndex);
     SCROLLING_NODE_DECODE(ScrollingStateNode::Property::CurrentVerticalSnapOffsetIndex, unsigned, setCurrentVerticalSnapPointIndex);
 #endif
@@ -544,7 +544,7 @@
 }
 
 
-void ArgumentCoder<ScrollSnapOffsetsInfo<float>>::encode(Encoder& encoder, const ScrollSnapOffsetsInfo<float>& info)
+void ArgumentCoder<FloatScrollSnapOffsetsInfo>::encode(Encoder& encoder, const FloatScrollSnapOffsetsInfo& info)
 {
     encoder << info.horizontalSnapOffsets;
     encoder << info.verticalSnapOffsets;
@@ -552,7 +552,7 @@
     encoder << info.verticalSnapOffsetRanges;
 }
 
-bool ArgumentCoder<ScrollSnapOffsetsInfo<float>>::decode(Decoder& decoder, ScrollSnapOffsetsInfo<float>& info)
+bool ArgumentCoder<FloatScrollSnapOffsetsInfo>::decode(Decoder& decoder, FloatScrollSnapOffsetsInfo& info)
 {
     if (!decoder.decode(info.horizontalSnapOffsets))
         return false;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to