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

Unified Diff: components/exo/wm_helper_mus.cc

Issue 2280763002: exo: Use aura::Env()->Add{Pre,Post}TargetHandler to simplfy WmHelperMus. (Closed)
Patch Set: Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « components/exo/wm_helper_mus.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/exo/wm_helper_mus.cc
diff --git a/components/exo/wm_helper_mus.cc b/components/exo/wm_helper_mus.cc
index 068baf569c4c8b1dd42ec7f96687bc041b0d9b51..33e6b0ee17130b4351db8cd5be2524195206a7c0 100644
--- a/components/exo/wm_helper_mus.cc
+++ b/components/exo/wm_helper_mus.cc
@@ -29,45 +29,16 @@ aura::Window* GetToplevelAuraWindow(ui::Window* window) {
} // namespace
////////////////////////////////////////////////////////////////////////////////
-// WMHelperMus::EventForwarder:
-
-class WMHelperMus::EventForwarder : public ui::EventHandler {
- public:
- explicit EventForwarder(ui::EventHandlerList* event_handlers)
- : event_handlers_(event_handlers) {}
- ~EventForwarder() override {}
-
- // Overriden from ui::EventHandler:
- void OnEvent(ui::Event* event) override;
-
- private:
- const ui::EventHandlerList* event_handlers_;
-
- DISALLOW_COPY_AND_ASSIGN(EventForwarder);
-};
-
-void WMHelperMus::EventForwarder::OnEvent(ui::Event* event) {
- for (ui::EventHandler* handler : *event_handlers_) {
- if (event->stopped_propagation())
- break;
- handler->OnEvent(event);
- }
-}
-////////////////////////////////////////////////////////////////////////////////
// WMHelperMus, public:
WMHelperMus::WMHelperMus()
- : pre_target_event_forwarder_(new EventForwarder(&pre_target_list_)),
- post_target_event_forwarder_(new EventForwarder(&post_target_list_)),
- active_window_(WMHelperMus::GetActiveWindow()),
+ : active_window_(WMHelperMus::GetActiveWindow()),
focused_window_(WMHelperMus::GetFocusedWindow()) {
views::WindowManagerConnection::Get()->client()->AddObserver(this);
- aura::Env::GetInstance()->AddObserver(this);
}
WMHelperMus::~WMHelperMus() {
views::WindowManagerConnection::Get()->client()->RemoveObserver(this);
- aura::Env::GetInstance()->RemoveObserver(this);
}
////////////////////////////////////////////////////////////////////////////////
@@ -104,29 +75,23 @@ ui::CursorSetType WMHelperMus::GetCursorSet() const {
}
void WMHelperMus::AddPreTargetHandler(ui::EventHandler* handler) {
- pre_target_list_.push_back(handler);
+ aura::Env::GetInstance()->AddPreTargetHandler(handler);
reveman 2016/08/25 20:14:45 could we use the same for Ash impl and just remove
}
void WMHelperMus::PrependPreTargetHandler(ui::EventHandler* handler) {
- pre_target_list_.insert(pre_target_list_.begin(), handler);
+ aura::Env::GetInstance()->PrependPreTargetHandler(handler);
}
void WMHelperMus::RemovePreTargetHandler(ui::EventHandler* handler) {
- auto it =
- std::find(pre_target_list_.begin(), pre_target_list_.end(), handler);
- if (it != pre_target_list_.end())
- pre_target_list_.erase(it);
+ aura::Env::GetInstance()->RemovePreTargetHandler(handler);
}
void WMHelperMus::AddPostTargetHandler(ui::EventHandler* handler) {
- post_target_list_.push_back(handler);
+ aura::Env::GetInstance()->AddPostTargetHandler(handler);
}
void WMHelperMus::RemovePostTargetHandler(ui::EventHandler* handler) {
- auto it =
- std::find(post_target_list_.begin(), post_target_list_.end(), handler);
- if (it != post_target_list_.end())
- post_target_list_.erase(it);
+ aura::Env::GetInstance()->RemovePostTargetHandler(handler);
}
bool WMHelperMus::IsMaximizeModeWindowManagerEnabled() const {
@@ -134,12 +99,6 @@ bool WMHelperMus::IsMaximizeModeWindowManagerEnabled() const {
return false;
}
-void WMHelperMus::OnHostInitialized(aura::WindowTreeHost* host) {
- aura::Window* root_window = host->window();
- root_window->AddPreTargetHandler(pre_target_event_forwarder_.get());
- root_window->AddPostTargetHandler(post_target_event_forwarder_.get());
-}
-
void WMHelperMus::OnWindowTreeFocusChanged(ui::Window* gained_focus,
ui::Window* lost_focus) {
aura::Window* gained_active =
« no previous file with comments | « components/exo/wm_helper_mus.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698