@exodus/react-native-webview 11.26.1-exodus.8 → 13.16.0-exodus.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +36 -63
- package/android/build.gradle +83 -110
- package/android/gradle.properties +3 -4
- package/android/src/main/AndroidManifest.xml +12 -0
- package/android/src/main/AndroidManifestNew.xml +26 -0
- package/android/src/main/java/com/reactnativecommunity/webview/RNCBasicAuthCredential.java +11 -0
- package/android/src/main/java/com/reactnativecommunity/webview/RNCWebChromeClient.java +407 -0
- package/android/src/main/java/com/reactnativecommunity/webview/RNCWebView.java +468 -0
- package/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewClient.java +330 -0
- package/android/src/main/java/com/reactnativecommunity/webview/{WebViewConfig.java → RNCWebViewConfig.java} +3 -4
- package/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewFileProvider.java +1 -1
- package/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManagerImpl.kt +746 -0
- package/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewMessagingModule.kt +9 -0
- package/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewModuleImpl.java +554 -0
- package/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewPackage.java +57 -12
- package/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewWrapper.kt +39 -0
- package/android/src/main/java/com/reactnativecommunity/webview/events/SubResourceErrorEvent.kt +25 -0
- package/android/src/main/java/com/reactnativecommunity/webview/events/TopCustomMenuSelectionEvent.kt +24 -0
- package/android/src/main/java/com/reactnativecommunity/webview/events/TopHttpErrorEvent.kt +25 -0
- package/android/src/main/java/com/reactnativecommunity/webview/events/TopNewWindowEvent.kt +25 -0
- package/android/src/main/java/com/reactnativecommunity/webview/events/TopRenderProcessGoneEvent.kt +25 -0
- package/android/src/newarch/com/reactnativecommunity/webview/RNCWebViewManager.java +570 -0
- package/android/src/newarch/com/reactnativecommunity/webview/RNCWebViewModule.java +57 -0
- package/android/src/oldarch/com/reactnativecommunity/webview/RNCWebViewManager.java +341 -0
- package/android/src/oldarch/com/reactnativecommunity/webview/RNCWebViewModule.java +59 -0
- package/apple/RCTConvert+WKDataDetectorTypes.h +11 -0
- package/apple/RCTConvert+WKDataDetectorTypes.m +27 -0
- package/apple/RNCWebView.h +26 -100
- package/apple/RNCWebView.mm +555 -0
- package/apple/RNCWebViewDecisionManager.h +20 -0
- package/apple/RNCWebViewDecisionManager.m +47 -0
- package/apple/RNCWebViewImpl.h +164 -0
- package/apple/{RNCWebView.m → RNCWebViewImpl.m} +803 -226
- package/apple/RNCWebViewManager.h +4 -8
- package/apple/RNCWebViewManager.mm +221 -0
- package/apple/RNCWebViewModule.h +23 -0
- package/apple/RNCWebViewModule.mm +34 -0
- package/index.d.ts +2 -3
- package/lib/NativeRNCWebViewModule.d.ts +8 -0
- package/lib/NativeRNCWebViewModule.js +1 -0
- package/lib/RNCWebViewNativeComponent.d.ts +245 -0
- package/lib/RNCWebViewNativeComponent.js +1 -0
- package/lib/WebView.android.d.ts +0 -1
- package/lib/WebView.android.js +1 -135
- package/lib/WebView.d.ts +2 -3
- package/lib/WebView.ios.d.ts +0 -1
- package/lib/WebView.ios.js +1 -114
- package/lib/WebView.js +1 -11
- package/lib/WebView.macos.d.ts +6 -0
- package/lib/WebView.macos.js +1 -0
- package/lib/WebView.styles.d.ts +37 -11
- package/lib/WebView.styles.js +1 -33
- package/lib/WebView.windows.d.ts +17 -0
- package/lib/WebView.windows.js +1 -0
- package/lib/WebViewNativeComponent.macos.d.ts +3 -0
- package/lib/WebViewNativeComponent.macos.js +1 -0
- package/lib/WebViewNativeComponent.windows.d.ts +3 -0
- package/lib/WebViewNativeComponent.windows.js +1 -0
- package/lib/WebViewShared.d.ts +30 -9
- package/lib/WebViewShared.js +1 -174
- package/lib/WebViewTypes.d.ts +514 -98
- package/lib/WebViewTypes.js +1 -6
- package/lib/index.d.ts +0 -1
- package/lib/index.js +1 -3
- package/lib/validation.d.ts +3 -0
- package/lib/validation.js +1 -0
- package/package.json +57 -33
- package/react-native-webview.podspec +32 -5
- package/react-native.config.js +22 -18
- package/src/NativeRNCWebViewModule.ts +13 -0
- package/src/RNCWebViewNativeComponent.ts +348 -0
- package/src/WebView.android.tsx +345 -0
- package/src/WebView.ios.tsx +341 -0
- package/src/WebView.macos.tsx +252 -0
- package/src/WebView.styles.ts +41 -0
- package/src/WebView.tsx +25 -0
- package/src/WebView.windows.tsx +217 -0
- package/src/WebViewNativeComponent.macos.ts +7 -0
- package/src/WebViewNativeComponent.windows.ts +8 -0
- package/src/WebViewShared.tsx +476 -0
- package/src/WebViewTypes.ts +1402 -0
- package/src/__tests__/WebViewShared-test.js +323 -0
- package/src/__tests__/__snapshots__/WebViewShared-test.js.snap +8 -0
- package/src/__tests__/validation-test.js +38 -0
- package/src/index.ts +4 -0
- package/src/validation.ts +20 -0
- package/android/.editorconfig +0 -6
- package/android/.gradle/7.4.2/checksums/checksums.lock +0 -0
- package/android/.gradle/7.4.2/dependencies-accessors/dependencies-accessors.lock +0 -0
- package/android/.gradle/7.4.2/dependencies-accessors/gc.properties +0 -0
- package/android/.gradle/7.4.2/executionHistory/executionHistory.lock +0 -0
- package/android/.gradle/7.4.2/fileChanges/last-build.bin +0 -0
- package/android/.gradle/7.4.2/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/7.4.2/gc.properties +0 -0
- package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/android/.gradle/buildOutputCleanup/cache.properties +0 -2
- package/android/.gradle/vcs-1/gc.properties +0 -0
- package/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManager.java +0 -1408
- package/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewModule.java +0 -506
- package/apple/RNCWebViewManager.m +0 -278
- package/ios/Pods/Manifest.lock +0 -3
- package/ios/Pods/Pods.xcodeproj/project.pbxproj +0 -397
- package/ios/Pods/Pods.xcodeproj/xcuserdata/gabrielezenwankwo.xcuserdatad/xcschemes/Pods-RNCWebView.xcscheme +0 -58
- package/ios/Pods/Pods.xcodeproj/xcuserdata/gabrielezenwankwo.xcuserdatad/xcschemes/xcschememanagement.plist +0 -16
- package/ios/Pods/Target Support Files/Pods-RNCWebView/Pods-RNCWebView-Info.plist +0 -26
- package/ios/Pods/Target Support Files/Pods-RNCWebView/Pods-RNCWebView-acknowledgements.markdown +0 -3
- package/ios/Pods/Target Support Files/Pods-RNCWebView/Pods-RNCWebView-acknowledgements.plist +0 -29
- package/ios/Pods/Target Support Files/Pods-RNCWebView/Pods-RNCWebView-dummy.m +0 -5
- package/ios/Pods/Target Support Files/Pods-RNCWebView/Pods-RNCWebView-umbrella.h +0 -16
- package/ios/Pods/Target Support Files/Pods-RNCWebView/Pods-RNCWebView.debug.xcconfig +0 -8
- package/ios/Pods/Target Support Files/Pods-RNCWebView/Pods-RNCWebView.modulemap +0 -6
- package/ios/Pods/Target Support Files/Pods-RNCWebView/Pods-RNCWebView.release.xcconfig +0 -8
- package/lib/UpdateOS.d.ts +0 -6
- package/lib/UpdateOS.js +0 -49
- package/lib/WebViewNativeComponent.android.d.ts +0 -4
- package/lib/WebViewNativeComponent.android.js +0 -3
- package/lib/WebViewNativeComponent.ios.d.ts +0 -4
- package/lib/WebViewNativeComponent.ios.js +0 -3
package/android/src/main/java/com/reactnativecommunity/webview/events/SubResourceErrorEvent.kt
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
package com.reactnativecommunity.webview.events
|
|
2
|
+
|
|
3
|
+
import com.facebook.react.bridge.WritableMap
|
|
4
|
+
import com.facebook.react.uimanager.events.Event
|
|
5
|
+
import com.facebook.react.uimanager.events.RCTEventEmitter
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Event emitted when there is an error in loading a subresource
|
|
9
|
+
*/
|
|
10
|
+
class SubResourceErrorEvent(viewId: Int, private val mEventData: WritableMap) :
|
|
11
|
+
Event<SubResourceErrorEvent>(viewId) {
|
|
12
|
+
companion object {
|
|
13
|
+
const val EVENT_NAME = "topLoadingSubResourceError"
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
override fun getEventName(): String = EVENT_NAME
|
|
17
|
+
|
|
18
|
+
override fun canCoalesce(): Boolean = false
|
|
19
|
+
|
|
20
|
+
override fun getCoalescingKey(): Short = 0
|
|
21
|
+
|
|
22
|
+
override fun dispatch(rctEventEmitter: RCTEventEmitter) =
|
|
23
|
+
rctEventEmitter.receiveEvent(viewTag, eventName, mEventData)
|
|
24
|
+
|
|
25
|
+
}
|
package/android/src/main/java/com/reactnativecommunity/webview/events/TopCustomMenuSelectionEvent.kt
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
package com.reactnativecommunity.webview.events
|
|
2
|
+
|
|
3
|
+
import com.facebook.react.bridge.WritableMap
|
|
4
|
+
import com.facebook.react.uimanager.events.Event
|
|
5
|
+
import com.facebook.react.uimanager.events.RCTEventEmitter
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Event emitted when there is a loading progress event.
|
|
9
|
+
*/
|
|
10
|
+
class TopCustomMenuSelectionEvent(viewId: Int, private val mEventData: WritableMap) :
|
|
11
|
+
Event<TopCustomMenuSelectionEvent>(viewId) {
|
|
12
|
+
companion object {
|
|
13
|
+
const val EVENT_NAME = "topCustomMenuSelection"
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
override fun getEventName(): String = EVENT_NAME
|
|
17
|
+
|
|
18
|
+
override fun canCoalesce(): Boolean = false
|
|
19
|
+
|
|
20
|
+
override fun getCoalescingKey(): Short = 0
|
|
21
|
+
|
|
22
|
+
override fun dispatch(rctEventEmitter: RCTEventEmitter) =
|
|
23
|
+
rctEventEmitter.receiveEvent(viewTag, eventName, mEventData)
|
|
24
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
package com.reactnativecommunity.webview.events
|
|
2
|
+
|
|
3
|
+
import com.facebook.react.bridge.WritableMap
|
|
4
|
+
import com.facebook.react.uimanager.events.Event
|
|
5
|
+
import com.facebook.react.uimanager.events.RCTEventEmitter
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Event emitted when an HTTP error is received.
|
|
9
|
+
*/
|
|
10
|
+
class TopHttpErrorEvent(viewId: Int, private val mEventData: WritableMap) :
|
|
11
|
+
Event<TopHttpErrorEvent>(viewId) {
|
|
12
|
+
companion object {
|
|
13
|
+
const val EVENT_NAME = "topHttpError"
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
override fun getEventName(): String = EVENT_NAME
|
|
17
|
+
|
|
18
|
+
override fun canCoalesce(): Boolean = false
|
|
19
|
+
|
|
20
|
+
override fun getCoalescingKey(): Short = 0
|
|
21
|
+
|
|
22
|
+
override fun dispatch(rctEventEmitter: RCTEventEmitter) =
|
|
23
|
+
rctEventEmitter.receiveEvent(viewTag, eventName, mEventData)
|
|
24
|
+
|
|
25
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
package com.reactnativecommunity.webview.events
|
|
2
|
+
|
|
3
|
+
import com.facebook.react.bridge.WritableMap
|
|
4
|
+
import com.facebook.react.uimanager.events.Event
|
|
5
|
+
import com.facebook.react.uimanager.events.RCTEventEmitter
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Event emitted when the WebView opens a new Window (i.e: target=_blank)
|
|
9
|
+
*/
|
|
10
|
+
class TopOpenWindowEvent(viewId: Int, private val mEventData: WritableMap) :
|
|
11
|
+
Event<TopOpenWindowEvent>(viewId) {
|
|
12
|
+
companion object {
|
|
13
|
+
const val EVENT_NAME = "topOpenWindow"
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
override fun getEventName(): String = EVENT_NAME
|
|
17
|
+
|
|
18
|
+
override fun canCoalesce(): Boolean = false
|
|
19
|
+
|
|
20
|
+
override fun getCoalescingKey(): Short = 0
|
|
21
|
+
|
|
22
|
+
override fun dispatch(rctEventEmitter: RCTEventEmitter) =
|
|
23
|
+
rctEventEmitter.receiveEvent(viewTag, eventName, mEventData)
|
|
24
|
+
|
|
25
|
+
}
|
package/android/src/main/java/com/reactnativecommunity/webview/events/TopRenderProcessGoneEvent.kt
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
package com.reactnativecommunity.webview.events
|
|
2
|
+
|
|
3
|
+
import com.facebook.react.bridge.WritableMap
|
|
4
|
+
import com.facebook.react.uimanager.events.Event
|
|
5
|
+
import com.facebook.react.uimanager.events.RCTEventEmitter
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Event emitted when the render process is gone.
|
|
9
|
+
*/
|
|
10
|
+
class TopRenderProcessGoneEvent(viewId: Int, private val mEventData: WritableMap) :
|
|
11
|
+
Event<TopRenderProcessGoneEvent>(viewId) {
|
|
12
|
+
companion object {
|
|
13
|
+
const val EVENT_NAME = "topRenderProcessGone"
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
override fun getEventName(): String = EVENT_NAME
|
|
17
|
+
|
|
18
|
+
override fun canCoalesce(): Boolean = false
|
|
19
|
+
|
|
20
|
+
override fun getCoalescingKey(): Short = 0
|
|
21
|
+
|
|
22
|
+
override fun dispatch(rctEventEmitter: RCTEventEmitter) =
|
|
23
|
+
rctEventEmitter.receiveEvent(viewTag, eventName, mEventData)
|
|
24
|
+
|
|
25
|
+
}
|
|
@@ -0,0 +1,570 @@
|
|
|
1
|
+
package com.reactnativecommunity.webview;
|
|
2
|
+
|
|
3
|
+
import androidx.annotation.NonNull;
|
|
4
|
+
import androidx.annotation.Nullable;
|
|
5
|
+
|
|
6
|
+
import com.facebook.react.bridge.ReadableArray;
|
|
7
|
+
import com.facebook.react.bridge.ReadableMap;
|
|
8
|
+
import com.facebook.react.common.MapBuilder;
|
|
9
|
+
import com.facebook.react.module.annotations.ReactModule;
|
|
10
|
+
import com.facebook.react.uimanager.ThemedReactContext;
|
|
11
|
+
import com.facebook.react.uimanager.ViewGroupManager;
|
|
12
|
+
import com.facebook.react.uimanager.ViewManagerDelegate;
|
|
13
|
+
import com.facebook.react.uimanager.annotations.ReactProp;
|
|
14
|
+
import com.facebook.react.viewmanagers.RNCWebViewManagerDelegate;
|
|
15
|
+
import com.facebook.react.viewmanagers.RNCWebViewManagerInterface;
|
|
16
|
+
import com.facebook.react.views.scroll.ScrollEventType;
|
|
17
|
+
import com.reactnativecommunity.webview.events.TopCustomMenuSelectionEvent;
|
|
18
|
+
import com.reactnativecommunity.webview.events.SubResourceErrorEvent;
|
|
19
|
+
import com.reactnativecommunity.webview.events.TopHttpErrorEvent;
|
|
20
|
+
import com.reactnativecommunity.webview.events.TopLoadingErrorEvent;
|
|
21
|
+
import com.reactnativecommunity.webview.events.TopLoadingFinishEvent;
|
|
22
|
+
import com.reactnativecommunity.webview.events.TopLoadingProgressEvent;
|
|
23
|
+
import com.reactnativecommunity.webview.events.TopLoadingStartEvent;
|
|
24
|
+
import com.reactnativecommunity.webview.events.TopMessageEvent;
|
|
25
|
+
import com.reactnativecommunity.webview.events.TopOpenWindowEvent;
|
|
26
|
+
import com.reactnativecommunity.webview.events.TopRenderProcessGoneEvent;
|
|
27
|
+
import com.reactnativecommunity.webview.events.TopShouldStartLoadWithRequestEvent;
|
|
28
|
+
|
|
29
|
+
import android.webkit.WebChromeClient;
|
|
30
|
+
|
|
31
|
+
import org.json.JSONException;
|
|
32
|
+
import org.json.JSONObject;
|
|
33
|
+
|
|
34
|
+
import java.util.Map;
|
|
35
|
+
|
|
36
|
+
@ReactModule(name = RNCWebViewManagerImpl.NAME)
|
|
37
|
+
public class RNCWebViewManager extends ViewGroupManager<RNCWebViewWrapper>
|
|
38
|
+
implements RNCWebViewManagerInterface<RNCWebViewWrapper> {
|
|
39
|
+
|
|
40
|
+
private final ViewManagerDelegate<RNCWebViewWrapper> mDelegate;
|
|
41
|
+
private final RNCWebViewManagerImpl mRNCWebViewManagerImpl;
|
|
42
|
+
|
|
43
|
+
public RNCWebViewManager() {
|
|
44
|
+
mDelegate = new RNCWebViewManagerDelegate<>(this);
|
|
45
|
+
mRNCWebViewManagerImpl = new RNCWebViewManagerImpl(true);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
@Nullable
|
|
49
|
+
@Override
|
|
50
|
+
protected ViewManagerDelegate<RNCWebViewWrapper> getDelegate() {
|
|
51
|
+
return mDelegate;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
@NonNull
|
|
55
|
+
@Override
|
|
56
|
+
public String getName() {
|
|
57
|
+
return RNCWebViewManagerImpl.NAME;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
@NonNull
|
|
61
|
+
@Override
|
|
62
|
+
protected RNCWebViewWrapper createViewInstance(@NonNull ThemedReactContext context) {
|
|
63
|
+
return mRNCWebViewManagerImpl.createViewInstance(context);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
@Override
|
|
67
|
+
@ReactProp(name = "allowFileAccess")
|
|
68
|
+
public void setAllowFileAccess(RNCWebViewWrapper view, boolean value) {
|
|
69
|
+
mRNCWebViewManagerImpl.setAllowFileAccess(view, value);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
@Override
|
|
73
|
+
@ReactProp(name = "allowFileAccessFromFileURLs")
|
|
74
|
+
public void setAllowFileAccessFromFileURLs(RNCWebViewWrapper view, boolean value) {
|
|
75
|
+
mRNCWebViewManagerImpl.setAllowFileAccessFromFileURLs(view, value);
|
|
76
|
+
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
@Override
|
|
80
|
+
@ReactProp(name = "allowUniversalAccessFromFileURLs")
|
|
81
|
+
public void setAllowUniversalAccessFromFileURLs(RNCWebViewWrapper view, boolean value) {
|
|
82
|
+
mRNCWebViewManagerImpl.setAllowUniversalAccessFromFileURLs(view, value);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
@Override
|
|
86
|
+
@ReactProp(name = "allowsFullscreenVideo")
|
|
87
|
+
public void setAllowsFullscreenVideo(RNCWebViewWrapper view, boolean value) {
|
|
88
|
+
mRNCWebViewManagerImpl.setAllowsFullscreenVideo(view, value);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
@Override
|
|
92
|
+
@ReactProp(name = "allowsProtectedMedia")
|
|
93
|
+
public void setAllowsProtectedMedia(RNCWebViewWrapper view, boolean value) {
|
|
94
|
+
mRNCWebViewManagerImpl.setAllowsProtectedMedia(view, value);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
@Override
|
|
98
|
+
@ReactProp(name = "androidLayerType")
|
|
99
|
+
public void setAndroidLayerType(RNCWebViewWrapper view, @Nullable String value) {
|
|
100
|
+
mRNCWebViewManagerImpl.setAndroidLayerType(view, value);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
@Override
|
|
104
|
+
@ReactProp(name = "applicationNameForUserAgent")
|
|
105
|
+
public void setApplicationNameForUserAgent(RNCWebViewWrapper view, @Nullable String value) {
|
|
106
|
+
mRNCWebViewManagerImpl.setApplicationNameForUserAgent(view, value);
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
@Override
|
|
110
|
+
@ReactProp(name = "basicAuthCredential")
|
|
111
|
+
public void setBasicAuthCredential(RNCWebViewWrapper view, @Nullable ReadableMap value) {
|
|
112
|
+
mRNCWebViewManagerImpl.setBasicAuthCredential(view, value);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
@Override
|
|
116
|
+
@ReactProp(name = "cacheEnabled")
|
|
117
|
+
public void setCacheEnabled(RNCWebViewWrapper view, boolean value) {
|
|
118
|
+
mRNCWebViewManagerImpl.setCacheEnabled(view, value);
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
@Override
|
|
122
|
+
@ReactProp(name = "cacheMode")
|
|
123
|
+
public void setCacheMode(RNCWebViewWrapper view, @Nullable String value) {
|
|
124
|
+
mRNCWebViewManagerImpl.setCacheMode(view, value);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
@Override
|
|
128
|
+
@ReactProp(name = "domStorageEnabled")
|
|
129
|
+
public void setDomStorageEnabled(RNCWebViewWrapper view, boolean value) {
|
|
130
|
+
mRNCWebViewManagerImpl.setDomStorageEnabled(view, value);
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
@Override
|
|
134
|
+
@ReactProp(name = "downloadingMessage")
|
|
135
|
+
public void setDownloadingMessage(RNCWebViewWrapper view, @Nullable String value) {
|
|
136
|
+
mRNCWebViewManagerImpl.setDownloadingMessage(value);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
@Override
|
|
140
|
+
@ReactProp(name = "forceDarkOn")
|
|
141
|
+
public void setForceDarkOn(RNCWebViewWrapper view, boolean value) {
|
|
142
|
+
mRNCWebViewManagerImpl.setForceDarkOn(view, value);
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
@Override
|
|
146
|
+
@ReactProp(name = "geolocationEnabled")
|
|
147
|
+
public void setGeolocationEnabled(RNCWebViewWrapper view, boolean value) {
|
|
148
|
+
mRNCWebViewManagerImpl.setGeolocationEnabled(view, value);
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
@Override
|
|
152
|
+
@ReactProp(name = "hasOnScroll")
|
|
153
|
+
public void setHasOnScroll(RNCWebViewWrapper view, boolean hasScrollEvent) {
|
|
154
|
+
mRNCWebViewManagerImpl.setHasOnScroll(view, hasScrollEvent);
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
@Override
|
|
158
|
+
@ReactProp(name = "incognito")
|
|
159
|
+
public void setIncognito(RNCWebViewWrapper view, boolean value) {
|
|
160
|
+
mRNCWebViewManagerImpl.setIncognito(view, value);
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
@Override
|
|
164
|
+
@ReactProp(name = "injectedJavaScript")
|
|
165
|
+
public void setInjectedJavaScript(RNCWebViewWrapper view, @Nullable String value) {
|
|
166
|
+
mRNCWebViewManagerImpl.setInjectedJavaScript(view, value);
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
@Override
|
|
170
|
+
@ReactProp(name = "injectedJavaScriptBeforeContentLoaded")
|
|
171
|
+
public void setInjectedJavaScriptBeforeContentLoaded(RNCWebViewWrapper view, @Nullable String value) {
|
|
172
|
+
mRNCWebViewManagerImpl.setInjectedJavaScriptBeforeContentLoaded(view, value);
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
@Override
|
|
176
|
+
@ReactProp(name = "injectedJavaScriptForMainFrameOnly")
|
|
177
|
+
public void setInjectedJavaScriptForMainFrameOnly(RNCWebViewWrapper view, boolean value) {
|
|
178
|
+
mRNCWebViewManagerImpl.setInjectedJavaScriptForMainFrameOnly(view, value);
|
|
179
|
+
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
@Override
|
|
183
|
+
@ReactProp(name = "injectedJavaScriptBeforeContentLoadedForMainFrameOnly")
|
|
184
|
+
public void setInjectedJavaScriptBeforeContentLoadedForMainFrameOnly(RNCWebViewWrapper view, boolean value) {
|
|
185
|
+
mRNCWebViewManagerImpl.setInjectedJavaScriptBeforeContentLoadedForMainFrameOnly(view, value);
|
|
186
|
+
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
@ReactProp(name = "injectedJavaScriptObject")
|
|
190
|
+
public void setInjectedJavaScriptObject(RNCWebViewWrapper view, @Nullable String value) {
|
|
191
|
+
mRNCWebViewManagerImpl.setInjectedJavaScriptObject(view, value);
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
@Override
|
|
195
|
+
@ReactProp(name = "javaScriptCanOpenWindowsAutomatically")
|
|
196
|
+
public void setJavaScriptCanOpenWindowsAutomatically(RNCWebViewWrapper view, boolean value) {
|
|
197
|
+
mRNCWebViewManagerImpl.setJavaScriptCanOpenWindowsAutomatically(view, value);
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
@ReactProp(name = "javaScriptEnabled")
|
|
201
|
+
public void setJavaScriptEnabled(RNCWebViewWrapper view, boolean enabled) {
|
|
202
|
+
mRNCWebViewManagerImpl.setJavaScriptEnabled(view, enabled);
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
@Override
|
|
206
|
+
@ReactProp(name = "lackPermissionToDownloadMessage")
|
|
207
|
+
public void setLackPermissionToDownloadMessage(RNCWebViewWrapper view, @Nullable String value) {
|
|
208
|
+
mRNCWebViewManagerImpl.setLackPermissionToDownloadMessage(value);
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
@Override
|
|
212
|
+
@ReactProp(name = "hasOnOpenWindowEvent")
|
|
213
|
+
public void setHasOnOpenWindowEvent(RNCWebViewWrapper view, boolean hasEvent) {
|
|
214
|
+
mRNCWebViewManagerImpl.setHasOnOpenWindowEvent(view, hasEvent);
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
@Override
|
|
218
|
+
@ReactProp(name = "mediaPlaybackRequiresUserAction")
|
|
219
|
+
public void setMediaPlaybackRequiresUserAction(RNCWebViewWrapper view, boolean value) {
|
|
220
|
+
mRNCWebViewManagerImpl.setMediaPlaybackRequiresUserAction(view, value);
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
@Override
|
|
224
|
+
@ReactProp(name = "menuItems")
|
|
225
|
+
public void setMenuItems(RNCWebViewWrapper view, @Nullable ReadableArray items) {
|
|
226
|
+
mRNCWebViewManagerImpl.setMenuCustomItems(view, items);
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
@Override
|
|
230
|
+
@ReactProp(name = "suppressMenuItems")
|
|
231
|
+
public void setSuppressMenuItems(RNCWebViewWrapper view, @Nullable ReadableArray items) {}
|
|
232
|
+
|
|
233
|
+
@Override
|
|
234
|
+
@ReactProp(name = "messagingEnabled")
|
|
235
|
+
public void setMessagingEnabled(RNCWebViewWrapper view, boolean value) {
|
|
236
|
+
mRNCWebViewManagerImpl.setMessagingEnabled(view, value);
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
@Override
|
|
240
|
+
@ReactProp(name = "messagingModuleName")
|
|
241
|
+
public void setMessagingModuleName(RNCWebViewWrapper view, @Nullable String value) {
|
|
242
|
+
mRNCWebViewManagerImpl.setMessagingModuleName(view, value);
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
@Override
|
|
246
|
+
@ReactProp(name = "minimumFontSize")
|
|
247
|
+
public void setMinimumFontSize(RNCWebViewWrapper view, int value) {
|
|
248
|
+
mRNCWebViewManagerImpl.setMinimumFontSize(view, value);
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
@Override
|
|
252
|
+
@ReactProp(name = "mixedContentMode")
|
|
253
|
+
public void setMixedContentMode(RNCWebViewWrapper view, @Nullable String value) {
|
|
254
|
+
mRNCWebViewManagerImpl.setMixedContentMode(view, value);
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
@Override
|
|
258
|
+
@ReactProp(name = "nestedScrollEnabled")
|
|
259
|
+
public void setNestedScrollEnabled(RNCWebViewWrapper view, boolean value) {
|
|
260
|
+
mRNCWebViewManagerImpl.setNestedScrollEnabled(view, value);
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
@Override
|
|
264
|
+
@ReactProp(name = "overScrollMode")
|
|
265
|
+
public void setOverScrollMode(RNCWebViewWrapper view, @Nullable String value) {
|
|
266
|
+
mRNCWebViewManagerImpl.setOverScrollMode(view, value);
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
@Override
|
|
270
|
+
@ReactProp(name = "saveFormDataDisabled")
|
|
271
|
+
public void setSaveFormDataDisabled(RNCWebViewWrapper view, boolean value) {
|
|
272
|
+
mRNCWebViewManagerImpl.setSaveFormDataDisabled(view, value);
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
@Override
|
|
276
|
+
@ReactProp(name = "scalesPageToFit")
|
|
277
|
+
public void setScalesPageToFit(RNCWebViewWrapper view, boolean value) {
|
|
278
|
+
mRNCWebViewManagerImpl.setScalesPageToFit(view, value);
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
@Override
|
|
282
|
+
@ReactProp(name = "setBuiltInZoomControls")
|
|
283
|
+
public void setSetBuiltInZoomControls(RNCWebViewWrapper view, boolean value) {
|
|
284
|
+
mRNCWebViewManagerImpl.setSetBuiltInZoomControls(view, value);
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
@Override
|
|
288
|
+
@ReactProp(name = "setDisplayZoomControls")
|
|
289
|
+
public void setSetDisplayZoomControls(RNCWebViewWrapper view, boolean value) {
|
|
290
|
+
mRNCWebViewManagerImpl.setSetDisplayZoomControls(view, value);
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
@Override
|
|
294
|
+
@ReactProp(name = "setSupportMultipleWindows")
|
|
295
|
+
public void setSetSupportMultipleWindows(RNCWebViewWrapper view, boolean value) {
|
|
296
|
+
mRNCWebViewManagerImpl.setSetSupportMultipleWindows(view, value);
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
@Override
|
|
300
|
+
@ReactProp(name = "showsHorizontalScrollIndicator")
|
|
301
|
+
public void setShowsHorizontalScrollIndicator(RNCWebViewWrapper view, boolean value) {
|
|
302
|
+
mRNCWebViewManagerImpl.setShowsHorizontalScrollIndicator(view, value);
|
|
303
|
+
}
|
|
304
|
+
|
|
305
|
+
@Override
|
|
306
|
+
@ReactProp(name = "showsVerticalScrollIndicator")
|
|
307
|
+
public void setShowsVerticalScrollIndicator(RNCWebViewWrapper view, boolean value) {
|
|
308
|
+
mRNCWebViewManagerImpl.setShowsVerticalScrollIndicator(view, value);
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
@Override
|
|
312
|
+
@ReactProp(name = "newSource")
|
|
313
|
+
public void setNewSource(RNCWebViewWrapper view, @Nullable ReadableMap value) {
|
|
314
|
+
mRNCWebViewManagerImpl.setSource(view, value);
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
@Override
|
|
318
|
+
@ReactProp(name = "textZoom")
|
|
319
|
+
public void setTextZoom(RNCWebViewWrapper view, int value) {
|
|
320
|
+
mRNCWebViewManagerImpl.setTextZoom(view, value);
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
@Override
|
|
324
|
+
@ReactProp(name = "thirdPartyCookiesEnabled")
|
|
325
|
+
public void setThirdPartyCookiesEnabled(RNCWebViewWrapper view, boolean value) {
|
|
326
|
+
mRNCWebViewManagerImpl.setThirdPartyCookiesEnabled(view, value);
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
@Override
|
|
330
|
+
@ReactProp(name = "webviewDebuggingEnabled")
|
|
331
|
+
public void setWebviewDebuggingEnabled(RNCWebViewWrapper view, boolean value) {
|
|
332
|
+
mRNCWebViewManagerImpl.setWebviewDebuggingEnabled(view, value);
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
@Override
|
|
336
|
+
@ReactProp(name = "paymentRequestEnabled")
|
|
337
|
+
public void setPaymentRequestEnabled(RNCWebViewWrapper view, boolean value) {
|
|
338
|
+
mRNCWebViewManagerImpl.setPaymentRequestEnabled(view, value);
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
// Exodus: Camera permission origin whitelist
|
|
342
|
+
@ReactProp(name = "cameraPermissionOriginWhitelist")
|
|
343
|
+
public void setCameraPermissionOriginWhitelist(RNCWebViewWrapper view, @Nullable ReadableArray value) {
|
|
344
|
+
mRNCWebViewManagerImpl.setCameraPermissionOriginWhitelist(view, value);
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
/* iOS PROPS - no implemented here */
|
|
348
|
+
@Override
|
|
349
|
+
public void setAllowingReadAccessToURL(RNCWebViewWrapper view, @Nullable String value) {}
|
|
350
|
+
|
|
351
|
+
@Override
|
|
352
|
+
public void setAllowsBackForwardNavigationGestures(RNCWebViewWrapper view, boolean value) {}
|
|
353
|
+
|
|
354
|
+
@Override
|
|
355
|
+
public void setAllowsInlineMediaPlayback(RNCWebViewWrapper view, boolean value) {}
|
|
356
|
+
|
|
357
|
+
@Override
|
|
358
|
+
public void setAllowsPictureInPictureMediaPlayback(RNCWebViewWrapper view, boolean value) {}
|
|
359
|
+
|
|
360
|
+
@Override
|
|
361
|
+
public void setAllowsAirPlayForMediaPlayback(RNCWebViewWrapper view, boolean value) {}
|
|
362
|
+
|
|
363
|
+
@Override
|
|
364
|
+
public void setAllowsLinkPreview(RNCWebViewWrapper view, boolean value) {}
|
|
365
|
+
|
|
366
|
+
@Override
|
|
367
|
+
public void setAutomaticallyAdjustContentInsets(RNCWebViewWrapper view, boolean value) {}
|
|
368
|
+
|
|
369
|
+
@Override
|
|
370
|
+
public void setAutoManageStatusBarEnabled(RNCWebViewWrapper view, boolean value) {}
|
|
371
|
+
|
|
372
|
+
@Override
|
|
373
|
+
public void setBounces(RNCWebViewWrapper view, boolean value) {}
|
|
374
|
+
|
|
375
|
+
@Override
|
|
376
|
+
public void setContentInset(RNCWebViewWrapper view, @Nullable ReadableMap value) {}
|
|
377
|
+
|
|
378
|
+
@Override
|
|
379
|
+
public void setContentInsetAdjustmentBehavior(RNCWebViewWrapper view, @Nullable String value) {}
|
|
380
|
+
|
|
381
|
+
@Override
|
|
382
|
+
public void setContentMode(RNCWebViewWrapper view, @Nullable String value) {}
|
|
383
|
+
|
|
384
|
+
@Override
|
|
385
|
+
public void setDataDetectorTypes(RNCWebViewWrapper view, @Nullable ReadableArray value) {}
|
|
386
|
+
|
|
387
|
+
@Override
|
|
388
|
+
public void setDecelerationRate(RNCWebViewWrapper view, double value) {}
|
|
389
|
+
|
|
390
|
+
@Override
|
|
391
|
+
public void setDirectionalLockEnabled(RNCWebViewWrapper view, boolean value) {}
|
|
392
|
+
|
|
393
|
+
@Override
|
|
394
|
+
public void setEnableApplePay(RNCWebViewWrapper view, boolean value) {}
|
|
395
|
+
|
|
396
|
+
@Override
|
|
397
|
+
public void setHideKeyboardAccessoryView(RNCWebViewWrapper view, boolean value) {}
|
|
398
|
+
|
|
399
|
+
@Override
|
|
400
|
+
public void setKeyboardDisplayRequiresUserAction(RNCWebViewWrapper view, boolean value) {}
|
|
401
|
+
|
|
402
|
+
@Override
|
|
403
|
+
public void setPagingEnabled(RNCWebViewWrapper view, boolean value) {}
|
|
404
|
+
|
|
405
|
+
@Override
|
|
406
|
+
public void setPullToRefreshEnabled(RNCWebViewWrapper view, boolean value) {}
|
|
407
|
+
|
|
408
|
+
@Override
|
|
409
|
+
public void setRefreshControlLightMode(RNCWebViewWrapper view, boolean value) {}
|
|
410
|
+
|
|
411
|
+
@Override
|
|
412
|
+
public void setIndicatorStyle(RNCWebViewWrapper view, @Nullable String value) {}
|
|
413
|
+
|
|
414
|
+
@Override
|
|
415
|
+
public void setScrollEnabled(RNCWebViewWrapper view, boolean value) {}
|
|
416
|
+
|
|
417
|
+
@Override
|
|
418
|
+
public void setSharedCookiesEnabled(RNCWebViewWrapper view, boolean value) {}
|
|
419
|
+
|
|
420
|
+
@Override
|
|
421
|
+
public void setUseSharedProcessPool(RNCWebViewWrapper view, boolean value) {}
|
|
422
|
+
|
|
423
|
+
@Override
|
|
424
|
+
public void setLimitsNavigationsToAppBoundDomains(RNCWebViewWrapper view, boolean value) {}
|
|
425
|
+
|
|
426
|
+
@Override
|
|
427
|
+
public void setTextInteractionEnabled(RNCWebViewWrapper view, boolean value) {}
|
|
428
|
+
|
|
429
|
+
@Override
|
|
430
|
+
public void setHasOnFileDownload(RNCWebViewWrapper view, boolean value) {}
|
|
431
|
+
|
|
432
|
+
@Override
|
|
433
|
+
public void setMediaCapturePermissionGrantType(RNCWebViewWrapper view, @Nullable String value) {}
|
|
434
|
+
|
|
435
|
+
@Override
|
|
436
|
+
public void setFraudulentWebsiteWarningEnabled(RNCWebViewWrapper view, boolean value) {}
|
|
437
|
+
/* !iOS PROPS - no implemented here */
|
|
438
|
+
|
|
439
|
+
@Override
|
|
440
|
+
@ReactProp(name = "userAgent")
|
|
441
|
+
public void setUserAgent(RNCWebViewWrapper view, @Nullable String value) {
|
|
442
|
+
mRNCWebViewManagerImpl.setUserAgent(view, value);
|
|
443
|
+
}
|
|
444
|
+
|
|
445
|
+
@Override
|
|
446
|
+
public void goBack(RNCWebViewWrapper view) {
|
|
447
|
+
view.getWebView().goBack();
|
|
448
|
+
}
|
|
449
|
+
|
|
450
|
+
@Override
|
|
451
|
+
public void goForward(RNCWebViewWrapper view) {
|
|
452
|
+
view.getWebView().goForward();
|
|
453
|
+
}
|
|
454
|
+
|
|
455
|
+
@Override
|
|
456
|
+
public void reload(RNCWebViewWrapper view) {
|
|
457
|
+
view.getWebView().reload();
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
@Override
|
|
461
|
+
public void stopLoading(RNCWebViewWrapper view) {
|
|
462
|
+
view.getWebView().stopLoading();
|
|
463
|
+
}
|
|
464
|
+
|
|
465
|
+
@Override
|
|
466
|
+
public void injectJavaScript(RNCWebViewWrapper view, String javascript) {
|
|
467
|
+
view.getWebView().evaluateJavascriptWithFallback(javascript);
|
|
468
|
+
}
|
|
469
|
+
|
|
470
|
+
@Override
|
|
471
|
+
public void requestFocus(RNCWebViewWrapper view) {
|
|
472
|
+
view.requestFocus();
|
|
473
|
+
}
|
|
474
|
+
|
|
475
|
+
@Override
|
|
476
|
+
public void postMessage(RNCWebViewWrapper view, String data) {
|
|
477
|
+
try {
|
|
478
|
+
JSONObject eventInitDict = new JSONObject();
|
|
479
|
+
eventInitDict.put("data", data);
|
|
480
|
+
view.getWebView().evaluateJavascriptWithFallback(
|
|
481
|
+
"(function () {" +
|
|
482
|
+
"var event;" +
|
|
483
|
+
"var data = " + eventInitDict.toString() + ";" +
|
|
484
|
+
"try {" +
|
|
485
|
+
"event = new MessageEvent('message', data);" +
|
|
486
|
+
"} catch (e) {" +
|
|
487
|
+
"event = document.createEvent('MessageEvent');" +
|
|
488
|
+
"event.initMessageEvent('message', true, true, data.data, data.origin, data.lastEventId, data.source);" +
|
|
489
|
+
"}" +
|
|
490
|
+
"document.dispatchEvent(event);" +
|
|
491
|
+
"})();"
|
|
492
|
+
);
|
|
493
|
+
} catch (JSONException e) {
|
|
494
|
+
throw new RuntimeException(e);
|
|
495
|
+
}
|
|
496
|
+
}
|
|
497
|
+
|
|
498
|
+
@Override
|
|
499
|
+
public void loadUrl(RNCWebViewWrapper view, String url) {
|
|
500
|
+
view.getWebView().loadUrl(url);
|
|
501
|
+
}
|
|
502
|
+
|
|
503
|
+
@Override
|
|
504
|
+
public void clearFormData(RNCWebViewWrapper view) {
|
|
505
|
+
view.getWebView().clearFormData();
|
|
506
|
+
}
|
|
507
|
+
|
|
508
|
+
@Override
|
|
509
|
+
public void clearCache(RNCWebViewWrapper view, boolean includeDiskFiles) {
|
|
510
|
+
view.getWebView().clearCache(includeDiskFiles);
|
|
511
|
+
}
|
|
512
|
+
|
|
513
|
+
@Override
|
|
514
|
+
public void clearHistory(RNCWebViewWrapper view) {
|
|
515
|
+
view.getWebView().clearHistory();
|
|
516
|
+
}
|
|
517
|
+
|
|
518
|
+
@Override
|
|
519
|
+
protected void addEventEmitters(@NonNull ThemedReactContext reactContext, RNCWebViewWrapper view) {
|
|
520
|
+
// Do not register default touch emitter and let WebView implementation handle touches
|
|
521
|
+
view.getWebView().setWebViewClient(new RNCWebViewClient());
|
|
522
|
+
}
|
|
523
|
+
|
|
524
|
+
@Override
|
|
525
|
+
public Map<String, Object> getExportedCustomDirectEventTypeConstants() {
|
|
526
|
+
Map<String, Object> export = super.getExportedCustomDirectEventTypeConstants();
|
|
527
|
+
if (export == null) {
|
|
528
|
+
export = MapBuilder.newHashMap();
|
|
529
|
+
}
|
|
530
|
+
// Default events but adding them here explicitly for clarity
|
|
531
|
+
export.put(TopLoadingStartEvent.EVENT_NAME, MapBuilder.of("registrationName", "onLoadingStart"));
|
|
532
|
+
export.put(TopLoadingFinishEvent.EVENT_NAME, MapBuilder.of("registrationName", "onLoadingFinish"));
|
|
533
|
+
export.put(TopLoadingErrorEvent.EVENT_NAME, MapBuilder.of("registrationName", "onLoadingError"));
|
|
534
|
+
export.put(SubResourceErrorEvent.EVENT_NAME, MapBuilder.of("registrationName", "onLoadingSubResourceError"));
|
|
535
|
+
export.put(TopMessageEvent.EVENT_NAME, MapBuilder.of("registrationName", "onMessage"));
|
|
536
|
+
// !Default events but adding them here explicitly for clarity
|
|
537
|
+
|
|
538
|
+
export.put(TopLoadingProgressEvent.EVENT_NAME, MapBuilder.of("registrationName", "onLoadingProgress"));
|
|
539
|
+
export.put(TopShouldStartLoadWithRequestEvent.EVENT_NAME, MapBuilder.of("registrationName", "onShouldStartLoadWithRequest"));
|
|
540
|
+
export.put(ScrollEventType.getJSEventName(ScrollEventType.SCROLL), MapBuilder.of("registrationName", "onScroll"));
|
|
541
|
+
export.put(TopHttpErrorEvent.EVENT_NAME, MapBuilder.of("registrationName", "onHttpError"));
|
|
542
|
+
export.put(TopRenderProcessGoneEvent.EVENT_NAME, MapBuilder.of("registrationName", "onRenderProcessGone"));
|
|
543
|
+
export.put(TopCustomMenuSelectionEvent.EVENT_NAME, MapBuilder.of("registrationName", "onCustomMenuSelection"));
|
|
544
|
+
export.put(TopOpenWindowEvent.EVENT_NAME, MapBuilder.of("registrationName", "onOpenWindow"));
|
|
545
|
+
return export;
|
|
546
|
+
}
|
|
547
|
+
|
|
548
|
+
@Override
|
|
549
|
+
public @Nullable
|
|
550
|
+
Map<String, Integer> getCommandsMap() {
|
|
551
|
+
return mRNCWebViewManagerImpl.getCommandsMap();
|
|
552
|
+
}
|
|
553
|
+
|
|
554
|
+
@Override
|
|
555
|
+
public void receiveCommand(@NonNull RNCWebViewWrapper reactWebView, String commandId, @Nullable ReadableArray args) {
|
|
556
|
+
super.receiveCommand(reactWebView, commandId, args);
|
|
557
|
+
}
|
|
558
|
+
|
|
559
|
+
@Override
|
|
560
|
+
protected void onAfterUpdateTransaction(@NonNull RNCWebViewWrapper view) {
|
|
561
|
+
super.onAfterUpdateTransaction(view);
|
|
562
|
+
mRNCWebViewManagerImpl.onAfterUpdateTransaction(view);
|
|
563
|
+
}
|
|
564
|
+
|
|
565
|
+
@Override
|
|
566
|
+
public void onDropViewInstance(@NonNull RNCWebViewWrapper view) {
|
|
567
|
+
mRNCWebViewManagerImpl.onDropViewInstance(view);
|
|
568
|
+
super.onDropViewInstance(view);
|
|
569
|
+
}
|
|
570
|
+
}
|