1// Copyright (c) 2011 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "chrome/common/pref_names.h"
6
7namespace prefs {
8
9// *************** PROFILE PREFS ***************
10// These are attached to the user profile
11
12// A counter that controls whether the apps promo is shown in the app launcher
13// or not.
14const char kAppsPromoCounter[] = "apps_promo_counter";
15
16// Whether we have installed default apps yet in this profile.
17const char kDefaultAppsInstalled[] = "default_apps_installed";
18
19// A boolean specifying whether the New Tab page is the home page or not.
20const char kHomePageIsNewTabPage[] = "homepage_is_newtabpage";
21
22// This is the URL of the page to load when opening new tabs.
23const char kHomePage[] = "homepage";
24
25// Used to determine if the last session exited cleanly. Set to false when
26// first opened, and to true when closing. On startup if the value is false,
27// it means the profile didn't exit cleanly.
28const char kSessionExitedCleanly[] = "profile.exited_cleanly";
29
30// An integer pref. Holds one of several values:
31// 0: (or empty) don't do anything special on startup.
32// 1: restore the last session.
33// 2: this was used to indicate a specific session should be restored. It is
34//    no longer used, but saved to avoid conflict with old preferences.
35// 3: unused, previously indicated the user wants to restore a saved session.
36// 4: restore the URLs defined in kURLsToRestoreOnStartup.
37const char kRestoreOnStartup[] = "session.restore_on_startup";
38
39// The URLs to restore on startup or when the home button is pressed. The URLs
40// are only restored on startup if kRestoreOnStartup is 4.
41const char kURLsToRestoreOnStartup[] = "session.urls_to_restore_on_startup";
42
43// The application locale.
44// For OS_CHROMEOS we maintain kApplicationLocale property in both local state
45// and user's profile.  Global property determines locale of login screen,
46// while user's profile determines his personal locale preference.
47const char kApplicationLocale[] = "intl.app_locale";
48#if defined(OS_CHROMEOS)
49// Locale preference of device' owner.  ChromeOS device appears in this locale
50// after startup/wakeup/signout.
51const char kOwnerLocale[] = "intl.owner_locale";
52// Locale accepted by user.  Non-syncable.
53// Used to determine whether we need to show Locale Change notification.
54const char kApplicationLocaleAccepted[] = "intl.app_locale_accepted";
55// Non-syncable item.
56// It is used in two distinct ways.
57// (1) Used for two-step initialization of locale in ChromeOS
58//     because synchronization of kApplicationLocale is not instant.
59// (2) Used to detect locale change.  Locale change is detected by
60//     LocaleChangeGuard in case values of kApplicationLocaleBackup and
61//     kApplicationLocale are both non-empty and differ.
62// Following is a table showing how state of those prefs may change upon
63// common real-life use cases:
64//                                  AppLocale Backup Accepted
65// Initial login                       -        A       -
66// Sync                                B        A       -
67// Accept (B)                          B        B       B
68// -----------------------------------------------------------
69// Initial login                       -        A       -
70// No sync and second login            A        A       -
71// Change options                      B        B       -
72// -----------------------------------------------------------
73// Initial login                       -        A       -
74// Sync                                A        A       -
75// Locale changed on login screen      A        C       -
76// Accept (A)                          A        A       A
77// -----------------------------------------------------------
78// Initial login                       -        A       -
79// Sync                                B        A       -
80// Revert                              A        A       -
81const char kApplicationLocaleBackup[] = "intl.app_locale_backup";
82#endif
83
84// The default character encoding to assume for a web page in the
85// absence of MIME charset specification
86const char kDefaultCharset[] = "intl.charset_default";
87
88// The value to use for Accept-Languages HTTP header when making an HTTP
89// request.
90const char kAcceptLanguages[] = "intl.accept_languages";
91
92// The value to use for showing locale-dependent encoding list for different
93// locale, it's initialized from the corresponding string resource that is
94// stored in non-translatable part of the resource bundle.
95const char kStaticEncodings[] = "intl.static_encodings";
96
97// OBSOLETE.  The list of hostnames for which we whitelist popups (rather than
98// blocking).
99const char kPopupWhitelistedHosts[] = "profile.popup_whitelisted_sites";
100
101// WebKit preferences.
102const char kWebKitStandardFontFamily[] = "webkit.webprefs.standard_font_family";
103const char kWebKitFixedFontFamily[] = "webkit.webprefs.fixed_font_family";
104const char kWebKitSerifFontFamily[] = "webkit.webprefs.serif_font_family";
105const char kWebKitSansSerifFontFamily[] =
106    "webkit.webprefs.sansserif_font_family";
107const char kWebKitCursiveFontFamily[] = "webkit.webprefs.cursive_font_family";
108const char kWebKitFantasyFontFamily[] = "webkit.webprefs.fantasy_font_family";
109const char kWebKitDefaultFontSize[] = "webkit.webprefs.default_font_size";
110const char kWebKitDefaultFixedFontSize[] =
111    "webkit.webprefs.default_fixed_font_size";
112const char kWebKitMinimumFontSize[] = "webkit.webprefs.minimum_font_size";
113const char kWebKitMinimumLogicalFontSize[] =
114    "webkit.webprefs.minimum_logical_font_size";
115const char kWebKitJavascriptEnabled[] = "webkit.webprefs.javascript_enabled";
116const char kWebKitWebSecurityEnabled[] = "webkit.webprefs.web_security_enabled";
117const char kWebKitJavascriptCanOpenWindowsAutomatically[] =
118    "webkit.webprefs.javascript_can_open_windows_automatically";
119const char kWebKitLoadsImagesAutomatically[] =
120    "webkit.webprefs.loads_images_automatically";
121const char kWebKitPluginsEnabled[] = "webkit.webprefs.plugins_enabled";
122const char kWebKitDomPasteEnabled[] = "webkit.webprefs.dom_paste_enabled";
123const char kWebKitShrinksStandaloneImagesToFit[] =
124    "webkit.webprefs.shrinks_standalone_images_to_fit";
125const char kWebKitInspectorSettings[] = "webkit.webprefs.inspector_settings";
126const char kWebKitUsesUniversalDetector[] =
127    "webkit.webprefs.uses_universal_detector";
128const char kWebKitTextAreasAreResizable[] =
129    "webkit.webprefs.text_areas_are_resizable";
130const char kWebKitJavaEnabled[] = "webkit.webprefs.java_enabled";
131const char kWebkitTabsToLinks[] = "webkit.webprefs.tabs_to_links";
132
133// Boolean which specifies whether the bookmark bar is visible on all tabs.
134const char kShowBookmarkBar[] = "bookmark_bar.show_on_all_tabs";
135
136// Boolean that is true if the password manager is on (will record new
137// passwords and fill in known passwords).
138const char kPasswordManagerEnabled[] = "profile.password_manager_enabled";
139
140// Boolean controlling whether the password manager allows to retrieve passwords
141// in clear text.
142const char kPasswordManagerAllowShowPasswords[] =
143    "profile.password_manager_allow_show_passwords";
144
145// Boolean that is true when SafeBrowsing is enabled.
146const char kSafeBrowsingEnabled[] = "safebrowsing.enabled";
147
148// Boolean that is true when SafeBrowsing Malware Report is enabled.
149const char kSafeBrowsingReportingEnabled[] =
150    "safebrowsing.reporting_enabled";
151
152// Boolean that is true when Incognito support is enabled.
153const char kIncognitoEnabled[] = "incognito.enabled";
154
155// Boolean that is true when Suggest support is enabled.
156const char kSearchSuggestEnabled[] = "search.suggest_enabled";
157
158// Boolean that indicates whether the browser should put up a confirmation
159// window when the user is attempting to quit. Mac only.
160const char kConfirmToQuitEnabled[] = "browser.confirm_to_quit";
161
162// OBSOLETE.  Enum that specifies whether to enforce a third-party cookie
163// blocking policy.  This has been superseded by kDefaultContentSettings +
164// kBlockThirdPartyCookies.
165// 0 - allow all cookies.
166// 1 - block third-party cookies
167// 2 - block all cookies
168const char kCookieBehavior[] = "security.cookie_behavior";
169
170// Whether having a default search provider is enabled.
171const char kDefaultSearchProviderEnabled[] =
172    "default_search_provider.enabled";
173
174// The URL (as understood by TemplateURLRef) the default search provider uses
175// for searches.
176const char kDefaultSearchProviderSearchURL[] =
177    "default_search_provider.search_url";
178
179// The URL (as understood by TemplateURLRef) the default search provider uses
180// for suggestions.
181const char kDefaultSearchProviderSuggestURL[] =
182    "default_search_provider.suggest_url";
183
184// The URL (as understood by TemplateURLRef) the default search provider uses
185// for instant results.
186const char kDefaultSearchProviderInstantURL[] =
187    "default_search_provider.instant_url";
188
189// The Favicon URL (as understood by TemplateURLRef) of the default search
190// provider.
191const char kDefaultSearchProviderIconURL[] =
192    "default_search_provider.icon_url";
193
194// The input encoding (as understood by TemplateURLRef) supported by the default
195// search provider.  The various encodings are separated by ';'
196const char kDefaultSearchProviderEncodings[] =
197    "default_search_provider.encodings";
198
199// The name of the default search provider.
200const char kDefaultSearchProviderName[] = "default_search_provider.name";
201
202// The keyword of the default search provider.
203const char kDefaultSearchProviderKeyword[] = "default_search_provider.keyword";
204
205// The id of the default search provider.
206const char kDefaultSearchProviderID[] = "default_search_provider.id";
207
208// The prepopulate id of the default search provider.
209const char kDefaultSearchProviderPrepopulateID[] =
210    "default_search_provider.prepopulate_id";
211
212// The dictionary key used when the default search providers are given
213// in the preferences file. Normally they are copied from the master
214// preferences file.
215const char kSearchProviderOverrides[] = "search_provider_overrides";
216// The format version for the dictionary above.
217const char kSearchProviderOverridesVersion[] =
218    "search_provider_overrides_version";
219
220// Boolean which specifies whether we should ask the user if we should download
221// a file (true) or just download it automatically.
222const char kPromptForDownload[] = "download.prompt_for_download";
223
224// A boolean pref set to true if we're using Link Doctor error pages.
225const char kAlternateErrorPagesEnabled[] = "alternate_error_pages.enabled";
226
227// OBSOLETE: new pref now stored with user prefs instead of profile, as
228// kDnsPrefetchingStartupList.
229const char kDnsStartupPrefetchList[] = "StartupDNSPrefetchList";
230
231// An adaptively identified list of domain names to be pre-fetched during the
232// next startup, based on what was actually needed during this startup.
233const char kDnsPrefetchingStartupList[] = "dns_prefetching.startup_list";
234
235// OBSOLETE: new pref now stored with user prefs instead of profile, as
236// kDnsPrefetchingHostReferralList.
237const char kDnsHostReferralList[] = "HostReferralList";
238
239// A list of host names used to fetch web pages, and their commonly used
240// sub-resource hostnames (and expected latency benefits from pre-resolving, or
241// preconnecting to, such sub-resource hostnames).
242// This list is adaptively grown and pruned.
243const char kDnsPrefetchingHostReferralList[] =
244    "dns_prefetching.host_referral_list";
245
246// Disables the SPDY protocol.
247const char kDisableSpdy[] = "spdy.disabled";
248
249// Disables the listed protocol schemes.
250const char kDisabledSchemes[] = "protocol.disabled_schemes";
251
252// Boolean pref indicating whether the instant confirm dialog has been shown.
253const char kInstantConfirmDialogShown[] = "instant.confirm_dialog_shown";
254
255// Boolean pref indicating if instant is enabled.
256const char kInstantEnabled[] = "instant.enabled";
257
258// Boolean pref indicating if instant was ever enabled.
259const char kInstantEnabledOnce[] = "instant.enabled_once";
260
261// Time when instant was last enabled.
262const char kInstantEnabledTime[] = "instant.enabled_time";
263
264// Used to maintain instant promo keys. See PromoCounter for details of subkeys
265// that are used.
266const char kInstantPromo[] = "instant.promo";
267
268// Used to migrate preferences from local state to user preferences to
269// enable multiple profiles.
270// BITMASK with possible values (see browser_prefs.cc for enum):
271// 0: No preferences migrated.
272// 1: DNS preferences migrated: kDnsPrefetchingStartupList and HostReferralList
273// 2: Browser window preferences migrated: kDevToolsSplitLocation and
274//    kBrowserWindowPlacement
275const char kMultipleProfilePrefMigration[] =
276    "local_state.multiple_profile_prefs_version";
277
278// A boolean pref set to true if prediction of network actions is allowed.
279// Actions include DNS prefetching, TCP and SSL preconnection, and prerendering
280// of web pages.
281// NOTE: The "dns_prefetching.enabled" value is used so that historical user
282// preferences are not lost.
283const char kNetworkPredictionEnabled[] = "dns_prefetching.enabled";
284
285#if defined(OS_CHROMEOS)
286// An integer pref to initially mute volume if 1.
287const char kAudioMute[] = "settings.audio.mute";
288
289// A double pref to set initial volume.
290const char kAudioVolume[] = "settings.audio.volume";
291
292// A boolean pref set to true if TapToClick is being done in browser.
293const char kTapToClickEnabled[] = "settings.touchpad.enable_tap_to_click";
294
295// A integer pref for the touchpad sensitivity.
296const char kTouchpadSensitivity[] = "settings.touchpad.sensitivity2";
297
298// A boolean pref set to true if time should be displayed in 24-hour clock.
299const char kUse24HourClock[] = "settings.clock.use_24hour_clock";
300
301// A string pref set to the current input method.
302const char kLanguageCurrentInputMethod[] =
303    "settings.language.current_input_method";
304
305// A string pref set to the previous input method.
306const char kLanguagePreviousInputMethod[] =
307    "settings.language.previous_input_method";
308
309// A string pref (comma-separated list) set to the "next engine in menu"
310// hot-key lists.
311const char kLanguageHotkeyNextEngineInMenu[] =
312    "settings.language.hotkey_next_engine_in_menu";
313
314// A string pref (comma-separated list) set to the "previous engine"
315// hot-key lists.
316const char kLanguageHotkeyPreviousEngine[] =
317    "settings.language.hotkey_previous_engine";
318
319// A string pref (comma-separated list) set to the preferred language IDs
320// (ex. "en-US,fr,ko").
321const char kLanguagePreferredLanguages[] =
322    "settings.language.preferred_languages";
323
324// A string pref (comma-separated list) set to the preloaded (active) input
325// method IDs (ex. "pinyin,mozc").
326const char kLanguagePreloadEngines[] = "settings.language.preload_engines";
327
328// Boolean prefs for ibus-chewing Chinese input method.
329const char kLanguageChewingAutoShiftCur[] =
330    "settings.language.chewing_auto_shift_cur";
331const char kLanguageChewingAddPhraseDirection[] =
332    "settings.language.chewing_add_phrase_direction";
333const char kLanguageChewingEasySymbolInput[] =
334    "settings.language.chewing_easy_symbol_input";
335const char kLanguageChewingEscCleanAllBuf[] =
336    "settings.language.chewing_esc_clean_all_buf";
337const char kLanguageChewingForceLowercaseEnglish[] =
338    "settings.language.chewing_force_lowercase_english";
339const char kLanguageChewingPlainZhuyin[] =
340    "settings.language.chewing_plain_zhuyin";
341const char kLanguageChewingPhraseChoiceRearward[] =
342    "settings.language.chewing_phrase_choice_rearward";
343const char kLanguageChewingSpaceAsSelection[] =
344    "settings.language.chewing_space_as_selection";
345
346// Integer prefs for ibus-chewing Chinese input method.
347const char kLanguageChewingMaxChiSymbolLen[] =
348    "settings.language.chewing_max_chi_symbol_len";
349const char kLanguageChewingCandPerPage[] =
350    "settings.language.chewing_cand_per_page";
351
352// String prefs for ibus-chewing Chinese input method.
353const char kLanguageChewingKeyboardType[] =
354    "settings.language.chewing_keyboard_type";
355const char kLanguageChewingSelKeys[] =
356    "settings.language.chewing_sel_keys";
357
358const char kLanguageChewingHsuSelKeyType[] =
359    "settings.language.chewing_hsu_sel_key_type";
360
361// A string pref which determines the keyboard layout for Hangul input method.
362const char kLanguageHangulKeyboard[] = "settings.language.hangul_keyboard";
363const char kLanguageHangulHanjaKeys[] = "settings.language.hangul_hanja_keys";
364
365// A boolean prefs for ibus-pinyin Chinese input method.
366const char kLanguagePinyinCorrectPinyin[] =
367    "settings.language.pinyin_correct_pinyin";
368const char kLanguagePinyinFuzzyPinyin[] =
369    "settings.language.pinyin_fuzzy_pinyin";
370const char kLanguagePinyinShiftSelectCandidate[] =
371    "settings.language.pinyin_shift_select_candidate";
372const char kLanguagePinyinMinusEqualPage[] =
373    "settings.language.pinyin_minus_equal_page";
374const char kLanguagePinyinCommaPeriodPage[] =
375    "settings.language.pinyin_comma_period_page";
376const char kLanguagePinyinAutoCommit[] =
377    "settings.language.pinyin_auto_commit";
378const char kLanguagePinyinDoublePinyin[] =
379    "settings.language.pinyin_double_pinyin";
380const char kLanguagePinyinInitChinese[] =
381    "settings.language.pinyin_init_chinese";
382const char kLanguagePinyinInitFull[] =
383    "settings.language.pinyin_init_full";
384const char kLanguagePinyinInitFullPunct[] =
385    "settings.language.pinyin_init_full_punct";
386const char kLanguagePinyinInitSimplifiedChinese[] =
387    "settings.language.pinyin_init_simplified_chinese";
388const char kLanguagePinyinTradCandidate[] =
389    "settings.language.pinyin_trad_candidate";
390
391// A integer prefs for ibus-pinyin Chinese input method.
392const char kLanguagePinyinDoublePinyinSchema[] =
393    "settings.language.pinyin_double_pinyin_schema";
394const char kLanguagePinyinLookupTablePageSize[] =
395    "settings.language.pinyin_lookup_table_page_size";
396
397// A string prefs for ibus-mozc Japanese input method.
398// ibus-mozc converts the string values to protobuf enum values defined in
399// third_party/ibus-mozc/files/src/session/config.proto.
400const char kLanguageMozcPreeditMethod[] =
401    "settings.language.mozc_preedit_method";
402const char kLanguageMozcSessionKeymap[] =
403    "settings.language.mozc_session_keymap";
404const char kLanguageMozcPunctuationMethod[] =
405    "settings.language.mozc_punctuation_method";
406const char kLanguageMozcSymbolMethod[] =
407    "settings.language.mozc_symbol_method";
408const char kLanguageMozcSpaceCharacterForm[] =
409    "settings.language.mozc_space_character_form";
410const char kLanguageMozcHistoryLearningLevel[] =
411    "settings.language.mozc_history_learning_level";
412const char kLanguageMozcSelectionShortcut[] =
413    "settings.language.mozc_selection_shortcut";
414const char kLanguageMozcShiftKeyModeSwitch[] =
415    "settings.language.mozc_shift_key_mode_switch";
416const char kLanguageMozcNumpadCharacterForm[] =
417    "settings.language.mozc_numpad_character_form";
418const char kLanguageMozcIncognitoMode[] =
419    "settings.language.mozc_incognito_mode";
420const char kLanguageMozcUseAutoImeTurnOff[] =
421    "settings.language.mozc_use_auto_ime_turn_off";
422const char kLanguageMozcUseDateConversion[] =
423    "settings.language.mozc_use_date_conversion";
424const char kLanguageMozcUseSingleKanjiConversion[] =
425    "settings.language.mozc_use_single_kanji_conversion";
426const char kLanguageMozcUseSymbolConversion[] =
427    "settings.language.mozc_use_symbol_conversion";
428const char kLanguageMozcUseNumberConversion[] =
429    "settings.language.mozc_use_number_conversion";
430const char kLanguageMozcUseHistorySuggest[] =
431    "settings.language.mozc_use_history_suggest";
432const char kLanguageMozcUseDictionarySuggest[] =
433    "settings.language.mozc_use_dictionary_suggest";
434const char kLanguageMozcSuggestionsSize[] =
435    "settings.language.mozc_suggestions_size";
436
437// A integer prefs which determine how we remap modifier keys (e.g. swap Alt-L
438// and Control-L.) Possible values for these prefs are 0-4. See ModifierKey enum
439// in src/third_party/cros/chrome_keyboard.h for details.
440const char kLanguageXkbRemapSearchKeyTo[] =
441    "settings.language.xkb_remap_search_key_to";
442const char kLanguageXkbRemapControlKeyTo[] =
443    "settings.language.xkb_remap_control_key_to";
444const char kLanguageXkbRemapAltKeyTo[] =
445    "settings.language.xkb_remap_alt_key_to";
446
447// A boolean pref which determines whether key repeat is enabled.
448const char kLanguageXkbAutoRepeatEnabled[] =
449    "settings.language.xkb_auto_repeat_enabled_r2";
450// A integer pref which determines key repeat delay (in ms).
451const char kLanguageXkbAutoRepeatDelay[] =
452    "settings.language.xkb_auto_repeat_delay_r2";
453// A integer pref which determines key repeat interval (in ms).
454const char kLanguageXkbAutoRepeatInterval[] =
455    "settings.language.xkb_auto_repeat_interval_r2";
456// "_r2" suffixes are added to the three prefs above when we change the
457// preferences not user-configurable, not to sync them with cloud.
458
459// A boolean pref which determines whether accessibility is enabled.
460const char kAccessibilityEnabled[] = "settings.accessibility";
461
462// A boolean pref which turns on Advanced Filesystem
463// (USB support, SD card, etc).
464const char kLabsAdvancedFilesystemEnabled[] =
465    "settings.labs.advanced_filesystem";
466
467// A boolean pref which turns on the mediaplayer.
468const char kLabsMediaplayerEnabled[] = "settings.labs.mediaplayer";
469
470// A boolean pref that turns on screen locker.
471const char kEnableScreenLock[] = "settings.enable_screen_lock";
472
473// A boolean pref of whether to show mobile plan notifications.
474const char kShowPlanNotifications[] =
475    "settings.internet.mobile.show_plan_notifications";
476
477// A boolean pref of whether to show 3G promo notification.
478const char kShow3gPromoNotification[] =
479    "settings.internet.mobile.show_3g_promo_notification";
480
481// An integer pref which shows number of times carrier deal promo
482// notification has been shown to user.
483const char kCarrierDealPromoShown[] =
484    "settings.internet.mobile.carrier_deal_promo_shown";
485
486// Map of timestamps of the last used file browser tasks.
487const char kLastUsedFileBrowserHandlers[] =
488    "filebrowser.handler.lastused";
489#endif  // defined(OS_CHROMEOS)
490
491// The disabled messages in IPC logging.
492const char kIpcDisabledMessages[] = "ipc_log_disabled_messages";
493
494// A boolean pref set to true if a Home button to open the Home pages should be
495// visible on the toolbar.
496const char kShowHomeButton[] = "browser.show_home_button";
497
498// A string value which saves short list of recently user selected encodings
499// separated with comma punctuation mark.
500const char kRecentlySelectedEncoding[] = "profile.recently_selected_encodings";
501
502// Clear Browsing Data dialog preferences.
503const char kDeleteBrowsingHistory[] = "browser.clear_data.browsing_history";
504const char kDeleteDownloadHistory[] = "browser.clear_data.download_history";
505const char kDeleteCache[] = "browser.clear_data.cache";
506const char kDeleteCookies[] = "browser.clear_data.cookies";
507const char kDeletePasswords[] = "browser.clear_data.passwords";
508const char kDeleteFormData[] = "browser.clear_data.form_data";
509const char kDeleteTimePeriod[] = "browser.clear_data.time_period";
510
511// Boolean pref to define the default values for using spellchecker.
512const char kEnableSpellCheck[] = "browser.enable_spellchecking";
513
514// List of names of the enabled labs experiments (see chrome/browser/labs.cc).
515const char kEnabledLabsExperiments[] = "browser.enabled_labs_experiments";
516
517// Boolean pref to define the default values for using auto spell correct.
518const char kEnableAutoSpellCorrect[] = "browser.enable_autospellcorrect";
519
520// Boolean controlling whether history saving is disabled.
521const char kSavingBrowserHistoryDisabled[] = "history.saving_disabled";
522
523// Boolean controlling whether printing is enabled.
524const char kPrintingEnabled[] = "printing.enabled";
525
526// String pref to define the default values for print overlays.
527const char kPrintingPageHeaderLeft[] = "printing.page.header.left";
528const char kPrintingPageHeaderCenter[] = "printing.page.header.center";
529const char kPrintingPageHeaderRight[] = "printing.page.header.right";
530const char kPrintingPageFooterLeft[] = "printing.page.footer.left";
531const char kPrintingPageFooterCenter[] = "printing.page.footer.center";
532const char kPrintingPageFooterRight[] = "printing.page.footer.right";
533#if defined(TOOLKIT_USES_GTK)
534// GTK specific preference on whether we should match the system GTK theme.
535const char kUsesSystemTheme[] = "extensions.theme.use_system";
536#endif
537const char kCurrentThemePackFilename[] = "extensions.theme.pack";
538const char kCurrentThemeID[] = "extensions.theme.id";
539const char kCurrentThemeImages[] = "extensions.theme.images";
540const char kCurrentThemeColors[] = "extensions.theme.colors";
541const char kCurrentThemeTints[] = "extensions.theme.tints";
542const char kCurrentThemeDisplayProperties[] = "extensions.theme.properties";
543
544// Boolean pref which persists whether the extensions_ui is in developer mode
545// (showing developer packing tools and extensions details)
546const char kExtensionsUIDeveloperMode[] = "extensions.ui.developer_mode";
547
548// Integer pref that tracks the number of browser actions visible in the browser
549// actions toolbar.
550const char kExtensionToolbarSize[] = "extensions.toolbarsize";
551
552// Pref containing the directory for internal plugins as written to the plugins
553// list (below).
554const char kPluginsLastInternalDirectory[] = "plugins.last_internal_directory";
555
556// List pref containing information (dictionaries) on plugins.
557const char kPluginsPluginsList[] = "plugins.plugins_list";
558
559// List pref containing names of plugins that are disabled by policy.
560const char kPluginsDisabledPlugins[] = "plugins.plugins_disabled";
561
562// List pref containing exceptions to the list of plugins disabled by policy.
563const char kPluginsDisabledPluginsExceptions[] =
564    "plugins.plugins_disabled_exceptions";
565
566// List pref containing names of plugins that are enabled by policy.
567const char kPluginsEnabledPlugins[] = "plugins.plugins_enabled";
568
569// When first shipped, the pdf plugin will be disabled by default.  When we
570// enable it by default, we'll want to do so only once.
571const char kPluginsEnabledInternalPDF[] = "plugins.enabled_internal_pdf3";
572
573const char kPluginsShowSetReaderDefaultInfobar[] =
574    "plugins.show_set_reader_default";
575
576// Whether about:plugins is shown in the details mode or not.
577const char kPluginsShowDetails[] = "plugins.show_details";
578
579// Boolean that indicates whether outdated plugins are allowed or not.
580const char kPluginsAllowOutdated[] = "plugins.allow_outdated";
581
582// Boolean that indicates whether we should check if we are the default browser
583// on start-up.
584const char kCheckDefaultBrowser[] = "browser.check_default_browser";
585
586// Policy setting whether default browser check should be disabled and default
587// browser registration should take place.
588const char kDefaultBrowserSettingEnabled[] =
589    "browser.default_browser_setting_enabled";
590
591#if defined(OS_MACOSX)
592// Boolean that indicates whether the application should show the info bar
593// asking the user to set up automatic updates when Keystone promotion is
594// required.
595const char kShowUpdatePromotionInfoBar[] =
596    "browser.show_update_promotion_info_bar";
597#endif
598
599// Boolean that is false if we should show window manager decorations.  If
600// true, we draw a custom chrome frame (thicker title bar and blue border).
601const char kUseCustomChromeFrame[] = "browser.custom_chrome_frame";
602
603// Boolean that indicates whether the infobar explaining that search can be
604// done directly from the omnibox should be shown.
605const char kShowOmniboxSearchHint[] = "browser.show_omnibox_search_hint";
606
607// The list of origins which are allowed|denied to show desktop notifications.
608const char kDesktopNotificationDefaultContentSetting[] =
609    "profile.notifications_default_content_setting";
610const char kDesktopNotificationAllowedOrigins[] =
611    "profile.notification_allowed_sites";
612const char kDesktopNotificationDeniedOrigins[] =
613    "profile.notification_denied_sites";
614
615// The preferred position (which corner of screen) for desktop notifications.
616const char kDesktopNotificationPosition[] =
617    "browser.desktop_notification_position";
618
619// Dictionary of content settings applied to all hosts by default.
620const char kDefaultContentSettings[] = "profile.default_content_settings";
621
622// OBSOLETE. Dictionary that maps hostnames to content related settings.
623// Default settings will be applied to hosts not in this pref.
624const char kPerHostContentSettings[] = "profile.per_host_content_settings";
625
626// Version of the pattern format used to define content settings.
627const char kContentSettingsVersion[] = "profile.content_settings.pref_version";
628
629// Patterns for mapping hostnames to content related settings. Default settings
630// will be applied to hosts that don't match any of the patterns. Replaces
631// kPerHostContentSettings. The pattern format used is defined by
632// kContentSettingsVersion.
633const char kContentSettingsPatterns[] = "profile.content_settings.patterns";
634
635// Boolean that is true if we should unconditionally block third-party cookies,
636// regardless of other content settings.
637const char kBlockThirdPartyCookies[] = "profile.block_third_party_cookies";
638
639// Boolean that is true if non-sandboxed plug-ins should be blocked.
640const char kBlockNonsandboxedPlugins[] = "profile.block_nonsandboxed_plugins";
641
642// Boolean that is true when all locally stored site data (e.g. cookies, local
643// storage, etc..) should be deleted on exit.
644const char kClearSiteDataOnExit[] = "profile.clear_site_data_on_exit";
645
646// Double that indicates the default zoom level.
647const char kDefaultZoomLevel[] = "profile.default_zoom_level";
648
649// Dictionary that maps hostnames to zoom levels.  Hosts not in this pref will
650// be displayed at the default zoom level.
651const char kPerHostZoomLevels[] = "profile.per_host_zoom_levels";
652
653// Boolean that is true if Autofill is enabled and allowed to save profile data.
654const char kAutofillEnabled[] = "autofill.enabled";
655
656// Boolean that is true when auxiliary Autofill profiles are enabled.
657// Currently applies to Address Book "me" card on Mac.  False on Win and Linux.
658const char kAutofillAuxiliaryProfilesEnabled[] =
659    "autofill.auxiliary_profiles_enabled";
660
661// Position and size of the Autofill dialog.
662const char kAutofillDialogPlacement[] = "autofill.dialog_placement";
663
664// Double that indicates positive (for matched forms) upload rate.
665const char kAutofillPositiveUploadRate[] = "autofill.positive_upload_rate";
666
667// Double that indicates negative (for not matched forms) upload rate.
668const char kAutofillNegativeUploadRate[] = "autofill.negative_upload_rate";
669
670// Boolean option set to true on the first run. Non-persistent.
671const char kAutofillPersonalDataManagerFirstRun[] = "autofill.pdm.first_run";
672
673// Modifying bookmarks is completely disabled when this is set to false.
674const char kEditBookmarksEnabled[] = "bookmarks.editing_enabled";
675
676// Boolean that is true when the tabstrip is to be laid out vertically down the
677// side of the browser window.
678const char kUseVerticalTabs[] = "tabs.use_vertical_tabs";
679
680// Boolean that is true when the translate feature is enabled.
681const char kEnableTranslate[] = "translate.enabled";
682
683// Boolean that is true when the bookmark bar for the new tab page is enabled.
684const char kEnableBookmarkBar[] = "bookmark_bar.enabled";
685
686const char kPinnedTabs[] = "pinned_tabs";
687
688// Boolean that is true when HTTP throttling is enabled.
689const char kHttpThrottlingEnabled[] = "http_throttling.enabled";
690
691// Integer that specifies the policy refresh rate for policy in milliseconds.
692// Not all values are meaningful, so it is clamped to a sane range by the cloud
693// policy subsystem.
694const char kPolicyRefreshRate[] = "policy.refresh_rate";
695
696// Integer containing the default Geolocation content setting.
697const char kGeolocationDefaultContentSetting[] =
698    "geolocation.default_content_setting";
699
700// Dictionary that maps [frame, toplevel] to their Geolocation content setting.
701const char kGeolocationContentSettings[] = "geolocation.content_settings";
702
703// Preference to disable 3D APIs (WebGL, Pepper 3D).
704const char kDisable3DAPIs[] = "disable_3d_apis";
705
706// Whether to enable hyperlink auditing ("<a ping>").
707const char kEnableHyperlinkAuditing[] = "enable_a_ping";
708
709// Whether to enable sending referrers.
710const char kEnableReferrers[] = "enable_referrers";
711
712// *************** LOCAL STATE ***************
713// These are attached to the machine/installation
714
715// Prefs for SSLConfigServicePref.
716const char kCertRevocationCheckingEnabled[] = "ssl.rev_checking.enabled";
717const char kSSL3Enabled[] = "ssl.ssl3.enabled";
718const char kTLS1Enabled[] = "ssl.tls1.enabled";
719
720// The metrics client GUID and session ID.
721const char kMetricsClientID[] = "user_experience_metrics.client_id";
722const char kMetricsSessionID[] = "user_experience_metrics.session_id";
723
724// Date/time when the current metrics profile ID was created
725// (which hopefully corresponds to first run).
726const char kMetricsClientIDTimestamp[] =
727    "user_experience_metrics.client_id_timestamp";
728
729// Boolean that specifies whether or not crash reporting and metrics reporting
730// are sent over the network for analysis.
731const char kMetricsReportingEnabled[] =
732    "user_experience_metrics.reporting_enabled";
733
734// Array of strings that are each UMA logs that were supposed to be sent in the
735// first minute of a browser session. These logs include things like crash count
736// info, etc.
737const char kMetricsInitialLogs[] =
738    "user_experience_metrics.initial_logs";
739
740// Array of strings that are each UMA logs that were not sent because the
741// browser terminated before these accumulated metrics could be sent.  These
742// logs typically include histograms and memory reports, as well as ongoing
743// user activities.
744const char kMetricsOngoingLogs[] =
745    "user_experience_metrics.ongoing_logs";
746
747// Where profile specific metrics are placed.
748const char kProfileMetrics[] = "user_experience_metrics.profiles";
749
750// The metrics for a profile are stored as dictionary values under the
751// path kProfileMetrics. The individual metrics are placed under the path
752// kProfileMetrics.kProfilePrefix<hashed-profile-id>.
753const char kProfilePrefix[] = "profile-";
754
755// True if the previous run of the program exited cleanly.
756const char kStabilityExitedCleanly[] =
757    "user_experience_metrics.stability.exited_cleanly";
758
759// Version string of previous run, which is used to assure that stability
760// metrics reported under current version reflect stability of the same version.
761const char kStabilityStatsVersion[] =
762    "user_experience_metrics.stability.stats_version";
763
764// Build time, in seconds since an epoch, which is used to assure that stability
765// metrics reported reflect stability of the same build.
766const char kStabilityStatsBuildTime[] =
767    "user_experience_metrics.stability.stats_buildtime";
768
769// False if we received a session end and either we crashed during processing
770// the session end or ran out of time and windows terminated us.
771const char kStabilitySessionEndCompleted[] =
772    "user_experience_metrics.stability.session_end_completed";
773
774// Number of times the application was launched since last report.
775const char kStabilityLaunchCount[] =
776    "user_experience_metrics.stability.launch_count";
777
778// Number of times the application exited uncleanly since the last report.
779const char kStabilityCrashCount[] =
780    "user_experience_metrics.stability.crash_count";
781
782// Number of times the session end did not complete.
783const char kStabilityIncompleteSessionEndCount[] =
784    "user_experience_metrics.stability.incomplete_session_end_count";
785
786// Number of times a page load event occurred since the last report.
787const char kStabilityPageLoadCount[] =
788    "user_experience_metrics.stability.page_load_count";
789
790// Number of times a renderer process crashed since the last report.
791const char kStabilityRendererCrashCount[] =
792    "user_experience_metrics.stability.renderer_crash_count";
793
794// Number of times an extension renderer process crashed since the last report.
795const char kStabilityExtensionRendererCrashCount[] =
796    "user_experience_metrics.stability.extension_renderer_crash_count";
797
798// Time when the app was last launched, in seconds since the epoch.
799const char kStabilityLaunchTimeSec[] =
800    "user_experience_metrics.stability.launch_time_sec";
801
802// Time when the app was last known to be running, in seconds since
803// the epoch.
804const char kStabilityLastTimestampSec[] =
805    "user_experience_metrics.stability.last_timestamp_sec";
806
807// This is the location of a list of dictionaries of plugin stability stats.
808const char kStabilityPluginStats[] =
809    "user_experience_metrics.stability.plugin_stats2";
810
811// Number of times the renderer has become non-responsive since the last
812// report.
813const char kStabilityRendererHangCount[] =
814    "user_experience_metrics.stability.renderer_hang_count";
815
816// Total number of child process crashes (other than renderer / extension
817// renderer ones, and plugin children, which are counted separately) since the
818// last report.
819const char kStabilityChildProcessCrashCount[] =
820    "user_experience_metrics.stability.child_process_crash_count";
821
822// On Chrome OS, total number of non-Chrome user process crashes
823// since the last report.
824const char kStabilityOtherUserCrashCount[] =
825    "user_experience_metrics.stability.other_user_crash_count";
826
827// On Chrome OS, total number of kernel crashes since the last report.
828const char kStabilityKernelCrashCount[] =
829    "user_experience_metrics.stability.kernel_crash_count";
830
831// On Chrome OS, total number of unclean system shutdowns since the
832// last report.
833const char kStabilitySystemUncleanShutdownCount[] =
834    "user_experience_metrics.stability.system_unclean_shutdowns";
835
836// Number of times the browser has been able to register crash reporting.
837const char kStabilityBreakpadRegistrationSuccess[] =
838    "user_experience_metrics.stability.breakpad_registration_ok";
839
840// Number of times the browser has failed to register crash reporting.
841const char kStabilityBreakpadRegistrationFail[] =
842    "user_experience_metrics.stability.breakpad_registration_fail";
843
844// Number of times the browser has been run under a debugger.
845const char kStabilityDebuggerPresent[] =
846    "user_experience_metrics.stability.debugger_present";
847
848// Number of times the browser has not been run under a debugger.
849const char kStabilityDebuggerNotPresent[] =
850    "user_experience_metrics.stability.debugger_not_present";
851
852// The keys below are used for the dictionaries in the
853// kStabilityPluginStats list.
854const char kStabilityPluginName[] = "name";
855const char kStabilityPluginLaunches[] = "launches";
856const char kStabilityPluginInstances[] = "instances";
857const char kStabilityPluginCrashes[] = "crashes";
858
859// The keys below are strictly increasing counters over the lifetime of
860// a chrome installation. They are (optionally) sent up to the uninstall
861// survey in the event of uninstallation.
862const char kUninstallMetricsPageLoadCount[] =
863    "uninstall_metrics.page_load_count";
864const char kUninstallLaunchCount[] = "uninstall_metrics.launch_count";
865const char kUninstallMetricsInstallDate[] =
866    "uninstall_metrics.installation_date2";
867const char kUninstallMetricsUptimeSec[] = "uninstall_metrics.uptime_sec";
868const char kUninstallLastLaunchTimeSec[] =
869    "uninstall_metrics.last_launch_time_sec";
870const char kUninstallLastObservedRunTimeSec[] =
871    "uninstall_metrics.last_observed_running_time_sec";
872
873// A collection of position, size, and other data relating to the browser
874// window to restore on startup.
875const char kBrowserWindowPlacement[] = "browser.window_placement";
876
877// A collection of position, size, and other data relating to the task
878// manager window to restore on startup.
879const char kTaskManagerWindowPlacement[] = "task_manager.window_placement";
880
881// A collection of position, size, and other data relating to the keyword
882// editor window to restore on startup.
883const char kKeywordEditorWindowPlacement[] = "keyword_editor.window_placement";
884
885// A collection of position, size, and other data relating to the preferences
886// window to restore on startup.
887const char kPreferencesWindowPlacement[] = "preferences.window_placement";
888
889// An integer specifying the total number of bytes to be used by the
890// renderer's in-memory cache of objects.
891const char kMemoryCacheSize[] = "renderer.memory_cache.size";
892
893// String which specifies where to download files to by default.
894const char kDownloadDefaultDirectory[] = "download.default_directory";
895
896// Boolean that records if the download directory was changed by an
897// upgrade a unsafe location to a safe location.
898const char kDownloadDirUpgraded[] = "download.directory_upgrade";
899
900// String which specifies where to save html files to by default.
901const char kSaveFileDefaultDirectory[] = "savefile.default_directory";
902
903// The type used to save the page. See the enum SavePackage::SavePackageType in
904// the chrome/browser/download/save_package.h for the possible values.
905const char kSaveFileType[] = "savefile.type";
906
907// String which specifies the last directory that was chosen for uploading
908// or opening a file.
909const char kSelectFileLastDirectory[] = "selectfile.last_directory";
910
911// Boolean that specifies if file selection dialogs are shown.
912const char kAllowFileSelectionDialogs[] = "select_file_dialogs.allowed";
913
914// Extensions which should be opened upon completion.
915const char kDownloadExtensionsToOpen[] = "download.extensions_to_open";
916
917// Integer which specifies the frequency in milliseconds for detecting whether
918// plugin windows are hung.
919const char kHungPluginDetectFrequency[] = "browser.hung_plugin_detect_freq";
920
921// Integer which specifies the timeout value to be used for SendMessageTimeout
922// to detect a hung plugin window.
923const char kPluginMessageResponseTimeout[] =
924    "browser.plugin_message_response_timeout";
925
926// String which represents the dictionary name for our spell-checker.
927const char kSpellCheckDictionary[] = "spellcheck.dictionary";
928
929// Dictionary of schemes used by the external protocol handler.
930// The value is true if the scheme must be ignored.
931const char kExcludedSchemes[] = "protocol_handler.excluded_schemes";
932
933// Keys used for MAC handling of SafeBrowsing requests.
934const char kSafeBrowsingClientKey[] = "safe_browsing.client_key";
935const char kSafeBrowsingWrappedKey[] = "safe_browsing.wrapped_key";
936
937// Integer that specifies the index of the tab the user was on when they
938// last visited the options window.
939const char kOptionsWindowLastTabIndex[] = "options_window.last_tab_index";
940
941// Integer that specifies the index of the tab the user was on when they
942// last visited the content settings window.
943const char kContentSettingsWindowLastTabIndex[] =
944    "content_settings_window.last_tab_index";
945
946// Integer that specifies the index of the tab the user was on when they
947// last visited the Certificate Manager window.
948const char kCertificateManagerWindowLastTabIndex[] =
949    "certificate_manager_window.last_tab_index";
950
951// The mere fact that this pref is registered signals that we should show the
952// First Run Search Information bubble when the first browser window appears.
953// This preference is only registered by the first-run procedure.
954const char kShouldShowFirstRunBubble[] = "show-first-run-bubble";
955
956// The mere fact that this pref is registered signals that we should show the
957// smaller OEM First Run Search Information bubble when the first
958// browser window appears.
959// This preference is only registered by the first-run procedure.
960const char kShouldUseOEMFirstRunBubble[] = "show-OEM-first-run-bubble";
961
962// The mere fact that this pref is registered signals that we should show the
963// minimal First Run omnibox information bubble when the first
964// browser window appears.
965// This preference is only registered by the first-run procedure.
966const char kShouldUseMinimalFirstRunBubble[] = "show-minimal-first-run-bubble";
967
968// Signal that we should show the welcome page when we launch Chrome.
969const char kShouldShowWelcomePage[] = "show-welcome-page";
970
971// String containing the last known Google URL.  We re-detect this on startup in
972// most cases, and use it to send traffic to the correct Google host or with the
973// correct Google domain/country code for whatever location the user is in.
974const char kLastKnownGoogleURL[] = "browser.last_known_google_url";
975
976// String containing the last prompted Google URL to the user.
977// If the user is using .x TLD for Google URL and gets prompted about .y TLD
978// for Google URL, and says "no", we should leave the search engine set to .x
979// but not prompt again until the domain changes away from .y.
980const char kLastPromptedGoogleURL[] = "browser.last_prompted_google_url";
981
982// String containing the last known intranet redirect URL, if any.  See
983// intranet_redirect_detector.h for more information.
984const char kLastKnownIntranetRedirectOrigin[] = "browser.last_redirect_origin";
985
986// Integer containing the system Country ID the first time we checked the
987// template URL prepopulate data.  This is used to avoid adding a whole bunch of
988// new search engine choices if prepopulation runs when the user's Country ID
989// differs from their previous Country ID.  This pref does not exist until
990// prepopulation has been run at least once.
991const char kCountryIDAtInstall[] = "countryid_at_install";
992// OBSOLETE. Same as above, but uses the Windows-specific GeoID value instead.
993// Updated if found to the above key.
994const char kGeoIDAtInstall[] = "geoid_at_install";
995
996// An enum value of how the browser was shut down (see browser_shutdown.h).
997const char kShutdownType[] = "shutdown.type";
998// Number of processes that were open when the user shut down.
999const char kShutdownNumProcesses[] = "shutdown.num_processes";
1000// Number of processes that were shut down using the slow path.
1001const char kShutdownNumProcessesSlow[] = "shutdown.num_processes_slow";
1002
1003// Whether to restart the current Chrome session automatically as the last thing
1004// before shutting everything down.
1005const char kRestartLastSessionOnShutdown[] = "restart.last.session.on.shutdown";
1006
1007// Number of bookmarks/folders on the bookmark bar/other bookmark folder.
1008const char kNumBookmarksOnBookmarkBar[] =
1009    "user_experience_metrics.num_bookmarks_on_bookmark_bar";
1010const char kNumFoldersOnBookmarkBar[] =
1011    "user_experience_metrics.num_folders_on_bookmark_bar";
1012const char kNumBookmarksInOtherBookmarkFolder[] =
1013    "user_experience_metrics.num_bookmarks_in_other_bookmark_folder";
1014const char kNumFoldersInOtherBookmarkFolder[] =
1015    "user_experience_metrics.num_folders_in_other_bookmark_folder";
1016
1017// Number of keywords.
1018const char kNumKeywords[] = "user_experience_metrics.num_keywords";
1019
1020// Placeholder preference for disabling voice / video chat if it is ever added.
1021// Currently, this does not change any behavior.
1022const char kDisableVideoAndChat[] = "disable_video_chat";
1023
1024// Whether Extensions are enabled.
1025const char kDisableExtensions[] = "extensions.disabled";
1026
1027// Whether the plugin finder in the default plugin is enabled.
1028const char kDisablePluginFinder[] = "plugins.disable_plugin_finder";
1029
1030// Integer boolean representing the width (in pixels) of the container for
1031// browser actions.
1032const char kBrowserActionContainerWidth[] =
1033    "extensions.browseractions.container.width";
1034
1035// A whitelist of extension ids the user can install: exceptions from the
1036// following blacklist. This is controlled by the administrator.
1037const char kExtensionInstallAllowList[] = "extensions.install.allowlist";
1038// A blacklist, containing extensions the user cannot install. This list can
1039// conatin "*" meaning all extensions. This is controlled by the administrator.
1040// This list should not be confused with the extension blacklist, which is
1041// Google controlled.
1042const char kExtensionInstallDenyList[] = "extensions.install.denylist";
1043
1044// A list containing extensions that Chrome will silently install
1045// at startup time. It is a list of strings, each string contains
1046// an extension ID and an update URL, delimited by a semicolon.
1047// This preference is set by an admin policy, and meant to be only
1048// accessed through ExternalPolicyExtensionProvider.
1049const char kExtensionInstallForceList[] = "extensions.install.forcelist";
1050
1051// Time of the last, and next scheduled, extensions auto-update checks.
1052const char kLastExtensionsUpdateCheck[] = "extensions.autoupdate.last_check";
1053const char kNextExtensionsUpdateCheck[] = "extensions.autoupdate.next_check";
1054// Version number of last blacklist check
1055const char kExtensionBlacklistUpdateVersion[] =
1056    "extensions.blacklistupdate.version";
1057
1058const char kExtensionSidebarWidth[] = "extensions.sidebar.width";
1059
1060// New Tab Page URLs that should not be shown as most visited thumbnails.
1061const char kNTPMostVisitedURLsBlacklist[] = "ntp.most_visited_blacklist";
1062
1063// The URLs that have been pinned to the Most Visited section of the New Tab
1064// Page.
1065const char kNTPMostVisitedPinnedURLs[] = "ntp.pinned_urls";
1066
1067// Data downloaded from promo resource pages (JSON, RSS) to be used to
1068// dynamically deliver data for the new tab page.
1069const char kNTPPromoResourceCache[] = "ntp.promo_resource_cache";
1070
1071// Last time of update of promo_resource_cache.
1072const char kNTPPromoResourceCacheUpdate[] = "ntp.promo_resource_cache_update";
1073
1074// Serves promo resources for the NTP.
1075const char kNTPPromoResourceServer[] = "ntp.web_resource_server";
1076
1077// Serves tips for the NTP.
1078const char kNTPTipsResourceServer[] = "ntp.tips_resource_server";
1079
1080// Serves dates to determine display of elements on the NTP.
1081const char kNTPDateResourceServer[] = "ntp.date_resource_server";
1082
1083// Which sections should be visible on the new tab page
1084// 1 - Show the most visited sites in a grid
1085// 2 - Show the most visited sites as a list
1086// 4 - Show the recent section
1087// 8 - (Show tips -- DEPRECATED)
1088// 16 - Show sync status
1089const char kNTPShownSections[] = "ntp.shown_sections";
1090
1091// This pref is used for migrating the prefs for the NTP
1092const char kNTPPrefVersion[] = "ntp.pref_version";
1093
1094// Dates between which the NTP should show a custom logo rather than the
1095// standard one.
1096const char kNTPCustomLogoStart[] = "ntp.alt_logo_start";
1097const char kNTPCustomLogoEnd[] = "ntp.alt_logo_end";
1098
1099// The promo resource service version number.
1100const char kNTPPromoVersion[] = "ntp.promo_version";
1101
1102// The last locale the promo was fetched for.
1103const char kNTPPromoLocale[] = "ntp.promo_locale";
1104
1105// Whether promo should be shown to Dev builds, Beta and Dev, or all builds.
1106const char kNTPPromoBuild[] = "ntp.promo_build";
1107
1108// True if user has explicitly closed the promo line.
1109const char kNTPPromoClosed[] = "ntp.promo_closed";
1110
1111// Users are randomly divided into 16 groups in order to slowly roll out
1112// special promos.
1113const char kNTPPromoGroup[] = "ntp.promo_group";
1114
1115// Amount of time each promo group should be shown a promo that is being slowly
1116// rolled out, in hours.
1117const char kNTPPromoGroupTimeSlice[] = "ntp.promo_group_timeslice";
1118
1119// Promo line from server.
1120const char kNTPPromoLine[] = "ntp.promo_line";
1121
1122// Dates between which the NTP should show a promotional line downloaded
1123// from the promo server.
1124const char kNTPPromoStart[] = "ntp.promo_start";
1125const char kNTPPromoEnd[] = "ntp.promo_end";
1126
1127// The id of the last web store promo actually displayed on the NTP.
1128const char kNTPWebStorePromoLastId[] = "ntp.webstore_last_promo_id";
1129
1130// The id of the current web store promo.
1131const char kNTPWebStorePromoId[] = "ntp.webstorepromo.id";
1132
1133// The header line for the NTP web store promo.
1134const char kNTPWebStorePromoHeader[] = "ntp.webstorepromo.header";
1135
1136// The button text for the NTP web store promo.
1137const char kNTPWebStorePromoButton[] = "ntp.webstorepromo.button";
1138
1139// The button link for the NTP web store promo.
1140const char kNTPWebStorePromoLink[] = "ntp.webstorepromo.link";
1141
1142// The "hide this" link text for the NTP web store promo.
1143const char kNTPWebStorePromoExpire[] = "ntp.webstorepromo.expire";
1144
1145// The most up-to-date GPU blacklist downloaded from the web, which replaces
1146// the one that's installed with chrome.
1147const char kGpuBlacklist[] = "gpu_blacklist";
1148
1149// Last time of update of gpu_blacklist.
1150const char kGpuBlacklistUpdate[] = "gpu_blacklist_update";
1151
1152const char kDevToolsDisabled[] = "devtools.disabled";
1153
1154// A boolean specifying whether dev tools window should be opened docked.
1155const char kDevToolsOpenDocked[] = "devtools.open_docked";
1156
1157// Integer location of the split bar in the browser view.
1158const char kDevToolsSplitLocation[] = "devtools.split_location";
1159
1160// 64-bit integer serialization of the base::Time when the last sync occurred.
1161const char kSyncLastSyncedTime[] = "sync.last_synced_time";
1162
1163// Boolean specifying whether the user finished setting up sync.
1164const char kSyncHasSetupCompleted[] = "sync.has_setup_completed";
1165
1166// Boolean specifying whether to automatically sync all data types (including
1167// future ones, as they're added).  If this is true, the following preferences
1168// (kSyncBookmarks, kSyncPasswords, etc.) can all be ignored.
1169const char kKeepEverythingSynced[] = "sync.keep_everything_synced";
1170
1171// Booleans specifying whether the user has selected to sync the following
1172// datatypes.
1173const char kSyncBookmarks[] = "sync.bookmarks";
1174const char kSyncPasswords[] = "sync.passwords";
1175const char kSyncPreferences[] = "sync.preferences";
1176const char kSyncApps[] = "sync.apps";
1177const char kSyncAutofill[] = "sync.autofill";
1178const char kSyncAutofillProfile[] = "sync.autofill_profile";
1179const char kSyncThemes[] = "sync.themes";
1180const char kSyncTypedUrls[] = "sync.typed_urls";
1181const char kSyncExtensions[] = "sync.extensions";
1182const char kSyncSessions[] = "sync.sessions";
1183
1184// Boolean used by enterprise configuration management in order to lock down
1185// sync.
1186const char kSyncManaged[] = "sync.managed";
1187
1188// Boolean to prevent sync from automatically starting up.  This is
1189// used when sync is disabled by the user via the privacy dashboard.
1190const char kSyncSuppressStart[] = "sync.suppress_start";
1191
1192// Boolean to represent whether the legacy autofill profile data has been
1193// migrated to the new model.
1194const char kAutofillProfileMigrated[] = "sync.autofill_migrated";
1195
1196// A string that can be used to restore sync encryption infrastructure on
1197// startup so that the user doesn't need to provide credentials on each start.
1198const char kEncryptionBootstrapToken[] = "sync.encryption_bootstrap_token";
1199
1200// Boolean tracking whether the user chose to specify a secondary encryption
1201// passphrase.
1202const char kSyncUsingSecondaryPassphrase[] = "sync.using_secondary_passphrase";
1203
1204// String that identifies the user logged into sync and other google services.
1205const char kGoogleServicesUsername[] = "google.services.username";
1206
1207// Create web application shortcut dialog preferences.
1208const char kWebAppCreateOnDesktop[] = "browser.web_app.create_on_desktop";
1209const char kWebAppCreateInAppsMenu[] = "browser.web_app.create_in_apps_menu";
1210const char kWebAppCreateInQuickLaunchBar[] =
1211    "browser.web_app.create_in_quick_launch_bar";
1212
1213// Dictionary that maps Geolocation network provider server URLs to
1214// corresponding access token.
1215const char kGeolocationAccessToken[] = "geolocation.access_token";
1216
1217// Whether PasswordForms have been migrated from the WedDataService to the
1218// LoginDatabase.
1219const char kLoginDatabaseMigrated[] = "login_database.migrated";
1220
1221// The root URL of the cloud print service.
1222const char kCloudPrintServiceURL[] = "cloud_print.service_url";
1223
1224// The last requested size of the dialog as it was closed.
1225const char kCloudPrintDialogWidth[] = "cloud_print.dialog_size.width";
1226const char kCloudPrintDialogHeight[] = "cloud_print.dialog_size.height";
1227
1228const char kRemotingHasSetupCompleted[] = "remoting.has_setup_completed";
1229
1230// The list of BackgroundContents that should be loaded when the browser
1231// launches.
1232const char kRegisteredBackgroundContents[] = "background_contents.registered";
1233
1234// String that lists supported HTTP authentication schemes.
1235const char kAuthSchemes[] = "auth.schemes";
1236
1237// Boolean that specifies whether to disable CNAME lookups when generating
1238// Kerberos SPN.
1239const char kDisableAuthNegotiateCnameLookup[] =
1240    "auth.disable_negotiate_cname_lookup";
1241// Boolean that specifies whether to include the port in a generated Kerberos
1242// SPN.
1243const char kEnableAuthNegotiatePort[] = "auth.enable_negotiate_port";
1244// Whitelist containing servers for which Integrated Authentication is enabled.
1245const char kAuthServerWhitelist[] = "auth.server_whitelist";
1246// Whitelist containing servers Chrome is allowed to do Kerberos delegation
1247// with.
1248const char kAuthNegotiateDelegateWhitelist[] =
1249    "auth.negotiate_delegate_whitelist";
1250// String that specifies the name of a custom GSSAPI library to load.
1251const char kGSSAPILibraryName[] = "auth.gssapi_library_name";
1252
1253#if defined(OS_CHROMEOS)
1254// Dictionary for transient storage of settings that should go into signed
1255// settings storage before owner has been assigned.
1256const char kSignedSettingsTempStorage[] = "signed_settings_temp_storage";
1257
1258// The hardware keyboard layout of the device. This should look like
1259// "xkb:us::eng".
1260const char kHardwareKeyboardLayout[] = "intl.hardware_keyboard";
1261#endif
1262
1263// Whether there is a Flash version installed that supports clearing LSO data.
1264const char kClearPluginLSODataEnabled[] = "browser.clear_lso_data_enabled";
1265
1266// *************** SERVICE PREFS ***************
1267// These are attached to the service process.
1268
1269const char kCloudPrintProxyEnabled[] = "cloud_print.enabled";
1270// The unique id for this instance of the cloud print proxy.
1271const char kCloudPrintProxyId[] = "cloud_print.proxy_id";
1272// The GAIA auth token for Cloud Print
1273const char kCloudPrintAuthToken[] = "cloud_print.auth_token";
1274// The GAIA auth token used by Cloud Print to authenticate with the XMPP server
1275// This should eventually go away because the above token should work for both.
1276const char kCloudPrintXMPPAuthToken[] = "cloud_print.xmpp_auth_token";
1277// The email address of the account used to authenticate with the Cloud Print
1278// server.
1279const char kCloudPrintEmail[] = "cloud_print.email";
1280// Settings specific to underlying print system.
1281const char kCloudPrintPrintSystemSettings[] =
1282    "cloud_print.print_system_settings";
1283// A boolean indicating whether we should poll for print jobs when don't have
1284// an XMPP connection (false by default).
1285const char kCloudPrintEnableJobPoll[] = "cloud_print.enable_job_poll";
1286
1287// Used by the service process to determine if the remoting host is enabled.
1288const char kRemotingHostEnabled[] = "remoting.host_enabled";
1289
1290// Preference to story proxy settings.
1291const char kProxy[] = "proxy";
1292
1293// Preferences that are exclusivly used to store managed values for default
1294// content settings.
1295const char kManagedDefaultCookiesSetting[] =
1296    "profile.managed_default_content_settings.cookies";
1297const char kManagedDefaultImagesSetting[] =
1298    "profile.managed_default_content_settings.images";
1299const char kManagedDefaultJavaScriptSetting[] =
1300    "profile.managed_default_content_settings.javascript";
1301const char kManagedDefaultPluginsSetting[] =
1302    "profile.managed_default_content_settings.plugins";
1303const char kManagedDefaultPopupsSetting[] =
1304    "profile.managed_default_content_settings.popups";
1305
1306// Preferences that are exclusivly used to store managed
1307// content settings patterns.
1308const char kManagedCookiesAllowedForUrls[] =
1309    "profile.managed_cookies_allowed_for_urls";
1310const char kManagedCookiesBlockedForUrls[] =
1311    "profile.managed_cookies_blocked_for_urls";
1312const char kManagedCookiesSessionOnlyForUrls[] =
1313    "profile.managed_cookies_sessiononly_for_urls";
1314const char kManagedImagesAllowedForUrls[] =
1315    "profile.managed_images_allowed_for_urls";
1316const char kManagedImagesBlockedForUrls[] =
1317    "profile.managed_images_blocked_for_urls";
1318const char kManagedJavaScriptAllowedForUrls[] =
1319    "profile.managed_javascript_allowed_for_urls";
1320const char kManagedJavaScriptBlockedForUrls[] =
1321    "profile.managed_javascript_blocked_for_urls";
1322const char kManagedPluginsAllowedForUrls[] =
1323    "profile.managed_plugins_allowed_for_urls";
1324const char kManagedPluginsBlockedForUrls[] =
1325    "profile.managed_plugins_blocked_for_urls";
1326const char kManagedPopupsAllowedForUrls[] =
1327    "profile.managed_popups_allowed_for_urls";
1328const char kManagedPopupsBlockedForUrls[] =
1329    "profile.managed_popups_blocked_for_urls";
1330
1331// Dictionary for storing the set of known background pages (keys are extension
1332// IDs of background page owners, value is a boolean that is true if the user
1333// needs to acknowledge this page.
1334const char kKnownBackgroundPages[] = "background_pages.known";
1335
1336// Dictionary that maps URL schemes (protocols) to URL handlers.
1337const char kRegisteredProtocolHandlers[] = "registered_protocol_handlers";
1338
1339// Set to true if the user created a login item so we should not modify it when
1340// uninstalling background apps.
1341const char kUserCreatedLoginItem[] = "background_mode.user_created_login_item";
1342
1343}  // namespace prefs
1344