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

Side by Side Diff: chrome/browser/ui/prefs/prefs_tab_helper.cc

Issue 14622003: components: Move PrefRegistrySyncable into user_prefs namespace. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fixes Created 7 years, 7 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 | 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/ui/prefs/prefs_tab_helper.h" 5 #include "chrome/browser/ui/prefs/prefs_tab_helper.h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/prefs/overlay_user_pref_store.h" 9 #include "base/prefs/overlay_user_pref_store.h"
10 #include "base/prefs/pref_service.h" 10 #include "base/prefs/pref_service.h"
(...skipping 23 matching lines...) Expand all
34 #include "chrome/browser/themes/theme_service_factory.h" 34 #include "chrome/browser/themes/theme_service_factory.h"
35 #endif 35 #endif
36 36
37 using content::WebContents; 37 using content::WebContents;
38 38
39 DEFINE_WEB_CONTENTS_USER_DATA_KEY(PrefsTabHelper); 39 DEFINE_WEB_CONTENTS_USER_DATA_KEY(PrefsTabHelper);
40 40
41 namespace { 41 namespace {
42 42
43 // Registers prefs only used for migration. 43 // Registers prefs only used for migration.
44 void RegisterPrefsToMigrate(PrefRegistrySyncable* prefs) { 44 void RegisterPrefsToMigrate(user_prefs::PrefRegistrySyncable* prefs) {
45 prefs->RegisterLocalizedStringPref(prefs::kWebKitOldStandardFontFamily, 45 prefs->RegisterLocalizedStringPref(
46 IDS_STANDARD_FONT_FAMILY, 46 prefs::kWebKitOldStandardFontFamily,
47 PrefRegistrySyncable::UNSYNCABLE_PREF); 47 IDS_STANDARD_FONT_FAMILY,
48 prefs->RegisterLocalizedStringPref(prefs::kWebKitOldFixedFontFamily, 48 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
49 IDS_FIXED_FONT_FAMILY, 49 prefs->RegisterLocalizedStringPref(
50 PrefRegistrySyncable::UNSYNCABLE_PREF); 50 prefs::kWebKitOldFixedFontFamily,
51 prefs->RegisterLocalizedStringPref(prefs::kWebKitOldSerifFontFamily, 51 IDS_FIXED_FONT_FAMILY,
52 IDS_SERIF_FONT_FAMILY, 52 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
53 PrefRegistrySyncable::UNSYNCABLE_PREF); 53 prefs->RegisterLocalizedStringPref(
54 prefs->RegisterLocalizedStringPref(prefs::kWebKitOldSansSerifFontFamily, 54 prefs::kWebKitOldSerifFontFamily,
55 IDS_SANS_SERIF_FONT_FAMILY, 55 IDS_SERIF_FONT_FAMILY,
56 PrefRegistrySyncable::UNSYNCABLE_PREF); 56 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
57 prefs->RegisterLocalizedStringPref(prefs::kWebKitOldCursiveFontFamily, 57 prefs->RegisterLocalizedStringPref(
58 IDS_CURSIVE_FONT_FAMILY, 58 prefs::kWebKitOldSansSerifFontFamily,
59 PrefRegistrySyncable::UNSYNCABLE_PREF); 59 IDS_SANS_SERIF_FONT_FAMILY,
60 prefs->RegisterLocalizedStringPref(prefs::kWebKitOldFantasyFontFamily, 60 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
61 IDS_FANTASY_FONT_FAMILY, 61 prefs->RegisterLocalizedStringPref(
62 PrefRegistrySyncable::UNSYNCABLE_PREF); 62 prefs::kWebKitOldCursiveFontFamily,
63 prefs->RegisterLocalizedStringPref(prefs::kGlobalDefaultCharset, 63 IDS_CURSIVE_FONT_FAMILY,
64 IDS_DEFAULT_ENCODING, 64 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
65 PrefRegistrySyncable::SYNCABLE_PREF); 65 prefs->RegisterLocalizedStringPref(
66 prefs->RegisterLocalizedIntegerPref(prefs::kWebKitGlobalDefaultFontSize, 66 prefs::kWebKitOldFantasyFontFamily,
67 IDS_DEFAULT_FONT_SIZE, 67 IDS_FANTASY_FONT_FAMILY,
68 PrefRegistrySyncable::UNSYNCABLE_PREF); 68 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
69 prefs->RegisterLocalizedIntegerPref(prefs::kWebKitGlobalDefaultFixedFontSize, 69 prefs->RegisterLocalizedStringPref(
70 IDS_DEFAULT_FIXED_FONT_SIZE, 70 prefs::kGlobalDefaultCharset,
71 PrefRegistrySyncable::UNSYNCABLE_PREF); 71 IDS_DEFAULT_ENCODING,
72 prefs->RegisterLocalizedIntegerPref(prefs::kWebKitGlobalMinimumFontSize, 72 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
73 IDS_MINIMUM_FONT_SIZE, 73 prefs->RegisterLocalizedIntegerPref(
74 PrefRegistrySyncable::UNSYNCABLE_PREF); 74 prefs::kWebKitGlobalDefaultFontSize,
75 IDS_DEFAULT_FONT_SIZE,
76 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
77 prefs->RegisterLocalizedIntegerPref(
78 prefs::kWebKitGlobalDefaultFixedFontSize,
79 IDS_DEFAULT_FIXED_FONT_SIZE,
80 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
81 prefs->RegisterLocalizedIntegerPref(
82 prefs::kWebKitGlobalMinimumFontSize,
83 IDS_MINIMUM_FONT_SIZE,
84 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
75 prefs->RegisterLocalizedIntegerPref( 85 prefs->RegisterLocalizedIntegerPref(
76 prefs::kWebKitGlobalMinimumLogicalFontSize, 86 prefs::kWebKitGlobalMinimumLogicalFontSize,
77 IDS_MINIMUM_LOGICAL_FONT_SIZE, 87 IDS_MINIMUM_LOGICAL_FONT_SIZE,
78 PrefRegistrySyncable::UNSYNCABLE_PREF); 88 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
79 prefs->RegisterLocalizedStringPref(prefs::kWebKitGlobalStandardFontFamily, 89 prefs->RegisterLocalizedStringPref(
80 IDS_STANDARD_FONT_FAMILY, 90 prefs::kWebKitGlobalStandardFontFamily,
81 PrefRegistrySyncable::UNSYNCABLE_PREF); 91 IDS_STANDARD_FONT_FAMILY,
82 prefs->RegisterLocalizedStringPref(prefs::kWebKitGlobalFixedFontFamily, 92 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
83 IDS_FIXED_FONT_FAMILY, 93 prefs->RegisterLocalizedStringPref(
84 PrefRegistrySyncable::UNSYNCABLE_PREF); 94 prefs::kWebKitGlobalFixedFontFamily,
85 prefs->RegisterLocalizedStringPref(prefs::kWebKitGlobalSerifFontFamily, 95 IDS_FIXED_FONT_FAMILY,
86 IDS_SERIF_FONT_FAMILY, 96 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
87 PrefRegistrySyncable::UNSYNCABLE_PREF); 97 prefs->RegisterLocalizedStringPref(
88 prefs->RegisterLocalizedStringPref(prefs::kWebKitGlobalSansSerifFontFamily, 98 prefs::kWebKitGlobalSerifFontFamily,
89 IDS_SANS_SERIF_FONT_FAMILY, 99 IDS_SERIF_FONT_FAMILY,
90 PrefRegistrySyncable::UNSYNCABLE_PREF); 100 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
91 prefs->RegisterLocalizedStringPref(prefs::kWebKitGlobalCursiveFontFamily, 101 prefs->RegisterLocalizedStringPref(
92 IDS_CURSIVE_FONT_FAMILY, 102 prefs::kWebKitGlobalSansSerifFontFamily,
93 PrefRegistrySyncable::UNSYNCABLE_PREF); 103 IDS_SANS_SERIF_FONT_FAMILY,
94 prefs->RegisterLocalizedStringPref(prefs::kWebKitGlobalFantasyFontFamily, 104 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
95 IDS_FANTASY_FONT_FAMILY, 105 prefs->RegisterLocalizedStringPref(
96 PrefRegistrySyncable::UNSYNCABLE_PREF); 106 prefs::kWebKitGlobalCursiveFontFamily,
107 IDS_CURSIVE_FONT_FAMILY,
108 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
109 prefs->RegisterLocalizedStringPref(
110 prefs::kWebKitGlobalFantasyFontFamily,
111 IDS_FANTASY_FONT_FAMILY,
112 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
97 } 113 }
98 114
99 // The list of prefs we want to observe. 115 // The list of prefs we want to observe.
100 const char* kPrefsToObserve[] = { 116 const char* kPrefsToObserve[] = {
101 prefs::kDefaultCharset, 117 prefs::kDefaultCharset,
102 prefs::kWebKitAllowDisplayingInsecureContent, 118 prefs::kWebKitAllowDisplayingInsecureContent,
103 prefs::kWebKitAllowRunningInsecureContent, 119 prefs::kWebKitAllowRunningInsecureContent,
104 prefs::kWebKitDefaultFixedFontSize, 120 prefs::kWebKitDefaultFixedFontSize,
105 prefs::kWebKitDefaultFontSize, 121 prefs::kWebKitDefaultFontSize,
106 #if defined(OS_ANDROID) 122 #if defined(OS_ANDROID)
(...skipping 11 matching lines...) Expand all
118 }; 134 };
119 135
120 const int kPrefsToObserveLength = arraysize(kPrefsToObserve); 136 const int kPrefsToObserveLength = arraysize(kPrefsToObserve);
121 137
122 // Registers a preference under the path |pref_name| for each script used for 138 // Registers a preference under the path |pref_name| for each script used for
123 // per-script font prefs. 139 // per-script font prefs.
124 // For example, for WEBKIT_WEBPREFS_FONTS_SERIF ("fonts.serif"): 140 // For example, for WEBKIT_WEBPREFS_FONTS_SERIF ("fonts.serif"):
125 // "fonts.serif.Arab", "fonts.serif.Hang", etc. are registered. 141 // "fonts.serif.Arab", "fonts.serif.Hang", etc. are registered.
126 // |fonts_with_defaults| contains all |pref_names| already registered since they 142 // |fonts_with_defaults| contains all |pref_names| already registered since they
127 // have a specified default value. 143 // have a specified default value.
128 void RegisterFontFamilyPrefs(PrefRegistrySyncable* registry, 144 void RegisterFontFamilyPrefs(user_prefs::PrefRegistrySyncable* registry,
129 const std::set<std::string>& fonts_with_defaults) { 145 const std::set<std::string>& fonts_with_defaults) {
130 146
131 // Expand the font concatenated with script name so this stays at RO memory 147 // Expand the font concatenated with script name so this stays at RO memory
132 // rather than allocated in heap. 148 // rather than allocated in heap.
133 static const char* const kFontFamilyMap[] = { 149 static const char* const kFontFamilyMap[] = {
134 #define EXPAND_SCRIPT_FONT(map_name, script_name) map_name "." script_name, 150 #define EXPAND_SCRIPT_FONT(map_name, script_name) map_name "." script_name,
135 151
136 #include "chrome/common/pref_font_script_names-inl.h" 152 #include "chrome/common/pref_font_script_names-inl.h"
137 ALL_FONT_SCRIPTS(WEBKIT_WEBPREFS_FONTS_CURSIVE) 153 ALL_FONT_SCRIPTS(WEBKIT_WEBPREFS_FONTS_CURSIVE)
138 ALL_FONT_SCRIPTS(WEBKIT_WEBPREFS_FONTS_FANTASY) 154 ALL_FONT_SCRIPTS(WEBKIT_WEBPREFS_FONTS_FANTASY)
139 ALL_FONT_SCRIPTS(WEBKIT_WEBPREFS_FONTS_FIXED) 155 ALL_FONT_SCRIPTS(WEBKIT_WEBPREFS_FONTS_FIXED)
140 ALL_FONT_SCRIPTS(WEBKIT_WEBPREFS_FONTS_PICTOGRAPH) 156 ALL_FONT_SCRIPTS(WEBKIT_WEBPREFS_FONTS_PICTOGRAPH)
141 ALL_FONT_SCRIPTS(WEBKIT_WEBPREFS_FONTS_SANSERIF) 157 ALL_FONT_SCRIPTS(WEBKIT_WEBPREFS_FONTS_SANSERIF)
142 ALL_FONT_SCRIPTS(WEBKIT_WEBPREFS_FONTS_SERIF) 158 ALL_FONT_SCRIPTS(WEBKIT_WEBPREFS_FONTS_SERIF)
143 ALL_FONT_SCRIPTS(WEBKIT_WEBPREFS_FONTS_STANDARD) 159 ALL_FONT_SCRIPTS(WEBKIT_WEBPREFS_FONTS_STANDARD)
144 160
145 #undef EXPAND_SCRIPT_FONT 161 #undef EXPAND_SCRIPT_FONT
146 }; 162 };
147 163
148 for (size_t i = 0; i < arraysize(kFontFamilyMap); ++i) { 164 for (size_t i = 0; i < arraysize(kFontFamilyMap); ++i) {
149 const char* pref_name = kFontFamilyMap[i]; 165 const char* pref_name = kFontFamilyMap[i];
150 if (fonts_with_defaults.find(pref_name) == fonts_with_defaults.end()) { 166 if (fonts_with_defaults.find(pref_name) == fonts_with_defaults.end()) {
151 // We haven't already set a default value for this font preference, so set 167 // We haven't already set a default value for this font preference, so set
152 // an empty string as the default. 168 // an empty string as the default.
153 registry->RegisterStringPref( 169 registry->RegisterStringPref(
154 pref_name, std::string(), PrefRegistrySyncable::UNSYNCABLE_PREF); 170 pref_name,
171 std::string(),
172 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
155 } 173 }
156 } 174 }
157 } 175 }
158 176
159 #if !defined(OS_ANDROID) 177 #if !defined(OS_ANDROID)
160 // Registers |obs| to observe per-script font prefs under the path |map_name|. 178 // Registers |obs| to observe per-script font prefs under the path |map_name|.
161 // On android, there's no exposed way to change these prefs, so we can save 179 // On android, there's no exposed way to change these prefs, so we can save
162 // ~715KB of heap and some startup cycles by avoiding observing these prefs 180 // ~715KB of heap and some startup cycles by avoiding observing these prefs
163 // since they will never change. 181 // since they will never change.
164 void RegisterFontFamilyMapObserver( 182 void RegisterFontFamilyMapObserver(
(...skipping 305 matching lines...) Expand 10 before | Expand all | Expand 10 after
470 // List of keys that cannot be changed in the user prefs file by the incognito 488 // List of keys that cannot be changed in the user prefs file by the incognito
471 // profile. All preferences that store information about the browsing history 489 // profile. All preferences that store information about the browsing history
472 // or behavior of the user should have this property. 490 // or behavior of the user should have this property.
473 pref_store->RegisterOverlayPref(prefs::kBrowserWindowPlacement); 491 pref_store->RegisterOverlayPref(prefs::kBrowserWindowPlacement);
474 #if defined(OS_ANDROID) || defined(OS_IOS) 492 #if defined(OS_ANDROID) || defined(OS_IOS)
475 pref_store->RegisterOverlayPref(prefs::kProxy); 493 pref_store->RegisterOverlayPref(prefs::kProxy);
476 #endif // defined(OS_ANDROID) || defined(OS_IOS) 494 #endif // defined(OS_ANDROID) || defined(OS_IOS)
477 } 495 }
478 496
479 // static 497 // static
480 void PrefsTabHelper::RegisterUserPrefs(PrefRegistrySyncable* registry) { 498 void PrefsTabHelper::RegisterUserPrefs(
499 user_prefs::PrefRegistrySyncable* registry) {
481 WebPreferences pref_defaults; 500 WebPreferences pref_defaults;
482 registry->RegisterBooleanPref(prefs::kWebKitJavascriptEnabled, 501 registry->RegisterBooleanPref(
483 pref_defaults.javascript_enabled, 502 prefs::kWebKitJavascriptEnabled,
484 PrefRegistrySyncable::UNSYNCABLE_PREF); 503 pref_defaults.javascript_enabled,
485 registry->RegisterBooleanPref(prefs::kWebKitWebSecurityEnabled, 504 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
486 pref_defaults.web_security_enabled, 505 registry->RegisterBooleanPref(
487 PrefRegistrySyncable::UNSYNCABLE_PREF); 506 prefs::kWebKitWebSecurityEnabled,
507 pref_defaults.web_security_enabled,
508 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
488 registry->RegisterBooleanPref( 509 registry->RegisterBooleanPref(
489 prefs::kWebKitJavascriptCanOpenWindowsAutomatically, 510 prefs::kWebKitJavascriptCanOpenWindowsAutomatically,
490 true, 511 true,
491 PrefRegistrySyncable::UNSYNCABLE_PREF); 512 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
492 registry->RegisterBooleanPref(prefs::kWebKitLoadsImagesAutomatically, 513 registry->RegisterBooleanPref(
493 pref_defaults.loads_images_automatically, 514 prefs::kWebKitLoadsImagesAutomatically,
494 PrefRegistrySyncable::UNSYNCABLE_PREF); 515 pref_defaults.loads_images_automatically,
495 registry->RegisterBooleanPref(prefs::kWebKitPluginsEnabled, 516 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
496 pref_defaults.plugins_enabled, 517 registry->RegisterBooleanPref(
497 PrefRegistrySyncable::UNSYNCABLE_PREF); 518 prefs::kWebKitPluginsEnabled,
498 registry->RegisterBooleanPref(prefs::kWebKitDomPasteEnabled, 519 pref_defaults.plugins_enabled,
499 pref_defaults.dom_paste_enabled, 520 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
500 PrefRegistrySyncable::UNSYNCABLE_PREF); 521 registry->RegisterBooleanPref(
501 registry->RegisterBooleanPref(prefs::kWebKitShrinksStandaloneImagesToFit, 522 prefs::kWebKitDomPasteEnabled,
502 pref_defaults.shrinks_standalone_images_to_fit, 523 pref_defaults.dom_paste_enabled,
503 PrefRegistrySyncable::UNSYNCABLE_PREF); 524 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
504 registry->RegisterDictionaryPref(prefs::kWebKitInspectorSettings, 525 registry->RegisterBooleanPref(
505 PrefRegistrySyncable::UNSYNCABLE_PREF); 526 prefs::kWebKitShrinksStandaloneImagesToFit,
506 registry->RegisterBooleanPref(prefs::kWebKitTextAreasAreResizable, 527 pref_defaults.shrinks_standalone_images_to_fit,
507 pref_defaults.text_areas_are_resizable, 528 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
508 PrefRegistrySyncable::UNSYNCABLE_PREF); 529 registry->RegisterDictionaryPref(
509 registry->RegisterBooleanPref(prefs::kWebKitJavaEnabled, 530 prefs::kWebKitInspectorSettings,
510 pref_defaults.java_enabled, 531 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
511 PrefRegistrySyncable::UNSYNCABLE_PREF); 532 registry->RegisterBooleanPref(
512 registry->RegisterBooleanPref(prefs::kWebkitTabsToLinks, 533 prefs::kWebKitTextAreasAreResizable,
513 pref_defaults.tabs_to_links, 534 pref_defaults.text_areas_are_resizable,
514 PrefRegistrySyncable::UNSYNCABLE_PREF); 535 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
515 registry->RegisterBooleanPref(prefs::kWebKitAllowRunningInsecureContent, 536 registry->RegisterBooleanPref(
516 false, 537 prefs::kWebKitJavaEnabled,
517 PrefRegistrySyncable::UNSYNCABLE_PREF); 538 pref_defaults.java_enabled,
518 registry->RegisterBooleanPref(prefs::kWebKitAllowDisplayingInsecureContent, 539 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
519 true, 540 registry->RegisterBooleanPref(
520 PrefRegistrySyncable::UNSYNCABLE_PREF); 541 prefs::kWebkitTabsToLinks,
521 registry->RegisterBooleanPref(prefs::kEnableReferrers, 542 pref_defaults.tabs_to_links,
522 true, 543 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
523 PrefRegistrySyncable::UNSYNCABLE_PREF); 544 registry->RegisterBooleanPref(
545 prefs::kWebKitAllowRunningInsecureContent,
546 false,
547 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
548 registry->RegisterBooleanPref(
549 prefs::kWebKitAllowDisplayingInsecureContent,
550 true,
551 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
552 registry->RegisterBooleanPref(
553 prefs::kEnableReferrers,
554 true,
555 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
524 #if defined(OS_ANDROID) 556 #if defined(OS_ANDROID)
525 registry->RegisterDoublePref(prefs::kWebKitFontScaleFactor, 557 registry->RegisterDoublePref(
526 pref_defaults.font_scale_factor, 558 prefs::kWebKitFontScaleFactor,
527 PrefRegistrySyncable::UNSYNCABLE_PREF); 559 pref_defaults.font_scale_factor,
528 registry->RegisterBooleanPref(prefs::kWebKitForceEnableZoom, 560 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
529 pref_defaults.force_enable_zoom, 561 registry->RegisterBooleanPref(
530 PrefRegistrySyncable::UNSYNCABLE_PREF); 562 prefs::kWebKitForceEnableZoom,
563 pref_defaults.force_enable_zoom,
564 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
531 #endif 565 #endif
532 566
533 #if !defined(OS_MACOSX) 567 #if !defined(OS_MACOSX)
534 registry->RegisterLocalizedStringPref(prefs::kAcceptLanguages, 568 registry->RegisterLocalizedStringPref(
535 IDS_ACCEPT_LANGUAGES, 569 prefs::kAcceptLanguages,
536 PrefRegistrySyncable::SYNCABLE_PREF); 570 IDS_ACCEPT_LANGUAGES,
571 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
537 #else 572 #else
538 // Not used in OSX. 573 // Not used in OSX.
539 registry->RegisterLocalizedStringPref(prefs::kAcceptLanguages, 574 registry->RegisterLocalizedStringPref(
540 IDS_ACCEPT_LANGUAGES, 575 prefs::kAcceptLanguages,
541 PrefRegistrySyncable::UNSYNCABLE_PREF); 576 IDS_ACCEPT_LANGUAGES,
577 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
542 #endif 578 #endif
543 registry->RegisterLocalizedStringPref(prefs::kDefaultCharset, 579 registry->RegisterLocalizedStringPref(
544 IDS_DEFAULT_ENCODING, 580 prefs::kDefaultCharset,
545 PrefRegistrySyncable::SYNCABLE_PREF); 581 IDS_DEFAULT_ENCODING,
582 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
546 583
547 // Register font prefs that have defaults. 584 // Register font prefs that have defaults.
548 std::set<std::string> fonts_with_defaults; 585 std::set<std::string> fonts_with_defaults;
549 UScriptCode browser_script = GetScriptOfBrowserLocale(); 586 UScriptCode browser_script = GetScriptOfBrowserLocale();
550 for (size_t i = 0; i < kFontDefaultsLength; ++i) { 587 for (size_t i = 0; i < kFontDefaultsLength; ++i) {
551 const FontDefault& pref = kFontDefaults[i]; 588 const FontDefault& pref = kFontDefaults[i];
552 UScriptCode pref_script = GetScriptOfFontPref(pref.pref_name); 589 UScriptCode pref_script = GetScriptOfFontPref(pref.pref_name);
553 590
554 // Suppress this default font pref value if it is for the primary script of 591 // Suppress this default font pref value if it is for the primary script of
555 // the browser's UI locale. For example, if the pref is for the sans-serif 592 // the browser's UI locale. For example, if the pref is for the sans-serif
556 // font for the Cyrillic script, and the browser locale is "ru" (Russian), 593 // font for the Cyrillic script, and the browser locale is "ru" (Russian),
557 // the default is suppressed. Otherwise, the default would override the 594 // the default is suppressed. Otherwise, the default would override the
558 // user's font preferences when viewing pages in their native language. 595 // user's font preferences when viewing pages in their native language.
559 // This is because users have no way yet of customizing their per-script 596 // This is because users have no way yet of customizing their per-script
560 // font preferences. The font prefs accessible in the options UI are for 597 // font preferences. The font prefs accessible in the options UI are for
561 // the default, unknown script; these prefs have less priority than the 598 // the default, unknown script; these prefs have less priority than the
562 // per-script font prefs when the script of the content is known. This code 599 // per-script font prefs when the script of the content is known. This code
563 // can possibly be removed later if users can easily access per-script font 600 // can possibly be removed later if users can easily access per-script font
564 // prefs (e.g., via the extensions workflow), or the problem turns out to 601 // prefs (e.g., via the extensions workflow), or the problem turns out to
565 // not be really critical after all. 602 // not be really critical after all.
566 if (browser_script != pref_script) { 603 if (browser_script != pref_script) {
567 registry->RegisterLocalizedStringPref( 604 registry->RegisterLocalizedStringPref(
568 pref.pref_name, 605 pref.pref_name,
569 pref.resource_id, 606 pref.resource_id,
570 PrefRegistrySyncable::UNSYNCABLE_PREF); 607 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
571 fonts_with_defaults.insert(pref.pref_name); 608 fonts_with_defaults.insert(pref.pref_name);
572 } 609 }
573 } 610 }
574 611
575 // Register font prefs that don't have defaults. 612 // Register font prefs that don't have defaults.
576 RegisterFontFamilyPrefs(registry, fonts_with_defaults); 613 RegisterFontFamilyPrefs(registry, fonts_with_defaults);
577 614
578 registry->RegisterLocalizedIntegerPref(prefs::kWebKitDefaultFontSize, 615 registry->RegisterLocalizedIntegerPref(
579 IDS_DEFAULT_FONT_SIZE, 616 prefs::kWebKitDefaultFontSize,
580 PrefRegistrySyncable::UNSYNCABLE_PREF); 617 IDS_DEFAULT_FONT_SIZE,
581 registry->RegisterLocalizedIntegerPref(prefs::kWebKitDefaultFixedFontSize, 618 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
582 IDS_DEFAULT_FIXED_FONT_SIZE, 619 registry->RegisterLocalizedIntegerPref(
583 PrefRegistrySyncable::UNSYNCABLE_PREF); 620 prefs::kWebKitDefaultFixedFontSize,
584 registry->RegisterLocalizedIntegerPref(prefs::kWebKitMinimumFontSize, 621 IDS_DEFAULT_FIXED_FONT_SIZE,
585 IDS_MINIMUM_FONT_SIZE, 622 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
586 PrefRegistrySyncable::UNSYNCABLE_PREF); 623 registry->RegisterLocalizedIntegerPref(
624 prefs::kWebKitMinimumFontSize,
625 IDS_MINIMUM_FONT_SIZE,
626 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
587 registry->RegisterLocalizedIntegerPref( 627 registry->RegisterLocalizedIntegerPref(
588 prefs::kWebKitMinimumLogicalFontSize, 628 prefs::kWebKitMinimumLogicalFontSize,
589 IDS_MINIMUM_LOGICAL_FONT_SIZE, 629 IDS_MINIMUM_LOGICAL_FONT_SIZE,
590 PrefRegistrySyncable::UNSYNCABLE_PREF); 630 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
591 registry->RegisterLocalizedBooleanPref(prefs::kWebKitUsesUniversalDetector, 631 registry->RegisterLocalizedBooleanPref(
592 IDS_USES_UNIVERSAL_DETECTOR, 632 prefs::kWebKitUsesUniversalDetector,
593 PrefRegistrySyncable::SYNCABLE_PREF); 633 IDS_USES_UNIVERSAL_DETECTOR,
594 registry->RegisterLocalizedStringPref(prefs::kStaticEncodings, 634 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
595 IDS_STATIC_ENCODING_LIST, 635 registry->RegisterLocalizedStringPref(
596 PrefRegistrySyncable::UNSYNCABLE_PREF); 636 prefs::kStaticEncodings,
597 registry->RegisterStringPref(prefs::kRecentlySelectedEncoding, 637 IDS_STATIC_ENCODING_LIST,
598 std::string(), 638 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
599 PrefRegistrySyncable::UNSYNCABLE_PREF); 639 registry->RegisterStringPref(
640 prefs::kRecentlySelectedEncoding,
641 std::string(),
642 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
600 643
601 RegisterPrefsToMigrate(registry); 644 RegisterPrefsToMigrate(registry);
602 } 645 }
603 646
604 void PrefsTabHelper::MigrateUserPrefs(PrefService* prefs) { 647 void PrefsTabHelper::MigrateUserPrefs(PrefService* prefs) {
605 for (int i = 0; i < kPrefsToMigrateLength; ++i) { 648 for (int i = 0; i < kPrefsToMigrateLength; ++i) {
606 const PrefService::Preference* pref = 649 const PrefService::Preference* pref =
607 prefs->FindPreference(kPrefNamesToMigrate[i].from); 650 prefs->FindPreference(kPrefNamesToMigrate[i].from);
608 if (pref && !pref->IsDefaultValue()) { 651 if (pref && !pref->IsDefaultValue()) {
609 prefs->Set(kPrefNamesToMigrate[i].to, *pref->GetValue()); 652 prefs->Set(kPrefNamesToMigrate[i].to, *pref->GetValue());
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
677 WebPreferences web_prefs = 720 WebPreferences web_prefs =
678 web_contents_->GetRenderViewHost()->GetWebkitPreferences(); 721 web_contents_->GetRenderViewHost()->GetWebkitPreferences();
679 OverrideFontFamily(&web_prefs, generic_family, script, std::string()); 722 OverrideFontFamily(&web_prefs, generic_family, script, std::string());
680 web_contents_->GetRenderViewHost()->UpdateWebkitPreferences(web_prefs); 723 web_contents_->GetRenderViewHost()->UpdateWebkitPreferences(web_prefs);
681 return; 724 return;
682 } 725 }
683 } 726 }
684 727
685 UpdateWebPreferences(); 728 UpdateWebPreferences();
686 } 729 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/prefs/prefs_tab_helper.h ('k') | chrome/browser/ui/startup/autolaunch_prompt.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698