@@ -28,38 +28,24 @@ - (void)applicationDidFinishLaunching:(NSNotification *)aNotification
2828
2929- (void )_configureWebview {
3030 // Create Bridge
31- _bridge = [WebViewJavascriptBridge bridgeForWebView: _webView handler: ^(id data, WVJBResponseCallback responseCallback) {
32- NSLog (@" ObjC received message from JS: %@ " , data);
33- responseCallback (@" Response for message from ObjC" );
34- }];
31+ _bridge = [WebViewJavascriptBridge bridgeForWebView: _webView];
3532
3633 [_bridge registerHandler: @" testObjcCallback" handler: ^(id data, WVJBResponseCallback responseCallback) {
3734 NSLog (@" testObjcCallback called: %@ " , data);
3835 responseCallback (@" Response from testObjcCallback" );
3936 }];
4037
41- [_bridge send: @" A string sent from ObjC before Webview has loaded." responseCallback: ^(id responseData) {
42- NSLog (@" objc got response! %@ " , responseData);
43- }];
44-
4538 [_bridge callHandler: @" testJavascriptHandler" data: @{ @" foo" :@" before ready" }];
4639
4740 // Create Buttons
48- NSButton *messageButton = [[NSButton alloc ] initWithFrame: NSMakeRect (5 , 0 , 120 , 40 )];
49- [messageButton setTitle: @" Send message" ];
50- [messageButton setBezelStyle: NSRoundedBezelStyle ];
51- [messageButton setTarget: self ];
52- [messageButton setAction: @selector (_sendMessage )];
53- [_webView addSubview: messageButton];
54-
55- NSButton *callbackButton = [[NSButton alloc ] initWithFrame: NSMakeRect (120 , 0 , 120 , 40 )];
41+ NSButton *callbackButton = [[NSButton alloc ] initWithFrame: NSMakeRect (5 , 0 , 120 , 40 )];
5642 [callbackButton setTitle: @" Call handler" ];
5743 [callbackButton setBezelStyle: NSRoundedBezelStyle ];
5844 [callbackButton setTarget: self ];
5945 [callbackButton setAction: @selector (_callHandler )];
6046 [_webView addSubview: callbackButton];
6147
62- NSButton *webViewToggleButton = [[NSButton alloc ] initWithFrame: NSMakeRect (235 , 0 , 180 , 40 )];
48+ NSButton *webViewToggleButton = [[NSButton alloc ] initWithFrame: NSMakeRect (120 , 0 , 180 , 40 )];
6349 [webViewToggleButton setTitle: @" Switch to WKWebView" ];
6450 [webViewToggleButton setBezelStyle: NSRoundedBezelStyle ];
6551 [webViewToggleButton setTarget: self ];
@@ -76,38 +62,24 @@ - (void)_configureWebview {
7662
7763- (void )_configureWKWebview {
7864 // Create Bridge
79- _WKBridge = [WKWebViewJavascriptBridge bridgeForWebView: _WKWebView handler: ^(id data, WVJBResponseCallback responseCallback) {
80- NSLog (@" ObjC received message from JS: %@ " , data);
81- responseCallback (@" Response for message from ObjC" );
82- }];
65+ _WKBridge = [WKWebViewJavascriptBridge bridgeForWebView: _WKWebView];
8366
8467 [_WKBridge registerHandler: @" testObjcCallback" handler: ^(id data, WVJBResponseCallback responseCallback) {
8568 NSLog (@" testObjcCallback called: %@ " , data);
8669 responseCallback (@" Response from testObjcCallback" );
8770 }];
8871
89- [_WKBridge send: @" A string sent from ObjC before Webview has loaded." responseCallback: ^(id responseData) {
90- NSLog (@" objc got response! %@ " , responseData);
91- }];
92-
9372 [_WKBridge callHandler: @" testJavascriptHandler" data: @{ @" foo" :@" before ready" }];
9473
9574 // Create Buttons
96- NSButton *messageButton = [[NSButton alloc ] initWithFrame: NSMakeRect (5 , 0 , 120 , 40 )];
97- [messageButton setTitle: @" Send message" ];
98- [messageButton setBezelStyle: NSRoundedBezelStyle ];
99- [messageButton setTarget: self ];
100- [messageButton setAction: @selector (_WKSendMessage )];
101- [_WKWebView addSubview: messageButton];
102-
103- NSButton *callbackButton = [[NSButton alloc ] initWithFrame: NSMakeRect (120 , 0 , 120 , 40 )];
75+ NSButton *callbackButton = [[NSButton alloc ] initWithFrame: NSMakeRect (5 , 0 , 120 , 40 )];
10476 [callbackButton setTitle: @" Call handler" ];
10577 [callbackButton setBezelStyle: NSRoundedBezelStyle ];
10678 [callbackButton setTarget: self ];
10779 [callbackButton setAction: @selector (_WKCallHandler )];
10880 [_WKWebView addSubview: callbackButton];
10981
110- NSButton *webViewToggleButton = [[NSButton alloc ] initWithFrame: NSMakeRect (235 , 0 , 180 , 40 )];
82+ NSButton *webViewToggleButton = [[NSButton alloc ] initWithFrame: NSMakeRect (120 , 0 , 180 , 40 )];
11183 [webViewToggleButton setTitle: @" Switch to WebView" ];
11284 [webViewToggleButton setBezelStyle: NSRoundedBezelStyle ];
11385 [webViewToggleButton setTarget: self ];
@@ -125,25 +97,13 @@ -(void)_toggleExample {
12597 _webView.hidden = !_webView.isHidden ;
12698}
12799
128- - (void )_sendMessage {
129- [_bridge send: @" A string sent from ObjC to JS" responseCallback: ^(id response) {
130- NSLog (@" sendMessage got response: %@ " , response);
131- }];
132- }
133-
134100- (void )_callHandler {
135101 id data = @{ @" greetingFromObjC" : @" Hi there, JS!" };
136102 [_bridge callHandler: @" testJavascriptHandler" data: data responseCallback: ^(id response) {
137103 NSLog (@" testJavascriptHandler responded: %@ " , response);
138104 }];
139105}
140106
141- - (void )_WKSendMessage {
142- [_WKBridge send: @" A string sent from ObjC to JS" responseCallback: ^(id response) {
143- NSLog (@" sendMessage got response: %@ " , response);
144- }];
145- }
146-
147107- (void )_WKCallHandler {
148108 id data = @{ @" greetingFromObjC" : @" Hi there, JS!" };
149109 [_WKBridge callHandler: @" testJavascriptHandler" data: data responseCallback: ^(id response) {
0 commit comments