New issue
Advanced search Search tips

Issue 699324 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Mar 2017
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug



Sign in to add a comment

convert FocusSynchronizer to use the same pattern as CaptureSynchronizer

Project Member Reported by riajiang@chromium.org, Mar 8 2017

Issue description

Right now aura::Env takes care of maintaining the active focus client and focused window and notifying its observers of these changes. It would be better to convert FocusSynchronizer to use the same pattern as CaptureSynchronizer, i.e. FocusSynchronizer would be the place that keeps track of active focus client and focused window to avoid putting too many things in aura::Env.

 
Project Member

Comment 1 by bugdroid1@chromium.org, Mar 31 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/86a7cee9063b92b30353bfa0e32c3bfb24625593

commit 86a7cee9063b92b30353bfa0e32c3bfb24625593
Author: riajiang <riajiang@chromium.org>
Date: Fri Mar 31 00:56:25 2017

Change FocusSynchronizer to maintain active focus client and window.

Deleted all active focus client and active focus client root
maintaining code from aura::Env and updated FocusSynchronizer to be
the place that keeps track of them. All clients that used to be the
EnvObserver to get notified for active focus client and active focus
client root changes are now changed to be the observer for
FocusSynchronizer to get notified.

Moved kFocusClientKey definition from FocusClient to aura_constants.

BUG= 699324 
TEST=covered by tests (aura_unittests and views_mus_unittests)

Review-Url: https://codereview.chromium.org/2714763002
Cr-Commit-Position: refs/heads/master@{#460963}

[modify] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/components/exo/wm_helper_mus.cc
[modify] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/components/exo/wm_helper_mus.h
[modify] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/ui/aura/BUILD.gn
[modify] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/ui/aura/client/aura_constants.cc
[modify] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/ui/aura/client/aura_constants.h
[modify] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/ui/aura/client/focus_client.cc
[modify] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/ui/aura/client/focus_client.h
[modify] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/ui/aura/env.cc
[modify] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/ui/aura/env.h
[modify] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/ui/aura/env_observer.h
[modify] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/ui/aura/mus/focus_synchronizer.cc
[modify] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/ui/aura/mus/focus_synchronizer.h
[add] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/ui/aura/mus/focus_synchronizer_observer.h
[modify] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/ui/aura/mus/window_tree_client.h
[modify] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/ui/aura/mus/window_tree_client_unittest.cc
[modify] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/ui/aura/test/aura_test_helper.cc
[modify] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/ui/views/mus/desktop_window_tree_host_mus.cc
[modify] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/ui/views/mus/desktop_window_tree_host_mus.h
[modify] https://crrev.com/86a7cee9063b92b30353bfa0e32c3bfb24625593/ui/views/mus/desktop_window_tree_host_mus_unittest.cc

Status: Fixed (was: Started)

Sign in to add a comment