|
|
Revert 139494 - ash: Improved window maximize/restore animations
This implements a cross-fade while scaling the window between the new and old size.
When a maximize animation is triggered we grab the window's current layer (and those of child windows) and start an animation on those layers to scale them up to full size. Simultaneously, we install a fresh layer for the window, set the bounds to fill the workspace, and tell the window to paint. We scale down that layer to match the window size at the start of the animation, then fade it in while scaling it up to full size.
The restore animation essentially does the above in reverse. However, we always keep the higher resolution layer on top (it looks better), and we always keep the lower layer fully opaque (so the desktop doesn't bleed through).
The animation is aborted if the window is closed mid-animation or the GPU process crashes mid-animation.
BUG= 116618, 130688
TEST=aura_shell_unittests WorkspaceManagerTest and WindowAnimationsTest, trigger slow window animation with control-shift-click on maximize widget and close window during animation, kill -9 the GPU process during the animation and observe that Chrome recovers
Review URL: https://chromiumcodereview.appspot.com/10444014
TBR=jamescook@chromium.org
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=139959
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+56 lines, -376 lines) |
Patch |
 |
M |
ash/accelerators/accelerator_controller.cc
|
View
|
|
1 chunk |
+3 lines, -3 lines |
0 comments
|
Download
|
 |
M |
ash/wm/base_layout_manager.h
|
View
|
|
1 chunk |
+1 line, -6 lines |
0 comments
|
Download
|
 |
M |
ash/wm/base_layout_manager.cc
|
View
|
|
7 chunks |
+15 lines, -32 lines |
0 comments
|
Download
|
 |
M |
ash/wm/window_animations.h
|
View
|
|
2 chunks |
+2 lines, -10 lines |
0 comments
|
Download
|
 |
M |
ash/wm/window_animations.cc
|
View
|
|
5 chunks |
+0 lines, -181 lines |
0 comments
|
Download
|
 |
M |
ash/wm/window_animations_unittest.cc
|
View
|
|
4 chunks |
+4 lines, -56 lines |
0 comments
|
Download
|
 |
M |
ash/wm/workspace/workspace.h
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
 |
M |
ash/wm/workspace/workspace.cc
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
 |
M |
ash/wm/workspace/workspace_manager.h
|
View
|
|
3 chunks |
+11 lines, -3 lines |
0 comments
|
Download
|
 |
M |
ash/wm/workspace/workspace_manager.cc
|
View
|
|
5 chunks |
+6 lines, -10 lines |
0 comments
|
Download
|
 |
M |
ash/wm/workspace/workspace_manager_unittest.cc
|
View
|
|
2 chunks |
+2 lines, -2 lines |
0 comments
|
Download
|
 |
M |
content/browser/renderer_host/render_widget_host_view_aura.h
|
View
|
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
 |
M |
content/browser/renderer_host/render_widget_host_view_aura.cc
|
View
|
|
2 chunks |
+1 line, -5 lines |
0 comments
|
Download
|
 |
M |
ui/aura/bench/bench_main.cc
|
View
|
|
1 chunk |
+0 lines, -2 lines |
0 comments
|
Download
|
 |
M |
ui/aura/root_window.h
|
View
|
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
 |
M |
ui/aura/root_window.cc
|
View
|
|
1 chunk |
+0 lines, -3 lines |
0 comments
|
Download
|
 |
M |
ui/aura/window.h
|
View
|
|
2 chunks |
+0 lines, -7 lines |
0 comments
|
Download
|
 |
M |
ui/aura/window.cc
|
View
|
|
1 chunk |
+0 lines, -27 lines |
0 comments
|
Download
|
 |
M |
ui/compositor/compositor.cc
|
View
|
|
1 chunk |
+0 lines, -3 lines |
0 comments
|
Download
|
 |
M |
ui/compositor/compositor_observer.h
|
View
|
|
1 chunk |
+0 lines, -3 lines |
0 comments
|
Download
|
 |
M |
ui/compositor/layer_animation_observer.h
|
View
|
|
1 chunk |
+0 lines, -2 lines |
0 comments
|
Download
|
 |
M |
ui/compositor/layer_unittest.cc
|
View
|
|
3 chunks |
+1 line, -17 lines |
0 comments
|
Download
|
 |
M |
ui/gfx/transform.h
|
View
|
|
1 chunk |
+2 lines, -2 lines |
0 comments
|
Download
|
Total messages: 1 (0 generated)
|