Skip to content

Commit c6e5640

Browse files
mdvaccafacebook-github-bot
authored andcommitted
Add snapToAlignment to ReactScrollViewManager
Summary: This diff adds the new snapToAlignment into ReactScrollViewManager changelog: [Android][Added] Implement snapToAlignment into ReactScrollViewManager Reviewed By: JoshuaGross Differential Revision: D31182787 fbshipit-source-id: 8049ceb462461a11f184dbc1b40ca8079a3e8b60
1 parent d97a1a5 commit c6e5640

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java

+7
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77

88
package com.facebook.react.views.scroll;
99

10+
import static com.facebook.react.views.scroll.ReactScrollViewHelper.SNAP_ALIGNMENT_DISABLED;
11+
1012
import android.animation.Animator;
1113
import android.animation.ObjectAnimator;
1214
import android.animation.PropertyValuesHolder;
@@ -92,6 +94,7 @@ public class ReactScrollView extends ScrollView
9294
private @Nullable List<Integer> mSnapOffsets;
9395
private boolean mSnapToStart = true;
9496
private boolean mSnapToEnd = true;
97+
private int mSnapToAlignment = SNAP_ALIGNMENT_DISABLED;
9598
private @Nullable View mContentView;
9699
private ReactViewBackgroundManager mReactBackgroundManager;
97100
private int pendingContentOffsetX = UNSET_CONTENT_OFFSET;
@@ -218,6 +221,10 @@ public void setSnapToEnd(boolean snapToEnd) {
218221
mSnapToEnd = snapToEnd;
219222
}
220223

224+
public void setSnapToAlignment(int snapToAlignment) {
225+
mSnapToAlignment = snapToAlignment;
226+
}
227+
221228
public void flashScrollIndicators() {
222229
awakenScrollBars();
223230
}

ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java

+5
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,11 @@ public void setSnapToOffsets(ReactScrollView view, @Nullable ReadableArray snapT
115115
view.setSnapOffsets(offsets);
116116
}
117117

118+
@ReactProp(name = "snapToAlignment")
119+
public void setSnapToAlignment(ReactScrollView view, String alignment) {
120+
view.setSnapToAlignment(ReactScrollViewHelper.parseSnapToAlignment(alignment));
121+
}
122+
118123
@ReactProp(name = "snapToStart")
119124
public void setSnapToStart(ReactScrollView view, boolean snapToStart) {
120125
view.setSnapToStart(snapToStart);

0 commit comments

Comments
 (0)