-> Reduce the rageshake timeout

-> apply screen scale to the screenshot (avoid having ugly ones on iphone 6+)
This commit is contained in:
ylecollen 2015-02-02 17:24:51 +01:00
parent e3fb0017b9
commit 363a0bbd25

View file

@ -78,7 +78,7 @@ static RageShakableUIResponder* sharedInstance = nil;
RageShakableUIResponder* rageShakableUIResponder = [responder isKindOfClass:[RageShakableUIResponder class]] ? (RageShakableUIResponder*)responder : sharedInstance; RageShakableUIResponder* rageShakableUIResponder = [responder isKindOfClass:[RageShakableUIResponder class]] ? (RageShakableUIResponder*)responder : sharedInstance;
if (rageShakableUIResponder && [AppDelegate theDelegate].isAppForeground && (([[NSDate date] timeIntervalSince1970] - rageShakableUIResponder->startShakingTimeStamp) > 1.5) && !rageShakableUIResponder->confirmationAlert) { if (rageShakableUIResponder && [AppDelegate theDelegate].isAppForeground && (([[NSDate date] timeIntervalSince1970] - rageShakableUIResponder->startShakingTimeStamp) > 1) && !rageShakableUIResponder->confirmationAlert) {
if (!rageShakableUIResponder->ignoreShakeEnd) { if (!rageShakableUIResponder->ignoreShakeEnd) {
rageShakableUIResponder->startShakingTimeStamp = [[NSDate date] timeIntervalSince1970]; rageShakableUIResponder->startShakingTimeStamp = [[NSDate date] timeIntervalSince1970];
@ -127,8 +127,9 @@ static RageShakableUIResponder* sharedInstance = nil;
} }
+ (void)takeScreenshot:(UIViewController*)controller { + (void)takeScreenshot:(UIViewController*)controller {
AppDelegate* theDelegate = [AppDelegate theDelegate]; AppDelegate* theDelegate = [AppDelegate theDelegate];
UIGraphicsBeginImageContext(theDelegate.window.bounds.size); UIGraphicsBeginImageContextWithOptions(theDelegate.window.bounds.size, NO, [UIScreen mainScreen].scale);
// Iterate over every window from back to front // Iterate over every window from back to front
for (UIWindow *window in [[UIApplication sharedApplication] windows]) for (UIWindow *window in [[UIApplication sharedApplication] windows])
@ -161,6 +162,9 @@ static RageShakableUIResponder* sharedInstance = nil;
[UIPasteboard generalPasteboard].image = image; [UIPasteboard generalPasteboard].image = image;
if (controller) { if (controller) {
[controller.view snapshotViewAfterScreenUpdates:YES];
sharedInstance->parentViewController = controller; sharedInstance->parentViewController = controller;
sharedInstance->mailComposer = [[MFMailComposeViewController alloc] init]; sharedInstance->mailComposer = [[MFMailComposeViewController alloc] init];