49 lines
1.4 KiB
Objective-C
49 lines
1.4 KiB
Objective-C
/**
|
|
* Copyright (c) 2015-present, Facebook, Inc.
|
|
* All rights reserved.
|
|
*
|
|
* This source code is licensed under the BSD-style license found in the
|
|
* LICENSE file in the root directory of this source tree. An additional grant
|
|
* of patent rights can be found in the PATENTS file in the same directory.
|
|
*/
|
|
|
|
#import <React/RCTView.h>
|
|
|
|
@class RCTWebView;
|
|
|
|
/**
|
|
* Special scheme used to pass messages to the injectedJavaScript
|
|
* code without triggering a page load. Usage:
|
|
*
|
|
* window.location.href = RCTJSNavigationScheme + '://hello'
|
|
*/
|
|
extern NSString *const RCTJSNavigationScheme;
|
|
|
|
@protocol RCTWebViewDelegate <NSObject>
|
|
|
|
- (BOOL)webView:(RCTWebView *)webView
|
|
shouldStartLoadForRequest:(NSMutableDictionary<NSString *, id> *)request
|
|
withCallback:(RCTDirectEventBlock)callback;
|
|
|
|
@end
|
|
|
|
@interface RCTWebView : RCTView
|
|
|
|
@property (nonatomic, weak) id<RCTWebViewDelegate> delegate;
|
|
|
|
@property (nonatomic, copy) NSDictionary *source;
|
|
@property (nonatomic, assign) UIEdgeInsets contentInset;
|
|
@property (nonatomic, assign) BOOL automaticallyAdjustContentInsets;
|
|
@property (nonatomic, assign) BOOL messagingEnabled;
|
|
@property (nonatomic, copy) NSString *injectedJavaScript;
|
|
@property (nonatomic, assign) BOOL scalesPageToFit;
|
|
|
|
- (void)goForward;
|
|
- (void)goBack;
|
|
- (void)reload;
|
|
- (void)stopLoading;
|
|
- (void)postMessage:(NSString *)message;
|
|
- (void)injectJavaScript:(NSString *)script;
|
|
|
|
@end
|