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_AURA_WM_SHELF_AURA_H_ | 5 #ifndef ASH_AURA_WM_SHELF_AURA_H_ |
6 #define ASH_AURA_WM_SHELF_AURA_H_ | 6 #define ASH_AURA_WM_SHELF_AURA_H_ |
7 | 7 |
8 #include "ash/ash_export.h" | 8 #include "ash/ash_export.h" |
9 #include "ash/common/shelf/shelf_icon_observer.h" | 9 #include "ash/common/shelf/shelf_icon_observer.h" |
10 #include "ash/common/shelf/wm_shelf.h" | 10 #include "ash/common/shelf/wm_shelf.h" |
11 #include "ash/shelf/shelf_layout_manager_observer.h" | 11 #include "ash/shelf/shelf_layout_manager_observer.h" |
12 #include "base/macros.h" | 12 #include "base/macros.h" |
13 #include "base/observer_list.h" | 13 #include "base/observer_list.h" |
14 | 14 |
15 namespace ash { | 15 namespace ash { |
16 | 16 |
17 class Shelf; | 17 class Shelf; |
| 18 class ShelfBezelEventHandler; |
18 class ShelfLayoutManager; | 19 class ShelfLayoutManager; |
19 | 20 |
20 // Aura implementation of WmShelf. | 21 // Aura implementation of WmShelf. |
21 class ASH_EXPORT WmShelfAura : public WmShelf, | 22 class ASH_EXPORT WmShelfAura : public WmShelf, |
22 public ShelfLayoutManagerObserver, | 23 public ShelfLayoutManagerObserver, |
23 public ShelfIconObserver { | 24 public ShelfIconObserver { |
24 public: | 25 public: |
25 WmShelfAura(); | 26 WmShelfAura(); |
26 ~WmShelfAura() override; | 27 ~WmShelfAura() override; |
27 | 28 |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
78 | 79 |
79 // May be null during login and during initialization of a secondary display. | 80 // May be null during login and during initialization of a secondary display. |
80 Shelf* shelf_ = nullptr; | 81 Shelf* shelf_ = nullptr; |
81 | 82 |
82 // Cached separately because it may be destroyed before |shelf_|. | 83 // Cached separately because it may be destroyed before |shelf_|. |
83 ShelfLayoutManager* shelf_layout_manager_ = nullptr; | 84 ShelfLayoutManager* shelf_layout_manager_ = nullptr; |
84 | 85 |
85 base::ObserverList<WmShelfObserver> observers_; | 86 base::ObserverList<WmShelfObserver> observers_; |
86 | 87 |
87 // Forwards mouse and gesture events to ShelfLayoutManager for auto-hide. | 88 // Forwards mouse and gesture events to ShelfLayoutManager for auto-hide. |
| 89 // TODO(mash): Facilitate simliar functionality in mash: crbug.com/631216 |
88 std::unique_ptr<AutoHideEventHandler> auto_hide_event_handler_; | 90 std::unique_ptr<AutoHideEventHandler> auto_hide_event_handler_; |
89 | 91 |
| 92 // Forwards touch gestures on a bezel sensor to the shelf. |
| 93 // TODO(mash): Facilitate simliar functionality in mash: crbug.com/636647 |
| 94 std::unique_ptr<ShelfBezelEventHandler> bezel_event_handler_; |
| 95 |
90 DISALLOW_COPY_AND_ASSIGN(WmShelfAura); | 96 DISALLOW_COPY_AND_ASSIGN(WmShelfAura); |
91 }; | 97 }; |
92 | 98 |
93 } // namespace ash | 99 } // namespace ash |
94 | 100 |
95 #endif // ASH_AURA_WM_SHELF_AURA_H_ | 101 #endif // ASH_AURA_WM_SHELF_AURA_H_ |
OLD | NEW |