diff options
Diffstat (limited to 'AppKit/GTMNSAnimation+Duration.m')
-rw-r--r-- | AppKit/GTMNSAnimation+Duration.m | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/AppKit/GTMNSAnimation+Duration.m b/AppKit/GTMNSAnimation+Duration.m index f8d0ced..89e3f3e 100644 --- a/AppKit/GTMNSAnimation+Duration.m +++ b/AppKit/GTMNSAnimation+Duration.m @@ -23,11 +23,11 @@ static NSTimeInterval GTMCurrentDurationMultiplier(void) { NSUInteger modifiers = [event modifierFlags]; NSTimeInterval duration = 1.0; if (modifiers & NSShiftKeyMask) { - duration *= 0.2; + duration *= 5.0; } - // These are additive, so shift+control returns 0.1 * duration. + // These are additive, so shift+control returns 10 * duration. if (modifiers & NSControlKeyMask) { - duration *= 0.5; + duration *= 2.0; } return duration; } @@ -43,6 +43,15 @@ static NSTimeInterval GTMCurrentDurationMultiplier(void) { #if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5 +@implementation NSAnimationContext (GTMNSAnimationDurationAdditions) + +- (void)gtm_setDuration:(NSTimeInterval)duration { + duration = duration * GTMCurrentDurationMultiplier(); + [self setDuration:duration]; +} + +@end + @implementation CAAnimation (GTMCAAnimationDurationAdditions) - (void)gtm_setDuration:(CFTimeInterval)duration { |