1 #import <UICaboodle/RVPage.h>
3 #import <UIKit/UIKit.h>
5 #include <WebKit/DOMNodeList.h>
6 #include <WebKit/WebFrame.h>
7 #include <WebKit/WebScriptObject.h>
8 #include <WebKit/WebView.h>
10 #import <JavaScriptCore/JavaScriptCore.h>
12 #include "substrate.h"
14 @
class NSMutableArray
;
20 @
class UIDocumentWebView
;
25 @
class IndirectDelegate
;
27 @protocol CYWebViewDelegate
<UIWebViewDelegate
>
28 - (void) webView
:(WebView
*)view addMessageToConsole
:(NSDictionary
*)message
;
29 - (void) webView
:(WebView
*)view decidePolicyForNavigationAction
:(NSDictionary
*)action request
:(NSURLRequest
*)request frame
:(WebFrame
*)frame decisionListener
:(id
<WebPolicyDecisionListener
>)listener
;
30 - (void) webView
:(WebView
*)view decidePolicyForNewWindowAction
:(NSDictionary
*)action request
:(NSURLRequest
*)request newFrameName
:(NSString
*)name decisionListener
:(id
<WebPolicyDecisionListener
>)listener
;
31 - (void) webView
:(WebView
*)view didClearWindowObject
:(WebScriptObject
*)window forFrame
:(WebFrame
*)frame
;
32 - (void) webView
:(WebView
*)view didFailLoadWithError
:(NSError
*)error forFrame
:(WebFrame
*)frame
;
33 - (void) webView
:(WebView
*)view didFailProvisionalLoadWithError
:(NSError
*)error forFrame
:(WebFrame
*)frame
;
34 - (void) webView
:(WebView
*)view didFinishLoadForFrame
:(WebFrame
*)frame
;
35 - (void) webView
:(WebView
*)view didReceiveTitle
:(NSString
*)title forFrame
:(WebFrame
*)frame
;
36 - (void) webView
:(WebView
*)view didStartProvisionalLoadForFrame
:(WebFrame
*)frame
;
37 - (NSURLRequest
*) webView
:(WebView
*)view resource
:(id
)resource willSendRequest
:(NSURLRequest
*)request redirectResponse
:(NSURLResponse
*)response fromDataSource
:(WebDataSource
*)source
;
38 - (void) webViewClose
:(WebView
*)view
;
39 - (bool) webView
:(WebView
*)view shouldRunJavaScriptAlertPanelWithMessage
:(NSString
*)message initiatedByFrame
:(WebFrame
*)frame
;
40 - (bool) webView
:(WebView
*)view shouldRunJavaScriptConfirmPanelWithMessage
:(NSString
*)message initiatedByFrame
:(WebFrame
*)frame
;
41 - (bool) webView
:(WebView
*)view shouldRunJavaScriptTextInputPanelWithPrompt
:(NSString
*)prompt defaultText
:(NSString
*)text initiatedByFrame
:(WebFrame
*)frame
;
42 - (void) webViewUpdateViewSettings
:(UIWebView
*)view
;
45 @interface CYWebView
: UIWebView
46 - (id
<CYWebViewDelegate
>) delegate
;
49 @interface
WebScriptObject (UICaboodle
)
51 - (id
) objectAtIndex
:(unsigned)index
;
54 @protocol BrowserControllerDelegate
55 - (void) retainNetworkActivityIndicator
;
56 - (void) releaseNetworkActivityIndicator
;
57 - (CYViewController
*) pageForURL
:(NSURL
*)url forExternal
:(BOOL
)external
;
61 @interface BrowserController
: CYViewController
<
65 _transient CYWebView
*webview_
;
66 _transient UIScrollView
*scroller_
;
68 UIActivityIndicatorView
*indicator_
;
69 IndirectDelegate
*indirect_
;
70 NSURLAuthenticationChallenge
*challenge_
;
73 _H
<NSURLRequest
> request_
;
75 _transient NSNumber
*sensitive_
;
78 NSMutableSet
*loading_
;
80 // XXX: NSString * or UIImage *
84 _H
<WebScriptObject
> function_
;
89 UIBarButtonItem
*reloaditem_
;
90 UIBarButtonItem
*loadingitem_
;
93 bool hidesNavigationBar_
;
94 bool allowsNavigationAction_
;
99 - (void) setURL
:(NSURL
*)url
;
101 - (void) loadURL
:(NSURL
*)url cachePolicy
:(NSURLRequestCachePolicy
)policy
;
102 - (void) loadURL
:(NSURL
*)url
;
104 - (void) loadRequest
:(NSURLRequest
*)request
;
107 - (void) reloadURLWithCache
:(BOOL
)cache
;
111 - (id
) initWithURL
:(NSURL
*)url
;
112 - (id
) initWithWidth
:(float)width
;
113 - (id
) initWithWidth
:(float)width ofClass
:(Class
)_class
;
115 - (void) callFunction
:(WebScriptObject
*)function
;
117 - (void) webView
:(WebView
*)view didClearWindowObject
:(WebScriptObject
*)window forFrame
:(WebFrame
*)frame
;
118 - (NSURLRequest
*) webView
:(WebView
*)view resource
:(id
)identifier willSendRequest
:(NSURLRequest
*)request redirectResponse
:(NSURLResponse
*)response fromDataSource
:(WebDataSource
*)source
;
120 + (float) defaultWidth
;
122 - (void) setButtonImage
:(NSString
*)button withStyle
:(NSString
*)style toFunction
:(id
)function
;
123 - (void) setButtonTitle
:(NSString
*)button withStyle
:(NSString
*)style toFunction
:(id
)function
;
124 - (void) setHidesNavigationBar
:(bool)value
;
126 - (void) alertView
:(UIAlertView
*)alert clickedButtonAtIndex
:(NSInteger
)button
;
127 - (void) customButtonClicked
;
128 - (void) applyRightButton
;
130 - (void) _didStartLoading
;
131 - (void) _didFinishLoading
;
135 - (void) dispatchEvent
:(NSString
*)event
;
137 - (void) setViewportWidthOnMainThread
:(float)value
;