| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 "chrome/browser/ui/ash/system_tray_client.h" | 5 #include "chrome/browser/ui/ash/system_tray_client.h" |
| 6 | 6 |
| 7 #include "ash/common/login_status.h" | 7 #include "ash/common/login_status.h" |
| 8 #include "ash/common/wm_shell.h" | 8 #include "ash/common/wm_shell.h" |
| 9 #include "ash/public/cpp/shell_window_ids.h" | 9 #include "ash/public/cpp/shell_window_ids.h" |
| 10 #include "ash/public/interfaces/constants.mojom.h" | 10 #include "ash/public/interfaces/constants.mojom.h" |
| (...skipping 21 matching lines...) Expand all Loading... |
| 32 #include "chrome/browser/ui/singleton_tabs.h" | 32 #include "chrome/browser/ui/singleton_tabs.h" |
| 33 #include "chrome/browser/upgrade_detector.h" | 33 #include "chrome/browser/upgrade_detector.h" |
| 34 #include "chrome/common/chrome_features.h" | 34 #include "chrome/common/chrome_features.h" |
| 35 #include "chrome/common/url_constants.h" | 35 #include "chrome/common/url_constants.h" |
| 36 #include "chromeos/dbus/dbus_thread_manager.h" | 36 #include "chromeos/dbus/dbus_thread_manager.h" |
| 37 #include "chromeos/dbus/session_manager_client.h" | 37 #include "chromeos/dbus/session_manager_client.h" |
| 38 #include "chromeos/login/login_state.h" | 38 #include "chromeos/login/login_state.h" |
| 39 #include "components/session_manager/core/session_manager.h" | 39 #include "components/session_manager/core/session_manager.h" |
| 40 #include "components/user_manager/user_manager.h" | 40 #include "components/user_manager/user_manager.h" |
| 41 #include "content/public/browser/notification_service.h" | 41 #include "content/public/browser/notification_service.h" |
| 42 #include "content/public/browser/user_metrics.h" | |
| 43 #include "content/public/common/service_manager_connection.h" | 42 #include "content/public/common/service_manager_connection.h" |
| 44 #include "device/bluetooth/bluetooth_device.h" | 43 #include "device/bluetooth/bluetooth_device.h" |
| 45 #include "extensions/browser/api/vpn_provider/vpn_service.h" | 44 #include "extensions/browser/api/vpn_provider/vpn_service.h" |
| 46 #include "extensions/browser/api/vpn_provider/vpn_service_factory.h" | 45 #include "extensions/browser/api/vpn_provider/vpn_service_factory.h" |
| 47 #include "net/base/escape.h" | 46 #include "net/base/escape.h" |
| 48 #include "services/service_manager/public/cpp/connector.h" | 47 #include "services/service_manager/public/cpp/connector.h" |
| 49 #include "services/ui/public/cpp/property_type_converters.h" | 48 #include "services/ui/public/cpp/property_type_converters.h" |
| 50 #include "services/ui/public/interfaces/window_manager.mojom.h" | 49 #include "services/ui/public/interfaces/window_manager.mojom.h" |
| 51 #include "third_party/cros_system_api/dbus/shill/dbus-constants.h" | 50 #include "third_party/cros_system_api/dbus/shill/dbus-constants.h" |
| 52 #include "ui/views/widget/widget.h" | 51 #include "ui/views/widget/widget.h" |
| (...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 234 | 233 |
| 235 base::RecordAction( | 234 base::RecordAction( |
| 236 base::UserMetricsAction("StatusArea_Bluetooth_Connect_Unknown")); | 235 base::UserMetricsAction("StatusArea_Bluetooth_Connect_Unknown")); |
| 237 BluetoothPairingDialog* dialog = new BluetoothPairingDialog( | 236 BluetoothPairingDialog* dialog = new BluetoothPairingDialog( |
| 238 canonical_address, name_for_display, paired, connected); | 237 canonical_address, name_for_display, paired, connected); |
| 239 // The dialog deletes itself on close. | 238 // The dialog deletes itself on close. |
| 240 dialog->ShowInContainer(GetDialogParentContainerId()); | 239 dialog->ShowInContainer(GetDialogParentContainerId()); |
| 241 } | 240 } |
| 242 | 241 |
| 243 void SystemTrayClient::ShowDateSettings() { | 242 void SystemTrayClient::ShowDateSettings() { |
| 244 content::RecordAction(base::UserMetricsAction("ShowDateOptions")); | 243 base::RecordAction(base::UserMetricsAction("ShowDateOptions")); |
| 245 // Everybody can change the time zone (even though it is a device setting). | 244 // Everybody can change the time zone (even though it is a device setting). |
| 246 chrome::ShowSettingsSubPageForProfile(ProfileManager::GetActiveUserProfile(), | 245 chrome::ShowSettingsSubPageForProfile(ProfileManager::GetActiveUserProfile(), |
| 247 chrome::kDateTimeSubPage); | 246 chrome::kDateTimeSubPage); |
| 248 } | 247 } |
| 249 | 248 |
| 250 void SystemTrayClient::ShowSetTimeDialog() { | 249 void SystemTrayClient::ShowSetTimeDialog() { |
| 251 chromeos::SetTimeDialog::ShowDialogInContainer(GetDialogParentContainerId()); | 250 chromeos::SetTimeDialog::ShowDialogInContainer(GetDialogParentContainerId()); |
| 252 } | 251 } |
| 253 | 252 |
| 254 void SystemTrayClient::ShowDisplaySettings() { | 253 void SystemTrayClient::ShowDisplaySettings() { |
| 255 content::RecordAction(base::UserMetricsAction("ShowDisplayOptions")); | 254 base::RecordAction(base::UserMetricsAction("ShowDisplayOptions")); |
| 256 ShowSettingsSubPageForActiveUser(chrome::kDisplaySubPage); | 255 ShowSettingsSubPageForActiveUser(chrome::kDisplaySubPage); |
| 257 } | 256 } |
| 258 | 257 |
| 259 void SystemTrayClient::ShowPowerSettings() { | 258 void SystemTrayClient::ShowPowerSettings() { |
| 260 content::RecordAction(base::UserMetricsAction("Tray_ShowPowerOptions")); | 259 base::RecordAction(base::UserMetricsAction("Tray_ShowPowerOptions")); |
| 261 ShowSettingsSubPageForActiveUser(chrome::kPowerSubPage); | 260 ShowSettingsSubPageForActiveUser(chrome::kPowerSubPage); |
| 262 } | 261 } |
| 263 | 262 |
| 264 void SystemTrayClient::ShowChromeSlow() { | 263 void SystemTrayClient::ShowChromeSlow() { |
| 265 chrome::ScopedTabbedBrowserDisplayer displayer( | 264 chrome::ScopedTabbedBrowserDisplayer displayer( |
| 266 ProfileManager::GetPrimaryUserProfile()); | 265 ProfileManager::GetPrimaryUserProfile()); |
| 267 chrome::ShowSlow(displayer.browser()); | 266 chrome::ShowSlow(displayer.browser()); |
| 268 } | 267 } |
| 269 | 268 |
| 270 void SystemTrayClient::ShowIMESettings() { | 269 void SystemTrayClient::ShowIMESettings() { |
| 271 content::RecordAction(base::UserMetricsAction("OpenLanguageOptionsDialog")); | 270 base::RecordAction(base::UserMetricsAction("OpenLanguageOptionsDialog")); |
| 272 ShowSettingsSubPageForActiveUser(chrome::kLanguageOptionsSubPage); | 271 ShowSettingsSubPageForActiveUser(chrome::kLanguageOptionsSubPage); |
| 273 } | 272 } |
| 274 | 273 |
| 275 void SystemTrayClient::ShowHelp() { | 274 void SystemTrayClient::ShowHelp() { |
| 276 chrome::ShowHelpForProfile(ProfileManager::GetActiveUserProfile(), | 275 chrome::ShowHelpForProfile(ProfileManager::GetActiveUserProfile(), |
| 277 chrome::HELP_SOURCE_MENU); | 276 chrome::HELP_SOURCE_MENU); |
| 278 } | 277 } |
| 279 | 278 |
| 280 void SystemTrayClient::ShowAccessibilityHelp() { | 279 void SystemTrayClient::ShowAccessibilityHelp() { |
| 281 chrome::ScopedTabbedBrowserDisplayer displayer( | 280 chrome::ScopedTabbedBrowserDisplayer displayer( |
| 282 ProfileManager::GetActiveUserProfile()); | 281 ProfileManager::GetActiveUserProfile()); |
| 283 chromeos::accessibility::ShowAccessibilityHelp(displayer.browser()); | 282 chromeos::accessibility::ShowAccessibilityHelp(displayer.browser()); |
| 284 } | 283 } |
| 285 | 284 |
| 286 void SystemTrayClient::ShowAccessibilitySettings() { | 285 void SystemTrayClient::ShowAccessibilitySettings() { |
| 287 content::RecordAction(base::UserMetricsAction("ShowAccessibilitySettings")); | 286 base::RecordAction(base::UserMetricsAction("ShowAccessibilitySettings")); |
| 288 ShowSettingsSubPageForActiveUser(chrome::kAccessibilitySubPage); | 287 ShowSettingsSubPageForActiveUser(chrome::kAccessibilitySubPage); |
| 289 } | 288 } |
| 290 | 289 |
| 291 void SystemTrayClient::ShowPaletteHelp() { | 290 void SystemTrayClient::ShowPaletteHelp() { |
| 292 chrome::ScopedTabbedBrowserDisplayer displayer( | 291 chrome::ScopedTabbedBrowserDisplayer displayer( |
| 293 ProfileManager::GetActiveUserProfile()); | 292 ProfileManager::GetActiveUserProfile()); |
| 294 chrome::ShowSingletonTab(displayer.browser(), | 293 chrome::ShowSingletonTab(displayer.browser(), |
| 295 GURL(chrome::kChromePaletteHelpURL)); | 294 GURL(chrome::kChromePaletteHelpURL)); |
| 296 } | 295 } |
| 297 | 296 |
| 298 void SystemTrayClient::ShowPaletteSettings() { | 297 void SystemTrayClient::ShowPaletteSettings() { |
| 299 content::RecordAction(base::UserMetricsAction("ShowPaletteOptions")); | 298 base::RecordAction(base::UserMetricsAction("ShowPaletteOptions")); |
| 300 ShowSettingsSubPageForActiveUser(chrome::kStylusSubPage); | 299 ShowSettingsSubPageForActiveUser(chrome::kStylusSubPage); |
| 301 } | 300 } |
| 302 | 301 |
| 303 void SystemTrayClient::ShowPublicAccountInfo() { | 302 void SystemTrayClient::ShowPublicAccountInfo() { |
| 304 chrome::ScopedTabbedBrowserDisplayer displayer( | 303 chrome::ScopedTabbedBrowserDisplayer displayer( |
| 305 ProfileManager::GetActiveUserProfile()); | 304 ProfileManager::GetActiveUserProfile()); |
| 306 chrome::ShowPolicy(displayer.browser()); | 305 chrome::ShowPolicy(displayer.browser()); |
| 307 } | 306 } |
| 308 | 307 |
| 309 void SystemTrayClient::ShowNetworkConfigure(const std::string& network_id) { | 308 void SystemTrayClient::ShowNetworkConfigure(const std::string& network_id) { |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 347 session_manager::SessionManager::Get()->IsInSecondaryLoginScreen()) { | 346 session_manager::SessionManager::Get()->IsInSecondaryLoginScreen()) { |
| 348 return; | 347 return; |
| 349 } | 348 } |
| 350 | 349 |
| 351 std::string page = chrome::kInternetSubPage; | 350 std::string page = chrome::kInternetSubPage; |
| 352 if (!network_id.empty()) { | 351 if (!network_id.empty()) { |
| 353 if (base::FeatureList::IsEnabled(features::kMaterialDesignSettings)) | 352 if (base::FeatureList::IsEnabled(features::kMaterialDesignSettings)) |
| 354 page = chrome::kNetworkDetailSubPage; | 353 page = chrome::kNetworkDetailSubPage; |
| 355 page += "?guid=" + net::EscapeUrlEncodedData(network_id, true); | 354 page += "?guid=" + net::EscapeUrlEncodedData(network_id, true); |
| 356 } | 355 } |
| 357 content::RecordAction(base::UserMetricsAction("OpenInternetOptionsDialog")); | 356 base::RecordAction(base::UserMetricsAction("OpenInternetOptionsDialog")); |
| 358 ShowSettingsSubPageForActiveUser(page); | 357 ShowSettingsSubPageForActiveUser(page); |
| 359 } | 358 } |
| 360 | 359 |
| 361 void SystemTrayClient::ShowProxySettings() { | 360 void SystemTrayClient::ShowProxySettings() { |
| 362 LoginState* login_state = LoginState::Get(); | 361 LoginState* login_state = LoginState::Get(); |
| 363 // User is not logged in. | 362 // User is not logged in. |
| 364 CHECK(!login_state->IsUserLoggedIn() || | 363 CHECK(!login_state->IsUserLoggedIn() || |
| 365 login_state->GetLoggedInUserType() == LoginState::LOGGED_IN_USER_NONE); | 364 login_state->GetLoggedInUserType() == LoginState::LOGGED_IN_USER_NONE); |
| 366 chromeos::LoginDisplayHost::default_host()->OpenProxySettings(); | 365 chromeos::LoginDisplayHost::default_host()->OpenProxySettings(); |
| 367 } | 366 } |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 401 chromeos::system::SystemClock* clock) { | 400 chromeos::system::SystemClock* clock) { |
| 402 system_tray_->SetUse24HourClock(clock->ShouldUse24HourClock()); | 401 system_tray_->SetUse24HourClock(clock->ShouldUse24HourClock()); |
| 403 } | 402 } |
| 404 | 403 |
| 405 void SystemTrayClient::Observe(int type, | 404 void SystemTrayClient::Observe(int type, |
| 406 const content::NotificationSource& source, | 405 const content::NotificationSource& source, |
| 407 const content::NotificationDetails& details) { | 406 const content::NotificationDetails& details) { |
| 408 DCHECK_EQ(chrome::NOTIFICATION_UPGRADE_RECOMMENDED, type); | 407 DCHECK_EQ(chrome::NOTIFICATION_UPGRADE_RECOMMENDED, type); |
| 409 HandleUpdateAvailable(); | 408 HandleUpdateAvailable(); |
| 410 } | 409 } |
| OLD | NEW |