 Chromium Code Reviews
 Chromium Code Reviews Issue 2702393003:
  [ChromeOS] Expose keyboard remapping to signin screen.  (Closed)
    
  
    Issue 2702393003:
  [ChromeOS] Expose keyboard remapping to signin screen.  (Closed) 
  | OLD | NEW | 
|---|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/chromeos/preferences.h" | 5 #include "chrome/browser/chromeos/preferences.h" | 
| 6 | 6 | 
| 7 #include <vector> | 7 #include <vector> | 
| 8 | 8 | 
| 9 #include "ash/autoclick/autoclick_controller.h" | 9 #include "ash/autoclick/autoclick_controller.h" | 
| 10 #include "ash/common/accessibility_types.h" | 10 #include "ash/common/accessibility_types.h" | 
| (...skipping 379 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 390 prefs::kLanguageXkbAutoRepeatDelay, prefs, callback); | 390 prefs::kLanguageXkbAutoRepeatDelay, prefs, callback); | 
| 391 xkb_auto_repeat_interval_pref_.Init( | 391 xkb_auto_repeat_interval_pref_.Init( | 
| 392 prefs::kLanguageXkbAutoRepeatInterval, prefs, callback); | 392 prefs::kLanguageXkbAutoRepeatInterval, prefs, callback); | 
| 393 | 393 | 
| 394 wake_on_wifi_darkconnect_.Init(prefs::kWakeOnWifiDarkConnect, prefs, | 394 wake_on_wifi_darkconnect_.Init(prefs::kWakeOnWifiDarkConnect, prefs, | 
| 395 callback); | 395 callback); | 
| 396 | 396 | 
| 397 pref_change_registrar_.Init(prefs); | 397 pref_change_registrar_.Init(prefs); | 
| 398 pref_change_registrar_.Add(prefs::kResolveTimezoneByGeolocation, callback); | 398 pref_change_registrar_.Add(prefs::kResolveTimezoneByGeolocation, callback); | 
| 399 pref_change_registrar_.Add(prefs::kUse24HourClock, callback); | 399 pref_change_registrar_.Add(prefs::kUse24HourClock, callback); | 
| 400 pref_change_registrar_.Add(prefs::kLanguageRemapSearchKeyTo, callback); | |
| 401 pref_change_registrar_.Add(prefs::kLanguageRemapControlKeyTo, callback); | |
| 402 pref_change_registrar_.Add(prefs::kLanguageRemapAltKeyTo, callback); | |
| 403 pref_change_registrar_.Add(prefs::kLanguageRemapCapsLockKeyTo, callback); | |
| 404 pref_change_registrar_.Add(prefs::kLanguageRemapEscapeKeyTo, callback); | |
| 405 pref_change_registrar_.Add(prefs::kLanguageRemapBackspaceKeyTo, callback); | |
| 406 pref_change_registrar_.Add(prefs::kLanguageRemapDiamondKeyTo, callback); | |
| 400 } | 407 } | 
| 401 | 408 | 
| 402 void Preferences::Init(Profile* profile, const user_manager::User* user) { | 409 void Preferences::Init(Profile* profile, const user_manager::User* user) { | 
| 403 DCHECK(profile); | 410 DCHECK(profile); | 
| 404 DCHECK(user); | 411 DCHECK(user); | 
| 405 sync_preferences::PrefServiceSyncable* prefs = | 412 sync_preferences::PrefServiceSyncable* prefs = | 
| 406 PrefServiceSyncableFromProfile(profile); | 413 PrefServiceSyncableFromProfile(profile); | 
| 407 // This causes OnIsSyncingChanged to be called when the value of | 414 // This causes OnIsSyncingChanged to be called when the value of | 
| 408 // PrefService::IsSyncing() changes. | 415 // PrefService::IsSyncing() changes. | 
| 409 prefs->AddObserver(this); | 416 prefs->AddObserver(this); | 
| (...skipping 295 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 705 } | 712 } | 
| 706 } | 713 } | 
| 707 | 714 | 
| 708 if (pref_name == prefs::kUse24HourClock || | 715 if (pref_name == prefs::kUse24HourClock || | 
| 709 reason != REASON_ACTIVE_USER_CHANGED) { | 716 reason != REASON_ACTIVE_USER_CHANGED) { | 
| 710 const bool value = prefs_->GetBoolean(prefs::kUse24HourClock); | 717 const bool value = prefs_->GetBoolean(prefs::kUse24HourClock); | 
| 711 user_manager::known_user::SetBooleanPref(user_->GetAccountId(), | 718 user_manager::known_user::SetBooleanPref(user_->GetAccountId(), | 
| 712 prefs::kUse24HourClock, value); | 719 prefs::kUse24HourClock, value); | 
| 713 } | 720 } | 
| 714 | 721 | 
| 722 if (pref_name == prefs::kLanguageRemapSearchKeyTo || | |
| 723 reason != REASON_ACTIVE_USER_CHANGED) { | |
| 724 const int value = prefs_->GetInteger(prefs::kLanguageRemapSearchKeyTo); | |
| 725 user_manager::known_user::SetIntegerPref( | |
| 726 user_->GetAccountId(), prefs::kLanguageRemapSearchKeyTo, value); | |
| 727 } | |
| 728 | |
| 729 if (pref_name == prefs::kLanguageRemapControlKeyTo || | |
| 730 reason != REASON_ACTIVE_USER_CHANGED) { | |
| 731 const int value = prefs_->GetInteger(prefs::kLanguageRemapControlKeyTo); | |
| 732 user_manager::known_user::SetIntegerPref( | |
| 733 user_->GetAccountId(), prefs::kLanguageRemapControlKeyTo, value); | |
| 734 } | |
| 735 | |
| 736 if (pref_name == prefs::kLanguageRemapAltKeyTo || | |
| 737 reason != REASON_ACTIVE_USER_CHANGED) { | |
| 738 const int value = prefs_->GetInteger(prefs::kLanguageRemapAltKeyTo); | |
| 739 user_manager::known_user::SetIntegerPref( | |
| 740 user_->GetAccountId(), prefs::kLanguageRemapAltKeyTo, value); | |
| 741 } | |
| 742 | |
| 743 if (pref_name == prefs::kLanguageRemapCapsLockKeyTo || | |
| 744 reason != REASON_ACTIVE_USER_CHANGED) { | |
| 745 const int value = prefs_->GetInteger(prefs::kLanguageRemapCapsLockKeyTo); | |
| 746 user_manager::known_user::SetIntegerPref( | |
| 747 user_->GetAccountId(), prefs::kLanguageRemapCapsLockKeyTo, value); | |
| 748 } | |
| 749 | |
| 750 if (pref_name == prefs::kLanguageRemapEscapeKeyTo || | |
| 751 reason != REASON_ACTIVE_USER_CHANGED) { | |
| 752 const int value = prefs_->GetInteger(prefs::kLanguageRemapEscapeKeyTo); | |
| 753 user_manager::known_user::SetIntegerPref( | |
| 754 user_->GetAccountId(), prefs::kLanguageRemapEscapeKeyTo, value); | |
| 755 } | |
| 756 | |
| 757 if (pref_name == prefs::kLanguageRemapBackspaceKeyTo || | |
| 758 reason != REASON_ACTIVE_USER_CHANGED) { | |
| 759 const int value = prefs_->GetInteger(prefs::kLanguageRemapBackspaceKeyTo); | |
| 760 user_manager::known_user::SetIntegerPref( | |
| 761 user_->GetAccountId(), prefs::kLanguageRemapBackspaceKeyTo, value); | |
| 762 } | |
| 763 | |
| 764 if (pref_name == prefs::kLanguageRemapDiamondKeyTo || | |
| 765 reason != REASON_ACTIVE_USER_CHANGED) { | |
| 766 const int value = prefs_->GetInteger(prefs::kLanguageRemapDiamondKeyTo); | |
| 767 user_manager::known_user::SetIntegerPref( | |
| 768 user_->GetAccountId(), prefs::kLanguageRemapDiamondKeyTo, value); | |
| 769 } | |
| 
xiyuan
2017/02/22 18:50:58
Can we use a list and a loop instead?
e.g.
const
 
xdai1
2017/02/22 19:26:30
Done.
 | |
| 770 | |
| 715 system::InputDeviceSettings::Get()->UpdateTouchDevicesStatusFromPrefs(); | 771 system::InputDeviceSettings::Get()->UpdateTouchDevicesStatusFromPrefs(); | 
| 716 } | 772 } | 
| 717 | 773 | 
| 718 void Preferences::OnIsSyncingChanged() { | 774 void Preferences::OnIsSyncingChanged() { | 
| 719 DVLOG(1) << "OnIsSyncingChanged"; | 775 DVLOG(1) << "OnIsSyncingChanged"; | 
| 720 ForceNaturalScrollDefault(); | 776 ForceNaturalScrollDefault(); | 
| 721 } | 777 } | 
| 722 | 778 | 
| 723 void Preferences::ForceNaturalScrollDefault() { | 779 void Preferences::ForceNaturalScrollDefault() { | 
| 724 DVLOG(1) << "ForceNaturalScrollDefault"; | 780 DVLOG(1) << "ForceNaturalScrollDefault"; | 
| (...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 806 touch_hud_projection_enabled_.SetValue(enabled); | 862 touch_hud_projection_enabled_.SetValue(enabled); | 
| 807 } | 863 } | 
| 808 | 864 | 
| 809 void Preferences::ActiveUserChanged(const user_manager::User* active_user) { | 865 void Preferences::ActiveUserChanged(const user_manager::User* active_user) { | 
| 810 if (active_user != user_) | 866 if (active_user != user_) | 
| 811 return; | 867 return; | 
| 812 ApplyPreferences(REASON_ACTIVE_USER_CHANGED, ""); | 868 ApplyPreferences(REASON_ACTIVE_USER_CHANGED, ""); | 
| 813 } | 869 } | 
| 814 | 870 | 
| 815 } // namespace chromeos | 871 } // namespace chromeos | 
| OLD | NEW |