Chromium Code Reviews| Index: ash/wm/shelf_layout_manager.cc |
| diff --git a/ash/wm/shelf_layout_manager.cc b/ash/wm/shelf_layout_manager.cc |
| index 52f6b03fcedac4705922301067e4a51044a7d48d..2d3f4dc7ebe7904fbc719cd8a339ec8148f410c4 100644 |
| --- a/ash/wm/shelf_layout_manager.cc |
| +++ b/ash/wm/shelf_layout_manager.cc |
| @@ -247,6 +247,18 @@ void ShelfLayoutManager::LayoutShelf() { |
| UpdateHitTestBounds(); |
| } |
| +ShelfVisibilityState ShelfLayoutManager::GetShelfVisibilityState() { |
|
sky
2013/01/30 22:27:10
Make position match header, and name this more cle
zel
2013/01/30 22:55:16
Moved. Renamed to CalculateShelfVisibility()... it
|
| + switch(auto_hide_behavior_) { |
| + case SHELF_AUTO_HIDE_BEHAVIOR_ALWAYS: |
| + return SHELF_AUTO_HIDE; |
| + case SHELF_AUTO_HIDE_BEHAVIOR_NEVER: |
| + return SHELF_VISIBLE; |
| + case SHELF_AUTO_HIDE_ALWAYS_HIDDEN: |
| + return SHELF_HIDDEN; |
| + } |
| + return SHELF_VISIBLE; |
| +} |
| + |
| void ShelfLayoutManager::UpdateVisibilityState() { |
| ShellDelegate* delegate = Shell::GetInstance()->delegate(); |
| if (delegate && delegate->IsScreenLocked()) { |
| @@ -265,14 +277,12 @@ void ShelfLayoutManager::UpdateVisibilityState() { |
| break; |
| case WORKSPACE_WINDOW_STATE_MAXIMIZED: |
| - SetState(auto_hide_behavior_ == SHELF_AUTO_HIDE_BEHAVIOR_ALWAYS ? |
| - SHELF_AUTO_HIDE : SHELF_VISIBLE); |
| + SetState(GetShelfVisibilityState()); |
|
sky
2013/01/30 22:27:10
fix indentation while you're here.
zel
2013/01/30 22:55:16
Done.
|
| break; |
| case WORKSPACE_WINDOW_STATE_WINDOW_OVERLAPS_SHELF: |
| case WORKSPACE_WINDOW_STATE_DEFAULT: |
| - SetState(auto_hide_behavior_ == SHELF_AUTO_HIDE_BEHAVIOR_ALWAYS ? |
| - SHELF_AUTO_HIDE : SHELF_VISIBLE); |
| + SetState(GetShelfVisibilityState()); |
| SetWindowOverlapsShelf(window_state == |
| WORKSPACE_WINDOW_STATE_WINDOW_OVERLAPS_SHELF); |
| break; |