From b1497b56219ae6773df40864729329f8b17f33fa Mon Sep 17 00:00:00 2001 From: "Jay Freeman (saurik)" Date: Thu, 24 Mar 2011 09:25:55 -0700 Subject: [PATCH] Provide some more infraustructure around WAKWindow. --- MobileCydia.mm | 13 ++++++++++--- iPhonePrivate.h | 5 +++++ 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/MobileCydia.mm b/MobileCydia.mm index 6008a27b..74c8993f 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 c4855bb0..fc85776d 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) -- 2.45.2