diff --git a/Libraries/Components/ScrollView/ScrollView.js b/Libraries/Components/ScrollView/ScrollView.js index f1c222526..290541584 100644 --- a/Libraries/Components/ScrollView/ScrollView.js +++ b/Libraries/Components/ScrollView/ScrollView.js @@ -301,6 +301,13 @@ type AndroidProps = $ReadOnly<{| * @platform android */ overScrollMode?: ?('auto' | 'always' | 'never'), + /** + * Causes the scrollbars not to turn transparent when they are not in use. + * The default value is false. + * + * @platform android + */ + persistentScrollbar?: ?boolean, |}>; type VRProps = $ReadOnly<{| @@ -442,6 +449,7 @@ export type Props = $ReadOnly<{| * Note: Vertical pagination is not supported on Android. */ pagingEnabled?: ?boolean, + /** * When false, the view cannot be scrolled via touch interaction. * The default value is true. diff --git a/Libraries/Lists/VirtualizedList.js b/Libraries/Lists/VirtualizedList.js index 9e10cbee4..61af5ea0a 100644 --- a/Libraries/Lists/VirtualizedList.js +++ b/Libraries/Lists/VirtualizedList.js @@ -175,6 +175,7 @@ type OptionalProps = { viewableItems: Array, changed: Array, }) => void, + persistentScrollbar?: ?boolean, /** * Set this when offset is needed for the loading indicator to show correctly. * @platform android 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 5ea8096ff..6c7ff1a21 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 @@ -255,4 +255,9 @@ public class ReactHorizontalScrollViewManager public void setOverflow(ReactHorizontalScrollView view, @Nullable String overflow) { view.setOverflow(overflow); } + + @ReactProp(name = "persistentScrollbar") + public void setPersistentScrollbar(ReactHorizontalScrollView view, boolean value) { + view.setScrollbarFadingEnabled(!value); + } } diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java index 24eaee6d4..b0a77556b 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java @@ -264,6 +264,11 @@ public class ReactScrollViewManager } } + @ReactProp(name = "persistentScrollbar") + public void setPersistentScrollbar(ReactScrollView view, boolean value) { + view.setScrollbarFadingEnabled(!value); + } + @Override public @Nullable Map getExportedCustomDirectEventTypeConstants() { return createExportedCustomDirectEventTypeConstants();