Index: components/mus/ws/modal_window_controller.h |
diff --git a/components/mus/ws/modal_window_controller.h b/components/mus/ws/modal_window_controller.h |
deleted file mode 100644 |
index 112fce771e64c5d364add2d134e62140a4d9c702..0000000000000000000000000000000000000000 |
--- a/components/mus/ws/modal_window_controller.h |
+++ /dev/null |
@@ -1,87 +0,0 @@ |
-// Copyright 2016 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 COMPONENTS_MUS_WS_MODAL_WINDOW_CONTROLLER_H_ |
-#define COMPONENTS_MUS_WS_MODAL_WINDOW_CONTROLLER_H_ |
- |
-#include <list> |
-#include <map> |
- |
-#include "components/mus/ws/server_window_drawn_tracker_observer.h" |
-#include "components/mus/ws/server_window_observer.h" |
- |
-namespace mus { |
-namespace ws { |
- |
-class EventDispatcher; |
-class ServerWindow; |
-class ServerWindowDrawnTracker; |
- |
-namespace test { |
-class ModalWindowControllerTestApi; |
-} |
- |
-// Used to keeps track of system modal windows and check whether windows are |
-// blocked by modal windows or not to do appropriate retargetting of events. |
-class ModalWindowController : public ServerWindowObserver, |
- public ServerWindowDrawnTrackerObserver { |
- public: |
- explicit ModalWindowController(EventDispatcher* event_dispatcher); |
- ~ModalWindowController() override; |
- |
- // Adds a system modal window. The window remains modal to system until it is |
- // destroyed. There can exist multiple system modal windows, in which case the |
- // one that is visible and added most recently or shown most recently would be |
- // the active one. |
- void AddSystemModalWindow(ServerWindow* window); |
- |
- // Checks whether |modal_window| is a visible modal window that blocks |
- // |window|. |
- bool IsWindowBlockedBy(const ServerWindow* window, |
- const ServerWindow* modal_window) const; |
- |
- // Checks whether |window| is blocked by any visible modal window. |
- bool IsWindowBlocked(const ServerWindow* window) const; |
- |
- // Returns the window that events targeted to |window| should be retargeted |
- // to; according to modal windows. If any modal window is blocking |window| |
- // (either system modal or window modal), returns the topmost one; otherwise, |
- // returns |window| itself. |
- const ServerWindow* GetTargetForWindow(const ServerWindow* window) const; |
- ServerWindow* GetTargetForWindow(ServerWindow* window) const { |
- return const_cast<ServerWindow*>( |
- GetTargetForWindow(static_cast<const ServerWindow*>(window))); |
- } |
- |
- private: |
- friend class test::ModalWindowControllerTestApi; |
- |
- // Returns the system modal window that is visible and added/shown most |
- // recently, if any. |
- ServerWindow* GetActiveSystemModalWindow() const; |
- |
- // ServerWindowObserver: |
- void OnWindowDestroyed(ServerWindow* window) override; |
- |
- // ServerWindowDrawnTrackerObserver: |
- void OnDrawnStateChanged(ServerWindow* ancestor, |
- ServerWindow* window, |
- bool is_drawn) override; |
- |
- EventDispatcher* event_dispatcher_; |
- |
- // List of system modal windows in order they are added/shown. |
- std::list<ServerWindow*> system_modal_windows_; |
- |
- // Drawn trackers for system modal windows. |
- std::map<ServerWindow*, std::unique_ptr<ServerWindowDrawnTracker>> |
- window_drawn_trackers_; |
- |
- DISALLOW_COPY_AND_ASSIGN(ModalWindowController); |
-}; |
- |
-} // namespace ws |
-} // namespace mus |
- |
-#endif // COMPONENTS_MUS_WS_MODAL_WINDOW_CONTROLLER_H_ |