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