diff options
-rw-r--r-- | MobileCydia.mm | 13 | ||||
-rw-r--r-- | iPhonePrivate.h | 5 |
2 files changed, 15 insertions, 3 deletions
diff --git a/MobileCydia.mm b/MobileCydia.mm index 6008a27..74c8993 100644 --- a/MobileCydia.mm +++ b/MobileCydia.mm @@ -10354,8 +10354,14 @@ MSHook(id, NSURLConnection$init$, NSURLConnection *self, SEL _cmd, NSURLRequest } return self; } -static CGSize $WAKWindow$screenSize(id self, SEL _cmd) { - return [[UIScreen mainScreen] bounds].size; +Class $WAKWindow; + +static CGSize $WAKWindow$screenSize(WAKWindow self, SEL _cmd) { + CGSize size([[UIScreen mainScreen] bounds].size); + /*if ([$WAKWindow respondsToSelector:@selector(hasLandscapeOrientation)]) + if ([$WAKWindow hasLandscapeOrientation]) + std::swap(size.width, size.height);*/ + return size; } int main(int argc, char *argv[]) { @@ -10424,7 +10430,8 @@ int main(int argc, char *argv[]) { /* Library Hacks {{{ */ class_addMethod(objc_getClass("DOMNodeList"), @selector(countByEnumeratingWithState:objects:count:), (IMP) &DOMNodeList$countByEnumeratingWithState$objects$count$, "I20@0:4^{NSFastEnumerationState}8^@12I16"); - if (Class $WAKWindow = objc_getClass("WAKWindow")) + $WAKWindow = objc_getClass("WAKWindow"); + if ($WAKWindow != NULL) if (Method method = class_getInstanceMethod($WAKWindow, @selector(screenSize))) method_setImplementation(method, (IMP) &$WAKWindow$screenSize); diff --git a/iPhonePrivate.h b/iPhonePrivate.h index c4855bb..fc85776 100644 --- a/iPhonePrivate.h +++ b/iPhonePrivate.h @@ -166,6 +166,11 @@ typedef enum { - (NSString *) _typeDescription; @end // }}} +// @interface WAK* : * {{{ +@interface WAKWindow : NSObject ++ (BOOL) hasLandscapeOrientation; +@end +// }}} // @interface NS* (*) {{{ @interface NSMutableURLRequest (Apple) |