pref_names.cc revision 010d83a9304c5a91596085d917d248abff47903a
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 3// found in the LICENSE file. 4 5#include "chrome/common/pref_names.h" 6 7#include "base/basictypes.h" 8#include "chrome/common/pref_font_webkit_names.h" 9 10namespace prefs { 11 12// *************** PROFILE PREFS *************** 13// These are attached to the user profile 14 15// A string property indicating whether default apps should be installed 16// in this profile. Use the value "install" to enable defaults apps, or 17// "noinstall" to disable them. This property is usually set in the 18// master_preferences and copied into the profile preferences on first run. 19// Defaults apps are installed only when creating a new profile. 20const char kDefaultApps[] = "default_apps"; 21 22// Whether we have installed default apps yet in this profile. 23const char kDefaultAppsInstalled[] = "default_apps_installed"; 24 25// Disables screenshot accelerators and extension APIs. 26// This setting resides both in profile prefs and local state. Accelerator 27// handling code reads local state, while extension APIs use profile pref. 28const char kDisableScreenshots[] = "disable_screenshots"; 29 30// A boolean specifying whether the New Tab page is the home page or not. 31const char kHomePageIsNewTabPage[] = "homepage_is_newtabpage"; 32 33// This is the URL of the page to load when opening new tabs. 34const char kHomePage[] = "homepage"; 35 36// Maps host names to whether the host is manually allowed or blocked. 37const char kManagedModeManualHosts[] = "profile.managed.manual_hosts"; 38// Maps URLs to whether the URL is manually allowed or blocked. 39const char kManagedModeManualURLs[] = "profile.managed.manual_urls"; 40 41// Stores the email address associated with the google account of the custodian 42// of the managed user, set when the managed user is created. 43const char kManagedUserCustodianEmail[] = "profile.managed.custodian_email"; 44 45// Stores the display name associated with the google account of the custodian 46// of the managed user, updated (if possible) each time the managed user 47// starts a session. 48const char kManagedUserCustodianName[] = "profile.managed.custodian_name"; 49 50// Stores settings that can be modified both by a supervised user and their 51// manager. See ManagedUserSharedSettingsService for a description of 52// the format. 53const char kManagedUserSharedSettings[] = "profile.managed.shared_settings"; 54 55// An integer that keeps track of the profile icon version. This allows us to 56// determine the state of the profile icon for icon format changes. 57const char kProfileIconVersion[] = "profile.icon_version"; 58 59// Used to determine if the last session exited cleanly. Set to false when 60// first opened, and to true when closing. On startup if the value is false, 61// it means the profile didn't exit cleanly. 62// DEPRECATED: this is replaced by kSessionExitType and exists for backwards 63// compatability. 64const char kSessionExitedCleanly[] = "profile.exited_cleanly"; 65 66// A string pref whose values is one of the values defined by 67// |ProfileImpl::kPrefExitTypeXXX|. Set to |kPrefExitTypeCrashed| on startup and 68// one of |kPrefExitTypeNormal| or |kPrefExitTypeSessionEnded| during 69// shutdown. Used to determine the exit type the last time the profile was open. 70const char kSessionExitType[] = "profile.exit_type"; 71 72// An integer pref. Holds one of several values: 73// 0: (deprecated) open the homepage on startup. 74// 1: restore the last session. 75// 2: this was used to indicate a specific session should be restored. It is 76// no longer used, but saved to avoid conflict with old preferences. 77// 3: unused, previously indicated the user wants to restore a saved session. 78// 4: restore the URLs defined in kURLsToRestoreOnStartup. 79// 5: open the New Tab Page on startup. 80const char kRestoreOnStartup[] = "session.restore_on_startup"; 81 82// A preference to keep track of whether we have already checked whether we 83// need to migrate the user from kRestoreOnStartup=0 to kRestoreOnStartup=4. 84// We only need to do this check once, on upgrade from m18 or lower to m19 or 85// higher. 86const char kRestoreOnStartupMigrated[] = "session.restore_on_startup_migrated"; 87 88// The URLs to restore on startup or when the home button is pressed. The URLs 89// are only restored on startup if kRestoreOnStartup is 4. 90const char kURLsToRestoreOnStartup[] = "session.startup_urls"; 91 92// Old startup url pref name for kURLsToRestoreOnStartup. 93const char kURLsToRestoreOnStartupOld[] = "session.urls_to_restore_on_startup"; 94 95// Serialized migration time of kURLsToRestoreOnStartup (see 96// base::Time::ToInternalValue for details on serialization format). 97const char kRestoreStartupURLsMigrationTime[] = 98 "session.startup_urls_migration_time"; 99 100// If set to true profiles are created in ephemeral mode and do not store their 101// data in the profile folder on disk but only in memory. 102const char kForceEphemeralProfiles[] = "profile.ephemeral_mode"; 103 104// The application locale. 105// For OS_CHROMEOS we maintain kApplicationLocale property in both local state 106// and user's profile. Global property determines locale of login screen, 107// while user's profile determines his personal locale preference. 108const char kApplicationLocale[] = "intl.app_locale"; 109#if defined(OS_CHROMEOS) 110// Locale preference of device' owner. ChromeOS device appears in this locale 111// after startup/wakeup/signout. 112const char kOwnerLocale[] = "intl.owner_locale"; 113// Locale accepted by user. Non-syncable. 114// Used to determine whether we need to show Locale Change notification. 115const char kApplicationLocaleAccepted[] = "intl.app_locale_accepted"; 116// Non-syncable item. 117// It is used in two distinct ways. 118// (1) Used for two-step initialization of locale in ChromeOS 119// because synchronization of kApplicationLocale is not instant. 120// (2) Used to detect locale change. Locale change is detected by 121// LocaleChangeGuard in case values of kApplicationLocaleBackup and 122// kApplicationLocale are both non-empty and differ. 123// Following is a table showing how state of those prefs may change upon 124// common real-life use cases: 125// AppLocale Backup Accepted 126// Initial login - A - 127// Sync B A - 128// Accept (B) B B B 129// ----------------------------------------------------------- 130// Initial login - A - 131// No sync and second login A A - 132// Change options B B - 133// ----------------------------------------------------------- 134// Initial login - A - 135// Sync A A - 136// Locale changed on login screen A C - 137// Accept (A) A A A 138// ----------------------------------------------------------- 139// Initial login - A - 140// Sync B A - 141// Revert A A - 142const char kApplicationLocaleBackup[] = "intl.app_locale_backup"; 143#endif 144 145// The default character encoding to assume for a web page in the 146// absence of MIME charset specification 147const char kDefaultCharset[] = "intl.charset_default"; 148 149// The value to use for Accept-Languages HTTP header when making an HTTP 150// request. 151const char kAcceptLanguages[] = "intl.accept_languages"; 152 153// The value to use for showing locale-dependent encoding list for different 154// locale, it's initialized from the corresponding string resource that is 155// stored in non-translatable part of the resource bundle. 156const char kStaticEncodings[] = "intl.static_encodings"; 157 158// If these change, the corresponding enums in the extension API 159// experimental.fontSettings.json must also change. 160const char* const kWebKitScriptsForFontFamilyMaps[] = { 161#define EXPAND_SCRIPT_FONT(x, script_name) script_name , 162#include "chrome/common/pref_font_script_names-inl.h" 163ALL_FONT_SCRIPTS("unused param") 164#undef EXPAND_SCRIPT_FONT 165}; 166 167const size_t kWebKitScriptsForFontFamilyMapsLength = 168 arraysize(kWebKitScriptsForFontFamilyMaps); 169 170// Strings for WebKit font family preferences. If these change, the pref prefix 171// in pref_names_util.cc and the pref format in font_settings_api.cc must also 172// change. 173const char kWebKitStandardFontFamilyMap[] = 174 WEBKIT_WEBPREFS_FONTS_STANDARD; 175const char kWebKitFixedFontFamilyMap[] = 176 WEBKIT_WEBPREFS_FONTS_FIXED; 177const char kWebKitSerifFontFamilyMap[] = 178 WEBKIT_WEBPREFS_FONTS_SERIF; 179const char kWebKitSansSerifFontFamilyMap[] = 180 WEBKIT_WEBPREFS_FONTS_SANSERIF; 181const char kWebKitCursiveFontFamilyMap[] = 182 WEBKIT_WEBPREFS_FONTS_CURSIVE; 183const char kWebKitFantasyFontFamilyMap[] = 184 WEBKIT_WEBPREFS_FONTS_FANTASY; 185const char kWebKitPictographFontFamilyMap[] = 186 WEBKIT_WEBPREFS_FONTS_PICTOGRAPH; 187const char kWebKitStandardFontFamilyArabic[] = 188 "webkit.webprefs.fonts.standard.Arab"; 189const char kWebKitFixedFontFamilyArabic[] = 190 "webkit.webprefs.fonts.fixed.Arab"; 191const char kWebKitSerifFontFamilyArabic[] = 192 "webkit.webprefs.fonts.serif.Arab"; 193const char kWebKitSansSerifFontFamilyArabic[] = 194 "webkit.webprefs.fonts.sansserif.Arab"; 195const char kWebKitStandardFontFamilyCyrillic[] = 196 "webkit.webprefs.fonts.standard.Cyrl"; 197const char kWebKitFixedFontFamilyCyrillic[] = 198 "webkit.webprefs.fonts.fixed.Cyrl"; 199const char kWebKitSerifFontFamilyCyrillic[] = 200 "webkit.webprefs.fonts.serif.Cyrl"; 201const char kWebKitSansSerifFontFamilyCyrillic[] = 202 "webkit.webprefs.fonts.sansserif.Cyrl"; 203const char kWebKitStandardFontFamilyGreek[] = 204 "webkit.webprefs.fonts.standard.Grek"; 205const char kWebKitFixedFontFamilyGreek[] = 206 "webkit.webprefs.fonts.fixed.Grek"; 207const char kWebKitSerifFontFamilyGreek[] = 208 "webkit.webprefs.fonts.serif.Grek"; 209const char kWebKitSansSerifFontFamilyGreek[] = 210 "webkit.webprefs.fonts.sansserif.Grek"; 211const char kWebKitStandardFontFamilyJapanese[] = 212 "webkit.webprefs.fonts.standard.Jpan"; 213const char kWebKitFixedFontFamilyJapanese[] = 214 "webkit.webprefs.fonts.fixed.Jpan"; 215const char kWebKitSerifFontFamilyJapanese[] = 216 "webkit.webprefs.fonts.serif.Jpan"; 217const char kWebKitSansSerifFontFamilyJapanese[] = 218 "webkit.webprefs.fonts.sansserif.Jpan"; 219const char kWebKitStandardFontFamilyKorean[] = 220 "webkit.webprefs.fonts.standard.Hang"; 221const char kWebKitFixedFontFamilyKorean[] = 222 "webkit.webprefs.fonts.fixed.Hang"; 223const char kWebKitSerifFontFamilyKorean[] = 224 "webkit.webprefs.fonts.serif.Hang"; 225const char kWebKitSansSerifFontFamilyKorean[] = 226 "webkit.webprefs.fonts.sansserif.Hang"; 227const char kWebKitCursiveFontFamilyKorean[] = 228 "webkit.webprefs.fonts.cursive.Hang"; 229const char kWebKitStandardFontFamilySimplifiedHan[] = 230 "webkit.webprefs.fonts.standard.Hans"; 231const char kWebKitFixedFontFamilySimplifiedHan[] = 232 "webkit.webprefs.fonts.fixed.Hans"; 233const char kWebKitSerifFontFamilySimplifiedHan[] = 234 "webkit.webprefs.fonts.serif.Hans"; 235const char kWebKitSansSerifFontFamilySimplifiedHan[] = 236 "webkit.webprefs.fonts.sansserif.Hans"; 237const char kWebKitStandardFontFamilyTraditionalHan[] = 238 "webkit.webprefs.fonts.standard.Hant"; 239const char kWebKitFixedFontFamilyTraditionalHan[] = 240 "webkit.webprefs.fonts.fixed.Hant"; 241const char kWebKitSerifFontFamilyTraditionalHan[] = 242 "webkit.webprefs.fonts.serif.Hant"; 243const char kWebKitSansSerifFontFamilyTraditionalHan[] = 244 "webkit.webprefs.fonts.sansserif.Hant"; 245 246// WebKit preferences. 247const char kWebKitWebSecurityEnabled[] = "webkit.webprefs.web_security_enabled"; 248const char kWebKitDomPasteEnabled[] = "webkit.webprefs.dom_paste_enabled"; 249const char kWebKitShrinksStandaloneImagesToFit[] = 250 "webkit.webprefs.shrinks_standalone_images_to_fit"; 251const char kWebKitInspectorSettings[] = "webkit.webprefs.inspector_settings"; 252const char kWebKitUsesUniversalDetector[] = 253 "webkit.webprefs.uses_universal_detector"; 254const char kWebKitTextAreasAreResizable[] = 255 "webkit.webprefs.text_areas_are_resizable"; 256const char kWebKitJavaEnabled[] = "webkit.webprefs.java_enabled"; 257const char kWebkitTabsToLinks[] = "webkit.webprefs.tabs_to_links"; 258const char kWebKitAllowDisplayingInsecureContent[] = 259 "webkit.webprefs.allow_displaying_insecure_content"; 260const char kWebKitAllowRunningInsecureContent[] = 261 "webkit.webprefs.allow_running_insecure_content"; 262#if defined(OS_ANDROID) 263const char kWebKitFontScaleFactor[] = "webkit.webprefs.font_scale_factor"; 264const char kWebKitForceEnableZoom[] = "webkit.webprefs.force_enable_zoom"; 265const char kWebKitPasswordEchoEnabled[] = 266 "webkit.webprefs.password_echo_enabled"; 267#endif 268 269const char kWebKitCommonScript[] = "Zyyy"; 270const char kWebKitStandardFontFamily[] = "webkit.webprefs.fonts.standard.Zyyy"; 271const char kWebKitFixedFontFamily[] = "webkit.webprefs.fonts.fixed.Zyyy"; 272const char kWebKitSerifFontFamily[] = "webkit.webprefs.fonts.serif.Zyyy"; 273const char kWebKitSansSerifFontFamily[] = 274 "webkit.webprefs.fonts.sansserif.Zyyy"; 275const char kWebKitCursiveFontFamily[] = "webkit.webprefs.fonts.cursive.Zyyy"; 276const char kWebKitFantasyFontFamily[] = "webkit.webprefs.fonts.fantasy.Zyyy"; 277const char kWebKitPictographFontFamily[] = 278 "webkit.webprefs.fonts.pictograph.Zyyy"; 279const char kWebKitDefaultFontSize[] = "webkit.webprefs.default_font_size"; 280const char kWebKitDefaultFixedFontSize[] = 281 "webkit.webprefs.default_fixed_font_size"; 282const char kWebKitMinimumFontSize[] = "webkit.webprefs.minimum_font_size"; 283const char kWebKitMinimumLogicalFontSize[] = 284 "webkit.webprefs.minimum_logical_font_size"; 285const char kWebKitJavascriptEnabled[] = "webkit.webprefs.javascript_enabled"; 286const char kWebKitJavascriptCanOpenWindowsAutomatically[] = 287 "webkit.webprefs.javascript_can_open_windows_automatically"; 288const char kWebKitLoadsImagesAutomatically[] = 289 "webkit.webprefs.loads_images_automatically"; 290const char kWebKitPluginsEnabled[] = "webkit.webprefs.plugins_enabled"; 291 292// Boolean that is true when SafeBrowsing is enabled. 293const char kSafeBrowsingEnabled[] = "safebrowsing.enabled"; 294 295// Boolean that tell us whether malicious download feedback is enabled. 296const char kSafeBrowsingDownloadFeedbackEnabled[] = 297 "safebrowsing.download_feedback_enabled"; 298 299// Boolean that is true when SafeBrowsing Malware Report is enabled. 300const char kSafeBrowsingReportingEnabled[] = 301 "safebrowsing.reporting_enabled"; 302 303// Boolean that is true when the SafeBrowsing interstitial should not allow 304// users to proceed anyway. 305const char kSafeBrowsingProceedAnywayDisabled[] = 306 "safebrowsing.proceed_anyway_disabled"; 307 308// Enum that specifies whether Incognito mode is: 309// 0 - Enabled. Default behaviour. Default mode is available on demand. 310// 1 - Disabled. Used cannot browse pages in Incognito mode. 311// 2 - Forced. All pages/sessions are forced into Incognito. 312const char kIncognitoModeAvailability[] = "incognito.mode_availability"; 313 314// Boolean that is true when Suggest support is enabled. 315const char kSearchSuggestEnabled[] = "search.suggest_enabled"; 316 317#if defined(OS_ANDROID) 318// Integer indicating the Contextual Search enabled state. 319// -1 - opt-out (disabled) 320// 0 - undecided 321// 1 - opt-in (enabled) 322const char kContextualSearchEnabled[] = "search.contextual_search_enabled"; 323#endif 324 325// Boolean that indicates whether the browser should put up a confirmation 326// window when the user is attempting to quit. Mac only. 327const char kConfirmToQuitEnabled[] = "browser.confirm_to_quit"; 328 329// OBSOLETE. Enum that specifies whether to enforce a third-party cookie 330// blocking policy. This has been superseded by kDefaultContentSettings + 331// kBlockThirdPartyCookies. 332// 0 - allow all cookies. 333// 1 - block third-party cookies 334// 2 - block all cookies 335const char kCookieBehavior[] = "security.cookie_behavior"; 336 337// The GUID of the synced default search provider. Note that this acts like a 338// pointer to which synced search engine should be the default, rather than the 339// prefs below which describe the locally saved default search provider details 340// (and are not synced). This is ignored in the case of the default search 341// provider being managed by policy. 342const char kSyncedDefaultSearchProviderGUID[] = 343 "default_search_provider.synced_guid"; 344 345// Whether having a default search provider is enabled. 346const char kDefaultSearchProviderEnabled[] = 347 "default_search_provider.enabled"; 348 349// The URL (as understood by TemplateURLRef) the default search provider uses 350// for searches. 351const char kDefaultSearchProviderSearchURL[] = 352 "default_search_provider.search_url"; 353 354// The URL (as understood by TemplateURLRef) the default search provider uses 355// for suggestions. 356const char kDefaultSearchProviderSuggestURL[] = 357 "default_search_provider.suggest_url"; 358 359// The URL (as understood by TemplateURLRef) the default search provider uses 360// for instant results. 361const char kDefaultSearchProviderInstantURL[] = 362 "default_search_provider.instant_url"; 363 364// The URL (as understood by TemplateURLRef) the default search provider uses 365// for image search results. 366const char kDefaultSearchProviderImageURL[] = 367 "default_search_provider.image_url"; 368 369// The URL (as understood by TemplateURLRef) the default search provider uses 370// for the new tab page. 371const char kDefaultSearchProviderNewTabURL[] = 372 "default_search_provider.new_tab_url"; 373 374// The string of post parameters (as understood by TemplateURLRef) the default 375// search provider uses for searches by using POST. 376const char kDefaultSearchProviderSearchURLPostParams[] = 377 "default_search_provider.search_url_post_params"; 378 379// The string of post parameters (as understood by TemplateURLRef) the default 380// search provider uses for suggestions by using POST. 381const char kDefaultSearchProviderSuggestURLPostParams[] = 382 "default_search_provider.suggest_url_post_params"; 383 384// The string of post parameters (as understood by TemplateURLRef) the default 385// search provider uses for instant results by using POST. 386const char kDefaultSearchProviderInstantURLPostParams[] = 387 "default_search_provider.instant_url_post_params"; 388 389// The string of post parameters (as understood by TemplateURLRef) the default 390// search provider uses for image search results by using POST. 391const char kDefaultSearchProviderImageURLPostParams[] = 392 "default_search_provider.image_url_post_params"; 393 394// The Favicon URL (as understood by TemplateURLRef) of the default search 395// provider. 396const char kDefaultSearchProviderIconURL[] = 397 "default_search_provider.icon_url"; 398 399// The input encoding (as understood by TemplateURLRef) supported by the default 400// search provider. The various encodings are separated by ';' 401const char kDefaultSearchProviderEncodings[] = 402 "default_search_provider.encodings"; 403 404// The name of the default search provider. 405const char kDefaultSearchProviderName[] = "default_search_provider.name"; 406 407// The keyword of the default search provider. 408const char kDefaultSearchProviderKeyword[] = "default_search_provider.keyword"; 409 410// The id of the default search provider. 411const char kDefaultSearchProviderID[] = "default_search_provider.id"; 412 413// The prepopulate id of the default search provider. 414const char kDefaultSearchProviderPrepopulateID[] = 415 "default_search_provider.prepopulate_id"; 416 417// The alternate urls of the default search provider. 418const char kDefaultSearchProviderAlternateURLs[] = 419 "default_search_provider.alternate_urls"; 420 421// Search term placement query parameter for the default search provider. 422const char kDefaultSearchProviderSearchTermsReplacementKey[] = 423 "default_search_provider.search_terms_replacement_key"; 424 425// The dictionary key used when the default search providers are given 426// in the preferences file. Normally they are copied from the master 427// preferences file. 428const char kSearchProviderOverrides[] = "search_provider_overrides"; 429// The format version for the dictionary above. 430const char kSearchProviderOverridesVersion[] = 431 "search_provider_overrides_version"; 432 433// Boolean which specifies whether we should ask the user if we should download 434// a file (true) or just download it automatically. 435const char kPromptForDownload[] = "download.prompt_for_download"; 436 437// A boolean pref set to true if we're using Link Doctor error pages. 438const char kAlternateErrorPagesEnabled[] = "alternate_error_pages.enabled"; 439 440// OBSOLETE: new pref now stored with user prefs instead of profile, as 441// kDnsPrefetchingStartupList. 442const char kDnsStartupPrefetchList[] = "StartupDNSPrefetchList"; 443 444// An adaptively identified list of domain names to be pre-fetched during the 445// next startup, based on what was actually needed during this startup. 446const char kDnsPrefetchingStartupList[] = "dns_prefetching.startup_list"; 447 448// OBSOLETE: new pref now stored with user prefs instead of profile, as 449// kDnsPrefetchingHostReferralList. 450const char kDnsHostReferralList[] = "HostReferralList"; 451 452// A list of host names used to fetch web pages, and their commonly used 453// sub-resource hostnames (and expected latency benefits from pre-resolving, or 454// preconnecting to, such sub-resource hostnames). 455// This list is adaptively grown and pruned. 456const char kDnsPrefetchingHostReferralList[] = 457 "dns_prefetching.host_referral_list"; 458 459// Disables the SPDY protocol. 460const char kDisableSpdy[] = "spdy.disabled"; 461 462// Prefs for persisting HttpServerProperties. 463const char kHttpServerProperties[] = "net.http_server_properties"; 464 465// Prefs for server names that support SPDY protocol. 466const char kSpdyServers[] = "spdy.servers"; 467 468// Prefs for servers that support Alternate-Protocol. 469const char kAlternateProtocolServers[] = "spdy.alternate_protocol"; 470 471// Disables the listed protocol schemes. 472const char kDisabledSchemes[] = "protocol.disabled_schemes"; 473 474#if defined(OS_ANDROID) || defined(OS_IOS) 475// Last time that a check for cloud policy management was done. This time is 476// recorded on Android so that retries aren't attempted on every startup. 477// Instead the cloud policy registration is retried at least 1 or 3 days later. 478const char kLastPolicyCheckTime[] = "policy.last_policy_check_time"; 479 480// A list of bookmarks to include in a Managed Bookmarks root node. Each 481// list item is a dictionary containing a "name" and an "url" entry, detailing 482// the bookmark name and target URL respectively. 483const char kManagedBookmarks[] = "policy.managed_bookmarks"; 484#endif 485 486// Prefix URL for the experimental Instant ZeroSuggest provider. 487const char kInstantUIZeroSuggestUrlPrefix[] = 488 "instant_ui.zero_suggest_url_prefix"; 489 490// Used to migrate preferences from local state to user preferences to 491// enable multiple profiles. 492// BITMASK with possible values (see browser_prefs.cc for enum): 493// 0: No preferences migrated. 494// 1: DNS preferences migrated: kDnsPrefetchingStartupList and HostReferralList 495// 2: Browser window preferences migrated: kDevToolsSplitLocation and 496// kBrowserWindowPlacement 497const char kMultipleProfilePrefMigration[] = 498 "local_state.multiple_profile_prefs_version"; 499 500// A boolean pref set to true if prediction of network actions is allowed. 501// Actions include DNS prefetching, TCP and SSL preconnection, prerendering 502// of web pages, and resource prefetching. 503// NOTE: The "dns_prefetching.enabled" value is used so that historical user 504// preferences are not lost. 505const char kNetworkPredictionEnabled[] = "dns_prefetching.enabled"; 506 507// An integer representing the state of the default apps installation process. 508// This value is persisted in the profile's user preferences because the process 509// is async, and the user may have stopped chrome in the middle. The next time 510// the profile is opened, the process will continue from where it left off. 511// 512// See possible values in external_provider_impl.cc. 513const char kDefaultAppsInstallState[] = "default_apps_install_state"; 514 515// A boolean pref set to true if the Chrome Web Store icons should be hidden 516// from the New Tab Page and app launcher. 517const char kHideWebStoreIcon[] = "hide_web_store_icon"; 518 519#if defined(OS_CHROMEOS) 520// A dictionary pref to hold the mute setting for all the currently known 521// audio devices. 522const char kAudioDevicesMute[] = "settings.audio.devices.mute"; 523 524// A dictionary pref storing the volume settings for all the currently known 525// audio devices. 526const char kAudioDevicesVolumePercent[] = 527 "settings.audio.devices.volume_percent"; 528 529// An integer pref to initially mute volume if 1. This pref is ignored if 530// |kAudioOutputAllowed| is set to false, but its value is preserved, therefore 531// when the policy is lifted the original mute state is restored. This setting 532// is here only for migration purposes now. It is being replaced by the 533// |kAudioDevicesMute| setting. 534const char kAudioMute[] = "settings.audio.mute"; 535 536// A double pref storing the user-requested volume. This setting is here only 537// for migration purposes now. It is being replaced by the 538// |kAudioDevicesVolumePercent| setting. 539const char kAudioVolumePercent[] = "settings.audio.volume_percent"; 540 541// An integer pref to record user's spring charger check result. 542// 0 - unknown charger, not checked yet. 543// 1 - confirmed safe charger. 544// 2 - confirmed original charger and declined to order new charger. 545// 3 - confirmed original charger and ordered new charger online. 546// 4 - confirmed original charger and ordered new charger by phone. 547// 5 - confirmed original charger, ordered a new one online, but continue to use 548// the old one. 549// 6 - confirmed original charger, ordered a new one by phone, but continue to 550// use the old one. 551const char kSpringChargerCheck[] = "settings.spring_charger.check_result"; 552 553// A boolean pref set to true if touchpad tap-to-click is enabled. 554const char kTapToClickEnabled[] = "settings.touchpad.enable_tap_to_click"; 555 556// A boolean pref set to true if touchpad tap-dragging is enabled. 557const char kTapDraggingEnabled[] = "settings.touchpad.enable_tap_dragging"; 558 559// A boolean pref set to true if touchpad three-finger-click is enabled. 560const char kEnableTouchpadThreeFingerClick[] = 561 "settings.touchpad.enable_three_finger_click"; 562 563// A boolean pref set to true if touchpad natural scrolling is enabled. 564const char kNaturalScroll[] = "settings.touchpad.natural_scroll"; 565 566// A boolean pref set to true if primary mouse button is the left button. 567const char kPrimaryMouseButtonRight[] = "settings.mouse.primary_right"; 568 569// A integer pref for the touchpad sensitivity. 570const char kMouseSensitivity[] = "settings.mouse.sensitivity2"; 571 572// A integer pref for the touchpad sensitivity. 573const char kTouchpadSensitivity[] = "settings.touchpad.sensitivity2"; 574 575// A boolean pref set to true if time should be displayed in 24-hour clock. 576const char kUse24HourClock[] = "settings.clock.use_24hour_clock"; 577 578// A boolean pref to disable Google Drive integration. 579// The pref prefix should remain as "gdata" for backward compatibility. 580const char kDisableDrive[] = "gdata.disabled"; 581 582// A boolean pref to disable Drive over cellular connections. 583// The pref prefix should remain as "gdata" for backward compatibility. 584const char kDisableDriveOverCellular[] = "gdata.cellular.disabled"; 585 586// A boolean pref to disable hosted files on Drive. 587// The pref prefix should remain as "gdata" for backward compatibility. 588const char kDisableDriveHostedFiles[] = "gdata.hosted_files.disabled"; 589 590// A string pref set to the current input method. 591const char kLanguageCurrentInputMethod[] = 592 "settings.language.current_input_method"; 593 594// A string pref set to the previous input method. 595const char kLanguagePreviousInputMethod[] = 596 "settings.language.previous_input_method"; 597 598// A string pref (comma-separated list) set to the "next engine in menu" 599// hot-key lists. 600const char kLanguageHotkeyNextEngineInMenu[] = 601 "settings.language.hotkey_next_engine_in_menu"; 602 603// A string pref (comma-separated list) set to the "previous engine" 604// hot-key lists. 605const char kLanguageHotkeyPreviousEngine[] = 606 "settings.language.hotkey_previous_engine"; 607 608// A string pref (comma-separated list) set to the preferred language IDs 609// (ex. "en-US,fr,ko"). 610const char kLanguagePreferredLanguages[] = 611 "settings.language.preferred_languages"; 612 613// A string pref (comma-separated list) set to the preloaded (active) input 614// method IDs (ex. "pinyin,mozc"). 615const char kLanguagePreloadEngines[] = "settings.language.preload_engines"; 616 617// A List pref (comma-separated list) set to the extension IMEs to be enabled. 618const char kLanguageEnabledExtensionImes[] = 619 "settings.language.enabled_extension_imes"; 620 621// Integer prefs which determine how we remap modifier keys (e.g. swap Alt and 622// Control.) Possible values for these prefs are 0-4. See ModifierKey enum in 623// src/chrome/browser/chromeos/input_method/xkeyboard.h 624const char kLanguageRemapSearchKeyTo[] = 625 // Note: we no longer use XKB for remapping these keys, but we can't change 626 // the pref names since the names are already synced with the cloud. 627 "settings.language.xkb_remap_search_key_to"; 628const char kLanguageRemapControlKeyTo[] = 629 "settings.language.xkb_remap_control_key_to"; 630const char kLanguageRemapAltKeyTo[] = 631 "settings.language.xkb_remap_alt_key_to"; 632const char kLanguageRemapCapsLockKeyTo[] = 633 "settings.language.remap_caps_lock_key_to"; 634const char kLanguageRemapDiamondKeyTo[] = 635 "settings.language.remap_diamond_key_to"; 636 637// A boolean pref that causes top-row keys to be interpreted as function keys 638// instead of as media keys. 639const char kLanguageSendFunctionKeys[] = 640 "settings.language.send_function_keys"; 641 642// A boolean pref which determines whether key repeat is enabled. 643const char kLanguageXkbAutoRepeatEnabled[] = 644 "settings.language.xkb_auto_repeat_enabled_r2"; 645// A integer pref which determines key repeat delay (in ms). 646const char kLanguageXkbAutoRepeatDelay[] = 647 "settings.language.xkb_auto_repeat_delay_r2"; 648// A integer pref which determines key repeat interval (in ms). 649const char kLanguageXkbAutoRepeatInterval[] = 650 "settings.language.xkb_auto_repeat_interval_r2"; 651// "_r2" suffixes are added to the three prefs above when we change the 652// preferences not user-configurable, not to sync them with cloud. 653 654// A boolean pref which determines whether the large cursor feature is enabled. 655const char kLargeCursorEnabled[] = "settings.a11y.large_cursor_enabled"; 656 657// A boolean pref which determines whether the sticky keys feature is enabled. 658const char kStickyKeysEnabled[] = "settings.a11y.sticky_keys_enabled"; 659// A boolean pref which determines whether spoken feedback is enabled. 660const char kSpokenFeedbackEnabled[] = "settings.accessibility"; 661// A boolean pref which determines whether high conrast is enabled. 662const char kHighContrastEnabled[] = "settings.a11y.high_contrast_enabled"; 663// A boolean pref which determines whether screen magnifier is enabled. 664const char kScreenMagnifierEnabled[] = "settings.a11y.screen_magnifier"; 665// A integer pref which determines what type of screen magnifier is enabled. 666// Note that: 'screen_magnifier_type' had been used as string pref. Hence, 667// we are using another name pref here. 668const char kScreenMagnifierType[] = "settings.a11y.screen_magnifier_type2"; 669// A double pref which determines a zooming scale of the screen magnifier. 670const char kScreenMagnifierScale[] = "settings.a11y.screen_magnifier_scale"; 671// A boolean pref which determines whether the virtual keyboard is enabled for 672// accessibility. This feature is separate from displaying an onscreen keyboard 673// due to lack of a physical keyboard. 674const char kVirtualKeyboardEnabled[] = "settings.a11y.virtual_keyboard"; 675// A boolean pref which determines whether autoclick is enabled. 676const char kAutoclickEnabled[] = "settings.a11y.autoclick"; 677// An integer pref which determines time in ms between when the mouse cursor 678// stops and when an autoclick is triggered. 679const char kAutoclickDelayMs[] = "settings.a11y.autoclick_delay_ms"; 680// A boolean pref which determines whether the accessibility menu shows 681// regardless of the state of a11y features. 682const char kShouldAlwaysShowAccessibilityMenu[] = "settings.a11y.enable_menu"; 683 684// A boolean pref which turns on Advanced Filesystem 685// (USB support, SD card, etc). 686const char kLabsAdvancedFilesystemEnabled[] = 687 "settings.labs.advanced_filesystem"; 688 689// A boolean pref which turns on the mediaplayer. 690const char kLabsMediaplayerEnabled[] = "settings.labs.mediaplayer"; 691 692// A boolean pref that turns on automatic screen locking. 693const char kEnableAutoScreenLock[] = "settings.enable_screen_lock"; 694 695// A boolean pref of whether to show mobile plan notifications. 696const char kShowPlanNotifications[] = 697 "settings.internet.mobile.show_plan_notifications"; 698 699// A boolean pref of whether to show 3G promo notification. 700const char kShow3gPromoNotification[] = 701 "settings.internet.mobile.show_3g_promo_notification"; 702 703// A string pref that contains version where "What's new" promo was shown. 704const char kChromeOSReleaseNotesVersion[] = "settings.release_notes.version"; 705 706// A boolean pref that controls whether proxy settings from shared network 707// settings (accordingly from device policy) are applied or ignored. 708const char kUseSharedProxies[] = "settings.use_shared_proxies"; 709 710// Power state of the current displays from the last run. 711const char kDisplayPowerState[] = "settings.display.power_state"; 712// A dictionary pref that stores per display preferences. 713const char kDisplayProperties[] = "settings.display.properties"; 714 715// A dictionary pref that specifies per-display layout/offset information. 716// Its key is the ID of the display and its value is a dictionary for the 717// layout/offset information. 718const char kSecondaryDisplays[] = "settings.display.secondary_displays"; 719 720// A boolean pref indicating whether user activity has been observed in the 721// current session already. The pref is used to restore information about user 722// activity after browser crashes. 723const char kSessionUserActivitySeen[] = "session.user_activity_seen"; 724 725// A preference to keep track of the session start time. If the session length 726// limit is configured to start running after initial user activity has been 727// observed, the pref is set after the first user activity in a session. 728// Otherwise, it is set immediately after session start. The pref is used to 729// restore the session start time after browser crashes. The time is expressed 730// as the serialization obtained from base::TimeTicks::ToInternalValue(). 731const char kSessionStartTime[] = "session.start_time"; 732 733// Holds the maximum session time in milliseconds. If this pref is set, the 734// user is logged out when the maximum session time is reached. The user is 735// informed about the remaining time by a countdown timer shown in the ash 736// system tray. 737const char kSessionLengthLimit[] = "session.length_limit"; 738 739// Whether the session length limit should start running only after the first 740// user activity has been observed in a session. 741const char kSessionWaitForInitialUserActivity[] = 742 "session.wait_for_initial_user_activity"; 743 744// Inactivity time in milliseconds while the system is on AC power before 745// the screen should be dimmed, turned off, or locked, before an 746// IdleActionImminent D-Bus signal should be sent, or before 747// kPowerAcIdleAction should be performed. 0 disables the delay (N/A for 748// kPowerAcIdleDelayMs). 749const char kPowerAcScreenDimDelayMs[] = "power.ac_screen_dim_delay_ms"; 750const char kPowerAcScreenOffDelayMs[] = "power.ac_screen_off_delay_ms"; 751const char kPowerAcScreenLockDelayMs[] = "power.ac_screen_lock_delay_ms"; 752const char kPowerAcIdleWarningDelayMs[] = "power.ac_idle_warning_delay_ms"; 753const char kPowerAcIdleDelayMs[] = "power.ac_idle_delay_ms"; 754 755// Similar delays while the system is on battery power. 756const char kPowerBatteryScreenDimDelayMs[] = 757 "power.battery_screen_dim_delay_ms"; 758const char kPowerBatteryScreenOffDelayMs[] = 759 "power.battery_screen_off_delay_ms"; 760const char kPowerBatteryScreenLockDelayMs[] = 761 "power.battery_screen_lock_delay_ms"; 762const char kPowerBatteryIdleWarningDelayMs[] = 763 "power.battery_idle_warning_delay_ms"; 764const char kPowerBatteryIdleDelayMs[] = 765 "power.battery_idle_delay_ms"; 766 767// Action that should be performed when the idle delay is reached while the 768// system is on AC power or battery power. 769// Values are from the chromeos::PowerPolicyController::Action enum. 770const char kPowerAcIdleAction[] = "power.ac_idle_action"; 771const char kPowerBatteryIdleAction[] = "power.battery_idle_action"; 772 773// Action that should be performed when the lid is closed. 774// Values are from the chromeos::PowerPolicyController::Action enum. 775const char kPowerLidClosedAction[] = "power.lid_closed_action"; 776 777// Should audio and video activity be used to disable the above delays? 778const char kPowerUseAudioActivity[] = "power.use_audio_activity"; 779const char kPowerUseVideoActivity[] = "power.use_video_activity"; 780 781// Should extensions be able to use the chrome.power API to override 782// screen-related power management (including locking)? 783const char kPowerAllowScreenWakeLocks[] = "power.allow_screen_wake_locks"; 784 785// Amount by which the screen-dim delay should be scaled while the system 786// is in presentation mode. Values are limited to a minimum of 1.0. 787const char kPowerPresentationScreenDimDelayFactor[] = 788 "power.presentation_screen_dim_delay_factor"; 789 790// Amount by which the screen-dim delay should be scaled when user activity is 791// observed while the screen is dimmed or soon after the screen has been turned 792// off. Values are limited to a minimum of 1.0. 793const char kPowerUserActivityScreenDimDelayFactor[] = 794 "power.user_activity_screen_dim_delay_factor"; 795 796// Whether the power management delays should start running only after the first 797// user activity has been observed in a session. 798const char kPowerWaitForInitialUserActivity[] = 799 "power.wait_for_initial_user_activity"; 800 801// The URL from which the Terms of Service can be downloaded. The value is only 802// honored for public accounts. 803const char kTermsOfServiceURL[] = "terms_of_service.url"; 804 805// Indicates that the Profile has made navigations that used a certificate 806// installed by the system administrator. If that is true then the local cache 807// of remote data is tainted (e.g. shared scripts), and future navigations 808// show a warning indicating that the organization may track the browsing 809// session. 810const char kUsedPolicyCertificatesOnce[] = "used_policy_certificates_once"; 811 812// Indicates whether the remote attestation is enabled for the user. 813const char kAttestationEnabled[] = "attestation.enabled"; 814// The list of extensions allowed to use the platformKeysPrivate API for 815// remote attestation. 816const char kAttestationExtensionWhitelist[] = "attestation.extension_whitelist"; 817 818// A boolean pref indicating whether the projection touch HUD is enabled or not. 819const char kTouchHudProjectionEnabled[] = "touch_hud.projection_enabled"; 820 821// A pref to configure networks. Its value must be a list of 822// NetworkConfigurations according to the OpenNetworkConfiguration 823// specification. 824// Currently, this pref is only used to store the policy. The user's 825// configuration is still stored in Shill. 826const char kOpenNetworkConfiguration[] = "onc"; 827 828// A boolean pref that tracks whether the user has already given consent for 829// enabling remote attestation for content protection. 830const char kRAConsentFirstTime[] = "settings.privacy.ra_consent"; 831 832// A boolean pref recording whether user has dismissed the multiprofile 833// itroduction dialog show. 834const char kMultiProfileNeverShowIntro[] = 835 "settings.multi_profile_never_show_intro"; 836 837// A boolean pref recording whether user has dismissed the multiprofile 838// teleport warning dialog show. 839const char kMultiProfileWarningShowDismissed[] = 840 "settings.multi_profile_warning_show_dismissed"; 841 842// A string pref that holds string enum values of how the user should behave 843// in a multiprofile session. See ChromeOsMultiProfileUserBehavior policy 844// for more details of the valid values. 845const char kMultiProfileUserBehavior[] = "settings.multiprofile_user_behavior"; 846 847// A boolean preference indicating whether user has seen first-run tutorial 848// already. 849const char kFirstRunTutorialShown[] = "settings.first_run_tutorial_shown"; 850 851// Indicates the amount of time for which a user authenticated via SAML can use 852// offline authentication against a cached password before being forced to go 853// through online authentication against GAIA again. The time is expressed in 854// seconds. A value of -1 indicates no limit, allowing the user to use offline 855// authentication indefinitely. The limit is in effect only if GAIA redirected 856// the user to a SAML IdP during the last online authentication. 857const char kSAMLOfflineSigninTimeLimit[] = "saml.offline_signin_time_limit"; 858 859// A preference to keep track of the last time the user authenticated against 860// GAIA using SAML. The preference is updated whenever the user authenticates 861// against GAIA: If GAIA redirects to a SAML IdP, the preference is set to the 862// current time. If GAIA performs the authentication itself, the preference is 863// cleared. The time is expressed as the serialization obtained from 864// base::Time::ToInternalValue(). 865const char kSAMLLastGAIASignInTime[] = "saml.last_gaia_sign_in_time"; 866 867// The total number of seconds that the machine has spent sitting on the 868// OOBE screen. 869const char kTimeOnOobe[] = "settings.time_on_oobe"; 870#endif // defined(OS_CHROMEOS) 871 872// The disabled messages in IPC logging. 873const char kIpcDisabledMessages[] = "ipc_log_disabled_messages"; 874 875// A boolean pref set to true if a Home button to open the Home pages should be 876// visible on the toolbar. 877const char kShowHomeButton[] = "browser.show_home_button"; 878 879// A string value which saves short list of recently user selected encodings 880// separated with comma punctuation mark. 881const char kRecentlySelectedEncoding[] = "profile.recently_selected_encodings"; 882 883// Clear Browsing Data dialog preferences. 884const char kDeleteBrowsingHistory[] = "browser.clear_data.browsing_history"; 885const char kDeleteDownloadHistory[] = "browser.clear_data.download_history"; 886const char kDeleteCache[] = "browser.clear_data.cache"; 887const char kDeleteCookies[] = "browser.clear_data.cookies"; 888const char kDeletePasswords[] = "browser.clear_data.passwords"; 889const char kDeleteFormData[] = "browser.clear_data.form_data"; 890const char kDeleteHostedAppsData[] = "browser.clear_data.hosted_apps_data"; 891const char kDeauthorizeContentLicenses[] = 892 "browser.clear_data.content_licenses"; 893const char kDeleteTimePeriod[] = "browser.clear_data.time_period"; 894const char kLastClearBrowsingDataTime[] = 895 "browser.last_clear_browsing_data_time"; 896 897// Boolean pref to define the default values for using spellchecker. 898const char kEnableContinuousSpellcheck[] = "browser.enable_spellchecking"; 899 900// List of names of the enabled labs experiments (see chrome/browser/labs.cc). 901const char kEnabledLabsExperiments[] = "browser.enabled_labs_experiments"; 902 903// Boolean pref to define the default values for using auto spell correct. 904const char kEnableAutoSpellCorrect[] = "browser.enable_autospellcorrect"; 905 906// Boolean pref to define the default setting for "block offensive words". 907// The old key value is kept to avoid unnecessary migration code. 908const char kSpeechRecognitionFilterProfanities[] = 909 "browser.speechinput_censor_results"; 910 911// List of speech recognition context names (extensions or websites) for which 912// the tray notification balloon has already been shown. 913const char kSpeechRecognitionTrayNotificationShownContexts[] = 914 "browser.speechinput_tray_notification_shown_contexts"; 915 916// Boolean controlling whether history saving is disabled. 917const char kSavingBrowserHistoryDisabled[] = "history.saving_disabled"; 918 919// Boolean controlling whether deleting browsing and download history is 920// permitted. 921const char kAllowDeletingBrowserHistory[] = "history.deleting_enabled"; 922 923// Boolean controlling whether SafeSearch is mandatory for Google Web Searches. 924const char kForceSafeSearch[] = "settings.force_safesearch"; 925 926#if defined(OS_LINUX) && !defined(OS_CHROMEOS) 927// Linux specific preference on whether we should match the system theme. 928const char kUsesSystemTheme[] = "extensions.theme.use_system"; 929#endif 930const char kCurrentThemePackFilename[] = "extensions.theme.pack"; 931const char kCurrentThemeID[] = "extensions.theme.id"; 932const char kCurrentThemeImages[] = "extensions.theme.images"; 933const char kCurrentThemeColors[] = "extensions.theme.colors"; 934const char kCurrentThemeTints[] = "extensions.theme.tints"; 935const char kCurrentThemeDisplayProperties[] = "extensions.theme.properties"; 936 937// Boolean pref which persists whether the extensions_ui is in developer mode 938// (showing developer packing tools and extensions details) 939const char kExtensionsUIDeveloperMode[] = "extensions.ui.developer_mode"; 940 941// Boolean pref which indicates whether the Chrome Apps & Extensions Developer 942// Tool promotion has been dismissed by the user. 943const char kExtensionsUIDismissedADTPromo[] = 944 "extensions.ui.dismissed_adt_promo"; 945 946// Dictionary pref that tracks which command belongs to which 947// extension + named command pair. 948const char kExtensionCommands[] = "extensions.commands"; 949 950// Pref containing the directory for internal plugins as written to the plugins 951// list (below). 952const char kPluginsLastInternalDirectory[] = "plugins.last_internal_directory"; 953 954// List pref containing information (dictionaries) on plugins. 955const char kPluginsPluginsList[] = "plugins.plugins_list"; 956 957// List pref containing names of plugins that are disabled by policy. 958const char kPluginsDisabledPlugins[] = "plugins.plugins_disabled"; 959 960// List pref containing exceptions to the list of plugins disabled by policy. 961const char kPluginsDisabledPluginsExceptions[] = 962 "plugins.plugins_disabled_exceptions"; 963 964// List pref containing names of plugins that are enabled by policy. 965const char kPluginsEnabledPlugins[] = "plugins.plugins_enabled"; 966 967// When bundled NPAPI Flash is removed, if at that point it is enabled while 968// Pepper Flash is disabled, we would like to turn on Pepper Flash. And we will 969// want to do so only once. 970const char kPluginsMigratedToPepperFlash[] = "plugins.migrated_to_pepper_flash"; 971 972// In the early stage of component-updated PPAPI Flash, we did field trials in 973// which it was set to disabled by default. The corresponding settings item may 974// remain in some users' profiles. Currently it affects both the bundled and 975// component-updated PPAPI Flash (since the two share the same enable/disable 976// state). We want to remove this item to get those users to use PPAPI Flash. 977// We will want to do so only once. 978const char kPluginsRemovedOldComponentPepperFlashSettings[] = 979 "plugins.removed_old_component_pepper_flash_settings"; 980 981#if !defined(OS_ANDROID) 982// Whether about:plugins is shown in the details mode or not. 983const char kPluginsShowDetails[] = "plugins.show_details"; 984#endif 985 986// Boolean that indicates whether outdated plugins are allowed or not. 987const char kPluginsAllowOutdated[] = "plugins.allow_outdated"; 988 989// Boolean that indicates whether plugins that require authorization should 990// be always allowed or not. 991const char kPluginsAlwaysAuthorize[] = "plugins.always_authorize"; 992 993#if defined(ENABLE_PLUGIN_INSTALLATION) 994// Dictionary holding plug-ins metadata. 995const char kPluginsMetadata[] = "plugins.metadata"; 996 997// Last update time of plug-ins resource cache. 998const char kPluginsResourceCacheUpdate[] = "plugins.resource_cache_update"; 999#endif 1000 1001// Boolean that indicates whether we should check if we are the default browser 1002// on start-up. 1003const char kCheckDefaultBrowser[] = "browser.check_default_browser"; 1004 1005#if defined(OS_WIN) 1006// By default, setting Chrome as default during first run on Windows 8 will 1007// trigger shutting down the current instance and spawning a new (Metro) 1008// Chrome. This boolean preference suppresses this behaviour. 1009const char kSuppressSwitchToMetroModeOnSetDefault[] = 1010 "browser.suppress_switch_to_metro_mode_on_set_default"; 1011#endif 1012 1013// Policy setting whether default browser check should be disabled and default 1014// browser registration should take place. 1015const char kDefaultBrowserSettingEnabled[] = 1016 "browser.default_browser_setting_enabled"; 1017 1018#if defined(OS_MACOSX) 1019// Boolean that indicates whether the application should show the info bar 1020// asking the user to set up automatic updates when Keystone promotion is 1021// required. 1022const char kShowUpdatePromotionInfoBar[] = 1023 "browser.show_update_promotion_info_bar"; 1024#endif 1025 1026// Boolean that is false if we should show window manager decorations. If 1027// true, we draw a custom chrome frame (thicker title bar and blue border). 1028const char kUseCustomChromeFrame[] = "browser.custom_chrome_frame"; 1029 1030// Dictionary of content settings applied to all hosts by default. 1031const char kDefaultContentSettings[] = "profile.default_content_settings"; 1032 1033// Boolean indicating whether the clear on exit pref was migrated to content 1034// settings yet. 1035const char kContentSettingsClearOnExitMigrated[] = 1036 "profile.content_settings.clear_on_exit_migrated"; 1037 1038// Version of the pattern format used to define content settings. 1039const char kContentSettingsVersion[] = "profile.content_settings.pref_version"; 1040 1041// Patterns for mapping origins to origin related settings. Default settings 1042// will be applied to origins that don't match any of the patterns. The pattern 1043// format used is defined by kContentSettingsVersion. 1044const char kContentSettingsPatternPairs[] = 1045 "profile.content_settings.pattern_pairs"; 1046 1047// Version of the content settings whitelist. 1048const char kContentSettingsDefaultWhitelistVersion[] = 1049 "profile.content_settings.whitelist_version"; 1050 1051#if !defined(OS_ANDROID) 1052// Which plugins have been whitelisted manually by the user. 1053const char kContentSettingsPluginWhitelist[] = 1054 "profile.content_settings.plugin_whitelist"; 1055#endif 1056 1057// Boolean that is true if we should unconditionally block third-party cookies, 1058// regardless of other content settings. 1059const char kBlockThirdPartyCookies[] = "profile.block_third_party_cookies"; 1060 1061// Boolean that is true when all locally stored site data (e.g. cookies, local 1062// storage, etc..) should be deleted on exit. 1063const char kClearSiteDataOnExit[] = "profile.clear_site_data_on_exit"; 1064 1065// Double that indicates the default zoom level. 1066const char kDefaultZoomLevel[] = "profile.default_zoom_level"; 1067 1068// Dictionary that maps hostnames to zoom levels. Hosts not in this pref will 1069// be displayed at the default zoom level. 1070const char kPerHostZoomLevels[] = "profile.per_host_zoom_levels"; 1071 1072// A dictionary that tracks the default data model to use for each section of 1073// the dialog. 1074const char kAutofillDialogAutofillDefault[] = "autofill.data_model_default"; 1075 1076// Whether a user opted out of making purchases with Google Wallet; changed via 1077// the autofill dialog's account chooser and set explicitly on dialog submission 1078// (but not cancel). If this isn't set, the dialog assumes it's the first run. 1079const char kAutofillDialogPayWithoutWallet[] = "autofill.pay_without_wallet"; 1080 1081// Which GAIA users have accepted that use of Google Wallet implies their 1082// location will be shared with fraud protection services. 1083const char kAutofillDialogWalletLocationAcceptance[] = 1084 "autofill.wallet_location_disclosure"; 1085 1086// Whether a user wants to save data locally in Autofill. 1087const char kAutofillDialogSaveData[] = "autofill.save_data"; 1088 1089// Whether the user has selected "Same as billing" for the shipping address when 1090// using Google Wallet. 1091const char kAutofillDialogWalletShippingSameAsBilling[] = 1092 "autofill.wallet_shipping_same_as_billing"; 1093 1094// The number of times the generated credit card bubble has been shown. 1095const char kAutofillGeneratedCardBubbleTimesShown[] = 1096 "autofill.generated_card_bubble_times_shown"; 1097 1098// A dictionary that tracks the defaults to be set on the next invocation 1099// of the requestAutocomplete dialog. 1100const char kAutofillDialogDefaults[] = "autofill.rac_dialog_defaults"; 1101 1102#if !defined(OS_ANDROID) 1103const char kPinnedTabs[] = "pinned_tabs"; 1104#endif 1105 1106#if defined(OS_ANDROID) 1107// Boolean that controls the enabled-state of Geolocation in content. 1108const char kGeolocationEnabled[] = "geolocation.enabled"; 1109#endif 1110 1111#if defined(ENABLE_GOOGLE_NOW) 1112// Boolean that is true when Google services can use the user's location. 1113const char kGoogleGeolocationAccessEnabled[] = 1114 "googlegeolocationaccess.enabled"; 1115#endif 1116 1117// The default audio capture device used by the Media content setting. 1118const char kDefaultAudioCaptureDevice[] = "media.default_audio_capture_device"; 1119 1120// The default video capture device used by the Media content setting. 1121const char kDefaultVideoCaptureDevice[] = "media.default_video_capture_Device"; 1122 1123// The salt used for creating random MediaSource IDs. 1124const char kMediaDeviceIdSalt[] = "media.device_id_salt"; 1125 1126// Preference to disable 3D APIs (WebGL, Pepper 3D). 1127const char kDisable3DAPIs[] = "disable_3d_apis"; 1128 1129// Whether to enable hyperlink auditing ("<a ping>"). 1130const char kEnableHyperlinkAuditing[] = "enable_a_ping"; 1131 1132// Whether to enable sending referrers. 1133const char kEnableReferrers[] = "enable_referrers"; 1134 1135// Whether to send the DNT header. 1136const char kEnableDoNotTrack[] = "enable_do_not_track"; 1137 1138// GL_VENDOR string. 1139const char kGLVendorString[] = "gl_vendor_string"; 1140 1141// GL_RENDERER string. 1142const char kGLRendererString[] = "gl_renderer_string"; 1143 1144// GL_VERSION string. 1145const char kGLVersionString[] = "gl_version_string"; 1146 1147// Boolean that specifies whether to import bookmarks from the default browser 1148// on first run. 1149const char kImportBookmarks[] = "import_bookmarks"; 1150 1151// Boolean that specifies whether to import the browsing history from the 1152// default browser on first run. 1153const char kImportHistory[] = "import_history"; 1154 1155// Boolean that specifies whether to import the homepage from the default 1156// browser on first run. 1157const char kImportHomepage[] = "import_home_page"; 1158 1159// Boolean that specifies whether to import the search engine from the default 1160// browser on first run. 1161const char kImportSearchEngine[] = "import_search_engine"; 1162 1163// Boolean that specifies whether to import the saved passwords from the default 1164// browser on first run. 1165const char kImportSavedPasswords[] = "import_saved_passwords"; 1166 1167// Profile avatar and name 1168const char kProfileAvatarIndex[] = "profile.avatar_index"; 1169const char kProfileName[] = "profile.name"; 1170 1171// Whether the profile is managed. 1172const char kProfileIsManaged[] = "profile.is_managed"; 1173 1174// The managed user ID. 1175const char kManagedUserId[] = "profile.managed_user_id"; 1176 1177// 64-bit integer serialization of the base::Time when the user's GAIA info 1178// was last updated. 1179const char kProfileGAIAInfoUpdateTime[] = "profile.gaia_info_update_time"; 1180 1181// The URL from which the GAIA profile picture was downloaded. This is cached to 1182// prevent the same picture from being downloaded multiple times. 1183const char kProfileGAIAInfoPictureURL[] = "profile.gaia_info_picture_url"; 1184 1185// Integer that specifies the number of times that we have shown the tutorial 1186// card in the profile avatar bubble. 1187const char kProfileAvatarTutorialShown[] = 1188 "profile.avatar_bubble_tutorial_shown"; 1189 1190// Boolean that specifies whether we have shown the user manager tutorial. 1191const char kProfileUserManagerTutorialShown[] = 1192 "profile.user_manager_tutorial_shown"; 1193 1194// Indicates if we've already shown a notification that high contrast 1195// mode is on, recommending high-contrast extensions and themes. 1196const char kInvertNotificationShown[] = "invert_notification_version_2_shown"; 1197 1198// Boolean controlling whether printing is enabled. 1199const char kPrintingEnabled[] = "printing.enabled"; 1200 1201// Boolean controlling whether print preview is disabled. 1202const char kPrintPreviewDisabled[] = "printing.print_preview_disabled"; 1203 1204// An integer pref specifying the fallback behavior for sites outside of content 1205// packs. One of: 1206// 0: Allow (does nothing) 1207// 1: Warn. 1208// 2: Block. 1209const char kDefaultManagedModeFilteringBehavior[] = 1210 "profile.managed.default_filtering_behavior"; 1211 1212// Whether this user is permitted to create managed users. 1213const char kManagedUserCreationAllowed[] = 1214 "profile.managed_user_creation_allowed"; 1215 1216// List pref containing the users managed by this user. 1217const char kManagedUsers[] = "profile.managed_users"; 1218 1219// List pref containing the extension ids which are not allowed to send 1220// notifications to the message center. 1221const char kMessageCenterDisabledExtensionIds[] = 1222 "message_center.disabled_extension_ids"; 1223 1224// List pref containing the system component ids which are not allowed to send 1225// notifications to the message center. 1226const char kMessageCenterDisabledSystemComponentIds[] = 1227 "message_center.disabled_system_component_ids"; 1228 1229// List pref containing the system component ids which are allowed to send 1230// notifications to the message center. 1231extern const char kMessageCenterEnabledSyncNotifierIds[] = 1232 "message_center.enabled_sync_notifier_ids"; 1233 1234// List pref containing synced notification sending services that are currently 1235// enabled. 1236extern const char kEnabledSyncedNotificationSendingServices[] = 1237 "synced_notification.enabled_remote_services"; 1238 1239// List pref containing which synced notification sending services have already 1240// been turned on once for the user (so we don't turn them on again). 1241extern const char kInitializedSyncedNotificationSendingServices[] = 1242 "synced_notification.initialized_remote_services"; 1243 1244// Boolean pref containing whether this is the first run of the Synced 1245// Notification feature. 1246extern const char kSyncedNotificationFirstRun[] = 1247 "synced_notification.first_run"; 1248 1249// Boolean pref indicating the Chrome Now welcome notification was dismissed 1250// by the user. Syncable. 1251// Note: This is now read-only. The welcome notification writes the _local 1252// version, below. 1253extern const char kWelcomeNotificationDismissed[] = 1254 "message_center.welcome_notification_dismissed"; 1255 1256// Boolean pref indicating the Chrome Now welcome notification was dismissed 1257// by the user on this machine. 1258extern const char kWelcomeNotificationDismissedLocal[] = 1259 "message_center.welcome_notification_dismissed_local"; 1260 1261// Boolean pref indicating the welcome notification was previously popped up. 1262extern const char kWelcomeNotificationPreviouslyPoppedUp[] = 1263 "message_center.welcome_notification_previously_popped_up"; 1264 1265// Integer pref containing the expiration timestamp of the welcome notification. 1266extern const char kWelcomeNotificationExpirationTimestamp[] = 1267 "message_center.welcome_notification_expiration_timestamp"; 1268 1269// Boolean pref that determines whether the user can enter fullscreen mode. 1270// Disabling fullscreen mode also makes kiosk mode unavailable on desktop 1271// platforms. 1272extern const char kFullscreenAllowed[] = "fullscreen.allowed"; 1273 1274// Enable notifications for new devices on the local network that can be 1275// registered to the user's account, e.g. Google Cloud Print printers. 1276const char kLocalDiscoveryNotificationsEnabled[] = 1277 "local_discovery.notifications_enabled"; 1278 1279// A timestamp (stored in base::Time::ToInternalValue format) of the last time 1280// a preference was reset. 1281const char kPreferenceResetTime[] = "prefs.preference_reset_time"; 1282 1283// String that indicates if the Profile Reset prompt has already been shown to 1284// the user. Used both in user preferences and local state, in the latter, it is 1285// actually a dictionary that maps profile keys to before-mentioned strings. 1286const char kProfileResetPromptMemento[] = "profile.reset_prompt_memento"; 1287 1288// The GCM channel's enabled state. 1289const char kGCMChannelEnabled[] = "gcm.channel_enabled"; 1290 1291// Whether Easy Unlock is enabled. 1292extern const char kEasyUnlockEnabled[] = "easy_unlock.enabled"; 1293 1294// Whether to show the Easy Unlock first run tutorial. 1295extern const char kEasyUnlockShowTutorial[] = "easy_unlock.show_tutorial"; 1296 1297// Preference storing Easy Unlock pairing data. 1298extern const char kEasyUnlockPairing[] = "easy_unlock.pairing"; 1299 1300// A cache of zero suggest results using JSON serialized into a string. 1301const char kZeroSuggestCachedResults[] = "zerosuggest.cachedresults"; 1302 1303// *************** LOCAL STATE *************** 1304// These are attached to the machine/installation 1305 1306// A pref to configure networks device-wide. Its value must be a list of 1307// NetworkConfigurations according to the OpenNetworkConfiguration 1308// specification. 1309// Currently, this pref is only used to store the policy. The user's 1310// configuration is still stored in Shill. 1311const char kDeviceOpenNetworkConfiguration[] = "device_onc"; 1312 1313// Directory of the last profile used. 1314const char kProfileLastUsed[] = "profile.last_used"; 1315 1316// List of directories of the profiles last active. 1317const char kProfilesLastActive[] = "profile.last_active_profiles"; 1318 1319// Total number of profiles created for this Chrome build. Used to tag profile 1320// directories. 1321const char kProfilesNumCreated[] = "profile.profiles_created"; 1322 1323// String containing the version of Chrome that the profile was created by. 1324// If profile was created before this feature was added, this pref will default 1325// to "1.0.0.0". 1326const char kProfileCreatedByVersion[] = "profile.created_by_version"; 1327 1328// A map of profile data directory to cached information. This cache can be 1329// used to display information about profiles without actually having to load 1330// them. 1331const char kProfileInfoCache[] = "profile.info_cache"; 1332 1333// Prefs for SSLConfigServicePref. 1334const char kCertRevocationCheckingEnabled[] = "ssl.rev_checking.enabled"; 1335const char kCertRevocationCheckingRequiredLocalAnchors[] = 1336 "ssl.rev_checking.required_for_local_anchors"; 1337const char kSSLVersionMin[] = "ssl.version_min"; 1338const char kSSLVersionMax[] = "ssl.version_max"; 1339const char kCipherSuiteBlacklist[] = "ssl.cipher_suites.blacklist"; 1340const char kDisableSSLRecordSplitting[] = "ssl.ssl_record_splitting.disabled"; 1341 1342// A boolean pref of the EULA accepted flag. 1343const char kEulaAccepted[] = "EulaAccepted"; 1344 1345// The metrics client GUID, entropy source and session ID. 1346// Note: The names client_id2 and low_entropy_source2 are a result of creating 1347// new prefs to do a one-time reset of the previous values. 1348const char kMetricsClientID[] = "user_experience_metrics.client_id2"; 1349const char kMetricsSessionID[] = "user_experience_metrics.session_id"; 1350const char kMetricsLowEntropySource[] = 1351 "user_experience_metrics.low_entropy_source2"; 1352const char kMetricsPermutedEntropyCache[] = 1353 "user_experience_metrics.permuted_entropy_cache"; 1354 1355// Old client id and low entropy source values, cleared the first time this 1356// version is launched. 1357// TODO(asvitkine): Delete these after a few releases have gone by and old 1358// values have been cleaned up. http://crbug.com/357704 1359const char kMetricsOldClientID[] = "user_experience_metrics.client_id"; 1360const char kMetricsOldLowEntropySource[] = 1361 "user_experience_metrics.low_entropy_source"; 1362 1363// Boolean that specifies whether or not crash reporting and metrics reporting 1364// are sent over the network for analysis. 1365const char kMetricsReportingEnabled[] = 1366 "user_experience_metrics.reporting_enabled"; 1367// Date/time when the user opted in to UMA and generated the client id for the 1368// very first time (local machine time, stored as a 64-bit time_t value). 1369const char kMetricsReportingEnabledTimestamp[] = 1370 "user_experience_metrics.client_id_timestamp"; 1371 1372// A machine ID used to detect when underlying hardware changes. It is only 1373// stored locally and never transmitted in metrics reports. 1374const char kMetricsMachineId[] = "user_experience_metrics.machine_id"; 1375 1376// Boolean that indicates a cloned install has been detected and the metrics 1377// client id and low entropy source should be reset. 1378const char kMetricsResetIds[] = 1379 "user_experience_metrics.reset_metrics_ids"; 1380 1381// Boolean that specifies whether or not crash reports are sent 1382// over the network for analysis. 1383#if defined(OS_ANDROID) 1384const char kCrashReportingEnabled[] = 1385 "user_experience_metrics_crash.reporting_enabled"; 1386#endif 1387 1388// Array of strings that are each UMA logs that were supposed to be sent in the 1389// first minute of a browser session. These logs include things like crash count 1390// info, etc. 1391const char kMetricsInitialLogs[] = 1392 "user_experience_metrics.initial_logs_as_protobufs"; 1393 1394// Array of strings that are each UMA logs that were not sent because the 1395// browser terminated before these accumulated metrics could be sent. These 1396// logs typically include histograms and memory reports, as well as ongoing 1397// user activities. 1398const char kMetricsOngoingLogs[] = 1399 "user_experience_metrics.ongoing_logs_as_protobufs"; 1400 1401// 64-bit integer serialization of the base::Time from the last successful seed 1402// fetch (i.e. when the Variations server responds with 200 or 304). 1403const char kVariationsLastFetchTime[] = "variations_last_fetch_time"; 1404 1405// String for the restrict parameter to be appended to the variations URL. 1406const char kVariationsRestrictParameter[] = "variations_restrict_parameter"; 1407 1408// String serialized form of variations seed protobuf. 1409const char kVariationsSeed[] = "variations_seed"; 1410 1411// 64-bit integer serialization of the base::Time from the last seed received. 1412const char kVariationsSeedDate[] = "variations_seed_date"; 1413 1414// SHA-1 hash of the serialized variations seed data (hex encoded). 1415const char kVariationsSeedHash[] = "variations_seed_hash"; 1416 1417// Digital signature of the binary variations seed data, base64-encoded. 1418const char kVariationsSeedSignature[] = "variations_seed_signature"; 1419 1420// An enum value to indicate the execution phase the browser was in. 1421const char kStabilityExecutionPhase[] = 1422 "user_experience_metrics.stability.execution_phase"; 1423 1424// True if the previous run of the program exited cleanly. 1425const char kStabilityExitedCleanly[] = 1426 "user_experience_metrics.stability.exited_cleanly"; 1427 1428// Version string of previous run, which is used to assure that stability 1429// metrics reported under current version reflect stability of the same version. 1430const char kStabilityStatsVersion[] = 1431 "user_experience_metrics.stability.stats_version"; 1432 1433// Build time, in seconds since an epoch, which is used to assure that stability 1434// metrics reported reflect stability of the same build. 1435const char kStabilityStatsBuildTime[] = 1436 "user_experience_metrics.stability.stats_buildtime"; 1437 1438// False if we received a session end and either we crashed during processing 1439// the session end or ran out of time and windows terminated us. 1440const char kStabilitySessionEndCompleted[] = 1441 "user_experience_metrics.stability.session_end_completed"; 1442 1443// Number of times the application was launched since last report. 1444const char kStabilityLaunchCount[] = 1445 "user_experience_metrics.stability.launch_count"; 1446 1447// Number of times the application exited uncleanly since the last report. 1448const char kStabilityCrashCount[] = 1449 "user_experience_metrics.stability.crash_count"; 1450 1451// Number of times the session end did not complete. 1452const char kStabilityIncompleteSessionEndCount[] = 1453 "user_experience_metrics.stability.incomplete_session_end_count"; 1454 1455// Number of times a page load event occurred since the last report. 1456const char kStabilityPageLoadCount[] = 1457 "user_experience_metrics.stability.page_load_count"; 1458 1459// Base64 encoded serialized UMA system profile proto from the previous session. 1460const char kStabilitySavedSystemProfile[] = 1461 "user_experience_metrics.stability.saved_system_profile"; 1462 1463// SHA-1 hash of the serialized UMA system profile proto (hex encoded). 1464const char kStabilitySavedSystemProfileHash[] = 1465 "user_experience_metrics.stability.saved_system_profile_hash"; 1466 1467// Number of times a renderer process crashed since the last report. 1468const char kStabilityRendererCrashCount[] = 1469 "user_experience_metrics.stability.renderer_crash_count"; 1470 1471// Number of times an extension renderer process crashed since the last report. 1472const char kStabilityExtensionRendererCrashCount[] = 1473 "user_experience_metrics.stability.extension_renderer_crash_count"; 1474 1475// Time when the app was last launched, in seconds since the epoch. 1476const char kStabilityLaunchTimeSec[] = 1477 "user_experience_metrics.stability.launch_time_sec"; 1478 1479// Time when the app was last known to be running, in seconds since 1480// the epoch. 1481const char kStabilityLastTimestampSec[] = 1482 "user_experience_metrics.stability.last_timestamp_sec"; 1483 1484// This is the location of a list of dictionaries of plugin stability stats. 1485const char kStabilityPluginStats[] = 1486 "user_experience_metrics.stability.plugin_stats2"; 1487 1488// Number of times the renderer has become non-responsive since the last 1489// report. 1490const char kStabilityRendererHangCount[] = 1491 "user_experience_metrics.stability.renderer_hang_count"; 1492 1493// Total number of child process crashes (other than renderer / extension 1494// renderer ones, and plugin children, which are counted separately) since the 1495// last report. 1496const char kStabilityChildProcessCrashCount[] = 1497 "user_experience_metrics.stability.child_process_crash_count"; 1498 1499// On Chrome OS, total number of non-Chrome user process crashes 1500// since the last report. 1501const char kStabilityOtherUserCrashCount[] = 1502 "user_experience_metrics.stability.other_user_crash_count"; 1503 1504// On Chrome OS, total number of kernel crashes since the last report. 1505const char kStabilityKernelCrashCount[] = 1506 "user_experience_metrics.stability.kernel_crash_count"; 1507 1508// On Chrome OS, total number of unclean system shutdowns since the 1509// last report. 1510const char kStabilitySystemUncleanShutdownCount[] = 1511 "user_experience_metrics.stability.system_unclean_shutdowns"; 1512 1513#if defined(OS_ANDROID) 1514// Activity type that is currently in the foreground for the UMA session. 1515// Uses the ActivityTypeIds::Type enum. 1516const char kStabilityForegroundActivityType[] = 1517 "user_experience_metrics.stability.current_foreground_activity_type"; 1518 1519// Tracks which Activities were launched during the last session. 1520// See |metrics_service_android.cc| for its usage. 1521const char kStabilityLaunchedActivityFlags[] = 1522 "user_experience_metrics.stability.launched_activity_flags"; 1523 1524// List pref: Counts how many times each Activity was launched. 1525// Indexed into by ActivityTypeIds::Type. 1526const char kStabilityLaunchedActivityCounts[] = 1527 "user_experience_metrics.stability.launched_activity_counts"; 1528 1529// List pref: Counts how many times each Activity type was in the foreground 1530// when a UMA session failed to be shut down properly. 1531// Indexed into by ActivityTypeIds::Type. 1532const char kStabilityCrashedActivityCounts[] = 1533 "user_experience_metrics.stability.crashed_activity_counts"; 1534#endif 1535 1536// Number of times the browser has been able to register crash reporting. 1537const char kStabilityBreakpadRegistrationSuccess[] = 1538 "user_experience_metrics.stability.breakpad_registration_ok"; 1539 1540// Number of times the browser has failed to register crash reporting. 1541const char kStabilityBreakpadRegistrationFail[] = 1542 "user_experience_metrics.stability.breakpad_registration_fail"; 1543 1544// Number of times the browser has been run under a debugger. 1545const char kStabilityDebuggerPresent[] = 1546 "user_experience_metrics.stability.debugger_present"; 1547 1548// Number of times the browser has not been run under a debugger. 1549const char kStabilityDebuggerNotPresent[] = 1550 "user_experience_metrics.stability.debugger_not_present"; 1551 1552// The keys below are used for the dictionaries in the 1553// kStabilityPluginStats list. 1554const char kStabilityPluginName[] = "name"; 1555const char kStabilityPluginLaunches[] = "launches"; 1556const char kStabilityPluginInstances[] = "instances"; 1557const char kStabilityPluginCrashes[] = "crashes"; 1558const char kStabilityPluginLoadingErrors[] = "loading_errors"; 1559 1560// The keys below are strictly increasing counters over the lifetime of 1561// a chrome installation. They are (optionally) sent up to the uninstall 1562// survey in the event of uninstallation. The installation date is used by some 1563// opt-in services such as Wallet and UMA. 1564const char kInstallDate[] = "uninstall_metrics.installation_date2"; 1565const char kUninstallMetricsPageLoadCount[] = 1566 "uninstall_metrics.page_load_count"; 1567const char kUninstallLaunchCount[] = "uninstall_metrics.launch_count"; 1568const char kUninstallMetricsUptimeSec[] = "uninstall_metrics.uptime_sec"; 1569const char kUninstallLastLaunchTimeSec[] = 1570 "uninstall_metrics.last_launch_time_sec"; 1571const char kUninstallLastObservedRunTimeSec[] = 1572 "uninstall_metrics.last_observed_running_time_sec"; 1573 1574// String containing the version of Chrome for which Chrome will not prompt the 1575// user about setting Chrome as the default browser. 1576const char kBrowserSuppressDefaultBrowserPrompt[] = 1577 "browser.suppress_default_browser_prompt_for_version"; 1578 1579// A collection of position, size, and other data relating to the browser 1580// window to restore on startup. 1581const char kBrowserWindowPlacement[] = "browser.window_placement"; 1582 1583// Browser window placement for popup windows. 1584const char kBrowserWindowPlacementPopup[] = "browser.window_placement_popup"; 1585 1586// A collection of position, size, and other data relating to the task 1587// manager window to restore on startup. 1588const char kTaskManagerWindowPlacement[] = "task_manager.window_placement"; 1589 1590// A collection of position, size, and other data relating to the keyword 1591// editor window to restore on startup. 1592const char kKeywordEditorWindowPlacement[] = "keyword_editor.window_placement"; 1593 1594// A collection of position, size, and other data relating to the preferences 1595// window to restore on startup. 1596const char kPreferencesWindowPlacement[] = "preferences.window_placement"; 1597 1598// An integer specifying the total number of bytes to be used by the 1599// renderer's in-memory cache of objects. 1600const char kMemoryCacheSize[] = "renderer.memory_cache.size"; 1601 1602// String which specifies where to download files to by default. 1603const char kDownloadDefaultDirectory[] = "download.default_directory"; 1604 1605// Boolean that records if the download directory was changed by an 1606// upgrade a unsafe location to a safe location. 1607const char kDownloadDirUpgraded[] = "download.directory_upgrade"; 1608 1609// String which specifies where to save html files to by default. 1610const char kSaveFileDefaultDirectory[] = "savefile.default_directory"; 1611 1612// The type used to save the page. See the enum SavePackage::SavePackageType in 1613// the chrome/browser/download/save_package.h for the possible values. 1614const char kSaveFileType[] = "savefile.type"; 1615 1616// String which specifies the last directory that was chosen for uploading 1617// or opening a file. 1618const char kSelectFileLastDirectory[] = "selectfile.last_directory"; 1619 1620// Boolean that specifies if file selection dialogs are shown. 1621const char kAllowFileSelectionDialogs[] = "select_file_dialogs.allowed"; 1622 1623// Map of default tasks, associated by MIME type. 1624const char kDefaultTasksByMimeType[] = 1625 "filebrowser.tasks.default_by_mime_type"; 1626 1627// Map of default tasks, associated by file suffix. 1628const char kDefaultTasksBySuffix[] = 1629 "filebrowser.tasks.default_by_suffix"; 1630 1631// Extensions which should be opened upon completion. 1632const char kDownloadExtensionsToOpen[] = "download.extensions_to_open"; 1633 1634// Integer which specifies the frequency in milliseconds for detecting whether 1635// plugin windows are hung. 1636const char kHungPluginDetectFrequency[] = "browser.hung_plugin_detect_freq"; 1637 1638// Integer which specifies the timeout value to be used for SendMessageTimeout 1639// to detect a hung plugin window. 1640const char kPluginMessageResponseTimeout[] = 1641 "browser.plugin_message_response_timeout"; 1642 1643// String which represents the dictionary name for our spell-checker. 1644const char kSpellCheckDictionary[] = "spellcheck.dictionary"; 1645 1646// String which represents whether we use the spelling service. 1647const char kSpellCheckUseSpellingService[] = "spellcheck.use_spelling_service"; 1648 1649// Dictionary of schemes used by the external protocol handler. 1650// The value is true if the scheme must be ignored. 1651const char kExcludedSchemes[] = "protocol_handler.excluded_schemes"; 1652 1653// Keys used for MAC handling of SafeBrowsing requests. 1654const char kSafeBrowsingClientKey[] = "safe_browsing.client_key"; 1655const char kSafeBrowsingWrappedKey[] = "safe_browsing.wrapped_key"; 1656 1657// Integer that specifies the index of the tab the user was on when they 1658// last visited the options window. 1659const char kOptionsWindowLastTabIndex[] = "options_window.last_tab_index"; 1660 1661// Integer that specifies the index of the tab the user was on when they 1662// last visited the content settings window. 1663const char kContentSettingsWindowLastTabIndex[] = 1664 "content_settings_window.last_tab_index"; 1665 1666// Integer that specifies the index of the tab the user was on when they 1667// last visited the Certificate Manager window. 1668const char kCertificateManagerWindowLastTabIndex[] = 1669 "certificate_manager_window.last_tab_index"; 1670 1671// Integer that specifies if the first run bubble should be shown. 1672// This preference is only registered by the first-run procedure. 1673const char kShowFirstRunBubbleOption[] = "show-first-run-bubble-option"; 1674 1675// String containing the last known Google URL. We re-detect this on startup in 1676// most cases, and use it to send traffic to the correct Google host or with the 1677// correct Google domain/country code for whatever location the user is in. 1678const char kLastKnownGoogleURL[] = "browser.last_known_google_url"; 1679 1680// String containing the last prompted Google URL to the user. 1681// If the user is using .x TLD for Google URL and gets prompted about .y TLD 1682// for Google URL, and says "no", we should leave the search engine set to .x 1683// but not prompt again until the domain changes away from .y. 1684const char kLastPromptedGoogleURL[] = "browser.last_prompted_google_url"; 1685 1686// String containing the last known intranet redirect URL, if any. See 1687// intranet_redirect_detector.h for more information. 1688const char kLastKnownIntranetRedirectOrigin[] = "browser.last_redirect_origin"; 1689 1690// Integer containing the system Country ID the first time we checked the 1691// template URL prepopulate data. This is used to avoid adding a whole bunch of 1692// new search engine choices if prepopulation runs when the user's Country ID 1693// differs from their previous Country ID. This pref does not exist until 1694// prepopulation has been run at least once. 1695const char kCountryIDAtInstall[] = "countryid_at_install"; 1696// OBSOLETE. Same as above, but uses the Windows-specific GeoID value instead. 1697// Updated if found to the above key. 1698const char kGeoIDAtInstall[] = "geoid_at_install"; 1699 1700// An enum value of how the browser was shut down (see browser_shutdown.h). 1701const char kShutdownType[] = "shutdown.type"; 1702// Number of processes that were open when the user shut down. 1703const char kShutdownNumProcesses[] = "shutdown.num_processes"; 1704// Number of processes that were shut down using the slow path. 1705const char kShutdownNumProcessesSlow[] = "shutdown.num_processes_slow"; 1706 1707// Whether to restart the current Chrome session automatically as the last thing 1708// before shutting everything down. 1709const char kRestartLastSessionOnShutdown[] = "restart.last.session.on.shutdown"; 1710 1711// Set before autorestarting Chrome, cleared on clean exit. 1712const char kWasRestarted[] = "was.restarted"; 1713 1714#if defined(OS_WIN) 1715// Preference to be used while relaunching Chrome. This preference dictates if 1716// Chrome should be launched in Metro or Desktop mode. 1717// For more info take a look at ChromeRelaunchMode enum. 1718const char kRelaunchMode[] = "relaunch.mode"; 1719#endif 1720 1721// Placeholder preference for disabling voice / video chat if it is ever added. 1722// Currently, this does not change any behavior. 1723const char kDisableVideoAndChat[] = "disable_video_chat"; 1724 1725// Whether Extensions are enabled. 1726const char kDisableExtensions[] = "extensions.disabled"; 1727 1728// Whether the plugin finder that lets you install missing plug-ins is enabled. 1729const char kDisablePluginFinder[] = "plugins.disable_plugin_finder"; 1730 1731// Customized app page names that appear on the New Tab Page. 1732const char kNtpAppPageNames[] = "ntp.app_page_names"; 1733 1734// Keeps track of which sessions are collapsed in the Other Devices menu. 1735const char kNtpCollapsedForeignSessions[] = "ntp.collapsed_foreign_sessions"; 1736 1737// Keeps track of recently closed tabs collapsed state in the Other Devices 1738// menu. 1739const char kNtpCollapsedRecentlyClosedTabs[] = 1740 "ntp.collapsed_recently_closed_tabs"; 1741 1742// Keeps track of snapshot documents collapsed state in the Other Devices menu. 1743const char kNtpCollapsedSnapshotDocument[] = "ntp.collapsed_snapshot_document"; 1744 1745// Keeps track of sync promo collapsed state in the Other Devices menu. 1746const char kNtpCollapsedSyncPromo[] = "ntp.collapsed_sync_promo"; 1747 1748// Serves dates to determine display of elements on the NTP. 1749const char kNtpDateResourceServer[] = "ntp.date_resource_server"; 1750 1751// New Tab Page URLs that should not be shown as most visited thumbnails. 1752const char kNtpMostVisitedURLsBlacklist[] = "ntp.most_visited_blacklist"; 1753 1754// True if a desktop sync session was found for this user. 1755const char kNtpPromoDesktopSessionFound[] = "ntp.promo_desktop_session_found"; 1756 1757// Last time of update of promo_resource_cache. 1758const char kNtpPromoResourceCacheUpdate[] = "ntp.promo_resource_cache_update"; 1759 1760// Which bookmarks folder should be visible on the new tab page v4. 1761const char kNtpShownBookmarksFolder[] = "ntp.shown_bookmarks_folder"; 1762 1763// Which page should be visible on the new tab page v4 1764const char kNtpShownPage[] = "ntp.shown_page"; 1765 1766// Serves tips for the NTP. 1767const char kNtpTipsResourceServer[] = "ntp.tips_resource_server"; 1768 1769// Boolean indicating whether the web store is active for the current locale. 1770const char kNtpWebStoreEnabled[] = "ntp.webstore_enabled"; 1771 1772// A private RSA key for ADB handshake. 1773const char kDevToolsAdbKey[] = "devtools.adb_key"; 1774 1775const char kDevToolsDisabled[] = "devtools.disabled"; 1776 1777// Determines whether devtools should be discovering usb devices for 1778// remote debugging at chrome://inspect. 1779const char kDevToolsDiscoverUsbDevicesEnabled[] = 1780 "devtools.discover_usb_devices"; 1781 1782// Maps of files edited locally using DevTools. 1783const char kDevToolsEditedFiles[] = "devtools.edited_files"; 1784 1785// List of file system paths added in DevTools. 1786const char kDevToolsFileSystemPaths[] = "devtools.file_system_paths"; 1787 1788// A boolean specifying whether dev tools window should be opened docked. 1789const char kDevToolsOpenDocked[] = "devtools.open_docked"; 1790 1791// A boolean specifying whether port forwarding should be enabled. 1792const char kDevToolsPortForwardingEnabled[] = 1793 "devtools.port_forwarding_enabled"; 1794 1795// A boolean specifying whether default port forwarding configuration has been 1796// set. 1797const char kDevToolsPortForwardingDefaultSet[] = 1798 "devtools.port_forwarding_default_set"; 1799 1800// A dictionary of port->location pairs for port forwarding. 1801const char kDevToolsPortForwardingConfig[] = "devtools.port_forwarding_config"; 1802 1803#if defined(OS_ANDROID) 1804// A boolean specifying whether remote dev tools debugging is enabled. 1805const char kDevToolsRemoteEnabled[] = "devtools.remote_enabled"; 1806#endif 1807 1808// An ID to uniquely identify this client to the invalidator service. 1809const char kInvalidatorClientId[] = "invalidator.client_id"; 1810 1811// Opaque state from the invalidation subsystem that is persisted via prefs. 1812// The value is base 64 encoded. 1813const char kInvalidatorInvalidationState[] = "invalidator.invalidation_state"; 1814 1815// List of received invalidations that have not been acted on by any clients 1816// yet. Used to keep invalidation clients in sync in case of a restart. 1817const char kInvalidatorSavedInvalidations[] = "invalidator.saved_invalidations"; 1818 1819// Boolean indicating that TiclInvalidationService should use GCM channel. 1820// False or lack of settings means XMPPPushClient channel. 1821const char kInvalidationServiceUseGCMChannel[] = 1822 "invalidation_service.use_gcm_channel"; 1823 1824// Local hash of authentication password, used for off-line authentication 1825// when on-line authentication is not available. 1826const char kGoogleServicesPasswordHash[] = "google.services.password_hash"; 1827 1828#if !defined(OS_ANDROID) 1829// Tracks the number of times that we have shown the sign in promo at startup. 1830const char kSignInPromoStartupCount[] = "sync_promo.startup_count"; 1831 1832// Boolean tracking whether the user chose to skip the sign in promo. 1833const char kSignInPromoUserSkipped[] = "sync_promo.user_skipped"; 1834 1835// Boolean that specifies if the sign in promo is allowed to show on first run. 1836// This preference is specified in the master preference file to suppress the 1837// sign in promo for some installations. 1838const char kSignInPromoShowOnFirstRunAllowed[] = 1839 "sync_promo.show_on_first_run_allowed"; 1840 1841// Boolean that specifies if we should show a bubble in the new tab page. 1842// The bubble is used to confirm that the user is signed into sync. 1843const char kSignInPromoShowNTPBubble[] = "sync_promo.show_ntp_bubble"; 1844#endif 1845 1846// Create web application shortcut dialog preferences. 1847const char kWebAppCreateOnDesktop[] = "browser.web_app.create_on_desktop"; 1848const char kWebAppCreateInAppsMenu[] = "browser.web_app.create_in_apps_menu"; 1849const char kWebAppCreateInQuickLaunchBar[] = 1850 "browser.web_app.create_in_quick_launch_bar"; 1851 1852// Dictionary that maps Geolocation network provider server URLs to 1853// corresponding access token. 1854const char kGeolocationAccessToken[] = "geolocation.access_token"; 1855 1856// Boolean that indicates whether to allow firewall traversal while trying to 1857// establish the initial connection from the client or host. 1858const char kRemoteAccessHostFirewallTraversal[] = 1859 "remote_access.host_firewall_traversal"; 1860 1861// Boolean controlling whether 2-factor auth should be required when connecting 1862// to a host (instead of a PIN). 1863const char kRemoteAccessHostRequireTwoFactor[] = 1864 "remote_access.host_require_two_factor"; 1865 1866// String containing the domain name that hosts must belong to. If blank, then 1867// hosts can belong to any domain. 1868const char kRemoteAccessHostDomain[] = "remote_access.host_domain"; 1869 1870// String containing the domain name of the Chromoting Directory. 1871// Used by Chromoting host and client. 1872const char kRemoteAccessHostTalkGadgetPrefix[] = 1873 "remote_access.host_talkgadget_prefix"; 1874 1875// Boolean controlling whether curtaining is required when connecting to a host. 1876const char kRemoteAccessHostRequireCurtain[] = 1877 "remote_access.host_require_curtain"; 1878 1879// Boolean controlling whether curtaining is required when connecting to a host. 1880const char kRemoteAccessHostAllowClientPairing[] = 1881 "remote_access.host_allow_client_pairing"; 1882 1883// Whether Chrome Remote Desktop can proxy gnubby authentication traffic. 1884const char kRemoteAccessHostAllowGnubbyAuth[] = 1885 "remote_access.host_allow_gnubby_auth"; 1886 1887// Boolean that indicates whether the Chromoting host should allow connections 1888// using relay servers. 1889const char kRemoteAccessHostAllowRelayedConnection[] = 1890 "remote_access.host_allow_relayed_connection"; 1891 1892// String containing the UDP port range that the Chromoting host should used 1893// when connecting to clients. The port range should be in the form: 1894// <min_port>-<max_port>. E.g. 12400-12409. 1895const char kRemoteAccessHostUdpPortRange[] = 1896 "remote_access.host_udp_port_range"; 1897 1898// The last used printer and its settings. 1899const char kPrintPreviewStickySettings[] = 1900 "printing.print_preview_sticky_settings"; 1901 1902// The last requested size of the dialog as it was closed. 1903const char kCloudPrintDialogWidth[] = "cloud_print.dialog_size.width"; 1904const char kCloudPrintDialogHeight[] = "cloud_print.dialog_size.height"; 1905const char kCloudPrintSigninDialogWidth[] = 1906 "cloud_print.signin_dialog_size.width"; 1907const char kCloudPrintSigninDialogHeight[] = 1908 "cloud_print.signin_dialog_size.height"; 1909 1910// The list of BackgroundContents that should be loaded when the browser 1911// launches. 1912const char kRegisteredBackgroundContents[] = "background_contents.registered"; 1913 1914#if !defined(OS_ANDROID) 1915// An int that stores how often we've shown the "Chrome is configured to 1916// auto-launch" infobar. 1917const char kShownAutoLaunchInfobar[] = "browser.shown_autolaunch_infobar"; 1918#endif 1919 1920// String that lists supported HTTP authentication schemes. 1921const char kAuthSchemes[] = "auth.schemes"; 1922 1923// Boolean that specifies whether to disable CNAME lookups when generating 1924// Kerberos SPN. 1925const char kDisableAuthNegotiateCnameLookup[] = 1926 "auth.disable_negotiate_cname_lookup"; 1927 1928// Boolean that specifies whether to include the port in a generated Kerberos 1929// SPN. 1930const char kEnableAuthNegotiatePort[] = "auth.enable_negotiate_port"; 1931 1932// Whitelist containing servers for which Integrated Authentication is enabled. 1933const char kAuthServerWhitelist[] = "auth.server_whitelist"; 1934 1935// Whitelist containing servers Chrome is allowed to do Kerberos delegation 1936// with. 1937const char kAuthNegotiateDelegateWhitelist[] = 1938 "auth.negotiate_delegate_whitelist"; 1939 1940// String that specifies the name of a custom GSSAPI library to load. 1941const char kGSSAPILibraryName[] = "auth.gssapi_library_name"; 1942 1943// Boolean that specifies whether to allow basic auth prompting on cross- 1944// domain sub-content requests. 1945const char kAllowCrossOriginAuthPrompt[] = "auth.allow_cross_origin_prompt"; 1946 1947// Boolean that specifies whether the built-in asynchronous DNS client is used. 1948const char kBuiltInDnsClientEnabled[] = "async_dns.enabled"; 1949 1950// A pref holding the value of the policy used to explicitly allow or deny 1951// access to audio capture devices. When enabled or not set, the user is 1952// prompted for device access. When disabled, access to audio capture devices 1953// is not allowed and no prompt will be shown. 1954// See also kAudioCaptureAllowedUrls. 1955const char kAudioCaptureAllowed[] = "hardware.audio_capture_enabled"; 1956// Holds URL patterns that specify URLs that will be granted access to audio 1957// capture devices without prompt. NOTE: This whitelist is currently only 1958// supported when running in kiosk mode. 1959// TODO(tommi): Update comment when this is supported for all modes. 1960const char kAudioCaptureAllowedUrls[] = "hardware.audio_capture_allowed_urls"; 1961 1962// A pref holding the value of the policy used to explicitly allow or deny 1963// access to video capture devices. When enabled or not set, the user is 1964// prompted for device access. When disabled, access to video capture devices 1965// is not allowed and no prompt will be shown. 1966const char kVideoCaptureAllowed[] = "hardware.video_capture_enabled"; 1967// Holds URL patterns that specify URLs that will be granted access to video 1968// capture devices without prompt. NOTE: This whitelist is currently only 1969// supported when running in kiosk mode. 1970// TODO(tommi): Update comment when this is supported for all modes. 1971const char kVideoCaptureAllowedUrls[] = "hardware.video_capture_allowed_urls"; 1972 1973// A boolean pref that controls the enabled-state of hotword search voice 1974// trigger. 1975const char kHotwordSearchEnabled[] = "hotword.search_enabled_2"; 1976 1977// An integer pref that keeps track of how many times the opt in popup for 1978// hotword void search has been shown to the user. After this pref has reached 1979// the maximum number of times as defined by the HotwordService, the popup is no 1980// longer shown. 1981const char kHotwordOptInPopupTimesShown[] = "hotword.opt_in_popup_times_shown"; 1982 1983// A boolean pref that controls whether the sound of "Ok, Google" plus a few 1984// seconds of audio data before is sent back to improve voice search. 1985const char kHotwordAudioLoggingEnabled[] = "hotword.audio_logging_enabled"; 1986 1987#if defined(OS_ANDROID) 1988// Boolean that controls the global enabled-state of protected media identifier. 1989const char kProtectedMediaIdentifierEnabled[] = 1990 "protected_media_identifier.enabled"; 1991#endif 1992 1993#if defined(OS_CHROMEOS) 1994// Dictionary for transient storage of settings that should go into device 1995// settings storage before owner has been assigned. 1996const char kDeviceSettingsCache[] = "signed_settings_cache"; 1997 1998// The hardware keyboard layout of the device. This should look like 1999// "xkb:us::eng". 2000const char kHardwareKeyboardLayout[] = "intl.hardware_keyboard"; 2001 2002// An integer pref which shows number of times carrier deal promo 2003// notification has been shown to user. 2004const char kCarrierDealPromoShown[] = 2005 "settings.internet.mobile.carrier_deal_promo_shown"; 2006 2007// A boolean pref of the auto-enrollment decision. Its value is only valid if 2008// it's not the default value; otherwise, no auto-enrollment decision has been 2009// made yet. 2010const char kShouldAutoEnroll[] = "ShouldAutoEnroll"; 2011 2012// An integer pref with the maximum number of bits used by the client in a 2013// previous auto-enrollment request. If the client goes through an auto update 2014// during OOBE and reboots into a version of the OS with a larger maximum 2015// modulus, then it will retry auto-enrollment using the updated value. 2016const char kAutoEnrollmentPowerLimit[] = "AutoEnrollmentPowerLimit"; 2017 2018// The local state pref that stores device activity times before reporting 2019// them to the policy server. 2020const char kDeviceActivityTimes[] = "device_status.activity_times"; 2021 2022// A pref holding the last known location when device location reporting is 2023// enabled. 2024const char kDeviceLocation[] = "device_status.location"; 2025 2026// A pref holding the value of the policy used to disable mounting of external 2027// storage for the user. 2028const char kExternalStorageDisabled[] = "hardware.external_storage_disabled"; 2029 2030// A pref holding the value of the policy used to disable playing audio on 2031// ChromeOS devices. This pref overrides |kAudioMute| but does not overwrite 2032// it, therefore when the policy is lifted the original mute state is restored. 2033const char kAudioOutputAllowed[] = "hardware.audio_output_enabled"; 2034 2035// A dictionary that maps usernames to wallpaper properties. 2036const char kUsersWallpaperInfo[] = "user_wallpaper_info"; 2037 2038// Copy of owner swap mouse buttons option to use on login screen. 2039const char kOwnerPrimaryMouseButtonRight[] = "owner.mouse.primary_right"; 2040 2041// Copy of owner tap-to-click option to use on login screen. 2042const char kOwnerTapToClickEnabled[] = "owner.touchpad.enable_tap_to_click"; 2043 2044// The length of device uptime after which an automatic reboot is scheduled, 2045// expressed in seconds. 2046const char kUptimeLimit[] = "automatic_reboot.uptime_limit"; 2047 2048// Whether an automatic reboot should be scheduled when an update has been 2049// applied and a reboot is required to complete the update process. 2050const char kRebootAfterUpdate[] = "automatic_reboot.reboot_after_update"; 2051 2052// An any-api scoped refresh token for enterprise-enrolled devices. Allows 2053// for connection to Google APIs when the user isn't logged in. Currently used 2054// for for getting a cloudprint scoped token to allow printing in Guest mode, 2055// Public Accounts and kiosks. 2056const char kDeviceRobotAnyApiRefreshToken[] = 2057 "device_robot_refresh_token.any-api"; 2058 2059// Device requisition for enterprise enrollment. 2060const char kDeviceEnrollmentRequisition[] = "enrollment.device_requisition"; 2061 2062// Whether to automatically start the enterprise enrollment step during OOBE. 2063const char kDeviceEnrollmentAutoStart[] = "enrollment.auto_start"; 2064 2065// Whether the user may exit enrollment. 2066const char kDeviceEnrollmentCanExit[] = "enrollment.can_exit"; 2067 2068// Dictionary of per-user Least Recently Used input method (used at login 2069// screen). 2070extern const char kUsersLRUInputMethod[] = "UsersLRUInputMethod"; 2071 2072// A dictionary pref of the echo offer check flag. It sets offer info when 2073// an offer is checked. 2074extern const char kEchoCheckedOffers[] = "EchoCheckedOffers"; 2075 2076// Key name of a dictionary in local state to store cached multiprofle user 2077// behavior policy value. 2078const char kCachedMultiProfileUserBehavior[] = "CachedMultiProfileUserBehavior"; 2079 2080// A string pref with initial locale set in VPD or manifest. 2081const char kInitialLocale[] = "intl.initial_locale"; 2082 2083// A boolean pref of the OOBE complete flag (first OOBE part before login). 2084const char kOobeComplete[] = "OobeComplete"; 2085 2086// A boolean pref of the device registered flag (second part after first login). 2087const char kDeviceRegistered[] = "DeviceRegistered"; 2088 2089// List of usernames that used certificates pushed by policy before. 2090// This is used to prevent these users from joining multiprofile sessions. 2091const char kUsedPolicyCertificates[] = "policy.used_policy_certificates"; 2092 2093// A dictionary containing server-provided device state pulled form the cloud 2094// after recovery. 2095const char kServerBackedDeviceState[] = "server_backed_device_state"; 2096 2097// Customized wallpaper URL, which is already downloaded and scaled. 2098// The URL from this preference must never be fetched. It is compared to the 2099// URL from customization document to check if wallpaper URL has changed 2100// since wallpaper was cached. 2101const char kCustomizationDefaultWallpaperURL[] = 2102 "customization.default_wallpaper_url"; 2103#endif 2104 2105// Whether there is a Flash version installed that supports clearing LSO data. 2106const char kClearPluginLSODataEnabled[] = "browser.clear_lso_data_enabled"; 2107 2108// Whether we should show Pepper Flash-specific settings. 2109const char kPepperFlashSettingsEnabled[] = 2110 "browser.pepper_flash_settings_enabled"; 2111 2112// String which specifies where to store the disk cache. 2113const char kDiskCacheDir[] = "browser.disk_cache_dir"; 2114// Pref name for the policy specifying the maximal cache size. 2115const char kDiskCacheSize[] = "browser.disk_cache_size"; 2116// Pref name for the policy specifying the maximal media cache size. 2117const char kMediaCacheSize[] = "browser.media_cache_size"; 2118 2119// Specifies the release channel that the device should be locked to. 2120// Possible values: "stable-channel", "beta-channel", "dev-channel", or an 2121// empty string, in which case the value will be ignored. 2122// TODO(dubroy): This preference may not be necessary once 2123// http://crosbug.com/17015 is implemented and the update engine can just 2124// fetch the correct value from the policy. 2125const char kChromeOsReleaseChannel[] = "cros.system.releaseChannel"; 2126 2127const char kPerformanceTracingEnabled[] = 2128 "feedback.performance_tracing_enabled"; 2129 2130// Value of the enums in TabStrip::LayoutType as an int. 2131const char kTabStripLayoutType[] = "tab_strip_layout_type"; 2132 2133// Indicates that factory reset was requested from options page or reset screen. 2134const char kFactoryResetRequested[] = "FactoryResetRequested"; 2135 2136// Indicates that rollback was requested alongside with factory reset. 2137// Makes sense only if kFactoryResetRequested is true. 2138const char kRollbackRequested[] = "RollbackRequested"; 2139 2140// Boolean recording whether we have showed a balloon that calls out the message 2141// center for desktop notifications. 2142const char kMessageCenterShowedFirstRunBalloon[] = 2143 "message_center.showed_first_run_balloon"; 2144 2145// Boolean recording whether the user has disabled the notifications 2146// menubar or systray icon. 2147const char kMessageCenterShowIcon[] = "message_center.show_icon"; 2148 2149const char kMessageCenterForcedOnTaskbar[] = 2150 "message_center.was_forced_on_taskbar"; 2151 2152// *************** SERVICE PREFS *************** 2153// These are attached to the service process. 2154 2155const char kCloudPrintRoot[] = "cloud_print"; 2156const char kCloudPrintProxyEnabled[] = "cloud_print.enabled"; 2157// The unique id for this instance of the cloud print proxy. 2158const char kCloudPrintProxyId[] = "cloud_print.proxy_id"; 2159// The GAIA auth token for Cloud Print 2160const char kCloudPrintAuthToken[] = "cloud_print.auth_token"; 2161// The GAIA auth token used by Cloud Print to authenticate with the XMPP server 2162// This should eventually go away because the above token should work for both. 2163const char kCloudPrintXMPPAuthToken[] = "cloud_print.xmpp_auth_token"; 2164// The email address of the account used to authenticate with the Cloud Print 2165// server. 2166const char kCloudPrintEmail[] = "cloud_print.email"; 2167// Settings specific to underlying print system. 2168const char kCloudPrintPrintSystemSettings[] = 2169 "cloud_print.print_system_settings"; 2170// A boolean indicating whether we should poll for print jobs when don't have 2171// an XMPP connection (false by default). 2172const char kCloudPrintEnableJobPoll[] = "cloud_print.enable_job_poll"; 2173const char kCloudPrintRobotRefreshToken[] = "cloud_print.robot_refresh_token"; 2174const char kCloudPrintRobotEmail[] = "cloud_print.robot_email"; 2175// A boolean indicating whether we should connect to cloud print new printers. 2176const char kCloudPrintConnectNewPrinters[] = 2177 "cloud_print.user_settings.connectNewPrinters"; 2178// A boolean indicating whether we should ping XMPP connection. 2179const char kCloudPrintXmppPingEnabled[] = "cloud_print.xmpp_ping_enabled"; 2180// An int value indicating the average timeout between xmpp pings. 2181const char kCloudPrintXmppPingTimeout[] = "cloud_print.xmpp_ping_timeout_sec"; 2182// Dictionary with settings stored by connector setup page. 2183const char kCloudPrintUserSettings[] = "cloud_print.user_settings"; 2184// List of printers settings. 2185extern const char kCloudPrintPrinters[] = "cloud_print.user_settings.printers"; 2186// A boolean indicating whether submitting jobs to Google Cloud Print is 2187// blocked by policy. 2188const char kCloudPrintSubmitEnabled[] = "cloud_print.submit_enabled"; 2189 2190// Preference to store proxy settings. 2191const char kProxy[] = "proxy"; 2192const char kMaxConnectionsPerProxy[] = "net.max_connections_per_proxy"; 2193 2194// Preferences that are exclusively used to store managed values for default 2195// content settings. 2196const char kManagedDefaultCookiesSetting[] = 2197 "profile.managed_default_content_settings.cookies"; 2198const char kManagedDefaultImagesSetting[] = 2199 "profile.managed_default_content_settings.images"; 2200const char kManagedDefaultJavaScriptSetting[] = 2201 "profile.managed_default_content_settings.javascript"; 2202const char kManagedDefaultPluginsSetting[] = 2203 "profile.managed_default_content_settings.plugins"; 2204const char kManagedDefaultPopupsSetting[] = 2205 "profile.managed_default_content_settings.popups"; 2206const char kManagedDefaultGeolocationSetting[] = 2207 "profile.managed_default_content_settings.geolocation"; 2208const char kManagedDefaultNotificationsSetting[] = 2209 "profile.managed_default_content_settings.notifications"; 2210const char kManagedDefaultMediaStreamSetting[] = 2211 "profile.managed_default_content_settings.media_stream"; 2212 2213// Preferences that are exclusively used to store managed 2214// content settings patterns. 2215const char kManagedCookiesAllowedForUrls[] = 2216 "profile.managed_cookies_allowed_for_urls"; 2217const char kManagedCookiesBlockedForUrls[] = 2218 "profile.managed_cookies_blocked_for_urls"; 2219const char kManagedCookiesSessionOnlyForUrls[] = 2220 "profile.managed_cookies_sessiononly_for_urls"; 2221const char kManagedImagesAllowedForUrls[] = 2222 "profile.managed_images_allowed_for_urls"; 2223const char kManagedImagesBlockedForUrls[] = 2224 "profile.managed_images_blocked_for_urls"; 2225const char kManagedJavaScriptAllowedForUrls[] = 2226 "profile.managed_javascript_allowed_for_urls"; 2227const char kManagedJavaScriptBlockedForUrls[] = 2228 "profile.managed_javascript_blocked_for_urls"; 2229const char kManagedPluginsAllowedForUrls[] = 2230 "profile.managed_plugins_allowed_for_urls"; 2231const char kManagedPluginsBlockedForUrls[] = 2232 "profile.managed_plugins_blocked_for_urls"; 2233const char kManagedPopupsAllowedForUrls[] = 2234 "profile.managed_popups_allowed_for_urls"; 2235const char kManagedPopupsBlockedForUrls[] = 2236 "profile.managed_popups_blocked_for_urls"; 2237const char kManagedNotificationsAllowedForUrls[] = 2238 "profile.managed_notifications_allowed_for_urls"; 2239const char kManagedNotificationsBlockedForUrls[] = 2240 "profile.managed_notifications_blocked_for_urls"; 2241const char kManagedAutoSelectCertificateForUrls[] = 2242 "profile.managed_auto_select_certificate_for_urls"; 2243 2244#if defined(OS_MACOSX) 2245// Set to true if the user removed our login item so we should not create a new 2246// one when uninstalling background apps. 2247const char kUserRemovedLoginItem[] = "background_mode.user_removed_login_item"; 2248 2249// Set to true if Chrome already created a login item, so there's no need to 2250// create another one. 2251const char kChromeCreatedLoginItem[] = 2252 "background_mode.chrome_created_login_item"; 2253 2254// Set to true once we've initialized kChromeCreatedLoginItem for the first 2255// time. 2256const char kMigratedLoginItemPref[] = 2257 "background_mode.migrated_login_item_pref"; 2258 2259// A boolean that tracks whether to show a notification when trying to quit 2260// while there are apps running. 2261const char kNotifyWhenAppsKeepChromeAlive[] = 2262 "apps.notify-when-apps-keep-chrome-alive"; 2263#endif 2264 2265// Set to true if background mode is enabled on this browser. 2266const char kBackgroundModeEnabled[] = "background_mode.enabled"; 2267 2268// Set to true if hardware acceleration mode is enabled on this browser. 2269const char kHardwareAccelerationModeEnabled[] = 2270 "hardware_acceleration_mode.enabled"; 2271 2272// Hardware acceleration mode from previous browser launch. 2273const char kHardwareAccelerationModePrevious[] = 2274 "hardware_acceleration_mode_previous"; 2275 2276// List of protocol handlers. 2277const char kRegisteredProtocolHandlers[] = 2278 "custom_handlers.registered_protocol_handlers"; 2279 2280// List of protocol handlers the user has requested not to be asked about again. 2281const char kIgnoredProtocolHandlers[] = 2282 "custom_handlers.ignored_protocol_handlers"; 2283 2284// Whether user-specified handlers for protocols and content types can be 2285// specified. 2286const char kCustomHandlersEnabled[] = "custom_handlers.enabled"; 2287 2288// Integer that specifies the policy refresh rate for device-policy in 2289// milliseconds. Not all values are meaningful, so it is clamped to a sane range 2290// by the cloud policy subsystem. 2291const char kDevicePolicyRefreshRate[] = "policy.device_refresh_rate"; 2292 2293// String that represents the recovery component last downloaded version. This 2294// takes the usual 'a.b.c.d' notation. 2295const char kRecoveryComponentVersion[] = "recovery_component.version"; 2296 2297// String that stores the component updater last known state. This is used for 2298// troubleshooting. 2299const char kComponentUpdaterState[] = "component_updater.state"; 2300 2301// A boolean where true means that the browser has previously attempted to 2302// enable autoupdate and failed, so the next out-of-date browser start should 2303// not prompt the user to enable autoupdate, it should offer to reinstall Chrome 2304// instead. 2305const char kAttemptedToEnableAutoupdate[] = 2306 "browser.attempted_to_enable_autoupdate"; 2307 2308// The next media gallery ID to assign. 2309const char kMediaGalleriesUniqueId[] = "media_galleries.gallery_id"; 2310 2311// A list of dictionaries, where each dictionary represents a known media 2312// gallery. 2313const char kMediaGalleriesRememberedGalleries[] = 2314 "media_galleries.remembered_galleries"; 2315 2316// The last time a media scan completed. 2317const char kMediaGalleriesLastScanTime[] = "media_galleries.last_scan_time"; 2318 2319#if defined(USE_ASH) 2320// |kShelfAlignment| and |kShelfAutoHideBehavior| have a local variant. The 2321// local variant is not synced and is used if set. If the local variant is not 2322// set its value is set from the synced value (once prefs have been 2323// synced). This gives a per-machine setting that is initialized from the last 2324// set value. 2325// These values are default on the machine but can be overridden by per-display 2326// values in kShelfPreferences (unless overridden by managed policy). 2327// String value corresponding to ash::Shell::ShelfAlignment. 2328const char kShelfAlignment[] = "shelf_alignment"; 2329const char kShelfAlignmentLocal[] = "shelf_alignment_local"; 2330// String value corresponding to ash::Shell::ShelfAutoHideBehavior. 2331const char kShelfAutoHideBehavior[] = "auto_hide_behavior"; 2332const char kShelfAutoHideBehaviorLocal[] = "auto_hide_behavior_local"; 2333// This value stores chrome icon's index in the launcher. This should be handled 2334// separately with app shortcut's index because of ShelfModel's backward 2335// compatability. If we add chrome icon index to |kPinnedLauncherApps|, its 2336// index is also stored in the |kPinnedLauncherApp| pref. It may causes 2337// creating two chrome icons. 2338const char kShelfChromeIconIndex[] = "shelf_chrome_icon_index"; 2339// Dictionary value that holds per-display preference of shelf alignment and 2340// auto-hide behavior. Key of the dictionary is the id of the display, and 2341// its value is a dictionary whose keys are kShelfAlignment and 2342// kShelfAutoHideBehavior. 2343const char kShelfPreferences[] = "shelf_preferences"; 2344 2345// Integer value in milliseconds indicating the length of time for which a 2346// confirmation dialog should be shown when the user presses the logout button. 2347// A value of 0 indicates that logout should happen immediately, without showing 2348// a confirmation dialog. 2349const char kLogoutDialogDurationMs[] = "logout_dialog_duration_ms"; 2350const char kPinnedLauncherApps[] = "pinned_launcher_apps"; 2351// Boolean value indicating whether to show a logout button in the ash tray. 2352const char kShowLogoutButtonInTray[] = "show_logout_button_in_tray"; 2353#endif 2354 2355#if defined(USE_AURA) 2356// Tuning settings for gestures. 2357const char kFlingVelocityCap[] = "gesture.fling_velocity_cap"; 2358const char kLongPressTimeInSeconds[] = 2359 "gesture.long_press_time_in_seconds"; 2360const char kMaxDistanceBetweenTapsForDoubleTap[] = 2361 "gesture.max_distance_between_taps_for_double_tap"; 2362const char kMaxDistanceForTwoFingerTapInPixels[] = 2363 "gesture.max_distance_for_two_finger_tap_in_pixels"; 2364const char kMaxSecondsBetweenDoubleClick[] = 2365 "gesture.max_seconds_between_double_click"; 2366const char kMaxSeparationForGestureTouchesInPixels[] = 2367 "gesture.max_separation_for_gesture_touches_in_pixels"; 2368const char kMaxSwipeDeviationRatio[] = 2369 "gesture.max_swipe_deviation_ratio"; 2370const char kMaxTouchDownDurationInSecondsForClick[] = 2371 "gesture.max_touch_down_duration_in_seconds_for_click"; 2372const char kMaxTouchMoveInPixelsForClick[] = 2373 "gesture.max_touch_move_in_pixels_for_click"; 2374const char kMinDistanceForPinchScrollInPixels[] = 2375 "gesture.min_distance_for_pinch_scroll_in_pixels"; 2376const char kMinFlickSpeedSquared[] = 2377 "gesture.min_flick_speed_squared"; 2378const char kMinPinchUpdateDistanceInPixels[] = 2379 "gesture.min_pinch_update_distance_in_pixels"; 2380const char kMinRailBreakVelocity[] = 2381 "gesture.min_rail_break_velocity"; 2382const char kMinScrollDeltaSquared[] = 2383 "gesture.min_scroll_delta_squared"; 2384const char kMinSwipeSpeed[] = 2385 "gesture.min_swipe_speed"; 2386const char kMinTouchDownDurationInSecondsForClick[] = 2387 "gesture.min_touch_down_duration_in_seconds_for_click"; 2388const char kPointsBufferedForVelocity[] = 2389 "gesture.points_buffered_for_velocity"; 2390const char kRailBreakProportion[] = 2391 "gesture.rail_break_proportion"; 2392const char kRailStartProportion[] = 2393 "gesture.rail_start_proportion"; 2394const char kScrollPredictionSeconds[] = 2395 "gesture.scroll_prediction_seconds"; 2396const char kSemiLongPressTimeInSeconds[] = 2397 "gesture.semi_long_press_time_in_seconds"; 2398const char kShowPressDelayInMS[] = 2399 "gesture.show_press_delay_in_ms"; 2400const char kTabScrubActivationDelayInMS[] = 2401 "gesture.tab_scrub_activation_delay_in_ms"; 2402const char kFlingAccelerationCurveCoefficient0[] = 2403 "gesture.fling_acceleration_curve_coefficient_0"; 2404const char kFlingAccelerationCurveCoefficient1[] = 2405 "gesture.fling_acceleration_curve_coefficient_1"; 2406const char kFlingAccelerationCurveCoefficient2[] = 2407 "gesture.fling_acceleration_curve_coefficient_2"; 2408const char kFlingAccelerationCurveCoefficient3[] = 2409 "gesture.fling_acceleration_curve_coefficient_3"; 2410const char kFlingCurveTouchpadAlpha[] = "flingcurve.touchpad_alpha"; 2411const char kFlingCurveTouchpadBeta[] = "flingcurve.touchpad_beta"; 2412const char kFlingCurveTouchpadGamma[] = "flingcurve.touchpad_gamma"; 2413const char kFlingCurveTouchscreenAlpha[] = "flingcurve.touchscreen_alpha"; 2414const char kFlingCurveTouchscreenBeta[] = "flingcurve.touchscreen_beta"; 2415const char kFlingCurveTouchscreenGamma[] = "flingcurve.touchscreen_gamma"; 2416const char kFlingMaxCancelToDownTimeInMs[] = 2417 "gesture.fling_max_cancel_to_down_time_in_ms"; 2418const char kFlingMaxTapGapTimeInMs[] = 2419 "gesture.fling_max_tap_gap_time_in_ms"; 2420const char kOverscrollHorizontalThresholdComplete[] = 2421 "overscroll.horizontal_threshold_complete"; 2422const char kOverscrollVerticalThresholdComplete[] = 2423 "overscroll.vertical_threshold_complete"; 2424const char kOverscrollMinimumThresholdStart[] = 2425 "overscroll.minimum_threshold_start"; 2426const char kOverscrollMinimumThresholdStartTouchpad[] = 2427 "overscroll.minimum_threshold_start_touchpad"; 2428const char kOverscrollVerticalThresholdStart[] = 2429 "overscroll.vertical_threshold_start"; 2430const char kOverscrollHorizontalResistThreshold[] = 2431 "overscroll.horizontal_resist_threshold"; 2432const char kOverscrollVerticalResistThreshold[] = 2433 "overscroll.vertical_resist_threshold"; 2434#endif 2435 2436// Counts how many more times the 'profile on a network share' warning should be 2437// shown to the user before the next silence period. 2438const char kNetworkProfileWarningsLeft[] = "network_profile.warnings_left"; 2439// Tracks the time of the last shown warning. Used to reset 2440// |network_profile.warnings_left| after a silence period. 2441const char kNetworkProfileLastWarningTime[] = 2442 "network_profile.last_warning_time"; 2443 2444#if defined(OS_CHROMEOS) 2445// The RLZ brand code, if enabled. 2446const char kRLZBrand[] = "rlz.brand"; 2447// Whether RLZ pings are disabled. 2448const char kRLZDisabled[] = "rlz.disabled"; 2449#endif 2450 2451#if defined(ENABLE_APP_LIST) 2452// The directory in user data dir that contains the profile to be used with the 2453// app launcher. 2454const char kAppListProfile[] = "app_list.profile"; 2455 2456// The number of times the app launcher was launched since last ping and 2457// the time of the last ping. 2458const char kAppListLaunchCount[] = "app_list.launch_count"; 2459const char kLastAppListLaunchPing[] = "app_list.last_launch_ping"; 2460 2461// The number of times the an app was launched from the app launcher since last 2462// ping and the time of the last ping. 2463const char kAppListAppLaunchCount[] = "app_list.app_launch_count"; 2464const char kLastAppListAppLaunchPing[] = "app_list.last_app_launch_ping"; 2465 2466// A boolean that tracks whether the user has ever enabled the app launcher. 2467const char kAppLauncherHasBeenEnabled[] = 2468 "apps.app_launcher.has_been_enabled"; 2469 2470// An enum indicating how the app launcher was enabled. E.g., via webstore, app 2471// install, command line, etc. For UMA. 2472const char kAppListEnableMethod[] = "app_list.how_enabled"; 2473 2474// The time that the app launcher was enabled. Cleared when UMA is recorded. 2475const char kAppListEnableTime[] = "app_list.when_enabled"; 2476 2477// TODO(calamity): remove this pref since app launcher will always be 2478// installed. 2479// Local state caching knowledge of whether the app launcher is installed. 2480const char kAppLauncherIsEnabled[] = 2481 "apps.app_launcher.should_show_apps_page"; 2482 2483// Integer representing the version of the app launcher shortcut installed on 2484// the system. Incremented, e.g., when embedded icons change. 2485const char kAppLauncherShortcutVersion[] = "apps.app_launcher.shortcut_version"; 2486 2487// A boolean identifying if we should show the app launcher promo or not. 2488const char kShowAppLauncherPromo[] = "app_launcher.show_promo"; 2489#endif 2490 2491// If set, the user requested to launch the app with this extension id while 2492// in Metro mode, and then relaunched to Desktop mode to start it. 2493const char kAppLaunchForMetroRestart[] = "apps.app_launch_for_metro_restart"; 2494 2495// Set with |kAppLaunchForMetroRestart|, the profile whose loading triggers 2496// launch of the specified app when restarting Chrome in desktop mode. 2497const char kAppLaunchForMetroRestartProfile[] = 2498 "apps.app_launch_for_metro_restart_profile"; 2499 2500// A boolean that indicates whether app shortcuts have been created. 2501// On a transition from false to true, shortcuts are created for all apps. 2502const char kAppShortcutsHaveBeenCreated[] = "apps.shortcuts_have_been_created"; 2503 2504// How often the bubble has been shown. 2505extern const char kModuleConflictBubbleShown[] = "module_conflict.bubble_shown"; 2506 2507// A string pref for storing the salt used to compute the pepper device ID. 2508const char kDRMSalt[] = "settings.privacy.drm_salt"; 2509// A boolean pref that enables the (private) pepper GetDeviceID() call and 2510// enables the use of remote attestation for content protection. 2511const char kEnableDRM[] = "settings.privacy.drm_enabled"; 2512 2513// An integer per-profile pref that signals if the watchdog extension is 2514// installed and active. We need to know if the watchdog extension active for 2515// ActivityLog initialization before the extension system is initialized. 2516const char kWatchdogExtensionActive[] = 2517 "profile.extensions.activity_log.num_consumers_active"; 2518// The old version was a bool. 2519const char kWatchdogExtensionActiveOld[] = 2520 "profile.extensions.activity_log.watchdog_extension_active"; 2521 2522// A dictionary pref which maps profile names to dictionary values which hold 2523// hashes of profile prefs that we track to detect changes that happen outside 2524// of Chrome. 2525const char kProfilePreferenceHashes[] = "profile.preference_hashes"; 2526 2527// Stores a pair of local time and corresponding network time to bootstrap 2528// network time tracker when browser starts. 2529const char kNetworkTimeMapping[] = "profile.network_time_mapping"; 2530 2531#if defined(OS_ANDROID) 2532// A list of partner bookmark rename/remove mappings. 2533// Each list item is a dictionary containing a "url", a "provider_title" and 2534// "mapped_title" entries, detailing the bookmark target URL (if any), the title 2535// given by the PartnerBookmarksProvider and either the user-visible renamed 2536// title or an empty string if the bookmark node was removed. 2537const char kPartnerBookmarkMappings[] = "partnerbookmarks.mappings"; 2538#endif 2539 2540// Whether DNS Quick Check is disabled in proxy resolution. 2541const char kQuickCheckEnabled[] = "proxy.quick_check_enabled"; 2542 2543} // namespace prefs 2544