OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef ATHENA_WM_WINDOW_MANAGER_IMPL_H_ | 5 #ifndef ATHENA_WM_WINDOW_MANAGER_IMPL_H_ |
6 #define ATHENA_WM_WINDOW_MANAGER_IMPL_H_ | 6 #define ATHENA_WM_WINDOW_MANAGER_IMPL_H_ |
7 | 7 |
8 #include "athena/athena_export.h" | 8 #include "athena/athena_export.h" |
9 #include "athena/input/public/accelerator_manager.h" | 9 #include "athena/input/public/accelerator_manager.h" |
10 #include "athena/wm/public/window_manager.h" | 10 #include "athena/wm/public/window_manager.h" |
(...skipping 24 matching lines...) Expand all Loading... |
35 public aura::WindowObserver, | 35 public aura::WindowObserver, |
36 public AcceleratorHandler, | 36 public AcceleratorHandler, |
37 public TitleDragControllerDelegate { | 37 public TitleDragControllerDelegate { |
38 public: | 38 public: |
39 WindowManagerImpl(); | 39 WindowManagerImpl(); |
40 virtual ~WindowManagerImpl(); | 40 virtual ~WindowManagerImpl(); |
41 | 41 |
42 void ToggleSplitView(); | 42 void ToggleSplitView(); |
43 | 43 |
44 // WindowManager: | 44 // WindowManager: |
45 virtual void ToggleOverview() override; | 45 virtual void EnterOverview() override; |
| 46 // Exits overview and activates the previously active activity |
| 47 virtual void ExitOverview() override; |
46 virtual bool IsOverviewModeActive() override; | 48 virtual bool IsOverviewModeActive() override; |
47 | 49 |
48 private: | 50 private: |
49 friend class test::WindowManagerImplTestApi; | 51 friend class test::WindowManagerImplTestApi; |
50 friend class AthenaContainerLayoutManager; | 52 friend class AthenaContainerLayoutManager; |
51 | 53 |
52 enum Command { | 54 enum Command { |
53 CMD_TOGGLE_OVERVIEW, | 55 CMD_TOGGLE_OVERVIEW, |
54 CMD_TOGGLE_SPLIT_VIEW, | 56 CMD_TOGGLE_SPLIT_VIEW, |
55 }; | 57 }; |
56 | 58 |
57 // Sets whether overview mode is active. | 59 // Exits overview mode without changing activation. The caller should |
58 void SetInOverview(bool active); | 60 // ensure that a window is active after exiting overview mode. |
| 61 void ExitOverviewNoActivate(); |
59 | 62 |
60 void InstallAccelerators(); | 63 void InstallAccelerators(); |
61 | 64 |
62 // WindowManager: | 65 // WindowManager: |
63 virtual void AddObserver(WindowManagerObserver* observer) override; | 66 virtual void AddObserver(WindowManagerObserver* observer) override; |
64 virtual void RemoveObserver(WindowManagerObserver* observer) override; | 67 virtual void RemoveObserver(WindowManagerObserver* observer) override; |
65 virtual void ToggleSplitViewForTest() override; | 68 virtual void ToggleSplitViewForTest() override; |
66 virtual WindowListProvider* GetWindowListProvider() override; | 69 virtual WindowListProvider* GetWindowListProvider() override; |
67 | 70 |
68 // WindowOverviewModeDelegate: | 71 // WindowOverviewModeDelegate: |
(...skipping 25 matching lines...) Expand all Loading... |
94 scoped_ptr<TitleDragController> title_drag_controller_; | 97 scoped_ptr<TitleDragController> title_drag_controller_; |
95 scoped_ptr<wm::ShadowController> shadow_controller_; | 98 scoped_ptr<wm::ShadowController> shadow_controller_; |
96 ObserverList<WindowManagerObserver> observers_; | 99 ObserverList<WindowManagerObserver> observers_; |
97 | 100 |
98 DISALLOW_COPY_AND_ASSIGN(WindowManagerImpl); | 101 DISALLOW_COPY_AND_ASSIGN(WindowManagerImpl); |
99 }; | 102 }; |
100 | 103 |
101 } // namespace athena | 104 } // namespace athena |
102 | 105 |
103 #endif // ATHENA_WM_WINDOW_MANAGER_IMPL_H_ | 106 #endif // ATHENA_WM_WINDOW_MANAGER_IMPL_H_ |
OLD | NEW |