RN: Update ViewConfig for ScrollView
Summary: Updates `ReactScrollViewManager` and the `ViewConfig` for `ScrollView` so that they are equivalent. - `inverted` was missing. - `contentOffset` was missing differ on Android. (However, there does not seem to be any perceivable behavior difference besides the native `ViewConfig` being different.) Changelog: [Internal] Reviewed By: JoshuaGross Differential Revision: D25084470 fbshipit-source-id: 8bea3b7a692c1038819a4147b174583a4faa71e9
This commit is contained in:
Родитель
de92e7405d
Коммит
f6b8736b09
|
@ -10,7 +10,7 @@
|
|||
|
||||
'use strict';
|
||||
|
||||
import type {PartialViewConfig} from 'react-native/Libraries/Renderer/shims/ReactNativeTypes';
|
||||
import type {PartialViewConfig} from '../../Renderer/shims/ReactNativeTypes';
|
||||
|
||||
const ScrollViewViewConfig = {
|
||||
uiViewClassName: 'RCTScrollView',
|
||||
|
@ -28,15 +28,22 @@ const ScrollViewViewConfig = {
|
|||
bouncesZoom: true,
|
||||
canCancelContentTouches: true,
|
||||
centerContent: true,
|
||||
contentInset: {diff: require('../../Utilities/differ/pointsDiffer')},
|
||||
contentOffset: {diff: require('../../Utilities/differ/pointsDiffer')},
|
||||
contentInset: {
|
||||
diff: require('../../Utilities/differ/pointsDiffer'),
|
||||
},
|
||||
contentOffset: {
|
||||
diff: require('../../Utilities/differ/pointsDiffer'),
|
||||
},
|
||||
contentInsetAdjustmentBehavior: true,
|
||||
decelerationRate: true,
|
||||
directionalLockEnabled: true,
|
||||
disableIntervalMomentum: true,
|
||||
endFillColor: {process: require('../../StyleSheet/processColor')},
|
||||
endFillColor: {
|
||||
process: require('../../StyleSheet/processColor'),
|
||||
},
|
||||
fadingEdgeLength: true,
|
||||
indicatorStyle: true,
|
||||
inverted: true,
|
||||
keyboardDismissMode: true,
|
||||
maintainVisibleContentPosition: true,
|
||||
maximumZoomScale: true,
|
||||
|
|
|
@ -154,7 +154,8 @@ function getDifferForType(
|
|||
case 'UIEdgeInsets':
|
||||
return insetsDiffer;
|
||||
// Android Types
|
||||
// (not yet implemented)
|
||||
case 'Point':
|
||||
return pointsDiffer;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -305,7 +305,7 @@ public class ReactScrollViewManager extends ViewGroupManager<ReactScrollView>
|
|||
}
|
||||
}
|
||||
|
||||
@ReactProp(name = "contentOffset")
|
||||
@ReactProp(name = "contentOffset", customType = "Point")
|
||||
public void setContentOffset(ReactScrollView view, ReadableMap value) {
|
||||
if (value != null) {
|
||||
double x = value.hasKey("x") ? value.getDouble("x") : 0;
|
||||
|
|
Загрузка…
Ссылка в новой задаче