| 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 #ifndef CHROME_BROWSER_CHROMEOS_PREFERENCES_H_ | 5 #ifndef CHROME_BROWSER_CHROMEOS_PREFERENCES_H_ |
| 6 #define CHROME_BROWSER_CHROMEOS_PREFERENCES_H_ | 6 #define CHROME_BROWSER_CHROMEOS_PREFERENCES_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| 11 #include "ash/shell_observer.h" | 11 #include "ash/shell_observer.h" |
| 12 #include "base/compiler_specific.h" | 12 #include "base/compiler_specific.h" |
| 13 #include "base/prefs/pref_member.h" | 13 #include "base/prefs/pref_member.h" |
| 14 #include "chrome/browser/chromeos/language_preferences.h" | 14 #include "chrome/browser/chromeos/language_preferences.h" |
| 15 #include "chrome/browser/prefs/pref_service_syncable_observer.h" | 15 #include "chrome/browser/prefs/pref_service_syncable_observer.h" |
| 16 #include "chromeos/ime/input_method_manager.h" |
| 16 #include "components/user_manager/user_manager.h" | 17 #include "components/user_manager/user_manager.h" |
| 17 | 18 |
| 18 class PrefRegistrySimple; | 19 class PrefRegistrySimple; |
| 19 class PrefService; | 20 class PrefService; |
| 20 class PrefServiceSyncable; | 21 class PrefServiceSyncable; |
| 21 | 22 |
| 22 class TracingManager; | 23 class TracingManager; |
| 23 | 24 |
| 24 namespace user_prefs { | 25 namespace user_prefs { |
| 25 class PrefRegistrySyncable; | 26 class PrefRegistrySyncable; |
| (...skipping 19 matching lines...) Expand all Loading... |
| 45 explicit Preferences( | 46 explicit Preferences( |
| 46 input_method::InputMethodManager* input_method_manager); // for testing | 47 input_method::InputMethodManager* input_method_manager); // for testing |
| 47 virtual ~Preferences(); | 48 virtual ~Preferences(); |
| 48 | 49 |
| 49 // These method will register the prefs associated with Chrome OS settings. | 50 // These method will register the prefs associated with Chrome OS settings. |
| 50 static void RegisterPrefs(PrefRegistrySimple* registry); | 51 static void RegisterPrefs(PrefRegistrySimple* registry); |
| 51 static void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry); | 52 static void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry); |
| 52 | 53 |
| 53 // This method will initialize Chrome OS settings to values in user prefs. | 54 // This method will initialize Chrome OS settings to values in user prefs. |
| 54 // |user| is the user owning this preferences. | 55 // |user| is the user owning this preferences. |
| 55 void Init(PrefServiceSyncable* prefs, const user_manager::User* user); | 56 void Init(Profile* profile, const user_manager::User* user); |
| 56 | 57 |
| 57 void InitUserPrefsForTesting(PrefServiceSyncable* prefs, | 58 void InitUserPrefsForTesting( |
| 58 const user_manager::User* user); | 59 PrefServiceSyncable* prefs, |
| 60 const user_manager::User* user, |
| 61 scoped_refptr<input_method::InputMethodManager::State> ime_state); |
| 59 void SetInputMethodListForTesting(); | 62 void SetInputMethodListForTesting(); |
| 60 | 63 |
| 61 private: | 64 private: |
| 62 enum ApplyReason { | 65 enum ApplyReason { |
| 63 REASON_INITIALIZATION, | 66 REASON_INITIALIZATION, |
| 64 REASON_ACTIVE_USER_CHANGED, | 67 REASON_ACTIVE_USER_CHANGED, |
| 65 REASON_PREF_CHANGED | 68 REASON_PREF_CHANGED |
| 66 }; | 69 }; |
| 67 | 70 |
| 68 // Initializes all member prefs. | 71 // Initializes all member prefs. |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 100 // PrefServiceSyncableObserver implementation. | 103 // PrefServiceSyncableObserver implementation. |
| 101 virtual void OnIsSyncingChanged() OVERRIDE; | 104 virtual void OnIsSyncingChanged() OVERRIDE; |
| 102 | 105 |
| 103 // Overriden from ash::ShellObserver. | 106 // Overriden from ash::ShellObserver. |
| 104 virtual void OnTouchHudProjectionToggled(bool enabled) OVERRIDE; | 107 virtual void OnTouchHudProjectionToggled(bool enabled) OVERRIDE; |
| 105 | 108 |
| 106 // Overriden form user_manager::UserManager::UserSessionStateObserver. | 109 // Overriden form user_manager::UserManager::UserSessionStateObserver. |
| 107 virtual void ActiveUserChanged( | 110 virtual void ActiveUserChanged( |
| 108 const user_manager::User* active_user) OVERRIDE; | 111 const user_manager::User* active_user) OVERRIDE; |
| 109 | 112 |
| 113 void ActivateInputMethods(const user_manager::User* active_user); |
| 114 |
| 110 PrefServiceSyncable* prefs_; | 115 PrefServiceSyncable* prefs_; |
| 111 | 116 |
| 112 input_method::InputMethodManager* input_method_manager_; | 117 input_method::InputMethodManager* input_method_manager_; |
| 113 scoped_ptr<TracingManager> tracing_manager_; | 118 scoped_ptr<TracingManager> tracing_manager_; |
| 114 | 119 |
| 115 BooleanPrefMember performance_tracing_enabled_; | 120 BooleanPrefMember performance_tracing_enabled_; |
| 116 BooleanPrefMember tap_to_click_enabled_; | 121 BooleanPrefMember tap_to_click_enabled_; |
| 117 BooleanPrefMember tap_dragging_enabled_; | 122 BooleanPrefMember tap_dragging_enabled_; |
| 118 BooleanPrefMember three_finger_click_enabled_; | 123 BooleanPrefMember three_finger_click_enabled_; |
| 119 BooleanPrefMember natural_scroll_; | 124 BooleanPrefMember natural_scroll_; |
| (...skipping 14 matching lines...) Expand all Loading... |
| 134 BooleanPrefMember xkb_auto_repeat_enabled_; | 139 BooleanPrefMember xkb_auto_repeat_enabled_; |
| 135 IntegerPrefMember xkb_auto_repeat_delay_pref_; | 140 IntegerPrefMember xkb_auto_repeat_delay_pref_; |
| 136 IntegerPrefMember xkb_auto_repeat_interval_pref_; | 141 IntegerPrefMember xkb_auto_repeat_interval_pref_; |
| 137 | 142 |
| 138 // User owning these preferences. | 143 // User owning these preferences. |
| 139 const user_manager::User* user_; | 144 const user_manager::User* user_; |
| 140 | 145 |
| 141 // Whether user is a primary user. | 146 // Whether user is a primary user. |
| 142 bool user_is_primary_; | 147 bool user_is_primary_; |
| 143 | 148 |
| 149 // Input Methods state for this user. |
| 150 scoped_refptr<input_method::InputMethodManager::State> ime_state_; |
| 151 |
| 144 DISALLOW_COPY_AND_ASSIGN(Preferences); | 152 DISALLOW_COPY_AND_ASSIGN(Preferences); |
| 145 }; | 153 }; |
| 146 | 154 |
| 147 } // namespace chromeos | 155 } // namespace chromeos |
| 148 | 156 |
| 149 #endif // CHROME_BROWSER_CHROMEOS_PREFERENCES_H_ | 157 #endif // CHROME_BROWSER_CHROMEOS_PREFERENCES_H_ |
| OLD | NEW |