X-Git-Url: https://git.saurik.com/cydia.git/blobdiff_plain/20b8724d290791e2a939c3baa3d5657eb3f8ebb1..3bcb5d7051b97203c2568c8e677a47b88236c9f4:/UICaboodle/BrowserView.h diff --git a/UICaboodle/BrowserView.h b/UICaboodle/BrowserView.h index 7a227d0b..2f0e4eb7 100644 --- a/UICaboodle/BrowserView.h +++ b/UICaboodle/BrowserView.h @@ -1,4 +1,14 @@ -#import "ResetView.h" +#import +#import + +#import + +#include +#include +#include +#include + +#import @class NSMutableArray; @class NSString; @@ -14,31 +24,100 @@ @class Database; @class IndirectDelegate; -@interface BrowserView : RVPage { - _transient Database *database_; - UIScroller *scroller_; - UIWebDocumentView *webview_; - NSMutableArray *urls_; +@protocol CYWebViewDelegate +- (void) webView:(WebView *)view decidePolicyForNavigationAction:(NSDictionary *)action request:(NSURLRequest *)request frame:(WebFrame *)frame decisionListener:(id)listener; +- (void) webView:(WebView *)view decidePolicyForNewWindowAction:(NSDictionary *)action request:(NSURLRequest *)request newFrameName:(NSString *)name decisionListener:(id)listener; +- (void) webView:(WebView *)view didClearWindowObject:(WebScriptObject *)window forFrame:(WebFrame *)frame; +- (void) webView:(WebView *)view didFailLoadWithError:(NSError *)error forFrame:(WebFrame *)frame; +- (void) webView:(WebView *)view didFailProvisionalLoadWithError:(NSError *)error forFrame:(WebFrame *)frame; +- (void) webView:(WebView *)view didFinishLoadForFrame:(WebFrame *)frame; +- (void) webView:(WebView *)view didReceiveTitle:(NSString *)title forFrame:(WebFrame *)frame; +- (void) webView:(WebView *)view didStartProvisionalLoadForFrame:(WebFrame *)frame; +- (NSURLRequest *) webView:(WebView *)view resource:(id)resource willSendRequest:(NSURLRequest *)request redirectResponse:(NSURLResponse *)response fromDataSource:(WebDataSource *)source; +- (void) webViewClose:(WebView *)view; +- (bool) webView:(WebView *)view shouldRunJavaScriptAlertPanelWithMessage:(NSString *)message initiatedByFrame:(WebFrame *)frame; +- (bool) webView:(WebView *)view shouldRunJavaScriptConfirmPanelWithMessage:(NSString *)message initiatedByFrame:(WebFrame *)frame; +- (bool) webView:(WebView *)view shouldRunJavaScriptTextInputPanelWithPrompt:(NSString *)prompt defaultText:(NSString *)text initiatedByFrame:(WebFrame *)frame; +@end + +@interface CYWebView : UIWebView +- (id) delegate; +@end + +@interface WebScriptObject (UICaboodle) +- (NSUInteger) count; +- (id) objectAtIndex:(unsigned)index; +@end + +@protocol BrowserControllerDelegate +- (CYViewController *) pageForURL:(NSURL *)url hasTag:(int *)tag; +@end + +@interface BrowserController : CYViewController < + CYWebViewDelegate, + HookProtocol, + UIWebViewDelegate +> { + CYWebView *webview_; + UIScrollView *scroller_; + UIProgressIndicator *indicator_; IndirectDelegate *indirect_; + NSURLAuthenticationChallenge *challenge_; + + bool error_; + NSURLRequest *request_; + + NSNumber *sensitive_; NSString *title_; - bool loading_; - bool reloading_; + NSMutableSet *loading_; + + // XXX: NSString * or UIImage * + id custom_; + NSString *style_; - bool pushed_; + WebScriptObject *function_; + WebScriptObject *closer_; + + float width_; + Class class_; + + UIBarButtonItem *reloaditem_; + UIBarButtonItem *loadingitem_; } ++ (void) _initialize; + - (void) loadURL:(NSURL *)url cachePolicy:(NSURLRequestCachePolicy)policy; - (void) loadURL:(NSURL *)url; - (void) loadRequest:(NSURLRequest *)request; - (void) reloadURL; +- (bool) isLoading; + +- (id) init; +- (id) initWithWidth:(float)width; +- (id) initWithWidth:(float)width ofClass:(Class)_class; + +- (void) callFunction:(WebScriptObject *)function; + +- (void) webView:(WebView *)view didClearWindowObject:(WebScriptObject *)window forFrame:(WebFrame *)frame; +- (NSURLRequest *) webView:(WebView *)view resource:(id)identifier willSendRequest:(NSURLRequest *)request redirectResponse:(NSURLResponse *)response fromDataSource:(WebDataSource *)source; + ++ (float) defaultWidth; + +- (void) setButtonImage:(NSString *)button withStyle:(NSString *)style toFunction:(id)function; +- (void) setButtonTitle:(NSString *)button withStyle:(NSString *)style toFunction:(id)function; +- (void) setPopupHook:(id)function; -- (WebView *) webView; +- (void) alertView:(UIAlertView *)alert clickedButtonAtIndex:(NSInteger)button; +- (void) customButtonClicked; +- (void) applyRightButton; -- (id) initWithBook:(RVBook *)book database:(Database *)database; +- (void) _didStartLoading; +- (void) _didFinishLoading; -- (void) webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame; +- (void) close; @end