From deec1db9fdf2848941326ba5bebc11f3592a301e Mon Sep 17 00:00:00 2001 From: David Vacca Date: Wed, 29 Sep 2021 01:46:07 -0700 Subject: [PATCH] Add snapToAlignment to ReactHorizontalScrollViewManager Summary: This diff adds the new snapToAlignment into ReactHorizontalScrollViewManager changelog: [Android][Added] Implement snapToAlignment into ReactHorizontalScrollViewManager Reviewed By: JoshuaGross Differential Revision: D31174545 fbshipit-source-id: c56bfca207980428be98dd21a5387a0ff6bcd296 --- .../scroll/ReactHorizontalScrollView.java | 7 +++++++ .../ReactHorizontalScrollViewManager.java | 5 +++++ .../views/scroll/ReactScrollViewHelper.java | 20 +++++++++++++++++++ 3 files changed, 32 insertions(+) diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java index ab8ab73ffc8..4ad2aede460 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java @@ -7,6 +7,8 @@ package com.facebook.react.views.scroll; +import static com.facebook.react.views.scroll.ReactScrollViewHelper.SNAP_ALIGNMENT_DISABLED; + import android.animation.Animator; import android.animation.ObjectAnimator; import android.animation.PropertyValuesHolder; @@ -94,6 +96,7 @@ public class ReactHorizontalScrollView extends HorizontalScrollView private @Nullable List mSnapOffsets; private boolean mSnapToStart = true; private boolean mSnapToEnd = true; + private int mSnapToAlignment = SNAP_ALIGNMENT_DISABLED; private ReactViewBackgroundManager mReactBackgroundManager; private boolean mPagedArrowScrolling = false; private int pendingContentOffsetX = UNSET_CONTENT_OFFSET; @@ -239,6 +242,10 @@ public class ReactHorizontalScrollView extends HorizontalScrollView mSnapToEnd = snapToEnd; } + public void setSnapToAlignment(int snapToAlignment) { + mSnapToAlignment = snapToAlignment; + } + public void flashScrollIndicators() { awakenScrollBars(); } diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java index 05112f45e44..5775d3106c7 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java @@ -102,6 +102,11 @@ public class ReactHorizontalScrollViewManager extends ViewGroupManager