Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(207)

Side by Side Diff: chrome/browser/ui/ash/system_tray_delegate_chromeos.cc

Issue 2373863002: mustash: Connect ash system tray "show settings" items to chrome over mojo (Closed)
Patch Set: review comments Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « chrome/browser/ui/ash/system_tray_delegate_chromeos.h ('k') | chrome/common/url_constants.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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_delegate_chromeos.h" 5 #include "chrome/browser/ui/ash/system_tray_delegate_chromeos.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <set> 10 #include <set>
(...skipping 27 matching lines...) Expand all
38 #include "base/callback.h" 38 #include "base/callback.h"
39 #include "base/logging.h" 39 #include "base/logging.h"
40 #include "base/memory/ptr_util.h" 40 #include "base/memory/ptr_util.h"
41 #include "base/memory/weak_ptr.h" 41 #include "base/memory/weak_ptr.h"
42 #include "base/strings/stringprintf.h" 42 #include "base/strings/stringprintf.h"
43 #include "base/strings/utf_string_conversions.h" 43 #include "base/strings/utf_string_conversions.h"
44 #include "base/sys_info.h" 44 #include "base/sys_info.h"
45 #include "base/time/time.h" 45 #include "base/time/time.h"
46 #include "chrome/browser/browser_process.h" 46 #include "chrome/browser/browser_process.h"
47 #include "chrome/browser/chrome_notification_types.h" 47 #include "chrome/browser/chrome_notification_types.h"
48 #include "chrome/browser/chromeos/accessibility/accessibility_manager.h"
49 #include "chrome/browser/chromeos/accessibility/magnification_manager.h" 48 #include "chrome/browser/chromeos/accessibility/magnification_manager.h"
50 #include "chrome/browser/chromeos/bluetooth/bluetooth_pairing_dialog.h" 49 #include "chrome/browser/chromeos/bluetooth/bluetooth_pairing_dialog.h"
51 #include "chrome/browser/chromeos/events/system_key_event_listener.h" 50 #include "chrome/browser/chromeos/events/system_key_event_listener.h"
52 #include "chrome/browser/chromeos/input_method/input_method_switch_recorder.h" 51 #include "chrome/browser/chromeos/input_method/input_method_switch_recorder.h"
53 #include "chrome/browser/chromeos/input_method/input_method_util.h" 52 #include "chrome/browser/chromeos/input_method/input_method_util.h"
54 #include "chrome/browser/chromeos/login/help_app_launcher.h" 53 #include "chrome/browser/chromeos/login/help_app_launcher.h"
55 #include "chrome/browser/chromeos/login/login_wizard.h" 54 #include "chrome/browser/chromeos/login/login_wizard.h"
56 #include "chrome/browser/chromeos/login/ui/login_display_host.h"
57 #include "chrome/browser/chromeos/login/ui/user_adding_screen.h" 55 #include "chrome/browser/chromeos/login/ui/user_adding_screen.h"
58 #include "chrome/browser/chromeos/login/user_flow.h" 56 #include "chrome/browser/chromeos/login/user_flow.h"
59 #include "chrome/browser/chromeos/login/users/chrome_user_manager.h" 57 #include "chrome/browser/chromeos/login/users/chrome_user_manager.h"
60 #include "chrome/browser/chromeos/login/users/supervised_user_manager.h" 58 #include "chrome/browser/chromeos/login/users/supervised_user_manager.h"
61 #include "chrome/browser/chromeos/options/network_config_view.h" 59 #include "chrome/browser/chromeos/options/network_config_view.h"
62 #include "chrome/browser/chromeos/policy/browser_policy_connector_chromeos.h" 60 #include "chrome/browser/chromeos/policy/browser_policy_connector_chromeos.h"
63 #include "chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.h" 61 #include "chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.h"
64 #include "chrome/browser/chromeos/profiles/multiprofiles_intro_dialog.h" 62 #include "chrome/browser/chromeos/profiles/multiprofiles_intro_dialog.h"
65 #include "chrome/browser/chromeos/profiles/profile_helper.h" 63 #include "chrome/browser/chromeos/profiles/profile_helper.h"
66 #include "chrome/browser/chromeos/set_time_dialog.h" 64 #include "chrome/browser/chromeos/set_time_dialog.h"
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
126 namespace chromeos { 124 namespace chromeos {
127 125
128 namespace { 126 namespace {
129 127
130 // The minimum session length limit that can be set. 128 // The minimum session length limit that can be set.
131 const int kSessionLengthLimitMinMs = 30 * 1000; // 30 seconds. 129 const int kSessionLengthLimitMinMs = 30 * 1000; // 30 seconds.
132 130
133 // The maximum session length limit that can be set. 131 // The maximum session length limit that can be set.
134 const int kSessionLengthLimitMaxMs = 24 * 60 * 60 * 1000; // 24 hours. 132 const int kSessionLengthLimitMaxMs = 24 * 60 * 60 * 1000; // 24 hours.
135 133
136 const char kDisplaySettingsSubPageName[] = "display";
137 const char kDisplayOverscanSettingsSubPageName[] = "displayOverscan";
138 const char kPaletteSettingsSubPageName[] = "stylus-overlay";
139
140 void ExtractIMEInfo(const input_method::InputMethodDescriptor& ime, 134 void ExtractIMEInfo(const input_method::InputMethodDescriptor& ime,
141 const input_method::InputMethodUtil& util, 135 const input_method::InputMethodUtil& util,
142 ash::IMEInfo* info) { 136 ash::IMEInfo* info) {
143 info->id = ime.id(); 137 info->id = ime.id();
144 info->name = util.GetInputMethodLongName(ime); 138 info->name = util.GetInputMethodLongName(ime);
145 info->medium_name = util.GetInputMethodMediumName(ime); 139 info->medium_name = util.GetInputMethodMediumName(ime);
146 info->short_name = util.GetInputMethodShortName(ime); 140 info->short_name = util.GetInputMethodShortName(ime);
147 info->third_party = extension_ime_util::IsExtensionIME(ime.id()); 141 info->third_party = extension_ime_util::IsExtensionIME(ime.id());
148 } 142 }
149 143
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after
353 return ash::LoginStatus::PUBLIC; 347 return ash::LoginStatus::PUBLIC;
354 case LoginState::LOGGED_IN_USER_SUPERVISED: 348 case LoginState::LOGGED_IN_USER_SUPERVISED:
355 return ash::LoginStatus::SUPERVISED; 349 return ash::LoginStatus::SUPERVISED;
356 case LoginState::LOGGED_IN_USER_KIOSK_APP: 350 case LoginState::LOGGED_IN_USER_KIOSK_APP:
357 return ash::LoginStatus::KIOSK_APP; 351 return ash::LoginStatus::KIOSK_APP;
358 } 352 }
359 NOTREACHED(); 353 NOTREACHED();
360 return ash::LoginStatus::NOT_LOGGED_IN; 354 return ash::LoginStatus::NOT_LOGGED_IN;
361 } 355 }
362 356
363 void SystemTrayDelegateChromeOS::ChangeProfilePicture() {
364 content::RecordAction(
365 base::UserMetricsAction("OpenChangeProfilePictureDialog"));
366 ShowSettingsSubPageForActiveUser(chrome::kChangeProfilePictureSubPage);
367 }
368
369 std::string SystemTrayDelegateChromeOS::GetEnterpriseDomain() const { 357 std::string SystemTrayDelegateChromeOS::GetEnterpriseDomain() const {
370 return enterprise_domain_; 358 return enterprise_domain_;
371 } 359 }
372 360
373 base::string16 SystemTrayDelegateChromeOS::GetEnterpriseMessage() const { 361 base::string16 SystemTrayDelegateChromeOS::GetEnterpriseMessage() const {
374 if (GetEnterpriseDomain().empty()) 362 if (GetEnterpriseDomain().empty())
375 return base::string16(); 363 return base::string16();
376 return l10n_util::GetStringFUTF16(IDS_DEVICE_OWNED_BY_NOTICE, 364 return l10n_util::GetStringFUTF16(IDS_DEVICE_OWNED_BY_NOTICE,
377 base::UTF8ToUTF16(GetEnterpriseDomain())); 365 base::UTF8ToUTF16(GetEnterpriseDomain()));
378 } 366 }
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
413 void SystemTrayDelegateChromeOS::GetSystemUpdateInfo( 401 void SystemTrayDelegateChromeOS::GetSystemUpdateInfo(
414 ash::UpdateInfo* info) const { 402 ash::UpdateInfo* info) const {
415 GetUpdateInfo(UpgradeDetector::GetInstance(), info); 403 GetUpdateInfo(UpgradeDetector::GetInstance(), info);
416 } 404 }
417 405
418 base::HourClockType SystemTrayDelegateChromeOS::GetHourClockType() const { 406 base::HourClockType SystemTrayDelegateChromeOS::GetHourClockType() const {
419 return clock_type_; 407 return clock_type_;
420 } 408 }
421 409
422 void SystemTrayDelegateChromeOS::ShowSettings() { 410 void SystemTrayDelegateChromeOS::ShowSettings() {
423 ShowSettingsSubPageForActiveUser(""); 411 SystemTrayCommon::ShowSettings();
424 } 412 }
425 413
426 bool SystemTrayDelegateChromeOS::ShouldShowSettings() { 414 bool SystemTrayDelegateChromeOS::ShouldShowSettings() {
427 ash::WmShell* wm_shell = ash::WmShell::Get(); 415 ash::WmShell* wm_shell = ash::WmShell::Get();
428 return ChromeUserManager::Get()->GetCurrentUserFlow()->ShouldShowSettings() && 416 return ChromeUserManager::Get()->GetCurrentUserFlow()->ShouldShowSettings() &&
429 !wm_shell->GetSessionStateDelegate()->IsInSecondaryLoginScreen(); 417 !wm_shell->GetSessionStateDelegate()->IsInSecondaryLoginScreen();
430 } 418 }
431 419
432 void SystemTrayDelegateChromeOS::ShowDateSettings() { 420 void SystemTrayDelegateChromeOS::ShowDateSettings() {
433 SystemTrayCommon::ShowDateSettings(); 421 SystemTrayCommon::ShowDateSettings();
434 } 422 }
435 423
436 void SystemTrayDelegateChromeOS::ShowSetTimeDialog() { 424 void SystemTrayDelegateChromeOS::ShowSetTimeDialog() {
425 // TODO(mash): Refactor out GetNativeWindow and move to SystemTrayCommon.
437 SetTimeDialog::ShowDialog(GetNativeWindow()); 426 SetTimeDialog::ShowDialog(GetNativeWindow());
438 } 427 }
439 428
440 void SystemTrayDelegateChromeOS::ShowNetworkSettingsForGuid( 429 void SystemTrayDelegateChromeOS::ShowNetworkSettingsForGuid(
441 const std::string& guid) { 430 const std::string& guid) {
431 // TODO(mash): Refactor out SessionStateDelegate and move to SystemTrayCommon.
442 ash::WmShell* wm_shell = ash::WmShell::Get(); 432 ash::WmShell* wm_shell = ash::WmShell::Get();
443 if (LoginState::Get()->IsUserLoggedIn() && 433 if (LoginState::Get()->IsUserLoggedIn() &&
444 !wm_shell->GetSessionStateDelegate()->IsInSecondaryLoginScreen()) { 434 !wm_shell->GetSessionStateDelegate()->IsInSecondaryLoginScreen()) {
445 std::string page = chrome::kInternetOptionsSubPage; 435 std::string page = chrome::kInternetOptionsSubPage;
446 if (!guid.empty()) 436 if (!guid.empty())
447 page += "?guid=" + net::EscapeUrlEncodedData(guid, true); 437 page += "?guid=" + net::EscapeUrlEncodedData(guid, true);
448 content::RecordAction(base::UserMetricsAction("OpenInternetOptionsDialog")); 438 content::RecordAction(base::UserMetricsAction("OpenInternetOptionsDialog"));
449 ShowSettingsSubPageForActiveUser(page); 439 ShowSettingsSubPageForActiveUser(page);
450 } 440 }
451 } 441 }
452 442
453 void SystemTrayDelegateChromeOS::ShowDisplaySettings() { 443 void SystemTrayDelegateChromeOS::ShowDisplaySettings() {
454 content::RecordAction(base::UserMetricsAction("ShowDisplayOptions")); 444 SystemTrayCommon::ShowDisplaySettings();
455 ShowSettingsSubPageForActiveUser(kDisplaySettingsSubPageName);
456 } 445 }
457 446
458 void SystemTrayDelegateChromeOS::ShowPowerSettings() { 447 void SystemTrayDelegateChromeOS::ShowPowerSettings() {
448 // TODO(mash): Refactor out ash::PowerStatus and move to SystemTrayCommon.
459 if (!(switches::PowerOverlayEnabled() || 449 if (!(switches::PowerOverlayEnabled() ||
460 (ash::PowerStatus::Get()->IsBatteryPresent() && 450 (ash::PowerStatus::Get()->IsBatteryPresent() &&
461 ash::PowerStatus::Get()->SupportsDualRoleDevices()))) { 451 ash::PowerStatus::Get()->SupportsDualRoleDevices()))) {
462 return; 452 return;
463 } 453 }
464 content::RecordAction(base::UserMetricsAction("Tray_ShowPowerOptions")); 454 content::RecordAction(base::UserMetricsAction("Tray_ShowPowerOptions"));
465 ShowSettingsSubPageForActiveUser(chrome::kPowerOptionsSubPage); 455 ShowSettingsSubPageForActiveUser(chrome::kPowerOptionsSubPage);
466 } 456 }
467 457
468 void SystemTrayDelegateChromeOS::ShowChromeSlow() { 458 void SystemTrayDelegateChromeOS::ShowChromeSlow() {
469 chrome::ScopedTabbedBrowserDisplayer displayer( 459 SystemTrayCommon::ShowChromeSlow();
470 ProfileManager::GetPrimaryUserProfile());
471 chrome::ShowSlow(displayer.browser());
472 } 460 }
473 461
474 bool SystemTrayDelegateChromeOS::ShouldShowDisplayNotification() { 462 bool SystemTrayDelegateChromeOS::ShouldShowDisplayNotification() {
475 // Packaged app is not counted as 'last active', so if a browser opening the 463 // Packaged app is not counted as 'last active', so if a browser opening the
476 // display settings is in background of a packaged app, it will return true. 464 // display settings is in background of a packaged app, it will return true.
477 // TODO(mukai): fix this. 465 // TODO(mukai): fix this.
478 Browser* active_browser = chrome::FindLastActive(); 466 Browser* active_browser = chrome::FindLastActive();
479 if (!active_browser) 467 if (!active_browser)
480 return true; 468 return true;
481 469
482 content::WebContents* active_contents = 470 content::WebContents* active_contents =
483 active_browser->tab_strip_model()->GetActiveWebContents(); 471 active_browser->tab_strip_model()->GetActiveWebContents();
484 if (!active_contents) 472 if (!active_contents)
485 return true; 473 return true;
486 474
487 GURL visible_url = active_contents->GetLastCommittedURL(); 475 GURL visible_url = active_contents->GetLastCommittedURL();
488 return !(chrome::IsSettingsSubPage(visible_url, 476 return !chrome::IsSettingsSubPage(
489 kDisplaySettingsSubPageName) || 477 visible_url, SystemTrayCommon::kDisplaySettingsSubPageName) &&
490 chrome::IsSettingsSubPage(visible_url, 478 !chrome::IsSettingsSubPage(
491 kDisplayOverscanSettingsSubPageName)); 479 visible_url,
480 SystemTrayCommon::kDisplayOverscanSettingsSubPageName);
492 } 481 }
493 482
494 void SystemTrayDelegateChromeOS::ShowIMESettings() { 483 void SystemTrayDelegateChromeOS::ShowIMESettings() {
495 content::RecordAction(base::UserMetricsAction("OpenLanguageOptionsDialog")); 484 SystemTrayCommon::ShowIMESettings();
496 ShowSettingsSubPageForActiveUser(chrome::kLanguageOptionsSubPage);
497 } 485 }
498 486
499 void SystemTrayDelegateChromeOS::ShowHelp() { 487 void SystemTrayDelegateChromeOS::ShowHelp() {
500 chrome::ShowHelpForProfile(ProfileManager::GetActiveUserProfile(), 488 SystemTrayCommon::ShowHelp();
501 chrome::HELP_SOURCE_MENU);
502 } 489 }
503 490
504 void SystemTrayDelegateChromeOS::ShowAccessibilityHelp() { 491 void SystemTrayDelegateChromeOS::ShowAccessibilityHelp() {
505 chrome::ScopedTabbedBrowserDisplayer displayer( 492 SystemTrayCommon::ShowAccessibilityHelp();
506 ProfileManager::GetActiveUserProfile());
507 accessibility::ShowAccessibilityHelp(displayer.browser());
508 } 493 }
509 494
510 void SystemTrayDelegateChromeOS::ShowAccessibilitySettings() { 495 void SystemTrayDelegateChromeOS::ShowAccessibilitySettings() {
511 content::RecordAction(base::UserMetricsAction("ShowAccessibilitySettings")); 496 SystemTrayCommon::ShowAccessibilitySettings();
512 std::string sub_page = std::string(chrome::kSearchSubPage) + "#" +
513 l10n_util::GetStringUTF8(
514 IDS_OPTIONS_SETTINGS_SECTION_TITLE_ACCESSIBILITY);
515 ShowSettingsSubPageForActiveUser(sub_page);
516 } 497 }
517 498
518 void SystemTrayDelegateChromeOS::ShowPaletteHelp() { 499 void SystemTrayDelegateChromeOS::ShowPaletteHelp() {
519 chrome::ScopedTabbedBrowserDisplayer displayer( 500 SystemTrayCommon::ShowPaletteHelp();
520 ProfileManager::GetActiveUserProfile());
521 chrome::ShowSingletonTab(displayer.browser(),
522 GURL(chrome::kChromePaletteHelpURL));
523 } 501 }
524 502
525 void SystemTrayDelegateChromeOS::ShowPaletteSettings() { 503 void SystemTrayDelegateChromeOS::ShowPaletteSettings() {
526 content::RecordAction(base::UserMetricsAction("ShowPaletteOptions")); 504 SystemTrayCommon::ShowPaletteSettings();
527 ShowSettingsSubPageForActiveUser(kPaletteSettingsSubPageName);
528 } 505 }
529 506
530 void SystemTrayDelegateChromeOS::ShowPublicAccountInfo() { 507 void SystemTrayDelegateChromeOS::ShowPublicAccountInfo() {
531 chrome::ScopedTabbedBrowserDisplayer displayer( 508 SystemTrayCommon::ShowPublicAccountInfo();
532 ProfileManager::GetActiveUserProfile());
533 chrome::ShowPolicy(displayer.browser());
534 }
535
536 void SystemTrayDelegateChromeOS::ShowSupervisedUserInfo() {
537 // TODO(antrim): find out what should we show in this case.
538 // http://crbug.com/229762
539 } 509 }
540 510
541 void SystemTrayDelegateChromeOS::ShowEnterpriseInfo() { 511 void SystemTrayDelegateChromeOS::ShowEnterpriseInfo() {
512 // TODO(mash): Refactor out SessionStateDelegate and move to SystemTrayCommon.
542 ash::LoginStatus status = GetUserLoginStatus(); 513 ash::LoginStatus status = GetUserLoginStatus();
543 ash::WmShell* wm_shell = ash::WmShell::Get(); 514 ash::WmShell* wm_shell = ash::WmShell::Get();
544 if (status == ash::LoginStatus::NOT_LOGGED_IN || 515 if (status == ash::LoginStatus::NOT_LOGGED_IN ||
545 status == ash::LoginStatus::LOCKED || 516 status == ash::LoginStatus::LOCKED ||
546 wm_shell->GetSessionStateDelegate()->IsInSecondaryLoginScreen()) { 517 wm_shell->GetSessionStateDelegate()->IsInSecondaryLoginScreen()) {
547 scoped_refptr<chromeos::HelpAppLauncher> help_app( 518 scoped_refptr<chromeos::HelpAppLauncher> help_app(
548 new chromeos::HelpAppLauncher(GetNativeWindow())); 519 new chromeos::HelpAppLauncher(GetNativeWindow()));
549 help_app->ShowHelpTopic(chromeos::HelpAppLauncher::HELP_ENTERPRISE); 520 help_app->ShowHelpTopic(chromeos::HelpAppLauncher::HELP_ENTERPRISE);
550 } else { 521 } else {
551 chrome::ScopedTabbedBrowserDisplayer displayer( 522 chrome::ScopedTabbedBrowserDisplayer displayer(
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after
765 736
766 bool SystemTrayDelegateChromeOS::GetBluetoothEnabled() { 737 bool SystemTrayDelegateChromeOS::GetBluetoothEnabled() {
767 return bluetooth_adapter_ && bluetooth_adapter_->IsPowered(); 738 return bluetooth_adapter_ && bluetooth_adapter_->IsPowered();
768 } 739 }
769 740
770 bool SystemTrayDelegateChromeOS::GetBluetoothDiscovering() { 741 bool SystemTrayDelegateChromeOS::GetBluetoothDiscovering() {
771 return bluetooth_discovery_session_ && 742 return bluetooth_discovery_session_ &&
772 bluetooth_discovery_session_->IsActive(); 743 bluetooth_discovery_session_->IsActive();
773 } 744 }
774 745
775 void SystemTrayDelegateChromeOS::ChangeProxySettings() { 746 void SystemTrayDelegateChromeOS::ShowProxySettings() {
776 CHECK(GetUserLoginStatus() == ash::LoginStatus::NOT_LOGGED_IN); 747 SystemTrayCommon::ShowProxySettings();
777 LoginDisplayHost::default_host()->OpenProxySettings();
778 } 748 }
779 749
780 ash::CastConfigDelegate* SystemTrayDelegateChromeOS::GetCastConfigDelegate() { 750 ash::CastConfigDelegate* SystemTrayDelegateChromeOS::GetCastConfigDelegate() {
781 if (!cast_config_delegate_) 751 if (!cast_config_delegate_)
782 cast_config_delegate_ = CreateCastConfigDelegate(); 752 cast_config_delegate_ = CreateCastConfigDelegate();
783 return cast_config_delegate_.get(); 753 return cast_config_delegate_.get();
784 } 754 }
785 755
786 ash::NetworkingConfigDelegate* 756 ash::NetworkingConfigDelegate*
787 SystemTrayDelegateChromeOS::GetNetworkingConfigDelegate() const { 757 SystemTrayDelegateChromeOS::GetNetworkingConfigDelegate() const {
(...skipping 541 matching lines...) Expand 10 before | Expand all | Expand 10 after
1329 LOG(WARNING) << "SystemTrayDelegateChromeOS::GetChildUserMessage call while " 1299 LOG(WARNING) << "SystemTrayDelegateChromeOS::GetChildUserMessage call while "
1330 << "ENABLE_SUPERVISED_USERS undefined."; 1300 << "ENABLE_SUPERVISED_USERS undefined.";
1331 return base::string16(); 1301 return base::string16();
1332 } 1302 }
1333 1303
1334 ash::SystemTrayDelegate* CreateSystemTrayDelegate() { 1304 ash::SystemTrayDelegate* CreateSystemTrayDelegate() {
1335 return new SystemTrayDelegateChromeOS(); 1305 return new SystemTrayDelegateChromeOS();
1336 } 1306 }
1337 1307
1338 } // namespace chromeos 1308 } // namespace chromeos
OLDNEW
« no previous file with comments | « chrome/browser/ui/ash/system_tray_delegate_chromeos.h ('k') | chrome/common/url_constants.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698