diff options
Diffstat (limited to 'woip/app/WebKitView.m')
-rw-r--r-- | woip/app/WebKitView.m | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/woip/app/WebKitView.m b/woip/app/WebKitView.m new file mode 100644 index 0000000..d9730e3 --- /dev/null +++ b/woip/app/WebKitView.m @@ -0,0 +1,77 @@ +#import "WebKitView.h" +#import <UIKit/UIView-Geometry.h> + +@implementation WebKitView + +-(void)loadString: (NSString *)str +{ + [webView loadHTMLString: str baseURL: [NSURL URLWithString: @"http://foo.com"]]; + [scroller setOffset: CGPointMake(0, 0)]; +} + +-(void)loadURL: (NSURL *)url +{ + NSURLRequest* urlRequest = [NSURLRequest requestWithURL: url]; + [webView loadRequest: urlRequest]; +} + +-(void)dealloc +{ + [webView release]; + [super dealloc]; +} + +-(void)setPolicyDelegate: (id) obj { + [[webView webView] setPolicyDelegate: obj]; +} + +- (BOOL)respondsToSelector:(SEL)aSelector +{ + NSLog(@"WKV Request for selector: %@", NSStringFromSelector(aSelector)); + return [super respondsToSelector:aSelector]; +} + +/*-(void)view: (id)v didSetFrame:(CGRect)f +{ + if( v == webView ) + [scroller setContentSize: CGSizeMake(f.size.width, f.size.height)]; +}*/ + +-(void)view:(id)v didDrawInRect:(CGRect)f duration:(float)d +{ + if(v == webView) + [scroller setContentSize: CGSizeMake(320, [webView bounds].size.height)]; +} + +-(id)initWithFrame: (CGRect)frame +{ + [super initWithFrame: frame]; + + scroller = [[UIScroller alloc] initWithFrame: frame]; + [scroller setScrollingEnabled: YES]; + [scroller setAdjustForContentSizeChange: YES]; + [scroller setClipsSubviews: YES]; + [scroller setAllowsRubberBanding: YES]; + [scroller setDelegate: self]; + + + webView = [[UIWebView alloc] initWithFrame: frame]; //[scroller bounds]]; + [webView setAutoresizes: YES]; + [webView setDelegate: self]; + //[webView setFrame: frame]; + //[webView setAutoresizingMask: 2]; //don't reflow text... or something + //[webView setSmoothsFonts: true]; + //[webView setClipsSubviews: YES]; + //[webView setEnabledGestures: YES]; + [webView setTilingEnabled: YES]; + [webView setTileSize: CGSizeMake(320.0f,1000.0f)]; + [scroller addSubview: webView]; + [self addSubview: scroller]; + + + return self; +} + +@end + + |