OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 ASH_COMMON_SHELF_WM_SHELF_H_ | 5 #ifndef ASH_COMMON_SHELF_WM_SHELF_H_ |
6 #define ASH_COMMON_SHELF_WM_SHELF_H_ | 6 #define ASH_COMMON_SHELF_WM_SHELF_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 | 9 |
10 #include "ash/ash_export.h" | 10 #include "ash/ash_export.h" |
11 #include "ash/common/shelf/shelf_layout_manager_observer.h" | 11 #include "ash/common/shelf/shelf_layout_manager_observer.h" |
12 #include "ash/public/cpp/shelf_types.h" | 12 #include "ash/public/cpp/shelf_types.h" |
13 #include "base/observer_list.h" | 13 #include "base/observer_list.h" |
14 | 14 |
15 namespace gfx { | 15 namespace gfx { |
16 class Rect; | 16 class Rect; |
17 } | 17 } |
18 | 18 |
19 namespace ui { | 19 namespace ui { |
20 class GestureEvent; | 20 class GestureEvent; |
21 } | 21 } |
22 | 22 |
23 namespace ash { | 23 namespace ash { |
24 | 24 |
| 25 enum class AnimationChangeType; |
25 class ShelfBezelEventHandler; | 26 class ShelfBezelEventHandler; |
26 class ShelfLayoutManager; | 27 class ShelfLayoutManager; |
27 class ShelfLayoutManagerTest; | 28 class ShelfLayoutManagerTest; |
28 class ShelfLockingManager; | 29 class ShelfLockingManager; |
29 class ShelfView; | 30 class ShelfView; |
30 class ShelfWidget; | 31 class ShelfWidget; |
31 class StatusAreaWidget; | 32 class StatusAreaWidget; |
32 class WmShelfObserver; | 33 class WmShelfObserver; |
33 class WmWindow; | 34 class WmWindow; |
34 | 35 |
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
139 void SetVirtualKeyboardBoundsForTesting(const gfx::Rect& bounds); | 140 void SetVirtualKeyboardBoundsForTesting(const gfx::Rect& bounds); |
140 ShelfLockingManager* GetShelfLockingManagerForTesting(); | 141 ShelfLockingManager* GetShelfLockingManagerForTesting(); |
141 ShelfView* GetShelfViewForTesting(); | 142 ShelfView* GetShelfViewForTesting(); |
142 | 143 |
143 protected: | 144 protected: |
144 // ShelfLayoutManagerObserver: | 145 // ShelfLayoutManagerObserver: |
145 void WillDeleteShelfLayoutManager() override; | 146 void WillDeleteShelfLayoutManager() override; |
146 void WillChangeVisibilityState(ShelfVisibilityState new_state) override; | 147 void WillChangeVisibilityState(ShelfVisibilityState new_state) override; |
147 void OnAutoHideStateChanged(ShelfAutoHideState new_state) override; | 148 void OnAutoHideStateChanged(ShelfAutoHideState new_state) override; |
148 void OnBackgroundUpdated(ShelfBackgroundType background_type, | 149 void OnBackgroundUpdated(ShelfBackgroundType background_type, |
149 BackgroundAnimatorChangeType change_type) override; | 150 AnimationChangeType change_type) override; |
150 | 151 |
151 private: | 152 private: |
152 class AutoHideEventHandler; | 153 class AutoHideEventHandler; |
153 friend class ShelfLayoutManagerTest; | 154 friend class ShelfLayoutManagerTest; |
154 | 155 |
155 // Layout manager for the shelf container window. Instances are constructed by | 156 // Layout manager for the shelf container window. Instances are constructed by |
156 // ShelfWidget and lifetimes are managed by the container windows themselves. | 157 // ShelfWidget and lifetimes are managed by the container windows themselves. |
157 ShelfLayoutManager* shelf_layout_manager_ = nullptr; | 158 ShelfLayoutManager* shelf_layout_manager_ = nullptr; |
158 | 159 |
159 std::unique_ptr<ShelfWidget> shelf_widget_; | 160 std::unique_ptr<ShelfWidget> shelf_widget_; |
(...skipping 18 matching lines...) Expand all Loading... |
178 // Forwards touch gestures on a bezel sensor to the shelf. | 179 // Forwards touch gestures on a bezel sensor to the shelf. |
179 // TODO(mash): Facilitate simliar functionality in mash: crbug.com/636647 | 180 // TODO(mash): Facilitate simliar functionality in mash: crbug.com/636647 |
180 std::unique_ptr<ShelfBezelEventHandler> bezel_event_handler_; | 181 std::unique_ptr<ShelfBezelEventHandler> bezel_event_handler_; |
181 | 182 |
182 DISALLOW_COPY_AND_ASSIGN(WmShelf); | 183 DISALLOW_COPY_AND_ASSIGN(WmShelf); |
183 }; | 184 }; |
184 | 185 |
185 } // namespace ash | 186 } // namespace ash |
186 | 187 |
187 #endif // ASH_COMMON_SHELF_WM_SHELF_H_ | 188 #endif // ASH_COMMON_SHELF_WM_SHELF_H_ |
OLD | NEW |