Index: ash/root_window_controller.h |
diff --git a/ash/root_window_controller.h b/ash/root_window_controller.h |
index 5c9a1b2fff4603fdc269b12c7b6c9736a248e76c..926ca6a98e8282d0611f371eff9a0b95b66e7fb2 100644 |
--- a/ash/root_window_controller.h |
+++ b/ash/root_window_controller.h |
@@ -67,6 +67,7 @@ class SystemModalContainerLayoutManager; |
class SystemTray; |
class TouchHudDebug; |
class TouchHudProjection; |
+class WmShelfAura; |
class WmWindow; |
class WorkspaceController; |
@@ -118,6 +119,8 @@ class ASH_EXPORT RootWindowController : public ShellObserver { |
return always_on_top_controller_.get(); |
} |
+ WmShelfAura* wm_shelf_aura() const { return wm_shelf_aura_.get(); } |
+ |
// Access the shelf widget associated with this root window controller, |
// NULL if no such shelf exists. |
// DEPRECATED: Prefer GetShelf()->shelf_widget(). |
@@ -186,6 +189,7 @@ class ASH_EXPORT RootWindowController : public ShellObserver { |
void CreateShelf(); |
// Returns the shelf controller for this root window. |
+ // TODO(jamescook): Remove this and use WmRootWindowController::GetShelf(). |
Shelf* GetShelf() const; |
// Called when the login status changes after login (such as lock/unlock). |
@@ -275,6 +279,11 @@ class ASH_EXPORT RootWindowController : public ShellObserver { |
std::unique_ptr<StackingController> stacking_controller_; |
+ // The shelf controller for this root window. Exists for the entire lifetime |
+ // of the RootWindowController so that it is safe for observers to be added |
+ // to it during construction of the shelf widget and status tray. |
+ std::unique_ptr<WmShelfAura> wm_shelf_aura_; |
+ |
// The shelf widget for this root window. |
std::unique_ptr<ShelfWidget> shelf_widget_; |