diff options
author | skuhne@chromium.org <skuhne@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-01-28 23:21:31 +0000 |
---|---|---|
committer | skuhne@chromium.org <skuhne@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-01-28 23:21:31 +0000 |
commit | 5cc1b6590873a23e33a6a14ff8e992f3dba69679 (patch) | |
tree | 879aef806332971dd1349e01ad5d9de6aef1a172 /ash/default_user_wallpaper_delegate.h | |
parent | 18fe6adb58e43b891619a7e267ffe4d500f32d80 (diff) | |
download | chromium_src-5cc1b6590873a23e33a6a14ff8e992f3dba69679.zip chromium_src-5cc1b6590873a23e33a6a14ff8e992f3dba69679.tar.gz chromium_src-5cc1b6590873a23e33a6a14ff8e992f3dba69679.tar.bz2 |
Creating multi profile animations for switching users and teleporting of windows.
This CL is adding window animations for the following multi profile related actions:
- switching the user
- teleporting of windows
- window ownership changes
The user switch animation is as follows:
Time: ----->
Screen: A X B
- The desktop cross dissolves between A -> B
- User A's windows fade out between A -> X
- User B's windows get faded in between X -> B
- User A's shelf gets hidden between A -> X
- The user icon in the system tray as well as the shelf configuration changes at 'X'.
- User B's shelf gets faded on between X -> B
So at time X the user would see a half way cross dissolved desktop and shared windows (if there are any).
Since there is no guarantee that there is an animation going from A -> X an additional timer was used to kick off the second animation portion.
Further gotchas:
- Animations of the individual shelf items were in the past incorrectly performed with another animator which produced a lag for some components (e.g. the activation bar lagged and / or there was a gap between icons in the tray and the screen border when playing the animation fast.
- Wallpaper loading was so delayed that the animations started after all other animations were done.
BUG=336639, 307279
Review URL: https://codereview.chromium.org/130983007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247517 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash/default_user_wallpaper_delegate.h')
-rw-r--r-- | ash/default_user_wallpaper_delegate.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/ash/default_user_wallpaper_delegate.h b/ash/default_user_wallpaper_delegate.h index 2e22e30..9978738 100644 --- a/ash/default_user_wallpaper_delegate.h +++ b/ash/default_user_wallpaper_delegate.h @@ -19,6 +19,9 @@ class ASH_EXPORT DefaultUserWallpaperDelegate : public UserWallpaperDelegate { // UserWallpaperDelegate overrides: virtual int GetAnimationType() OVERRIDE; + virtual int GetAnimationDurationOverride() OVERRIDE; + virtual void SetAnimationDurationOverride( + int animation_duration_in_ms) OVERRIDE; virtual bool ShouldShowInitialAnimation() OVERRIDE; virtual void UpdateWallpaper() OVERRIDE; virtual void InitializeWallpaper() OVERRIDE; |