OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #include "ash/system/overview/overview_button_tray.h" | 5 #include "ash/system/overview/overview_button_tray.h" |
6 | 6 |
7 #include "ash/resources/vector_icons/vector_icons.h" | 7 #include "ash/resources/vector_icons/vector_icons.h" |
8 #include "ash/session/session_controller.h" | 8 #include "ash/session/session_controller.h" |
9 #include "ash/shelf/shelf_constants.h" | 9 #include "ash/shelf/shelf_constants.h" |
10 #include "ash/shell.h" | 10 #include "ash/shell.h" |
11 #include "ash/shell_port.h" | 11 #include "ash/shell_port.h" |
12 #include "ash/strings/grit/ash_strings.h" | 12 #include "ash/strings/grit/ash_strings.h" |
13 #include "ash/system/tray/tray_constants.h" | 13 #include "ash/system/tray/tray_constants.h" |
14 #include "ash/system/tray/tray_container.h" | 14 #include "ash/system/tray/tray_container.h" |
15 #include "ash/wm/maximize_mode/maximize_mode_controller.h" | |
16 #include "ash/wm/mru_window_tracker.h" | 15 #include "ash/wm/mru_window_tracker.h" |
17 #include "ash/wm/overview/window_selector_controller.h" | 16 #include "ash/wm/overview/window_selector_controller.h" |
| 17 #include "ash/wm/tablet_mode/tablet_mode_controller.h" |
18 #include "ui/base/l10n/l10n_util.h" | 18 #include "ui/base/l10n/l10n_util.h" |
19 #include "ui/gfx/paint_vector_icon.h" | 19 #include "ui/gfx/paint_vector_icon.h" |
20 #include "ui/views/border.h" | 20 #include "ui/views/border.h" |
21 #include "ui/views/controls/image_view.h" | 21 #include "ui/views/controls/image_view.h" |
22 #include "ui/wm/core/window_util.h" | 22 #include "ui/wm/core/window_util.h" |
23 | 23 |
24 namespace ash { | 24 namespace ash { |
25 | 25 |
26 OverviewButtonTray::OverviewButtonTray(Shelf* shelf) | 26 OverviewButtonTray::OverviewButtonTray(Shelf* shelf) |
27 : TrayBackgroundView(shelf), | 27 : TrayBackgroundView(shelf), |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
83 bool performed = controller->ToggleOverview(); | 83 bool performed = controller->ToggleOverview(); |
84 ShellPort::Get()->RecordUserMetricsAction(UMA_TRAY_OVERVIEW); | 84 ShellPort::Get()->RecordUserMetricsAction(UMA_TRAY_OVERVIEW); |
85 return performed; | 85 return performed; |
86 } | 86 } |
87 | 87 |
88 void OverviewButtonTray::OnSessionStateChanged( | 88 void OverviewButtonTray::OnSessionStateChanged( |
89 session_manager::SessionState state) { | 89 session_manager::SessionState state) { |
90 UpdateIconVisibility(); | 90 UpdateIconVisibility(); |
91 } | 91 } |
92 | 92 |
93 void OverviewButtonTray::OnMaximizeModeStarted() { | 93 void OverviewButtonTray::OnTabletModeStarted() { |
94 UpdateIconVisibility(); | 94 UpdateIconVisibility(); |
95 } | 95 } |
96 | 96 |
97 void OverviewButtonTray::OnMaximizeModeEnded() { | 97 void OverviewButtonTray::OnTabletModeEnded() { |
98 UpdateIconVisibility(); | 98 UpdateIconVisibility(); |
99 } | 99 } |
100 | 100 |
101 void OverviewButtonTray::OnOverviewModeStarting() { | 101 void OverviewButtonTray::OnOverviewModeStarting() { |
102 SetIsActive(true); | 102 SetIsActive(true); |
103 } | 103 } |
104 | 104 |
105 void OverviewButtonTray::OnOverviewModeEnded() { | 105 void OverviewButtonTray::OnOverviewModeEnded() { |
106 SetIsActive(false); | 106 SetIsActive(false); |
107 } | 107 } |
(...skipping 11 matching lines...) Expand all Loading... |
119 | 119 |
120 void OverviewButtonTray::UpdateIconVisibility() { | 120 void OverviewButtonTray::UpdateIconVisibility() { |
121 // The visibility of the OverviewButtonTray has diverged from | 121 // The visibility of the OverviewButtonTray has diverged from |
122 // WindowSelectorController::CanSelect. The visibility of the button should | 122 // WindowSelectorController::CanSelect. The visibility of the button should |
123 // not change during transient times in which CanSelect is false. Such as when | 123 // not change during transient times in which CanSelect is false. Such as when |
124 // a modal dialog is present. | 124 // a modal dialog is present. |
125 SessionController* session_controller = Shell::Get()->session_controller(); | 125 SessionController* session_controller = Shell::Get()->session_controller(); |
126 | 126 |
127 Shell* shell = Shell::Get(); | 127 Shell* shell = Shell::Get(); |
128 SetVisible( | 128 SetVisible( |
129 shell->maximize_mode_controller()->IsMaximizeModeWindowManagerEnabled() && | 129 shell->tablet_mode_controller()->IsTabletModeWindowManagerEnabled() && |
130 session_controller->IsActiveUserSessionStarted() && | 130 session_controller->IsActiveUserSessionStarted() && |
131 !session_controller->IsScreenLocked() && | 131 !session_controller->IsScreenLocked() && |
132 session_controller->GetSessionState() == | 132 session_controller->GetSessionState() == |
133 session_manager::SessionState::ACTIVE && | 133 session_manager::SessionState::ACTIVE && |
134 !session_controller->IsKioskSession()); | 134 !session_controller->IsKioskSession()); |
135 } | 135 } |
136 | 136 |
137 } // namespace ash | 137 } // namespace ash |
OLD | NEW |