react-native-webview.git

RNCWKWebView.h 1.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /**
  2. * Copyright (c) 2015-present, Facebook, Inc.
  3. *
  4. * This source code is licensed under the MIT license found in the
  5. * LICENSE file in the root directory of this source tree.
  6. */
  7. #import <React/RCTView.h>
  8. #import <React/RCTDefines.h>
  9. #import <WebKit/WebKit.h>
  10. @class RNCWKWebView;
  11. @protocol RNCWKWebViewDelegate <NSObject>
  12. - (BOOL)webView:(RNCWKWebView *)webView
  13. shouldStartLoadForRequest:(NSMutableDictionary<NSString *, id> *)request
  14. withCallback:(RCTDirectEventBlock)callback;
  15. @end
  16. @interface RNCWKWebView : RCTView
  17. @property (nonatomic, weak) id<RNCWKWebViewDelegate> delegate;
  18. @property (nonatomic, copy) NSDictionary *source;
  19. @property (nonatomic, assign) BOOL messagingEnabled;
  20. @property (nonatomic, copy) NSString *injectedJavaScript;
  21. @property (nonatomic, assign) BOOL scrollEnabled;
  22. @property (nonatomic, assign) CGFloat decelerationRate;
  23. @property (nonatomic, assign) BOOL allowsInlineMediaPlayback;
  24. @property (nonatomic, assign) BOOL bounces;
  25. @property (nonatomic, assign) BOOL mediaPlaybackRequiresUserAction;
  26. #if WEBKIT_IOS_10_APIS_AVAILABLE
  27. @property (nonatomic, assign) WKDataDetectorTypes dataDetectorTypes;
  28. #endif
  29. @property (nonatomic, assign) UIEdgeInsets contentInset;
  30. @property (nonatomic, assign) BOOL automaticallyAdjustContentInsets;
  31. @property (nonatomic, assign) BOOL hideKeyboardAccessoryView;
  32. - (void)postMessage:(NSString *)message;
  33. - (void)injectJavaScript:(NSString *)script;
  34. - (void)goForward;
  35. - (void)goBack;
  36. - (void)reload;
  37. - (void)stopLoading;
  38. @end