| Index: components/mus/ws/window_tree_host_impl.h
|
| diff --git a/components/mus/ws/window_tree_host_impl.h b/components/mus/ws/window_tree_host_impl.h
|
| index 0ecd264fa4bc700d4108f1684b5dd82fbb55e84b..4204210a15955aa84aa93736306cb982625c4048 100644
|
| --- a/components/mus/ws/window_tree_host_impl.h
|
| +++ b/components/mus/ws/window_tree_host_impl.h
|
| @@ -12,6 +12,7 @@
|
| #include "components/mus/ws/display_manager.h"
|
| #include "components/mus/ws/event_dispatcher.h"
|
| #include "components/mus/ws/event_dispatcher_delegate.h"
|
| +#include "components/mus/ws/focus_controller_delegate.h"
|
| #include "components/mus/ws/focus_controller_observer.h"
|
| #include "components/mus/ws/server_window.h"
|
| #include "components/mus/ws/server_window_observer.h"
|
| @@ -32,6 +33,7 @@ class WindowTreeImpl;
|
| class WindowTreeHostImpl : public DisplayManagerDelegate,
|
| public mojom::WindowTreeHost,
|
| public FocusControllerObserver,
|
| + public FocusControllerDelegate,
|
| public EventDispatcherDelegate,
|
| public ServerWindowObserver {
|
| public:
|
| @@ -94,6 +96,8 @@ class WindowTreeHostImpl : public DisplayManagerDelegate,
|
| void AddAccelerator(uint32_t id,
|
| mojom::EventMatcherPtr event_matcher) override;
|
| void RemoveAccelerator(uint32_t id) override;
|
| + void AddActivationParent(uint32_t window_id) override;
|
| + void RemoveActivationParent(uint32_t window_id) override;
|
|
|
| private:
|
| void OnClientClosed();
|
| @@ -108,7 +112,12 @@ class WindowTreeHostImpl : public DisplayManagerDelegate,
|
| void OnTopLevelSurfaceChanged(cc::SurfaceId surface_id) override;
|
| void OnCompositorFrameDrawn() override;
|
|
|
| + // FocusControllerDelegate:
|
| + bool CanHaveActiveChildren(ServerWindow* window) const override;
|
| +
|
| // FocusControllerObserver:
|
| + void OnActivationChanged(ServerWindow* old_active_window,
|
| + ServerWindow* new_active_window) override;
|
| void OnFocusChanged(FocusControllerChangeSource change_source,
|
| ServerWindow* old_focused_window,
|
| ServerWindow* new_focused_window) override;
|
| @@ -133,6 +142,8 @@ class WindowTreeHostImpl : public DisplayManagerDelegate,
|
| scoped_ptr<FocusController> focus_controller_;
|
| mojom::WindowManagerPtr window_manager_;
|
|
|
| + std::set<WindowId> activation_parents_;
|
| +
|
| // Set of windows with surfaces that need to be destroyed once the frame
|
| // draws.
|
| std::set<ServerWindow*> windows_needing_frame_destruction_;
|
|
|