Skip to content

Commit 8ac33bf

Browse files
committed
Document the bridge constructor with a UIWebViewDelegate given, and change the signature so as to always put the handler last
1 parent e049253 commit 8ac33bf

3 files changed

Lines changed: 9 additions & 3 deletions

File tree

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ API Reference
6363
### ObjC
6464

6565
##### `[WebViewJavascriptBridge javascriptBridgeForWebView:(UIWebView*)webview handler:(WVJBHandler)handler]`
66+
##### `[WebViewJavascriptBridge javascriptBridgeForWebView:(UIWebView*)webview webViewDelegate:(UIWebViewDelegate*)webViewDelegate handler:(WVJBHandler)handler]`
6667

6768
Create a javascript bridge for the given UIWebView.
6869

@@ -74,9 +75,14 @@ Example:
7475
responseCallback(@"Right back atcha")
7576
}
7677
}]
78+
79+
[WebViewJavascriptBridge javascriptBridgeForWebView:webView webViewDelegate:self handler:^(id data, WVJBCallback responseCallback) { /* ... */ }];
7780

7881
The handler's `responseCallback` will be a block if javascript sent the message with a function responseCallback, or `nil` otherwise.
7982

83+
Optionally, pass in `webViewDelegate:(UIWebViewDelegate*)webViewDelegate` if you need to respond to the [UIWebView's lifecycle events](http://developer.apple.com/library/ios/documentation/uikit/reference/UIWebViewDelegate_Protocol/Reference/Reference.html).
84+
85+
8086
##### `[bridge send:(id)data]`
8187
##### `[bridge send:(id)data responseCallback:(WVJBResponseCallback)responseCallback]`
8288

WebViewJavascriptBridge/WebViewJavascriptBridge.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ typedef void (^WVJBHandler)(id data, WVJBResponseCallback responseCallback);
88
@interface WebViewJavascriptBridge : NSObject <UIWebViewDelegate>
99

1010
+ (id)javascriptBridgeForWebView:(UIWebView*)webView handler:(WVJBHandler)handler;
11-
+ (id)javascriptBridgeForWebView:(UIWebView*)webView handler:(WVJBHandler)handler webViewDelegate:(id <UIWebViewDelegate>)webViewDelegate;
11+
+ (id)javascriptBridgeForWebView:(UIWebView*)webView webViewDelegate:(id <UIWebViewDelegate>)webViewDelegate handler:(WVJBHandler)handler;
1212

1313
- (void)send:(id)message;
1414
- (void)send:(id)message responseCallback:(WVJBResponseCallback)responseCallback;

WebViewJavascriptBridge/WebViewJavascriptBridge.m

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,10 @@ @implementation WebViewJavascriptBridge
2727
static NSString *QUEUE_HAS_MESSAGE = @"__WVJB_QUEUE_MESSAGE__";
2828

2929
+ (id)javascriptBridgeForWebView:(UIWebView *)webView handler:(WVJBHandler)handler {
30-
return [self javascriptBridgeForWebView:webView handler:handler webViewDelegate:nil];
30+
return [self javascriptBridgeForWebView:webView webViewDelegate:nil handler:handler];
3131
}
3232

33-
+ (id)javascriptBridgeForWebView:(UIWebView *)webView handler:(WVJBHandler)messageHandler webViewDelegate:(id<UIWebViewDelegate>)webViewDelegate {
33+
+ (id)javascriptBridgeForWebView:(UIWebView *)webView webViewDelegate:(id<UIWebViewDelegate>)webViewDelegate handler:(WVJBHandler)messageHandler {
3434
WebViewJavascriptBridge* bridge = [[WebViewJavascriptBridge alloc] init];
3535
bridge.messageHandler = messageHandler;
3636
bridge.startupMessageQueue = [NSMutableArray array];

0 commit comments

Comments
 (0)