diff --git a/React/Views/RCTWKWebView.h b/React/Views/RCTWKWebView.h index d094b72d4dd..ca1d3ae1936 100644 --- a/React/Views/RCTWKWebView.h +++ b/React/Views/RCTWKWebView.h @@ -20,6 +20,7 @@ @property (nonatomic, copy) NSDictionary *source; @property (nonatomic, assign) BOOL messagingEnabled; @property (nonatomic, copy) NSString *injectedJavaScript; +@property (nonatomic, assign) BOOL scrollEnabled; - (void)postMessage:(NSString *)message; diff --git a/React/Views/RCTWKWebView.m b/React/Views/RCTWKWebView.m index 2c9aef5e570..63bab215932 100644 --- a/React/Views/RCTWKWebView.m +++ b/React/Views/RCTWKWebView.m @@ -85,6 +85,11 @@ static NSString *const MessageHanderName = @"ReactNative"; } } +- (void)setScrollEnabled:(BOOL)scrollEnabled +{ + _webView.scrollView.scrollEnabled = scrollEnabled; +} + - (void)postMessage:(NSString *)message { NSDictionary *eventInitDict = @{@"data": message}; diff --git a/React/Views/RCTWKWebViewManager.m b/React/Views/RCTWKWebViewManager.m index a2f8df4a5fb..5b71de0c7ac 100644 --- a/React/Views/RCTWKWebViewManager.m +++ b/React/Views/RCTWKWebViewManager.m @@ -37,5 +37,8 @@ RCT_EXPORT_METHOD(postMessage:(nonnull NSNumber *)reactTag message:(NSString *)m } RCT_REMAP_VIEW_PROPERTY(bounces, _webView.scrollView.bounces, BOOL) +RCT_CUSTOM_VIEW_PROPERTY(scrollEnabled, BOOL, RCTWKWebView) { + view.scrollEnabled = json == nil ? true : [RCTConvert BOOL: json]; +} @end