Index: ui/views/controls/menu/menu_message_loop_aura.cc |
diff --git a/ui/views/controls/menu/menu_message_loop_aura.cc b/ui/views/controls/menu/menu_message_loop_aura.cc |
deleted file mode 100644 |
index 0588baeb0e735288aa97348e32a6788d94db05af..0000000000000000000000000000000000000000 |
--- a/ui/views/controls/menu/menu_message_loop_aura.cc |
+++ /dev/null |
@@ -1,87 +0,0 @@ |
-// Copyright 2014 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. |
- |
-#include "ui/views/controls/menu/menu_message_loop_aura.h" |
- |
-#include "base/macros.h" |
-#include "base/run_loop.h" |
-#include "build/build_config.h" |
-#include "ui/aura/client/drag_drop_client.h" |
-#include "ui/aura/client/screen_position_client.h" |
-#include "ui/aura/window.h" |
-#include "ui/aura/window_event_dispatcher.h" |
-#include "ui/aura/window_tree_host.h" |
-#include "ui/events/event.h" |
-#include "ui/events/platform/platform_event_source.h" |
-#include "ui/events/platform/scoped_event_dispatcher.h" |
-#include "ui/views/controls/menu/menu_controller.h" |
-#include "ui/views/widget/widget.h" |
-#include "ui/wm/public/activation_change_observer.h" |
-#include "ui/wm/public/activation_client.h" |
- |
- |
-using aura::client::ScreenPositionClient; |
- |
-namespace views { |
- |
-// static |
-MenuMessageLoop* MenuMessageLoop::Create() { |
- return new MenuMessageLoopAura; |
-} |
- |
-// static |
-void MenuMessageLoop::RepostEventToWindow(const ui::LocatedEvent* event, |
- gfx::NativeWindow window, |
- const gfx::Point& screen_loc) { |
- aura::Window* root = window->GetRootWindow(); |
- aura::client::ScreenPositionClient* spc = |
- aura::client::GetScreenPositionClient(root); |
- if (!spc) |
- return; |
- |
- gfx::Point root_loc(screen_loc); |
- spc->ConvertPointFromScreen(root, &root_loc); |
- |
- std::unique_ptr<ui::Event> clone = ui::Event::Clone(*event); |
- std::unique_ptr<ui::LocatedEvent> located_event( |
- static_cast<ui::LocatedEvent*>(clone.release())); |
- located_event->set_location(root_loc); |
- located_event->set_root_location(root_loc); |
- |
- root->GetHost()->dispatcher()->RepostEvent(located_event.get()); |
-} |
- |
-MenuMessageLoopAura::MenuMessageLoopAura() {} |
- |
-MenuMessageLoopAura::~MenuMessageLoopAura() {} |
- |
-void MenuMessageLoopAura::Run() { |
- // It is possible for the same MenuMessageLoopAura to start a nested |
- // message-loop while it is already running a nested loop. So make sure the |
- // quit-closure gets reset to the outer loop's quit-closure once the innermost |
- // loop terminates. |
- base::AutoReset<base::Closure> reset_quit_closure(&message_loop_quit_, |
- base::Closure()); |
- |
- base::MessageLoop* loop = base::MessageLoop::current(); |
- base::MessageLoop::ScopedNestableTaskAllower allow(loop); |
- base::RunLoop run_loop; |
- message_loop_quit_ = run_loop.QuitClosure(); |
- |
- run_loop.Run(); |
-} |
- |
-void MenuMessageLoopAura::QuitNow() { |
- CHECK(!message_loop_quit_.is_null()); |
- message_loop_quit_.Run(); |
- |
-#if !defined(OS_WIN) |
- // Ask PlatformEventSource to stop dispatching events in this message loop |
- // iteration. We want our menu's loop to return before the next event. |
- if (ui::PlatformEventSource::GetInstance()) |
- ui::PlatformEventSource::GetInstance()->StopCurrentEventStream(); |
-#endif |
-} |
- |
-} // namespace views |