diff options
author | Jay Freeman (saurik) <saurik@saurik.com> | 2011-03-13 14:29:45 -0700 |
---|---|---|
committer | Jay Freeman (saurik) <saurik@saurik.com> | 2011-03-14 05:09:09 -0700 |
commit | 4f651400990874d88ab8be0403e371f88e36b954 (patch) | |
tree | 06d25d96a04b6e330b1811d97400127bc27e0688 | |
parent | 31f9c8f728e31d0614b9c0aa9fe3ddb60545a366 (diff) |
Add dispatchEvent:@"CydiaTouchEnd".
-rw-r--r-- | CyteKit/dispatchEvent.mm | 17 | ||||
-rw-r--r-- | iPhonePrivate.h | 9 |
2 files changed, 26 insertions, 0 deletions
diff --git a/CyteKit/dispatchEvent.mm b/CyteKit/dispatchEvent.mm index 277d89b..f0e79ad 100644 --- a/CyteKit/dispatchEvent.mm +++ b/CyteKit/dispatchEvent.mm @@ -74,3 +74,20 @@ } @end + +MSHook(void, UIWebBrowserView$_webTouchEventsRecognized$, UIWebBrowserView *self, SEL _cmd, UIWebTouchEventsGestureRecognizer *recognizer) { + _UIWebBrowserView$_webTouchEventsRecognized$(self, _cmd, recognizer); + + if ([recognizer type] == 8) + //if ([[recognizer _typeDescription] isEqualToString:@"WebEventTouchEnd"]) + [self dispatchEvent:@"CydiaTouchEnd"]; +} + +__attribute__((__constructor__)) static void $() { + if (Class $UIWebBrowserView = objc_getClass("UIWebBrowserView")) { + if (Method method = class_getInstanceMethod($UIWebBrowserView, @selector(_webTouchEventsRecognized:))) { + _UIWebBrowserView$_webTouchEventsRecognized$ = reinterpret_cast<void (*)(UIWebBrowserView *, SEL, id)>(method_getImplementation(method)); + method_setImplementation(method, reinterpret_cast<IMP>(&$UIWebBrowserView$_webTouchEventsRecognized$)); + } + } +} diff --git a/iPhonePrivate.h b/iPhonePrivate.h index e9df918..b5a5959 100644 --- a/iPhonePrivate.h +++ b/iPhonePrivate.h @@ -149,6 +149,15 @@ typedef enum { + (WebDefaultUIKitDelegate *) sharedUIKitDelegate; @end // }}} +// @interface UIWeb* : * {{{ +@interface UIWebBrowserView : UIWebDocumentView +@end + +@interface UIWebTouchEventsGestureRecognizer : UIGestureRecognizer +- (int) type; +- (NSString *) _typeDescription; +@end +// }}} // @interface NS* (*) {{{ @interface NSMutableURLRequest (Apple) |