Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(80)

Issue 2747543002: ash: Start/stop observing KeyboardController via ShellObserver (Closed)

Created:
3 years, 9 months ago by xiyuan
Modified:
3 years, 9 months ago
Reviewers:
sky
CC:
chromium-reviews, kalyank, sadrul, oshima
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

ash: Start/stop observing KeyboardController via ShellObserver - Add ScopedObserver to layout managers that observes KeyboardController so that they stop observing it when destructed; - Layout managers start/stop observing KeyboardController via ShellObserver; BUG=699765 Review-Url: https://codereview.chromium.org/2747543002 Cr-Commit-Position: refs/heads/master@{#456874} Committed: https://chromium.googlesource.com/chromium/src/+/3816018a25a5da936828fa62a2eae92e14fe363e

Patch Set 1 #

Patch Set 2 : rebase #

Total comments: 2

Patch Set 3 : start/stop observing keyboard via ShellObserver #

Patch Set 4 : filter by root window #

Patch Set 5 : update keyboard container before notifying keyboard state observers #

Total comments: 2

Patch Set 6 : pass root_window to OnVirtualKeyboardStateChanged() #

Total comments: 2

Patch Set 7 : add UpdateKeyboardObserverFromStateChanged to share code #

Patch Set 8 : update LockLayoutManager to use similar logic #

Unified diffs Side-by-side diffs Delta from patch set Stats (+217 lines, -73 lines) Patch
M ash/BUILD.gn View 1 2 3 4 5 6 1 chunk +2 lines, -0 lines 0 comments Download
A ash/common/keyboard/keyboard_observer_register.h View 1 2 3 4 5 6 1 chunk +35 lines, -0 lines 0 comments Download
A ash/common/keyboard/keyboard_observer_register.cc View 1 2 3 4 5 6 1 chunk +31 lines, -0 lines 0 comments Download
M ash/common/shelf/shelf_layout_manager.h View 1 2 3 4 5 3 chunks +11 lines, -0 lines 0 comments Download
M ash/common/shelf/shelf_layout_manager.cc View 1 2 3 4 5 6 10 chunks +22 lines, -10 lines 0 comments Download
M ash/common/shell_observer.h View 1 2 3 4 5 1 chunk +3 lines, -2 lines 0 comments Download
M ash/common/wm/dock/docked_window_layout_manager.h View 1 2 3 4 5 4 chunks +11 lines, -0 lines 0 comments Download
M ash/common/wm/dock/docked_window_layout_manager.cc View 1 2 3 4 5 6 5 chunks +15 lines, -2 lines 0 comments Download
M ash/common/wm/lock_layout_manager.h View 1 2 3 4 5 6 7 3 chunks +6 lines, -3 lines 0 comments Download
M ash/common/wm/lock_layout_manager.cc View 1 2 3 4 5 6 7 5 chunks +11 lines, -23 lines 0 comments Download
M ash/common/wm/panels/panel_layout_manager.h View 1 2 3 4 5 3 chunks +8 lines, -0 lines 0 comments Download
M ash/common/wm/panels/panel_layout_manager.cc View 1 2 3 4 5 6 8 chunks +19 lines, -8 lines 0 comments Download
M ash/common/wm/workspace/workspace_layout_manager.h View 1 2 3 4 5 3 chunks +11 lines, -0 lines 0 comments Download
M ash/common/wm/workspace/workspace_layout_manager.cc View 1 2 3 4 5 6 4 chunks +13 lines, -2 lines 0 comments Download
M ash/root_window_controller.cc View 1 2 3 4 5 2 chunks +4 lines, -15 lines 0 comments Download
M ash/shell.h View 1 2 3 4 5 1 chunk +2 lines, -2 lines 0 comments Download
M ash/shell.cc View 1 2 3 4 5 1 chunk +3 lines, -2 lines 0 comments Download
M chrome/browser/chromeos/login/lock/webui_screen_locker.h View 1 2 3 4 5 1 chunk +2 lines, -1 line 0 comments Download
M chrome/browser/chromeos/login/lock/webui_screen_locker.cc View 1 2 3 4 5 1 chunk +3 lines, -1 line 0 comments Download
M chrome/browser/chromeos/login/ui/login_display_host_impl.h View 1 2 3 4 5 1 chunk +2 lines, -1 line 0 comments Download
M chrome/browser/chromeos/login/ui/login_display_host_impl.cc View 1 2 3 4 5 1 chunk +3 lines, -1 line 0 comments Download

Messages

Total messages: 46 (33 generated)
xiyuan
3 years, 9 months ago (2017-03-10 23:31:48 UTC) #8
sky
https://codereview.chromium.org/2747543002/diff/20001/ash/root_window_controller.cc File ash/root_window_controller.cc (right): https://codereview.chromium.org/2747543002/diff/20001/ash/root_window_controller.cc#newcode676 ash/root_window_controller.cc:676: wm_shelf_->shelf_layout_manager()->StartObservingKeyboard( The sources an object needs to observe are ...
3 years, 9 months ago (2017-03-10 23:40:47 UTC) #9
xiyuan
https://codereview.chromium.org/2747543002/diff/20001/ash/root_window_controller.cc File ash/root_window_controller.cc (right): https://codereview.chromium.org/2747543002/diff/20001/ash/root_window_controller.cc#newcode676 ash/root_window_controller.cc:676: wm_shelf_->shelf_layout_manager()->StartObservingKeyboard( On 2017/03/10 23:40:47, sky wrote: > The sources ...
3 years, 9 months ago (2017-03-10 23:44:11 UTC) #12
xiyuan
Revised to start/stop observing KeyboardController via ShellObserver. PTAL. Thanks.
3 years, 9 months ago (2017-03-13 16:36:31 UTC) #20
xiyuan
On 2017/03/13 16:36:31, xiyuan wrote: > Revised to start/stop observing KeyboardController via ShellObserver. PTAL. > ...
3 years, 9 months ago (2017-03-13 17:23:43 UTC) #23
xiyuan
On 2017/03/13 17:23:43, xiyuan wrote: > On 2017/03/13 16:36:31, xiyuan wrote: > > Revised to ...
3 years, 9 months ago (2017-03-13 18:34:15 UTC) #28
sky
https://codereview.chromium.org/2747543002/diff/80001/ash/common/shelf/shelf_layout_manager.cc File ash/common/shelf/shelf_layout_manager.cc (right): https://codereview.chromium.org/2747543002/diff/80001/ash/common/shelf/shelf_layout_manager.cc#newcode412 ash/common/shelf/shelf_layout_manager.cc:412: if (!keyboard_controller || Do you need the null check ...
3 years, 9 months ago (2017-03-13 19:20:48 UTC) #29
xiyuan
https://codereview.chromium.org/2747543002/diff/80001/ash/common/shelf/shelf_layout_manager.cc File ash/common/shelf/shelf_layout_manager.cc (right): https://codereview.chromium.org/2747543002/diff/80001/ash/common/shelf/shelf_layout_manager.cc#newcode412 ash/common/shelf/shelf_layout_manager.cc:412: if (!keyboard_controller || On 2017/03/13 19:20:47, sky wrote: > ...
3 years, 9 months ago (2017-03-13 22:09:46 UTC) #32
sky
Looking good! One minor suggestion in hopes of reducing boilerplate. https://codereview.chromium.org/2747543002/diff/100001/ash/common/wm/workspace/workspace_layout_manager.cc File ash/common/wm/workspace/workspace_layout_manager.cc (right): https://codereview.chromium.org/2747543002/diff/100001/ash/common/wm/workspace/workspace_layout_manager.cc#newcode336 ...
3 years, 9 months ago (2017-03-14 03:23:50 UTC) #35
xiyuan
Done and also migrated LockLayoutManager to use similar code as other layout manager. https://codereview.chromium.org/2747543002/diff/100001/ash/common/wm/workspace/workspace_layout_manager.cc File ...
3 years, 9 months ago (2017-03-14 21:25:55 UTC) #38
sky
Nice! LGTM
3 years, 9 months ago (2017-03-14 21:34:03 UTC) #39
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2747543002/140001
3 years, 9 months ago (2017-03-14 22:40:20 UTC) #43
commit-bot: I haz the power
3 years, 9 months ago (2017-03-14 22:51:02 UTC) #46
Message was sent while issue was closed.
Committed patchset #8 (id:140001) as
https://chromium.googlesource.com/chromium/src/+/3816018a25a5da936828fa62a2ea...

Powered by Google App Engine
This is Rietveld 408576698