diff --git a/Libraries/Components/Slider/SliderNativeComponent.js b/Libraries/Components/Slider/SliderNativeComponent.js index d31c0563e07..739bce7b2a6 100644 --- a/Libraries/Components/Slider/SliderNativeComponent.js +++ b/Libraries/Components/Slider/SliderNativeComponent.js @@ -48,8 +48,8 @@ type NativeProps = $ReadOnly<{| // Events onChange?: ?BubblingEventHandler, - onValueChange?: ?BubblingEventHandler, - onSlidingComplete?: ?DirectEventHandler, + onValueChange?: ?BubblingEventHandler, + onSlidingComplete?: ?DirectEventHandler, |}>; export default (codegenNativeComponent('Slider', { diff --git a/Libraries/ReactNative/getNativeComponentAttributes.js b/Libraries/ReactNative/getNativeComponentAttributes.js index a98daa14274..64eb4248856 100644 --- a/Libraries/ReactNative/getNativeComponentAttributes.js +++ b/Libraries/ReactNative/getNativeComponentAttributes.js @@ -188,6 +188,8 @@ function getProcessorForType(typeName: string): ?(nextProp: any) => any { return processColor; case 'ColorArray': return processColorArray; + case 'ImageSource': + return resolveAssetSource; } return null; } diff --git a/React/Views/RCTSliderManager.m b/React/Views/RCTSliderManager.m index a7a54ceeda0..9c871f6941a 100644 --- a/React/Views/RCTSliderManager.m +++ b/React/Views/RCTSliderManager.m @@ -86,5 +86,6 @@ RCT_CUSTOM_VIEW_PROPERTY(disabled, BOOL, RCTSlider) view.enabled = defaultView.enabled; } } +RCT_CUSTOM_VIEW_PROPERTY(enabled, BOOL, RCTSlider) {} @end diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java index f8040636a00..78203bbaf20 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java @@ -221,12 +221,15 @@ public class ReactSliderManager extends SimpleViewManager } @Override + @ReactProp(name = "disabled") public void setDisabled(ReactSlider view, boolean value) {} @Override + @ReactProp(name = "maximumTrackImage", customType = "ImageSource") public void setMaximumTrackImage(ReactSlider view, @Nullable ReadableMap value) {} @Override + @ReactProp(name = "minimumTrackImage", customType = "ImageSource") public void setMinimumTrackImage(ReactSlider view, @Nullable ReadableMap value) {} @Override @@ -235,9 +238,11 @@ public class ReactSliderManager extends SimpleViewManager } @Override + @ReactProp(name = "thumbImage", customType = "ImageSource") public void setThumbImage(ReactSlider view, @Nullable ReadableMap value) {} @Override + @ReactProp(name = "trackImage", customType = "ImageSource") public void setTrackImage(ReactSlider view, @Nullable ReadableMap value) {} @Override @@ -258,6 +263,25 @@ public class ReactSliderManager extends SimpleViewManager return eventTypeConstants; } + @Nullable + @Override + public Map getExportedCustomBubblingEventTypeConstants() { + @Nullable + Map baseEventTypeConstants = + super.getExportedCustomBubblingEventTypeConstants(); + Map eventTypeConstants = + baseEventTypeConstants == null ? new HashMap() : baseEventTypeConstants; + eventTypeConstants.putAll( + MapBuilder.builder() + .put( + "topValueChange", + MapBuilder.of( + "phasedRegistrationNames", + MapBuilder.of("bubbled", "onValueChange", "captured", "onValueChangeCapture"))) + .build()); + return eventTypeConstants; + } + @Override public long measure( Context context,