Overview mode: Investigate why we need to keep target transform instead of using identity when exiting |
|||
Issue descriptionCurrent code we store |original_transform_| [1] when entering overview mode: [1] https://cs.chromium.org/chromium/src/ash/wm/overview/scoped_transform_overview_window.cc?l=280&rcl=5211fe2ec294c92cf4f205c55804c5a0532d3e88 Investigate why we need this information, why not use identify transform to do the exiting animation. Related question, maybe a bug, what if a window is animating transform, say animation 1, and at the same time entering overview mode, then |original_transform_| is window->layer()->GetTargetTransform() during the animation 1, which may not the correct transform the window should be?
,
Feb 20 2018
I tracked this down to my original comment on implementing overview mode: https://chromiumcodereview.appspot.com/20415002/#msg11 I believe minimized windows have a transform to their minimized location which you want to animate back to rather than animating to the restored position after overview. Also re your related question, we use the target transform so it is the final position after animation completes.
,
Feb 20 2018
The minimized window is now handled by special widget that hosts the mirror layer, so we may not need this anymore.
,
Feb 21 2018
Yes, we have special widget to handle the minimized window and |original_transform_| information is not used at all for minimized window when exiting overview mode, see https://cs.chromium.org/chromium/src/ash/wm/overview/scoped_transform_overview_window.cc?rcl=3e667d451a63406a511c46b063eef146840d36b0&l=295. So I think it should be safe to remove this information now.
,
Feb 21 2018
Assign it to me as one of my CL is blocking on this. I'll work on it first.
,
Mar 28 2018
The |original_transform_| information has been removed and the window will always restore to identity transform when exiting overview mode. |
|||
►
Sign in to add a comment |
|||
Comment 1 by wutao@chromium.org
, Feb 15 2018