summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorthomasvl@chromium.org <thomasvl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-14 19:35:37 +0000
committerthomasvl@chromium.org <thomasvl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-14 19:35:37 +0000
commit231744281811c63cf15f6d6a7e02b85bc549506c (patch)
treeedbe437798399514d3e8df98035781ad19743ae3
parent33410c838b3d0ad411bb16b905e0188eacb40fb9 (diff)
downloadchromium_src-231744281811c63cf15f6d6a7e02b85bc549506c.zip
chromium_src-231744281811c63cf15f6d6a7e02b85bc549506c.tar.gz
chromium_src-231744281811c63cf15f6d6a7e02b85bc549506c.tar.bz2
[Mac] Fix MouseDown/MouseUp error for Steve animation effects
- Pull in new GTM with Animation fixes - Switch masks to be mouse up, not down. - Remove the steve effect from places where users don't really trigger the animation, so the effect doesn't seem "random" - Move the animation duration set to be per click in the prefs window instead of binding the time at window open. BUG=41393 TEST=Steve animation effects are back. Review URL: http://codereview.chromium.org/1618021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44516 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--DEPS2
-rw-r--r--chrome/browser/autocomplete/autocomplete_popup_view_mac.mm6
-rw-r--r--chrome/browser/cocoa/download_shelf_controller.mm2
-rw-r--r--chrome/browser/cocoa/download_started_animation_mac.mm6
-rw-r--r--chrome/browser/cocoa/extensions/browser_action_button.mm2
-rw-r--r--chrome/browser/cocoa/extensions/browser_actions_controller.mm2
-rw-r--r--chrome/browser/cocoa/find_bar_cocoa_controller.mm2
-rw-r--r--chrome/browser/cocoa/info_bubble_window.mm5
-rw-r--r--chrome/browser/cocoa/preferences_window_controller.mm8
-rw-r--r--chrome/browser/cocoa/status_bubble_mac.mm5
-rw-r--r--chrome/browser/cocoa/tab_strip_controller.mm2
11 files changed, 22 insertions, 20 deletions
diff --git a/DEPS b/DEPS
index 83c05eb..c5b07d0 100644
--- a/DEPS
+++ b/DEPS
@@ -178,7 +178,7 @@ deps_os = {
"/trunk/deps/reference_builds/chrome_mac@41963",
"src/third_party/GTM":
- "http://google-toolbox-for-mac.googlecode.com/svn/trunk@321",
+ "http://google-toolbox-for-mac.googlecode.com/svn/trunk@330",
"src/third_party/pdfsqueeze":
"http://pdfsqueeze.googlecode.com/svn/trunk@2",
"src/third_party/lighttpd":
diff --git a/chrome/browser/autocomplete/autocomplete_popup_view_mac.mm b/chrome/browser/autocomplete/autocomplete_popup_view_mac.mm
index 31ccff4..29ea9ab 100644
--- a/chrome/browser/autocomplete/autocomplete_popup_view_mac.mm
+++ b/chrome/browser/autocomplete/autocomplete_popup_view_mac.mm
@@ -371,9 +371,9 @@ void AutocompletePopupViewMac::UpdatePopupAppearance() {
r.origin.x == oldFrame.origin.x &&
r.size.width == oldFrame.size.width) {
[NSAnimationContext beginGrouping];
- [[NSAnimationContext currentContext]
- gtm_setDuration:kShrinkAnimationDuration
- eventMask:NSLeftMouseDownMask];
+ // Don't use the GTM additon for the "Steve" slowdown because this can
+ // happen async from user actions and the effects could be a surprise.
+ [[NSAnimationContext currentContext] setDuration:kShrinkAnimationDuration];
[[popup_ animator] setFrame:r display:YES];
[NSAnimationContext endGrouping];
} else {
diff --git a/chrome/browser/cocoa/download_shelf_controller.mm b/chrome/browser/cocoa/download_shelf_controller.mm
index 848d4f1..0d7f884 100644
--- a/chrome/browser/cocoa/download_shelf_controller.mm
+++ b/chrome/browser/cocoa/download_shelf_controller.mm
@@ -262,7 +262,7 @@ const NSTimeInterval kDownloadShelfCloseDuration = 0.12;
[NSAnimationContext beginGrouping];
[[NSAnimationContext currentContext]
gtm_setDuration:kDownloadItemOpenDuration
- eventMask:NSLeftMouseDownMask];
+ eventMask:NSLeftMouseUpMask];
[[[controller view] animator] setFrame:frame];
[NSAnimationContext endGrouping];
diff --git a/chrome/browser/cocoa/download_started_animation_mac.mm b/chrome/browser/cocoa/download_started_animation_mac.mm
index be66e99..86e2b34 100644
--- a/chrome/browser/cocoa/download_started_animation_mac.mm
+++ b/chrome/browser/cocoa/download_started_animation_mac.mm
@@ -167,7 +167,7 @@ private:
[positionAnimation setFromValue:[NSValue valueWithPoint:start]];
[positionAnimation setToValue:[NSValue valueWithPoint:stop]];
[positionAnimation gtm_setDuration:0.6
- eventMask:NSLeftMouseDownMask];
+ eventMask:NSLeftMouseUpMask];
[positionAnimation setTimingFunction:mediaFunction];
// Opacity animation.
@@ -176,7 +176,7 @@ private:
[opacityAnimation setFromValue:[NSNumber numberWithFloat:1.0]];
[opacityAnimation setToValue:[NSNumber numberWithFloat:0.4]];
[opacityAnimation gtm_setDuration:0.6
- eventMask:NSLeftMouseDownMask];
+ eventMask:NSLeftMouseUpMask];
[opacityAnimation setTimingFunction:mediaFunction];
// Group the animations together.
@@ -189,7 +189,7 @@ private:
[animationGroup setDelegate:self];
[animationGroup setTimingFunction:mediaFunction];
[animationGroup gtm_setDuration:0.6
- eventMask:NSLeftMouseDownMask];
+ eventMask:NSLeftMouseUpMask];
[layer addAnimation:animationGroup forKey:@"downloadOpacityAndPosition"];
observer_.reset(new DownloadAnimationTabObserver(self, tabContents));
diff --git a/chrome/browser/cocoa/extensions/browser_action_button.mm b/chrome/browser/cocoa/extensions/browser_action_button.mm
index 863b56b..81b6e41 100644
--- a/chrome/browser/cocoa/extensions/browser_action_button.mm
+++ b/chrome/browser/cocoa/extensions/browser_action_button.mm
@@ -150,7 +150,7 @@ class ExtensionImageTrackerBridge : public NotificationObserver,
moveAnimation_.reset([[NSViewAnimation alloc] init]);
[moveAnimation_ gtm_setDuration:kAnimationDuration
- eventMask:NSLeftMouseDownMask];
+ eventMask:NSLeftMouseUpMask];
[moveAnimation_ setAnimationBlockingMode:NSAnimationNonblocking];
[self updateState];
diff --git a/chrome/browser/cocoa/extensions/browser_actions_controller.mm b/chrome/browser/cocoa/extensions/browser_actions_controller.mm
index db65ec0..b8e0762 100644
--- a/chrome/browser/cocoa/extensions/browser_actions_controller.mm
+++ b/chrome/browser/cocoa/extensions/browser_actions_controller.mm
@@ -265,7 +265,7 @@ class ExtensionsServiceObserverBridge : public NotificationObserver,
chevronAnimation_.reset([[NSViewAnimation alloc] init]);
[chevronAnimation_ gtm_setDuration:kAnimationDuration
- eventMask:NSLeftMouseDownMask];
+ eventMask:NSLeftMouseUpMask];
[chevronAnimation_ setAnimationBlockingMode:NSAnimationNonblocking];
hiddenButtons_.reset([[NSMutableArray alloc] init]);
diff --git a/chrome/browser/cocoa/find_bar_cocoa_controller.mm b/chrome/browser/cocoa/find_bar_cocoa_controller.mm
index a0eb5f3..2845e3e 100644
--- a/chrome/browser/cocoa/find_bar_cocoa_controller.mm
+++ b/chrome/browser/cocoa/find_bar_cocoa_controller.mm
@@ -356,7 +356,7 @@ const float kFindBarCloseDuration = 0.15;
[[NSViewAnimation alloc]
initWithViewAnimations:[NSArray arrayWithObjects:dict, nil]]);
[currentAnimation_ gtm_setDuration:duration
- eventMask:NSLeftMouseDownMask];
+ eventMask:NSLeftMouseUpMask];
[currentAnimation_ setDelegate:self];
[currentAnimation_ startAnimation];
}
diff --git a/chrome/browser/cocoa/info_bubble_window.mm b/chrome/browser/cocoa/info_bubble_window.mm
index 0a65367..ea3ebcd 100644
--- a/chrome/browser/cocoa/info_bubble_window.mm
+++ b/chrome/browser/cocoa/info_bubble_window.mm
@@ -150,7 +150,7 @@ class AppNotificationBridge : public NotificationObserver {
[NSAnimationContext beginGrouping];
[[NSAnimationContext currentContext]
gtm_setDuration:kOrderOutAnimationDuration
- eventMask:NSLeftMouseDownMask];
+ eventMask:NSLeftMouseUpMask];
[[self animator] setAlphaValue:0.0];
[NSAnimationContext endGrouping];
}
@@ -196,9 +196,10 @@ class AppNotificationBridge : public NotificationObserver {
// Apply animations to show and move self.
[NSAnimationContext beginGrouping];
+ // The star currently triggers on mouse down, not mouse up.
[[NSAnimationContext currentContext]
gtm_setDuration:kOrderInAnimationDuration
- eventMask:NSLeftMouseDownMask];
+ eventMask:NSLeftMouseUpMask|NSLeftMouseDownMask];
[[self animator] setAlphaValue:1.0];
[[self animator] setFrame:frame display:YES];
[NSAnimationContext endGrouping];
diff --git a/chrome/browser/cocoa/preferences_window_controller.mm b/chrome/browser/cocoa/preferences_window_controller.mm
index f2fdc37..046dff1 100644
--- a/chrome/browser/cocoa/preferences_window_controller.mm
+++ b/chrome/browser/cocoa/preferences_window_controller.mm
@@ -527,10 +527,6 @@ void PersonalDataManagerObserver::ShowAutoFillDialog(
// Make this the delegate so it can remove the old view at the end of the
// animation (once it is faded out).
[animation_ setDelegate:self];
- // The default duration is 0.5s, which actually feels slow in here, so speed
- // it up a bit.
- [animation_ gtm_setDuration:0.2
- eventMask:NSLeftMouseDownMask];
[animation_ setAnimationBlockingMode:NSAnimationNonblocking];
// TODO(akalin): handle incognito profiles? The windows version of this
@@ -1815,6 +1811,10 @@ const int kDisabledIndex = 1;
nil];
[animation_ setViewAnimations:
[NSArray arrayWithObjects:oldViewOut, newViewIn, windowResize, nil]];
+ // The default duration is 0.5s, which actually feels slow in here, so speed
+ // it up a bit.
+ [animation_ gtm_setDuration:0.2
+ eventMask:NSLeftMouseUpMask];
[animation_ startAnimation];
} else {
[currentPrefsView removeFromSuperviewWithoutNeedingDisplay];
diff --git a/chrome/browser/cocoa/status_bubble_mac.mm b/chrome/browser/cocoa/status_bubble_mac.mm
index ee58398..7906243 100644
--- a/chrome/browser/cocoa/status_bubble_mac.mm
+++ b/chrome/browser/cocoa/status_bubble_mac.mm
@@ -436,8 +436,9 @@ void StatusBubbleMac::Fade(bool show) {
// This will cancel an in-progress transition and replace it with this fade.
[NSAnimationContext beginGrouping];
- [[NSAnimationContext currentContext] gtm_setDuration:duration
- eventMask:NSLeftMouseDownMask];
+ // Don't use the GTM additon for the "Steve" slowdown because this can happen
+ // async from user actions and the effects could be a surprise.
+ [[NSAnimationContext currentContext] setDuration:duration];
[[window_ animator] setAlphaValue:opacity];
[NSAnimationContext endGrouping];
}
diff --git a/chrome/browser/cocoa/tab_strip_controller.mm b/chrome/browser/cocoa/tab_strip_controller.mm
index 84297eb..ba61368 100644
--- a/chrome/browser/cocoa/tab_strip_controller.mm
+++ b/chrome/browser/cocoa/tab_strip_controller.mm
@@ -87,7 +87,7 @@ class ScopedNSAnimationContextGroup {
void SetCurrentContextDuration(NSTimeInterval duration) {
if (animate_) {
[[NSAnimationContext currentContext] gtm_setDuration:duration
- eventMask:NSLeftMouseDownMask];
+ eventMask:NSLeftMouseUpMask];
}
}