blob: 3253e2759a6426ed6a4a005a5870b73a66f2113f [file] [log] [blame]
Avi Drissman4a8573c2022-09-09 19:35:541// Copyright 2012 The Chromium Authors
license.botbf09a502008-08-24 00:55:552// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
initial.commit09911bf2008-07-26 23:55:294
[email protected]37858e52010-08-26 00:22:025#include "chrome/browser/prefs/browser_prefs.h"
initial.commit09911bf2008-07-26 23:55:296
[email protected]c5d4b1842014-06-20 21:19:507#include <string>
John Palmer1e70a002023-08-15 02:20:348#include <string_view>
[email protected]c5d4b1842014-06-20 21:19:509
conniekxu4d14f65c2023-03-28 20:56:3610#include "ash/constants/ash_constants.h"
Artsiom Mitrokhincf332e22023-03-07 16:27:4711#include "base/time/time.h"
primiano6221e572015-01-28 12:14:3412#include "base/trace_event/trace_event.h"
Nico Webereaa08412019-08-14 01:24:3713#include "build/branding_buildflags.h"
avib896c712015-12-26 02:10:4314#include "build/build_config.h"
Maksim Sisovb2e86e272021-09-28 05:24:4915#include "build/chromecast_buildflags.h"
Yuta Hijikata31a359c2020-11-27 07:50:2616#include "build/chromeos_buildflags.h"
[email protected]1a47d7e2010-10-15 00:37:2417#include "chrome/browser/about_flags.h"
Dominic Mazzoni21fb0282019-02-13 18:32:4718#include "chrome/browser/accessibility/accessibility_labels_service.h"
James Wallace-Lee25a1b05e2018-07-24 00:06:3119#include "chrome/browser/accessibility/accessibility_ui.h"
[email protected]7a25d872012-05-21 19:14:1320#include "chrome/browser/accessibility/invert_bubble_prefs.h"
Jiaming Chengd3d84762023-07-20 20:47:3621#include "chrome/browser/ash/notifications/update_notification_showing_controller.h"
[email protected]b1de2c72013-02-06 02:45:4722#include "chrome/browser/browser_process_impl.h"
[email protected]bca18382012-06-25 19:15:2323#include "chrome/browser/chrome_content_browser_client.h"
Simon Hangl8ebaf732023-08-25 14:59:4724#include "chrome/browser/chromeos/enterprise/cloud_storage/policy_utils.h"
Andrew Rayskiy0ec947f2023-08-23 09:19:5425#include "chrome/browser/chromeos/upload_office_to_cloud/upload_office_to_cloud.h"
sorinebcfc8dd2016-08-12 21:57:1826#include "chrome/browser/component_updater/component_updater_prefs.h"
[email protected]70019152012-12-19 11:44:1927#include "chrome/browser/devtools/devtools_window.h"
[email protected]e5dc4222010-08-30 22:16:3228#include "chrome/browser/download/download_prefs.h"
dmurph93fa43b2017-02-07 23:45:1629#include "chrome/browser/engagement/important_sites_util.h"
Dominique Fauteux-Chapleau556bb84f2020-04-20 22:06:2930#include "chrome/browser/enterprise/connectors/connectors_prefs.h"
Og Astorga3089fd82021-09-21 00:02:3731#include "chrome/browser/enterprise/reporting/prefs.h"
Dominique Fauteux-Chapleau0e897db02021-04-19 18:42:2232#include "chrome/browser/enterprise/util/managed_browser_utils.h"
[email protected]ed2b1002011-05-25 14:12:1033#include "chrome/browser/external_protocol/external_protocol_handler.h"
[email protected]1b3588d2012-10-10 21:17:2534#include "chrome/browser/first_run/first_run.h"
[email protected]e6933d2a2013-03-12 22:32:2135#include "chrome/browser/gpu/gpu_mode_manager.h"
Avi Drissmand30927342018-05-22 15:04:2736#include "chrome/browser/lifetime/browser_shutdown.h"
rajendrantff2361da2020-12-16 09:18:2737#include "chrome/browser/login_detection/login_detection_prefs.h"
Becca Hughes6354b6b2017-08-31 22:01:5538#include "chrome/browser/media/media_engagement_service.h"
John Rummelle5621c12017-09-05 23:52:1039#include "chrome/browser/media/media_storage_id_salt.h"
George Benz13da3df02022-01-14 00:03:5240#include "chrome/browser/media/router/discovery/access_code/access_code_cast_feature.h"
Derek Cheng23a01402018-07-24 13:38:1441#include "chrome/browser/media/router/media_router_feature.h"
Simon Hangl2d73e742023-06-16 16:52:4742#include "chrome/browser/media/webrtc/capture_policy_utils.h"
mcasasa2023ab2016-09-08 01:06:3643#include "chrome/browser/media/webrtc/media_capture_devices_dispatcher.h"
Evan Stade32d635a2020-04-03 18:51:2544#include "chrome/browser/media/webrtc/permission_bubble_media_access_handler.h"
Sebastien Marchand5a63997a2019-09-27 19:15:3445#include "chrome/browser/memory/enterprise_memory_limit_pref_observer.h"
[email protected]4a55a712014-06-08 16:50:3446#include "chrome/browser/metrics/chrome_metrics_service_client.h"
Eric Secklera5c24e12018-11-28 16:09:2047#include "chrome/browser/net/net_error_tab_helper.h"
Matt Menkecfef87d2017-08-03 13:03:0648#include "chrome/browser/net/profile_network_context_service.h"
Ben Schwartz135746c2020-05-14 04:37:0349#include "chrome/browser/net/secure_dns_util.h"
Matt Menke4dfb375c2018-06-13 18:06:3150#include "chrome/browser/net/system_network_context_manager.h"
Tom Anderson1ef51d032020-02-11 01:05:0851#include "chrome/browser/notifications/notification_display_service_impl.h"
peterc4007912015-07-31 21:13:3752#include "chrome/browser/notifications/notifier_state_tracker.h"
Sharon Yangc6706902018-07-16 13:06:1953#include "chrome/browser/notifications/platform_notification_service_impl.h"
Balazs Engedy715b0ec2019-12-04 15:11:4554#include "chrome/browser/permissions/quiet_notification_permission_ui_state.h"
[email protected]24f95242014-02-10 17:55:2855#include "chrome/browser/prefs/chrome_pref_service_factory.h"
[email protected]4e94ab32011-08-05 05:28:2756#include "chrome/browser/prefs/incognito_mode_prefs.h"
[email protected]37858e52010-08-26 00:22:0257#include "chrome/browser/prefs/session_startup_pref.h"
Max Curran14dd7872023-03-20 19:57:3658#include "chrome/browser/preloading/prefetch/prefetch_service/prefetch_origin_decider.h"
Sreeja Kamishettyb8e18ae2022-07-22 03:12:4359#include "chrome/browser/preloading/prefetch/search_prefetch/search_prefetch_service.h"
Hiroki Nakagawa0977bd02023-09-08 15:33:1160#include "chrome/browser/preloading/preloading_prefs.h"
Nikita Podguzov26222d12019-12-04 11:44:3161#include "chrome/browser/printing/print_preview_sticky_settings.h"
[email protected]1bee6ed2012-03-14 06:46:3662#include "chrome/browser/profiles/chrome_version_service.h"
[email protected]ee937fe2013-02-27 00:41:5963#include "chrome/browser/profiles/profile.h"
Thomas Tanglc67ace42019-06-07 19:31:5064#include "chrome/browser/profiles/profile_attributes_entry.h"
Alex Ilinbb08a0d2021-07-08 09:37:2465#include "chrome/browser/profiles/profile_attributes_storage.h"
[email protected]8ecad5e2010-12-02 21:18:3366#include "chrome/browser/profiles/profile_impl.h"
[email protected]de71ae992013-07-18 03:30:3867#include "chrome/browser/profiles/profiles_state.h"
johnmecf2da0c2015-10-28 19:42:1268#include "chrome/browser/push_messaging/push_messaging_app_identifier.h"
Illia Klimov4b72378ed2022-07-18 13:46:5769#include "chrome/browser/push_messaging/push_messaging_service_impl.h"
gab3ca4a492017-03-02 00:19:4170#include "chrome/browser/rlz/chrome_rlz_tracker_delegate.h"
[email protected]a7b8e43d2013-03-18 18:52:4371#include "chrome/browser/search/search.h"
Himanshu Jajubcf3b9292019-06-07 12:54:0772#include "chrome/browser/sharing/sharing_sync_preference.h"
Kristi Parkd0f72412021-07-02 01:09:0373#include "chrome/browser/sharing_hub/sharing_hub_features.h"
Ryan Sleevi4689ad32018-04-16 19:09:0574#include "chrome/browser/ssl/ssl_config_service_manager.h"
avi24d693f2016-08-06 18:03:5275#include "chrome/browser/task_manager/task_manager_interface.h"
Patricia Alfonsoc6f40b5c2023-09-14 21:02:4376#include "chrome/browser/tpcd/experiment/tpcd_pref_names.h"
oysteine386fc9e2015-06-07 18:45:4177#include "chrome/browser/tracing/chrome_tracing_delegate.h"
[email protected]2cd4fde2012-06-26 03:10:2678#include "chrome/browser/ui/browser_ui_prefs.h"
Robert Liao741be302019-07-19 23:24:4279#include "chrome/browser/ui/hats/hats_service.h"
[email protected]297fb7c22012-06-26 12:37:4980#include "chrome/browser/ui/network_profile_bubble.h"
[email protected]9ce7cb42011-12-07 18:53:0781#include "chrome/browser/ui/prefs/prefs_tab_helper.h"
[email protected]62f77772011-02-23 19:45:4282#include "chrome/browser/ui/search_engines/keyword_editor_controller.h"
Victor Hugo Vianna Silva3452787c2022-07-28 23:25:3083#include "chrome/browser/ui/send_tab_to_self/send_tab_to_self_bubble.h"
Caroline Risingf4b49092023-03-23 02:28:2684#include "chrome/browser/ui/side_panel/side_panel_prefs.h"
[email protected]b56e2e32012-05-11 21:18:0485#include "chrome/browser/ui/tabs/pinned_tab_codec.h"
Elaine Chien07f137d2021-01-14 02:57:2186#include "chrome/browser/ui/toolbar/chrome_labs_prefs.h"
Livvie Lin9141d0f132020-03-23 22:47:0487#include "chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.h"
dljames4b665b22023-09-21 19:35:0888#include "chrome/browser/ui/toolbar/toolbar_pref_names.h"
Dana Fried68baeb002023-09-18 20:25:0489#include "chrome/browser/ui/user_education/browser_feature_promo_storage_service.h"
Emily Shack670f745c2023-03-03 19:47:3090#include "chrome/browser/ui/webui/bookmarks/bookmark_prefs.h"
dpapad2be5b61c62020-12-08 11:58:4991#include "chrome/browser/ui/webui/flags/flags_ui.h"
[email protected]7c5c6f3a2011-04-28 19:56:4992#include "chrome/browser/ui/webui/ntp/new_tab_ui.h"
Jayee07bb468c2023-06-01 18:25:3193#include "chrome/browser/ui/webui/policy/policy_ui.h"
Nicolas Ouellet-Payeur4dbdf1e52018-08-06 21:51:0294#include "chrome/browser/ui/webui/print_preview/policy_settings.h"
Xing Liu7252b8d2020-01-22 22:12:4795#include "chrome/browser/updates/announcement_notification/announcement_notification_service.h"
Martin Kreichgauer0e1b15e2018-06-20 02:59:5096#include "chrome/browser/webauthn/chrome_authenticator_request_delegate.h"
Martin Kreichgauerd7aa4f92022-02-22 20:46:2197#include "chrome/browser/webauthn/webauthn_pref_names.h"
Scott Violet6200d332018-02-23 21:29:2398#include "chrome/common/buildflags.h"
[email protected]f87919d72011-02-02 18:46:1699#include "chrome/common/pref_names.h"
Ayu Ishiifbb1fad2020-06-22 20:15:07100#include "chrome/common/secure_origin_allowlist.h"
Moe Ahmadi173b0a2b2018-08-03 17:35:51101#include "components/autofill/core/common/autofill_prefs.h"
Clark DuVall8236b6a82020-05-28 22:54:32102#include "components/blocked_content/safe_browsing_triggered_popup_blocker.h"
ioanapa8bfbc72016-09-07 16:09:05103#include "components/browsing_data/core/pref_names.h"
Doug Turner9e79cf0c2018-04-05 21:32:30104#include "components/certificate_transparency/pref_names.h"
Matt Jones704e1a62022-09-20 16:28:24105#include "components/commerce/core/pref_names.h"
mukai8eaec822014-10-25 17:53:16106#include "components/content_settings/core/browser/host_content_settings_map.h"
Andrew Williams0e136592023-08-09 15:13:34107#include "components/content_settings/core/common/pref_names.h"
Javier Fernández García-Boente7966a892021-12-09 12:28:23108#include "components/custom_handlers/protocol_handler_registry.h"
[email protected]6a5b0712014-07-16 00:30:10109#include "components/dom_distiller/core/distilled_page_prefs.h"
Katie D1ca4328b2020-02-19 18:08:47110#include "components/dom_distiller/core/dom_distiller_features.h"
111#include "components/dom_distiller/core/pref_names.h"
Alex Chen9e56f7352023-01-20 22:56:15112#include "components/domain_reliability/domain_reliability_prefs.h"
Mugdha Lakhanida851fd2021-03-16 18:21:02113#include "components/embedder_support/origin_trials/origin_trial_prefs.h"
hmaree31cadf52022-11-09 22:32:55114#include "components/enterprise/browser/identifiers/identifiers_prefs.h"
Dominique Fauteux-Chapleaub6be8ae2023-09-26 13:48:40115#include "components/enterprise/buildflags/buildflags.h"
sdefresne8593e6432015-12-01 12:38:08116#include "components/flags_ui/pref_service_flags_storage.h"
Moe Ahmadi656dd532021-10-06 21:59:18117#include "components/history_clusters/core/history_clusters_prefs.h"
Brandon Wyliec7a94502018-10-18 18:43:25118#include "components/image_fetcher/core/cache/image_cache.h"
Anthony Vallee-Dubois43fded9702020-06-19 16:30:38119#include "components/invalidation/impl/fcm_invalidation_service.h"
Tanja Gornak5c8b5d952018-10-12 14:39:54120#include "components/invalidation/impl/invalidator_registrar_with_memory.h"
Marc Treib8c29f0c2019-12-19 12:48:07121#include "components/invalidation/impl/per_user_topic_subscription_manager.h"
Anthony Vallee-Dubois6f993122018-09-17 16:13:28122#include "components/language/content/browser/geo_language_provider.h"
Alexandre Frechette38f4ef92019-02-25 16:31:57123#include "components/language/content/browser/ulp_language_code_locator/ulp_language_code_locator.h"
Alexandre Frechette572755b2019-02-13 22:30:20124#include "components/language/core/browser/language_prefs.h"
Duncan Mercer8062eef2022-12-28 22:28:37125#include "components/lens/buildflags.h"
Joe DeBlasio59db500b2020-08-21 00:37:35126#include "components/lookalikes/core/lookalike_url_util.h"
Guido Urdaneta9f831c22023-06-22 13:44:34127#include "components/media_device_salt/media_device_id_salt.h"
Mikel Astizf4226912020-10-19 19:10:37128#include "components/metrics/demographics/user_demographics.h"
Peter Wen45025ea2018-09-17 15:16:27129#include "components/metrics/metrics_pref_names.h"
[email protected]d0ab865b2014-06-04 19:41:34130#include "components/network_time/network_time_tracker.h"
treibbb0c5af52016-12-09 17:34:15131#include "components/ntp_tiles/most_visited_sites.h"
Scott Violet9ae82892018-03-01 18:38:12132#include "components/offline_pages/buildflags/buildflags.h"
Travis Skare27cee15c2018-07-19 14:34:13133#include "components/omnibox/browser/document_provider.h"
Moe Ahmadi1266de82020-04-10 17:19:53134#include "components/omnibox/browser/omnibox_prefs.h"
blundell2102f7c2015-07-09 10:00:53135#include "components/omnibox/browser/zero_suggest_provider.h"
Sophie Changf2da5f02021-01-07 19:38:47136#include "components/optimization_guide/core/optimization_guide_prefs.h"
[email protected]1f730bd2014-02-28 15:11:32137#include "components/password_manager/core/browser/password_manager.h"
anthonyvd6a43b932017-05-11 18:39:27138#include "components/payments/core/payment_prefs.h"
Anthony Vallee-Duboiscee55b12022-03-24 22:54:02139#include "components/performance_manager/public/user_tuning/prefs.h"
Aisulu Rakhmetullinaac4afcb62023-07-05 18:10:04140#include "components/permissions/pref_names.h"
Kirubel Aklilu7abc28662023-09-14 17:14:40141#include "components/plus_addresses/plus_address_prefs.h"
brettw03e61962016-03-15 06:27:04142#include "components/policy/core/browser/browser_policy_connector.h"
Aaron Colwellb4226222020-07-25 16:11:36143#include "components/policy/core/browser/url_blocklist_manager.h"
Jayeeb93166c2023-07-17 14:04:49144#include "components/policy/core/common/local_test_policy_provider.h"
Yann Dago9c1e19512022-02-28 22:27:31145#include "components/policy/core/common/management/management_service.h"
David Bienvenu554a2592020-02-13 20:20:54146#include "components/policy/core/common/policy_pref_names.h"
brettw03e61962016-03-15 06:27:04147#include "components/policy/core/common/policy_statistics_collector.h"
[email protected]f0c8c4992014-05-15 17:37:26148#include "components/pref_registry/pref_registry_syncable.h"
Martin Šrámek5921f6312020-03-25 09:31:47149#include "components/prefs/pref_registry.h"
brettwb1fc1b82016-02-02 00:19:08150#include "components/prefs/pref_registry_simple.h"
151#include "components/prefs/pref_service.h"
Sean Harrison4685ab72020-12-08 18:26:22152#include "components/privacy_sandbox/privacy_sandbox_prefs.h"
abhishek.a2171c612852015-08-31 10:48:19153#include "components/proxy_config/pref_proxy_config_tracker_impl.h"
Amanda Velasco Gallardo25f07362022-01-28 02:08:47154#include "components/safe_browsing/content/common/file_type_policies_prefs.h"
Ali Jumafb3dc1f2020-01-07 17:33:47155#include "components/safe_browsing/core/common/safe_browsing_prefs.h"
[email protected]0915b352014-06-25 19:58:14156#include "components/search_engines/template_url_prepopulate_data.h"
Carlos IL06e6c8c2020-07-28 00:25:19157#include "components/security_interstitials/content/insecure_form_blocking_page.h"
Colin Blundell7657b402020-02-25 09:46:50158#include "components/security_interstitials/content/stateful_ssl_host_state_delegate.h"
Anastasia Helfinstein33187fd2023-01-27 03:06:07159#include "components/segmentation_platform/embedder/default_model/device_switcher_result_dispatcher.h"
Shakti Sahu93bfba22021-06-17 18:05:21160#include "components/segmentation_platform/public/segmentation_platform_service.h"
Ramin Halavati52a9a292022-04-28 04:27:49161#include "components/services/screen_ai/buildflags/buildflags.h"
Ayu Ishii73a353d2022-07-07 21:56:42162#include "components/services/storage/public/cpp/storage_prefs.h"
Mikel Astizf61f4ba02018-06-01 10:50:19163#include "components/sessions/core/session_id_generator.h"
David Rogerfbfc9382021-07-12 13:58:45164#include "components/signin/public/base/signin_buildflags.h"
David Roger877bdc72022-10-19 09:38:51165#include "components/signin/public/base/signin_pref_names.h"
Henrique Ferreiro94eb46f2019-07-03 14:38:56166#include "components/signin/public/identity_manager/identity_manager.h"
Evan Stade89158192021-01-27 18:45:23167#include "components/site_engagement/content/site_engagement_service.h"
Eric Robinson49f19b62018-09-17 21:28:15168#include "components/subresource_filter/content/browser/ruleset_service.h"
[email protected]1099454d2023-01-31 14:35:11169#include "components/supervised_user/core/common/buildflags.h"
Mikel Astiz91c345c2023-05-16 14:18:56170#include "components/sync/service/glue/sync_transport_data_prefs.h"
Marc Treibd6c8540e2023-07-04 19:18:49171#include "components/sync/service/sync_prefs.h"
Jeffrey Cohen053be24d2019-07-23 23:44:05172#include "components/sync_device_info/device_info_prefs.h"
maxbogueea16ff412016-10-28 16:35:29173#include "components/sync_preferences/pref_service_syncable.h"
Mikel Astiz0889b2be2018-09-25 16:20:41174#include "components/sync_sessions/session_sync_prefs.h"
Oksana Zhuravlova58c85282022-06-14 20:24:28175#include "components/tracing/common/pref_names.h"
[email protected]81135072014-02-14 14:11:02176#include "components/translate/core/browser/translate_prefs.h"
wafflesd2d9a332016-04-09 01:59:57177#include "components/update_client/update_client.h"
blundell0300cdea2015-09-03 12:47:44178#include "components/variations/service/variations_service.h"
[email protected]f3b1a082011-11-18 00:34:30179#include "content/public/browser/render_process_host.h"
Scott Violetc8240b02018-03-08 22:03:59180#include "extensions/buildflags/buildflags.h"
[email protected]ad66db12014-07-10 12:43:47181#include "net/http/http_server_properties_manager.h"
Andy Phan99ccfb42022-11-29 18:57:07182#include "pdf/buildflags.h"
Scott Violet02e38b92018-03-27 23:42:14183#include "ppapi/buildflags/buildflags.h"
Scott Violet318a55f2018-03-30 19:08:19184#include "printing/buildflags/buildflags.h"
Scott Violeta5f7ba12018-04-02 22:03:40185#include "rlz/buildflags/buildflags.h"
Jan Keitel98b2cc42022-09-20 05:38:39186#include "third_party/abseil-cpp/absl/types/optional.h"
[email protected]a814d8632009-01-31 20:18:52187
Denis Kuznetsov32099f32017-12-15 14:04:57188#if BUILDFLAG(ENABLE_BACKGROUND_MODE)
thestige4155842014-10-20 18:58:02189#include "chrome/browser/background/background_mode_manager.h"
190#endif
191
brettw00899e62016-11-12 02:10:17192#if BUILDFLAG(ENABLE_EXTENSIONS)
je_julie.kim7fbb5a1a2015-02-09 17:26:05193#include "chrome/browser/accessibility/animation_policy_prefs.h"
Dominick Ng6ff51052018-07-06 05:30:20194#include "chrome/browser/apps/platform_apps/shortcut_manager.h"
[email protected]17510602014-06-05 11:02:28195#include "chrome/browser/extensions/activity_log/activity_log.h"
196#include "chrome/browser/extensions/api/commands/command_service.h"
[email protected]17510602014-06-05 11:02:28197#include "chrome/browser/extensions/api/tabs/tabs_api.h"
[email protected]d5a74be2014-08-08 01:01:27198#include "chrome/browser/extensions/extension_web_ui.h"
Daniel Murphy3657906d2021-04-13 20:33:12199#include "chrome/browser/extensions/preinstalled_apps.h"
Devlin Cronina997c8e2021-03-18 00:33:18200#include "chrome/browser/ui/extensions/settings_api_bubble_helpers.h"
Devlin Cronin71f0f532018-04-26 16:35:06201#include "chrome/browser/ui/webui/extensions/extensions_ui.h"
tbarzicfa3c7ef62017-04-17 23:12:02202#include "extensions/browser/api/audio/audio_api.h"
afakhry2bd481832016-06-16 16:17:24203#include "extensions/browser/api/runtime/runtime_api.h"
[email protected]d5a74be2014-08-08 01:01:27204#include "extensions/browser/extension_prefs.h"
Emilia Paz363fa0062022-01-15 05:12:03205#include "extensions/browser/permissions_manager.h"
Yann Dago2cbd7cb2022-06-27 18:18:29206#include "extensions/browser/pref_names.h"
Yuta Hijikata31a359c2020-11-27 07:50:26207#if BUILDFLAG(IS_CHROMEOS_ASH)
Yuta Hijikata54df9132021-10-09 01:27:12208#include "chrome/browser/ash/crosapi/browser_data_migrator.h"
Henrique Ferreiro7967dce2021-09-23 11:37:47209#include "chrome/browser/ash/device_name/device_name_store.h"
Henrique Ferreirod67f0472022-11-05 00:40:09210#include "chrome/browser/ash/extensions/extensions_permissions_tracker.h"
Yeunjoo Choi5e8463292021-04-28 01:19:42211#include "chrome/browser/ash/kerberos/kerberos_credentials_manager.h"
Henrique Ferreirob3c117562021-02-24 20:12:45212#include "chrome/browser/ash/login/easy_unlock/easy_unlock_service.h"
Henrique Ferreirod57c4962021-09-29 07:26:59213#include "chrome/browser/ash/net/system_proxy_manager.h"
Henrique Ferreiro4ebaaa32021-10-13 16:59:35214#include "chrome/browser/ash/platform_keys/key_permissions/key_permissions_manager_impl.h"
Anatoliy Potapchuka460bc12021-11-05 19:23:10215#include "chrome/browser/ash/policy/networking/euicc_status_uploader.h"
Ashutosh Singhal96d051012023-07-26 11:00:49216#include "chrome/browser/ash/policy/remote_commands/crd_admin_session_controller.h"
Danila Kuzmin90a42f02021-12-08 14:00:16217#include "chrome/browser/ash/settings/hardware_data_usage_controller.h"
Yeunjoo Choi5097e9c2021-02-25 08:46:52218#include "chrome/browser/ash/settings/stats_reporting_controller.h"
Xiaochu Liu48ab5932018-05-11 03:44:04219#include "chrome/browser/component_updater/metadata_table_chromeos.h"
Joel Hockeya9ccf0e2022-05-27 22:11:19220#include "chrome/browser/extensions/api/shared_storage/shared_storage_private_api.h"
yilkal95d9f882021-10-18 21:59:00221#include "chrome/browser/ui/ash/projector/projector_app_client_impl.h"
Yeunjoo Choi38cea422022-10-18 06:19:17222#include "chrome/browser/ui/webui/ash/edu_coexistence/edu_coexistence_login_handler.h"
Yeunjoo Choiebbdaa62022-10-20 01:05:31223#include "chrome/browser/ui/webui/signin/ash/inline_login_handler_impl.h"
Yuta Hijikata31a359c2020-11-27 07:50:26224#endif // BUILDFLAG(IS_CHROMEOS_ASH)
brettw00899e62016-11-12 02:10:17225#endif // BUILDFLAG(ENABLE_EXTENSIONS)
[email protected]17510602014-06-05 11:02:28226
Jack Yammine96729f72023-09-25 15:47:28227// `search_engine_choice_service.h` includes `chrome/browser/ui/browser_list.h`
228// that can't be included on android.
229#if BUILDFLAG(ENABLE_SEARCH_ENGINE_CHOICE)
230#include "chrome/browser/search_engine_choice/search_engine_choice_service.h"
231#endif
232
Andy Phan99ccfb42022-11-29 18:57:07233#if BUILDFLAG(ENABLE_PDF)
234#include "chrome/browser/pdf/pdf_pref_names.h"
235#endif // BUILDFLAG(ENABLE_PDF)
236
Ramin Halavati52a9a292022-04-28 04:27:49237#if BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
Ramin Halavatic21eb8a2023-05-23 07:32:31238#include "chrome/browser/screen_ai/pref_names.h"
Ramin Halavati52a9a292022-04-28 04:27:49239#endif
240
Lei Zhang6cb9b842019-12-16 20:29:12241#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
[email protected]503e2922023-06-23 13:38:37242#include "components/supervised_user/core/browser/child_account_service.h"
[email protected]1e50f232023-05-12 13:57:34243#include "components/supervised_user/core/browser/supervised_user_service.h"
Bettina Deaf3dac202017-09-16 20:53:22244#endif
245
Jian Lic9a227c2022-02-28 22:55:44246#include "components/feed/buildflags.h"
247#include "components/feed/core/common/pref_names.h"
248#include "components/feed/core/shared_prefs/pref_names.h"
249
Xiaohan Wangae7f9182022-01-16 00:37:52250#if BUILDFLAG(IS_ANDROID)
Amanda Lin Dietz8864d302023-06-26 18:36:39251#include "chrome/browser/accessibility/accessibility_prefs/android/accessibility_prefs_controller.h"
zpengdb4a58e2017-01-10 17:40:32252#include "chrome/browser/android/bookmarks/partner_bookmarks_shim.h"
zpengdb4a58e2017-01-10 17:40:32253#include "chrome/browser/android/ntp/recent_tabs_page_prefs.h"
Kenichi Ishibashi35ac7132017-12-08 03:44:30254#include "chrome/browser/android/oom_intervention/oom_intervention_decider.h"
mlliuee3a405c2016-10-28 22:34:52255#include "chrome/browser/android/preferences/browser_prefs_android.h"
Jan Keitel98b2cc42022-09-20 05:38:39256#include "chrome/browser/android/preferences/shared_preferences_migrator_android.h"
Patrick Noland87d9f842019-01-16 03:52:02257#include "chrome/browser/android/usage_stats/usage_stats_bridge.h"
Sky Maliced8eb4302020-08-03 05:46:44258#include "chrome/browser/first_run/android/first_run_prefs.h"
Yu Su4d459862021-04-15 04:19:54259#include "chrome/browser/lens/android/lens_prefs.h"
John Rummell4703af62019-02-15 02:31:00260#include "chrome/browser/media/android/cdm/media_drm_origin_id_manager.h"
Lei Zhangdb0c0872022-03-04 04:26:59261#include "chrome/browser/notifications/notification_channels_provider_android.h"
Christopher Thompson2602fea2019-11-26 19:36:54262#include "chrome/browser/ssl/known_interception_disclosure_infobar_delegate.h"
Glen Robertson8a825ae4f2020-09-16 06:50:08263#include "components/cdm/browser/media_drm_storage_impl.h" // nogncheck crbug.com/1125897
Sebastien Lalancette374cf6a2021-06-22 17:23:52264#include "components/content_creation/notes/core/note_prefs.h"
Dan Harrington899e25232023-04-11 18:23:57265#include "components/ntp_snippets/register_prefs.h"
zpengdb4a58e2017-01-10 17:40:32266#include "components/ntp_tiles/popular_sites_impl.h"
Clark DuVall600abea2020-03-23 16:16:17267#include "components/permissions/contexts/geolocation_permission_context_android.h"
Xing Liu0327d832020-05-15 21:07:03268#include "components/query_tiles/tile_service_prefs.h"
Ella Gec7c64062023-05-02 17:16:14269#include "components/webapps/browser/android/install_prompt_prefs.h"
Xiaohan Wangae7f9182022-01-16 00:37:52270#else // BUILDFLAG(IS_ANDROID)
Yue Zhang87902392020-12-23 23:12:05271#include "chrome/browser/cart/cart_service.h"
Shakti Sahue7597fd2023-04-05 23:32:39272#include "chrome/browser/companion/core/promo_handler.h"
Anqing Zhao9595e482021-06-10 11:33:55273#include "chrome/browser/device_api/device_service_impl.h"
peter9f4490a2017-01-27 00:58:36274#include "chrome/browser/gcm/gcm_product_util.h"
Matt Reynolds1914ff6b2022-02-04 08:48:26275#include "chrome/browser/hid/hid_policy_allowed_devices.h"
Tommy Lid5b7c22b2020-10-28 01:26:51276#include "chrome/browser/intranet_redirect_detector.h"
Lei Zhang6cb9b842019-12-16 20:29:12277#include "chrome/browser/media/unified_autoplay_config.h"
Sebastien Marchande9f7b992021-02-10 03:11:08278#include "chrome/browser/metrics/tab_stats/tab_stats_tracker.h"
Josh Nohle13ea6b432020-07-21 20:46:59279#include "chrome/browser/nearby_sharing/common/nearby_share_prefs.h"
Tibor Goldschwendt83b26a02021-07-09 23:13:18280#include "chrome/browser/new_tab_page/modules/drive/drive_service.h"
Jeremy Selier730b56d32021-09-17 02:59:39281#include "chrome/browser/new_tab_page/modules/photos/photos_service.h"
Riley Tatumc48258f12022-08-18 22:13:13282#include "chrome/browser/new_tab_page/modules/recipes/recipes_service.h"
Rohit Bhatia22e544f2021-10-05 15:32:26283#include "chrome/browser/new_tab_page/modules/safe_browsing/safe_browsing_handler.h"
Tibor Goldschwendt53a0eab2021-07-29 10:40:25284#include "chrome/browser/new_tab_page/promos/promo_service.h"
Yann Dago44d6cc322022-07-13 17:46:25285#include "chrome/browser/policy/developer_tools_policy_handler.h"
Tibor Goldschwendtf3a3ce92021-08-17 00:42:16286#include "chrome/browser/search/background/ntp_custom_background_service.h"
Reilly Grantd4fb5842021-03-15 23:16:49287#include "chrome/browser/serial/serial_policy_allowed_ports.h"
thestigc91176f42014-10-28 20:16:35288#include "chrome/browser/signin/signin_promo.h"
Mei Liang74df4f82022-09-26 23:00:33289#include "chrome/browser/ui/commerce/price_tracking/shopping_list_ui_tab_helper.h"
Eduard Hez55d711f2023-07-12 12:10:07290#include "chrome/browser/ui/safety_hub/safety_hub_prefs.h"
zpengdb4a58e2017-01-10 17:40:32291#include "chrome/browser/ui/startup/startup_browser_creator.h"
Roman Arorabc876bf2023-08-03 15:25:21292#include "chrome/browser/ui/webui/cr_components/theme_color_picker/theme_color_picker_handler.h"
rbpotterbe128632019-11-22 04:50:42293#include "chrome/browser/ui/webui/history/foreign_session_handler.h"
Tibor Goldschwendt53ca78b2020-10-07 19:56:18294#include "chrome/browser/ui/webui/new_tab_page/new_tab_page_handler.h"
Tibor Goldschwendtbbdbe8f2021-05-20 19:27:39295#include "chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.h"
John Lee136759f02019-04-15 20:19:11296#include "chrome/browser/ui/webui/settings/settings_ui.h"
Mark Schillaciba4a7322022-06-29 15:08:35297#include "chrome/browser/ui/webui/side_panel/read_anything/read_anything_prefs.h"
Roman Aroracd8462c2021-08-03 01:20:33298#include "chrome/browser/ui/webui/tab_search/tab_search_prefs.h"
rbpotter73c13252021-07-16 21:29:34299#include "chrome/browser/ui/webui/whats_new/whats_new_ui.h"
Greg Thompson8bcd799b2018-08-10 09:49:33300#include "chrome/browser/upgrade_detector/upgrade_detector.h"
Peter Kvitek6567a8a3a2023-01-31 01:03:57301#include "components/headless/policy/headless_mode_prefs.h"
Abigail Klein153fa7a2021-08-26 19:50:50302#include "components/live_caption/live_caption_controller.h"
evliuc5b5a722022-10-28 00:05:49303#include "components/live_caption/live_translate_controller.h"
Lei Zhang6cb9b842019-12-16 20:29:12304#include "components/ntp_tiles/custom_links_manager_impl.h"
Florian Jacky6723cef2023-04-17 11:38:31305#include "components/permissions/permission_hats_trigger_helper.h"
Caroline Rising065085a22023-02-22 14:34:09306#include "components/user_notes/user_notes_prefs.h"
Xiaohan Wangae7f9182022-01-16 00:37:52307#endif // BUILDFLAG(IS_ANDROID)
thestigc91176f42014-10-28 20:16:35308
Nicolas MacBeth53fa8142023-06-20 15:06:09309#if !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
310#include "chrome/browser/promos/promos_utils.h"
311#endif // !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
312
Xiaohan Wangae7f9182022-01-16 00:37:52313#if BUILDFLAG(IS_CHROMEOS)
Tim Sergeant2b6bc66e2022-04-14 20:15:21314#include "chrome/browser/apps/intent_helper/supported_links_infobar_prefs_service.h"
Erik Chen643355d2022-04-22 05:44:49315#include "chrome/browser/chromeos/extensions/echo_private/echo_private_api.h"
Maria Petrisorbb5226b2022-06-02 09:10:51316#include "chrome/browser/chromeos/extensions/login_screen/login/login_api_prefs.h"
Alvin Lee99f8d9a82021-11-18 18:45:55317#include "chrome/browser/chromeos/policy/dlp/dlp_rules_manager_impl.h"
Josh Simmons29bce0e82023-08-31 05:59:50318#include "chrome/browser/chromeos/quickoffice/quickoffice_prefs.h"
Vignesh Shenvidfab2b12023-08-07 19:13:00319#include "chrome/browser/chromeos/reporting/metric_reporting_prefs.h"
Olya Kalitova39e913d52021-03-16 22:26:22320#include "chrome/browser/extensions/api/enterprise_platform_keys/enterprise_platform_keys_api.h"
Kuo-Hsin Yang40227972022-05-16 18:39:09321#include "chrome/browser/memory/oom_kills_monitor.h"
Michael Ershov5b2a7062022-01-17 14:28:45322#include "chrome/browser/policy/networking/policy_cert_service.h"
Ben Franz73537362021-11-08 11:53:40323#include "chrome/browser/policy/system_features_disable_list_policy_handler.h"
Michael Ershovd9a627e2021-11-03 13:55:27324#include "chrome/browser/ui/webui/certificates_handler.h"
anina koehlerf1e29df62022-08-10 07:22:32325#include "chromeos/ui/wm/fullscreen/pref_names.h"
Andrew Rayskiy16f8cab2022-12-15 16:28:33326#if BUILDFLAG(USE_CUPS)
Pranav Batrae71407672021-08-16 23:53:00327#include "chrome/browser/extensions/api/printing/printing_api_handler.h"
Andrew Rayskiy16f8cab2022-12-15 16:28:33328#endif // BUILDFLAG(USE_CUPS)
Xiaohan Wangae7f9182022-01-16 00:37:52329#endif // BUILDFLAG(IS_CHROMEOS)
Olya Kalitova39e913d52021-03-16 22:26:22330
Yuta Hijikata31a359c2020-11-27 07:50:26331#if BUILDFLAG(IS_CHROMEOS_ASH)
Yao Li646187a2021-11-16 01:02:11332#include "ash/components/arc/arc_prefs.h"
Henrique Ferreirof9d1cb22021-07-13 01:32:47333#include "ash/constants/ash_pref_names.h"
Eric Sumbed9fdd2023-03-15 18:06:30334#include "ash/public/cpp/ambient/ambient_prefs.h"
Xiyuan Xia5a8c4172019-05-13 16:23:48335#include "ash/public/cpp/ash_prefs.h"
Nikki Fangac3f0592023-02-14 01:31:19336#include "chrome/browser/apps/app_deduplication_service/app_deduplication_service.h"
Jeevan Shikarama73dec1a2022-09-08 05:51:52337#include "chrome/browser/apps/app_preload_service/app_preload_service.h"
Nancy Wang811fe4f92021-10-08 12:28:13338#include "chrome/browser/apps/app_service/metrics/app_platform_metrics_service.h"
Tim Sergeant1231dcc2021-05-10 14:00:57339#include "chrome/browser/apps/app_service/webapk/webapk_prefs.h"
Anastasiia N0582a902021-12-08 17:44:59340#include "chrome/browser/ash/account_manager/account_apps_availability.h"
Pranav Batra468fbe622021-06-23 01:42:36341#include "chrome/browser/ash/account_manager/account_manager_edu_coexistence_controller.h"
Yeunjoo Choife4364d2022-12-14 10:41:37342#include "chrome/browser/ash/app_list/app_list_syncable_service.h"
Yeunjoo Choi366e3462022-12-06 08:58:53343#include "chrome/browser/ash/app_list/arc/arc_app_list_prefs.h"
Henrique Ferreiro53d4dc42021-01-27 01:02:38344#include "chrome/browser/ash/app_mode/arc/arc_kiosk_app_manager.h"
345#include "chrome/browser/ash/app_mode/kiosk_app_manager.h"
346#include "chrome/browser/ash/app_mode/kiosk_cryptohome_remover.h"
347#include "chrome/browser/ash/app_mode/web_app/web_kiosk_app_manager.h"
Sammie Quon21285822021-09-20 19:48:34348#include "chrome/browser/ash/app_restore/full_restore_prefs.h"
Yeunjoo Choidf64fe692021-03-08 05:32:34349#include "chrome/browser/ash/apps/apk_web_app_service.h"
Hidehiko Abe89f9b5c92023-09-19 04:37:11350#include "chrome/browser/ash/arc/boot_phase_monitor/arc_boot_phase_monitor_bridge.h"
Henrique Ferreiro2ef82302021-03-24 12:12:25351#include "chrome/browser/ash/arc/policy/arc_policy_bridge.h"
Henrique Ferreiro717d3022021-03-24 15:43:56352#include "chrome/browser/ash/arc/session/arc_session_manager.h"
Yeunjoo Choi2c5e78c2021-04-01 10:51:52353#include "chrome/browser/ash/bluetooth/debug_logs_manager.h"
Theo Johnson-Kanudc9f96272023-01-12 05:11:39354#include "chrome/browser/ash/bluetooth/hats_bluetooth_revamp_trigger_impl.h"
Pranav Batra468fbe622021-06-23 01:42:36355#include "chrome/browser/ash/borealis/borealis_prefs.h"
Fergus Dall54a6a432022-11-18 17:35:29356#include "chrome/browser/ash/bruschetta/bruschetta_pref_names.h"
Yeunjoo Choiebf07312021-03-24 01:48:51357#include "chrome/browser/ash/cert_provisioning/cert_provisioning_common.h"
Yeunjoo Choi8a355962021-04-13 01:22:27358#include "chrome/browser/ash/child_accounts/family_user_chrome_activity_metrics.h"
359#include "chrome/browser/ash/child_accounts/family_user_metrics_service.h"
360#include "chrome/browser/ash/child_accounts/family_user_session_metrics.h"
Yeunjoo Choi52e1c572021-04-08 07:56:27361#include "chrome/browser/ash/child_accounts/parent_access_code/parent_access_service.h"
Yeunjoo Choi8a355962021-04-13 01:22:27362#include "chrome/browser/ash/child_accounts/screen_time_controller.h"
Yeunjoo Choi882388a2021-04-12 05:17:29363#include "chrome/browser/ash/child_accounts/time_limits/app_activity_registry.h"
364#include "chrome/browser/ash/child_accounts/time_limits/app_time_controller.h"
Pranav Batra468fbe622021-06-23 01:42:36365#include "chrome/browser/ash/crosapi/browser_util.h"
Yeunjoo Choiaba21c02021-05-07 09:06:34366#include "chrome/browser/ash/crostini/crostini_pref_names.h"
Henrique Ferreiro2029590e2021-09-23 08:01:52367#include "chrome/browser/ash/cryptauth/client_app_metadata_provider_service.h"
368#include "chrome/browser/ash/cryptauth/cryptauth_device_id_provider_impl.h"
Yeunjoo Choi91907642021-04-16 13:18:19369#include "chrome/browser/ash/customization/customization_document.h"
Nigel Taoa1d4dce2022-10-18 00:01:20370#include "chrome/browser/ash/file_manager/file_manager_pref_names.h"
Andrew Rayskiy47076d72022-09-27 18:46:14371#include "chrome/browser/ash/file_manager/file_tasks.h"
Yeunjoo Choi627505b7b2021-05-13 15:56:31372#include "chrome/browser/ash/file_system_provider/registry.h"
Yeunjoo Choi55626172021-07-27 03:17:27373#include "chrome/browser/ash/first_run/first_run.h"
Geng Li11526bb42022-02-15 23:59:14374#include "chrome/browser/ash/floating_workspace/floating_workspace_util.h"
Joel Hockeyfcc56a292022-06-17 02:28:00375#include "chrome/browser/ash/guest_os/guest_id.h"
Yeunjoo Choi0a9c1d42021-03-31 01:38:56376#include "chrome/browser/ash/guest_os/guest_os_pref_names.h"
David Munro86435df2022-07-25 01:27:45377#include "chrome/browser/ash/guest_os/guest_os_terminal.h"
Yeunjoo Choi6aa07d82021-03-22 08:55:28378#include "chrome/browser/ash/lock_screen_apps/state_controller.h"
Henrique Ferreiro606669a2021-02-24 13:36:55379#include "chrome/browser/ash/login/demo_mode/demo_mode_resources_remover.h"
380#include "chrome/browser/ash/login/demo_mode/demo_session.h"
381#include "chrome/browser/ash/login/demo_mode/demo_setup_controller.h"
Henrique Ferreiroe55c0d5f2021-02-25 02:16:05382#include "chrome/browser/ash/login/quick_unlock/fingerprint_storage.h"
383#include "chrome/browser/ash/login/quick_unlock/pin_storage_prefs.h"
384#include "chrome/browser/ash/login/quick_unlock/quick_unlock_utils.h"
Ahmed Nasrbe0670b72022-03-09 23:28:17385#include "chrome/browser/ash/login/reporting/login_logout_reporter.h"
Henrique Ferreiro96143e5a2021-02-25 12:52:36386#include "chrome/browser/ash/login/saml/saml_profile_prefs.h"
Henrique Ferreiro1786d45a2021-02-25 22:48:19387#include "chrome/browser/ash/login/screens/enable_adb_sideloading_screen.h"
Henrique Ferreiro81312ab2021-02-25 23:14:03388#include "chrome/browser/ash/login/screens/reset_screen.h"
Henrique Ferreiro995b1db2021-03-06 00:41:41389#include "chrome/browser/ash/login/security_token_session_controller.h"
Henrique Ferreiroad3c6a572021-03-02 12:43:51390#include "chrome/browser/ash/login/session/user_session_manager.h"
Henrique Ferreiroa264c8c02021-07-20 08:31:47391#include "chrome/browser/ash/login/signin/signin_error_notifier.h"
Kush Sinha31d120b72023-09-04 12:21:54392#include "chrome/browser/ash/login/signin/token_handle_fetcher.h"
Henrique Ferreiro995b1db2021-03-06 00:41:41393#include "chrome/browser/ash/login/startup_utils.h"
Henrique Ferreiro2dc9e1c2021-03-04 17:33:58394#include "chrome/browser/ash/login/users/avatar/user_image_manager.h"
Aiden Chiavatti112d3672023-03-17 21:13:41395#include "chrome/browser/ash/login/users/avatar/user_image_prefs.h"
Henrique Ferreiro2dc9e1c2021-03-04 17:33:58396#include "chrome/browser/ash/login/users/avatar/user_image_sync_observer.h"
397#include "chrome/browser/ash/login/users/chrome_user_manager_impl.h"
Henrique Ferreiro12a42b02021-03-04 23:45:53398#include "chrome/browser/ash/login/users/multi_profile_user_controller.h"
Andreea Costinasc33add32023-07-13 16:57:13399#include "chrome/browser/ash/net/ash_proxy_monitor.h"
Henrique Ferreirod57c4962021-09-29 07:26:59400#include "chrome/browser/ash/net/network_throttling_observer.h"
Yeunjoo Choic5b3bf492021-03-15 13:57:19401#include "chrome/browser/ash/plugin_vm/plugin_vm_pref_names.h"
Yeunjoo Choi7227dba2021-08-04 06:35:47402#include "chrome/browser/ash/policy/core/browser_policy_connector_ash.h"
Yeunjoo Choiead8b3c2021-07-27 08:08:19403#include "chrome/browser/ash/policy/core/device_cloud_policy_manager_ash.h"
Yeunjoo Choi8623e4a2021-07-02 01:57:06404#include "chrome/browser/ash/policy/core/dm_token_storage.h"
Yeunjoo Choia60b6212021-07-06 11:25:12405#include "chrome/browser/ash/policy/enrollment/auto_enrollment_client_impl.h"
406#include "chrome/browser/ash/policy/enrollment/enrollment_requisition_manager.h"
407#include "chrome/browser/ash/policy/external_data/handlers/device_wallpaper_image_external_data_handler.h"
Yeunjoo Choi5d6eb012021-07-09 03:03:05408#include "chrome/browser/ash/policy/handlers/adb_sideloading_allowance_mode_policy_handler.h"
409#include "chrome/browser/ash/policy/handlers/minimum_version_policy_handler.h"
Henrique Ferreiro11492caf2021-11-02 22:16:16410#include "chrome/browser/ash/policy/handlers/tpm_auto_update_mode_policy_handler.h"
Yeunjoo Choiad73a322021-07-20 04:55:49411#include "chrome/browser/ash/policy/reporting/app_install_event_log_manager_wrapper.h"
412#include "chrome/browser/ash/policy/reporting/arc_app_install_event_logger.h"
Vignesh Shenvi145bf6e2023-05-08 22:11:30413#include "chrome/browser/ash/policy/reporting/metrics_reporting/metric_reporting_prefs.h"
Sanja Perisic91217932022-04-13 13:45:02414#include "chrome/browser/ash/policy/scheduled_task_handler/reboot_notifications_scheduler.h"
Yeunjoo Choid33fdb62021-07-21 06:57:42415#include "chrome/browser/ash/policy/status_collector/device_status_collector.h"
416#include "chrome/browser/ash/policy/status_collector/status_collector.h"
Yeunjoo Choi0bab0cf2021-05-31 05:14:03417#include "chrome/browser/ash/power/auto_screen_brightness/metrics_reporter.h"
Yeunjoo Choi7629a77a12021-06-02 06:37:18418#include "chrome/browser/ash/power/power_metrics_reporter.h"
Henrique Ferreiroae846062021-10-04 14:44:34419#include "chrome/browser/ash/preferences.h"
Pranav Batra9c0eb782022-02-01 23:13:33420#include "chrome/browser/ash/printing/cups_printers_manager.h"
Yeunjoo Choia52715a2021-09-09 02:45:17421#include "chrome/browser/ash/printing/enterprise_printers_provider.h"
Yeunjoo Choi0fb01cf62021-04-21 01:30:15422#include "chrome/browser/ash/release_notes/release_notes_storage.h"
Pranav Batra468fbe622021-06-23 01:42:36423#include "chrome/browser/ash/scanning/chrome_scanning_app_delegate.h"
Henrique Ferreiro11492caf2021-11-02 22:16:16424#include "chrome/browser/ash/scheduler_configuration_manager.h"
Yeunjoo Choi5097e9c2021-02-25 08:46:52425#include "chrome/browser/ash/settings/device_settings_cache.h"
Yeunjoo Choia43d74a2021-02-10 23:23:19426#include "chrome/browser/ash/system/automatic_reboot_manager.h"
427#include "chrome/browser/ash/system/input_device_settings.h"
Glen Robertson54e553b2023-06-27 03:18:37428#include "chrome/browser/ash/system_web_apps/apps/help_app/help_app_notification_controller.h"
Anthony Vallee-Dubois85edf222020-03-24 20:30:02429#include "chrome/browser/device_identity/chromeos/device_oauth2_token_store_chromeos.h"
[email protected]5a145e82014-05-29 22:19:07430#include "chrome/browser/extensions/extension_assets_manager_chromeos.h"
xhwangc84739e2015-03-14 01:02:46431#include "chrome/browser/media/protected_media_identifier_permission_context.h"
[email protected]8304f61a2014-05-24 12:17:33432#include "chrome/browser/metrics/chromeos_metrics_provider.h"
Jong Ahnfaf5f1f72023-01-19 03:20:44433#include "chrome/browser/metrics/structured/chrome_structured_metrics_recorder.h"
Erik Chenc2927bbd2021-09-22 23:20:07434#include "chrome/browser/ui/ash/shelf/chrome_shelf_prefs.h"
Yeunjoo Choi3fc970b2022-10-28 02:55:48435#include "chrome/browser/ui/webui/ash/login/enable_debugging_screen_handler.h"
Yeunjoo Choi6edb40f2022-08-31 04:00:52436#include "chrome/browser/ui/webui/settings/ash/os_settings_ui.h"
Roman Aleksandrovd32e34e72019-05-22 17:29:50437#include "chrome/browser/upgrade_detector/upgrade_detector_chromeos.h"
Henrique Ferreiro94c5e502022-08-17 14:20:22438#include "chromeos/ash/components/audio/audio_devices_pref_handler_impl.h"
Henrique Ferreiroc9e2aaf2022-07-07 13:45:18439#include "chromeos/ash/components/local_search_service/search_metrics_reporter.h"
Yeunjoo Choi1a8bc9942022-06-20 05:31:16440#include "chromeos/ash/components/network/cellular_esim_profile_handler_impl.h"
441#include "chromeos/ash/components/network/cellular_metrics_logger.h"
Yeunjoo Choibe813122022-06-29 15:13:44442#include "chromeos/ash/components/network/fast_transition_observer.h"
443#include "chromeos/ash/components/network/managed_cellular_pref_handler.h"
Yeunjoo Choi643dead2022-07-11 12:52:16444#include "chromeos/ash/components/network/network_metadata_store.h"
Yeunjoo Choida91d6452022-06-02 15:26:42445#include "chromeos/ash/components/network/proxy/proxy_config_handler.h"
Hirthanan Subenderan088f7322023-09-20 15:10:29446#include "chromeos/ash/components/report/report_controller.h"
Yuta Hijikata4538fc02023-09-26 15:19:55447#include "chromeos/ash/components/standalone_browser/migrator_util.h"
Henrique Ferreiroacf002702022-10-06 21:54:59448#include "chromeos/ash/components/timezone/timezone_resolver.h"
Yeunjoo Choi2d3704c12022-06-21 02:44:34449#include "chromeos/ash/services/assistant/public/cpp/assistant_prefs.h"
Anastasiia N1ad94e1e2022-09-15 08:47:28450#include "chromeos/ash/services/auth_factor_config/auth_factor_config.h"
Henrique Ferreiroae001e92022-09-01 16:58:46451#include "chromeos/ash/services/bluetooth_config/bluetooth_power_controller_impl.h"
452#include "chromeos/ash/services/bluetooth_config/device_name_manager_impl.h"
Yeunjoo Choia292ed72022-11-01 01:19:55453#include "chromeos/ash/services/device_sync/public/cpp/device_sync_prefs.h"
Yeunjoo Choie4980f452022-10-21 16:07:58454#include "chromeos/ash/services/multidevice_setup/multidevice_setup_service.h"
Yue Lif0da5bf2021-11-19 22:01:57455#include "chromeos/components/quick_answers/public/cpp/quick_answers_prefs.h"
Kushagra Sinhab37e24db2021-07-02 15:14:24456#include "components/account_manager_core/chromeos/account_manager.h"
stevenjbf22f82e2016-10-26 21:47:38457#include "components/onc/onc_pref_names.h"
glevin5dd01a72016-03-23 23:08:12458#include "components/quirks/quirks_manager.h"
tbarzicd9a88fc92017-07-14 02:18:10459#include "extensions/browser/api/lock_screen_data/lock_screen_item_storage.h"
Pranav Batra468fbe622021-06-23 01:42:36460
Pranav Batra468fbe622021-06-23 01:42:36461#endif // BUILDFLAG(IS_CHROMEOS_ASH)
462
Xiaohan Wangae7f9182022-01-16 00:37:52463#if BUILDFLAG(IS_MAC)
Lei Zhangdb0c0872022-03-04 04:26:59464#include "chrome/browser/media/webrtc/system_media_capture_permissions_stats_mac.h"
[email protected]425f7a02014-04-29 01:51:44465#include "chrome/browser/ui/cocoa/apps/quit_with_apps_controller_mac.h"
Tom Anderson6a496032018-08-30 23:38:37466#include "chrome/browser/ui/cocoa/confirm_quit.h"
Song Fangzhencda4af62021-09-09 05:24:02467#include "chrome/browser/web_applications/app_shim_registry_mac.h"
[email protected]2366a3a2012-10-02 20:41:14468#endif
469
Xiaohan Wangae7f9182022-01-16 00:37:52470#if BUILDFLAG(IS_WIN)
Igor Ruvinov13e658e2022-12-13 03:15:20471#include "chrome/browser/enterprise/platform_auth/platform_auth_policy_observer.h"
Scott Violet3ff87d062021-12-21 06:10:10472#include "chrome/browser/font_prewarmer_tab_helper.h"
Alex St-Onge9e4b9b72021-06-08 15:35:54473#include "chrome/browser/media/cdm_pref_service_helper.h"
Xiaohan Wang259f34c7a2022-03-26 23:18:19474#include "chrome/browser/media/media_foundation_service_monitor.h"
Will Harriseb364b2c2022-06-23 00:49:01475#include "chrome/browser/os_crypt/app_bound_encryption_metrics_win.h"
Nico Webereaa08412019-08-14 01:24:37476#if BUILDFLAG(GOOGLE_CHROME_BRANDING)
Patrick Monettebb543942019-05-17 17:45:32477#include "chrome/browser/win/conflicts/incompatible_applications_updater.h"
478#include "chrome/browser/win/conflicts/module_database.h"
479#include "chrome/browser/win/conflicts/third_party_conflicts_manager.h"
Nico Webereaa08412019-08-14 01:24:37480#endif // BUILDFLAG(GOOGLE_CHROME_BRANDING)
Daniel Ruberyd17b2fd2023-09-07 23:31:36481#endif // BUILDFLAG(IS_WIN)
[email protected]bdb8a1e2013-10-03 08:14:00482
Xiaohan Wangae7f9182022-01-16 00:37:52483#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC)
Will Harris93d0dcd52023-03-14 23:38:47484#include "components/os_crypt/sync/os_crypt.h"
Will Harris265b3942019-10-21 01:01:33485#endif
486
Sebastien Lalancette413625312023-05-08 13:58:01487#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
488 BUILDFLAG(IS_CHROMEOS_ASH)
Sebastien Lalancette120e0592023-05-04 21:02:33489#include "components/device_signals/core/browser/pref_names.h" // nogncheck due to crbug.com/1125897
Lu Huangcd11f21c2021-02-03 22:24:56490#endif
491
Yuta Hijikata31a359c2020-11-27 07:50:26492// TODO(crbug.com/1052397): Revisit the macro expression once build flag switch
493// of lacros-chrome is complete.
Xiaohan Wangae7f9182022-01-16 00:37:52494#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \
495 (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS))
Nicolas Ouellet-Payeur9a4a94d2018-09-17 15:26:11496#include "chrome/browser/browser_switcher/browser_switcher_prefs.h"
497#endif
498
Nicolas Ouellet-Payeurcb894532023-09-28 04:03:15499#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
500#include "chrome/browser/enterprise/signin/enterprise_signin_prefs.h"
501#endif
502
Erik Chen38ceca082020-12-16 01:31:35503#if BUILDFLAG(IS_CHROMEOS_LACROS)
Nancy Wangc84098e2022-10-24 10:30:36504#include "chrome/browser/apps/app_service/metrics/website_metrics_service_lacros.h"
Alex Ilin953f1092021-11-26 15:49:10505#include "chrome/browser/lacros/account_manager/account_cache.h"
Polina Bondarenko3f3dc4f2022-04-25 07:55:01506#include "chrome/browser/lacros/app_mode/kiosk_session_service_lacros.h"
Erik Chen38ceca082020-12-16 01:31:35507#include "chrome/browser/lacros/lacros_prefs.h"
Andreea Costinas68cad91f2021-09-22 15:58:09508#include "chrome/browser/lacros/net/proxy_config_service_lacros.h"
Nicolas Dossou-Gbete7ccc8802022-11-10 15:12:46509#endif
510
511#if BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(ENABLE_DICE_SUPPORT)
512#include "chrome/browser/ui/startup/first_run_service.h"
Erik Chen38ceca082020-12-16 01:31:35513#endif
514
Xiaohan Wangae7f9182022-01-16 00:37:52515#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
Yusuke Sato28ab25092021-05-07 23:04:02516#include "chrome/browser/device_identity/device_oauth2_token_store_desktop.h"
Yann Dago0d896f62020-02-04 19:59:15517#include "chrome/browser/downgrade/downgrade_prefs.h"
thestigf2a0fa92016-09-07 09:37:29518#include "chrome/browser/ui/startup/default_browser_prompt.h"
519#endif
520
[email protected]ceafc462013-11-04 12:26:03521#if defined(TOOLKIT_VIEWS)
522#include "chrome/browser/ui/browser_view_prefs.h"
Yuheng Huang9ce54892022-05-06 19:29:39523#include "chrome/browser/ui/side_search/side_search_prefs.h"
[email protected]ceafc462013-11-04 12:26:03524#endif
525
Scott Violet53fb03c2021-01-15 23:48:16526#if BUILDFLAG(ENABLE_SESSION_SERVICE)
Christian Dullweber0747d7c92021-05-10 10:05:13527#include "chrome/browser/sessions/session_data_service.h"
Scott Violet53fb03c2021-01-15 23:48:16528#include "chrome/browser/sessions/session_service_log.h"
529#endif
tomc5dd0cd2021-10-01 22:15:52530
Tom Andersoncb3408482022-09-02 19:06:41531#if BUILDFLAG(IS_LINUX)
532#include "ui/color/system_theme.h"
533#endif
534
Chris Mullinse59586192023-03-06 17:42:17535#if BUILDFLAG(IS_CHROMEOS_ASH)
536#include "chrome/browser/ash/wallpaper_handlers/wallpaper_prefs.h"
537#endif
538
Dominique Fauteux-Chapleaub6be8ae2023-09-26 13:48:40539#if BUILDFLAG(ENTERPRISE_DATA_CONTROLS)
540#include "components/enterprise/data_controls/prefs.h"
541#endif
542
[email protected]572f40c9b2012-07-06 20:35:33543namespace {
Yao Xiao9255aec2022-02-05 00:02:19544
Lei Zhang9523de82022-03-14 21:40:21545// Please keep the list of deprecated prefs in chronological order. i.e. Add to
546// the bottom of the list, not here at the top.
Toby Huang33753282020-05-05 18:55:22547
Mariam Ali15a343d2023-08-28 15:56:50548// Deprecated 06/2022
549// TODO(crbug.com/1476489): Remove when unit test code is updated.
Caitlin Fischer07366b12022-06-23 17:18:24550#if BUILDFLAG(ENABLE_DICE_SUPPORT)
551const char kTokenServiceDiceCompatible[] = "token_service.dice_compatible";
552#endif
Caitlin Fischer69c1ca892022-07-06 18:32:45553
JunHo Seo1f0506f22022-07-26 02:52:25554#if BUILDFLAG(ENABLE_EXTENSIONS)
Martin Kreichgauerc86cc652022-10-28 16:52:04555// Deprecated 10/2022.
556const char kLoadCryptoTokenExtension[] =
557 "extensions.load_cryptotoken_extension";
JunHo Seo1f0506f22022-07-26 02:52:25558#endif
559
Peter Birk Pakkenberg71a43942023-01-04 13:50:37560// Deprecated 10/2022.
561const char kOriginTrialPrefKey[] = "origin_trials.persistent_trials";
562
dpapad8ad510132022-07-29 18:21:07563#if BUILDFLAG(IS_CHROMEOS_ASH)
Roman Sorokinc138f2982022-09-05 16:42:30564// Deprecated 09/2022.
Colin Kincaidf11f8562022-09-14 15:41:06565constexpr char kClipboardHistoryNewFeatureBadgeCount[] =
566 "ash.clipboard.multipaste_nudges.new_feature_shown_count";
Roman Sorokinc138f2982022-09-05 16:42:30567constexpr char kUsersLastInputMethod[] = "UsersLRUInputMethod";
568#endif // BUILDFLAG(IS_CHROMEOS_ASH)
569
Theodore Olsauskas-Warren221e3ecd2022-09-08 08:21:24570// Deprecated 09/2022.
571const char kPrivacySandboxFirstPartySetsDataAccessAllowed[] =
572 "privacy_sandbox.first_party_sets_data_access_allowed";
573
Jan Keitel4707c1f2022-11-30 11:08:59574#if BUILDFLAG(IS_ANDROID)
575// Deprecated 09/2022.
576const char kDeprecatedAutofillAssistantConsent[] = "autofill_assistant_switch";
577const char kDeprecatedAutofillAssistantEnabled[] =
578 "AUTOFILL_ASSISTANT_ONBOARDING_ACCEPTED";
579const char kDeprecatedAutofillAssistantTriggerScriptsEnabled[] =
580 "Chrome.AutofillAssistant.ProactiveHelp";
581const char kDeprecatedAutofillAssistantTriggerScriptsIsFirstTimeUser[] =
582 "Chrome.AutofillAssistant.LiteScriptFirstTimeUser";
583#endif // BUILDFLAG(IS_ANDROID)
584
Yulun Wu066dab712022-11-01 17:20:24585#if BUILDFLAG(IS_CHROMEOS_ASH)
586// Deprecated 10/2022.
587const char kSuggestedContentInfoShownInLauncher[] =
588 "ash.launcher.suggested_content_info_shown";
589const char kSuggestedContentInfoDismissedInLauncher[] =
590 "ash.launcher.suggested_content_info_dismissed";
591#endif
592
Avi Drissmanfee70e5f2022-11-02 20:50:11593#if BUILDFLAG(ENABLE_BACKGROUND_MODE) && BUILDFLAG(IS_MAC)
594// Deprecated 11/2022.
595const char kUserRemovedLoginItem[] = "background_mode.user_removed_login_item";
596const char kChromeCreatedLoginItem[] =
597 "background_mode.chrome_created_login_item";
598const char kMigratedLoginItemPref[] =
599 "background_mode.migrated_login_item_pref";
600#endif
Nicolas Dossou-Gbete2804a372022-11-09 17:25:35601#if BUILDFLAG(IS_CHROMEOS_LACROS)
602const char kPrimaryProfileFirstRunFinished[] =
603 "lacros.primary_profile_first_run_finished";
604#endif
Avi Drissmanfee70e5f2022-11-02 20:50:11605
Victor Hugo Vianna Silva29ab0a32022-11-10 03:48:38606// Deprecated 11/2022.
607const char kLocalConsentsDictionary[] = "local_consents";
608
Jan Keitel4707c1f2022-11-30 11:08:59609// Deprecated 11/2022.
610const char kAutofillAssistantConsent[] = "autofill_assistant.consent";
611const char kAutofillAssistantEnabled[] = "autofill_assistant.enabled";
612const char kAutofillAssistantTriggerScriptsEnabled[] =
613 "autofill_assistant.trigger_scripts.enabled";
614const char kAutofillAssistantTriggerScriptsIsFirstTimeUser[] =
615 "autofill_assistant.trigger_scripts.is_first_time_user";
616
Vishwas Uppoorbcf36722022-12-30 18:55:22617// Deprecated 12/2022.
618const char kAutofillWalletImportStorageCheckboxState[] =
619 "autofill.wallet_import_storage_checkbox_state";
Mikel Astiz231dd522023-04-23 15:51:44620const char kDeprecatedReadingListHasUnseenEntries[] =
621 "reading_list.has_unseen_entries";
Vishwas Uppoorbcf36722022-12-30 18:55:22622
Nasser Al-shawwa16ffdfc2023-01-13 14:32:20623// Deprecated 01/2023
624const char kSendDownloadToCloudPref[] =
625 "enterprise_connectors.send_download_to_cloud";
mark a. foltz264816212023-01-19 21:10:46626
Sebastien Lalancette55953e42023-01-17 14:48:31627#if BUILDFLAG(IS_MAC)
628const char kDeviceTrustDisableKeyCreationPref[] =
629 "enterprise_connectors.device_trust.disable_key_creation";
630#endif // BUILDFLAG(IS_MAC)
Nasser Al-shawwa16ffdfc2023-01-13 14:32:20631
Daseul Lee56c5a8d2023-01-17 17:18:46632// Deprecated 01/2023.
633const char kFileSystemSyncAccessHandleAsyncInterfaceEnabled[] =
634 "policy.file_system_sync_access_handle_async_interface_enabled";
635
mark a. foltz264816212023-01-19 21:10:46636// Deprecated 01/2023.
637#if !BUILDFLAG(IS_ANDROID)
638const char kMediaRouterTabMirroringSources[] =
639 "media_router.tab_mirroring_sources";
640#endif // !BUILDFLAG(IS_ANDROID)
641
Mahmoud Rashad96ac6022023-01-26 23:48:18642// Deprecated 01/2023.
643const char kAutofillCreditCardSigninPromoImpressionCount[] =
644 "autofill.credit_card_signin_promo_impression_count";
645
Andrew Breggerf89f1322023-02-01 02:22:03646// Deprecated 01/2023
647#if BUILDFLAG(IS_CHROMEOS_ASH)
648const char kEventSequenceLastSystemUptime[] =
649 "metrics.event_sequence.last_system_uptime";
650
651// Keeps track of the device reset counter.
652const char kEventSequenceResetCounter[] =
653 "metrics.event_sequence.reset_counter";
654#endif // BUILDFLAG(IS_CHROMEOS_ASH)
655
Osama Fathy592e239a2023-02-02 15:26:13656// Deprecated 02/2023.
657#if BUILDFLAG(IS_CHROMEOS_ASH)
658const char kArcTermsShownInOobe[] = "arc.terms.shown_in_oobe";
659#endif // !BUILDFLAG(IS_CHROMEOS_ASH)
660
Maksim Moskvitin265fd062023-02-17 13:04:22661// Deprecated 02/2023
662const char kSyncInvalidationVersions[] = "sync.invalidation_versions";
663const char kSyncInvalidationVersions2[] = "sync.invalidation_versions2";
664
Lei Zhang52efbb02023-02-21 22:56:38665// Deprecated 02/2023.
Lei Zhang5e1ffd62023-02-23 17:52:44666const char kClearPluginLSODataEnabled[] = "browser.clear_lso_data_enabled";
Lei Zhang543294f2023-02-23 19:53:43667const char kContentSettingsPluginAllowlist[] =
668 "profile.content_settings.plugin_whitelist";
Lei Zhang5e1ffd62023-02-23 17:52:44669const char kPepperFlashSettingsEnabled[] =
670 "browser.pepper_flash_settings_enabled";
Lei Zhang52efbb02023-02-21 22:56:38671const char kPluginsAllowOutdated[] = "plugins.allow_outdated";
Lei Zhang701e2342023-02-22 00:39:42672const char kPluginsLastInternalDirectory[] = "plugins.last_internal_directory";
673const char kPluginsPluginsList[] = "plugins.plugins_list";
Lei Zhang52efbb02023-02-21 22:56:38674const char kPluginsShowDetails[] = "plugins.show_details";
675
Lu Huangeba5b532023-02-22 23:19:34676// Deprecated 02/2023.
677#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
678const char kWebAppsUrlHandlerInfo[] = "web_apps.url_handler_info";
679#endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
680
Brittany Hartmire8a36b6e42023-02-24 23:09:09681// Deprecated 02/2023.
682#if BUILDFLAG(IS_CHROMEOS_ASH)
683const char kHasSeenSmartLockSignInRemovedNotification[] =
684 "easy_unlock.has_seen_smart_lock_sign_in_removed_notification";
Brittany Hartmire537aa47b2023-03-01 23:43:09685const char kEasyUnlockLocalStateTpmKeys[] = "easy_unlock.public_tpm_keys";
Brittany Hartmire8a36b6e42023-02-24 23:09:09686#endif // BUILDFLAG(IS_CHROMEOS_ASH)
687
Ari Chivukula951893d2023-03-03 18:03:29688// Deprecated 03/2023.
689const char kGoogleSearchDomainMixingMetricsEmitterLastMetricsTime[] =
690 "browser.last_google_search_domain_mixing_metrics_time";
691
Artsiom Mitrokhincf332e22023-03-07 16:27:47692// Deprecated 03/2023
693#if BUILDFLAG(IS_CHROMEOS_ASH)
694const char kGlanceablesSignoutScreenshotDuration[] =
695 "ash.signout_screenshot.duration";
696#endif // BUILDFLAG(IS_CHROMEOS_ASH)
697
Brittany Hartmireafd35312023-03-16 00:21:03698// Deprecated 03/2023.
699#if BUILDFLAG(IS_CHROMEOS_ASH)
700const char kEasyUnlockLocalStateUserPrefs[] = "easy_unlock.user_prefs";
701#endif // BUILDFLAG(IS_CHROMEOS_ASH)
702
conniekxu4d14f65c2023-03-28 20:56:36703// Deprecated 03/2023
704#if BUILDFLAG(IS_CHROMEOS_ASH)
705const char kDarkLightModeNudgeLeftToShowCount[] =
706 "ash.dark_light_mode.educational_nudge";
707#endif // BUILDFLAG(IS_CHROMEOS_ASH)
708
Adam Langley390670302023-03-31 00:43:31709// Deprecated 03/2023.
710#if BUILDFLAG(IS_WIN)
711const char kWebAuthnLastOperationWasNativeAPI[] =
712 "webauthn.last_op_used_native_api";
713#endif
714
Brittany Hartmire1ffd662e2023-04-04 22:46:51715// Deprecated 03/2023.
716#if BUILDFLAG(IS_CHROMEOS_ASH)
717const char kEasyUnlockHardlockState[] = "easy_unlock.hardlock_state";
718#endif // BUILDFLAG(IS_CHROMEOS_ASH)
719
Richard Chui821cdad2023-04-07 21:39:57720// Deprecated 04/2023.
721#if BUILDFLAG(IS_CHROMEOS_ASH)
722const char kBentoBarEnabled[] = "ash.bento_bar.enabled";
723const char kUserHasUsedDesksRecently[] = "ash.user_has_used_desks_recently";
724#endif // BUILDFLAG(IS_CHROMEOS_ASH)
725
Dan Harrington83791492023-04-10 20:49:27726// Deprecated 04/2023.
727#if BUILDFLAG(IS_ANDROID)
728const char kUserSettingEnabled[] = "offline_prefetch.enabled";
729const char kBackoff[] = "offline_prefetch.backoff";
730const char kLimitlessPrefetchingEnabledTimePref[] =
731 "offline_prefetch.limitless_prefetching_enabled_time";
732const char kPrefetchTestingHeaderPref[] =
733 "offline_prefetch.testing_header_value";
734const char kEnabledByServer[] = "offline_prefetch.enabled_by_server";
735const char kNextForbiddenCheckTimePref[] = "offline_prefetch.next_gpb_check";
736const char kPrefetchCachedGCMToken[] = "offline_prefetch.gcm_token";
737#endif
738
Artem Sumaneev77f80bb2023-04-11 14:04:58739// Deprecated 04/2023.
740const char kTypeSubscribedForInvalidations[] =
741 "invalidation.registered_for_invalidation";
742const char kActiveRegistrationToken[] =
743 "invalidation.active_registration_token";
744const char kFCMInvalidationClientIDCache[] = "fcm.invalidation.client_id_cache";
745
Osama Fathy5d236652023-04-17 17:31:12746// Deprecated 04/2023.
747#if BUILDFLAG(IS_CHROMEOS_ASH)
748const char kConsolidatedConsentTrial[] = "per_user_metrics.trial_group";
749#endif // BUILDFLAG(IS_CHROMEOS_ASH)
750
Jérémie Boulic8d672f22023-04-18 02:44:05751// Deprecated 04/2023.
752#if BUILDFLAG(IS_CHROMEOS_ASH)
753const char kOfficeFilesAlwaysMove[] = "filebrowser.office.always_move";
754const char kOfficeMoveConfirmationShown[] =
755 "filebrowser.office.move_confirmation_shown";
756#endif // BUILDFLAG(IS_CHROMEOS_ASH)
757
Brittany Hartmire402a3922023-04-18 22:15:36758// Deprecated 04/2023.
759#if BUILDFLAG(IS_CHROMEOS_ASH)
760const char kProximityAuthIsChromeOSLoginEnabled[] =
761 "proximity_auth.is_chromeos_login_enabled";
762#endif // BUILDFLAG(IS_CHROMEOS_ASH)
763
Roland Bock8e21dd022023-04-27 09:33:48764// Deprecated 04/2023.
765#if BUILDFLAG(IS_CHROMEOS_ASH)
766const char kEnrollmentIdUploadedOnChromad[] = "chromad.enrollment_id_uploaded";
767const char kLastChromadMigrationAttemptTime[] =
768 "chromad.last_migration_attempt_time";
769#endif // BUILDFLAG(IS_CHROMEOS_ASH)
770
Brittany Hartmire22aa1ae82023-05-09 17:37:23771// Deprecated 05/2023.
772#if BUILDFLAG(IS_CHROMEOS_ASH)
773const char kSmartLockSigninAllowed[] = "smart_lock_signin.allowed";
774#endif // BUILDFLAG(IS_CHROMEOS_ASH)
775
David Trainorb7400c22023-05-10 19:17:06776// Deprecated 05/2023
777#if BUILDFLAG(IS_ANDROID)
778const char kVideoTutorialsPreferredLocaleKey[] =
779 "video_tutorials.perferred_locale";
780const char kVideoTutorialsLastUpdatedTimeKey[] =
781 "video_tutorials.last_updated_time";
Cathy Li7ff029622023-05-26 04:56:52782const char kWeeklyStatsReportingTimestamp[] =
783 "explore_sites.weekly_stats_reporting_timestamp";
David Trainorb7400c22023-05-10 19:17:06784#endif // BUILDFLAG(IS_ANDROID)
785
Pilar Molina Lopezef825502023-05-12 18:08:48786// Deprecated 05/2023
Colin Blundella2aea272023-05-15 09:50:00787const char kForceEnablePepperVideoDecoderDevAPI[] =
788 "policy.force_enable_pepper_video_decoder_dev_api";
789
790// Deprecated 05/2023
Pilar Molina Lopezef825502023-05-12 18:08:48791const char kUseMojoVideoDecoderForPepperAllowed[] =
792 "policy.use_mojo_video_decoder_for_pepper_allowed";
793
Vasiliy Telezhnikov2a786452023-05-12 23:53:37794// Deprecated 05/2023.
795const char kPPAPISharedImagesSwapChainAllowed[] =
796 "policy.ppapi_shared_images_swap_chain_allowed";
797
Peter Marshall7fdea2b2023-05-15 01:16:38798// Deprecated 05/2023.
799#if BUILDFLAG(IS_CHROMEOS_ASH)
800const char kOfficeSetupComplete[] = "filebrowser.office.setup_complete";
801#endif // BUILDFLAG(IS_CHROMEOS_ASH)
802
Elias Khsheibund1700562023-05-15 13:31:21803// Deprecated 05/2023.
804#if BUILDFLAG(IS_ANDROID)
805const char kTimesUPMAuthErrorShown[] = "times_upm_auth_error_shown";
806#endif // BUILDFLAG(IS_ANDROID)
807
Maciek Slusarczyk56833f02023-05-19 09:02:14808// Deprecated 05/2023.
809#if BUILDFLAG(IS_CHROMEOS_ASH)
810const char kSamlPasswordSyncToken[] = "saml.password_sync_token";
811#endif // BUILDFLAG(IS_CHROMEOS_ASH)
812
Ramin Halavatiec90e022023-05-23 13:55:05813// Deprecated 05/2023.
814#if BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
815const char kScreenAIScheduledDeletionTimePrefName[] =
816 "accessibility.screen_ai.scheduled_deletion_time";
817#endif
818
Michael Checo1f8625942023-05-23 19:33:47819// Deprecated 05/2023.
820#if BUILDFLAG(IS_CHROMEOS_ASH)
821const char kEventRemappedToRightClick[] =
822 "ash.settings.event_remapped_to_right_click";
823#endif
824
Hidehiko Abead7991f22023-05-31 14:32:22825// Deprecated 05/2023.
826#if BUILDFLAG(IS_CHROMEOS_ASH)
827constexpr char kSupervisedUserSyncId[] = "ManagedUserSyncId";
828constexpr char kSupervisedUserManagers[] = "ManagedUserManagers";
829constexpr char kSupervisedUserManagerNames[] = "ManagedUserManagerNames";
830constexpr char kSupervisedUserManagerDisplayEmails[] =
831 "ManagedUserManagerDisplayEmails";
832constexpr char kSupervisedUsersFirstRun[] = "LocallyManagedUsersFirstRun";
833constexpr char kSupervisedUserPasswordSchema[] = "SupervisedUserPasswordSchema";
834constexpr char kSupervisedUserPasswordSalt[] = "SupervisedUserPasswordSalt";
835constexpr char kSupervisedUserPasswordRevision[] =
836 "SupervisedUserPasswordRevision";
837constexpr char kSupervisedUserNeedPasswordUpdate[] =
838 "SupervisedUserNeedPasswordUpdate";
839constexpr char kSupervisedUserIncompleteKey[] =
840 "SupervisedUserHasIncompleteKey";
841#endif
842
Alan Cutter3bfce6e2023-06-07 01:53:02843// Deprecated 06/2023.
Alan Cutter086bdf72023-06-09 02:40:11844#if BUILDFLAG(IS_CHROMEOS_ASH)
845const char kWebAppCalculatorAppErasureFixAppliedPref[] =
846 "web_app.calculator_app_erasure_fix_applied";
847#endif // BUILDFLAG(IS_CHROMEOS_ASH)
848
849// Deprecated 06/2023.
Alan Cutter3bfce6e2023-06-07 01:53:02850const char kWebAppsExtensionIDs[] = "web_apps.extension_ids";
851
Marc Treib7aaf21332023-06-14 08:30:01852// Deprecated 06/2023.
853#if BUILDFLAG(IS_CHROMEOS_ASH)
854constexpr char kOsSyncPrefsMigrated[] = "sync.os_sync_prefs_migrated";
855#endif // BUILDFLAG(IS_CHROMEOS_ASH)
856
Yue Zhangf7cf6712023-06-16 18:11:32857// Deprecated 06/2023
858#if !BUILDFLAG(IS_ANDROID)
859const char kShouldShowSidePanelBookmarkTab[] =
860 "should_show_side_panel_bookmark_tab";
861#endif // !BUILDFLAG(IS_ANDROID)
862
Maciek Slusarczyk9fed52232023-06-21 14:46:07863// Deprecated 06/2023.
864#if BUILDFLAG(IS_CHROMEOS_ASH)
865const char kGaiaLastOnlineSignInTime[] = "gaia.last_online_sign_in_time";
866const char kSAMLLastGAIASignInTime[] = "saml.last_gaia_sign_in_time";
867#endif // BUILDFLAG(IS_CHROMEOS_ASH)
868
Eshwar Stalin883b5a72023-07-11 02:05:59869// Deprecated 07/2023
870#if !BUILDFLAG(IS_ANDROID)
871const char kLegacyHoverCardImagesEnabled[] = "browser.hovercard_images_enabled";
872#endif // !BUILDFLAG(IS_ANDROID)
873
Jian Li7541a082023-06-18 23:52:14874#if BUILDFLAG(ENABLE_FEED_V2)
875const char kVideoPreviewsType[] = "ntp_snippets.video_previews_type";
876#endif // BUILDFLAG(ENABLE_FEED_V2)
877
Anthony Cui5e5dad9322023-07-10 17:34:54878// Deprecated 06/2023.
879#if BUILDFLAG(IS_ANDROID)
880const char kPrefExplicitLanguageAskShown[] =
881 "translate_explicit_language_ask_shown";
882#endif // BUILDFLAG(IS_ANDROID)
883
Mihai Sardarescu6db89cf2023-07-04 07:36:02884// Deprecated 07/2023.
885#if !BUILDFLAG(IS_CHROMEOS_ASH)
886const char kUnifiedConsentMigrationState[] = "unified_consent.migration_state";
887#endif // !BUILDFLAG(IS_CHROMEOS_ASH)
888
Viktor Semeniuk13075de02023-07-18 08:24:36889// Deprecated 07/2023.
890const char kPasswordsGroupingInfoRequested[] =
891 "password_manager.passwords_grouping_info_requested";
892
Hui Yingstd4c7a572023-07-18 18:16:15893// Deprecated 07/2023.
894#if BUILDFLAG(IS_CHROMEOS_ASH)
895const char kPowerMetricsIdleScreenOffCount[] =
896 "power.metrics.idle_screen_off_count";
897const char kPowerMetricsIdleSuspendCount[] = "power.metrics.idle_suspend_count";
898const char kPowerMetricsLidClosedSuspendCount[] =
899 "power.metrics.lid_closed_suspend_count";
900#endif // BUILDFLAG(IS_CHROMEOS_ASH)
901
Christoph Schlosser1f1ec9b2023-07-26 08:12:56902// Deprecated 07/2023.
903#if BUILDFLAG(IS_CHROMEOS_ASH)
904const char kHatsPrivacyHubBaselineIsSelected[] =
905 "hats_privacy_hub_baseline_is_selected";
906const char kHatsPrivacyHubBaselineCycleEndTs[] =
907 "hats_privacy_hub_baseline_end_timestamp";
908#endif // BUILDFLAG(IS_CHROMEOS_ASH)
909
Yuta Hijikata9cd674122023-07-29 15:43:37910// Deprecated 07/2023.
911#if BUILDFLAG(IS_CHROMEOS_ASH)
912const char kClearUserDataDir1Pref[] = "lacros.clear_user_data_dir_1";
913#endif
914
Etienne Bergeron6ac228e2023-08-02 17:39:04915// Deprecated 07/2023.
916const char kShutdownNumProcesses[] = "shutdown.num_processes";
917const char kShutdownNumProcessesSlow[] = "shutdown.num_processes_slow";
Etienne Bergeronec5c88fb2023-08-07 15:09:39918const char kShutdownType[] = "shutdown.type";
Etienne Bergeron6ac228e2023-08-02 17:39:04919
François Degros82e8d052023-08-15 19:44:23920// Deprecated 08/2023.
921const char kDriveFsBulkPinningMaxQueueSize[] =
922 "drivefs.bulk_pinning.max_queue_size";
923
Nicola Tommasiff549832023-09-04 11:35:06924// Deprecated 09/2023.
925const char kPrivacySandboxM1Unrestricted[] = "privacy_sandbox.m1.unrestricted";
Daniel Ruberya440a6b12023-09-08 22:04:33926#if BUILDFLAG(IS_WIN)
927const char kSwReporter[] = "software_reporter";
928inline constexpr char kChromeCleaner[] = "chrome_cleaner";
929inline constexpr char kSettingsResetPrompt[] = "settings_reset_prompt";
930#endif
Lily Chen492c670f2023-09-15 21:35:47931// A boolean specifying whether the new download bubble UI is enabled. If it is
932// set to false, the old download shelf UI will be shown instead.
933inline constexpr char kDownloadBubbleEnabled[] = "download_bubble_enabled";
Nicola Tommasiff549832023-09-04 11:35:06934
Ahmed Mehfooze6c06892023-09-14 00:48:17935// Deprecated 09/2023.
936#if BUILDFLAG(IS_CHROMEOS_ASH)
937constexpr char kGestureEducationNotificationShown[] =
938 "ash.gesture_education.notification_shown";
Mikel Astiz3dc3dabc2023-09-25 19:32:21939
940// Note that this very name is used outside ChromeOS Ash, where it isn't
941// deprecated.
942constexpr char kSyncInitialSyncFeatureSetupCompleteOnAsh[] =
943 "sync.has_setup_completed";
Ahmed Mehfooze6c06892023-09-14 00:48:17944#endif
945
Ankush Singh041ec0d2023-09-21 09:06:13946// Deprecated 09/2023.
947// Synced boolean that indicates if a user has manually toggled the settings
948// associated with the PrivacySandboxSettings feature.
949inline constexpr char kPrivacySandboxManuallyControlled[] =
950 "privacy_sandbox.manually_controlled";
951
Lei Zhangb76b80e32020-04-08 16:58:16952// Register local state used only for migration (clearing or moving to a new
953// key).
954void RegisterLocalStatePrefsForMigration(PrefRegistrySimple* registry) {
Roman Sorokinc138f2982022-09-05 16:42:30955#if BUILDFLAG(IS_CHROMEOS_ASH)
956 // Deprecated 09/2022
957 registry->RegisterDictionaryPref(kUsersLastInputMethod);
958#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Avi Drissmanfee70e5f2022-11-02 20:50:11959
960// Deprecated 11/2022.
961#if BUILDFLAG(ENABLE_BACKGROUND_MODE) && BUILDFLAG(IS_MAC)
962 registry->RegisterBooleanPref(kUserRemovedLoginItem, false);
963 registry->RegisterBooleanPref(kChromeCreatedLoginItem, false);
964 registry->RegisterBooleanPref(kMigratedLoginItemPref, false);
965#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Nicolas Dossou-Gbete2804a372022-11-09 17:25:35966
967#if BUILDFLAG(IS_CHROMEOS_LACROS)
968 registry->RegisterBooleanPref(kPrimaryProfileFirstRunFinished, false);
969#endif
Victor Hugo Vianna Silva29ab0a32022-11-10 03:48:38970
971 // Deprecated 11/2022.
972 registry->RegisterDictionaryPref(kLocalConsentsDictionary);
Nasser Al-shawwa16ffdfc2023-01-13 14:32:20973
mark a. foltz264816212023-01-19 21:10:46974 // Deprecated 01/2023.
Nasser Al-shawwa16ffdfc2023-01-13 14:32:20975 registry->RegisterListPref(kSendDownloadToCloudPref);
mark a. foltz264816212023-01-19 21:10:46976
Sebastien Lalancette55953e42023-01-17 14:48:31977#if BUILDFLAG(IS_MAC)
978 registry->RegisterBooleanPref(kDeviceTrustDisableKeyCreationPref, false);
979#endif // BUILDFLAG(IS_MAC)
Andrew Breggerf89f1322023-02-01 02:22:03980
981 // Deprecated 01/2023
982#if BUILDFLAG(IS_CHROMEOS_ASH)
983 registry->RegisterIntegerPref(kEventSequenceResetCounter, 0);
984 registry->RegisterInt64Pref(kEventSequenceLastSystemUptime, 0);
985#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Lu Huangeba5b532023-02-22 23:19:34986
987 // Deprecated 02/2023.
988#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
989 registry->RegisterDictionaryPref(kWebAppsUrlHandlerInfo);
990#endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
Brittany Hartmire537aa47b2023-03-01 23:43:09991
992// Deprecated 02/2023.
993#if BUILDFLAG(IS_CHROMEOS_ASH)
994 registry->RegisterDictionaryPref(kEasyUnlockLocalStateTpmKeys);
995#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Artsiom Mitrokhincf332e22023-03-07 16:27:47996
997// Deprecated 03/2023.
998#if BUILDFLAG(IS_CHROMEOS_ASH)
999 registry->RegisterTimeDeltaPref(kGlanceablesSignoutScreenshotDuration,
1000 base::TimeDelta());
1001#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Brittany Hartmireafd35312023-03-16 00:21:031002
1003// Deprecated 03/2023.
1004#if BUILDFLAG(IS_CHROMEOS_ASH)
1005 registry->RegisterDictionaryPref(kEasyUnlockLocalStateUserPrefs);
1006#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Brittany Hartmire1ffd662e2023-04-04 22:46:511007
1008// Deprecated 04/2023.
1009#if BUILDFLAG(IS_CHROMEOS_ASH)
1010 registry->RegisterDictionaryPref(kEasyUnlockHardlockState);
1011#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Artem Sumaneev77f80bb2023-04-11 14:04:581012
1013 // Deprecated 04/2023.
1014 registry->RegisterDictionaryPref(kTypeSubscribedForInvalidations);
1015 registry->RegisterStringPref(kActiveRegistrationToken, std::string());
1016 registry->RegisterStringPref(kFCMInvalidationClientIDCache, std::string());
Osama Fathy5d236652023-04-17 17:31:121017
1018// Deprecated 04/2023.
1019#if BUILDFLAG(IS_CHROMEOS_ASH)
1020 registry->RegisterStringPref(kConsolidatedConsentTrial, std::string());
1021#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Roland Bock8e21dd022023-04-27 09:33:481022
1023// Deprecated 04/2023.
1024#if BUILDFLAG(IS_CHROMEOS_ASH)
1025 registry->RegisterBooleanPref(kEnrollmentIdUploadedOnChromad, false);
1026 registry->RegisterTimePref(kLastChromadMigrationAttemptTime,
1027 /*default_value=*/base::Time());
1028#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Pilar Molina Lopezef825502023-05-12 18:08:481029
1030 // Deprecated 05/2023.
Colin Blundella2aea272023-05-15 09:50:001031 registry->RegisterBooleanPref(kForceEnablePepperVideoDecoderDevAPI, false);
1032
1033 // Deprecated 05/2023.
Pilar Molina Lopezef825502023-05-12 18:08:481034 registry->RegisterBooleanPref(kUseMojoVideoDecoderForPepperAllowed, true);
Vasiliy Telezhnikov2a786452023-05-12 23:53:371035
1036 // Deprecated 05/2023.
1037 registry->RegisterBooleanPref(kPPAPISharedImagesSwapChainAllowed, true);
Ramin Halavatiec90e022023-05-23 13:55:051038
1039// Deprecated 05/2023.
1040#if BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
1041 registry->RegisterTimePref(kScreenAIScheduledDeletionTimePrefName,
1042 base::Time());
1043#endif
Cathy Li7ff029622023-05-26 04:56:521044
1045// Deprecated 05/2023
1046#if BUILDFLAG(IS_ANDROID)
1047 registry->RegisterTimePref(kWeeklyStatsReportingTimestamp, base::Time());
1048#endif // BUILDFLAG(IS_ANDROID)
Hidehiko Abead7991f22023-05-31 14:32:221049
1050// Deprecated 05/2023.
1051#if BUILDFLAG(IS_CHROMEOS_ASH)
1052 registry->RegisterListPref(kSupervisedUsersFirstRun);
1053 registry->RegisterDictionaryPref(kSupervisedUserSyncId);
1054 registry->RegisterDictionaryPref(kSupervisedUserManagers);
1055 registry->RegisterDictionaryPref(kSupervisedUserManagerNames);
1056 registry->RegisterDictionaryPref(kSupervisedUserManagerDisplayEmails);
1057
1058 registry->RegisterDictionaryPref(kSupervisedUserPasswordSchema);
1059 registry->RegisterDictionaryPref(kSupervisedUserPasswordSalt);
1060 registry->RegisterDictionaryPref(kSupervisedUserPasswordRevision);
1061
1062 registry->RegisterDictionaryPref(kSupervisedUserNeedPasswordUpdate);
1063 registry->RegisterDictionaryPref(kSupervisedUserIncompleteKey);
1064#endif
Eshwar Stalin883b5a72023-07-11 02:05:591065
1066// Deprecated 07/2023
1067#if !BUILDFLAG(IS_ANDROID)
1068 registry->RegisterBooleanPref(kLegacyHoverCardImagesEnabled, false);
1069#endif // !BUILDFLAG(IS_ANDROID)
Etienne Bergeron6ac228e2023-08-02 17:39:041070
1071 // Deprecated 07/2023.
1072 registry->RegisterIntegerPref(kShutdownNumProcesses, 0);
1073 registry->RegisterIntegerPref(kShutdownNumProcessesSlow, 0);
Etienne Bergeronec5c88fb2023-08-07 15:09:391074 registry->RegisterIntegerPref(kShutdownType, 0);
Daniel Ruberya440a6b12023-09-08 22:04:331075
1076 // Deprecated 09/2023.
1077#if BUILDFLAG(IS_WIN)
1078 registry->RegisterDictionaryPref(kSwReporter);
1079 registry->RegisterDictionaryPref(kChromeCleaner);
1080#endif
Ahmed Mehfooze6c06892023-09-14 00:48:171081
1082 // Deprecated 09/2023.
1083#if BUILDFLAG(IS_CHROMEOS_ASH)
1084 registry->RegisterBooleanPref(kGestureEducationNotificationShown, true);
1085#endif
Lei Zhangb76b80e32020-04-08 16:58:161086}
1087
James Cook0ba192bf2017-12-01 20:53:111088// Register prefs used only for migration (clearing or moving to a new key).
1089void RegisterProfilePrefsForMigration(
1090 user_prefs::PrefRegistrySyncable* registry) {
Ben Schwartz135746c2020-05-14 04:37:031091 chrome_browser_net::secure_dns::RegisterProbesSettingBackupPref(registry);
wutao2e24aff2020-04-03 17:01:021092
Mihai Sardarescu3a27a8b2022-05-30 14:01:491093#if BUILDFLAG(ENABLE_DICE_SUPPORT)
Mariam Ali15a343d2023-08-28 15:56:501094 // Deprecated 06/2022
1095 // TODO(crbug.com/1476489): Remove when unit test code is updated.
Mihai Sardarescu3a27a8b2022-05-30 14:01:491096 registry->RegisterBooleanPref(kTokenServiceDiceCompatible, false);
1097#endif // BUILDFLAG(ENABLE_DICE_SUPPORT)
Theodore Olsauskas-Warren0b852302022-06-28 12:05:071098
Theodore Olsauskas-Warren221e3ecd2022-09-08 08:21:241099 // Deprecated 09/2022
1100 registry->RegisterBooleanPref(kPrivacySandboxFirstPartySetsDataAccessAllowed,
1101 true);
Colin Kincaidf11f8562022-09-14 15:41:061102
1103#if BUILDFLAG(IS_CHROMEOS_ASH)
1104 registry->RegisterIntegerPref(kClipboardHistoryNewFeatureBadgeCount, 0);
1105#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Kirubel Aklilud8f571c92022-09-22 16:37:441106
Martin Kreichgauerc86cc652022-10-28 16:52:041107#if BUILDFLAG(ENABLE_EXTENSIONS)
1108 // Deprecated 10/2022.
1109 registry->RegisterBooleanPref(kLoadCryptoTokenExtension, false);
1110#endif
Yulun Wu066dab712022-11-01 17:20:241111
1112// Deprecated 10/2022.
1113#if BUILDFLAG(IS_CHROMEOS_ASH)
1114 registry->RegisterIntegerPref(kSuggestedContentInfoShownInLauncher, 0);
1115 registry->RegisterBooleanPref(kSuggestedContentInfoDismissedInLauncher,
1116 false);
1117#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Peter Birk Pakkenberg71a43942023-01-04 13:50:371118 // Deprecated 10/2022.
1119 registry->RegisterDictionaryPref(kOriginTrialPrefKey,
1120 PrefRegistry::LOSSY_PREF);
Jan Keitel4707c1f2022-11-30 11:08:591121
1122 // Deprecated 11/2022.
1123 registry->RegisterBooleanPref(kAutofillAssistantEnabled, true);
1124 registry->RegisterBooleanPref(kAutofillAssistantConsent, false);
1125 registry->RegisterBooleanPref(kAutofillAssistantTriggerScriptsEnabled, true);
1126 registry->RegisterBooleanPref(kAutofillAssistantTriggerScriptsIsFirstTimeUser,
1127 true);
Vishwas Uppoorbcf36722022-12-30 18:55:221128
1129 // Deprecated 12/2022.
1130 registry->RegisterBooleanPref(kAutofillWalletImportStorageCheckboxState,
1131 true);
Mikel Astiz231dd522023-04-23 15:51:441132 registry->RegisterBooleanPref(kDeprecatedReadingListHasUnseenEntries, false);
Daseul Lee56c5a8d2023-01-17 17:18:461133
1134 // Deprecated 01/2023.
1135 registry->RegisterBooleanPref(
1136 kFileSystemSyncAccessHandleAsyncInterfaceEnabled, false);
mark a. foltz264816212023-01-19 21:10:461137
1138 // Deprecated 01/2023.
1139#if !BUILDFLAG(IS_ANDROID)
1140 registry->RegisterListPref(kMediaRouterTabMirroringSources);
1141#endif // !BUILDFLAG(IS_ANDROID)
Mahmoud Rashad96ac6022023-01-26 23:48:181142
1143 // Deprecated 01/2023.
1144 registry->RegisterIntegerPref(kAutofillCreditCardSigninPromoImpressionCount,
1145 0);
Nasser Al-shawwafef41782023-01-27 20:43:501146
1147 // Deprecated 01/2023.
1148 registry->RegisterListPref(kSendDownloadToCloudPref);
James Cook0ba192bf2017-12-01 20:53:111149
Osama Fathy592e239a2023-02-02 15:26:131150// Deprecated 02/2023.
1151#if BUILDFLAG(IS_CHROMEOS_ASH)
1152 registry->RegisterBooleanPref(kArcTermsShownInOobe, false);
1153#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Maksim Moskvitin265fd062023-02-17 13:04:221154
1155 // Deprecated 02/2023.
1156 registry->RegisterDictionaryPref(kSyncInvalidationVersions);
1157 registry->RegisterDictionaryPref(kSyncInvalidationVersions2);
Lei Zhang52efbb02023-02-21 22:56:381158
1159 // Deprecated 02/2023.
Lei Zhang5e1ffd62023-02-23 17:52:441160 registry->RegisterBooleanPref(kClearPluginLSODataEnabled, false);
Lei Zhang543294f2023-02-23 19:53:431161 registry->RegisterDictionaryPref(kContentSettingsPluginAllowlist);
Lei Zhang5e1ffd62023-02-23 17:52:441162 registry->RegisterBooleanPref(kPepperFlashSettingsEnabled, false);
Lei Zhang52efbb02023-02-21 22:56:381163 registry->RegisterBooleanPref(kPluginsAllowOutdated, false);
Lei Zhang701e2342023-02-22 00:39:421164 registry->RegisterFilePathPref(kPluginsLastInternalDirectory,
1165 base::FilePath());
1166 registry->RegisterListPref(kPluginsPluginsList);
Lei Zhang52efbb02023-02-21 22:56:381167 registry->RegisterBooleanPref(kPluginsShowDetails, false);
Brittany Hartmire8a36b6e42023-02-24 23:09:091168
1169// Deprecated 02/2023.
1170#if BUILDFLAG(IS_CHROMEOS_ASH)
1171 registry->RegisterBooleanPref(kHasSeenSmartLockSignInRemovedNotification,
1172 false);
1173#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Ari Chivukula951893d2023-03-03 18:03:291174
1175 // Deprecated 03/2023.
1176 registry->RegisterTimePref(
1177 kGoogleSearchDomainMixingMetricsEmitterLastMetricsTime, base::Time());
conniekxu4d14f65c2023-03-28 20:56:361178
1179 // Deprecated 03/2023.
1180#if BUILDFLAG(IS_CHROMEOS_ASH)
1181 registry->RegisterIntegerPref(kDarkLightModeNudgeLeftToShowCount,
1182 ash::kDarkLightModeNudgeMaxShownCount);
1183#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Adam Langley390670302023-03-31 00:43:311184
1185 // Deprecated 03/2023.
1186#if BUILDFLAG(IS_WIN)
1187 registry->RegisterBooleanPref(kWebAuthnLastOperationWasNativeAPI, false);
1188#endif
Richard Chui821cdad2023-04-07 21:39:571189
1190// Deprecated 04/2023.
1191#if BUILDFLAG(IS_CHROMEOS_ASH)
1192 registry->RegisterBooleanPref(kBentoBarEnabled, false);
1193 registry->RegisterBooleanPref(kUserHasUsedDesksRecently, false);
1194#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Dan Harrington83791492023-04-10 20:49:271195
1196// Deprecated 04/2023.
1197#if BUILDFLAG(IS_ANDROID)
1198 registry->RegisterListPref(kBackoff);
1199 registry->RegisterBooleanPref(kUserSettingEnabled, true);
1200 registry->RegisterTimePref(kLimitlessPrefetchingEnabledTimePref,
1201 base::Time());
1202 registry->RegisterStringPref(kPrefetchTestingHeaderPref, std::string());
1203 registry->RegisterBooleanPref(kEnabledByServer, false);
1204 registry->RegisterTimePref(kNextForbiddenCheckTimePref, base::Time());
1205 registry->RegisterStringPref(kPrefetchCachedGCMToken, std::string());
1206#endif
Artem Sumaneev77f80bb2023-04-11 14:04:581207
1208 // Deprecated 04/2023.
1209 registry->RegisterDictionaryPref(kTypeSubscribedForInvalidations);
1210 registry->RegisterStringPref(kActiveRegistrationToken, std::string());
1211 registry->RegisterStringPref(kFCMInvalidationClientIDCache, std::string());
Dan Harrington899e25232023-04-11 18:23:571212
1213 // Deprecated 04/2023.
1214#if BUILDFLAG(IS_ANDROID)
1215 ntp_snippets::prefs::RegisterProfilePrefsForMigrationApril2023(registry);
1216#endif
Jérémie Boulic8d672f22023-04-18 02:44:051217
1218// Deprecated 04/2023.
1219#if BUILDFLAG(IS_CHROMEOS_ASH)
1220 registry->RegisterBooleanPref(kOfficeFilesAlwaysMove, false);
1221 registry->RegisterBooleanPref(kOfficeMoveConfirmationShown, false);
1222#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Brittany Hartmire402a3922023-04-18 22:15:361223
1224// Deprecated 04/2023.
1225#if BUILDFLAG(IS_CHROMEOS_ASH)
1226 registry->RegisterBooleanPref(kProximityAuthIsChromeOSLoginEnabled, false);
1227#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Brittany Hartmire22aa1ae82023-05-09 17:37:231228
1229// Deprecated 05/2023.
1230#if BUILDFLAG(IS_CHROMEOS_ASH)
1231 registry->RegisterBooleanPref(kSmartLockSigninAllowed, false);
1232#endif // BUILDFLAG(IS_CHROMEOS_ASH)
David Trainorb7400c22023-05-10 19:17:061233
1234 // Deprecated 05/2023.
1235#if BUILDFLAG(IS_ANDROID)
1236 registry->RegisterStringPref(kVideoTutorialsPreferredLocaleKey,
1237 std::string());
1238 registry->RegisterTimePref(kVideoTutorialsLastUpdatedTimeKey, base::Time());
1239#endif // BUILDFLAG(IS_ANDROID)
Peter Marshall7fdea2b2023-05-15 01:16:381240
1241// Deprecated 05/2023.
1242#if BUILDFLAG(IS_CHROMEOS_ASH)
1243 registry->RegisterBooleanPref(kOfficeSetupComplete, false);
1244#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Elias Khsheibund1700562023-05-15 13:31:211245
1246// Deprecated 05/2023.
1247#if BUILDFLAG(IS_ANDROID)
1248 registry->RegisterIntegerPref(kTimesUPMAuthErrorShown, 0);
1249#endif // BUILDFLAG(IS_ANDROID)
Maciek Slusarczyk56833f02023-05-19 09:02:141250
1251// Deprecated 05/2023.
1252#if BUILDFLAG(IS_CHROMEOS_ASH)
1253 registry->RegisterStringPref(kSamlPasswordSyncToken, std::string());
1254#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Michael Checo1f8625942023-05-23 19:33:471255
1256// Deprecated 05/2023.
1257#if BUILDFLAG(IS_CHROMEOS_ASH)
1258 registry->RegisterBooleanPref(kEventRemappedToRightClick, false);
1259#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Alan Cutter3bfce6e2023-06-07 01:53:021260
Alan Cutter086bdf72023-06-09 02:40:111261// Deprecated 06/2023.
1262#if BUILDFLAG(IS_CHROMEOS_ASH)
1263 registry->RegisterBooleanPref(kWebAppCalculatorAppErasureFixAppliedPref,
1264 false);
1265#endif // BUILDFLAG(IS_CHROMEOS_ASH)
1266
Alan Cutter3bfce6e2023-06-07 01:53:021267 // Deprecated 06/2023.
1268 registry->RegisterDictionaryPref(kWebAppsExtensionIDs);
Marc Treib7aaf21332023-06-14 08:30:011269
1270 // Deprecated 06/2023.
1271#if BUILDFLAG(IS_CHROMEOS_ASH)
1272 registry->RegisterBooleanPref(kOsSyncPrefsMigrated, false);
1273#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Yue Zhangf7cf6712023-06-16 18:11:321274
1275 // Deprecated 06/2023.
1276#if !BUILDFLAG(IS_ANDROID)
1277 registry->RegisterBooleanPref(kShouldShowSidePanelBookmarkTab, false);
1278#endif // !BUILDFLAG(IS_ANDROID)
Jian Li7541a082023-06-18 23:52:141279
1280 // Deprecated 06/2023.
1281#if BUILDFLAG(ENABLE_FEED_V2)
1282 registry->RegisterIntegerPref(kVideoPreviewsType, 1);
1283#endif // BUILDFLAG(ENABLE_FEED_V2)
Maciek Slusarczyk9fed52232023-06-21 14:46:071284
1285// Deprecated 06/2023.
1286#if BUILDFLAG(IS_CHROMEOS_ASH)
1287 registry->RegisterTimePref(kGaiaLastOnlineSignInTime, base::Time());
1288 registry->RegisterTimePref(kSAMLLastGAIASignInTime, base::Time());
1289#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Mihai Sardarescu6db89cf2023-07-04 07:36:021290
Anthony Cui5e5dad9322023-07-10 17:34:541291 // Deprecated 06/2023.
1292#if BUILDFLAG(IS_ANDROID)
1293 registry->RegisterBooleanPref(kPrefExplicitLanguageAskShown, false);
1294#endif // BUILDFLAG(IS_ANDROID)
1295
Mihai Sardarescu6db89cf2023-07-04 07:36:021296// Deprecated 07/2023.
1297#if !BUILDFLAG(IS_CHROMEOS_ASH)
1298 registry->RegisterIntegerPref(kUnifiedConsentMigrationState, 0);
1299#endif // !BUILDFLAG(IS_CHROMEOS_ASH)
Viktor Semeniuk13075de02023-07-18 08:24:361300
1301 // Deprecated 07/2023
1302 registry->RegisterBooleanPref(kPasswordsGroupingInfoRequested, false);
Hui Yingstd4c7a572023-07-18 18:16:151303
1304// Deprecated 07/2023.
1305#if BUILDFLAG(IS_CHROMEOS_ASH)
1306 registry->RegisterIntegerPref(kPowerMetricsIdleScreenOffCount, 0);
1307 registry->RegisterIntegerPref(kPowerMetricsIdleSuspendCount, 0);
1308 registry->RegisterIntegerPref(kPowerMetricsLidClosedSuspendCount, 0);
1309#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Christoph Schlosser1f1ec9b2023-07-26 08:12:561310
1311// Deprecated 07/2023.
1312#if BUILDFLAG(IS_CHROMEOS_ASH)
1313 registry->RegisterIntegerPref(kHatsPrivacyHubBaselineIsSelected, false);
1314 registry->RegisterIntegerPref(kHatsPrivacyHubBaselineCycleEndTs, 0);
1315#endif // BUILDFLAG(IS_CHROMEOS_ASH)
François Degros82e8d052023-08-15 19:44:231316
1317 // Deprecated 08/2023.
1318 registry->RegisterIntegerPref(kDriveFsBulkPinningMaxQueueSize, 0);
Nicola Tommasiff549832023-09-04 11:35:061319
1320 // Deprecated 09/2023.
1321 registry->RegisterBooleanPref(kPrivacySandboxM1Unrestricted, false);
Daniel Ruberya440a6b12023-09-08 22:04:331322#if BUILDFLAG(IS_WIN)
1323 registry->RegisterDictionaryPref(kSwReporter);
1324 registry->RegisterDictionaryPref(kSettingsResetPrompt);
1325 registry->RegisterDictionaryPref(kChromeCleaner);
1326#endif
Lily Chen492c670f2023-09-15 21:35:471327 registry->RegisterBooleanPref(kDownloadBubbleEnabled, true);
Ankush Singh041ec0d2023-09-21 09:06:131328 registry->RegisterBooleanPref(kPrivacySandboxManuallyControlled, false);
Mikel Astiz3dc3dabc2023-09-25 19:32:211329#if BUILDFLAG(IS_CHROMEOS_ASH)
1330 registry->RegisterBooleanPref(kSyncInitialSyncFeatureSetupCompleteOnAsh,
1331 false);
1332#endif
Osama Fathy592e239a2023-02-02 15:26:131333}
Rushan Suleymanov95b36922023-08-03 17:17:411334
[email protected]572f40c9b2012-07-06 20:35:331335} // namespace
1336
John Palmer1e70a002023-08-15 02:20:341337std::string GetCountry() {
1338 if (!g_browser_process || !g_browser_process->variations_service()) {
1339 // This should only happen in tests. Ideally this would be guarded by
1340 // CHECK_IS_TEST, but that is not set on Android, so no specific guard.
1341 return std::string();
1342 }
1343 return std::string(
1344 g_browser_process->variations_service()->GetStoredPermanentCountry());
1345}
1346
[email protected]4082306d92013-02-21 14:51:011347void RegisterLocalState(PrefRegistrySimple* registry) {
Chris Hamilton65c41312020-06-10 13:14:401348 // Call outs to individual subsystems that register Local State (browser-wide)
1349 // prefs en masse. See RegisterProfilePrefs for per-profile prefs. Please
1350 // keep this list alphabetized.
Amanda Lin Dietz8864d302023-06-26 18:36:391351#if BUILDFLAG(IS_ANDROID)
1352 accessibility::AccessibilityPrefsController::RegisterLocalStatePrefs(
1353 registry);
1354#endif
[email protected]b1de2c72013-02-06 02:45:471355 browser_shutdown::RegisterPrefs(registry);
[email protected]b1de2c72013-02-06 02:45:471356 BrowserProcessImpl::RegisterPrefs(registry);
Chris Palmerac7d75642017-11-22 20:12:541357 ChromeContentBrowserClient::RegisterLocalStatePrefs(registry);
Elaine Chienf8d13692021-07-26 23:05:561358 chrome_labs_prefs::RegisterLocalStatePrefs(registry);
[email protected]4a55a712014-06-08 16:50:341359 ChromeMetricsServiceClient::RegisterPrefs(registry);
Dominique Fauteux-Chapleau0e897db02021-04-19 18:42:221360 chrome::enterprise_util::RegisterLocalStatePrefs(registry);
sorinebcfc8dd2016-08-12 21:57:181361 component_updater::RegisterPrefs(registry);
Alex Chen9e56f7352023-01-20 22:56:151362 domain_reliability::RegisterPrefs(registry);
Mugdha Lakhanida851fd2021-03-16 18:21:021363 embedder_support::OriginTrialPrefs::RegisterPrefs(registry);
Og Astorga3089fd82021-09-21 00:02:371364 enterprise_reporting::RegisterLocalStatePrefs(registry);
[email protected]b1de2c72013-02-06 02:45:471365 ExternalProtocolHandler::RegisterPrefs(registry);
sdefresne8593e6432015-12-01 12:38:081366 flags_ui::PrefServiceFlagsStorage::RegisterPrefs(registry);
[email protected]e6933d2a2013-03-12 22:32:211367 GpuModeManager::RegisterPrefs(registry);
Miyoung Shin23737f62019-07-23 15:43:311368 signin::IdentityManager::RegisterLocalStatePrefs(registry);
Anthony Vallee-Dubois43fded9702020-06-19 16:30:381369 invalidation::FCMInvalidationService::RegisterPrefs(registry);
Maksim Moskvitinf5f5f736c2021-01-12 12:13:281370 invalidation::InvalidatorRegistrarWithMemory::RegisterPrefs(registry);
1371 invalidation::PerUserTopicSubscriptionManager::RegisterPrefs(registry);
Anthony Vallee-Dubois6f993122018-09-17 16:13:281372 language::GeoLanguageProvider::RegisterLocalStatePrefs(registry);
Alexandre Frechette38f4ef92019-02-25 16:31:571373 language::UlpLanguageCodeLocator::RegisterLocalStatePrefs(registry);
Sebastien Marchand5a63997a2019-09-27 19:15:341374 memory::EnterpriseMemoryLimitPrefObserver::RegisterPrefs(registry);
Roger McFarlane1c1147ae2022-11-07 17:25:171375 metrics::RegisterDemographicsLocalStatePrefs(registry);
[email protected]d0ab865b2014-06-04 19:41:341376 network_time::NetworkTimeTracker::RegisterPrefs(registry);
rajendrant5fb61c52022-11-21 19:42:551377 optimization_guide::prefs::RegisterLocalStatePrefs(registry);
Tonko Sabolčec6f271d32018-08-17 14:35:471378 password_manager::PasswordManager::RegisterLocalPrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101379 policy::BrowserPolicyConnector::RegisterPrefs(registry);
Jayee7b9b6df2023-07-31 16:39:241380 policy::LocalTestPolicyProvider::RegisterLocalStatePrefs(registry);
Yann Dago9c1e19512022-02-28 22:27:311381 policy::ManagementService::RegisterLocalStatePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101382 policy::PolicyStatisticsCollector::RegisterPrefs(registry);
[email protected]b1de2c72013-02-06 02:45:471383 PrefProxyConfigTrackerImpl::RegisterPrefs(registry);
Thomas Tanglc67ace42019-06-07 19:31:501384 ProfileAttributesEntry::RegisterLocalStatePrefs(registry);
Alex Ilinbb08a0d2021-07-08 09:37:241385 ProfileAttributesStorage::RegisterPrefs(registry);
Nick Harper030046f2019-09-05 23:36:091386 ProfileNetworkContextService::RegisterLocalStatePrefs(registry);
[email protected]de71ae992013-07-18 03:30:381387 profiles::RegisterPrefs(registry);
Illia Klimov4b72378ed2022-07-18 13:46:571388#if BUILDFLAG(IS_ANDROID)
1389 PushMessagingServiceImpl::RegisterPrefs(registry);
1390#endif
[email protected]ceafc462013-11-04 12:26:031391 RegisterScreenshotPrefs(registry);
Luke Zielinski63784cd2018-05-22 14:08:161392 safe_browsing::RegisterLocalStatePrefs(registry);
Ayu Ishiifbb1fad2020-06-22 20:15:071393 secure_origin_allowlist::RegisterPrefs(registry);
Min Qinc4012282022-04-15 16:53:581394 segmentation_platform::SegmentationPlatformService::RegisterLocalStatePrefs(
1395 registry);
Xiaohan Wangae7f9182022-01-16 00:37:521396#if !BUILDFLAG(IS_ANDROID)
Reilly Grantbfc2ab72021-06-02 23:57:301397 SerialPolicyAllowedPorts::RegisterPrefs(registry);
Matt Reynolds1914ff6b2022-02-04 08:48:261398 HidPolicyAllowedDevices::RegisterLocalStatePrefs(registry);
Reilly Grantbfc2ab72021-06-02 23:57:301399#endif
Mikel Astizf61f4ba02018-06-01 10:50:191400 sessions::SessionIdGenerator::RegisterPrefs(registry);
Ryan Sleevi4689ad32018-04-16 19:09:051401 SSLConfigServiceManager::RegisterPrefs(registry);
Michael Giuffridab41fa5c42017-11-13 23:30:571402 subresource_filter::IndexedRulesetVersion::RegisterPrefs(registry);
Matt Menke4dfb375c2018-06-13 18:06:311403 SystemNetworkContextManager::RegisterPrefs(registry);
Patricia Alfonsoc6f40b5c2023-09-14 21:02:431404 tpcd::experiment::RegisterLocalStatePrefs(registry);
Oksana Zhuravlova58c85282022-06-14 20:24:281405 tracing::RegisterPrefs(registry);
wafflesd2d9a332016-04-09 01:59:571406 update_client::RegisterPrefs(registry);
Michael Giuffridab41fa5c42017-11-13 23:30:571407 variations::VariationsService::RegisterPrefs(registry);
[email protected]cc36c2c2012-03-01 00:57:341408
Chris Hamilton65c41312020-06-10 13:14:401409 // Individual preferences. If you have multiple preferences that should
1410 // clearly be grouped together, please group them together into a helper
1411 // function called above. Please keep this list alphabetized.
1412 registry->RegisterBooleanPref(
1413 policy::policy_prefs::kIntensiveWakeUpThrottlingEnabled, false);
Aaron Tagliaboschi8f3a28302020-06-24 03:08:261414 registry->RegisterBooleanPref(
Matt Reichhoff2f190122021-11-02 19:28:191415 policy::policy_prefs::kUserAgentClientHintsGREASEUpdateEnabled, true);
Xiaohan Wangae7f9182022-01-16 00:37:521416#if BUILDFLAG(IS_ANDROID)
Rakina Zata Amnic123bd22020-07-31 19:08:391417 registry->RegisterBooleanPref(policy::policy_prefs::kBackForwardCacheEnabled,
1418 true);
Andrea Gomezf2316d92023-07-19 16:30:571419 registry->RegisterBooleanPref(policy::policy_prefs::kReadAloudEnabled, true);
Xiaohan Wangae7f9182022-01-16 00:37:521420#endif // BUILDFLAG(IS_ANDROID)
Chris Hamilton65c41312020-06-10 13:14:401421
1422 // Below this point is for platform-specific and compile-time conditional
1423 // calls. Please follow the helper-function-first-then-direct-calls pattern
1424 // established above, and keep things alphabetized.
1425
Denis Kuznetsov32099f32017-12-15 14:04:571426#if BUILDFLAG(ENABLE_BACKGROUND_MODE)
Michael Giuffridab41fa5c42017-11-13 23:30:571427 BackgroundModeManager::RegisterPrefs(registry);
1428#endif
1429
Xiaohan Wangae7f9182022-01-16 00:37:521430#if BUILDFLAG(IS_ANDROID)
Mark Pearsonee17df912017-04-27 21:51:041431 ::android::RegisterPrefs(registry);
Sky Maliced8eb4302020-08-03 05:46:441432
Sky Malicef7dd9422020-10-26 22:12:401433 registry->RegisterIntegerPref(first_run::kTosDialogBehavior, 0);
Yu Su4d459862021-04-15 04:19:541434 registry->RegisterBooleanPref(lens::kLensCameraAssistedSearchEnabled, true);
Xiaohan Wangae7f9182022-01-16 00:37:521435#else // BUILDFLAG(IS_ANDROID)
Nasser Al-shawwa067cc3712023-03-01 17:55:391436 enterprise_connectors::RegisterLocalStatePrefs(registry);
johnme627dc8c72016-08-19 21:49:391437 gcm::RegisterPrefs(registry);
Peter Kvitek6567a8a3a2023-01-31 01:03:571438 headless::RegisterPrefs(registry);
Tommy Lid5b7c22b2020-10-28 01:26:511439 IntranetRedirectDetector::RegisterPrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101440 media_router::RegisterLocalStatePrefs(registry);
Michael Giuffridab41fa5c42017-11-13 23:30:571441 metrics::TabStatsTracker::RegisterPrefs(registry);
Anthony Vallee-Dubois2b822262022-04-25 19:31:441442 performance_manager::user_tuning::prefs::RegisterLocalStatePrefs(registry);
Michael Giuffridab41fa5c42017-11-13 23:30:571443 RegisterBrowserPrefs(registry);
Amanda Deacon9535c972021-04-29 04:26:511444 speech::SodaInstaller::RegisterLocalStatePrefs(registry);
Michael Giuffridab41fa5c42017-11-13 23:30:571445 StartupBrowserCreator::RegisterLocalStatePrefs(registry);
1446 task_manager::TaskManagerInterface::RegisterPrefs(registry);
thestigd75ce5532015-10-05 22:08:341447 UpgradeDetector::RegisterPrefs(registry);
rbpotter73c13252021-07-16 21:29:341448 WhatsNewUI::RegisterLocalStatePrefs(registry);
Xiaohan Wangae7f9182022-01-16 00:37:521449#endif // BUILDFLAG(IS_ANDROID)
[email protected]3954f332012-02-25 02:51:541450
Nicolas Dossou-Gbete7ccc8802022-11-10 15:12:461451#if BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(ENABLE_DICE_SUPPORT)
1452 FirstRunService::RegisterLocalStatePrefs(registry);
Nicolas Dossou-Gbete2804a372022-11-09 17:25:351453#endif
1454
Yuta Hijikata31a359c2020-11-27 07:50:261455#if BUILDFLAG(IS_CHROMEOS_ASH)
Shao-Chuan Lee85a46992019-03-05 04:46:151456 arc::prefs::RegisterLocalStatePrefs(registry);
[email protected]8304f61a2014-05-24 12:17:331457 ChromeOSMetricsProvider::RegisterPrefs(registry);
Henrique Ferreiro7a4401aa2022-11-11 21:37:331458 ash::ArcKioskAppManager::RegisterPrefs(registry);
Henrique Ferreiro3d9d93d2021-02-19 22:17:391459 ash::AudioDevicesPrefHandlerImpl::RegisterPrefs(registry);
Yeunjoo Choicd4cc5382021-03-25 08:50:491460 ash::cert_provisioning::RegisterLocalStatePrefs(registry);
Yeunjoo Choi6c99c4d2022-08-08 03:11:111461 ash::CellularESimProfileHandlerImpl::RegisterLocalStatePrefs(registry);
1462 ash::ManagedCellularPrefHandler::RegisterLocalStatePrefs(registry);
Henrique Ferreirocddc8012021-03-26 00:47:151463 ash::ChromeUserManagerImpl::RegisterPrefs(registry);
Yuta Hijikata82c304ff2021-04-30 19:24:571464 crosapi::browser_util::RegisterLocalStatePrefs(registry);
Yeunjoo Choi47a6a142022-02-11 02:35:231465 ash::CupsPrintersManager::RegisterLocalStatePrefs(registry);
Yuta Hijikata368cc4b92021-12-23 07:39:101466 ash::BrowserDataMigratorImpl::RegisterLocalStatePrefs(registry);
Henrique Ferreirobbaee882022-09-08 07:15:551467 ash::bluetooth_config::BluetoothPowerControllerImpl::RegisterLocalStatePrefs(
1468 registry);
1469 ash::bluetooth_config::DeviceNameManagerImpl::RegisterLocalStatePrefs(
Gordon Setob2b7c7bc2021-10-12 17:42:551470 registry);
Henrique Ferreirod71de902021-05-10 18:57:111471 ash::DemoModeResourcesRemover::RegisterLocalStatePrefs(registry);
1472 ash::DemoSession::RegisterLocalStatePrefs(registry);
1473 ash::DemoSetupController::RegisterLocalStatePrefs(registry);
Henrique Ferreiro7967dce2021-09-23 11:37:471474 ash::DeviceNameStore::RegisterLocalStatePrefs(registry);
Anthony Vallee-Dubois85edf222020-03-24 20:30:021475 chromeos::DeviceOAuth2TokenStoreChromeOS::RegisterPrefs(registry);
Yeunjoo Choid461f872021-03-11 06:52:191476 ash::device_settings_cache::RegisterPrefs(registry);
Henrique Ferreirod1c3fe72021-05-14 13:26:151477 ash::EnableAdbSideloadingScreen::RegisterPrefs(registry);
Hirthanan Subenderan088f7322023-09-20 15:10:291478 ash::report::ReportController::RegisterPrefs(registry);
Yeunjoo Choif3fe34c2022-11-04 02:02:301479 ash::EnableDebuggingScreenHandler::RegisterPrefs(registry);
Yeunjoo Choid0b242f2022-07-28 02:23:021480 ash::FastTransitionObserver::RegisterPrefs(registry);
Danila Kuzmin90a42f02021-12-08 14:00:161481 ash::HWDataUsageController::RegisterLocalStatePrefs(registry);
Yeunjoo Choi4530b1792021-05-10 02:32:271482 ash::KerberosCredentialsManager::RegisterLocalStatePrefs(registry);
Irina Fedorova13745422022-07-15 12:59:001483 ash::KioskAppManager::RegisterLocalStatePrefs(registry);
Henrique Ferreiro26ed25a2021-02-01 21:59:291484 ash::KioskCryptohomeRemover::RegisterPrefs(registry);
Henrique Ferreirodef18c22021-11-04 19:36:001485 ash::language_prefs::RegisterPrefs(registry);
Henrique Ferreiro234c7dff2022-09-08 02:44:541486 ash::local_search_service::SearchMetricsReporter::RegisterLocalStatePrefs(
1487 registry);
Henrique Ferreirob403be32021-09-22 07:15:361488 ash::login::SecurityTokenSessionController::RegisterLocalStatePrefs(registry);
Ahmed Nasrbe0670b72022-03-09 23:28:171489 ash::reporting::LoginLogoutReporter::RegisterPrefs(registry);
Henrique Ferreirocddc8012021-03-26 00:47:151490 ash::MultiProfileUserController::RegisterPrefs(registry);
Yeunjoo Choi6c99c4d2022-08-08 03:11:111491 ash::NetworkMetadataStore::RegisterPrefs(registry);
Henrique Ferreiroe2cbaaf2022-01-10 15:02:231492 ash::NetworkThrottlingObserver::RegisterPrefs(registry);
Yeunjoo Choic2000932021-06-10 01:54:081493 ash::PowerMetricsReporter::RegisterLocalStatePrefs(registry);
Henrique Ferreiroa8763b62021-10-13 18:37:531494 ash::platform_keys::KeyPermissionsManagerImpl::RegisterLocalStatePrefs(
Omar Morsi4febb4d2020-10-30 07:55:211495 registry);
Yeunjoo Choif3c7e402021-06-04 04:28:561496 ash::power::auto_screen_brightness::MetricsReporter::RegisterLocalStatePrefs(
1497 registry);
Henrique Ferreiro4b21d142021-11-10 11:47:371498 ash::Preferences::RegisterPrefs(registry);
Henrique Ferreirod1c3fe72021-05-14 13:26:151499 ash::ResetScreen::RegisterPrefs(registry);
Henrique Ferreiro4b21d142021-11-10 11:47:371500 ash::SchedulerConfigurationManager::RegisterLocalStatePrefs(registry);
Yeunjoo Choicf61fba2021-04-23 02:43:091501 ash::ServicesCustomizationDocument::RegisterPrefs(registry);
Yuta Hijikata4538fc02023-09-26 15:19:551502 ash::standalone_browser::migrator_util::RegisterLocalStatePrefs(registry);
Henrique Ferreirob403be32021-09-22 07:15:361503 ash::StartupUtils::RegisterPrefs(registry);
Yeunjoo Choid461f872021-03-11 06:52:191504 ash::StatsReportingController::RegisterLocalStatePrefs(registry);
Yeunjoo Choi03b09c62021-02-18 21:40:051505 ash::system::AutomaticRebootManager::RegisterPrefs(registry);
Yeunjoo Choi953a4c32021-10-15 05:20:441506 ash::TimeZoneResolver::RegisterPrefs(registry);
Henrique Ferreirocddc8012021-03-26 00:47:151507 ash::UserImageManager::RegisterPrefs(registry);
Henrique Ferreirod70b5c22021-04-30 10:55:271508 ash::UserSessionManager::RegisterPrefs(registry);
Henrique Ferreiro26ed25a2021-02-01 21:59:291509 ash::WebKioskAppManager::RegisterPrefs(registry);
Xiaochu Liu48ab5932018-05-11 03:44:041510 component_updater::MetadataTable::RegisterPrefs(registry);
Henrique Ferreirob902d6c2021-10-14 19:55:441511 ash::CryptAuthDeviceIdProviderImpl::RegisterLocalPrefs(registry);
[email protected]5a145e82014-05-29 22:19:071512 extensions::ExtensionAssetsManagerChromeOS::RegisterPrefs(registry);
Aya ElAttarb4f7a5f2020-03-05 00:47:241513 extensions::ExtensionsPermissionsTracker::RegisterLocalStatePrefs(registry);
tbarzicd9a88fc92017-07-14 02:18:101514 extensions::lock_screen_data::LockScreenItemStorage::RegisterLocalState(
1515 registry);
Jit Yao Yap8e247322019-06-24 16:56:591516 extensions::login_api::RegisterLocalStatePrefs(registry);
stevenjbf22f82e2016-10-26 21:47:381517 ::onc::RegisterPrefs(registry);
Jong Ahnfaf5f1f72023-01-19 03:20:441518 metrics::structured::ChromeStructuredMetricsRecorder::RegisterLocalStatePrefs(
1519 registry);
Jana Grill784b1e52020-06-26 18:22:121520 policy::AdbSideloadingAllowanceModePolicyHandler::RegisterPrefs(registry);
Sergiy Belozorov757bc002023-03-13 19:13:191521 // TODO(b/265923216): Replace with EnrollmentStateFetcher::RegisterPrefs.
Pavol Marko35bcf1a2018-05-23 15:33:071522 policy::AutoEnrollmentClientImpl::RegisterPrefs(registry);
Yeunjoo Choi7227dba2021-08-04 06:35:471523 policy::BrowserPolicyConnectorAsh::RegisterPrefs(registry);
Ashutosh Singhal96d051012023-07-26 11:00:491524 policy::CrdAdminSessionController::RegisterLocalStatePrefs(registry);
Yeunjoo Choiead8b3c2021-07-27 08:08:191525 policy::DeviceCloudPolicyManagerAsh::RegisterPrefs(registry);
[email protected]b1de2c72013-02-06 02:45:471526 policy::DeviceStatusCollector::RegisterPrefs(registry);
Nikita Podguzov72c21f02019-06-17 14:48:411527 policy::DeviceWallpaperImageExternalDataHandler::RegisterPrefs(registry);
rsorokin3c13ece2017-01-16 15:58:411528 policy::DMTokenStorage::RegisterPrefs(registry);
Sergey Poromovd6575a0b2020-05-19 21:41:091529 policy::EnrollmentRequisitionManager::RegisterPrefs(registry);
Saurabh Nijhara839c17c2020-05-19 00:18:291530 policy::MinimumVersionPolicyHandler::RegisterPrefs(registry);
Anatoliy Potapchuka460bc12021-11-05 19:23:101531 policy::EuiccStatusUploader::RegisterLocalStatePrefs(registry);
Andreea Costinasc4b76ff2019-04-11 15:52:131532 policy::TPMAutoUpdateModePolicyHandler::RegisterPrefs(registry);
glevin5dd01a72016-03-23 23:08:121533 quirks::QuirksManager::RegisterPrefs(registry);
Roman Aleksandrovd32e34e72019-05-22 17:29:501534 UpgradeDetectorChromeos::RegisterPrefs(registry);
James Hawkins225001cf2020-09-18 16:04:341535 RegisterNearbySharingLocalPrefs(registry);
Yuta Hijikata31a359c2020-11-27 07:50:261536#endif // BUILDFLAG(IS_CHROMEOS_ASH)
[email protected]b6366ffa2012-02-29 17:12:261537
Xiaohan Wangae7f9182022-01-16 00:37:521538#if BUILDFLAG(IS_CHROMEOS)
Erik Chen643355d2022-04-22 05:44:491539 chromeos::echo_offer::RegisterPrefs(registry);
Kuo-Hsin Yang40227972022-05-16 18:39:091540 memory::OOMKillsMonitor::RegisterPrefs(registry);
Ben Franz73537362021-11-08 11:53:401541 policy::SystemFeaturesDisableListPolicyHandler::RegisterPrefs(registry);
Alvin Lee99f8d9a82021-11-18 18:45:551542 policy::DlpRulesManagerImpl::RegisterPrefs(registry);
Xiaohan Wangae7f9182022-01-16 00:37:521543#endif // BUILDFLAG(IS_CHROMEOS)
Ben Franz73537362021-11-08 11:53:401544
Xiaohan Wangae7f9182022-01-16 00:37:521545#if BUILDFLAG(IS_MAC)
[email protected]b1de2c72013-02-06 02:45:471546 confirm_quit::RegisterLocalState(registry);
[email protected]425f7a02014-04-29 01:51:441547 QuitWithAppsController::RegisterPrefs(registry);
Henrik Grunelle11045a2019-04-12 09:27:271548 system_media_permissions::RegisterSystemMediaPermissionStatesPrefs(registry);
Christopher Cameron81f442e2019-11-14 06:50:141549 AppShimRegistry::Get()->RegisterLocalPrefs(registry);
[email protected]b6366ffa2012-02-29 17:12:261550#endif
[email protected]bdb8a1e2013-10-03 08:14:001551
Erik Chen38ceca082020-12-16 01:31:351552#if BUILDFLAG(IS_CHROMEOS_LACROS)
Alex Ilin953f1092021-11-26 15:49:101553 AccountCache::RegisterLocalStatePrefs(registry);
Erik Chen38ceca082020-12-16 01:31:351554 lacros_prefs::RegisterLocalStatePrefs(registry);
Polina Bondarenko3f3dc4f2022-04-25 07:55:011555 KioskSessionServiceLacros::RegisterLocalStatePrefs(registry);
Erik Chen38ceca082020-12-16 01:31:351556#endif
1557
Xiaohan Wangae7f9182022-01-16 00:37:521558#if BUILDFLAG(IS_WIN)
Will Harris265b3942019-10-21 01:01:331559 OSCrypt::RegisterLocalPrefs(registry);
Will Harris956e0ca2019-08-23 20:47:391560 registry->RegisterBooleanPref(prefs::kRendererCodeIntegrityEnabled, true);
Will Harrisf09e40d2022-06-02 21:15:401561 registry->RegisterBooleanPref(prefs::kRendererAppContainerEnabled, true);
Stefan Smolenfd3965b2021-08-17 19:27:181562 registry->RegisterBooleanPref(prefs::kBlockBrowserLegacyExtensionPoints,
1563 true);
David Bienvenu554a2592020-02-13 20:20:541564 registry->RegisterBooleanPref(
1565 policy::policy_prefs::kNativeWindowOcclusionEnabled, true);
Xiaohan Wang259f34c7a2022-03-26 23:18:191566 MediaFoundationServiceMonitor::RegisterPrefs(registry);
Will Harriseb364b2c2022-06-23 00:49:011567 os_crypt::RegisterLocalStatePrefs(registry);
Nico Webereaa08412019-08-14 01:24:371568#if BUILDFLAG(GOOGLE_CHROME_BRANDING)
Patrick Monettef8fd8b22018-05-10 20:58:041569 IncompatibleApplicationsUpdater::RegisterLocalStatePrefs(registry);
Patrick Monette6b7c475b2018-06-12 14:58:081570 ModuleDatabase::RegisterLocalStatePrefs(registry);
Patrick Monettee31f63e22018-06-06 00:10:341571 ThirdPartyConflictsManager::RegisterLocalStatePrefs(registry);
Nico Webereaa08412019-08-14 01:24:371572#endif // BUILDFLAG(GOOGLE_CHROME_BRANDING)
Xiaohan Wangae7f9182022-01-16 00:37:521573#endif // BUILDFLAG(IS_WIN)
[email protected]ceafc462013-11-04 12:26:031574
Xiaohan Wangae7f9182022-01-16 00:37:521575#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
Lei Zhang92c15542020-01-10 17:05:101576 RegisterDefaultBrowserPromptPrefs(registry);
Yann Dago0d896f62020-02-04 19:59:151577 downgrade::RegisterPrefs(registry);
Anthony Vallee-Dubois85edf222020-03-24 20:30:021578 DeviceOAuth2TokenStoreDesktop::RegisterPrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101579#endif
1580
Ramin Halavati52a9a292022-04-28 04:27:491581#if BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
Ramin Halavati69bf7752022-04-04 09:58:151582 screen_ai::RegisterLocalStatePrefs(registry);
Ramin Halavati52a9a292022-04-28 04:27:491583#endif // BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
Ramin Halavati69bf7752022-04-04 09:58:151584
Igor Ruvinov13e658e2022-12-13 03:15:201585#if BUILDFLAG(IS_WIN)
1586 PlatformAuthPolicyObserver::RegisterPrefs(registry);
1587#endif // BUILDFLAG(IS_WIN)
1588
Jack Yammine96729f72023-09-25 15:47:281589#if BUILDFLAG(ENABLE_SEARCH_ENGINE_CHOICE)
1590 SearchEngineChoiceService::RegisterLocalStatePrefs(registry);
1591#endif
1592
Chris Hamilton65c41312020-06-10 13:14:401593 // This is intentionally last.
Lei Zhangb76b80e32020-04-08 16:58:161594 RegisterLocalStatePrefsForMigration(registry);
[email protected]9acc48602009-11-30 21:18:511595}
initial.commit09911bf2008-07-26 23:55:291596
[email protected]37ca3fe02013-07-05 15:32:441597// Register prefs applicable to all profiles.
Xi Han25a7f032019-04-18 21:44:211598void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
1599 const std::string& locale) {
rkaplow058da3132015-02-19 18:18:381600 TRACE_EVENT0("browser", "chrome::RegisterProfilePrefs");
[email protected]2a5f29632012-11-26 17:17:551601 // User prefs. Please keep this list alphabetized.
Dominic Mazzoni21fb0282019-02-13 18:32:471602 AccessibilityLabelsService::RegisterProfilePrefs(registry);
James Wallace-Lee25a1b05e2018-07-24 00:06:311603 AccessibilityUIMessageHandler::RegisterProfilePrefs(registry);
Xing Liu7252b8d2020-01-22 22:12:471604 AnnouncementNotificationService::RegisterProfilePrefs(registry);
Moe Ahmadi173b0a2b2018-08-03 17:35:511605 autofill::prefs::RegisterProfilePrefs(registry);
Bernhard Bauer19190732017-09-28 09:03:331606 browsing_data::prefs::RegisterBrowserUserPrefs(registry);
Simon Hangl2d73e742023-06-16 16:52:471607 capture_policy::RegisterProfilePrefs(registry);
Doug Turner9e79cf0c2018-04-05 21:32:301608 certificate_transparency::prefs::RegisterPrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441609 ChromeContentBrowserClient::RegisterProfilePrefs(registry);
Elaine Chien07f137d2021-01-14 02:57:211610 chrome_labs_prefs::RegisterProfilePrefs(registry);
Livvie Lin9141d0f132020-03-23 22:47:041611 ChromeLocationBarModelDelegate::RegisterProfilePrefs(registry);
Colin Blundell7657b402020-02-25 09:46:501612 StatefulSSLHostStateDelegate::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441613 ChromeVersionService::RegisterProfilePrefs(registry);
Eric Secklera5c24e12018-11-28 16:09:201614 chrome_browser_net::NetErrorTabHelper::RegisterProfilePrefs(registry);
[email protected]06690dc2014-03-07 08:44:001615 chrome_prefs::RegisterProfilePrefs(registry);
Matt Jones704e1a62022-09-20 16:28:241616 commerce::RegisterPrefs(registry);
Travis Skare27cee15c2018-07-19 14:34:131617 DocumentProvider::RegisterProfilePrefs(registry);
hmaree31cadf52022-11-09 22:32:551618 enterprise::RegisterIdentifiersProfilePrefs(registry);
Owen Min9867b162022-01-20 21:39:071619 enterprise_reporting::RegisterProfilePrefs(registry);
Katie D1ca4328b2020-02-19 18:08:471620 dom_distiller::DistilledPagePrefs::RegisterProfilePrefs(registry);
1621 dom_distiller::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441622 DownloadPrefs::RegisterProfilePrefs(registry);
Moe Ahmadi656dd532021-10-06 21:59:181623 history_clusters::prefs::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441624 HostContentSettingsMap::RegisterProfilePrefs(registry);
Brandon Wylie6961a2e2018-09-19 23:03:371625 image_fetcher::ImageCache::RegisterProfilePrefs(registry);
Evan Stade7a984802020-12-14 19:10:151626 site_engagement::ImportantSitesUtil::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441627 IncognitoModePrefs::RegisterProfilePrefs(registry);
Maksim Moskvitinf5f5f736c2021-01-12 12:13:281628 invalidation::PerUserTopicSubscriptionManager::RegisterProfilePrefs(registry);
1629 invalidation::InvalidatorRegistrarWithMemory::RegisterProfilePrefs(registry);
Alexandre Frechette37edd93a2019-03-19 15:57:201630 language::LanguagePrefs::RegisterProfilePrefs(registry);
rajendrantff2361da2020-12-16 09:18:271631 login_detection::prefs::RegisterProfilePrefs(registry);
Joe DeBlasio59db500b2020-08-21 00:37:351632 lookalikes::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441633 MediaCaptureDevicesDispatcher::RegisterProfilePrefs(registry);
Guido Urdaneta9f831c22023-06-22 13:44:341634 media_device_salt::MediaDeviceIDSalt::RegisterProfilePrefs(registry);
Becca Hughes6354b6b2017-08-31 22:01:551635 MediaEngagementService::RegisterProfilePrefs(registry);
John Rummelle5621c12017-09-05 23:52:101636 MediaStorageIdSalt::RegisterProfilePrefs(registry);
Mikel Astizf4226912020-10-19 19:10:371637 metrics::RegisterDemographicsProfilePrefs(registry);
Tom Anderson1ef51d032020-02-11 01:05:081638 NotificationDisplayServiceImpl::RegisterProfilePrefs(registry);
brettw1f92eed2016-12-07 01:12:581639 NotifierStateTracker::RegisterProfilePrefs(registry);
treibbb0c5af52016-12-09 17:34:151640 ntp_tiles::MostVisitedSites::RegisterProfilePrefs(registry);
Sophie Chang5ff4b942019-05-23 20:04:321641 optimization_guide::prefs::RegisterProfilePrefs(registry);
[email protected]a8564212014-04-09 16:16:511642 password_manager::PasswordManager::RegisterProfilePrefs(registry);
anthonyvd6a43b932017-05-11 18:39:271643 payments::RegisterProfilePrefs(registry);
Anthony Vallee-Duboiscee55b12022-03-24 22:54:021644 performance_manager::user_tuning::prefs::RegisterProfilePrefs(registry);
Aisulu Rakhmetullinaac4afcb62023-07-05 18:10:041645 permissions::RegisterProfilePrefs(registry);
Evan Stade32d635a2020-04-03 18:51:251646 PermissionBubbleMediaAccessHandler::RegisterProfilePrefs(registry);
Sharon Yangc6706902018-07-16 13:06:191647 PlatformNotificationServiceImpl::RegisterProfilePrefs(registry);
Matt Reichhoff329eea7e2023-09-28 17:11:281648 plus_addresses::RegisterProfilePrefs(registry);
Aaron Colwellf94fd97a2020-07-21 19:37:081649 policy::URLBlocklistManager::RegisterProfilePrefs(registry);
Jayee07bb468c2023-06-01 18:25:311650 PolicyUI::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441651 PrefProxyConfigTrackerImpl::RegisterProfilePrefs(registry);
Simon Pelchate74bbb62021-12-03 23:57:551652 prefetch::RegisterPredictionOptionsProfilePrefs(registry);
Max Curran14dd7872023-03-20 19:57:361653 PrefetchOriginDecider::RegisterPrefs(registry);
Xi Han25a7f032019-04-18 21:44:211654 PrefsTabHelper::RegisterProfilePrefs(registry, locale);
harrisonsean04618302020-11-27 16:00:531655 privacy_sandbox::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441656 Profile::RegisterProfilePrefs(registry);
1657 ProfileImpl::RegisterProfilePrefs(registry);
Matt Menkecfef87d2017-08-03 13:03:061658 ProfileNetworkContextService::RegisterProfilePrefs(registry);
Javier Fernández García-Boente7966a892021-12-09 12:28:231659 custom_handlers::ProtocolHandlerRegistry::RegisterProfilePrefs(registry);
johnmecf2da0c2015-10-28 19:42:121660 PushMessagingAppIdentifier::RegisterProfilePrefs(registry);
Balazs Engedy715b0ec2019-12-04 15:11:451661 QuietNotificationPermissionUiState::RegisterProfilePrefs(registry);
[email protected]c753f142013-02-10 13:14:041662 RegisterBrowserUserPrefs(registry);
Amanda Velasco Gallardo25f07362022-01-28 02:08:471663 safe_browsing::file_type::RegisterProfilePrefs(registry);
Luke Zielinski12ef88552017-06-23 15:36:271664 safe_browsing::RegisterProfilePrefs(registry);
Ryan Sturm010e2f52021-01-08 00:13:561665 SearchPrefetchService::RegisterProfilePrefs(registry);
Clark DuVall8236b6a82020-05-28 22:54:321666 blocked_content::SafeBrowsingTriggeredPopupBlocker::RegisterProfilePrefs(
1667 registry);
Carlos IL06e6c8c2020-07-28 00:25:191668 security_interstitials::InsecureFormBlockingPage::RegisterProfilePrefs(
1669 registry);
Shakti Sahu93bfba22021-06-17 18:05:211670 segmentation_platform::SegmentationPlatformService::RegisterProfilePrefs(
1671 registry);
Anastasia Helfinstein33187fd2023-01-27 03:06:071672 segmentation_platform::DeviceSwitcherResultDispatcher::RegisterProfilePrefs(
1673 registry);
[email protected]37ca3fe02013-07-05 15:32:441674 SessionStartupPref::RegisterProfilePrefs(registry);
Himanshu Jajubcf3b9292019-06-07 12:54:071675 SharingSyncPreference::RegisterProfilePrefs(registry);
Evan Stade89158192021-01-27 18:45:231676 site_engagement::SiteEngagementService::RegisterProfilePrefs(registry);
Ayu Ishii73a353d2022-07-07 21:56:421677 storage::RegisterProfilePrefs(registry);
Mikel Astiz0889b2be2018-09-25 16:20:411678 sync_sessions::SessionSyncPrefs::RegisterProfilePrefs(registry);
Jeffrey Cohen053be24d2019-07-23 23:44:051679 syncer::DeviceInfoPrefs::RegisterProfilePrefs(registry);
Bernhard Bauer19190732017-09-28 09:03:331680 syncer::SyncPrefs::RegisterProfilePrefs(registry);
Mikel Astiz89473c442021-07-13 09:46:121681 syncer::SyncTransportDataPrefs::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441682 TemplateURLPrepopulateData::RegisterProfilePrefs(registry);
Patricia Alfonsoc6f40b5c2023-09-14 21:02:431683 tpcd::experiment::RegisterProfilePrefs(registry);
[email protected]e5e72cc2014-07-22 19:06:491684 translate::TranslatePrefs::RegisterProfilePrefs(registry);
Moe Ahmadi1266de82020-04-10 17:19:531685 omnibox::RegisterProfilePrefs(registry);
[email protected]855ebff2014-05-09 07:14:381686 ZeroSuggestProvider::RegisterProfilePrefs(registry);
[email protected]cc36c2c2012-03-01 00:57:341687
Nicolas MacBeth53fa8142023-06-20 15:06:091688#if !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
1689 promos_utils::RegisterProfilePrefs(registry);
1690#endif // !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
1691
Scott Violet53fb03c2021-01-15 23:48:161692#if BUILDFLAG(ENABLE_SESSION_SERVICE)
1693 RegisterSessionServiceLogProfilePrefs(registry);
Christian Dullweber0747d7c92021-05-10 10:05:131694 SessionDataService::RegisterProfilePrefs(registry);
Scott Violet53fb03c2021-01-15 23:48:161695#endif
1696
brettw00899e62016-11-12 02:10:171697#if BUILDFLAG(ENABLE_EXTENSIONS)
[email protected]17510602014-06-05 11:02:281698 ExtensionWebUI::RegisterProfilePrefs(registry);
je_julie.kim7fbb5a1a2015-02-09 17:26:051699 RegisterAnimationPolicyPrefs(registry);
mfoltz96f329c2016-01-13 18:16:581700 extensions::ActivityLog::RegisterProfilePrefs(registry);
tbarzicfa3c7ef62017-04-17 23:12:021701 extensions::AudioAPI::RegisterUserPrefs(registry);
mfoltz96f329c2016-01-13 18:16:581702 extensions::ExtensionPrefs::RegisterProfilePrefs(registry);
Devlin Cronin71f0f532018-04-26 16:35:061703 extensions::ExtensionsUI::RegisterProfilePrefs(registry);
Joel Hockeya9ccf0e2022-05-27 22:11:191704#if BUILDFLAG(IS_CHROMEOS_ASH)
1705 extensions::shared_storage::RegisterProfilePrefs(registry);
1706#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Emilia Paz363fa0062022-01-15 05:12:031707 extensions::PermissionsManager::RegisterProfilePrefs(registry);
afakhry2bd481832016-06-16 16:17:241708 extensions::RuntimeAPI::RegisterPrefs(registry);
Devlin Cronina997c8e2021-03-18 00:33:181709 // TODO(devlin): This would be more inline with the other calls here if it
1710 // were nested in either a class or separate namespace with a simple
1711 // Register[Profile]Prefs() name.
1712 extensions::RegisterSettingsOverriddenUiPrefs(registry);
Minh X. Nguyen3aa40692018-03-28 01:15:591713 update_client::RegisterProfilePrefs(registry);
brettw00899e62016-11-12 02:10:171714#endif // BUILDFLAG(ENABLE_EXTENSIONS)
[email protected]c2ac1dda2013-09-23 05:04:561715
Andy Phan99ccfb42022-11-29 18:57:071716#if BUILDFLAG(ENABLE_PDF)
1717 registry->RegisterListPref(prefs::kPdfLocalFileAccessAllowedForDomains,
1718 base::Value::List());
Hui Yingsta4a03ec82023-05-16 00:00:171719 registry->RegisterBooleanPref(prefs::kPdfUseSkiaRendererEnabled, true);
Andy Phan99ccfb42022-11-29 18:57:071720#endif // BUILDFLAG(ENABLE_PDF)
1721
Brett Wilson65f951c2016-11-03 22:06:121722#if BUILDFLAG(ENABLE_PRINT_PREVIEW)
Nicolas Ouellet-Payeur4dbdf1e52018-08-06 21:51:021723 printing::PolicySettings::RegisterProfilePrefs(registry);
Nikita Podguzov26222d12019-12-04 11:44:311724 printing::PrintPreviewStickySettings::RegisterProfilePrefs(registry);
bauerb4da36132014-12-26 19:53:131725#endif
1726
Lei Zhang92c15542020-01-10 17:05:101727#if BUILDFLAG(ENABLE_RLZ)
1728 ChromeRLZTrackerDelegate::RegisterProfilePrefs(registry);
1729#endif
1730
brettw9e85ef42016-11-01 21:01:241731#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
[email protected]503e2922023-06-23 13:38:371732 supervised_user::ChildAccountService::RegisterProfilePrefs(registry);
[email protected]1e50f232023-05-12 13:57:341733 supervised_user::SupervisedUserService::RegisterProfilePrefs(registry);
bauerb4da36132014-12-26 19:53:131734#endif
1735
Jian Lic9a227c2022-02-28 22:55:441736#if BUILDFLAG(ENABLE_FEED_V2)
1737 feed::prefs::RegisterFeedSharedProfilePrefs(registry);
1738 feed::RegisterProfilePrefs(registry);
1739#endif
1740
Xiaohan Wangae7f9182022-01-16 00:37:521741#if BUILDFLAG(IS_ANDROID)
Lei Zhang92c15542020-01-10 17:05:101742 cdm::MediaDrmStorageImpl::RegisterProfilePrefs(registry);
Sebastien Lalancette374cf6a2021-06-22 17:23:521743 content_creation::prefs::RegisterProfilePrefs(registry);
Christopher Thompson2602fea2019-11-26 19:36:541744 KnownInterceptionDisclosureInfoBarDelegate::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101745 MediaDrmOriginIdManager::RegisterProfilePrefs(registry);
1746 NotificationChannelsProviderAndroid::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101747 ntp_tiles::PopularSitesImpl::RegisterProfilePrefs(registry);
1748 OomInterventionDecider::RegisterProfilePrefs(registry);
[email protected]084f82b2013-11-01 00:09:591749 PartnerBookmarksShim::RegisterProfilePrefs(registry);
Wolfgang Billenstein546bd4d72022-09-20 11:34:261750 permissions::GeolocationPermissionContextAndroid::RegisterProfilePrefs(
1751 registry);
Xing Liu0327d832020-05-15 21:07:031752 query_tiles::RegisterPrefs(registry);
mvanouwerkerkc1751e02017-01-06 12:16:431753 RecentTabsPagePrefs::RegisterProfilePrefs(registry);
Patrick Noland87d9f842019-01-16 03:52:021754 usage_stats::UsageStatsBridge::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101755 variations::VariationsService::RegisterProfilePrefs(registry);
Ella Gebf864d372023-06-06 17:44:311756 webapps::InstallPromptPrefs::RegisterProfilePrefs(registry);
Jan Keitel98b2cc42022-09-20 05:38:391757#else // BUILDFLAG(IS_ANDROID)
Emily Shack670f745c2023-03-03 19:47:301758 bookmarks_webui::RegisterProfilePrefs(registry);
johnme627dc8c72016-08-19 21:49:391759 browser_sync::ForeignSessionHandler::RegisterProfilePrefs(registry);
Dana Fried68baeb002023-09-18 20:25:041760 BrowserFeaturePromoStorageService::RegisterProfilePrefs(registry);
evliuc5b5a722022-10-28 00:05:491761 captions::LiveTranslateController::RegisterProfilePrefs(registry);
dljames4b665b22023-09-21 19:35:081762 CartService::RegisterProfilePrefs(registry);
Nina Satragno8c832df2019-07-29 15:59:391763 ChromeAuthenticatorRequestDelegate::RegisterProfilePrefs(registry);
dljames4b665b22023-09-21 19:35:081764 commerce::ShoppingListUiTabHelper::RegisterProfilePrefs(registry);
Shakti Sahu05ea4e12023-03-28 07:33:101765 companion::PromoHandler::RegisterProfilePrefs(registry);
Anqing Zhao9595e482021-06-10 11:33:551766 DeviceServiceImpl::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101767 DevToolsWindow::RegisterProfilePrefs(registry);
Tibor Goldschwendt610d0372021-05-11 01:39:021768 DriveService::RegisterProfilePrefs(registry);
Dominique Fauteux-Chapleau130242bf2020-12-07 19:07:481769 enterprise_connectors::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101770 extensions::CommandService::RegisterProfilePrefs(registry);
1771 extensions::TabsCaptureVisibleTabFunction::RegisterProfilePrefs(registry);
gabdac09c03b2017-03-22 20:00:111772 first_run::RegisterProfilePrefs(registry);
johnme627dc8c72016-08-19 21:49:391773 gcm::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101774 HatsService::RegisterProfilePrefs(registry);
Tibor Goldschwendtf3a3ce92021-08-17 00:42:161775 NtpCustomBackgroundService::RegisterProfilePrefs(registry);
George Benz13da3df02022-01-14 00:03:521776 media_router::RegisterAccessCodeProfilePrefs(registry);
Derek Cheng23a01402018-07-24 13:38:141777 media_router::RegisterProfilePrefs(registry);
Tibor Goldschwendt53ca78b2020-10-07 19:56:181778 NewTabPageHandler::RegisterProfilePrefs(registry);
Tibor Goldschwendtbbdbe8f2021-05-20 19:27:391779 NewTabPageUI::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101780 NewTabUI::RegisterProfilePrefs(registry);
Rohit Bhatia22e544f2021-10-05 15:32:261781 ntp::SafeBrowsingHandler::RegisterProfilePrefs(registry);
kristiparkc0199772018-07-18 05:25:421782 ntp_tiles::CustomLinksManagerImpl::RegisterProfilePrefs(registry);
Jeremy Selier730b56d32021-09-17 02:59:391783 PhotosService::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101784 PinnedTabCodec::RegisterProfilePrefs(registry);
Yann Dago44d6cc322022-07-13 17:46:251785 policy::DeveloperToolsPolicyHandler::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101786 PromoService::RegisterProfilePrefs(registry);
dljames4b665b22023-09-21 19:35:081787 RecipesService::RegisterProfilePrefs(registry);
Mark Schillaciba4a7322022-06-29 15:08:351788 RegisterReadAnythingProfilePrefs(registry);
Eduard Hez55d711f2023-07-12 12:10:071789 RegisterSafetyHubProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101790 settings::SettingsUI::RegisterProfilePrefs(registry);
Victor Hugo Vianna Silva3452787c2022-07-28 23:25:301791 send_tab_to_self::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101792 signin::RegisterProfilePrefs(registry);
tmartino6254f472016-11-21 01:22:561793 StartupBrowserCreator::RegisterProfilePrefs(registry);
Roman Aroracd8462c2021-08-03 01:20:331794 tab_search_prefs::RegisterProfilePrefs(registry);
Roman Arorabc876bf2023-08-03 15:25:211795 ThemeColorPickerHandler::RegisterProfilePrefs(registry);
dljames4b665b22023-09-21 19:35:081796 toolbar::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101797 UnifiedAutoplayConfig::RegisterProfilePrefs(registry);
Caroline Rising065085a22023-02-22 14:34:091798 user_notes::RegisterProfilePrefs(registry);
dljames4b665b22023-09-21 19:35:081799
Michael Martis8b35dd72023-01-26 01:07:471800#if !BUILDFLAG(IS_CHROMEOS_LACROS)
1801 captions::LiveCaptionController::RegisterProfilePrefs(registry);
1802#endif // !BUILDFLAG(IS_CHROMEOS_LACROS)
Xiaohan Wangae7f9182022-01-16 00:37:521803#endif // BUILDFLAG(IS_ANDROID)
mvanouwerkerk9f0f38a2016-06-08 14:11:441804
Xiaohan Wangae7f9182022-01-16 00:37:521805#if BUILDFLAG(IS_CHROMEOS)
Tim Sergeant2b6bc66e2022-04-14 20:15:211806 apps::SupportedLinksInfoBarPrefsService::RegisterProfilePrefs(registry);
Maria Petrisorbb5226b2022-06-02 09:10:511807 extensions::login_api::RegisterProfilePrefs(registry);
Olya Kalitova39e913d52021-03-16 22:26:221808 extensions::platform_keys::RegisterProfilePrefs(registry);
Michael Ershovd9a627e2021-11-03 13:55:271809 certificate_manager::CertificatesHandler::RegisterProfilePrefs(registry);
Simon Hangl8ebaf732023-08-25 14:59:471810 chromeos::cloud_storage::RegisterProfilePrefs(registry);
Andrew Rayskiy0ec947f2023-08-23 09:19:541811 chromeos::cloud_upload::RegisterProfilePrefs(registry);
Michael Ershov5b2a7062022-01-17 14:28:451812 policy::PolicyCertService::RegisterProfilePrefs(registry);
Josh Simmons29bce0e82023-08-31 05:59:501813 quickoffice::RegisterProfilePrefs(registry);
Yanzhu Du76169d12022-09-21 02:53:311814 registry->RegisterBooleanPref(prefs::kDeskAPIThirdPartyAccessEnabled, false);
Yanzhu Du428de9052022-10-05 22:46:581815 registry->RegisterListPref(prefs::kDeskAPIThirdPartyAllowlist);
Vignesh Shenvif47279d2022-04-07 10:55:361816 registry->RegisterBooleanPref(prefs::kInsightsExtensionEnabled, false);
Nicolas Dossou-Gbete8bf46c12022-05-16 14:20:171817 // By default showing Sync Consent is set to true. It can changed by policy.
1818 registry->RegisterBooleanPref(prefs::kEnableSyncConsent, true);
anina koehlerf1e29df62022-08-10 07:22:321819 registry->RegisterListPref(
1820 chromeos::prefs::kKeepFullscreenWithoutNotificationUrlAllowList,
1821 PrefRegistry::PUBLIC);
Vignesh Shenvidfab2b12023-08-07 19:13:001822 ::reporting::RegisterProfilePrefs(registry);
Andrew Rayskiy16f8cab2022-12-15 16:28:331823#if BUILDFLAG(USE_CUPS)
Pranav Batrae71407672021-08-16 23:53:001824 extensions::PrintingAPIHandler::RegisterProfilePrefs(registry);
Andrew Rayskiy16f8cab2022-12-15 16:28:331825#endif // BUILDFLAG(USE_CUPS)
Xiaohan Wangae7f9182022-01-16 00:37:521826#endif // BUILDFLAG(IS_CHROMEOS)
Olya Kalitova39e913d52021-03-16 22:26:221827
Yuta Hijikata31a359c2020-11-27 07:50:261828#if BUILDFLAG(IS_CHROMEOS_ASH)
James Cookc542d992019-11-08 23:34:241829 app_list::AppListSyncableService::RegisterProfilePrefs(registry);
Nancy Wanga78b7a32021-04-28 05:10:291830 apps::AppPlatformMetricsService::RegisterProfilePrefs(registry);
Jeevan Shikarama73dec1a2022-09-08 05:51:521831 apps::AppPreloadService::RegisterProfilePrefs(registry);
Nikki Fangac3f0592023-02-14 01:31:191832 apps::deduplication::AppDeduplicationService::RegisterProfilePrefs(registry);
Tim Sergeant1231dcc2021-05-10 14:00:571833 apps::webapk_prefs::RegisterProfilePrefs(registry);
Hidehiko Abe33e9adf2017-09-13 06:12:231834 arc::prefs::RegisterProfilePrefs(registry);
James Cookc542d992019-11-08 23:34:241835 ArcAppListPrefs::RegisterProfilePrefs(registry);
Hidehiko Abe89f9b5c92023-09-19 04:37:111836 arc::ArcBootPhaseMonitorBridge::RegisterProfilePrefs(registry);
Anastasiia N0582a902021-12-08 17:44:591837 ash::AccountAppsAvailability::RegisterPrefs(registry);
Kushagra Sinhab37e24db2021-07-02 15:14:241838 account_manager::AccountManager::RegisterPrefs(registry);
Yeunjoo Choi19772c942021-03-08 14:51:111839 ash::ApkWebAppService::RegisterProfilePrefs(registry);
Yeunjoo Choi40d02412021-04-21 01:38:561840 ash::app_time::AppActivityRegistry::RegisterProfilePrefs(registry);
1841 ash::app_time::AppTimeController::RegisterProfilePrefs(registry);
Andreea Costinasc33add32023-07-13 16:57:131842 ash::AshProxyMonitor::RegisterProfilePrefs(registry);
Yeunjoo Choi65c73cc2022-08-02 05:30:161843 ash::assistant::prefs::RegisterProfilePrefs(registry);
Anastasiia N1ad94e1e2022-09-15 08:47:281844 ash::auth::AuthFactorConfig::RegisterPrefs(registry);
Yeunjoo Choi0e66c9aa2021-04-02 02:05:561845 ash::bluetooth::DebugLogsManager::RegisterPrefs(registry);
Henrique Ferreirobbaee882022-09-08 07:15:551846 ash::bluetooth_config::BluetoothPowerControllerImpl::RegisterProfilePrefs(
1847 registry);
Theo Johnson-Kanudc9f96272023-01-12 05:11:391848 ash::HatsBluetoothRevampTriggerImpl::RegisterProfilePrefs(registry);
Henrique Ferreiro2029590e2021-09-23 08:01:521849 ash::ClientAppMetadataProviderService::RegisterProfilePrefs(registry);
Yeunjoo Choi47a6a142022-02-11 02:35:231850 ash::CupsPrintersManager::RegisterProfilePrefs(registry);
Yeunjoo Choi0dc579e42022-03-23 04:14:521851 ash::device_sync::RegisterProfilePrefs(registry);
Yeunjoo Choi651766c02021-04-26 11:45:431852 ash::FamilyUserChromeActivityMetrics::RegisterProfilePrefs(registry);
1853 ash::FamilyUserMetricsService::RegisterProfilePrefs(registry);
1854 ash::FamilyUserSessionMetrics::RegisterProfilePrefs(registry);
Yeunjoo Choiebbdaa62022-10-20 01:05:311855 ash::InlineLoginHandlerImpl::RegisterProfilePrefs(registry);
Yeunjoo Choi395103872021-07-22 01:16:071856 ash::first_run::RegisterProfilePrefs(registry);
Yeunjoo Choic4e54fe2021-06-09 02:11:391857 ash::file_system_provider::RegisterProfilePrefs(registry);
Yeunjoo Choi0842edfa2021-07-29 00:53:171858 ash::full_restore::RegisterProfilePrefs(registry);
Yeunjoo Choi4530b1792021-05-10 02:32:271859 ash::KerberosCredentialsManager::RegisterProfilePrefs(registry);
Yeunjoo Choi044ea242022-03-14 12:06:291860 ash::multidevice_setup::MultiDeviceSetupService::RegisterProfilePrefs(
Jordy Greenblatt2265de702018-07-26 19:05:261861 registry);
Henrique Ferreirocddc8012021-03-26 00:47:151862 ash::MultiProfileUserController::RegisterProfilePrefs(registry);
Yeunjoo Choi6c99c4d2022-08-08 03:11:111863 ash::NetworkMetadataStore::RegisterPrefs(registry);
Yeunjoo Choic1593bf2021-04-23 03:49:251864 ash::ReleaseNotesStorage::RegisterProfilePrefs(registry);
Yeunjoo Choif5706262021-08-24 01:11:241865 ash::HelpAppNotificationController::RegisterProfilePrefs(registry);
Henrique Ferreirob3ff980b2021-07-19 09:41:271866 ash::quick_unlock::FingerprintStorage::RegisterProfilePrefs(registry);
1867 ash::quick_unlock::PinStoragePrefs::RegisterProfilePrefs(registry);
Henrique Ferreiro4b21d142021-11-10 11:47:371868 ash::Preferences::RegisterProfilePrefs(registry);
Yeunjoo Choida53f442021-09-17 01:07:361869 ash::EnterprisePrintersProvider::RegisterProfilePrefs(registry);
Yeunjoo Choi09213db2021-04-16 03:42:081870 ash::parent_access::ParentAccessService::RegisterProfilePrefs(registry);
Yue Lia3125692022-01-05 20:05:431871 quick_answers::prefs::RegisterProfilePrefs(registry);
Henrique Ferreirob3ff980b2021-07-19 09:41:271872 ash::quick_unlock::RegisterProfilePrefs(registry);
Henrique Ferreiroec8355d2021-07-20 08:20:081873 ash::RegisterSamlProfilePrefs(registry);
Yeunjoo Choi651766c02021-04-26 11:45:431874 ash::ScreenTimeController::RegisterProfilePrefs(registry);
Henrique Ferreirofad33bd2021-01-29 00:28:401875 ash::EduCoexistenceConsentInvalidationController::RegisterProfilePrefs(
yilkalc04a16dc2020-11-04 22:07:071876 registry);
Yeunjoo Choi38cea422022-10-18 06:19:171877 ash::EduCoexistenceLoginHandler::RegisterProfilePrefs(registry);
Henrique Ferreiroa264c8c02021-07-20 08:31:471878 ash::SigninErrorNotifier::RegisterPrefs(registry);
Yeunjoo Choicf61fba2021-04-23 02:43:091879 ash::ServicesCustomizationDocument::RegisterProfilePrefs(registry);
Yeunjoo Choiba3d9972022-10-11 12:50:121880 ash::settings::OSSettingsUI::RegisterProfilePrefs(registry);
Henrique Ferreirob403be32021-09-22 07:15:361881 ash::StartupUtils::RegisterOobeProfilePrefs(registry);
Jiaming Chengd3d84762023-07-20 20:47:361882 ash::UpdateNotificationShowingController::RegisterProfilePrefs(registry);
Aiden Chiavatti112d3672023-03-17 21:13:411883 ash::user_image::prefs::RegisterProfilePrefs(registry);
Henrique Ferreirocddc8012021-03-26 00:47:151884 ash::UserImageSyncObserver::RegisterProfilePrefs(registry);
Jong Ahn6f1c54a42022-01-18 00:20:561885 ChromeMetricsServiceClient::RegisterProfilePrefs(registry);
Renee Wrightc41d5432018-04-26 05:27:371886 crostini::prefs::RegisterProfilePrefs(registry);
sdefresne8593e6432015-12-01 12:38:081887 flags_ui::PrefServiceFlagsStorage::RegisterProfilePrefs(registry);
Joel Hockey7fb974342019-06-27 23:35:051888 guest_os::prefs::RegisterProfilePrefs(registry);
Toni Barzic14329d02017-07-17 21:59:121889 lock_screen_apps::StateController::RegisterProfilePrefs(registry);
Olya Kalitovac869f962018-12-04 12:01:231890 plugin_vm::prefs::RegisterProfilePrefs(registry);
GioVAX287418d2020-11-23 17:56:591891 policy::ArcAppInstallEventLogger::RegisterProfilePrefs(registry);
Bartosz Fabianowskid4d93a72018-05-17 18:49:481892 policy::AppInstallEventLogManagerWrapper::RegisterProfilePrefs(registry);
Marcelo Almeida9ef8c132019-05-13 20:19:121893 policy::StatusCollector::RegisterProfilePrefs(registry);
Henrique Ferreiroe2cbaaf2022-01-10 15:02:231894 ash::SystemProxyManager::RegisterProfilePrefs(registry);
Erik Chenc2927bbd2021-09-22 23:20:071895 ChromeShelfPrefs::RegisterProfilePrefs(registry);
stevenjbf22f82e2016-10-26 21:47:381896 ::onc::RegisterProfilePrefs(registry);
Yeunjoo Choicd4cc5382021-03-25 08:50:491897 ash::cert_provisioning::RegisterProfilePrefs(registry);
Nicholas Hollingumf4c11e32020-10-05 22:52:571898 borealis::prefs::RegisterProfilePrefs(registry);
Gavin Williamsf6781f3e2021-04-22 01:13:491899 ash::ChromeScanningAppDelegate::RegisterProfilePrefs(registry);
yilkal95d9f882021-10-18 21:59:001900 ProjectorAppClientImpl::RegisterProfilePrefs(registry);
Geng Li11526bb42022-02-15 23:59:141901 ash::floating_workspace_util::RegisterProfilePrefs(registry);
Sanja Perisic91217932022-04-13 13:45:021902 policy::RebootNotificationsScheduler::RegisterProfilePrefs(registry);
Irina Fedorova13745422022-07-15 12:59:001903 ash::KioskAppManager::RegisterProfilePrefs(registry);
Andrew Rayskiy47076d72022-09-27 18:46:141904 file_manager::file_tasks::RegisterProfilePrefs(registry);
Nigel Taoa1d4dce2022-10-18 00:01:201905 file_manager::prefs::RegisterProfilePrefs(registry);
Fergus Dall54a6a432022-11-18 17:35:291906 bruschetta::prefs::RegisterProfilePrefs(registry);
Chris Mullinse59586192023-03-06 17:42:171907 wallpaper_handlers::prefs::RegisterProfilePrefs(registry);
Vignesh Shenvi145bf6e2023-05-08 22:11:301908 ash::reporting::RegisterProfilePrefs(registry);
Yuta Hijikata31a359c2020-11-27 07:50:261909#endif // BUILDFLAG(IS_CHROMEOS_ASH)
gab3ca4a492017-03-02 00:19:411910
Darin Fisher127d5782021-01-20 20:32:341911#if BUILDFLAG(IS_CHROMEOS_LACROS)
1912 lacros_prefs::RegisterProfilePrefs(registry);
Andreea Costinas68cad91f2021-09-22 15:58:091913 chromeos::ProxyConfigServiceLacros::RegisterProfilePrefs(registry);
Ian Helmkec4a4e452022-05-09 22:17:581914 lacros_prefs::RegisterExtensionControlledAshPrefs(registry);
Irina Fedorova13745422022-07-15 12:59:001915 KioskSessionServiceLacros::RegisterProfilePrefs(registry);
Nancy Wangc84098e2022-10-24 10:30:361916 apps::WebsiteMetricsServiceLacros::RegisterProfilePrefs(registry);
Darin Fisher127d5782021-01-20 20:32:341917#endif
1918
Xiaohan Wangae7f9182022-01-16 00:37:521919#if BUILDFLAG(IS_WIN)
Alex St-Onge9e4b9b72021-06-08 15:35:541920 CdmPrefServiceHelper::RegisterProfilePrefs(registry);
Scott Violet3ff87d062021-12-21 06:10:101921 FontPrewarmerTabHelper::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441922 NetworkProfileBubble::RegisterProfilePrefs(registry);
[email protected]a4422802012-05-03 09:19:151923#endif
[email protected]eeec6ca2013-02-21 15:10:431924
Sebastien Lalancette413625312023-05-08 13:58:011925#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
1926 BUILDFLAG(IS_CHROMEOS_ASH)
Zonghan Xuc528f6e82022-08-09 22:31:581927 device_signals::RegisterProfilePrefs(registry);
Sebastien Lalancette413625312023-05-08 13:58:011928#endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ||
1929 // BUILDFLAG(IS_CHROMEOS_ASH)
Zonghan Xuc528f6e82022-08-09 22:31:581930
Nicolas Ouellet-Payeurc1b89932022-09-30 16:22:531931#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
Nicolas4b82a652019-01-04 17:42:381932 browser_switcher::BrowserSwitcherPrefs::RegisterProfilePrefs(registry);
Nicolas Ouellet-Payeurcb894532023-09-28 04:03:151933 enterprise_signin::RegisterProfilePrefs(registry);
Nicolas Ouellet-Payeur9a4a94d2018-09-17 15:26:111934#endif
1935
Xiaohan Wangae7f9182022-01-16 00:37:521936#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
Daniel Murphy3657906d2021-04-13 20:33:121937 preinstalled_apps::RegisterProfilePrefs(registry);
Becca Hughes7d2bbb82018-08-07 22:56:591938#endif
1939
Xiaohan Wangae7f9182022-01-16 00:37:521940#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS)
Kristi Parkd0f72412021-07-02 01:09:031941 sharing_hub::RegisterProfilePrefs(registry);
1942#endif
1943
Lei Zhang92c15542020-01-10 17:05:101944#if defined(TOOLKIT_VIEWS)
1945 accessibility_prefs::RegisterInvertBubbleUserPrefs(registry);
Yuheng Huang9ce54892022-05-06 19:29:391946 side_search_prefs::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101947 RegisterBrowserViewProfilePrefs(registry);
Owen Minef022e92019-10-15 21:25:211948#endif
1949
Duncan Mercer8062eef2022-12-28 22:28:371950#if BUILDFLAG(ENABLE_LENS_DESKTOP)
Juan Mojica4669f8d2021-08-05 20:01:451951 registry->RegisterBooleanPref(
1952 prefs::kLensRegionSearchEnabled, true,
1953 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
Duncan Mercer8062eef2022-12-28 22:28:371954 registry->RegisterBooleanPref(prefs::kLensDesktopNTPSearchEnabled, true);
1955#endif
1956
1957#if !BUILDFLAG(IS_ANDROID)
Martin Kreichgauerd7aa4f92022-02-22 20:46:211958 registry->RegisterBooleanPref(
1959 webauthn::pref_names::kRemoteProxiedRequestsAllowed, false);
dljames0a96ef192022-07-07 23:31:431960
Nina Satragno42747a42023-06-29 15:25:271961 registry->RegisterStringPref(
1962 webauthn::pref_names::kLastUsedPairingFromSyncPublicKey, "");
1963
Caroline Risingf4b49092023-03-23 02:28:261964 side_panel_prefs::RegisterProfilePrefs(registry);
Juan Mojica4669f8d2021-08-05 20:01:451965#endif
1966
Nina Satragnod7b8fb42022-11-10 20:43:391967 registry->RegisterBooleanPref(webauthn::pref_names::kAllowWithBrokenCerts,
1968 false);
1969
Sean Harrisonf263b732021-12-07 11:17:521970 registry->RegisterBooleanPref(prefs::kPrivacyGuideViewed, false);
Sean Harrisonf263b732021-12-07 11:17:521971
Leonard Grey812af7a2022-05-02 15:46:031972#if BUILDFLAG(IS_MAC)
1973 registry->RegisterBooleanPref(policy::policy_prefs::kScreenTimeEnabled, true);
1974#endif
1975
James Cook0ba192bf2017-12-01 20:53:111976 RegisterProfilePrefsForMigration(registry);
Alison Gale6bf2cc52022-09-08 15:11:491977
1978#if !BUILDFLAG(IS_ANDROID)
1979 registry->RegisterIntegerPref(prefs::kHighEfficiencyChipExpandedCount, 0);
Alison Gale58bb3cd52023-04-21 15:03:201980 registry->RegisterTimePref(prefs::kLastHighEfficiencyChipExpandedTimestamp,
1981 base::Time());
Florian Jacky6723cef2023-04-17 11:38:311982 permissions::PermissionHatsTriggerHelper::RegisterProfilePrefs(registry);
Alison Gale6bf2cc52022-09-08 15:11:491983#endif
Anders Hartvoll Ruudeedebdc2022-10-12 15:38:011984
1985#if BUILDFLAG(IS_ANDROID)
1986 registry->RegisterBooleanPref(prefs::kVirtualKeyboardResizesLayoutByDefault,
1987 false);
1988#endif
Kirubel Aklilubb804082022-11-10 19:02:301989
1990 registry->RegisterTimePref(prefs::kDIPSTimerLastUpdate, base::Time());
Kyungjun Lee0dcd7c3e2022-12-16 22:01:391991
1992#if BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
Ramin Halavati36b0c9e2023-07-25 17:44:151993 registry->RegisterBooleanPref(prefs::kAccessibilityPdfOcrAlwaysActive, false);
Kyungjun Lee0dcd7c3e2022-12-16 22:01:391994#endif // BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
Yuta Hijikata9cd674122023-07-29 15:43:371995
1996#if BUILDFLAG(IS_CHROMEOS_ASH)
1997 registry->RegisterBooleanPref(kClearUserDataDir1Pref, false);
1998#endif
Andrew Williams0e136592023-08-09 15:13:341999
2000 registry->RegisterBooleanPref(prefs::kBlockTruncatedCookies, true);
Dominique Fauteux-Chapleaub6be8ae2023-09-26 13:48:402001
2002#if BUILDFLAG(ENTERPRISE_DATA_CONTROLS)
2003 data_controls::RegisterProfilePrefs(registry);
2004#endif // BUILDFLAG(ENTERPRISE_DATA_CONTROLS)
initial.commit09911bf2008-07-26 23:55:292005}
license.botbf09a502008-08-24 00:55:552006
[email protected]37ca3fe02013-07-05 15:32:442007void RegisterUserProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
Xi Han25a7f032019-04-18 21:44:212008 RegisterUserProfilePrefs(registry, g_browser_process->GetApplicationLocale());
2009}
2010
2011void RegisterUserProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
2012 const std::string& locale) {
2013 RegisterProfilePrefs(registry, locale);
[email protected]2424cc52013-07-17 13:44:382014
Xiaohan Wangae7f9182022-01-16 00:37:522015#if BUILDFLAG(IS_ANDROID)
mlliuee3a405c2016-10-28 22:34:522016 ::android::RegisterUserProfilePrefs(registry);
2017#endif
Yuta Hijikata31a359c2020-11-27 07:50:262018#if BUILDFLAG(IS_CHROMEOS_ASH)
John Palmer1e70a002023-08-15 02:20:342019 ash::RegisterUserProfilePrefs(registry, locale);
Kush Sinha31d120b72023-09-04 12:21:542020 ash::TokenHandleFetcher::RegisterPrefs(registry);
Xiyuan Xia5a8c4172019-05-13 16:23:482021#endif
[email protected]37ca3fe02013-07-05 15:32:442022}
2023
[email protected]8eefe842014-01-17 06:42:402024void RegisterScreenshotPrefs(PrefRegistrySimple* registry) {
2025 registry->RegisterBooleanPref(prefs::kDisableScreenshots, false);
2026}
2027
Yuta Hijikata31a359c2020-11-27 07:50:262028#if BUILDFLAG(IS_CHROMEOS_ASH)
John Palmer1e70a002023-08-15 02:20:342029void RegisterSigninProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
2030 std::string_view country) {
Xi Han25a7f032019-04-18 21:44:212031 RegisterProfilePrefs(registry, g_browser_process->GetApplicationLocale());
John Palmer1e70a002023-08-15 02:20:342032 ash::RegisterSigninProfilePrefs(registry, country);
[email protected]37ca3fe02013-07-05 15:32:442033}
Eyor Alemayehu4b516fb2019-02-20 20:24:292034
[email protected]37ca3fe02013-07-05 15:32:442035#endif
2036
rkaplowf216caf2015-03-02 22:37:452037// This method should be periodically pruned of year+ old migrations.
Gabriel Charette1eecf132021-04-15 16:55:532038// See chrome/browser/prefs/README.md for details.
Lei Zhangb76b80e32020-04-08 16:58:162039void MigrateObsoleteLocalStatePrefs(PrefService* local_state) {
Scott Littlec463f3362022-02-15 18:44:242040 // IMPORTANT NOTE: This code is *not* run on iOS Chrome. If a pref is migrated
2041 // or cleared here, and that pref is also used in iOS Chrome, it may also need
2042 // to be migrated or cleared specifically for iOS as well. This could be by
2043 // doing the migration in feature code that's called by all platforms instead
2044 // of here, or by calling migration code in the appropriate place for iOS
Gauthier Ambardfd73b8a12023-05-17 09:54:432045 // specifically, e.g. ios/chrome/browser/shared/model/prefs/browser_prefs.mm.
Scott Littlec463f3362022-02-15 18:44:242046
Dominic Battre645d42342020-12-04 16:14:102047 // BEGIN_MIGRATE_OBSOLETE_LOCAL_STATE_PREFS
2048 // Please don't delete the preceding line. It is used by PRESUBMIT.py.
2049
Roman Sorokinc138f2982022-09-05 16:42:302050#if BUILDFLAG(IS_CHROMEOS_ASH)
2051 // Added 09/2022
2052 local_state->ClearPref(kUsersLastInputMethod);
2053#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2054
Avi Drissmanfee70e5f2022-11-02 20:50:112055#if BUILDFLAG(ENABLE_BACKGROUND_MODE) && BUILDFLAG(IS_MAC)
2056 // Added 11/2022.
2057 local_state->ClearPref(kUserRemovedLoginItem);
2058 local_state->ClearPref(kChromeCreatedLoginItem);
2059 local_state->ClearPref(kMigratedLoginItemPref);
2060#endif
Nicolas Dossou-Gbete2804a372022-11-09 17:25:352061#if BUILDFLAG(IS_CHROMEOS_LACROS)
2062 if (local_state->HasPrefPath(kPrimaryProfileFirstRunFinished)) {
2063 bool old_value = local_state->GetBoolean(kPrimaryProfileFirstRunFinished);
2064 local_state->ClearPref(kPrimaryProfileFirstRunFinished);
2065 local_state->SetBoolean(prefs::kFirstRunFinished, old_value);
2066 }
2067#endif
Avi Drissmanfee70e5f2022-11-02 20:50:112068
Victor Hugo Vianna Silva29ab0a32022-11-10 03:48:382069 // Added 11/2022.
2070 local_state->ClearPref(kLocalConsentsDictionary);
2071
Nasser Al-shawwa16ffdfc2023-01-13 14:32:202072 // Added 01/2023
2073 local_state->ClearPref(kSendDownloadToCloudPref);
Nasser Al-shawwafef41782023-01-27 20:43:502074
Sebastien Lalancette55953e42023-01-17 14:48:312075#if BUILDFLAG(IS_MAC)
2076 local_state->ClearPref(kDeviceTrustDisableKeyCreationPref);
2077#endif // BUILDFLAG(IS_MAC)
Nasser Al-shawwa16ffdfc2023-01-13 14:32:202078
Andrew Breggerf89f1322023-02-01 02:22:032079 // Added 01/2023
2080#if BUILDFLAG(IS_CHROMEOS_ASH)
2081 local_state->ClearPref(kEventSequenceLastSystemUptime);
2082 local_state->ClearPref(kEventSequenceResetCounter);
2083#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2084
Lu Huangeba5b532023-02-22 23:19:342085 // Added 02/2023
2086#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
2087 local_state->ClearPref(kWebAppsUrlHandlerInfo);
2088#endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
2089
Brittany Hartmire537aa47b2023-03-01 23:43:092090// Added 02/2023.
2091#if BUILDFLAG(IS_CHROMEOS_ASH)
2092 local_state->ClearPref(kEasyUnlockLocalStateTpmKeys);
2093#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2094
Artsiom Mitrokhincf332e22023-03-07 16:27:472095// Added 03/2023.
2096#if BUILDFLAG(IS_CHROMEOS_ASH)
2097 local_state->ClearPref(kGlanceablesSignoutScreenshotDuration);
2098#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2099
Brittany Hartmireafd35312023-03-16 00:21:032100// Added 03/2023.
2101#if BUILDFLAG(IS_CHROMEOS_ASH)
2102 local_state->ClearPref(kEasyUnlockLocalStateUserPrefs);
2103#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2104
Brittany Hartmire1ffd662e2023-04-04 22:46:512105// Added 04/2023.
2106#if BUILDFLAG(IS_CHROMEOS_ASH)
2107 local_state->ClearPref(kEasyUnlockHardlockState);
2108#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2109
Artem Sumaneev77f80bb2023-04-11 14:04:582110 // Added 04/2023.
2111 local_state->ClearPref(kTypeSubscribedForInvalidations);
2112 local_state->ClearPref(kActiveRegistrationToken);
2113 local_state->ClearPref(kFCMInvalidationClientIDCache);
2114
Osama Fathy5d236652023-04-17 17:31:122115// Added 04/2023.
2116#if BUILDFLAG(IS_CHROMEOS_ASH)
2117 local_state->ClearPref(kConsolidatedConsentTrial);
2118#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2119
Roland Bock8e21dd022023-04-27 09:33:482120// Added 04/2023.
2121#if BUILDFLAG(IS_CHROMEOS_ASH)
2122 local_state->ClearPref(kEnrollmentIdUploadedOnChromad);
2123 local_state->ClearPref(kLastChromadMigrationAttemptTime);
2124#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2125
Pilar Molina Lopezef825502023-05-12 18:08:482126 // Added 05/2023.
Colin Blundella2aea272023-05-15 09:50:002127 local_state->ClearPref(kForceEnablePepperVideoDecoderDevAPI);
2128
2129 // Added 05/2023.
Pilar Molina Lopezef825502023-05-12 18:08:482130 local_state->ClearPref(kUseMojoVideoDecoderForPepperAllowed);
2131
Vasiliy Telezhnikov2a786452023-05-12 23:53:372132 // Added 05/2023
2133 local_state->ClearPref(kPPAPISharedImagesSwapChainAllowed);
2134
Ramin Halavatiec90e022023-05-23 13:55:052135// Added 05/2023.
2136#if BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
2137 local_state->ClearPref(kScreenAIScheduledDeletionTimePrefName);
2138#endif
2139
Cathy Li7ff029622023-05-26 04:56:522140// Added 05/2023
2141#if BUILDFLAG(IS_ANDROID)
2142 local_state->ClearPref(kWeeklyStatsReportingTimestamp);
2143#endif
2144
Hidehiko Abead7991f22023-05-31 14:32:222145// Added 05/2023.
2146#if BUILDFLAG(IS_CHROMEOS_ASH)
2147 local_state->ClearPref(kSupervisedUsersFirstRun);
2148 local_state->ClearPref(kSupervisedUserSyncId);
2149 local_state->ClearPref(kSupervisedUserManagers);
2150 local_state->ClearPref(kSupervisedUserManagerNames);
2151 local_state->ClearPref(kSupervisedUserManagerDisplayEmails);
2152
2153 local_state->ClearPref(kSupervisedUserPasswordSchema);
2154 local_state->ClearPref(kSupervisedUserPasswordSalt);
2155 local_state->ClearPref(kSupervisedUserPasswordRevision);
2156
2157 local_state->ClearPref(kSupervisedUserNeedPasswordUpdate);
2158 local_state->ClearPref(kSupervisedUserIncompleteKey);
2159#endif
2160
Eshwar Stalin883b5a72023-07-11 02:05:592161// Added 07/2023.
2162#if !BUILDFLAG(IS_ANDROID)
2163 local_state->ClearPref(kLegacyHoverCardImagesEnabled);
2164#endif
2165
Etienne Bergeron6ac228e2023-08-02 17:39:042166 // Added 07/2023.
2167 local_state->ClearPref(kShutdownNumProcesses);
2168 local_state->ClearPref(kShutdownNumProcessesSlow);
Etienne Bergeronec5c88fb2023-08-07 15:09:392169 local_state->ClearPref(kShutdownType);
Etienne Bergeron6ac228e2023-08-02 17:39:042170
Daniel Ruberya440a6b12023-09-08 22:04:332171 // Added 09/2023.
2172#if BUILDFLAG(IS_WIN)
2173 local_state->ClearPref(kSwReporter);
2174 local_state->ClearPref(kChromeCleaner);
2175#endif
2176
Ahmed Mehfooze6c06892023-09-14 00:48:172177// Added 09/2023.
2178#if BUILDFLAG(IS_CHROMEOS_ASH)
2179 local_state->ClearPref(kGestureEducationNotificationShown);
2180#endif
2181
Dominic Battre645d42342020-12-04 16:14:102182 // Please don't delete the following line. It is used by PRESUBMIT.py.
2183 // END_MIGRATE_OBSOLETE_LOCAL_STATE_PREFS
Scott Littlec463f3362022-02-15 18:44:242184
2185 // IMPORTANT NOTE: This code is *not* run on iOS Chrome. If a pref is migrated
2186 // or cleared here, and that pref is also used in iOS Chrome, it may also need
2187 // to be migrated or cleared specifically for iOS as well. This could be by
2188 // doing the migration in feature code that's called by all platforms instead
2189 // of here, or by calling migration code in the appropriate place for iOS
Gauthier Ambardfd73b8a12023-05-17 09:54:432190 // specifically, e.g. ios/chrome/browser/shared/model/prefs/browser_prefs.mm.
rkaplowf216caf2015-03-02 22:37:452191}
2192
2193// This method should be periodically pruned of year+ old migrations.
Gabriel Charette1eecf132021-04-15 16:55:532194// See chrome/browser/prefs/README.md for details.
rkaplowf216caf2015-03-02 22:37:452195void MigrateObsoleteProfilePrefs(Profile* profile) {
Scott Littlec463f3362022-02-15 18:44:242196 // IMPORTANT NOTE: This code is *not* run on iOS Chrome. If a pref is migrated
2197 // or cleared here, and that pref is also used in iOS Chrome, it may also need
2198 // to be migrated or cleared specifically for iOS as well. This could be by
2199 // doing the migration in feature code that's called by all platforms instead
2200 // of here, or by calling migration code in the appropriate place for iOS
Gauthier Ambardfd73b8a12023-05-17 09:54:432201 // specifically, e.g. ios/chrome/browser/shared/model/prefs/browser_prefs.mm.
Scott Littlec463f3362022-02-15 18:44:242202
Dominic Battre645d42342020-12-04 16:14:102203 // BEGIN_MIGRATE_OBSOLETE_PROFILE_PREFS
2204 // Please don't delete the preceding line. It is used by PRESUBMIT.py.
2205
rkaplowf216caf2015-03-02 22:37:452206 PrefService* profile_prefs = profile->GetPrefs();
2207
wutaobc9027e2020-04-08 02:01:442208 // Check MigrateDeprecatedAutofillPrefs() to see if this is safe to remove.
Moe Ahmadic3061bd2018-08-30 16:25:322209 autofill::prefs::MigrateDeprecatedAutofillPrefs(profile_prefs);
Alexandr Ilin273e20b2018-09-05 19:47:572210
Tarun Bansal99e447d2020-03-17 10:07:562211 // Added 3/2020.
Julian Pastarmov7da3bc22021-03-30 14:30:182212 // TODO(crbug.com/1062698): Remove this once the privacy settings redesign
2213 // is fully launched.
Ben Schwartz135746c2020-05-14 04:37:032214 chrome_browser_net::secure_dns::MigrateProbesSettingToOrFromBackup(
2215 profile_prefs);
wutao2e24aff2020-04-03 17:01:022216
Mihai Sardarescu3a27a8b2022-05-30 14:01:492217#if BUILDFLAG(ENABLE_DICE_SUPPORT)
2218 // Added 06/2022.
Mariam Ali15a343d2023-08-28 15:56:502219 // TODO(crbug.com/1476489): Remove when unit test code is updated.
Mihai Sardarescu3a27a8b2022-05-30 14:01:492220 profile_prefs->ClearPref(kTokenServiceDiceCompatible);
2221#endif // BUILDFLAG(ENABLE_DICE_SUPPORT)
Tom Andersoncb3408482022-09-02 19:06:412222
Theodore Olsauskas-Warren221e3ecd2022-09-08 08:21:242223 // Added 09/2022.
2224 profile_prefs->ClearPref(kPrivacySandboxFirstPartySetsDataAccessAllowed);
2225
Colin Kincaidf11f8562022-09-14 15:41:062226#if BUILDFLAG(IS_CHROMEOS_ASH)
2227 // Added 09/2022.
2228 profile_prefs->ClearPref(kClipboardHistoryNewFeatureBadgeCount);
2229#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2230
Jan Keitel4707c1f2022-11-30 11:08:592231// Added 09/2022.
Jan Keitel98b2cc42022-09-20 05:38:392232#if BUILDFLAG(IS_ANDROID)
Jan Keitelbb6f6472022-09-26 13:36:382233 auto migrate_shared_pref = [profile_prefs](const std::string& source,
2234 const std::string& target) {
2235 if (absl::optional<bool> shared_pref =
2236 android::shared_preferences::GetAndClearBoolean(source);
2237 shared_pref) {
2238 profile_prefs->SetBoolean(target, shared_pref.value());
2239 }
2240 };
2241
Clemens Arbesser46cb4f72022-12-07 15:08:172242 // These settings will also need to be deleted from ChromePreferenceKeys.java.
Jan Keitel4707c1f2022-11-30 11:08:592243 migrate_shared_pref(kDeprecatedAutofillAssistantConsent,
2244 kAutofillAssistantConsent);
2245 migrate_shared_pref(kDeprecatedAutofillAssistantEnabled,
2246 kAutofillAssistantEnabled);
2247 migrate_shared_pref(kDeprecatedAutofillAssistantTriggerScriptsEnabled,
2248 kAutofillAssistantTriggerScriptsEnabled);
2249 migrate_shared_pref(kDeprecatedAutofillAssistantTriggerScriptsIsFirstTimeUser,
2250 kAutofillAssistantTriggerScriptsIsFirstTimeUser);
Jan Keitel98b2cc42022-09-20 05:38:392251#endif
2252
Jonathan Freedff18fb6a2022-10-17 20:46:292253 // Added 10/2022
David Roger877bdc72022-10-19 09:38:512254#if BUILDFLAG(IS_ANDROID)
Jonathan Freedff18fb6a2022-10-17 20:46:292255 feed::MigrateObsoleteProfilePrefsOct_2022(profile_prefs);
2256#endif // BUILDFLAG(IS_ANDROID)
Peter Birk Pakkenberg71a43942023-01-04 13:50:372257 profile_prefs->ClearPref(kOriginTrialPrefKey);
Jonathan Freedff18fb6a2022-10-17 20:46:292258
David Roger877bdc72022-10-19 09:38:512259 // Once this migration is complete, the tracked preference
2260 // `kGoogleServicesLastAccountIdDeprecated` can be removed.
2261 if (profile_prefs->HasPrefPath(
2262 prefs::kGoogleServicesLastAccountIdDeprecated)) {
2263 std::string account_id =
2264 profile_prefs->GetString(prefs::kGoogleServicesLastAccountIdDeprecated);
2265 profile_prefs->ClearPref(prefs::kGoogleServicesLastAccountIdDeprecated);
2266 bool is_email = account_id.find('@') != std::string::npos;
Andrew Breggerf89f1322023-02-01 02:22:032267 if (!is_email && !account_id.empty()) {
David Roger877bdc72022-10-19 09:38:512268 profile_prefs->SetString(prefs::kGoogleServicesLastGaiaId, account_id);
Andrew Breggerf89f1322023-02-01 02:22:032269 }
David Roger877bdc72022-10-19 09:38:512270 }
2271
Martin Kreichgauerc86cc652022-10-28 16:52:042272 // Added 10/2022.
2273#if BUILDFLAG(ENABLE_EXTENSIONS)
2274 profile_prefs->ClearPref(kLoadCryptoTokenExtension);
2275#endif
2276
Yulun Wu066dab712022-11-01 17:20:242277#if BUILDFLAG(IS_CHROMEOS_ASH)
2278 // Added 10/2022.
2279 profile_prefs->ClearPref(kSuggestedContentInfoShownInLauncher);
2280 profile_prefs->ClearPref(kSuggestedContentInfoDismissedInLauncher);
2281#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2282
Jan Keitel4707c1f2022-11-30 11:08:592283 // Added 11/2022.
2284 profile_prefs->ClearPref(kAutofillAssistantEnabled);
2285 profile_prefs->ClearPref(kAutofillAssistantConsent);
2286 profile_prefs->ClearPref(kAutofillAssistantTriggerScriptsEnabled);
2287 profile_prefs->ClearPref(kAutofillAssistantTriggerScriptsIsFirstTimeUser);
2288
Mikel Astiz823b71012022-12-07 09:57:022289 // Added 12/2022.
Mikel Astiz231dd522023-04-23 15:51:442290 profile_prefs->ClearPref(kDeprecatedReadingListHasUnseenEntries);
Mikel Astiz823b71012022-12-07 09:57:022291
Vishwas Uppoorbcf36722022-12-30 18:55:222292 // Added 12/2022.
2293 profile_prefs->ClearPref(kAutofillWalletImportStorageCheckboxState);
2294
Daseul Lee56c5a8d2023-01-17 17:18:462295 // Added 01/2023.
2296 profile_prefs->ClearPref(kFileSystemSyncAccessHandleAsyncInterfaceEnabled);
2297
mark a. foltz264816212023-01-19 21:10:462298 // Added 01/2023.
2299#if !BUILDFLAG(IS_ANDROID)
2300 profile_prefs->ClearPref(kMediaRouterTabMirroringSources);
2301#endif // !BUILDFLAG(IS_ANDROID)
2302
Mahmoud Rashad96ac6022023-01-26 23:48:182303 // Added 01/2023
2304 profile_prefs->ClearPref(kAutofillCreditCardSigninPromoImpressionCount);
2305
Nasser Al-shawwafef41782023-01-27 20:43:502306 // Added 01/2023
2307 profile_prefs->ClearPref(kSendDownloadToCloudPref);
Osama Fathy592e239a2023-02-02 15:26:132308
2309 // Added 02/2023.
2310#if BUILDFLAG(IS_CHROMEOS_ASH)
2311 profile_prefs->ClearPref(kArcTermsShownInOobe);
2312#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2313
Maksim Moskvitin265fd062023-02-17 13:04:222314 // Added 02/2023.
2315 profile_prefs->ClearPref(kSyncInvalidationVersions);
2316 profile_prefs->ClearPref(kSyncInvalidationVersions2);
2317
Lei Zhang52efbb02023-02-21 22:56:382318 // Added 02/2023.
Lei Zhang5e1ffd62023-02-23 17:52:442319 profile_prefs->ClearPref(kClearPluginLSODataEnabled);
Lei Zhang543294f2023-02-23 19:53:432320 profile_prefs->ClearPref(kContentSettingsPluginAllowlist);
Lei Zhang5e1ffd62023-02-23 17:52:442321 profile_prefs->ClearPref(kPepperFlashSettingsEnabled);
Lei Zhang52efbb02023-02-21 22:56:382322 profile_prefs->ClearPref(kPluginsAllowOutdated);
Lei Zhang701e2342023-02-22 00:39:422323 profile_prefs->ClearPref(kPluginsLastInternalDirectory);
2324 profile_prefs->ClearPref(kPluginsPluginsList);
Lei Zhang52efbb02023-02-21 22:56:382325 profile_prefs->ClearPref(kPluginsShowDetails);
2326
Brittany Hartmire8a36b6e42023-02-24 23:09:092327// Added 02/2023.
2328#if BUILDFLAG(IS_CHROMEOS_ASH)
2329 profile_prefs->ClearPref(kHasSeenSmartLockSignInRemovedNotification);
2330#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2331
Eric Sumbed9fdd2023-03-15 18:06:302332// Added 03/2023.
2333#if BUILDFLAG(IS_CHROMEOS_ASH)
2334 ash::ambient::prefs::MigrateDeprecatedPrefs(*profile_prefs);
2335#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2336
Ari Chivukula951893d2023-03-03 18:03:292337 // Added 03/2023
2338 profile_prefs->ClearPref(
2339 kGoogleSearchDomainMixingMetricsEmitterLastMetricsTime);
2340
conniekxu4d14f65c2023-03-28 20:56:362341// Added 03/2023.
2342#if BUILDFLAG(IS_CHROMEOS_ASH)
2343 profile_prefs->ClearPref(kDarkLightModeNudgeLeftToShowCount);
2344#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2345
Adam Langley390670302023-03-31 00:43:312346 // Added 03/2023.
2347#if BUILDFLAG(IS_WIN)
2348 profile_prefs->ClearPref(kWebAuthnLastOperationWasNativeAPI);
2349#endif
2350
Richard Chui821cdad2023-04-07 21:39:572351// Added 04/2023.
2352#if BUILDFLAG(IS_CHROMEOS_ASH)
2353 profile_prefs->ClearPref(kBentoBarEnabled);
2354 profile_prefs->ClearPref(kUserHasUsedDesksRecently);
2355#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2356
Dan Harrington83791492023-04-10 20:49:272357// Added 04/2023.
2358#if BUILDFLAG(IS_ANDROID)
2359 profile_prefs->ClearPref(kBackoff);
2360 profile_prefs->ClearPref(kUserSettingEnabled);
2361 profile_prefs->ClearPref(kLimitlessPrefetchingEnabledTimePref);
2362 profile_prefs->ClearPref(kPrefetchTestingHeaderPref);
2363 profile_prefs->ClearPref(kEnabledByServer);
2364 profile_prefs->ClearPref(kNextForbiddenCheckTimePref);
2365 profile_prefs->ClearPref(kPrefetchCachedGCMToken);
2366#endif
2367
Artem Sumaneev77f80bb2023-04-11 14:04:582368 // Added 04/2023.
2369 profile_prefs->ClearPref(kTypeSubscribedForInvalidations);
2370 profile_prefs->ClearPref(kActiveRegistrationToken);
2371 profile_prefs->ClearPref(kFCMInvalidationClientIDCache);
2372
Dan Harrington899e25232023-04-11 18:23:572373 // Added 04/2023.
2374#if BUILDFLAG(IS_ANDROID)
2375 ntp_snippets::prefs::MigrateObsoleteProfilePrefsApril2023(profile_prefs);
2376#endif
2377
Jérémie Boulic8d672f22023-04-18 02:44:052378// Added 04/2023.
2379#if BUILDFLAG(IS_CHROMEOS_ASH)
2380 profile_prefs->ClearPref(kOfficeFilesAlwaysMove);
2381 profile_prefs->ClearPref(kOfficeMoveConfirmationShown);
2382#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2383
Brittany Hartmire402a3922023-04-18 22:15:362384// Added 04/2023.
2385#if BUILDFLAG(IS_CHROMEOS_ASH)
2386 profile_prefs->ClearPref(kProximityAuthIsChromeOSLoginEnabled);
2387#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2388
Brittany Hartmire22aa1ae82023-05-09 17:37:232389// Added 05/2023.
2390#if BUILDFLAG(IS_CHROMEOS_ASH)
2391 profile_prefs->ClearPref(kSmartLockSigninAllowed);
2392#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2393
David Trainorb7400c22023-05-10 19:17:062394// Added 05/2023.
2395#if BUILDFLAG(IS_ANDROID)
2396 profile_prefs->ClearPref(kVideoTutorialsPreferredLocaleKey);
2397 profile_prefs->ClearPref(kVideoTutorialsLastUpdatedTimeKey);
2398#endif // BUILDFLAG(IS_ANDROID
2399
Peter Marshall7fdea2b2023-05-15 01:16:382400// Added 05/2023.
2401#if BUILDFLAG(IS_CHROMEOS_ASH)
2402 profile_prefs->ClearPref(kOfficeSetupComplete);
2403#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2404
Elias Khsheibund1700562023-05-15 13:31:212405// Added 05/2023.
Michael Checo1f8625942023-05-23 19:33:472406#if BUILDFLAG(IS_CHROMEOS_ASH)
2407 profile_prefs->ClearPref(kEventRemappedToRightClick);
2408#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2409
2410// Added 05/2023.
Elias Khsheibund1700562023-05-15 13:31:212411#if BUILDFLAG(IS_ANDROID)
2412 profile_prefs->ClearPref(kTimesUPMAuthErrorShown);
2413#endif // BUILDFLAG(IS_ANDROID)
2414
Maciek Slusarczyk56833f02023-05-19 09:02:142415// Added 05/2023.
2416#if BUILDFLAG(IS_CHROMEOS_ASH)
2417 profile_prefs->ClearPref(kSamlPasswordSyncToken);
2418#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2419
Alan Cutter086bdf72023-06-09 02:40:112420// Added 06/2023.
2421#if BUILDFLAG(IS_CHROMEOS_ASH)
2422 profile_prefs->ClearPref(kWebAppCalculatorAppErasureFixAppliedPref);
2423#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2424
Alan Cutter3bfce6e2023-06-07 01:53:022425 // Added 06/2023.
2426 profile_prefs->ClearPref(kWebAppsExtensionIDs);
2427
Marc Treib7aaf21332023-06-14 08:30:012428 // Added 06/2023.
2429#if BUILDFLAG(IS_CHROMEOS_ASH)
2430 profile_prefs->ClearPref(kOsSyncPrefsMigrated);
2431#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2432
Yue Zhangf7cf6712023-06-16 18:11:322433 // Added 06/2023.
2434#if !BUILDFLAG(IS_ANDROID)
2435 profile_prefs->ClearPref(kShouldShowSidePanelBookmarkTab);
2436#endif // !BUILDFLAG(IS_ANDROID)
2437
Jian Li7541a082023-06-18 23:52:142438 // Added 06/2023
2439#if BUILDFLAG(ENABLE_FEED_V2)
2440 profile_prefs->ClearPref(kVideoPreviewsType);
2441#endif // BUILDFLAG(ENABLE_FEED_V2)
2442
Maciek Slusarczyk