summaryrefslogtreecommitdiffstats
path: root/ui
diff options
context:
space:
mode:
authorben@chromium.org <ben@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-04-29 22:16:32 +0000
committerben@chromium.org <ben@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-04-29 22:16:32 +0000
commit27ba49bfeddc1102269de716e66f777de8da6ff2 (patch)
tree3e16ab5440c2bb979ba71175242a88572ab346fe /ui
parentcecf1d365910d8a22511e703b741bf52be56c740 (diff)
downloadchromium_src-27ba49bfeddc1102269de716e66f777de8da6ff2.zip
chromium_src-27ba49bfeddc1102269de716e66f777de8da6ff2.tar.gz
chromium_src-27ba49bfeddc1102269de716e66f777de8da6ff2.tar.bz2
Move DefaultActivationClient to wm/core
Several tests are using AuraTestHelper and were relying on it to set up the DefaultActivationClient, so I had to have them instantiate the DAC directly after calling SetUp() on the helper. I also had to make the DAC delete itself after the root window it's bound to is destroyed. R=sky@chromium.org http://crbug.com/308710 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=266616 Review URL: https://codereview.chromium.org/250113002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@266975 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui')
-rw-r--r--ui/aura/aura.gyp2
-rw-r--r--ui/aura/client/default_activation_client.h69
-rw-r--r--ui/aura/test/aura_test_helper.cc4
-rw-r--r--ui/aura/test/aura_test_helper.h2
-rw-r--r--ui/keyboard/keyboard.gyp1
-rw-r--r--ui/keyboard/keyboard_controller_unittest.cc2
-rw-r--r--ui/snapshot/DEPS1
-rw-r--r--ui/snapshot/snapshot.gyp1
-rw-r--r--ui/snapshot/snapshot_aura_unittest.cc2
-rw-r--r--ui/views/test/views_test_base.cc2
-rw-r--r--ui/wm/core/compound_event_filter_unittest.cc2
-rw-r--r--ui/wm/core/default_activation_client.cc (renamed from ui/aura/client/default_activation_client.cc)85
-rw-r--r--ui/wm/core/default_activation_client.h73
-rw-r--r--ui/wm/core/input_method_event_filter_unittest.cc3
-rw-r--r--ui/wm/core/shadow_controller_unittest.cc2
-rw-r--r--ui/wm/test/wm_test_helper.cc5
-rw-r--r--ui/wm/test/wm_test_helper.h2
-rw-r--r--ui/wm/wm.gyp2
18 files changed, 150 insertions, 110 deletions
diff --git a/ui/aura/aura.gyp b/ui/aura/aura.gyp
index 9ddb104..a8900f8 100644
--- a/ui/aura/aura.gyp
+++ b/ui/aura/aura.gyp
@@ -36,8 +36,6 @@
'client/cursor_client.h',
'client/cursor_client_observer.h',
'client/cursor_client_observer.cc',
- 'client/default_activation_client.cc',
- 'client/default_activation_client.h',
'client/default_capture_client.cc',
'client/default_capture_client.h',
'client/event_client.cc',
diff --git a/ui/aura/client/default_activation_client.h b/ui/aura/client/default_activation_client.h
deleted file mode 100644
index 47e19dbc..0000000
--- a/ui/aura/client/default_activation_client.h
+++ /dev/null
@@ -1,69 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef UI_AURA_CLIENT_DEFAULT_ACTIVATION_CLIENT_H_
-#define UI_AURA_CLIENT_DEFAULT_ACTIVATION_CLIENT_H_
-
-#include <vector>
-
-#include "base/compiler_specific.h"
-#include "base/logging.h"
-#include "base/observer_list.h"
-#include "ui/aura/aura_export.h"
-#include "ui/aura/window_observer.h"
-#include "ui/wm/public/activation_client.h"
-
-namespace aura {
-namespace client {
-class ActivationChangeObserver;
-}
-
-namespace client {
-
-// Simple ActivationClient implementation for use by tests and other targets
-// that just need basic behavior (e.g. activate windows whenever requested,
-// restack windows at the top when they're activated, etc.).
-class AURA_EXPORT DefaultActivationClient : public client::ActivationClient,
- public WindowObserver {
- public:
- explicit DefaultActivationClient(Window* root_window);
- virtual ~DefaultActivationClient();
-
- // Overridden from client::ActivationClient:
- virtual void AddObserver(client::ActivationChangeObserver* observer) OVERRIDE;
- virtual void RemoveObserver(
- client::ActivationChangeObserver* observer) OVERRIDE;
- virtual void ActivateWindow(Window* window) OVERRIDE;
- virtual void DeactivateWindow(Window* window) OVERRIDE;
- virtual Window* GetActiveWindow() OVERRIDE;
- virtual Window* GetActivatableWindow(Window* window) OVERRIDE;
- virtual Window* GetToplevelWindow(Window* window) OVERRIDE;
- virtual bool OnWillFocusWindow(Window* window,
- const ui::Event* event) OVERRIDE;
- virtual bool CanActivateWindow(Window* window) const OVERRIDE;
-
- // Overridden from WindowObserver:
- virtual void OnWindowDestroyed(Window* window) OVERRIDE;
-
- private:
- void RemoveActiveWindow(Window* window);
-
- // This class explicitly does NOT store the active window in a window property
- // to make sure that ActivationChangeObserver is not treated as part of the
- // aura API. Assumptions to that end will cause tests that use this client to
- // fail.
- std::vector<Window*> active_windows_;
-
- // The window which was active before the currently active one.
- Window* last_active_;
-
- ObserverList<client::ActivationChangeObserver> observers_;
-
- DISALLOW_COPY_AND_ASSIGN(DefaultActivationClient);
-};
-
-} // namespace client
-} // namespace aura
-
-#endif // UI_AURA_CLIENT_DEFAULT_ACTIVATION_CLIENT_H_
diff --git a/ui/aura/test/aura_test_helper.cc b/ui/aura/test/aura_test_helper.cc
index b300dcf..34183db 100644
--- a/ui/aura/test/aura_test_helper.cc
+++ b/ui/aura/test/aura_test_helper.cc
@@ -7,7 +7,6 @@
#include "base/message_loop/message_loop.h"
#include "base/run_loop.h"
#include "ui/aura/client/aura_constants.h"
-#include "ui/aura/client/default_activation_client.h"
#include "ui/aura/client/default_capture_client.h"
#include "ui/aura/client/focus_client.h"
#include "ui/aura/env.h"
@@ -71,8 +70,6 @@ void AuraTestHelper::SetUp() {
focus_client_.reset(new TestFocusClient);
client::SetFocusClient(root_window(), focus_client_.get());
stacking_client_.reset(new TestWindowTreeClient(root_window()));
- activation_client_.reset(
- new client::DefaultActivationClient(root_window()));
capture_client_.reset(new client::DefaultCaptureClient(root_window()));
test_input_method_.reset(new ui::DummyInputMethod);
root_window()->SetProperty(
@@ -88,7 +85,6 @@ void AuraTestHelper::TearDown() {
teardown_called_ = true;
test_input_method_.reset();
stacking_client_.reset();
- activation_client_.reset();
capture_client_.reset();
focus_client_.reset();
client::SetFocusClient(root_window(), NULL);
diff --git a/ui/aura/test/aura_test_helper.h b/ui/aura/test/aura_test_helper.h
index f79ca76..05d59ab 100644
--- a/ui/aura/test/aura_test_helper.h
+++ b/ui/aura/test/aura_test_helper.h
@@ -22,7 +22,6 @@ class ScopedAnimationDurationScaleMode;
namespace aura {
class TestScreen;
namespace client {
-class DefaultActivationClient;
class DefaultCaptureClient;
class FocusClient;
}
@@ -60,7 +59,6 @@ class AuraTestHelper {
bool owns_host_;
scoped_ptr<WindowTreeHost> host_;
scoped_ptr<TestWindowTreeClient> stacking_client_;
- scoped_ptr<client::DefaultActivationClient> activation_client_;
scoped_ptr<client::DefaultCaptureClient> capture_client_;
scoped_ptr<ui::InputMethod> test_input_method_;
scoped_ptr<client::FocusClient> focus_client_;
diff --git a/ui/keyboard/keyboard.gyp b/ui/keyboard/keyboard.gyp
index 153b38c..c4ca714 100644
--- a/ui/keyboard/keyboard.gyp
+++ b/ui/keyboard/keyboard.gyp
@@ -91,6 +91,7 @@
'../gfx/gfx.gyp:gfx',
'../gfx/gfx.gyp:gfx_geometry',
'../resources/ui_resources.gyp:ui_test_pak',
+ '../wm/wm.gyp:wm',
'keyboard',
],
'sources': [
diff --git a/ui/keyboard/keyboard_controller_unittest.cc b/ui/keyboard/keyboard_controller_unittest.cc
index 4333c84..62b0d73 100644
--- a/ui/keyboard/keyboard_controller_unittest.cc
+++ b/ui/keyboard/keyboard_controller_unittest.cc
@@ -28,6 +28,7 @@
#include "ui/keyboard/keyboard_controller_proxy.h"
#include "ui/keyboard/keyboard_switches.h"
#include "ui/keyboard/keyboard_util.h"
+#include "ui/wm/core/default_activation_client.h"
namespace keyboard {
namespace {
@@ -168,6 +169,7 @@ class KeyboardControllerTest : public testing::Test {
aura_test_helper_.reset(new aura::test::AuraTestHelper(&message_loop_));
aura_test_helper_->SetUp();
+ new wm::DefaultActivationClient(aura_test_helper_->root_window());
ui::SetUpInputMethodFactoryForTesting();
focus_controller_.reset(new TestFocusController(root_window()));
proxy_ = new TestKeyboardControllerProxy();
diff --git a/ui/snapshot/DEPS b/ui/snapshot/DEPS
index 08ad30c..f6768d1 100644
--- a/ui/snapshot/DEPS
+++ b/ui/snapshot/DEPS
@@ -8,4 +8,5 @@ include_rules = [
"+ui/compositor",
"+ui/gfx",
"+ui/gl",
+ "+ui/wm",
]
diff --git a/ui/snapshot/snapshot.gyp b/ui/snapshot/snapshot.gyp
index 1f0c645..e34b0c2 100644
--- a/ui/snapshot/snapshot.gyp
+++ b/ui/snapshot/snapshot.gyp
@@ -68,6 +68,7 @@
'../aura/aura.gyp:aura_test_support',
'../compositor/compositor.gyp:compositor',
'../compositor/compositor.gyp:compositor_test_support',
+ '../wm/wm.gyp:wm',
],
}],
# See http://crbug.com/162998#c4 for why this is needed.
diff --git a/ui/snapshot/snapshot_aura_unittest.cc b/ui/snapshot/snapshot_aura_unittest.cc
index b000ad1..eee20b3 100644
--- a/ui/snapshot/snapshot_aura_unittest.cc
+++ b/ui/snapshot/snapshot_aura_unittest.cc
@@ -23,6 +23,7 @@
#include "ui/gfx/size_conversions.h"
#include "ui/gfx/transform.h"
#include "ui/gl/gl_implementation.h"
+#include "ui/wm/core/default_activation_client.h"
namespace ui {
namespace {
@@ -93,6 +94,7 @@ class SnapshotAuraTest : public testing::Test {
helper_.reset(
new aura::test::AuraTestHelper(base::MessageLoopForUI::current()));
helper_->SetUp();
+ new ::wm::DefaultActivationClient(helper_->root_window());
}
virtual void TearDown() OVERRIDE {
diff --git a/ui/views/test/views_test_base.cc b/ui/views/test/views_test_base.cc
index 4bf036c..1a7f3aa 100644
--- a/ui/views/test/views_test_base.cc
+++ b/ui/views/test/views_test_base.cc
@@ -12,6 +12,7 @@
#include "ui/aura/window_event_dispatcher.h"
#include "ui/compositor/test/context_factories_for_test.h"
#include "ui/wm/core/capture_controller.h"
+#include "ui/wm/core/default_activation_client.h"
#include "ui/wm/core/wm_state.h"
namespace views {
@@ -39,6 +40,7 @@ void ViewsTestBase::SetUp() {
aura_test_helper_.reset(new aura::test::AuraTestHelper(&message_loop_));
aura_test_helper_->SetUp();
+ new wm::DefaultActivationClient(aura_test_helper_->root_window());
wm_state_.reset(new ::wm::WMState);
ui::InitializeInputMethodForTesting();
}
diff --git a/ui/wm/core/compound_event_filter_unittest.cc b/ui/wm/core/compound_event_filter_unittest.cc
index aea992c..afd3bcb 100644
--- a/ui/wm/core/compound_event_filter_unittest.cc
+++ b/ui/wm/core/compound_event_filter_unittest.cc
@@ -14,6 +14,7 @@
#include "ui/aura/window_event_dispatcher.h"
#include "ui/events/event.h"
#include "ui/events/event_utils.h"
+#include "ui/wm/core/default_activation_client.h"
#include "ui/wm/public/activation_client.h"
namespace {
@@ -112,6 +113,7 @@ TEST_F(CompoundEventFilterTest, CursorVisibilityChange) {
#if defined(OS_CHROMEOS) || defined(OS_WIN)
// Touch visually hides the cursor on ChromeOS and Windows.
TEST_F(CompoundEventFilterTest, TouchHidesCursor) {
+ new wm::DefaultActivationClient(root_window());
scoped_ptr<CompoundEventFilter> compound_filter(new CompoundEventFilter);
aura::Env::GetInstance()->AddPreTargetHandler(compound_filter.get());
aura::test::TestWindowDelegate delegate;
diff --git a/ui/aura/client/default_activation_client.cc b/ui/wm/core/default_activation_client.cc
index b11d7bf..222c9ac 100644
--- a/ui/aura/client/default_activation_client.cc
+++ b/ui/wm/core/default_activation_client.cc
@@ -2,44 +2,64 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "ui/aura/client/default_activation_client.h"
+#include "ui/wm/core/default_activation_client.h"
#include "ui/aura/window.h"
#include "ui/wm/public/activation_change_observer.h"
#include "ui/wm/public/activation_delegate.h"
-namespace aura {
-namespace client {
+namespace wm {
+
+// Takes care of observing root window destruction & destroying the client.
+class DefaultActivationClient::Deleter : public aura::WindowObserver {
+ public:
+ Deleter(DefaultActivationClient* client, aura::Window* root_window)
+ : client_(client),
+ root_window_(root_window) {
+ root_window_->AddObserver(this);
+ }
+
+ private:
+ virtual ~Deleter() {}
+
+ // Overridden from WindowObserver:
+ virtual void OnWindowDestroyed(aura::Window* window) OVERRIDE {
+ DCHECK_EQ(window, root_window_);
+ root_window_->RemoveObserver(this);
+ delete client_;
+ delete this;
+ }
+
+ DefaultActivationClient* client_;
+ aura::Window* root_window_;
+
+ DISALLOW_COPY_AND_ASSIGN(Deleter);
+};
////////////////////////////////////////////////////////////////////////////////
// DefaultActivationClient, public:
-DefaultActivationClient::DefaultActivationClient(Window* root_window)
+DefaultActivationClient::DefaultActivationClient(aura::Window* root_window)
: last_active_(NULL) {
- client::SetActivationClient(root_window, this);
-}
-
-DefaultActivationClient::~DefaultActivationClient() {
- for (unsigned int i = 0; i < active_windows_.size(); ++i) {
- active_windows_[i]->RemoveObserver(this);
- }
+ aura::client::SetActivationClient(root_window, this);
+ new Deleter(this, root_window);
}
////////////////////////////////////////////////////////////////////////////////
// DefaultActivationClient, client::ActivationClient implementation:
void DefaultActivationClient::AddObserver(
- client::ActivationChangeObserver* observer) {
+ aura::client::ActivationChangeObserver* observer) {
observers_.AddObserver(observer);
}
void DefaultActivationClient::RemoveObserver(
- client::ActivationChangeObserver* observer) {
+ aura::client::ActivationChangeObserver* observer) {
observers_.RemoveObserver(observer);
}
-void DefaultActivationClient::ActivateWindow(Window* window) {
- Window* last_active = GetActiveWindow();
+void DefaultActivationClient::ActivateWindow(aura::Window* window) {
+ aura::Window* last_active = GetActiveWindow();
if (last_active == window)
return;
@@ -49,7 +69,7 @@ void DefaultActivationClient::ActivateWindow(Window* window) {
window->parent()->StackChildAtTop(window);
window->AddObserver(this);
- FOR_EACH_OBSERVER(client::ActivationChangeObserver,
+ FOR_EACH_OBSERVER(aura::client::ActivationChangeObserver,
observers_,
OnWindowActivated(window, last_active));
@@ -62,7 +82,7 @@ void DefaultActivationClient::ActivateWindow(Window* window) {
observer->OnWindowActivated(window, last_active);
}
-void DefaultActivationClient::DeactivateWindow(Window* window) {
+void DefaultActivationClient::DeactivateWindow(aura::Window* window) {
aura::client::ActivationChangeObserver* observer =
aura::client::GetActivationChangeObserver(window);
if (observer)
@@ -71,39 +91,40 @@ void DefaultActivationClient::DeactivateWindow(Window* window) {
ActivateWindow(last_active_);
}
-Window* DefaultActivationClient::GetActiveWindow() {
+aura::Window* DefaultActivationClient::GetActiveWindow() {
if (active_windows_.empty())
return NULL;
return active_windows_.back();
}
-Window* DefaultActivationClient::GetActivatableWindow(Window* window) {
+aura::Window* DefaultActivationClient::GetActivatableWindow(
+ aura::Window* window) {
return NULL;
}
-Window* DefaultActivationClient::GetToplevelWindow(Window* window) {
+aura::Window* DefaultActivationClient::GetToplevelWindow(aura::Window* window) {
return NULL;
}
-bool DefaultActivationClient::OnWillFocusWindow(Window* window,
+bool DefaultActivationClient::OnWillFocusWindow(aura::Window* window,
const ui::Event* event) {
return true;
}
-bool DefaultActivationClient::CanActivateWindow(Window* window) const {
+bool DefaultActivationClient::CanActivateWindow(aura::Window* window) const {
return true;
}
////////////////////////////////////////////////////////////////////////////////
-// DefaultActivationClient, WindowObserver implementation:
+// DefaultActivationClient, aura::WindowObserver implementation:
-void DefaultActivationClient::OnWindowDestroyed(Window* window) {
+void DefaultActivationClient::OnWindowDestroyed(aura::Window* window) {
if (window == last_active_)
last_active_ = NULL;
if (window == GetActiveWindow()) {
active_windows_.pop_back();
- Window* next_active = GetActiveWindow();
+ aura::Window* next_active = GetActiveWindow();
if (next_active && aura::client::GetActivationChangeObserver(next_active)) {
aura::client::GetActivationChangeObserver(next_active)->OnWindowActivated(
next_active, NULL);
@@ -114,7 +135,16 @@ void DefaultActivationClient::OnWindowDestroyed(Window* window) {
RemoveActiveWindow(window);
}
-void DefaultActivationClient::RemoveActiveWindow(Window* window) {
+////////////////////////////////////////////////////////////////////////////////
+// DefaultActivationClient, private:
+
+DefaultActivationClient::~DefaultActivationClient() {
+ for (unsigned int i = 0; i < active_windows_.size(); ++i) {
+ active_windows_[i]->RemoveObserver(this);
+ }
+}
+
+void DefaultActivationClient::RemoveActiveWindow(aura::Window* window) {
for (unsigned int i = 0; i < active_windows_.size(); ++i) {
if (active_windows_[i] == window) {
active_windows_.erase(active_windows_.begin() + i);
@@ -124,5 +154,4 @@ void DefaultActivationClient::RemoveActiveWindow(Window* window) {
}
}
-} // namespace client
-} // namespace aura
+} // namespace wm
diff --git a/ui/wm/core/default_activation_client.h b/ui/wm/core/default_activation_client.h
new file mode 100644
index 0000000..3b6bffc
--- /dev/null
+++ b/ui/wm/core/default_activation_client.h
@@ -0,0 +1,73 @@
+// Copyright 2013 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef UI_WM_CORE_DEFAULT_ACTIVATION_CLIENT_H_
+#define UI_WM_CORE_DEFAULT_ACTIVATION_CLIENT_H_
+
+#include <vector>
+
+#include "base/compiler_specific.h"
+#include "base/logging.h"
+#include "base/observer_list.h"
+#include "ui/aura/window_observer.h"
+#include "ui/wm/public/activation_client.h"
+#include "ui/wm/wm_export.h"
+
+namespace aura {
+namespace client {
+class ActivationChangeObserver;
+}
+}
+
+namespace wm {
+
+// Simple ActivationClient implementation for use by tests and other targets
+// that just need basic behavior (e.g. activate windows whenever requested,
+// restack windows at the top when they're activated, etc.). This object deletes
+// itself when the root window it is associated with is destroyed.
+class WM_EXPORT DefaultActivationClient : public aura::client::ActivationClient,
+ public aura::WindowObserver {
+ public:
+ explicit DefaultActivationClient(aura::Window* root_window);
+
+ // Overridden from aura::client::ActivationClient:
+ virtual void AddObserver(
+ aura::client::ActivationChangeObserver* observer) OVERRIDE;
+ virtual void RemoveObserver(
+ aura::client::ActivationChangeObserver* observer) OVERRIDE;
+ virtual void ActivateWindow(aura::Window* window) OVERRIDE;
+ virtual void DeactivateWindow(aura::Window* window) OVERRIDE;
+ virtual aura::Window* GetActiveWindow() OVERRIDE;
+ virtual aura::Window* GetActivatableWindow(aura::Window* window) OVERRIDE;
+ virtual aura::Window* GetToplevelWindow(aura::Window* window) OVERRIDE;
+ virtual bool OnWillFocusWindow(aura::Window* window,
+ const ui::Event* event) OVERRIDE;
+ virtual bool CanActivateWindow(aura::Window* window) const OVERRIDE;
+
+ // Overridden from WindowObserver:
+ virtual void OnWindowDestroyed(aura::Window* window) OVERRIDE;
+
+ private:
+ class Deleter;
+
+ virtual ~DefaultActivationClient();
+ void RemoveActiveWindow(aura::Window* window);
+
+ // This class explicitly does NOT store the active window in a window property
+ // to make sure that ActivationChangeObserver is not treated as part of the
+ // aura API. Assumptions to that end will cause tests that use this client to
+ // fail.
+ std::vector<aura::Window*> active_windows_;
+
+ // The window which was active before the currently active one.
+ aura::Window* last_active_;
+
+ ObserverList<aura::client::ActivationChangeObserver> observers_;
+
+ DISALLOW_COPY_AND_ASSIGN(DefaultActivationClient);
+};
+
+} // namespace wm
+
+#endif // UI_WM_CORE_DEFAULT_ACTIVATION_CLIENT_H_
diff --git a/ui/wm/core/input_method_event_filter_unittest.cc b/ui/wm/core/input_method_event_filter_unittest.cc
index 6fc1b39..c5daa67 100644
--- a/ui/wm/core/input_method_event_filter_unittest.cc
+++ b/ui/wm/core/input_method_event_filter_unittest.cc
@@ -12,6 +12,7 @@
#include "ui/aura/window_event_dispatcher.h"
#include "ui/events/test/test_event_handler.h"
#include "ui/wm/core/compound_event_filter.h"
+#include "ui/wm/core/default_activation_client.h"
#include "ui/wm/public/activation_client.h"
#if !defined(OS_WIN) && !defined(USE_X11)
@@ -46,6 +47,8 @@ TEST_F(InputMethodEventFilterTest, TestInputMethodProperty) {
// Tests if InputMethodEventFilter dispatches a ui::ET_TRANSLATED_KEY_* event to
// the root window.
TEST_F(InputMethodEventFilterTest, TestInputMethodKeyEventPropagation) {
+ new wm::DefaultActivationClient(root_window());
+
CompoundEventFilter root_filter;
root_window()->AddPreTargetHandler(&root_filter);
diff --git a/ui/wm/core/shadow_controller_unittest.cc b/ui/wm/core/shadow_controller_unittest.cc
index 60d571e..d82d015 100644
--- a/ui/wm/core/shadow_controller_unittest.cc
+++ b/ui/wm/core/shadow_controller_unittest.cc
@@ -13,6 +13,7 @@
#include "ui/aura/window.h"
#include "ui/aura/window_event_dispatcher.h"
#include "ui/compositor/layer.h"
+#include "ui/wm/core/default_activation_client.h"
#include "ui/wm/core/shadow.h"
#include "ui/wm/core/shadow_types.h"
#include "ui/wm/core/window_util.h"
@@ -29,6 +30,7 @@ class ShadowControllerTest : public aura::test::AuraTestBase {
virtual void SetUp() OVERRIDE {
wm_state_.reset(new wm::WMState);
AuraTestBase::SetUp();
+ new wm::DefaultActivationClient(root_window());
aura::client::ActivationClient* activation_client =
aura::client::GetActivationClient(root_window());
shadow_controller_.reset(new ShadowController(activation_client));
diff --git a/ui/wm/test/wm_test_helper.cc b/ui/wm/test/wm_test_helper.cc
index 1982be5..8a3eba1 100644
--- a/ui/wm/test/wm_test_helper.cc
+++ b/ui/wm/test/wm_test_helper.cc
@@ -4,12 +4,12 @@
#include "ui/wm/test/wm_test_helper.h"
-#include "ui/aura/client/default_activation_client.h"
#include "ui/aura/client/default_capture_client.h"
#include "ui/aura/env.h"
#include "ui/aura/test/test_focus_client.h"
#include "ui/aura/window.h"
#include "ui/wm/core/compound_event_filter.h"
+#include "ui/wm/core/default_activation_client.h"
#include "ui/wm/core/input_method_event_filter.h"
namespace wm {
@@ -31,8 +31,7 @@ WMTestHelper::WMTestHelper(const gfx::Size& default_window_size) {
input_method_filter_->SetInputMethodPropertyInRootWindow(host_->window());
root_window_event_filter_->AddHandler(input_method_filter_.get());
- activation_client_.reset(
- new aura::client::DefaultActivationClient(host_->window()));
+ new wm::DefaultActivationClient(host_->window());
capture_client_.reset(
new aura::client::DefaultCaptureClient(host_->window()));
diff --git a/ui/wm/test/wm_test_helper.h b/ui/wm/test/wm_test_helper.h
index 1a3dd09..52707a4 100644
--- a/ui/wm/test/wm_test_helper.h
+++ b/ui/wm/test/wm_test_helper.h
@@ -14,7 +14,6 @@ namespace aura {
class Window;
class WindowTreeHost;
namespace client {
-class DefaultActivationClient;
class DefaultCaptureClient;
class FocusClient;
}
@@ -51,7 +50,6 @@ class WMTestHelper : public aura::client::WindowTreeClient {
scoped_ptr<wm::CompoundEventFilter> root_window_event_filter_;
scoped_ptr<aura::client::DefaultCaptureClient> capture_client_;
scoped_ptr<wm::InputMethodEventFilter> input_method_filter_;
- scoped_ptr<aura::client::DefaultActivationClient> activation_client_;
scoped_ptr<aura::client::FocusClient> focus_client_;
DISALLOW_COPY_AND_ASSIGN(WMTestHelper);
diff --git a/ui/wm/wm.gyp b/ui/wm/wm.gyp
index 17ceaa36..537f67a 100644
--- a/ui/wm/wm.gyp
+++ b/ui/wm/wm.gyp
@@ -34,6 +34,8 @@
'core/compound_event_filter.h',
'core/cursor_manager.cc',
'core/cursor_manager.h',
+ 'core/default_activation_client.cc',
+ 'core/default_activation_client.h',
'core/easy_resize_window_targeter.cc',
'core/easy_resize_window_targeter.h',
'core/focus_controller.cc',