Hide shelf when using side power button |
||||||
Issue descriptionThis is a follow up after issue 746657. Code point: https://cs.chromium.org/chromium/src/ash/wm/lock_state_controller.cc?type=cs&sq=package:chromium&l=125 Currently, we immediately hide non_lock_screen_containers for issue 746657. If we quickly tap power button two times, we may still see an intermediate state which has wallpaper, shelf and status area before lock screen appears. I think we shall definitely immediately hide shelf in this case, which is missed in my previous CL (SessionStateAnimator::LAUNCHER). This is also in line with the lock button behavior. I don't have a strong option about status area. Shall we hide it, which gives an intermediate state that has wallpaper only, and then show it? The status area change shall apply to both lock button and side power button.
,
Aug 31 2017
shelf fade out -> shelf immediately hide, should be addressed in: https://chromium-review.googlesource.com/c/chromium/src/+/644230 status area: for tot Chrome, it will change from back to semi-transparent. I need UI/UX suggestions whether we need to hide it first and then show it when lock screen/overlay shows. shelf turns black: for new lock screen, shelf will not turn black "shut down" and "sign out" animation -> make it appear instantly. I need to consult jdufault@ or wzang@.
,
Aug 31 2017
I could remove the animation of 'shut down' and 'sign out', but they still may not show instantly as they are implemented in Web UI and there's delay in loading them. But I'm working on re-implementing them using views-based UI (targeted at M63) and I will disable the animation in this case. Actually I had a WIP CL that adds a 'FADE IN' animation to SessionStateAnimator::LAUNCHER (renamed as SHELF) in |StartPostLockAnimation()|, because the shelf fades out previously and we need to it show again (the app list buttons are replaced with the sign out button etc.). However this issue suggests that we should distinguish between a regular lock action and a lock made by the power button, and show the shelf immediately in the latter case. Is it possible to distinguish the two cases in |StartPostLockAnimation()|?
,
Aug 31 2017
Yes, there is an issue 748732 tracking no animation for post lock animation, which I will do in these days. Thanks for the info. So there will be shelf animation added in StartPostLockAnimation. I think I or either you can make it no animation when 748732 is done. For 'shut down' and 'sign out' animations, if they could be removed for the cases described in 748732 only, that would be good!
,
Aug 31 2017
OK, I will remember to disable the animation for 'shutdown' button in the case of issue 748732 only. I think it will be easy to do after issue 748732 is fixed.
,
Aug 31 2017
My CL to bind wallpaper reparent with session state might make this issue more obvious because it takes a while to get to LOCKED session state. I wonder whether we should introduce a LOCKING state that sets immediately when we start to lock and move wallpaper on that state.
,
Aug 31 2017
I think views-based shelf will make this easier, since it should be able to build the new UI and display it in under a single frame. It is not worth the effort to do this for the webui lock screen.
,
Aug 31 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/1250f2be8fc80668ed12604fb86d5a1ac3818a24 commit 1250f2be8fc80668ed12604fb86d5a1ac3818a24 Author: Qiang Xu <warx@chromium.org> Date: Thu Aug 31 18:01:00 2017 cros: immediately hide Shelf Container for screen off locking animation changes: - Rename SessionStateAnimator::LAUNCHER to SessionStateAnimator::SHELF, to match the exact container name: kShellWindowId_ShelfContainer. - Hiding shelf container in addition to non lock screen containers. - Send EVENT_LOCK_ANIMATION_STARTED for LockWithoutAnimation() in hope of the observation on this event doesn't break. Bug: 760775 Test: coverted by tests. Also tested on device. Change-Id: I304d954ccb2510f8136268ffcb1297025e8be738 Reviewed-on: https://chromium-review.googlesource.com/644230 Reviewed-by: Dan Erat (OOO Fri-Mon) <derat@chromium.org> Commit-Queue: Qiang(Joe) Xu <warx@chromium.org> Cr-Commit-Position: refs/heads/master@{#498919} [modify] https://crrev.com/1250f2be8fc80668ed12604fb86d5a1ac3818a24/ash/system/power/power_event_observer_unittest.cc [modify] https://crrev.com/1250f2be8fc80668ed12604fb86d5a1ac3818a24/ash/system/power/tablet_power_button_controller_unittest.cc [modify] https://crrev.com/1250f2be8fc80668ed12604fb86d5a1ac3818a24/ash/wm/lock_state_controller.cc [modify] https://crrev.com/1250f2be8fc80668ed12604fb86d5a1ac3818a24/ash/wm/lock_state_controller.h [modify] https://crrev.com/1250f2be8fc80668ed12604fb86d5a1ac3818a24/ash/wm/lock_state_controller_unittest.cc [modify] https://crrev.com/1250f2be8fc80668ed12604fb86d5a1ac3818a24/ash/wm/session_state_animator.cc [modify] https://crrev.com/1250f2be8fc80668ed12604fb86d5a1ac3818a24/ash/wm/session_state_animator.h [modify] https://crrev.com/1250f2be8fc80668ed12604fb86d5a1ac3818a24/ash/wm/session_state_animator_impl.cc [modify] https://crrev.com/1250f2be8fc80668ed12604fb86d5a1ac3818a24/ash/wm/session_state_animator_impl_unittest.cc [modify] https://crrev.com/1250f2be8fc80668ed12604fb86d5a1ac3818a24/ash/wm/test_session_state_animator.cc
,
Sep 13 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/dfe6d1724c3ab0dd43fba6bdea338284eca9f474 commit dfe6d1724c3ab0dd43fba6bdea338284eca9f474 Author: Qiang Xu <warx@chromium.org> Date: Wed Sep 13 21:33:14 2017 m61 merge: cros: immediately hide Shelf Container for screen off locking animation changes: - Rename SessionStateAnimator::LAUNCHER to SessionStateAnimator::SHELF, to match the exact container name: kShellWindowId_ShelfContainer. - Hiding shelf container in addition to non lock screen containers. - Send EVENT_LOCK_ANIMATION_STARTED for LockWithoutAnimation() in hope of the observation on this event doesn't break. TBR: derat@chromium.org (cherry picked from commit 1250f2be8fc80668ed12604fb86d5a1ac3818a24) Bug: 760775 Test: coverted by tests. Also tested on device. Change-Id: I304d954ccb2510f8136268ffcb1297025e8be738 Reviewed-on: https://chromium-review.googlesource.com/644230 Reviewed-by: Dan Erat (OOO Fri-Mon) <derat@chromium.org> Commit-Queue: Qiang(Joe) Xu <warx@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#498919} Reviewed-on: https://chromium-review.googlesource.com/665826 Reviewed-by: Qiang(Joe) Xu <warx@chromium.org> Cr-Commit-Position: refs/branch-heads/3163@{#1191} Cr-Branched-From: ff259bab28b35d242e10186cd63af7ed404fae0d-refs/heads/master@{#488528} [modify] https://crrev.com/dfe6d1724c3ab0dd43fba6bdea338284eca9f474/ash/system/power/power_event_observer_unittest.cc [modify] https://crrev.com/dfe6d1724c3ab0dd43fba6bdea338284eca9f474/ash/system/power/tablet_power_button_controller_unittest.cc [modify] https://crrev.com/dfe6d1724c3ab0dd43fba6bdea338284eca9f474/ash/wm/lock_state_controller.cc [modify] https://crrev.com/dfe6d1724c3ab0dd43fba6bdea338284eca9f474/ash/wm/lock_state_controller.h [modify] https://crrev.com/dfe6d1724c3ab0dd43fba6bdea338284eca9f474/ash/wm/lock_state_controller_unittest.cc [modify] https://crrev.com/dfe6d1724c3ab0dd43fba6bdea338284eca9f474/ash/wm/session_state_animator.cc [modify] https://crrev.com/dfe6d1724c3ab0dd43fba6bdea338284eca9f474/ash/wm/session_state_animator.h [modify] https://crrev.com/dfe6d1724c3ab0dd43fba6bdea338284eca9f474/ash/wm/session_state_animator_impl.cc [modify] https://crrev.com/dfe6d1724c3ab0dd43fba6bdea338284eca9f474/ash/wm/session_state_animator_impl_unittest.cc [modify] https://crrev.com/dfe6d1724c3ab0dd43fba6bdea338284eca9f474/ash/wm/test_session_state_animator.cc
,
Sep 13 2017
delegate to wzang@ for views-based lock screen update and 'shutdown' button, etc. There is a variable |post_lock_immediate_animation_| in LockStateController to indicate whether lock animation should be immediate.
,
Sep 13 2017
Sure. I have a WIP CL checking that variable.
,
Sep 20 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/4ca20523c37be2604719682cc7c9265cffbd184d commit 4ca20523c37be2604719682cc7c9265cffbd184d Author: Wenzhao Zang <wzang@chromium.org> Date: Wed Sep 20 00:42:32 2017 Add fade-in animation to make shelf visible on lock screen The views-based shelf is hidden behind flag. The fade-in animation is a no-op if the flag is not added because the shelf is in non_lock_screen_containers without the flag. (Follow-up to CL 583942.) Bug: 701157 , 760775 Change-Id: I14421b22c21361a7ff97e9c0e50a23ff0dd6fa45 Reviewed-on: https://chromium-review.googlesource.com/662417 Commit-Queue: Wenzhao (Colin) Zang <wzang@chromium.org> Reviewed-by: James Cook <jamescook@chromium.org> Reviewed-by: Jacob Dufault <jdufault@chromium.org> Cr-Commit-Position: refs/heads/master@{#503008} [modify] https://crrev.com/4ca20523c37be2604719682cc7c9265cffbd184d/ash/shelf/shelf_background_animator.cc [modify] https://crrev.com/4ca20523c37be2604719682cc7c9265cffbd184d/ash/shelf/shelf_background_animator.h [modify] https://crrev.com/4ca20523c37be2604719682cc7c9265cffbd184d/ash/system/power/power_event_observer_unittest.cc [modify] https://crrev.com/4ca20523c37be2604719682cc7c9265cffbd184d/ash/system/power/tablet_power_button_controller_unittest.cc [modify] https://crrev.com/4ca20523c37be2604719682cc7c9265cffbd184d/ash/wm/lock_state_controller.cc [modify] https://crrev.com/4ca20523c37be2604719682cc7c9265cffbd184d/ash/wm/lock_state_controller_unittest.cc
,
Nov 30 2017
Marked fix since the views-based lock screen and shelf are enabled by default.
,
Jul 30
|
||||||
►
Sign in to add a comment |
||||||
Comment 1 by derat@chromium.org
, Aug 31 2017