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

Side by Side Diff: chrome/browser/chromeos/preferences.cc

Issue 11293249: Remove PrefObserver usage, batch 3. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge to LKGR Created 8 years, 1 month 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 | Annotate | Revision Log
OLDNEW
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 "base/chromeos/chromeos_version.h" 7 #include "base/chromeos/chromeos_version.h"
8 #include "base/command_line.h" 8 #include "base/command_line.h"
9 #include "base/i18n/time_formatting.h" 9 #include "base/i18n/time_formatting.h"
10 #include "base/metrics/histogram.h" 10 #include "base/metrics/histogram.h"
(...skipping 272 matching lines...) Expand 10 before | Expand all | Expand 10 after
283 prefs->RegisterBooleanPref(prefs::kExternalStorageDisabled, 283 prefs->RegisterBooleanPref(prefs::kExternalStorageDisabled,
284 false, 284 false,
285 PrefService::UNSYNCABLE_PREF); 285 PrefService::UNSYNCABLE_PREF);
286 286
287 RegisterDisplayPrefs(prefs); 287 RegisterDisplayPrefs(prefs);
288 } 288 }
289 289
290 void Preferences::InitUserPrefs(PrefService* prefs) { 290 void Preferences::InitUserPrefs(PrefService* prefs) {
291 prefs_ = prefs; 291 prefs_ = prefs;
292 292
293 tap_to_click_enabled_.Init(prefs::kTapToClickEnabled, prefs, this); 293 BooleanPrefMember::NamedChangeCallback callback =
294 tap_dragging_enabled_.Init(prefs::kTapDraggingEnabled, prefs, this); 294 base::Bind(&Preferences::OnPreferenceChanged, base::Unretained(this));
295
296 tap_to_click_enabled_.Init(prefs::kTapToClickEnabled, prefs, callback);
297 tap_dragging_enabled_.Init(prefs::kTapDraggingEnabled, prefs, callback);
295 three_finger_click_enabled_.Init(prefs::kEnableTouchpadThreeFingerClick, 298 three_finger_click_enabled_.Init(prefs::kEnableTouchpadThreeFingerClick,
296 prefs, this); 299 prefs, callback);
297 three_finger_swipe_enabled_.Init(prefs::kEnableTouchpadThreeFingerSwipe, 300 three_finger_swipe_enabled_.Init(prefs::kEnableTouchpadThreeFingerSwipe,
298 prefs, this); 301 prefs, callback);
299 natural_scroll_.Init(prefs::kNaturalScroll, prefs, this); 302 natural_scroll_.Init(prefs::kNaturalScroll, prefs, callback);
300 accessibility_enabled_.Init(prefs::kSpokenFeedbackEnabled, prefs, this); 303 accessibility_enabled_.Init(prefs::kSpokenFeedbackEnabled, prefs, callback);
301 mouse_sensitivity_.Init(prefs::kMouseSensitivity, prefs, this); 304 mouse_sensitivity_.Init(prefs::kMouseSensitivity, prefs, callback);
302 touchpad_sensitivity_.Init(prefs::kTouchpadSensitivity, prefs, this); 305 touchpad_sensitivity_.Init(prefs::kTouchpadSensitivity, prefs, callback);
303 use_24hour_clock_.Init(prefs::kUse24HourClock, prefs, this); 306 use_24hour_clock_.Init(prefs::kUse24HourClock, prefs, callback);
304 disable_drive_.Init(prefs::kDisableDrive, prefs, this); 307 disable_drive_.Init(prefs::kDisableDrive, prefs, callback);
305 disable_drive_over_cellular_.Init(prefs::kDisableDriveOverCellular, 308 disable_drive_over_cellular_.Init(prefs::kDisableDriveOverCellular,
306 prefs, this); 309 prefs, callback);
307 disable_drive_hosted_files_.Init(prefs::kDisableDriveHostedFiles, 310 disable_drive_hosted_files_.Init(prefs::kDisableDriveHostedFiles,
308 prefs, this); 311 prefs, callback);
309 download_default_directory_.Init(prefs::kDownloadDefaultDirectory, 312 download_default_directory_.Init(prefs::kDownloadDefaultDirectory,
310 prefs, this); 313 prefs, callback);
311 primary_mouse_button_right_.Init(prefs::kPrimaryMouseButtonRight, 314 primary_mouse_button_right_.Init(prefs::kPrimaryMouseButtonRight,
312 prefs, this); 315 prefs, callback);
313 preferred_languages_.Init(prefs::kLanguagePreferredLanguages, 316 preferred_languages_.Init(prefs::kLanguagePreferredLanguages,
314 prefs, this); 317 prefs, callback);
315 preload_engines_.Init(prefs::kLanguagePreloadEngines, prefs, this); 318 preload_engines_.Init(prefs::kLanguagePreloadEngines, prefs, callback);
316 filtered_extension_imes_.Init(prefs::kLanguageFilteredExtensionImes, 319 filtered_extension_imes_.Init(prefs::kLanguageFilteredExtensionImes,
317 prefs, this); 320 prefs, callback);
318 current_input_method_.Init(prefs::kLanguageCurrentInputMethod, prefs, this); 321 current_input_method_.Init(prefs::kLanguageCurrentInputMethod,
319 previous_input_method_.Init(prefs::kLanguagePreviousInputMethod, prefs, this); 322 prefs, callback);
323 previous_input_method_.Init(prefs::kLanguagePreviousInputMethod,
324 prefs, callback);
320 325
321 for (size_t i = 0; i < language_prefs::kNumChewingBooleanPrefs; ++i) { 326 for (size_t i = 0; i < language_prefs::kNumChewingBooleanPrefs; ++i) {
322 chewing_boolean_prefs_[i].Init( 327 chewing_boolean_prefs_[i].Init(
323 language_prefs::kChewingBooleanPrefs[i].pref_name, prefs, this); 328 language_prefs::kChewingBooleanPrefs[i].pref_name, prefs, callback);
324 } 329 }
325 for (size_t i = 0; i < language_prefs::kNumChewingMultipleChoicePrefs; ++i) { 330 for (size_t i = 0; i < language_prefs::kNumChewingMultipleChoicePrefs; ++i) {
326 chewing_multiple_choice_prefs_[i].Init( 331 chewing_multiple_choice_prefs_[i].Init(
327 language_prefs::kChewingMultipleChoicePrefs[i].pref_name, prefs, this); 332 language_prefs::kChewingMultipleChoicePrefs[i].pref_name,
333 prefs, callback);
328 } 334 }
329 chewing_hsu_sel_key_type_.Init( 335 chewing_hsu_sel_key_type_.Init(
330 language_prefs::kChewingHsuSelKeyType.pref_name, prefs, this); 336 language_prefs::kChewingHsuSelKeyType.pref_name, prefs, callback);
331 for (size_t i = 0; i < language_prefs::kNumChewingIntegerPrefs; ++i) { 337 for (size_t i = 0; i < language_prefs::kNumChewingIntegerPrefs; ++i) {
332 chewing_integer_prefs_[i].Init( 338 chewing_integer_prefs_[i].Init(
333 language_prefs::kChewingIntegerPrefs[i].pref_name, prefs, this); 339 language_prefs::kChewingIntegerPrefs[i].pref_name, prefs, callback);
334 } 340 }
335 hangul_keyboard_.Init(prefs::kLanguageHangulKeyboard, prefs, this); 341 hangul_keyboard_.Init(prefs::kLanguageHangulKeyboard, prefs, callback);
336 hangul_hanja_binding_keys_.Init( 342 hangul_hanja_binding_keys_.Init(
337 prefs::kLanguageHangulHanjaBindingKeys, prefs, this); 343 prefs::kLanguageHangulHanjaBindingKeys, prefs, callback);
338 for (size_t i = 0; i < language_prefs::kNumPinyinBooleanPrefs; ++i) { 344 for (size_t i = 0; i < language_prefs::kNumPinyinBooleanPrefs; ++i) {
339 pinyin_boolean_prefs_[i].Init( 345 pinyin_boolean_prefs_[i].Init(
340 language_prefs::kPinyinBooleanPrefs[i].pref_name, prefs, this); 346 language_prefs::kPinyinBooleanPrefs[i].pref_name, prefs, callback);
341 } 347 }
342 for (size_t i = 0; i < language_prefs::kNumPinyinIntegerPrefs; ++i) { 348 for (size_t i = 0; i < language_prefs::kNumPinyinIntegerPrefs; ++i) {
343 pinyin_int_prefs_[i].Init( 349 pinyin_int_prefs_[i].Init(
344 language_prefs::kPinyinIntegerPrefs[i].pref_name, prefs, this); 350 language_prefs::kPinyinIntegerPrefs[i].pref_name, prefs, callback);
345 } 351 }
346 pinyin_double_pinyin_schema_.Init( 352 pinyin_double_pinyin_schema_.Init(
347 language_prefs::kPinyinDoublePinyinSchema.pref_name, prefs, this); 353 language_prefs::kPinyinDoublePinyinSchema.pref_name, prefs, callback);
348 for (size_t i = 0; i < language_prefs::kNumMozcBooleanPrefs; ++i) { 354 for (size_t i = 0; i < language_prefs::kNumMozcBooleanPrefs; ++i) {
349 mozc_boolean_prefs_[i].Init( 355 mozc_boolean_prefs_[i].Init(
350 language_prefs::kMozcBooleanPrefs[i].pref_name, prefs, this); 356 language_prefs::kMozcBooleanPrefs[i].pref_name, prefs, callback);
351 } 357 }
352 for (size_t i = 0; i < language_prefs::kNumMozcMultipleChoicePrefs; ++i) { 358 for (size_t i = 0; i < language_prefs::kNumMozcMultipleChoicePrefs; ++i) {
353 mozc_multiple_choice_prefs_[i].Init( 359 mozc_multiple_choice_prefs_[i].Init(
354 language_prefs::kMozcMultipleChoicePrefs[i].pref_name, prefs, this); 360 language_prefs::kMozcMultipleChoicePrefs[i].pref_name, prefs, callback);
355 } 361 }
356 for (size_t i = 0; i < language_prefs::kNumMozcIntegerPrefs; ++i) { 362 for (size_t i = 0; i < language_prefs::kNumMozcIntegerPrefs; ++i) {
357 mozc_integer_prefs_[i].Init( 363 mozc_integer_prefs_[i].Init(
358 language_prefs::kMozcIntegerPrefs[i].pref_name, prefs, this); 364 language_prefs::kMozcIntegerPrefs[i].pref_name, prefs, callback);
359 } 365 }
360 xkb_auto_repeat_enabled_.Init( 366 xkb_auto_repeat_enabled_.Init(
361 prefs::kLanguageXkbAutoRepeatEnabled, prefs, this); 367 prefs::kLanguageXkbAutoRepeatEnabled, prefs, callback);
362 xkb_auto_repeat_delay_pref_.Init( 368 xkb_auto_repeat_delay_pref_.Init(
363 prefs::kLanguageXkbAutoRepeatDelay, prefs, this); 369 prefs::kLanguageXkbAutoRepeatDelay, prefs, callback);
364 xkb_auto_repeat_interval_pref_.Init( 370 xkb_auto_repeat_interval_pref_.Init(
365 prefs::kLanguageXkbAutoRepeatInterval, prefs, this); 371 prefs::kLanguageXkbAutoRepeatInterval, prefs, callback);
366 372
367 enable_screen_lock_.Init(prefs::kEnableScreenLock, prefs, this); 373 enable_screen_lock_.Init(prefs::kEnableScreenLock, prefs, callback);
368 374
369 enable_drm_.Init(prefs::kEnableCrosDRM, prefs, this); 375 enable_drm_.Init(prefs::kEnableCrosDRM, prefs, callback);
370 } 376 }
371 377
372 void Preferences::Init(PrefService* prefs) { 378 void Preferences::Init(PrefService* prefs) {
373 InitUserPrefs(prefs); 379 InitUserPrefs(prefs);
374 380
375 // Initialize preferences to currently saved state. 381 // Initialize preferences to currently saved state.
376 NotifyPrefChanged(NULL); 382 NotifyPrefChanged(NULL);
377 383
378 // If a guest is logged in, initialize the prefs as if this is the first 384 // If a guest is logged in, initialize the prefs as if this is the first
379 // login. 385 // login.
380 if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kGuestSession)) { 386 if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kGuestSession)) {
381 LoginUtils::Get()->SetFirstLoginPrefs(prefs); 387 LoginUtils::Get()->SetFirstLoginPrefs(prefs);
382 } 388 }
383 389
384 NotifyDisplayPrefChanged(prefs); 390 NotifyDisplayPrefChanged(prefs);
385 } 391 }
386 392
387 void Preferences::InitUserPrefsForTesting(PrefService* prefs) { 393 void Preferences::InitUserPrefsForTesting(PrefService* prefs) {
388 InitUserPrefs(prefs); 394 InitUserPrefs(prefs);
389 } 395 }
390 396
391 void Preferences::SetInputMethodListForTesting() { 397 void Preferences::SetInputMethodListForTesting() {
392 SetInputMethodList(); 398 SetInputMethodList();
393 } 399 }
394 400
395 void Preferences::OnPreferenceChanged(PrefServiceBase* service, 401 void Preferences::OnPreferenceChanged(const std::string& pref_name) {
396 const std::string& pref_name) {
397 NotifyPrefChanged(&pref_name); 402 NotifyPrefChanged(&pref_name);
398 } 403 }
399 404
400 void Preferences::NotifyPrefChanged(const std::string* pref_name) { 405 void Preferences::NotifyPrefChanged(const std::string* pref_name) {
401 if (!pref_name || *pref_name == prefs::kTapToClickEnabled) { 406 if (!pref_name || *pref_name == prefs::kTapToClickEnabled) {
402 const bool enabled = tap_to_click_enabled_.GetValue(); 407 const bool enabled = tap_to_click_enabled_.GetValue();
403 system::touchpad_settings::SetTapToClick(enabled); 408 system::touchpad_settings::SetTapToClick(enabled);
404 if (pref_name) 409 if (pref_name)
405 UMA_HISTOGRAM_BOOLEAN("Touchpad.TapToClick.Changed", enabled); 410 UMA_HISTOGRAM_BOOLEAN("Touchpad.TapToClick.Changed", enabled);
406 else 411 else
(...skipping 349 matching lines...) Expand 10 before | Expand all | Expand 10 after
756 761
757 input_method::AutoRepeatRate rate; 762 input_method::AutoRepeatRate rate;
758 rate.initial_delay_in_ms = xkb_auto_repeat_delay_pref_.GetValue(); 763 rate.initial_delay_in_ms = xkb_auto_repeat_delay_pref_.GetValue();
759 rate.repeat_interval_in_ms = xkb_auto_repeat_interval_pref_.GetValue(); 764 rate.repeat_interval_in_ms = xkb_auto_repeat_interval_pref_.GetValue();
760 DCHECK(rate.initial_delay_in_ms > 0); 765 DCHECK(rate.initial_delay_in_ms > 0);
761 DCHECK(rate.repeat_interval_in_ms > 0); 766 DCHECK(rate.repeat_interval_in_ms > 0);
762 input_method::XKeyboard::SetAutoRepeatRate(rate); 767 input_method::XKeyboard::SetAutoRepeatRate(rate);
763 } 768 }
764 769
765 } // namespace chromeos 770 } // namespace chromeos
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/preferences.h ('k') | chrome/browser/chromeos/system/ash_system_tray_delegate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698