OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_SHELF_SHELF_H_ | 5 #ifndef ASH_SHELF_SHELF_H_ |
6 #define ASH_SHELF_SHELF_H_ | 6 #define ASH_SHELF_SHELF_H_ |
7 | 7 |
8 #include "ash/ash_export.h" | 8 #include "ash/ash_export.h" |
9 #include "ash/shelf/shelf_constants.h" | 9 #include "ash/shelf/shelf_constants.h" |
10 #include "ash/shelf/shelf_types.h" | 10 #include "ash/shelf/shelf_types.h" |
(...skipping 12 matching lines...) Expand all Loading... |
23 | 23 |
24 namespace gfx { | 24 namespace gfx { |
25 class Rect; | 25 class Rect; |
26 } | 26 } |
27 | 27 |
28 namespace views { | 28 namespace views { |
29 class View; | 29 class View; |
30 } | 30 } |
31 | 31 |
32 namespace ash { | 32 namespace ash { |
33 | |
34 namespace internal { | |
35 class FocusCycler; | 33 class FocusCycler; |
| 34 class ShelfDelegate; |
| 35 class ShelfIconObserver; |
36 class ShelfLayoutManager; | 36 class ShelfLayoutManager; |
| 37 class ShelfModel; |
37 class ShelfView; | 38 class ShelfView; |
38 } | 39 class ShelfWidget; |
39 | 40 |
40 namespace test { | 41 namespace test { |
41 class ShelfTestAPI; | 42 class ShelfTestAPI; |
42 } | 43 } |
43 | 44 |
44 class ShelfDelegate; | |
45 class ShelfIconObserver; | |
46 class ShelfModel; | |
47 class ShelfWidget; | |
48 | 45 |
49 class ASH_EXPORT Shelf { | 46 class ASH_EXPORT Shelf { |
50 public: | 47 public: |
51 static const char kNativeViewName[]; | 48 static const char kNativeViewName[]; |
52 | 49 |
53 Shelf(ShelfModel* model, ShelfDelegate* delegate, ShelfWidget* widget); | 50 Shelf(ShelfModel* model, ShelfDelegate* delegate, ShelfWidget* widget); |
54 virtual ~Shelf(); | 51 virtual ~Shelf(); |
55 | 52 |
56 // Return the shelf for the primary display. NULL if no user is logged in yet. | 53 // Return the shelf for the primary display. NULL if no user is logged in yet. |
57 static Shelf* ForPrimaryDisplay(); | 54 static Shelf* ForPrimaryDisplay(); |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
108 // system. | 105 // system. |
109 gfx::Rect GetVisibleItemsBoundsInScreen() const; | 106 gfx::Rect GetVisibleItemsBoundsInScreen() const; |
110 | 107 |
111 // Returns ApplicationDragAndDropHost for this shelf. | 108 // Returns ApplicationDragAndDropHost for this shelf. |
112 app_list::ApplicationDragAndDropHost* GetDragAndDropHostForAppList(); | 109 app_list::ApplicationDragAndDropHost* GetDragAndDropHostForAppList(); |
113 | 110 |
114 private: | 111 private: |
115 friend class test::ShelfTestAPI; | 112 friend class test::ShelfTestAPI; |
116 | 113 |
117 // ShelfView used to display icons. | 114 // ShelfView used to display icons. |
118 internal::ShelfView* shelf_view_; | 115 ShelfView* shelf_view_; |
119 | 116 |
120 ShelfAlignment alignment_; | 117 ShelfAlignment alignment_; |
121 | 118 |
122 ShelfDelegate* delegate_; | 119 ShelfDelegate* delegate_; |
123 | 120 |
124 ShelfWidget* shelf_widget_; | 121 ShelfWidget* shelf_widget_; |
125 | 122 |
126 DISALLOW_COPY_AND_ASSIGN(Shelf); | 123 DISALLOW_COPY_AND_ASSIGN(Shelf); |
127 }; | 124 }; |
128 | 125 |
129 } // namespace ash | 126 } // namespace ash |
130 | 127 |
131 #endif // ASH_SHELF_SHELF_H_ | 128 #endif // ASH_SHELF_SHELF_H_ |
OLD | NEW |