1
1
#import " WebViewJavascriptBridge_OSX.h"
2
2
3
- @interface WebViewJavascriptBridge ()
4
-
5
- @property (nonatomic , assign ) NSUInteger numRequestsLoading;
6
-
7
- @end
8
-
9
3
@implementation WebViewJavascriptBridge
10
4
11
5
+ (instancetype )bridgeForWebView : (WebView *)webView handler : (WVJBHandler)handler {
@@ -38,9 +32,7 @@ - (void)webView:(WebView *)webView didFinishLoadForFrame:(WebFrame *)frame
38
32
{
39
33
if (webView != self.webView ) { return ; }
40
34
41
- self.numRequestsLoading --;
42
-
43
- if (self.numRequestsLoading == 0 && ![[webView stringByEvaluatingJavaScriptFromString: @" typeof WebViewJavascriptBridge == 'object'" ] isEqualToString: @" true" ]) {
35
+ if (![[webView stringByEvaluatingJavaScriptFromString: @" typeof WebViewJavascriptBridge == 'object'" ] isEqualToString: @" true" ]) {
44
36
NSString *filePath = [[NSBundle mainBundle ] pathForResource: @" WebViewJavascriptBridge.js" ofType: @" txt" ];
45
37
NSString *js = [NSString stringWithContentsOfFile: filePath encoding: NSUTF8StringEncoding error: nil ];
46
38
[webView stringByEvaluatingJavaScriptFromString: js];
@@ -62,8 +54,6 @@ - (void)webView:(WebView *)webView didFinishLoadForFrame:(WebFrame *)frame
62
54
- (void )webView : (WebView *)webView didFailLoadWithError : (NSError *)error forFrame : (WebFrame *)frame {
63
55
if (webView != self.webView ) { return ; }
64
56
65
- self.numRequestsLoading --;
66
-
67
57
__strong typeof (self.webViewDelegate ) strongDelegate = self.webViewDelegate ;
68
58
if (strongDelegate && [strongDelegate respondsToSelector: @selector (webView:didFailLoadWithError:forFrame: )]) {
69
59
[strongDelegate webView: strongDelegate didFailLoadWithError: error forFrame: frame];
@@ -101,8 +91,6 @@ - (void)webView:(WebView *)webView didCommitLoadForFrame:(WebFrame *)frame {
101
91
- (NSURLRequest *)webView : (WebView *)webView resource : (id )identifier willSendRequest : (NSURLRequest *)request redirectResponse : (NSURLResponse *)redirectResponse fromDataSource : (WebDataSource *)dataSource {
102
92
if (webView != self.webView ) { return request; }
103
93
104
- self.numRequestsLoading ++;
105
-
106
94
__strong typeof (self.webViewDelegate ) strongDelegate = self.webViewDelegate ;
107
95
if (strongDelegate && [strongDelegate respondsToSelector: @selector (webView:resource:willSendRequest:redirectResponse:fromDataSource: )]) {
108
96
return [strongDelegate webView: webView resource: identifier willSendRequest: request redirectResponse: redirectResponse fromDataSource: dataSource];
0 commit comments