ash: Move shelf alignment and auto-hide calls from Shell to Shelf
Shelf (aka ShelfController) should be the single point of access for alignment
and auto-hide state.
* Eliminate Shell::GetShelfAlignment and SetShelfAlignment
* Eliminate Shell::GetShelfAutoHideBehavior and SetShelfAutoHideBehavior
* Convert Shelf::GetAutoHideBehavior() to auto_hide_behavior()
* Use Shelf::ForPrimaryDisplay() in unit tests to avoid accessing the
RootWindowController.
BUG=615502
TEST=existing ash_unittests and unit_tests
Review-Url: https://codereview.chromium.org/2020623004
Cr-Commit-Position: refs/heads/master@{#396994}
diff --git a/ash/root_window_controller.cc b/ash/root_window_controller.cc
index bf980dcc2..8135b83 100644
--- a/ash/root_window_controller.cc
+++ b/ash/root_window_controller.cc
@@ -432,6 +432,11 @@
shelf_widget_->PostCreateShelf();
}
+Shelf* RootWindowController::GetShelf() const {
+ // TODO(jamescook): Shelf should be owned by this class, not by ShelfWidget.
+ return shelf_widget_->shelf();
+}
+
void RootWindowController::UpdateAfterLoginStatusChange(
user::LoginStatus status) {
if (status != user::LOGGED_IN_NONE)