blob: e6ca2f5b502f043e43d62b994fd4ed604d2851ec [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"
Bryant Chandlerd638fb02023-11-03 23:40:1740#include "chrome/browser/media/prefs/capture_device_ranking.h"
George Benz13da3df02022-01-14 00:03:5241#include "chrome/browser/media/router/discovery/access_code/access_code_cast_feature.h"
Derek Cheng23a01402018-07-24 13:38:1442#include "chrome/browser/media/router/media_router_feature.h"
Simon Hangl2d73e742023-06-16 16:52:4743#include "chrome/browser/media/webrtc/capture_policy_utils.h"
mcasasa2023ab2016-09-08 01:06:3644#include "chrome/browser/media/webrtc/media_capture_devices_dispatcher.h"
Evan Stade32d635a2020-04-03 18:51:2545#include "chrome/browser/media/webrtc/permission_bubble_media_access_handler.h"
Sebastien Marchand5a63997a2019-09-27 19:15:3446#include "chrome/browser/memory/enterprise_memory_limit_pref_observer.h"
[email protected]4a55a712014-06-08 16:50:3447#include "chrome/browser/metrics/chrome_metrics_service_client.h"
Eric Secklera5c24e12018-11-28 16:09:2048#include "chrome/browser/net/net_error_tab_helper.h"
Matt Menkecfef87d2017-08-03 13:03:0649#include "chrome/browser/net/profile_network_context_service.h"
Ben Schwartz135746c2020-05-14 04:37:0350#include "chrome/browser/net/secure_dns_util.h"
Matt Menke4dfb375c2018-06-13 18:06:3151#include "chrome/browser/net/system_network_context_manager.h"
Tom Anderson1ef51d032020-02-11 01:05:0852#include "chrome/browser/notifications/notification_display_service_impl.h"
peterc4007912015-07-31 21:13:3753#include "chrome/browser/notifications/notifier_state_tracker.h"
Sharon Yangc6706902018-07-16 13:06:1954#include "chrome/browser/notifications/platform_notification_service_impl.h"
Balazs Engedy715b0ec2019-12-04 15:11:4555#include "chrome/browser/permissions/quiet_notification_permission_ui_state.h"
[email protected]24f95242014-02-10 17:55:2856#include "chrome/browser/prefs/chrome_pref_service_factory.h"
[email protected]4e94ab32011-08-05 05:28:2757#include "chrome/browser/prefs/incognito_mode_prefs.h"
[email protected]37858e52010-08-26 00:22:0258#include "chrome/browser/prefs/session_startup_pref.h"
Max Curran14dd7872023-03-20 19:57:3659#include "chrome/browser/preloading/prefetch/prefetch_service/prefetch_origin_decider.h"
Sreeja Kamishettyb8e18ae2022-07-22 03:12:4360#include "chrome/browser/preloading/prefetch/search_prefetch/search_prefetch_service.h"
Hiroki Nakagawa0977bd02023-09-08 15:33:1161#include "chrome/browser/preloading/preloading_prefs.h"
Nikita Podguzov26222d12019-12-04 11:44:3162#include "chrome/browser/printing/print_preview_sticky_settings.h"
[email protected]1bee6ed2012-03-14 06:46:3663#include "chrome/browser/profiles/chrome_version_service.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"
Florian Jackya33ad152023-11-22 11:46:0479#include "chrome/browser/ui/hats/hats_service_desktop.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"
Taylor Bergquistc0109ac2023-11-18 01:10:0485#include "chrome/browser/ui/tabs/organization/prefs.h"
[email protected]b56e2e32012-05-11 21:18:0486#include "chrome/browser/ui/tabs/pinned_tab_codec.h"
Elaine Chien07f137d2021-01-14 02:57:2187#include "chrome/browser/ui/toolbar/chrome_labs_prefs.h"
Livvie Lin9141d0f132020-03-23 22:47:0488#include "chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.h"
dljames4b665b22023-09-21 19:35:0889#include "chrome/browser/ui/toolbar/toolbar_pref_names.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"
Dana Friedb723dc42023-10-26 22:14:2296#include "chrome/browser/user_education/browser_feature_promo_storage_service.h"
Martin Kreichgauer0e1b15e2018-06-20 02:59:5097#include "chrome/browser/webauthn/chrome_authenticator_request_delegate.h"
Martin Kreichgauerd7aa4f92022-02-22 20:46:2198#include "chrome/browser/webauthn/webauthn_pref_names.h"
Scott Violet6200d332018-02-23 21:29:2399#include "chrome/common/buildflags.h"
[email protected]f87919d72011-02-02 18:46:16100#include "chrome/common/pref_names.h"
Ayu Ishiifbb1fad2020-06-22 20:15:07101#include "chrome/common/secure_origin_allowlist.h"
Moe Ahmadi173b0a2b2018-08-03 17:35:51102#include "components/autofill/core/common/autofill_prefs.h"
Clark DuVall8236b6a82020-05-28 22:54:32103#include "components/blocked_content/safe_browsing_triggered_popup_blocker.h"
Jesse McKenna0d767592023-11-03 19:31:52104#include "components/breadcrumbs/core/breadcrumbs_status.h"
ioanapa8bfbc72016-09-07 16:09:05105#include "components/browsing_data/core/pref_names.h"
Doug Turner9e79cf0c2018-04-05 21:32:30106#include "components/certificate_transparency/pref_names.h"
Matt Jones704e1a62022-09-20 16:28:24107#include "components/commerce/core/pref_names.h"
mukai8eaec822014-10-25 17:53:16108#include "components/content_settings/core/browser/host_content_settings_map.h"
Andrew Williams0e136592023-08-09 15:13:34109#include "components/content_settings/core/common/pref_names.h"
Javier Fernández García-Boente7966a892021-12-09 12:28:23110#include "components/custom_handlers/protocol_handler_registry.h"
[email protected]6a5b0712014-07-16 00:30:10111#include "components/dom_distiller/core/distilled_page_prefs.h"
Katie D1ca4328b2020-02-19 18:08:47112#include "components/dom_distiller/core/dom_distiller_features.h"
113#include "components/dom_distiller/core/pref_names.h"
Alex Chen9e56f7352023-01-20 22:56:15114#include "components/domain_reliability/domain_reliability_prefs.h"
Mugdha Lakhanida851fd2021-03-16 18:21:02115#include "components/embedder_support/origin_trials/origin_trial_prefs.h"
hmaree31cadf52022-11-09 22:32:55116#include "components/enterprise/browser/identifiers/identifiers_prefs.h"
Dominique Fauteux-Chapleaub6be8ae2023-09-26 13:48:40117#include "components/enterprise/buildflags/buildflags.h"
sdefresne8593e6432015-12-01 12:38:08118#include "components/flags_ui/pref_service_flags_storage.h"
Moe Ahmadi656dd532021-10-06 21:59:18119#include "components/history_clusters/core/history_clusters_prefs.h"
Brandon Wyliec7a94502018-10-18 18:43:25120#include "components/image_fetcher/core/cache/image_cache.h"
Anthony Vallee-Dubois43fded9702020-06-19 16:30:38121#include "components/invalidation/impl/fcm_invalidation_service.h"
Tanja Gornak5c8b5d952018-10-12 14:39:54122#include "components/invalidation/impl/invalidator_registrar_with_memory.h"
Marc Treib8c29f0c2019-12-19 12:48:07123#include "components/invalidation/impl/per_user_topic_subscription_manager.h"
Anthony Vallee-Dubois6f993122018-09-17 16:13:28124#include "components/language/content/browser/geo_language_provider.h"
Alexandre Frechette38f4ef92019-02-25 16:31:57125#include "components/language/content/browser/ulp_language_code_locator/ulp_language_code_locator.h"
Alexandre Frechette572755b2019-02-13 22:30:20126#include "components/language/core/browser/language_prefs.h"
Duncan Mercer8062eef2022-12-28 22:28:37127#include "components/lens/buildflags.h"
Joe DeBlasio59db500b2020-08-21 00:37:35128#include "components/lookalikes/core/lookalike_url_util.h"
Guido Urdaneta9f831c22023-06-22 13:44:34129#include "components/media_device_salt/media_device_id_salt.h"
Mikel Astizf4226912020-10-19 19:10:37130#include "components/metrics/demographics/user_demographics.h"
Peter Wen45025ea2018-09-17 15:16:27131#include "components/metrics/metrics_pref_names.h"
[email protected]d0ab865b2014-06-04 19:41:34132#include "components/network_time/network_time_tracker.h"
treibbb0c5af52016-12-09 17:34:15133#include "components/ntp_tiles/most_visited_sites.h"
Scott Violet9ae82892018-03-01 18:38:12134#include "components/offline_pages/buildflags/buildflags.h"
Travis Skare27cee15c2018-07-19 14:34:13135#include "components/omnibox/browser/document_provider.h"
Moe Ahmadi1266de82020-04-10 17:19:53136#include "components/omnibox/browser/omnibox_prefs.h"
blundell2102f7c2015-07-09 10:00:53137#include "components/omnibox/browser/zero_suggest_provider.h"
rajendrant19e545e2023-12-04 16:51:37138#include "components/optimization_guide/core/model_execution/model_execution_prefs.h"
Sophie Changf2da5f02021-01-07 19:38:47139#include "components/optimization_guide/core/optimization_guide_prefs.h"
[email protected]1f730bd2014-02-28 15:11:32140#include "components/password_manager/core/browser/password_manager.h"
anthonyvd6a43b932017-05-11 18:39:27141#include "components/payments/core/payment_prefs.h"
Anthony Vallee-Duboiscee55b12022-03-24 22:54:02142#include "components/performance_manager/public/user_tuning/prefs.h"
Florian Jackya33ad152023-11-22 11:46:04143#include "components/permissions/permission_hats_trigger_helper.h"
Aisulu Rakhmetullinaac4afcb62023-07-05 18:10:04144#include "components/permissions/pref_names.h"
Kirubel Aklilu7abc28662023-09-14 17:14:40145#include "components/plus_addresses/plus_address_prefs.h"
brettw03e61962016-03-15 06:27:04146#include "components/policy/core/browser/browser_policy_connector.h"
Aaron Colwellb4226222020-07-25 16:11:36147#include "components/policy/core/browser/url_blocklist_manager.h"
Jayeeb93166c2023-07-17 14:04:49148#include "components/policy/core/common/local_test_policy_provider.h"
Yann Dago9c1e19512022-02-28 22:27:31149#include "components/policy/core/common/management/management_service.h"
David Bienvenu554a2592020-02-13 20:20:54150#include "components/policy/core/common/policy_pref_names.h"
brettw03e61962016-03-15 06:27:04151#include "components/policy/core/common/policy_statistics_collector.h"
[email protected]f0c8c4992014-05-15 17:37:26152#include "components/pref_registry/pref_registry_syncable.h"
Martin Šrámek5921f6312020-03-25 09:31:47153#include "components/prefs/pref_registry.h"
brettwb1fc1b82016-02-02 00:19:08154#include "components/prefs/pref_registry_simple.h"
155#include "components/prefs/pref_service.h"
Sean Harrison4685ab72020-12-08 18:26:22156#include "components/privacy_sandbox/privacy_sandbox_prefs.h"
abhishek.a2171c612852015-08-31 10:48:19157#include "components/proxy_config/pref_proxy_config_tracker_impl.h"
Amanda Velasco Gallardo25f07362022-01-28 02:08:47158#include "components/safe_browsing/content/common/file_type_policies_prefs.h"
Ali Jumafb3dc1f2020-01-07 17:33:47159#include "components/safe_browsing/core/common/safe_browsing_prefs.h"
[email protected]0915b352014-06-25 19:58:14160#include "components/search_engines/template_url_prepopulate_data.h"
Carlos IL06e6c8c2020-07-28 00:25:19161#include "components/security_interstitials/content/insecure_form_blocking_page.h"
Colin Blundell7657b402020-02-25 09:46:50162#include "components/security_interstitials/content/stateful_ssl_host_state_delegate.h"
Anastasia Helfinstein33187fd2023-01-27 03:06:07163#include "components/segmentation_platform/embedder/default_model/device_switcher_result_dispatcher.h"
Shakti Sahu93bfba22021-06-17 18:05:21164#include "components/segmentation_platform/public/segmentation_platform_service.h"
Ramin Halavati52a9a292022-04-28 04:27:49165#include "components/services/screen_ai/buildflags/buildflags.h"
Ayu Ishii73a353d2022-07-07 21:56:42166#include "components/services/storage/public/cpp/storage_prefs.h"
Mikel Astizf61f4ba02018-06-01 10:50:19167#include "components/sessions/core/session_id_generator.h"
David Rogerfbfc9382021-07-12 13:58:45168#include "components/signin/public/base/signin_buildflags.h"
David Roger877bdc72022-10-19 09:38:51169#include "components/signin/public/base/signin_pref_names.h"
Henrique Ferreiro94eb46f2019-07-03 14:38:56170#include "components/signin/public/identity_manager/identity_manager.h"
Evan Stade89158192021-01-27 18:45:23171#include "components/site_engagement/content/site_engagement_service.h"
Eric Robinson49f19b62018-09-17 21:28:15172#include "components/subresource_filter/content/browser/ruleset_service.h"
[email protected]6189ab72023-11-06 15:55:08173#include "components/supervised_user/core/browser/supervised_user_preferences.h"
[email protected]1099454d2023-01-31 14:35:11174#include "components/supervised_user/core/common/buildflags.h"
Mikel Astizd848587f2023-10-02 09:28:03175#include "components/sync/base/pref_names.h"
Mikel Astiz91c345c2023-05-16 14:18:56176#include "components/sync/service/glue/sync_transport_data_prefs.h"
Marc Treibd6c8540e2023-07-04 19:18:49177#include "components/sync/service/sync_prefs.h"
Jeffrey Cohen053be24d2019-07-23 23:44:05178#include "components/sync_device_info/device_info_prefs.h"
maxbogueea16ff412016-10-28 16:35:29179#include "components/sync_preferences/pref_service_syncable.h"
Mikel Astiz0889b2be2018-09-25 16:20:41180#include "components/sync_sessions/session_sync_prefs.h"
Oksana Zhuravlova58c85282022-06-14 20:24:28181#include "components/tracing/common/pref_names.h"
[email protected]81135072014-02-14 14:11:02182#include "components/translate/core/browser/translate_prefs.h"
wafflesd2d9a332016-04-09 01:59:57183#include "components/update_client/update_client.h"
blundell0300cdea2015-09-03 12:47:44184#include "components/variations/service/variations_service.h"
[email protected]f3b1a082011-11-18 00:34:30185#include "content/public/browser/render_process_host.h"
Scott Violetc8240b02018-03-08 22:03:59186#include "extensions/buildflags/buildflags.h"
[email protected]ad66db12014-07-10 12:43:47187#include "net/http/http_server_properties_manager.h"
Andy Phan99ccfb42022-11-29 18:57:07188#include "pdf/buildflags.h"
Scott Violet02e38b92018-03-27 23:42:14189#include "ppapi/buildflags/buildflags.h"
Scott Violet318a55f2018-03-30 19:08:19190#include "printing/buildflags/buildflags.h"
Scott Violeta5f7ba12018-04-02 22:03:40191#include "rlz/buildflags/buildflags.h"
Jan Keitel98b2cc42022-09-20 05:38:39192#include "third_party/abseil-cpp/absl/types/optional.h"
[email protected]a814d8632009-01-31 20:18:52193
Denis Kuznetsov32099f32017-12-15 14:04:57194#if BUILDFLAG(ENABLE_BACKGROUND_MODE)
thestige4155842014-10-20 18:58:02195#include "chrome/browser/background/background_mode_manager.h"
196#endif
197
brettw00899e62016-11-12 02:10:17198#if BUILDFLAG(ENABLE_EXTENSIONS)
je_julie.kim7fbb5a1a2015-02-09 17:26:05199#include "chrome/browser/accessibility/animation_policy_prefs.h"
Dominick Ng6ff51052018-07-06 05:30:20200#include "chrome/browser/apps/platform_apps/shortcut_manager.h"
[email protected]17510602014-06-05 11:02:28201#include "chrome/browser/extensions/activity_log/activity_log.h"
202#include "chrome/browser/extensions/api/commands/command_service.h"
[email protected]17510602014-06-05 11:02:28203#include "chrome/browser/extensions/api/tabs/tabs_api.h"
[email protected]d5a74be2014-08-08 01:01:27204#include "chrome/browser/extensions/extension_web_ui.h"
Daniel Murphy3657906d2021-04-13 20:33:12205#include "chrome/browser/extensions/preinstalled_apps.h"
Devlin Cronina997c8e2021-03-18 00:33:18206#include "chrome/browser/ui/extensions/settings_api_bubble_helpers.h"
Devlin Cronin71f0f532018-04-26 16:35:06207#include "chrome/browser/ui/webui/extensions/extensions_ui.h"
tbarzicfa3c7ef62017-04-17 23:12:02208#include "extensions/browser/api/audio/audio_api.h"
afakhry2bd481832016-06-16 16:17:24209#include "extensions/browser/api/runtime/runtime_api.h"
[email protected]d5a74be2014-08-08 01:01:27210#include "extensions/browser/extension_prefs.h"
Emilia Paz363fa0062022-01-15 05:12:03211#include "extensions/browser/permissions_manager.h"
Yann Dago2cbd7cb2022-06-27 18:18:29212#include "extensions/browser/pref_names.h"
Yuta Hijikata31a359c2020-11-27 07:50:26213#if BUILDFLAG(IS_CHROMEOS_ASH)
Yuta Hijikata54df9132021-10-09 01:27:12214#include "chrome/browser/ash/crosapi/browser_data_migrator.h"
Henrique Ferreiro7967dce2021-09-23 11:37:47215#include "chrome/browser/ash/device_name/device_name_store.h"
Henrique Ferreirod67f0472022-11-05 00:40:09216#include "chrome/browser/ash/extensions/extensions_permissions_tracker.h"
Yeunjoo Choi5e8463292021-04-28 01:19:42217#include "chrome/browser/ash/kerberos/kerberos_credentials_manager.h"
Henrique Ferreirod57c4962021-09-29 07:26:59218#include "chrome/browser/ash/net/system_proxy_manager.h"
Henrique Ferreiro4ebaaa32021-10-13 16:59:35219#include "chrome/browser/ash/platform_keys/key_permissions/key_permissions_manager_impl.h"
Anatoliy Potapchuka460bc12021-11-05 19:23:10220#include "chrome/browser/ash/policy/networking/euicc_status_uploader.h"
Jeroen Dhollander148ee302023-12-08 11:22:22221#include "chrome/browser/ash/policy/remote_commands/crd/crd_admin_session_controller.h"
Danila Kuzmin90a42f02021-12-08 14:00:16222#include "chrome/browser/ash/settings/hardware_data_usage_controller.h"
Yeunjoo Choi5097e9c2021-02-25 08:46:52223#include "chrome/browser/ash/settings/stats_reporting_controller.h"
Xiaochu Liu48ab5932018-05-11 03:44:04224#include "chrome/browser/component_updater/metadata_table_chromeos.h"
Joel Hockeya9ccf0e2022-05-27 22:11:19225#include "chrome/browser/extensions/api/shared_storage/shared_storage_private_api.h"
yilkal95d9f882021-10-18 21:59:00226#include "chrome/browser/ui/ash/projector/projector_app_client_impl.h"
Yeunjoo Choi38cea422022-10-18 06:19:17227#include "chrome/browser/ui/webui/ash/edu_coexistence/edu_coexistence_login_handler.h"
Yeunjoo Choiebbdaa62022-10-20 01:05:31228#include "chrome/browser/ui/webui/signin/ash/inline_login_handler_impl.h"
Michal Mazur55ab4f52023-10-19 11:18:00229#include "chromeos/ash/components/carrier_lock/carrier_lock_manager.h"
Yuta Hijikata31a359c2020-11-27 07:50:26230#endif // BUILDFLAG(IS_CHROMEOS_ASH)
brettw00899e62016-11-12 02:10:17231#endif // BUILDFLAG(ENABLE_EXTENSIONS)
[email protected]17510602014-06-05 11:02:28232
Jack Yammine96729f72023-09-25 15:47:28233// `search_engine_choice_service.h` includes `chrome/browser/ui/browser_list.h`
234// that can't be included on android.
235#if BUILDFLAG(ENABLE_SEARCH_ENGINE_CHOICE)
Nicolas Dossou-Gbeteaaa3a422023-11-29 19:15:29236#include "chrome/browser/search_engine_choice/search_engine_choice_client_side_trial.h"
Jack Yammine96729f72023-09-25 15:47:28237#include "chrome/browser/search_engine_choice/search_engine_choice_service.h"
238#endif
239
Andy Phan99ccfb42022-11-29 18:57:07240#if BUILDFLAG(ENABLE_PDF)
241#include "chrome/browser/pdf/pdf_pref_names.h"
242#endif // BUILDFLAG(ENABLE_PDF)
243
Ramin Halavati52a9a292022-04-28 04:27:49244#if BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
Ramin Halavatic21eb8a2023-05-23 07:32:31245#include "chrome/browser/screen_ai/pref_names.h"
Ramin Halavati52a9a292022-04-28 04:27:49246#endif
247
Lei Zhang6cb9b842019-12-16 20:29:12248#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
[email protected]503e2922023-06-23 13:38:37249#include "components/supervised_user/core/browser/child_account_service.h"
[email protected]1e50f232023-05-12 13:57:34250#include "components/supervised_user/core/browser/supervised_user_service.h"
Bettina Deaf3dac202017-09-16 20:53:22251#endif
252
Jian Lic9a227c2022-02-28 22:55:44253#include "components/feed/buildflags.h"
254#include "components/feed/core/common/pref_names.h"
255#include "components/feed/core/shared_prefs/pref_names.h"
256
Xiaohan Wangae7f9182022-01-16 00:37:52257#if BUILDFLAG(IS_ANDROID)
Amanda Lin Dietz8864d302023-06-26 18:36:39258#include "chrome/browser/accessibility/accessibility_prefs/android/accessibility_prefs_controller.h"
zpengdb4a58e2017-01-10 17:40:32259#include "chrome/browser/android/bookmarks/partner_bookmarks_shim.h"
zpengdb4a58e2017-01-10 17:40:32260#include "chrome/browser/android/ntp/recent_tabs_page_prefs.h"
Kenichi Ishibashi35ac7132017-12-08 03:44:30261#include "chrome/browser/android/oom_intervention/oom_intervention_decider.h"
mlliuee3a405c2016-10-28 22:34:52262#include "chrome/browser/android/preferences/browser_prefs_android.h"
Jan Keitel98b2cc42022-09-20 05:38:39263#include "chrome/browser/android/preferences/shared_preferences_migrator_android.h"
Patrick Noland87d9f842019-01-16 03:52:02264#include "chrome/browser/android/usage_stats/usage_stats_bridge.h"
Sky Maliced8eb4302020-08-03 05:46:44265#include "chrome/browser/first_run/android/first_run_prefs.h"
Yu Su4d459862021-04-15 04:19:54266#include "chrome/browser/lens/android/lens_prefs.h"
John Rummell4703af62019-02-15 02:31:00267#include "chrome/browser/media/android/cdm/media_drm_origin_id_manager.h"
Lei Zhangdb0c0872022-03-04 04:26:59268#include "chrome/browser/notifications/notification_channels_provider_android.h"
Victor Hugo Vianna Silva6cc84402023-12-06 15:21:57269#include "chrome/browser/password_manager/android/password_manager_android_util.h"
Ian Wells5d248f012023-11-07 17:30:02270#include "chrome/browser/readaloud/android/prefs.h"
Christopher Thompson2602fea2019-11-26 19:36:54271#include "chrome/browser/ssl/known_interception_disclosure_infobar_delegate.h"
Glen Robertson8a825ae4f2020-09-16 06:50:08272#include "components/cdm/browser/media_drm_storage_impl.h" // nogncheck crbug.com/1125897
Sebastien Lalancette374cf6a2021-06-22 17:23:52273#include "components/content_creation/notes/core/note_prefs.h"
Dan Harrington899e25232023-04-11 18:23:57274#include "components/ntp_snippets/register_prefs.h"
zpengdb4a58e2017-01-10 17:40:32275#include "components/ntp_tiles/popular_sites_impl.h"
Clark DuVall600abea2020-03-23 16:16:17276#include "components/permissions/contexts/geolocation_permission_context_android.h"
Xing Liu0327d832020-05-15 21:07:03277#include "components/query_tiles/tile_service_prefs.h"
Ella Gec7c64062023-05-02 17:16:14278#include "components/webapps/browser/android/install_prompt_prefs.h"
Xiaohan Wangae7f9182022-01-16 00:37:52279#else // BUILDFLAG(IS_ANDROID)
Yue Zhang87902392020-12-23 23:12:05280#include "chrome/browser/cart/cart_service.h"
Shakti Sahue7597fd2023-04-05 23:32:39281#include "chrome/browser/companion/core/promo_handler.h"
Anqing Zhao9595e482021-06-10 11:33:55282#include "chrome/browser/device_api/device_service_impl.h"
peter9f4490a2017-01-27 00:58:36283#include "chrome/browser/gcm/gcm_product_util.h"
Matt Reynolds1914ff6b2022-02-04 08:48:26284#include "chrome/browser/hid/hid_policy_allowed_devices.h"
Tommy Lid5b7c22b2020-10-28 01:26:51285#include "chrome/browser/intranet_redirect_detector.h"
Lei Zhang6cb9b842019-12-16 20:29:12286#include "chrome/browser/media/unified_autoplay_config.h"
Sebastien Marchande9f7b992021-02-10 03:11:08287#include "chrome/browser/metrics/tab_stats/tab_stats_tracker.h"
Josh Nohle13ea6b432020-07-21 20:46:59288#include "chrome/browser/nearby_sharing/common/nearby_share_prefs.h"
Tibor Goldschwendt83b26a02021-07-09 23:13:18289#include "chrome/browser/new_tab_page/modules/drive/drive_service.h"
Jeremy Selier730b56d32021-09-17 02:59:39290#include "chrome/browser/new_tab_page/modules/photos/photos_service.h"
Riley Tatumc48258f12022-08-18 22:13:13291#include "chrome/browser/new_tab_page/modules/recipes/recipes_service.h"
Rohit Bhatia22e544f2021-10-05 15:32:26292#include "chrome/browser/new_tab_page/modules/safe_browsing/safe_browsing_handler.h"
Tibor Goldschwendt53a0eab2021-07-29 10:40:25293#include "chrome/browser/new_tab_page/promos/promo_service.h"
Yann Dago44d6cc322022-07-13 17:46:25294#include "chrome/browser/policy/developer_tools_policy_handler.h"
Tibor Goldschwendtf3a3ce92021-08-17 00:42:16295#include "chrome/browser/search/background/ntp_custom_background_service.h"
Reilly Grantd4fb5842021-03-15 23:16:49296#include "chrome/browser/serial/serial_policy_allowed_ports.h"
thestigc91176f42014-10-28 20:16:35297#include "chrome/browser/signin/signin_promo.h"
Matt Jones43bca672023-11-22 15:19:27298#include "chrome/browser/ui/commerce/commerce_ui_tab_helper.h"
Eduard Hez55d711f2023-07-12 12:10:07299#include "chrome/browser/ui/safety_hub/safety_hub_prefs.h"
zpengdb4a58e2017-01-10 17:40:32300#include "chrome/browser/ui/startup/startup_browser_creator.h"
Roman Arorabc876bf2023-08-03 15:25:21301#include "chrome/browser/ui/webui/cr_components/theme_color_picker/theme_color_picker_handler.h"
rbpotterbe128632019-11-22 04:50:42302#include "chrome/browser/ui/webui/history/foreign_session_handler.h"
Tibor Goldschwendt53ca78b2020-10-07 19:56:18303#include "chrome/browser/ui/webui/new_tab_page/new_tab_page_handler.h"
Tibor Goldschwendtbbdbe8f2021-05-20 19:27:39304#include "chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.h"
John Lee136759f02019-04-15 20:19:11305#include "chrome/browser/ui/webui/settings/settings_ui.h"
Mark Schillaciba4a7322022-06-29 15:08:35306#include "chrome/browser/ui/webui/side_panel/read_anything/read_anything_prefs.h"
Roman Aroracd8462c2021-08-03 01:20:33307#include "chrome/browser/ui/webui/tab_search/tab_search_prefs.h"
rbpotter73c13252021-07-16 21:29:34308#include "chrome/browser/ui/webui/whats_new/whats_new_ui.h"
Greg Thompson8bcd799b2018-08-10 09:49:33309#include "chrome/browser/upgrade_detector/upgrade_detector.h"
Peter Kvitek6567a8a3a2023-01-31 01:03:57310#include "components/headless/policy/headless_mode_prefs.h"
Abigail Klein153fa7a2021-08-26 19:50:50311#include "components/live_caption/live_caption_controller.h"
evliuc5b5a722022-10-28 00:05:49312#include "components/live_caption/live_translate_controller.h"
Lei Zhang6cb9b842019-12-16 20:29:12313#include "components/ntp_tiles/custom_links_manager_impl.h"
Caroline Rising065085a22023-02-22 14:34:09314#include "components/user_notes/user_notes_prefs.h"
Xiaohan Wangae7f9182022-01-16 00:37:52315#endif // BUILDFLAG(IS_ANDROID)
thestigc91176f42014-10-28 20:16:35316
Nicolas MacBeth53fa8142023-06-20 15:06:09317#if !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
318#include "chrome/browser/promos/promos_utils.h"
319#endif // !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
320
Xiaohan Wangae7f9182022-01-16 00:37:52321#if BUILDFLAG(IS_CHROMEOS)
Erik Chen643355d2022-04-22 05:44:49322#include "chrome/browser/chromeos/extensions/echo_private/echo_private_api.h"
Maria Petrisorbb5226b2022-06-02 09:10:51323#include "chrome/browser/chromeos/extensions/login_screen/login/login_api_prefs.h"
Alvin Lee99f8d9a82021-11-18 18:45:55324#include "chrome/browser/chromeos/policy/dlp/dlp_rules_manager_impl.h"
Josh Simmons29bce0e82023-08-31 05:59:50325#include "chrome/browser/chromeos/quickoffice/quickoffice_prefs.h"
Vignesh Shenvidfab2b12023-08-07 19:13:00326#include "chrome/browser/chromeos/reporting/metric_reporting_prefs.h"
Benjamin Gordon24cc3552023-11-29 01:03:43327#include "chrome/browser/extensions/api/document_scan/document_scan_api_handler.h"
Olya Kalitova39e913d52021-03-16 22:26:22328#include "chrome/browser/extensions/api/enterprise_platform_keys/enterprise_platform_keys_api.h"
Kuo-Hsin Yang40227972022-05-16 18:39:09329#include "chrome/browser/memory/oom_kills_monitor.h"
Michael Ershov5b2a7062022-01-17 14:28:45330#include "chrome/browser/policy/networking/policy_cert_service.h"
Ben Franz73537362021-11-08 11:53:40331#include "chrome/browser/policy/system_features_disable_list_policy_handler.h"
Michael Ershovd9a627e2021-11-03 13:55:27332#include "chrome/browser/ui/webui/certificates_handler.h"
anina koehlerf1e29df62022-08-10 07:22:32333#include "chromeos/ui/wm/fullscreen/pref_names.h"
Andrew Rayskiy16f8cab2022-12-15 16:28:33334#if BUILDFLAG(USE_CUPS)
Pranav Batrae71407672021-08-16 23:53:00335#include "chrome/browser/extensions/api/printing/printing_api_handler.h"
Andrew Rayskiy16f8cab2022-12-15 16:28:33336#endif // BUILDFLAG(USE_CUPS)
Xiaohan Wangae7f9182022-01-16 00:37:52337#endif // BUILDFLAG(IS_CHROMEOS)
Olya Kalitova39e913d52021-03-16 22:26:22338
Yuta Hijikata31a359c2020-11-27 07:50:26339#if BUILDFLAG(IS_CHROMEOS_ASH)
Yao Li646187a2021-11-16 01:02:11340#include "ash/components/arc/arc_prefs.h"
Henrique Ferreirof9d1cb22021-07-13 01:32:47341#include "ash/constants/ash_pref_names.h"
Eric Sumbed9fdd2023-03-15 18:06:30342#include "ash/public/cpp/ambient/ambient_prefs.h"
Xiyuan Xia5a8c4172019-05-13 16:23:48343#include "ash/public/cpp/ash_prefs.h"
Nikki Fangac3f0592023-02-14 01:31:19344#include "chrome/browser/apps/app_deduplication_service/app_deduplication_service.h"
Elitsa Bankova984491f2023-10-06 07:40:11345#include "chrome/browser/apps/app_discovery_service/almanac_fetcher.h"
Jeevan Shikarama73dec1a2022-09-08 05:51:52346#include "chrome/browser/apps/app_preload_service/app_preload_service.h"
Nancy Wang811fe4f92021-10-08 12:28:13347#include "chrome/browser/apps/app_service/metrics/app_platform_metrics_service.h"
Tim Sergeant1231dcc2021-05-10 14:00:57348#include "chrome/browser/apps/app_service/webapk/webapk_prefs.h"
Anastasiia N0582a902021-12-08 17:44:59349#include "chrome/browser/ash/account_manager/account_apps_availability.h"
Pranav Batra468fbe622021-06-23 01:42:36350#include "chrome/browser/ash/account_manager/account_manager_edu_coexistence_controller.h"
Yeunjoo Choife4364d2022-12-14 10:41:37351#include "chrome/browser/ash/app_list/app_list_syncable_service.h"
Yeunjoo Choi366e3462022-12-06 08:58:53352#include "chrome/browser/ash/app_list/arc/arc_app_list_prefs.h"
Henrique Ferreiro53d4dc42021-01-27 01:02:38353#include "chrome/browser/ash/app_mode/arc/arc_kiosk_app_manager.h"
Edman Anjos0f2ad562023-11-08 10:40:49354#include "chrome/browser/ash/app_mode/kiosk_chrome_app_manager.h"
Henrique Ferreiro53d4dc42021-01-27 01:02:38355#include "chrome/browser/ash/app_mode/kiosk_cryptohome_remover.h"
356#include "chrome/browser/ash/app_mode/web_app/web_kiosk_app_manager.h"
Sammie Quon21285822021-09-20 19:48:34357#include "chrome/browser/ash/app_restore/full_restore_prefs.h"
Yeunjoo Choidf64fe692021-03-08 05:32:34358#include "chrome/browser/ash/apps/apk_web_app_service.h"
Hidehiko Abe89f9b5c92023-09-19 04:37:11359#include "chrome/browser/ash/arc/boot_phase_monitor/arc_boot_phase_monitor_bridge.h"
Henrique Ferreiro2ef82302021-03-24 12:12:25360#include "chrome/browser/ash/arc/policy/arc_policy_bridge.h"
Henrique Ferreiro717d3022021-03-24 15:43:56361#include "chrome/browser/ash/arc/session/arc_session_manager.h"
Yeunjoo Choi2c5e78c2021-04-01 10:51:52362#include "chrome/browser/ash/bluetooth/debug_logs_manager.h"
Theo Johnson-Kanudc9f96272023-01-12 05:11:39363#include "chrome/browser/ash/bluetooth/hats_bluetooth_revamp_trigger_impl.h"
Pranav Batra468fbe622021-06-23 01:42:36364#include "chrome/browser/ash/borealis/borealis_prefs.h"
Fergus Dall54a6a432022-11-18 17:35:29365#include "chrome/browser/ash/bruschetta/bruschetta_pref_names.h"
Yeunjoo Choiebf07312021-03-24 01:48:51366#include "chrome/browser/ash/cert_provisioning/cert_provisioning_common.h"
Yeunjoo Choi8a355962021-04-13 01:22:27367#include "chrome/browser/ash/child_accounts/family_user_chrome_activity_metrics.h"
368#include "chrome/browser/ash/child_accounts/family_user_metrics_service.h"
369#include "chrome/browser/ash/child_accounts/family_user_session_metrics.h"
Yeunjoo Choi52e1c572021-04-08 07:56:27370#include "chrome/browser/ash/child_accounts/parent_access_code/parent_access_service.h"
Yeunjoo Choi8a355962021-04-13 01:22:27371#include "chrome/browser/ash/child_accounts/screen_time_controller.h"
Yeunjoo Choi882388a2021-04-12 05:17:29372#include "chrome/browser/ash/child_accounts/time_limits/app_activity_registry.h"
373#include "chrome/browser/ash/child_accounts/time_limits/app_time_controller.h"
Pranav Batra468fbe622021-06-23 01:42:36374#include "chrome/browser/ash/crosapi/browser_util.h"
Yeunjoo Choiaba21c02021-05-07 09:06:34375#include "chrome/browser/ash/crostini/crostini_pref_names.h"
Henrique Ferreiro2029590e2021-09-23 08:01:52376#include "chrome/browser/ash/cryptauth/client_app_metadata_provider_service.h"
377#include "chrome/browser/ash/cryptauth/cryptauth_device_id_provider_impl.h"
Yeunjoo Choi91907642021-04-16 13:18:19378#include "chrome/browser/ash/customization/customization_document.h"
Nigel Taoa1d4dce2022-10-18 00:01:20379#include "chrome/browser/ash/file_manager/file_manager_pref_names.h"
Andrew Rayskiy47076d72022-09-27 18:46:14380#include "chrome/browser/ash/file_manager/file_tasks.h"
Yeunjoo Choi627505b7b2021-05-13 15:56:31381#include "chrome/browser/ash/file_system_provider/registry.h"
Yeunjoo Choi55626172021-07-27 03:17:27382#include "chrome/browser/ash/first_run/first_run.h"
Geng Li11526bb42022-02-15 23:59:14383#include "chrome/browser/ash/floating_workspace/floating_workspace_util.h"
Joel Hockeyfcc56a292022-06-17 02:28:00384#include "chrome/browser/ash/guest_os/guest_id.h"
Yeunjoo Choi0a9c1d42021-03-31 01:38:56385#include "chrome/browser/ash/guest_os/guest_os_pref_names.h"
David Munro86435df2022-07-25 01:27:45386#include "chrome/browser/ash/guest_os/guest_os_terminal.h"
Yeunjoo Choi6aa07d82021-03-22 08:55:28387#include "chrome/browser/ash/lock_screen_apps/state_controller.h"
Henrique Ferreiro606669a2021-02-24 13:36:55388#include "chrome/browser/ash/login/demo_mode/demo_mode_resources_remover.h"
389#include "chrome/browser/ash/login/demo_mode/demo_session.h"
390#include "chrome/browser/ash/login/demo_mode/demo_setup_controller.h"
Henrique Ferreiroe55c0d5f2021-02-25 02:16:05391#include "chrome/browser/ash/login/quick_unlock/fingerprint_storage.h"
392#include "chrome/browser/ash/login/quick_unlock/pin_storage_prefs.h"
393#include "chrome/browser/ash/login/quick_unlock/quick_unlock_utils.h"
Ahmed Nasrbe0670b72022-03-09 23:28:17394#include "chrome/browser/ash/login/reporting/login_logout_reporter.h"
Henrique Ferreiro96143e5a2021-02-25 12:52:36395#include "chrome/browser/ash/login/saml/saml_profile_prefs.h"
Henrique Ferreiro1786d45a2021-02-25 22:48:19396#include "chrome/browser/ash/login/screens/enable_adb_sideloading_screen.h"
Henrique Ferreiro81312ab2021-02-25 23:14:03397#include "chrome/browser/ash/login/screens/reset_screen.h"
Henrique Ferreiro995b1db2021-03-06 00:41:41398#include "chrome/browser/ash/login/security_token_session_controller.h"
Henrique Ferreiroad3c6a572021-03-02 12:43:51399#include "chrome/browser/ash/login/session/user_session_manager.h"
Henrique Ferreiroa264c8c02021-07-20 08:31:47400#include "chrome/browser/ash/login/signin/signin_error_notifier.h"
Kush Sinha31d120b72023-09-04 12:21:54401#include "chrome/browser/ash/login/signin/token_handle_fetcher.h"
Henrique Ferreiro995b1db2021-03-06 00:41:41402#include "chrome/browser/ash/login/startup_utils.h"
Henrique Ferreiro2dc9e1c2021-03-04 17:33:58403#include "chrome/browser/ash/login/users/avatar/user_image_manager.h"
Aiden Chiavatti112d3672023-03-17 21:13:41404#include "chrome/browser/ash/login/users/avatar/user_image_prefs.h"
Henrique Ferreiro2dc9e1c2021-03-04 17:33:58405#include "chrome/browser/ash/login/users/avatar/user_image_sync_observer.h"
406#include "chrome/browser/ash/login/users/chrome_user_manager_impl.h"
Henrique Ferreiro12a42b02021-03-04 23:45:53407#include "chrome/browser/ash/login/users/multi_profile_user_controller.h"
Andreea Costinasc33add32023-07-13 16:57:13408#include "chrome/browser/ash/net/ash_proxy_monitor.h"
Henrique Ferreirod57c4962021-09-29 07:26:59409#include "chrome/browser/ash/net/network_throttling_observer.h"
Yeunjoo Choic5b3bf492021-03-15 13:57:19410#include "chrome/browser/ash/plugin_vm/plugin_vm_pref_names.h"
Yeunjoo Choi7227dba2021-08-04 06:35:47411#include "chrome/browser/ash/policy/core/browser_policy_connector_ash.h"
Yeunjoo Choiead8b3c2021-07-27 08:08:19412#include "chrome/browser/ash/policy/core/device_cloud_policy_manager_ash.h"
Yeunjoo Choi8623e4a2021-07-02 01:57:06413#include "chrome/browser/ash/policy/core/dm_token_storage.h"
Yeunjoo Choia60b6212021-07-06 11:25:12414#include "chrome/browser/ash/policy/enrollment/auto_enrollment_client_impl.h"
415#include "chrome/browser/ash/policy/enrollment/enrollment_requisition_manager.h"
416#include "chrome/browser/ash/policy/external_data/handlers/device_wallpaper_image_external_data_handler.h"
Yeunjoo Choi5d6eb012021-07-09 03:03:05417#include "chrome/browser/ash/policy/handlers/adb_sideloading_allowance_mode_policy_handler.h"
418#include "chrome/browser/ash/policy/handlers/minimum_version_policy_handler.h"
Henrique Ferreiro11492caf2021-11-02 22:16:16419#include "chrome/browser/ash/policy/handlers/tpm_auto_update_mode_policy_handler.h"
Yeunjoo Choiad73a322021-07-20 04:55:49420#include "chrome/browser/ash/policy/reporting/app_install_event_log_manager_wrapper.h"
421#include "chrome/browser/ash/policy/reporting/arc_app_install_event_logger.h"
Vignesh Shenvi145bf6e2023-05-08 22:11:30422#include "chrome/browser/ash/policy/reporting/metrics_reporting/metric_reporting_prefs.h"
Sanja Perisic91217932022-04-13 13:45:02423#include "chrome/browser/ash/policy/scheduled_task_handler/reboot_notifications_scheduler.h"
Yeunjoo Choid33fdb62021-07-21 06:57:42424#include "chrome/browser/ash/policy/status_collector/device_status_collector.h"
425#include "chrome/browser/ash/policy/status_collector/status_collector.h"
Yeunjoo Choi0bab0cf2021-05-31 05:14:03426#include "chrome/browser/ash/power/auto_screen_brightness/metrics_reporter.h"
Yeunjoo Choi7629a77a12021-06-02 06:37:18427#include "chrome/browser/ash/power/power_metrics_reporter.h"
Henrique Ferreiroae846062021-10-04 14:44:34428#include "chrome/browser/ash/preferences.h"
Pranav Batra9c0eb782022-02-01 23:13:33429#include "chrome/browser/ash/printing/cups_printers_manager.h"
Yeunjoo Choia52715a2021-09-09 02:45:17430#include "chrome/browser/ash/printing/enterprise_printers_provider.h"
Yeunjoo Choi0fb01cf62021-04-21 01:30:15431#include "chrome/browser/ash/release_notes/release_notes_storage.h"
Pranav Batra468fbe622021-06-23 01:42:36432#include "chrome/browser/ash/scanning/chrome_scanning_app_delegate.h"
Henrique Ferreiro11492caf2021-11-02 22:16:16433#include "chrome/browser/ash/scheduler_configuration_manager.h"
Yeunjoo Choi5097e9c2021-02-25 08:46:52434#include "chrome/browser/ash/settings/device_settings_cache.h"
Yeunjoo Choia43d74a2021-02-10 23:23:19435#include "chrome/browser/ash/system/automatic_reboot_manager.h"
436#include "chrome/browser/ash/system/input_device_settings.h"
Glen Robertson54e553b2023-06-27 03:18:37437#include "chrome/browser/ash/system_web_apps/apps/help_app/help_app_notification_controller.h"
Anthony Vallee-Dubois85edf222020-03-24 20:30:02438#include "chrome/browser/device_identity/chromeos/device_oauth2_token_store_chromeos.h"
[email protected]5a145e82014-05-29 22:19:07439#include "chrome/browser/extensions/extension_assets_manager_chromeos.h"
xhwangc84739e2015-03-14 01:02:46440#include "chrome/browser/media/protected_media_identifier_permission_context.h"
[email protected]8304f61a2014-05-24 12:17:33441#include "chrome/browser/metrics/chromeos_metrics_provider.h"
Jong Ahnfaf5f1f72023-01-19 03:20:44442#include "chrome/browser/metrics/structured/chrome_structured_metrics_recorder.h"
Erik Chenc2927bbd2021-09-22 23:20:07443#include "chrome/browser/ui/ash/shelf/chrome_shelf_prefs.h"
Yeunjoo Choi3fc970b2022-10-28 02:55:48444#include "chrome/browser/ui/webui/ash/login/enable_debugging_screen_handler.h"
Xiaohui Chen0b04ceb2023-10-20 21:22:17445#include "chrome/browser/ui/webui/ash/settings/os_settings_ui.h"
Roman Aleksandrovd32e34e72019-05-22 17:29:50446#include "chrome/browser/upgrade_detector/upgrade_detector_chromeos.h"
Henrique Ferreiro94c5e502022-08-17 14:20:22447#include "chromeos/ash/components/audio/audio_devices_pref_handler_impl.h"
Henrique Ferreiroc9e2aaf2022-07-07 13:45:18448#include "chromeos/ash/components/local_search_service/search_metrics_reporter.h"
Yeunjoo Choi1a8bc9942022-06-20 05:31:16449#include "chromeos/ash/components/network/cellular_esim_profile_handler_impl.h"
450#include "chromeos/ash/components/network/cellular_metrics_logger.h"
Yeunjoo Choibe813122022-06-29 15:13:44451#include "chromeos/ash/components/network/fast_transition_observer.h"
452#include "chromeos/ash/components/network/managed_cellular_pref_handler.h"
Yeunjoo Choi643dead2022-07-11 12:52:16453#include "chromeos/ash/components/network/network_metadata_store.h"
Yeunjoo Choida91d6452022-06-02 15:26:42454#include "chromeos/ash/components/network/proxy/proxy_config_handler.h"
Hirthanan Subenderan088f7322023-09-20 15:10:29455#include "chromeos/ash/components/report/report_controller.h"
Yuta Hijikata4538fc02023-09-26 15:19:55456#include "chromeos/ash/components/standalone_browser/migrator_util.h"
Henrique Ferreiroacf002702022-10-06 21:54:59457#include "chromeos/ash/components/timezone/timezone_resolver.h"
Yeunjoo Choi2d3704c12022-06-21 02:44:34458#include "chromeos/ash/services/assistant/public/cpp/assistant_prefs.h"
Anastasiia N1ad94e1e2022-09-15 08:47:28459#include "chromeos/ash/services/auth_factor_config/auth_factor_config.h"
Henrique Ferreiroae001e92022-09-01 16:58:46460#include "chromeos/ash/services/bluetooth_config/bluetooth_power_controller_impl.h"
461#include "chromeos/ash/services/bluetooth_config/device_name_manager_impl.h"
Yeunjoo Choia292ed72022-11-01 01:19:55462#include "chromeos/ash/services/device_sync/public/cpp/device_sync_prefs.h"
Yeunjoo Choie4980f452022-10-21 16:07:58463#include "chromeos/ash/services/multidevice_setup/multidevice_setup_service.h"
Yue Lif0da5bf2021-11-19 22:01:57464#include "chromeos/components/quick_answers/public/cpp/quick_answers_prefs.h"
Kushagra Sinhab37e24db2021-07-02 15:14:24465#include "components/account_manager_core/chromeos/account_manager.h"
stevenjbf22f82e2016-10-26 21:47:38466#include "components/onc/onc_pref_names.h"
glevin5dd01a72016-03-23 23:08:12467#include "components/quirks/quirks_manager.h"
tbarzicd9a88fc92017-07-14 02:18:10468#include "extensions/browser/api/lock_screen_data/lock_screen_item_storage.h"
Pranav Batra468fbe622021-06-23 01:42:36469
Pranav Batra468fbe622021-06-23 01:42:36470#endif // BUILDFLAG(IS_CHROMEOS_ASH)
471
Xiaohan Wangae7f9182022-01-16 00:37:52472#if BUILDFLAG(IS_MAC)
Lei Zhangdb0c0872022-03-04 04:26:59473#include "chrome/browser/media/webrtc/system_media_capture_permissions_stats_mac.h"
[email protected]425f7a02014-04-29 01:51:44474#include "chrome/browser/ui/cocoa/apps/quit_with_apps_controller_mac.h"
Tom Anderson6a496032018-08-30 23:38:37475#include "chrome/browser/ui/cocoa/confirm_quit.h"
Song Fangzhencda4af62021-09-09 05:24:02476#include "chrome/browser/web_applications/app_shim_registry_mac.h"
[email protected]2366a3a2012-10-02 20:41:14477#endif
478
Xiaohan Wangae7f9182022-01-16 00:37:52479#if BUILDFLAG(IS_WIN)
Igor Ruvinov13e658e2022-12-13 03:15:20480#include "chrome/browser/enterprise/platform_auth/platform_auth_policy_observer.h"
Scott Violet3ff87d062021-12-21 06:10:10481#include "chrome/browser/font_prewarmer_tab_helper.h"
Alex St-Onge9e4b9b72021-06-08 15:35:54482#include "chrome/browser/media/cdm_pref_service_helper.h"
Xiaohan Wang259f34c7a2022-03-26 23:18:19483#include "chrome/browser/media/media_foundation_service_monitor.h"
Will Harriseb364b2c2022-06-23 00:49:01484#include "chrome/browser/os_crypt/app_bound_encryption_metrics_win.h"
Nico Webereaa08412019-08-14 01:24:37485#if BUILDFLAG(GOOGLE_CHROME_BRANDING)
Patrick Monettebb543942019-05-17 17:45:32486#include "chrome/browser/win/conflicts/incompatible_applications_updater.h"
487#include "chrome/browser/win/conflicts/module_database.h"
488#include "chrome/browser/win/conflicts/third_party_conflicts_manager.h"
Nico Webereaa08412019-08-14 01:24:37489#endif // BUILDFLAG(GOOGLE_CHROME_BRANDING)
Daniel Ruberyd17b2fd2023-09-07 23:31:36490#endif // BUILDFLAG(IS_WIN)
[email protected]bdb8a1e2013-10-03 08:14:00491
Xiaohan Wangae7f9182022-01-16 00:37:52492#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC)
Will Harris93d0dcd52023-03-14 23:38:47493#include "components/os_crypt/sync/os_crypt.h"
Will Harris265b3942019-10-21 01:01:33494#endif
495
Sebastien Lalancette413625312023-05-08 13:58:01496#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
497 BUILDFLAG(IS_CHROMEOS_ASH)
Sebastien Lalancette120e0592023-05-04 21:02:33498#include "components/device_signals/core/browser/pref_names.h" // nogncheck due to crbug.com/1125897
Lu Huangcd11f21c2021-02-03 22:24:56499#endif
500
Yuta Hijikata31a359c2020-11-27 07:50:26501// TODO(crbug.com/1052397): Revisit the macro expression once build flag switch
502// of lacros-chrome is complete.
Xiaohan Wangae7f9182022-01-16 00:37:52503#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \
504 (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS))
Nicolas Ouellet-Payeur9a4a94d2018-09-17 15:26:11505#include "chrome/browser/browser_switcher/browser_switcher_prefs.h"
506#endif
507
Nicolas Ouellet-Payeurcb894532023-09-28 04:03:15508#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
509#include "chrome/browser/enterprise/signin/enterprise_signin_prefs.h"
510#endif
511
Erik Chen38ceca082020-12-16 01:31:35512#if BUILDFLAG(IS_CHROMEOS_LACROS)
Nancy Wangc84098e2022-10-24 10:30:36513#include "chrome/browser/apps/app_service/metrics/website_metrics_service_lacros.h"
Alex Ilin953f1092021-11-26 15:49:10514#include "chrome/browser/lacros/account_manager/account_cache.h"
Polina Bondarenko3f3dc4f2022-04-25 07:55:01515#include "chrome/browser/lacros/app_mode/kiosk_session_service_lacros.h"
Erik Chen38ceca082020-12-16 01:31:35516#include "chrome/browser/lacros/lacros_prefs.h"
Andreea Costinas68cad91f2021-09-22 15:58:09517#include "chrome/browser/lacros/net/proxy_config_service_lacros.h"
Nicolas Dossou-Gbete7ccc8802022-11-10 15:12:46518#endif
519
520#if BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(ENABLE_DICE_SUPPORT)
521#include "chrome/browser/ui/startup/first_run_service.h"
Erik Chen38ceca082020-12-16 01:31:35522#endif
523
Xiaohan Wangae7f9182022-01-16 00:37:52524#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
Yusuke Sato28ab25092021-05-07 23:04:02525#include "chrome/browser/device_identity/device_oauth2_token_store_desktop.h"
Yann Dago0d896f62020-02-04 19:59:15526#include "chrome/browser/downgrade/downgrade_prefs.h"
thestigf2a0fa92016-09-07 09:37:29527#include "chrome/browser/ui/startup/default_browser_prompt.h"
528#endif
529
[email protected]ceafc462013-11-04 12:26:03530#if defined(TOOLKIT_VIEWS)
531#include "chrome/browser/ui/browser_view_prefs.h"
Yuheng Huang9ce54892022-05-06 19:29:39532#include "chrome/browser/ui/side_search/side_search_prefs.h"
[email protected]ceafc462013-11-04 12:26:03533#endif
534
Scott Violet53fb03c2021-01-15 23:48:16535#if BUILDFLAG(ENABLE_SESSION_SERVICE)
Christian Dullweber0747d7c92021-05-10 10:05:13536#include "chrome/browser/sessions/session_data_service.h"
Scott Violet53fb03c2021-01-15 23:48:16537#include "chrome/browser/sessions/session_service_log.h"
538#endif
tomc5dd0cd2021-10-01 22:15:52539
Tom Andersoncb3408482022-09-02 19:06:41540#if BUILDFLAG(IS_LINUX)
541#include "ui/color/system_theme.h"
542#endif
543
Chris Mullinse59586192023-03-06 17:42:17544#if BUILDFLAG(IS_CHROMEOS_ASH)
545#include "chrome/browser/ash/wallpaper_handlers/wallpaper_prefs.h"
546#endif
547
Dominique Fauteux-Chapleaub6be8ae2023-09-26 13:48:40548#if BUILDFLAG(ENTERPRISE_DATA_CONTROLS)
549#include "components/enterprise/data_controls/prefs.h"
550#endif
551
[email protected]572f40c9b2012-07-06 20:35:33552namespace {
Yao Xiao9255aec2022-02-05 00:02:19553
Lei Zhang9523de82022-03-14 21:40:21554// Please keep the list of deprecated prefs in chronological order. i.e. Add to
555// the bottom of the list, not here at the top.
Toby Huang33753282020-05-05 18:55:22556
Mariam Ali15a343d2023-08-28 15:56:50557// Deprecated 06/2022
558// TODO(crbug.com/1476489): Remove when unit test code is updated.
Caitlin Fischer07366b12022-06-23 17:18:24559#if BUILDFLAG(ENABLE_DICE_SUPPORT)
560const char kTokenServiceDiceCompatible[] = "token_service.dice_compatible";
561#endif
Caitlin Fischer69c1ca892022-07-06 18:32:45562
JunHo Seo1f0506f22022-07-26 02:52:25563#if BUILDFLAG(ENABLE_EXTENSIONS)
Martin Kreichgauerc86cc652022-10-28 16:52:04564// Deprecated 10/2022.
565const char kLoadCryptoTokenExtension[] =
566 "extensions.load_cryptotoken_extension";
JunHo Seo1f0506f22022-07-26 02:52:25567#endif
568
Peter Birk Pakkenberg71a43942023-01-04 13:50:37569// Deprecated 10/2022.
570const char kOriginTrialPrefKey[] = "origin_trials.persistent_trials";
571
dpapad8ad510132022-07-29 18:21:07572#if BUILDFLAG(IS_CHROMEOS_ASH)
Yulun Wu066dab712022-11-01 17:20:24573// Deprecated 10/2022.
574const char kSuggestedContentInfoShownInLauncher[] =
575 "ash.launcher.suggested_content_info_shown";
576const char kSuggestedContentInfoDismissedInLauncher[] =
577 "ash.launcher.suggested_content_info_dismissed";
578#endif
579
Avi Drissmanfee70e5f2022-11-02 20:50:11580#if BUILDFLAG(ENABLE_BACKGROUND_MODE) && BUILDFLAG(IS_MAC)
581// Deprecated 11/2022.
582const char kUserRemovedLoginItem[] = "background_mode.user_removed_login_item";
583const char kChromeCreatedLoginItem[] =
584 "background_mode.chrome_created_login_item";
585const char kMigratedLoginItemPref[] =
586 "background_mode.migrated_login_item_pref";
587#endif
Nicolas Dossou-Gbete2804a372022-11-09 17:25:35588#if BUILDFLAG(IS_CHROMEOS_LACROS)
589const char kPrimaryProfileFirstRunFinished[] =
590 "lacros.primary_profile_first_run_finished";
591#endif
Avi Drissmanfee70e5f2022-11-02 20:50:11592
Victor Hugo Vianna Silva29ab0a32022-11-10 03:48:38593// Deprecated 11/2022.
594const char kLocalConsentsDictionary[] = "local_consents";
595
Jan Keitel4707c1f2022-11-30 11:08:59596// Deprecated 11/2022.
597const char kAutofillAssistantConsent[] = "autofill_assistant.consent";
598const char kAutofillAssistantEnabled[] = "autofill_assistant.enabled";
599const char kAutofillAssistantTriggerScriptsEnabled[] =
600 "autofill_assistant.trigger_scripts.enabled";
601const char kAutofillAssistantTriggerScriptsIsFirstTimeUser[] =
602 "autofill_assistant.trigger_scripts.is_first_time_user";
603
Vishwas Uppoorbcf36722022-12-30 18:55:22604// Deprecated 12/2022.
605const char kAutofillWalletImportStorageCheckboxState[] =
606 "autofill.wallet_import_storage_checkbox_state";
Mikel Astiz231dd522023-04-23 15:51:44607const char kDeprecatedReadingListHasUnseenEntries[] =
608 "reading_list.has_unseen_entries";
Vishwas Uppoorbcf36722022-12-30 18:55:22609
Nasser Al-shawwa16ffdfc2023-01-13 14:32:20610// Deprecated 01/2023
611const char kSendDownloadToCloudPref[] =
612 "enterprise_connectors.send_download_to_cloud";
mark a. foltz264816212023-01-19 21:10:46613
Sebastien Lalancette55953e42023-01-17 14:48:31614#if BUILDFLAG(IS_MAC)
615const char kDeviceTrustDisableKeyCreationPref[] =
616 "enterprise_connectors.device_trust.disable_key_creation";
617#endif // BUILDFLAG(IS_MAC)
Nasser Al-shawwa16ffdfc2023-01-13 14:32:20618
Daseul Lee56c5a8d2023-01-17 17:18:46619// Deprecated 01/2023.
620const char kFileSystemSyncAccessHandleAsyncInterfaceEnabled[] =
621 "policy.file_system_sync_access_handle_async_interface_enabled";
622
mark a. foltz264816212023-01-19 21:10:46623// Deprecated 01/2023.
624#if !BUILDFLAG(IS_ANDROID)
625const char kMediaRouterTabMirroringSources[] =
626 "media_router.tab_mirroring_sources";
627#endif // !BUILDFLAG(IS_ANDROID)
628
Mahmoud Rashad96ac6022023-01-26 23:48:18629// Deprecated 01/2023.
630const char kAutofillCreditCardSigninPromoImpressionCount[] =
631 "autofill.credit_card_signin_promo_impression_count";
632
Andrew Breggerf89f1322023-02-01 02:22:03633// Deprecated 01/2023
634#if BUILDFLAG(IS_CHROMEOS_ASH)
635const char kEventSequenceLastSystemUptime[] =
636 "metrics.event_sequence.last_system_uptime";
637
638// Keeps track of the device reset counter.
639const char kEventSequenceResetCounter[] =
640 "metrics.event_sequence.reset_counter";
641#endif // BUILDFLAG(IS_CHROMEOS_ASH)
642
Osama Fathy592e239a2023-02-02 15:26:13643// Deprecated 02/2023.
644#if BUILDFLAG(IS_CHROMEOS_ASH)
645const char kArcTermsShownInOobe[] = "arc.terms.shown_in_oobe";
646#endif // !BUILDFLAG(IS_CHROMEOS_ASH)
647
Maksim Moskvitin265fd062023-02-17 13:04:22648// Deprecated 02/2023
649const char kSyncInvalidationVersions[] = "sync.invalidation_versions";
650const char kSyncInvalidationVersions2[] = "sync.invalidation_versions2";
651
Lei Zhang52efbb02023-02-21 22:56:38652// Deprecated 02/2023.
Lei Zhang5e1ffd62023-02-23 17:52:44653const char kClearPluginLSODataEnabled[] = "browser.clear_lso_data_enabled";
Lei Zhang543294f2023-02-23 19:53:43654const char kContentSettingsPluginAllowlist[] =
655 "profile.content_settings.plugin_whitelist";
Lei Zhang5e1ffd62023-02-23 17:52:44656const char kPepperFlashSettingsEnabled[] =
657 "browser.pepper_flash_settings_enabled";
Lei Zhang52efbb02023-02-21 22:56:38658const char kPluginsAllowOutdated[] = "plugins.allow_outdated";
Lei Zhang701e2342023-02-22 00:39:42659const char kPluginsLastInternalDirectory[] = "plugins.last_internal_directory";
660const char kPluginsPluginsList[] = "plugins.plugins_list";
Lei Zhang52efbb02023-02-21 22:56:38661const char kPluginsShowDetails[] = "plugins.show_details";
662
Lu Huangeba5b532023-02-22 23:19:34663// Deprecated 02/2023.
664#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
665const char kWebAppsUrlHandlerInfo[] = "web_apps.url_handler_info";
666#endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
667
Brittany Hartmire8a36b6e42023-02-24 23:09:09668// Deprecated 02/2023.
669#if BUILDFLAG(IS_CHROMEOS_ASH)
670const char kHasSeenSmartLockSignInRemovedNotification[] =
671 "easy_unlock.has_seen_smart_lock_sign_in_removed_notification";
Brittany Hartmire537aa47b2023-03-01 23:43:09672const char kEasyUnlockLocalStateTpmKeys[] = "easy_unlock.public_tpm_keys";
Brittany Hartmire8a36b6e42023-02-24 23:09:09673#endif // BUILDFLAG(IS_CHROMEOS_ASH)
674
Ari Chivukula951893d2023-03-03 18:03:29675// Deprecated 03/2023.
676const char kGoogleSearchDomainMixingMetricsEmitterLastMetricsTime[] =
677 "browser.last_google_search_domain_mixing_metrics_time";
678
Artsiom Mitrokhincf332e22023-03-07 16:27:47679// Deprecated 03/2023
680#if BUILDFLAG(IS_CHROMEOS_ASH)
681const char kGlanceablesSignoutScreenshotDuration[] =
682 "ash.signout_screenshot.duration";
683#endif // BUILDFLAG(IS_CHROMEOS_ASH)
684
Brittany Hartmireafd35312023-03-16 00:21:03685// Deprecated 03/2023.
686#if BUILDFLAG(IS_CHROMEOS_ASH)
687const char kEasyUnlockLocalStateUserPrefs[] = "easy_unlock.user_prefs";
688#endif // BUILDFLAG(IS_CHROMEOS_ASH)
689
conniekxu4d14f65c2023-03-28 20:56:36690// Deprecated 03/2023
691#if BUILDFLAG(IS_CHROMEOS_ASH)
692const char kDarkLightModeNudgeLeftToShowCount[] =
693 "ash.dark_light_mode.educational_nudge";
694#endif // BUILDFLAG(IS_CHROMEOS_ASH)
695
Adam Langley390670302023-03-31 00:43:31696// Deprecated 03/2023.
697#if BUILDFLAG(IS_WIN)
698const char kWebAuthnLastOperationWasNativeAPI[] =
699 "webauthn.last_op_used_native_api";
700#endif
701
Brittany Hartmire1ffd662e2023-04-04 22:46:51702// Deprecated 03/2023.
703#if BUILDFLAG(IS_CHROMEOS_ASH)
704const char kEasyUnlockHardlockState[] = "easy_unlock.hardlock_state";
705#endif // BUILDFLAG(IS_CHROMEOS_ASH)
706
Richard Chui821cdad2023-04-07 21:39:57707// Deprecated 04/2023.
708#if BUILDFLAG(IS_CHROMEOS_ASH)
709const char kBentoBarEnabled[] = "ash.bento_bar.enabled";
710const char kUserHasUsedDesksRecently[] = "ash.user_has_used_desks_recently";
711#endif // BUILDFLAG(IS_CHROMEOS_ASH)
712
Dan Harrington83791492023-04-10 20:49:27713// Deprecated 04/2023.
714#if BUILDFLAG(IS_ANDROID)
715const char kUserSettingEnabled[] = "offline_prefetch.enabled";
716const char kBackoff[] = "offline_prefetch.backoff";
717const char kLimitlessPrefetchingEnabledTimePref[] =
718 "offline_prefetch.limitless_prefetching_enabled_time";
719const char kPrefetchTestingHeaderPref[] =
720 "offline_prefetch.testing_header_value";
721const char kEnabledByServer[] = "offline_prefetch.enabled_by_server";
722const char kNextForbiddenCheckTimePref[] = "offline_prefetch.next_gpb_check";
723const char kPrefetchCachedGCMToken[] = "offline_prefetch.gcm_token";
724#endif
725
Artem Sumaneev77f80bb2023-04-11 14:04:58726// Deprecated 04/2023.
727const char kTypeSubscribedForInvalidations[] =
728 "invalidation.registered_for_invalidation";
729const char kActiveRegistrationToken[] =
730 "invalidation.active_registration_token";
731const char kFCMInvalidationClientIDCache[] = "fcm.invalidation.client_id_cache";
732
Osama Fathy5d236652023-04-17 17:31:12733// Deprecated 04/2023.
734#if BUILDFLAG(IS_CHROMEOS_ASH)
735const char kConsolidatedConsentTrial[] = "per_user_metrics.trial_group";
736#endif // BUILDFLAG(IS_CHROMEOS_ASH)
737
Jérémie Boulic8d672f22023-04-18 02:44:05738// Deprecated 04/2023.
739#if BUILDFLAG(IS_CHROMEOS_ASH)
740const char kOfficeFilesAlwaysMove[] = "filebrowser.office.always_move";
741const char kOfficeMoveConfirmationShown[] =
742 "filebrowser.office.move_confirmation_shown";
743#endif // BUILDFLAG(IS_CHROMEOS_ASH)
744
Brittany Hartmire402a3922023-04-18 22:15:36745// Deprecated 04/2023.
746#if BUILDFLAG(IS_CHROMEOS_ASH)
747const char kProximityAuthIsChromeOSLoginEnabled[] =
748 "proximity_auth.is_chromeos_login_enabled";
749#endif // BUILDFLAG(IS_CHROMEOS_ASH)
750
Roland Bock8e21dd022023-04-27 09:33:48751// Deprecated 04/2023.
752#if BUILDFLAG(IS_CHROMEOS_ASH)
753const char kEnrollmentIdUploadedOnChromad[] = "chromad.enrollment_id_uploaded";
754const char kLastChromadMigrationAttemptTime[] =
755 "chromad.last_migration_attempt_time";
756#endif // BUILDFLAG(IS_CHROMEOS_ASH)
757
Brittany Hartmire22aa1ae82023-05-09 17:37:23758// Deprecated 05/2023.
759#if BUILDFLAG(IS_CHROMEOS_ASH)
760const char kSmartLockSigninAllowed[] = "smart_lock_signin.allowed";
761#endif // BUILDFLAG(IS_CHROMEOS_ASH)
762
David Trainorb7400c22023-05-10 19:17:06763// Deprecated 05/2023
764#if BUILDFLAG(IS_ANDROID)
765const char kVideoTutorialsPreferredLocaleKey[] =
766 "video_tutorials.perferred_locale";
767const char kVideoTutorialsLastUpdatedTimeKey[] =
768 "video_tutorials.last_updated_time";
Cathy Li7ff029622023-05-26 04:56:52769const char kWeeklyStatsReportingTimestamp[] =
770 "explore_sites.weekly_stats_reporting_timestamp";
David Trainorb7400c22023-05-10 19:17:06771#endif // BUILDFLAG(IS_ANDROID)
772
Pilar Molina Lopezef825502023-05-12 18:08:48773// Deprecated 05/2023
Colin Blundella2aea272023-05-15 09:50:00774const char kForceEnablePepperVideoDecoderDevAPI[] =
775 "policy.force_enable_pepper_video_decoder_dev_api";
776
777// Deprecated 05/2023
Pilar Molina Lopezef825502023-05-12 18:08:48778const char kUseMojoVideoDecoderForPepperAllowed[] =
779 "policy.use_mojo_video_decoder_for_pepper_allowed";
780
Vasiliy Telezhnikov2a786452023-05-12 23:53:37781// Deprecated 05/2023.
782const char kPPAPISharedImagesSwapChainAllowed[] =
783 "policy.ppapi_shared_images_swap_chain_allowed";
784
Peter Marshall7fdea2b2023-05-15 01:16:38785// Deprecated 05/2023.
786#if BUILDFLAG(IS_CHROMEOS_ASH)
787const char kOfficeSetupComplete[] = "filebrowser.office.setup_complete";
788#endif // BUILDFLAG(IS_CHROMEOS_ASH)
789
Elias Khsheibund1700562023-05-15 13:31:21790// Deprecated 05/2023.
791#if BUILDFLAG(IS_ANDROID)
792const char kTimesUPMAuthErrorShown[] = "times_upm_auth_error_shown";
793#endif // BUILDFLAG(IS_ANDROID)
794
Maciek Slusarczyk56833f02023-05-19 09:02:14795// Deprecated 05/2023.
796#if BUILDFLAG(IS_CHROMEOS_ASH)
797const char kSamlPasswordSyncToken[] = "saml.password_sync_token";
798#endif // BUILDFLAG(IS_CHROMEOS_ASH)
799
Ramin Halavatiec90e022023-05-23 13:55:05800// Deprecated 05/2023.
801#if BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
802const char kScreenAIScheduledDeletionTimePrefName[] =
803 "accessibility.screen_ai.scheduled_deletion_time";
804#endif
805
Michael Checo1f8625942023-05-23 19:33:47806// Deprecated 05/2023.
807#if BUILDFLAG(IS_CHROMEOS_ASH)
808const char kEventRemappedToRightClick[] =
809 "ash.settings.event_remapped_to_right_click";
810#endif
811
Hidehiko Abead7991f22023-05-31 14:32:22812// Deprecated 05/2023.
813#if BUILDFLAG(IS_CHROMEOS_ASH)
Tim Sergeantaffc95a2023-10-17 17:38:21814const char kSupervisedUserSyncId[] = "ManagedUserSyncId";
815const char kSupervisedUserManagers[] = "ManagedUserManagers";
816const char kSupervisedUserManagerNames[] = "ManagedUserManagerNames";
817const char kSupervisedUserManagerDisplayEmails[] =
Hidehiko Abead7991f22023-05-31 14:32:22818 "ManagedUserManagerDisplayEmails";
Tim Sergeantaffc95a2023-10-17 17:38:21819const char kSupervisedUsersFirstRun[] = "LocallyManagedUsersFirstRun";
820const char kSupervisedUserPasswordSchema[] = "SupervisedUserPasswordSchema";
821const char kSupervisedUserPasswordSalt[] = "SupervisedUserPasswordSalt";
822const char kSupervisedUserPasswordRevision[] = "SupervisedUserPasswordRevision";
823const char kSupervisedUserNeedPasswordUpdate[] =
Hidehiko Abead7991f22023-05-31 14:32:22824 "SupervisedUserNeedPasswordUpdate";
Tim Sergeantaffc95a2023-10-17 17:38:21825const char kSupervisedUserIncompleteKey[] = "SupervisedUserHasIncompleteKey";
Hidehiko Abead7991f22023-05-31 14:32:22826#endif
827
Alan Cutter3bfce6e2023-06-07 01:53:02828// Deprecated 06/2023.
Alan Cutter086bdf72023-06-09 02:40:11829#if BUILDFLAG(IS_CHROMEOS_ASH)
830const char kWebAppCalculatorAppErasureFixAppliedPref[] =
831 "web_app.calculator_app_erasure_fix_applied";
832#endif // BUILDFLAG(IS_CHROMEOS_ASH)
833
834// Deprecated 06/2023.
Alan Cutter3bfce6e2023-06-07 01:53:02835const char kWebAppsExtensionIDs[] = "web_apps.extension_ids";
836
Marc Treib7aaf21332023-06-14 08:30:01837// Deprecated 06/2023.
838#if BUILDFLAG(IS_CHROMEOS_ASH)
Tim Sergeantaffc95a2023-10-17 17:38:21839const char kOsSyncPrefsMigrated[] = "sync.os_sync_prefs_migrated";
Marc Treib7aaf21332023-06-14 08:30:01840#endif // BUILDFLAG(IS_CHROMEOS_ASH)
841
Yue Zhangf7cf6712023-06-16 18:11:32842// Deprecated 06/2023
843#if !BUILDFLAG(IS_ANDROID)
844const char kShouldShowSidePanelBookmarkTab[] =
845 "should_show_side_panel_bookmark_tab";
846#endif // !BUILDFLAG(IS_ANDROID)
847
Maciek Slusarczyk9fed52232023-06-21 14:46:07848// Deprecated 06/2023.
849#if BUILDFLAG(IS_CHROMEOS_ASH)
850const char kGaiaLastOnlineSignInTime[] = "gaia.last_online_sign_in_time";
851const char kSAMLLastGAIASignInTime[] = "saml.last_gaia_sign_in_time";
852#endif // BUILDFLAG(IS_CHROMEOS_ASH)
853
Eshwar Stalin883b5a72023-07-11 02:05:59854// Deprecated 07/2023
855#if !BUILDFLAG(IS_ANDROID)
856const char kLegacyHoverCardImagesEnabled[] = "browser.hovercard_images_enabled";
857#endif // !BUILDFLAG(IS_ANDROID)
858
Jian Li7541a082023-06-18 23:52:14859#if BUILDFLAG(ENABLE_FEED_V2)
860const char kVideoPreviewsType[] = "ntp_snippets.video_previews_type";
861#endif // BUILDFLAG(ENABLE_FEED_V2)
862
Anthony Cui5e5dad9322023-07-10 17:34:54863// Deprecated 06/2023.
864#if BUILDFLAG(IS_ANDROID)
865const char kPrefExplicitLanguageAskShown[] =
866 "translate_explicit_language_ask_shown";
867#endif // BUILDFLAG(IS_ANDROID)
868
Mihai Sardarescu6db89cf2023-07-04 07:36:02869// Deprecated 07/2023.
870#if !BUILDFLAG(IS_CHROMEOS_ASH)
871const char kUnifiedConsentMigrationState[] = "unified_consent.migration_state";
872#endif // !BUILDFLAG(IS_CHROMEOS_ASH)
873
Viktor Semeniuk13075de02023-07-18 08:24:36874// Deprecated 07/2023.
875const char kPasswordsGroupingInfoRequested[] =
876 "password_manager.passwords_grouping_info_requested";
877
Hui Yingstd4c7a572023-07-18 18:16:15878// Deprecated 07/2023.
879#if BUILDFLAG(IS_CHROMEOS_ASH)
880const char kPowerMetricsIdleScreenOffCount[] =
881 "power.metrics.idle_screen_off_count";
882const char kPowerMetricsIdleSuspendCount[] = "power.metrics.idle_suspend_count";
883const char kPowerMetricsLidClosedSuspendCount[] =
884 "power.metrics.lid_closed_suspend_count";
885#endif // BUILDFLAG(IS_CHROMEOS_ASH)
886
Christoph Schlosser1f1ec9b2023-07-26 08:12:56887// Deprecated 07/2023.
888#if BUILDFLAG(IS_CHROMEOS_ASH)
889const char kHatsPrivacyHubBaselineIsSelected[] =
890 "hats_privacy_hub_baseline_is_selected";
891const char kHatsPrivacyHubBaselineCycleEndTs[] =
892 "hats_privacy_hub_baseline_end_timestamp";
893#endif // BUILDFLAG(IS_CHROMEOS_ASH)
894
Yuta Hijikata9cd674122023-07-29 15:43:37895// Deprecated 07/2023.
896#if BUILDFLAG(IS_CHROMEOS_ASH)
897const char kClearUserDataDir1Pref[] = "lacros.clear_user_data_dir_1";
898#endif
899
Etienne Bergeron6ac228e2023-08-02 17:39:04900// Deprecated 07/2023.
901const char kShutdownNumProcesses[] = "shutdown.num_processes";
902const char kShutdownNumProcessesSlow[] = "shutdown.num_processes_slow";
Etienne Bergeronec5c88fb2023-08-07 15:09:39903const char kShutdownType[] = "shutdown.type";
Etienne Bergeron6ac228e2023-08-02 17:39:04904
François Degros82e8d052023-08-15 19:44:23905// Deprecated 08/2023.
906const char kDriveFsBulkPinningMaxQueueSize[] =
907 "drivefs.bulk_pinning.max_queue_size";
908
Nicola Tommasiff549832023-09-04 11:35:06909// Deprecated 09/2023.
910const char kPrivacySandboxM1Unrestricted[] = "privacy_sandbox.m1.unrestricted";
Daniel Ruberya440a6b12023-09-08 22:04:33911#if BUILDFLAG(IS_WIN)
912const char kSwReporter[] = "software_reporter";
Lily Chene658b27b2023-10-11 19:06:19913const char kChromeCleaner[] = "chrome_cleaner";
914const char kSettingsResetPrompt[] = "settings_reset_prompt";
Daniel Ruberya440a6b12023-09-08 22:04:33915#endif
Lily Chen492c670f2023-09-15 21:35:47916// A boolean specifying whether the new download bubble UI is enabled. If it is
917// set to false, the old download shelf UI will be shown instead.
Lily Chene658b27b2023-10-11 19:06:19918const char kDownloadBubbleEnabled[] = "download_bubble_enabled";
Nicola Tommasiff549832023-09-04 11:35:06919
Ahmed Mehfooze6c06892023-09-14 00:48:17920// Deprecated 09/2023.
921#if BUILDFLAG(IS_CHROMEOS_ASH)
Lily Chene658b27b2023-10-11 19:06:19922const char kGestureEducationNotificationShown[] =
Ahmed Mehfooze6c06892023-09-14 00:48:17923 "ash.gesture_education.notification_shown";
Mikel Astiz3dc3dabc2023-09-25 19:32:21924
925// Note that this very name is used outside ChromeOS Ash, where it isn't
926// deprecated.
Lily Chene658b27b2023-10-11 19:06:19927const char kSyncInitialSyncFeatureSetupCompleteOnAsh[] =
Mikel Astiz3dc3dabc2023-09-25 19:32:21928 "sync.has_setup_completed";
Ahmed Mehfooze6c06892023-09-14 00:48:17929#endif
930
Ankush Singh041ec0d2023-09-21 09:06:13931// Deprecated 09/2023.
Lily Chene658b27b2023-10-11 19:06:19932const char kPrivacySandboxManuallyControlled[] =
Ankush Singh041ec0d2023-09-21 09:06:13933 "privacy_sandbox.manually_controlled";
934
Ivana Žužić2fa04d12023-09-29 13:46:31935// Deprecated 09/2023.
Ivana Žužić2fa04d12023-09-29 13:46:31936#if BUILDFLAG(IS_ANDROID)
937const char kSettingsMigratedToUPM[] = "profile.settings_migrated_to_upm";
938#endif
939
Mikel Astizd848587f2023-10-02 09:28:03940// Deprecated 10/2023.
Lily Chene658b27b2023-10-11 19:06:19941const char kSyncRequested[] = "sync.requested";
942const char kDownloadLastCompleteTime[] = "download.last_complete_time";
Mikel Astizd848587f2023-10-02 09:28:03943
James Hawkins8d2adfd2023-10-05 08:24:56944// Deprecated 10/2023.
945#if BUILDFLAG(IS_CHROMEOS_ASH)
946const char kLastSuccessfulDomainPref[] = "android_sms.last_successful_domain";
947const char kShouldAttemptReenable[] = "android_sms.should_attempt_reenable";
Jeremy Wu52e5c852023-10-31 01:45:09948const char kAudioVolumePercent[] = "settings.audio.volume_percent";
James Hawkins8d2adfd2023-10-05 08:24:56949#endif // BUILDFLAG(IS_CHROMEOS_ASH)
950
Tim Sergeantce1539d2023-10-12 00:35:49951// Deprecated 10/2023.
952#if BUILDFLAG(IS_CHROMEOS)
Tim Sergeantaffc95a2023-10-17 17:38:21953const char kSupportedLinksAppPrefsKey[] = "supported_links_infobar.apps";
Tim Sergeantce1539d2023-10-12 00:35:49954#endif // BUILDFLAG(IS_CHROMEOS)
955
Eric Suma2add402023-10-24 03:48:53956// Deprecated 10/2023.
957#if BUILDFLAG(IS_CHROMEOS_ASH)
958constexpr char kNightLightCachedLatitude[] = "ash.night_light.cached_latitude";
959constexpr char kNightLightCachedLongitude[] =
960 "ash.night_light.cached_longitude";
Zauri Meshvelianic39cff7c2023-11-14 20:31:11961#endif // BUILDFLAG(IS_CHROMEOS_ASH)
962
963// Deprecated 11/2023
964#if BUILDFLAG(IS_CHROMEOS_ASH)
965constexpr char kUserGeolocationAllowed[] = "ash.user.geolocation_allowed";
966#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Eric Suma2add402023-10-24 03:48:53967
Ryan Kalla4bd74b412023-11-03 16:11:36968// Deprecated 11/2023.
969const char kPrivacySandboxAntiAbuseInitialized[] =
970 "privacy_sandbox.anti_abuse_initialized";
971
Guido Urdaneta39d28bb72023-11-09 14:40:58972// Deprecated 11/2023.
973constexpr char kWebRTCAllowLegacyTLSProtocols[] =
974 "webrtc.allow_legacy_tls_protocols";
975
Jiaming Chengbf012ae2023-11-10 22:00:12976// Deprecated 11/2023.
977#if BUILDFLAG(IS_CHROMEOS_ASH)
978constexpr char kSystemTrayExpanded[] = "ash.system_tray.expanded";
979#endif
980
Jan Keitel17fdab22023-11-17 12:41:36981// Deprecated 11/2023.
982constexpr char kPasswordChangeSuccessTrackerFlows[] =
983 "password_manager.password_change_success_tracker.flows";
984constexpr char kPasswordChangeSuccessTrackerVersion[] =
985 "password_manager.password_change_success_tracker.version";
986
Wen-Chien Wang29111192023-11-30 02:13:30987// Deprecated 11/2023.
988#if BUILDFLAG(IS_CHROMEOS_ASH)
989constexpr char kImageSearchPrivacyNotice[] =
990 "ash.launcher.image_search_privacy_notice";
991#endif // BUILDFLAG(IS_CHROMEOS_ASH)
992
Matt Jones90c86302023-12-07 18:06:38993// Deprecated 11/2023.
994constexpr char kWebAndAppActivityEnabledForShopping[] =
995 "web_and_app_activity_enabled_for_shopping";
996
Lei Zhangb76b80e32020-04-08 16:58:16997// Register local state used only for migration (clearing or moving to a new
998// key).
999void RegisterLocalStatePrefsForMigration(PrefRegistrySimple* registry) {
Avi Drissmanfee70e5f2022-11-02 20:50:111000// Deprecated 11/2022.
1001#if BUILDFLAG(ENABLE_BACKGROUND_MODE) && BUILDFLAG(IS_MAC)
1002 registry->RegisterBooleanPref(kUserRemovedLoginItem, false);
1003 registry->RegisterBooleanPref(kChromeCreatedLoginItem, false);
1004 registry->RegisterBooleanPref(kMigratedLoginItemPref, false);
1005#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Nicolas Dossou-Gbete2804a372022-11-09 17:25:351006
1007#if BUILDFLAG(IS_CHROMEOS_LACROS)
1008 registry->RegisterBooleanPref(kPrimaryProfileFirstRunFinished, false);
1009#endif
Victor Hugo Vianna Silva29ab0a32022-11-10 03:48:381010
1011 // Deprecated 11/2022.
1012 registry->RegisterDictionaryPref(kLocalConsentsDictionary);
Nasser Al-shawwa16ffdfc2023-01-13 14:32:201013
mark a. foltz264816212023-01-19 21:10:461014 // Deprecated 01/2023.
Nasser Al-shawwa16ffdfc2023-01-13 14:32:201015 registry->RegisterListPref(kSendDownloadToCloudPref);
mark a. foltz264816212023-01-19 21:10:461016
Sebastien Lalancette55953e42023-01-17 14:48:311017#if BUILDFLAG(IS_MAC)
1018 registry->RegisterBooleanPref(kDeviceTrustDisableKeyCreationPref, false);
1019#endif // BUILDFLAG(IS_MAC)
Andrew Breggerf89f1322023-02-01 02:22:031020
1021 // Deprecated 01/2023
1022#if BUILDFLAG(IS_CHROMEOS_ASH)
1023 registry->RegisterIntegerPref(kEventSequenceResetCounter, 0);
1024 registry->RegisterInt64Pref(kEventSequenceLastSystemUptime, 0);
1025#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Lu Huangeba5b532023-02-22 23:19:341026
1027 // Deprecated 02/2023.
1028#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
1029 registry->RegisterDictionaryPref(kWebAppsUrlHandlerInfo);
1030#endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
Brittany Hartmire537aa47b2023-03-01 23:43:091031
1032// Deprecated 02/2023.
1033#if BUILDFLAG(IS_CHROMEOS_ASH)
1034 registry->RegisterDictionaryPref(kEasyUnlockLocalStateTpmKeys);
1035#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Artsiom Mitrokhincf332e22023-03-07 16:27:471036
1037// Deprecated 03/2023.
1038#if BUILDFLAG(IS_CHROMEOS_ASH)
1039 registry->RegisterTimeDeltaPref(kGlanceablesSignoutScreenshotDuration,
1040 base::TimeDelta());
1041#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Brittany Hartmireafd35312023-03-16 00:21:031042
1043// Deprecated 03/2023.
1044#if BUILDFLAG(IS_CHROMEOS_ASH)
1045 registry->RegisterDictionaryPref(kEasyUnlockLocalStateUserPrefs);
1046#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Brittany Hartmire1ffd662e2023-04-04 22:46:511047
1048// Deprecated 04/2023.
1049#if BUILDFLAG(IS_CHROMEOS_ASH)
1050 registry->RegisterDictionaryPref(kEasyUnlockHardlockState);
1051#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Artem Sumaneev77f80bb2023-04-11 14:04:581052
1053 // Deprecated 04/2023.
1054 registry->RegisterDictionaryPref(kTypeSubscribedForInvalidations);
1055 registry->RegisterStringPref(kActiveRegistrationToken, std::string());
1056 registry->RegisterStringPref(kFCMInvalidationClientIDCache, std::string());
Osama Fathy5d236652023-04-17 17:31:121057
1058// Deprecated 04/2023.
1059#if BUILDFLAG(IS_CHROMEOS_ASH)
1060 registry->RegisterStringPref(kConsolidatedConsentTrial, std::string());
1061#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Roland Bock8e21dd022023-04-27 09:33:481062
1063// Deprecated 04/2023.
1064#if BUILDFLAG(IS_CHROMEOS_ASH)
1065 registry->RegisterBooleanPref(kEnrollmentIdUploadedOnChromad, false);
1066 registry->RegisterTimePref(kLastChromadMigrationAttemptTime,
1067 /*default_value=*/base::Time());
1068#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Pilar Molina Lopezef825502023-05-12 18:08:481069
1070 // Deprecated 05/2023.
Colin Blundella2aea272023-05-15 09:50:001071 registry->RegisterBooleanPref(kForceEnablePepperVideoDecoderDevAPI, false);
1072
1073 // Deprecated 05/2023.
Pilar Molina Lopezef825502023-05-12 18:08:481074 registry->RegisterBooleanPref(kUseMojoVideoDecoderForPepperAllowed, true);
Vasiliy Telezhnikov2a786452023-05-12 23:53:371075
1076 // Deprecated 05/2023.
1077 registry->RegisterBooleanPref(kPPAPISharedImagesSwapChainAllowed, true);
Ramin Halavatiec90e022023-05-23 13:55:051078
1079// Deprecated 05/2023.
1080#if BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
1081 registry->RegisterTimePref(kScreenAIScheduledDeletionTimePrefName,
1082 base::Time());
1083#endif
Cathy Li7ff029622023-05-26 04:56:521084
1085// Deprecated 05/2023
1086#if BUILDFLAG(IS_ANDROID)
1087 registry->RegisterTimePref(kWeeklyStatsReportingTimestamp, base::Time());
1088#endif // BUILDFLAG(IS_ANDROID)
Hidehiko Abead7991f22023-05-31 14:32:221089
1090// Deprecated 05/2023.
1091#if BUILDFLAG(IS_CHROMEOS_ASH)
1092 registry->RegisterListPref(kSupervisedUsersFirstRun);
1093 registry->RegisterDictionaryPref(kSupervisedUserSyncId);
1094 registry->RegisterDictionaryPref(kSupervisedUserManagers);
1095 registry->RegisterDictionaryPref(kSupervisedUserManagerNames);
1096 registry->RegisterDictionaryPref(kSupervisedUserManagerDisplayEmails);
1097
1098 registry->RegisterDictionaryPref(kSupervisedUserPasswordSchema);
1099 registry->RegisterDictionaryPref(kSupervisedUserPasswordSalt);
1100 registry->RegisterDictionaryPref(kSupervisedUserPasswordRevision);
1101
1102 registry->RegisterDictionaryPref(kSupervisedUserNeedPasswordUpdate);
1103 registry->RegisterDictionaryPref(kSupervisedUserIncompleteKey);
1104#endif
Eshwar Stalin883b5a72023-07-11 02:05:591105
1106// Deprecated 07/2023
1107#if !BUILDFLAG(IS_ANDROID)
1108 registry->RegisterBooleanPref(kLegacyHoverCardImagesEnabled, false);
1109#endif // !BUILDFLAG(IS_ANDROID)
Etienne Bergeron6ac228e2023-08-02 17:39:041110
1111 // Deprecated 07/2023.
1112 registry->RegisterIntegerPref(kShutdownNumProcesses, 0);
1113 registry->RegisterIntegerPref(kShutdownNumProcessesSlow, 0);
Etienne Bergeronec5c88fb2023-08-07 15:09:391114 registry->RegisterIntegerPref(kShutdownType, 0);
Daniel Ruberya440a6b12023-09-08 22:04:331115
1116 // Deprecated 09/2023.
1117#if BUILDFLAG(IS_WIN)
1118 registry->RegisterDictionaryPref(kSwReporter);
1119 registry->RegisterDictionaryPref(kChromeCleaner);
1120#endif
Ahmed Mehfooze6c06892023-09-14 00:48:171121
1122 // Deprecated 09/2023.
1123#if BUILDFLAG(IS_CHROMEOS_ASH)
1124 registry->RegisterBooleanPref(kGestureEducationNotificationShown, true);
1125#endif
Lei Zhangb76b80e32020-04-08 16:58:161126}
1127
James Cook0ba192bf2017-12-01 20:53:111128// Register prefs used only for migration (clearing or moving to a new key).
1129void RegisterProfilePrefsForMigration(
1130 user_prefs::PrefRegistrySyncable* registry) {
Ben Schwartz135746c2020-05-14 04:37:031131 chrome_browser_net::secure_dns::RegisterProbesSettingBackupPref(registry);
wutao2e24aff2020-04-03 17:01:021132
Mihai Sardarescu3a27a8b2022-05-30 14:01:491133#if BUILDFLAG(ENABLE_DICE_SUPPORT)
Mariam Ali15a343d2023-08-28 15:56:501134 // Deprecated 06/2022
1135 // TODO(crbug.com/1476489): Remove when unit test code is updated.
Mihai Sardarescu3a27a8b2022-05-30 14:01:491136 registry->RegisterBooleanPref(kTokenServiceDiceCompatible, false);
1137#endif // BUILDFLAG(ENABLE_DICE_SUPPORT)
Theodore Olsauskas-Warren0b852302022-06-28 12:05:071138
Martin Kreichgauerc86cc652022-10-28 16:52:041139#if BUILDFLAG(ENABLE_EXTENSIONS)
1140 // Deprecated 10/2022.
1141 registry->RegisterBooleanPref(kLoadCryptoTokenExtension, false);
1142#endif
Yulun Wu066dab712022-11-01 17:20:241143
1144// Deprecated 10/2022.
1145#if BUILDFLAG(IS_CHROMEOS_ASH)
1146 registry->RegisterIntegerPref(kSuggestedContentInfoShownInLauncher, 0);
1147 registry->RegisterBooleanPref(kSuggestedContentInfoDismissedInLauncher,
1148 false);
1149#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Peter Birk Pakkenberg71a43942023-01-04 13:50:371150 // Deprecated 10/2022.
1151 registry->RegisterDictionaryPref(kOriginTrialPrefKey,
1152 PrefRegistry::LOSSY_PREF);
Jan Keitel4707c1f2022-11-30 11:08:591153
1154 // Deprecated 11/2022.
1155 registry->RegisterBooleanPref(kAutofillAssistantEnabled, true);
1156 registry->RegisterBooleanPref(kAutofillAssistantConsent, false);
1157 registry->RegisterBooleanPref(kAutofillAssistantTriggerScriptsEnabled, true);
1158 registry->RegisterBooleanPref(kAutofillAssistantTriggerScriptsIsFirstTimeUser,
1159 true);
Vishwas Uppoorbcf36722022-12-30 18:55:221160
1161 // Deprecated 12/2022.
1162 registry->RegisterBooleanPref(kAutofillWalletImportStorageCheckboxState,
1163 true);
Mikel Astiz231dd522023-04-23 15:51:441164 registry->RegisterBooleanPref(kDeprecatedReadingListHasUnseenEntries, false);
Daseul Lee56c5a8d2023-01-17 17:18:461165
1166 // Deprecated 01/2023.
1167 registry->RegisterBooleanPref(
1168 kFileSystemSyncAccessHandleAsyncInterfaceEnabled, false);
mark a. foltz264816212023-01-19 21:10:461169
1170 // Deprecated 01/2023.
1171#if !BUILDFLAG(IS_ANDROID)
1172 registry->RegisterListPref(kMediaRouterTabMirroringSources);
1173#endif // !BUILDFLAG(IS_ANDROID)
Mahmoud Rashad96ac6022023-01-26 23:48:181174
1175 // Deprecated 01/2023.
1176 registry->RegisterIntegerPref(kAutofillCreditCardSigninPromoImpressionCount,
1177 0);
Nasser Al-shawwafef41782023-01-27 20:43:501178
1179 // Deprecated 01/2023.
1180 registry->RegisterListPref(kSendDownloadToCloudPref);
James Cook0ba192bf2017-12-01 20:53:111181
Osama Fathy592e239a2023-02-02 15:26:131182// Deprecated 02/2023.
1183#if BUILDFLAG(IS_CHROMEOS_ASH)
1184 registry->RegisterBooleanPref(kArcTermsShownInOobe, false);
1185#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Maksim Moskvitin265fd062023-02-17 13:04:221186
1187 // Deprecated 02/2023.
1188 registry->RegisterDictionaryPref(kSyncInvalidationVersions);
1189 registry->RegisterDictionaryPref(kSyncInvalidationVersions2);
Lei Zhang52efbb02023-02-21 22:56:381190
1191 // Deprecated 02/2023.
Lei Zhang5e1ffd62023-02-23 17:52:441192 registry->RegisterBooleanPref(kClearPluginLSODataEnabled, false);
Lei Zhang543294f2023-02-23 19:53:431193 registry->RegisterDictionaryPref(kContentSettingsPluginAllowlist);
Lei Zhang5e1ffd62023-02-23 17:52:441194 registry->RegisterBooleanPref(kPepperFlashSettingsEnabled, false);
Lei Zhang52efbb02023-02-21 22:56:381195 registry->RegisterBooleanPref(kPluginsAllowOutdated, false);
Lei Zhang701e2342023-02-22 00:39:421196 registry->RegisterFilePathPref(kPluginsLastInternalDirectory,
1197 base::FilePath());
1198 registry->RegisterListPref(kPluginsPluginsList);
Lei Zhang52efbb02023-02-21 22:56:381199 registry->RegisterBooleanPref(kPluginsShowDetails, false);
Brittany Hartmire8a36b6e42023-02-24 23:09:091200
1201// Deprecated 02/2023.
1202#if BUILDFLAG(IS_CHROMEOS_ASH)
1203 registry->RegisterBooleanPref(kHasSeenSmartLockSignInRemovedNotification,
1204 false);
1205#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Ari Chivukula951893d2023-03-03 18:03:291206
1207 // Deprecated 03/2023.
1208 registry->RegisterTimePref(
1209 kGoogleSearchDomainMixingMetricsEmitterLastMetricsTime, base::Time());
conniekxu4d14f65c2023-03-28 20:56:361210
1211 // Deprecated 03/2023.
1212#if BUILDFLAG(IS_CHROMEOS_ASH)
1213 registry->RegisterIntegerPref(kDarkLightModeNudgeLeftToShowCount,
1214 ash::kDarkLightModeNudgeMaxShownCount);
1215#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Adam Langley390670302023-03-31 00:43:311216
1217 // Deprecated 03/2023.
1218#if BUILDFLAG(IS_WIN)
1219 registry->RegisterBooleanPref(kWebAuthnLastOperationWasNativeAPI, false);
1220#endif
Richard Chui821cdad2023-04-07 21:39:571221
1222// Deprecated 04/2023.
1223#if BUILDFLAG(IS_CHROMEOS_ASH)
1224 registry->RegisterBooleanPref(kBentoBarEnabled, false);
1225 registry->RegisterBooleanPref(kUserHasUsedDesksRecently, false);
1226#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Dan Harrington83791492023-04-10 20:49:271227
1228// Deprecated 04/2023.
1229#if BUILDFLAG(IS_ANDROID)
1230 registry->RegisterListPref(kBackoff);
1231 registry->RegisterBooleanPref(kUserSettingEnabled, true);
1232 registry->RegisterTimePref(kLimitlessPrefetchingEnabledTimePref,
1233 base::Time());
1234 registry->RegisterStringPref(kPrefetchTestingHeaderPref, std::string());
1235 registry->RegisterBooleanPref(kEnabledByServer, false);
1236 registry->RegisterTimePref(kNextForbiddenCheckTimePref, base::Time());
1237 registry->RegisterStringPref(kPrefetchCachedGCMToken, std::string());
1238#endif
Artem Sumaneev77f80bb2023-04-11 14:04:581239
1240 // Deprecated 04/2023.
1241 registry->RegisterDictionaryPref(kTypeSubscribedForInvalidations);
1242 registry->RegisterStringPref(kActiveRegistrationToken, std::string());
1243 registry->RegisterStringPref(kFCMInvalidationClientIDCache, std::string());
Dan Harrington899e25232023-04-11 18:23:571244
1245 // Deprecated 04/2023.
1246#if BUILDFLAG(IS_ANDROID)
1247 ntp_snippets::prefs::RegisterProfilePrefsForMigrationApril2023(registry);
1248#endif
Jérémie Boulic8d672f22023-04-18 02:44:051249
1250// Deprecated 04/2023.
1251#if BUILDFLAG(IS_CHROMEOS_ASH)
1252 registry->RegisterBooleanPref(kOfficeFilesAlwaysMove, false);
1253 registry->RegisterBooleanPref(kOfficeMoveConfirmationShown, false);
1254#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Brittany Hartmire402a3922023-04-18 22:15:361255
1256// Deprecated 04/2023.
1257#if BUILDFLAG(IS_CHROMEOS_ASH)
1258 registry->RegisterBooleanPref(kProximityAuthIsChromeOSLoginEnabled, false);
1259#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Brittany Hartmire22aa1ae82023-05-09 17:37:231260
1261// Deprecated 05/2023.
1262#if BUILDFLAG(IS_CHROMEOS_ASH)
1263 registry->RegisterBooleanPref(kSmartLockSigninAllowed, false);
1264#endif // BUILDFLAG(IS_CHROMEOS_ASH)
David Trainorb7400c22023-05-10 19:17:061265
1266 // Deprecated 05/2023.
1267#if BUILDFLAG(IS_ANDROID)
1268 registry->RegisterStringPref(kVideoTutorialsPreferredLocaleKey,
1269 std::string());
1270 registry->RegisterTimePref(kVideoTutorialsLastUpdatedTimeKey, base::Time());
1271#endif // BUILDFLAG(IS_ANDROID)
Peter Marshall7fdea2b2023-05-15 01:16:381272
1273// Deprecated 05/2023.
1274#if BUILDFLAG(IS_CHROMEOS_ASH)
1275 registry->RegisterBooleanPref(kOfficeSetupComplete, false);
1276#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Elias Khsheibund1700562023-05-15 13:31:211277
1278// Deprecated 05/2023.
1279#if BUILDFLAG(IS_ANDROID)
1280 registry->RegisterIntegerPref(kTimesUPMAuthErrorShown, 0);
1281#endif // BUILDFLAG(IS_ANDROID)
Maciek Slusarczyk56833f02023-05-19 09:02:141282
1283// Deprecated 05/2023.
1284#if BUILDFLAG(IS_CHROMEOS_ASH)
1285 registry->RegisterStringPref(kSamlPasswordSyncToken, std::string());
1286#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Michael Checo1f8625942023-05-23 19:33:471287
1288// Deprecated 05/2023.
1289#if BUILDFLAG(IS_CHROMEOS_ASH)
1290 registry->RegisterBooleanPref(kEventRemappedToRightClick, false);
1291#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Alan Cutter3bfce6e2023-06-07 01:53:021292
Alan Cutter086bdf72023-06-09 02:40:111293// Deprecated 06/2023.
1294#if BUILDFLAG(IS_CHROMEOS_ASH)
1295 registry->RegisterBooleanPref(kWebAppCalculatorAppErasureFixAppliedPref,
1296 false);
1297#endif // BUILDFLAG(IS_CHROMEOS_ASH)
1298
Alan Cutter3bfce6e2023-06-07 01:53:021299 // Deprecated 06/2023.
1300 registry->RegisterDictionaryPref(kWebAppsExtensionIDs);
Marc Treib7aaf21332023-06-14 08:30:011301
1302 // Deprecated 06/2023.
1303#if BUILDFLAG(IS_CHROMEOS_ASH)
1304 registry->RegisterBooleanPref(kOsSyncPrefsMigrated, false);
1305#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Yue Zhangf7cf6712023-06-16 18:11:321306
1307 // Deprecated 06/2023.
1308#if !BUILDFLAG(IS_ANDROID)
1309 registry->RegisterBooleanPref(kShouldShowSidePanelBookmarkTab, false);
1310#endif // !BUILDFLAG(IS_ANDROID)
Jian Li7541a082023-06-18 23:52:141311
1312 // Deprecated 06/2023.
1313#if BUILDFLAG(ENABLE_FEED_V2)
1314 registry->RegisterIntegerPref(kVideoPreviewsType, 1);
1315#endif // BUILDFLAG(ENABLE_FEED_V2)
Maciek Slusarczyk9fed52232023-06-21 14:46:071316
1317// Deprecated 06/2023.
1318#if BUILDFLAG(IS_CHROMEOS_ASH)
1319 registry->RegisterTimePref(kGaiaLastOnlineSignInTime, base::Time());
1320 registry->RegisterTimePref(kSAMLLastGAIASignInTime, base::Time());
1321#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Mihai Sardarescu6db89cf2023-07-04 07:36:021322
Anthony Cui5e5dad9322023-07-10 17:34:541323 // Deprecated 06/2023.
1324#if BUILDFLAG(IS_ANDROID)
1325 registry->RegisterBooleanPref(kPrefExplicitLanguageAskShown, false);
1326#endif // BUILDFLAG(IS_ANDROID)
1327
Mihai Sardarescu6db89cf2023-07-04 07:36:021328// Deprecated 07/2023.
1329#if !BUILDFLAG(IS_CHROMEOS_ASH)
1330 registry->RegisterIntegerPref(kUnifiedConsentMigrationState, 0);
1331#endif // !BUILDFLAG(IS_CHROMEOS_ASH)
Viktor Semeniuk13075de02023-07-18 08:24:361332
1333 // Deprecated 07/2023
1334 registry->RegisterBooleanPref(kPasswordsGroupingInfoRequested, false);
Hui Yingstd4c7a572023-07-18 18:16:151335
1336// Deprecated 07/2023.
1337#if BUILDFLAG(IS_CHROMEOS_ASH)
1338 registry->RegisterIntegerPref(kPowerMetricsIdleScreenOffCount, 0);
1339 registry->RegisterIntegerPref(kPowerMetricsIdleSuspendCount, 0);
1340 registry->RegisterIntegerPref(kPowerMetricsLidClosedSuspendCount, 0);
1341#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Christoph Schlosser1f1ec9b2023-07-26 08:12:561342
1343// Deprecated 07/2023.
1344#if BUILDFLAG(IS_CHROMEOS_ASH)
1345 registry->RegisterIntegerPref(kHatsPrivacyHubBaselineIsSelected, false);
1346 registry->RegisterIntegerPref(kHatsPrivacyHubBaselineCycleEndTs, 0);
1347#endif // BUILDFLAG(IS_CHROMEOS_ASH)
François Degros82e8d052023-08-15 19:44:231348
1349 // Deprecated 08/2023.
1350 registry->RegisterIntegerPref(kDriveFsBulkPinningMaxQueueSize, 0);
Nicola Tommasiff549832023-09-04 11:35:061351
1352 // Deprecated 09/2023.
1353 registry->RegisterBooleanPref(kPrivacySandboxM1Unrestricted, false);
Daniel Ruberya440a6b12023-09-08 22:04:331354#if BUILDFLAG(IS_WIN)
1355 registry->RegisterDictionaryPref(kSwReporter);
1356 registry->RegisterDictionaryPref(kSettingsResetPrompt);
1357 registry->RegisterDictionaryPref(kChromeCleaner);
1358#endif
Lily Chen492c670f2023-09-15 21:35:471359 registry->RegisterBooleanPref(kDownloadBubbleEnabled, true);
Ankush Singh041ec0d2023-09-21 09:06:131360 registry->RegisterBooleanPref(kPrivacySandboxManuallyControlled, false);
Mikel Astiz3dc3dabc2023-09-25 19:32:211361#if BUILDFLAG(IS_CHROMEOS_ASH)
1362 registry->RegisterBooleanPref(kSyncInitialSyncFeatureSetupCompleteOnAsh,
1363 false);
1364#endif
Ivana Žužić2fa04d12023-09-29 13:46:311365#if BUILDFLAG(IS_ANDROID)
1366 registry->RegisterBooleanPref(kSettingsMigratedToUPM, false);
1367#endif
Mikel Astizd848587f2023-10-02 09:28:031368 registry->RegisterBooleanPref(kSyncRequested, false);
James Hawkins8d2adfd2023-10-05 08:24:561369
1370 // Deprecated 10/2023.
1371#if BUILDFLAG(IS_CHROMEOS_ASH)
1372 registry->RegisterStringPref(kLastSuccessfulDomainPref, std::string());
1373 registry->RegisterBooleanPref(kShouldAttemptReenable, true);
Jeremy Wu52e5c852023-10-31 01:45:091374 registry->RegisterDoublePref(kAudioVolumePercent, 0);
James Hawkins8d2adfd2023-10-05 08:24:561375#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Lily Chene658b27b2023-10-11 19:06:191376 registry->RegisterTimePref(kDownloadLastCompleteTime, base::Time());
Tim Sergeantce1539d2023-10-12 00:35:491377
1378// Deprecated 10/2023.
1379#if BUILDFLAG(IS_CHROMEOS)
1380 registry->RegisterDictionaryPref(kSupportedLinksAppPrefsKey);
1381#endif // BUILDFLAG(IS_CHROMEOS)
Eric Suma2add402023-10-24 03:48:531382
1383// Deprecated 10/2023.
1384#if BUILDFLAG(IS_CHROMEOS_ASH)
1385 registry->RegisterDoublePref(kNightLightCachedLatitude, 0.0);
1386 registry->RegisterDoublePref(kNightLightCachedLongitude, 0.0);
1387#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Ryan Kalla4bd74b412023-11-03 16:11:361388
1389 // Deprecated 11/2023.
1390 registry->RegisterBooleanPref(kPrivacySandboxAntiAbuseInitialized, false);
Guido Urdaneta39d28bb72023-11-09 14:40:581391
1392 // Deprecated 11/2023.
1393 registry->RegisterBooleanPref(kWebRTCAllowLegacyTLSProtocols, false);
Jiaming Chengbf012ae2023-11-10 22:00:121394
1395// Deprecated 11/2023.
1396#if BUILDFLAG(IS_CHROMEOS_ASH)
1397 registry->RegisterBooleanPref(kSystemTrayExpanded, true);
1398#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Zauri Meshvelianic39cff7c2023-11-14 20:31:111399
1400// Deprecated 11/2023
1401#if BUILDFLAG(IS_CHROMEOS_ASH)
1402 registry->RegisterBooleanPref(kUserGeolocationAllowed, true);
1403#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Jan Keitel17fdab22023-11-17 12:41:361404
1405 // Deprecated 11/2023.
1406 registry->RegisterListPref(kPasswordChangeSuccessTrackerFlows);
1407 registry->RegisterIntegerPref(kPasswordChangeSuccessTrackerVersion, 0);
Wen-Chien Wang29111192023-11-30 02:13:301408
1409 // Deprecated 11/2023.
1410#if BUILDFLAG(IS_CHROMEOS_ASH)
1411 registry->RegisterDictionaryPref(kImageSearchPrivacyNotice);
1412#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Matt Jones90c86302023-12-07 18:06:381413
1414 // Deprecated 11/2023.
1415 registry->RegisterBooleanPref(kWebAndAppActivityEnabledForShopping, true);
Mikel Astizd848587f2023-10-02 09:28:031416}
1417
1418void ClearSyncRequestedPrefAndMaybeMigrate(PrefService* profile_prefs) {
1419#if BUILDFLAG(IS_CHROMEOS_ASH)
1420 // On Ash specifically, if `kSyncRequested` was set to false explicitly, the
1421 // value needs to be migrated to syncer::internal::kSyncDisabledViaDashboard.
1422 if (profile_prefs->GetUserPrefValue(kSyncRequested) != nullptr &&
1423 !profile_prefs->GetUserPrefValue(kSyncRequested)->GetBool()) {
1424 profile_prefs->SetBoolean(
1425 syncer::prefs::internal::kSyncDisabledViaDashboard, true);
1426 }
1427#endif
1428 profile_prefs->ClearPref(kSyncRequested);
Osama Fathy592e239a2023-02-02 15:26:131429}
Rushan Suleymanov95b36922023-08-03 17:17:411430
[email protected]572f40c9b2012-07-06 20:35:331431} // namespace
1432
John Palmer1e70a002023-08-15 02:20:341433std::string GetCountry() {
1434 if (!g_browser_process || !g_browser_process->variations_service()) {
1435 // This should only happen in tests. Ideally this would be guarded by
1436 // CHECK_IS_TEST, but that is not set on Android, so no specific guard.
1437 return std::string();
1438 }
1439 return std::string(
1440 g_browser_process->variations_service()->GetStoredPermanentCountry());
1441}
1442
[email protected]4082306d92013-02-21 14:51:011443void RegisterLocalState(PrefRegistrySimple* registry) {
Chris Hamilton65c41312020-06-10 13:14:401444 // Call outs to individual subsystems that register Local State (browser-wide)
1445 // prefs en masse. See RegisterProfilePrefs for per-profile prefs. Please
1446 // keep this list alphabetized.
Amanda Lin Dietz8864d302023-06-26 18:36:391447#if BUILDFLAG(IS_ANDROID)
1448 accessibility::AccessibilityPrefsController::RegisterLocalStatePrefs(
1449 registry);
1450#endif
Jesse McKenna0d767592023-11-03 19:31:521451 breadcrumbs::RegisterPrefs(registry);
[email protected]b1de2c72013-02-06 02:45:471452 browser_shutdown::RegisterPrefs(registry);
[email protected]b1de2c72013-02-06 02:45:471453 BrowserProcessImpl::RegisterPrefs(registry);
Chris Palmerac7d75642017-11-22 20:12:541454 ChromeContentBrowserClient::RegisterLocalStatePrefs(registry);
Elaine Chienf8d13692021-07-26 23:05:561455 chrome_labs_prefs::RegisterLocalStatePrefs(registry);
[email protected]4a55a712014-06-08 16:50:341456 ChromeMetricsServiceClient::RegisterPrefs(registry);
Dominique Fauteux-Chapleau0e897db02021-04-19 18:42:221457 chrome::enterprise_util::RegisterLocalStatePrefs(registry);
sorinebcfc8dd2016-08-12 21:57:181458 component_updater::RegisterPrefs(registry);
Alex Chen9e56f7352023-01-20 22:56:151459 domain_reliability::RegisterPrefs(registry);
Mugdha Lakhanida851fd2021-03-16 18:21:021460 embedder_support::OriginTrialPrefs::RegisterPrefs(registry);
Og Astorga3089fd82021-09-21 00:02:371461 enterprise_reporting::RegisterLocalStatePrefs(registry);
[email protected]b1de2c72013-02-06 02:45:471462 ExternalProtocolHandler::RegisterPrefs(registry);
sdefresne8593e6432015-12-01 12:38:081463 flags_ui::PrefServiceFlagsStorage::RegisterPrefs(registry);
[email protected]e6933d2a2013-03-12 22:32:211464 GpuModeManager::RegisterPrefs(registry);
Miyoung Shin23737f62019-07-23 15:43:311465 signin::IdentityManager::RegisterLocalStatePrefs(registry);
Anthony Vallee-Dubois43fded9702020-06-19 16:30:381466 invalidation::FCMInvalidationService::RegisterPrefs(registry);
Maksim Moskvitinf5f5f736c2021-01-12 12:13:281467 invalidation::InvalidatorRegistrarWithMemory::RegisterPrefs(registry);
1468 invalidation::PerUserTopicSubscriptionManager::RegisterPrefs(registry);
Anthony Vallee-Dubois6f993122018-09-17 16:13:281469 language::GeoLanguageProvider::RegisterLocalStatePrefs(registry);
Alexandre Frechette38f4ef92019-02-25 16:31:571470 language::UlpLanguageCodeLocator::RegisterLocalStatePrefs(registry);
Sebastien Marchand5a63997a2019-09-27 19:15:341471 memory::EnterpriseMemoryLimitPrefObserver::RegisterPrefs(registry);
Roger McFarlane1c1147ae2022-11-07 17:25:171472 metrics::RegisterDemographicsLocalStatePrefs(registry);
[email protected]d0ab865b2014-06-04 19:41:341473 network_time::NetworkTimeTracker::RegisterPrefs(registry);
rajendrant5fb61c52022-11-21 19:42:551474 optimization_guide::prefs::RegisterLocalStatePrefs(registry);
Tonko Sabolčec6f271d32018-08-17 14:35:471475 password_manager::PasswordManager::RegisterLocalPrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101476 policy::BrowserPolicyConnector::RegisterPrefs(registry);
Jayee7b9b6df2023-07-31 16:39:241477 policy::LocalTestPolicyProvider::RegisterLocalStatePrefs(registry);
Yann Dago9c1e19512022-02-28 22:27:311478 policy::ManagementService::RegisterLocalStatePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101479 policy::PolicyStatisticsCollector::RegisterPrefs(registry);
[email protected]b1de2c72013-02-06 02:45:471480 PrefProxyConfigTrackerImpl::RegisterPrefs(registry);
Thomas Tanglc67ace42019-06-07 19:31:501481 ProfileAttributesEntry::RegisterLocalStatePrefs(registry);
Alex Ilinbb08a0d2021-07-08 09:37:241482 ProfileAttributesStorage::RegisterPrefs(registry);
Nick Harper030046f2019-09-05 23:36:091483 ProfileNetworkContextService::RegisterLocalStatePrefs(registry);
[email protected]de71ae992013-07-18 03:30:381484 profiles::RegisterPrefs(registry);
Illia Klimov4b72378ed2022-07-18 13:46:571485#if BUILDFLAG(IS_ANDROID)
1486 PushMessagingServiceImpl::RegisterPrefs(registry);
1487#endif
[email protected]ceafc462013-11-04 12:26:031488 RegisterScreenshotPrefs(registry);
Luke Zielinski63784cd2018-05-22 14:08:161489 safe_browsing::RegisterLocalStatePrefs(registry);
Ayu Ishiifbb1fad2020-06-22 20:15:071490 secure_origin_allowlist::RegisterPrefs(registry);
Min Qinc4012282022-04-15 16:53:581491 segmentation_platform::SegmentationPlatformService::RegisterLocalStatePrefs(
1492 registry);
Xiaohan Wangae7f9182022-01-16 00:37:521493#if !BUILDFLAG(IS_ANDROID)
Reilly Grantbfc2ab72021-06-02 23:57:301494 SerialPolicyAllowedPorts::RegisterPrefs(registry);
Matt Reynolds1914ff6b2022-02-04 08:48:261495 HidPolicyAllowedDevices::RegisterLocalStatePrefs(registry);
Reilly Grantbfc2ab72021-06-02 23:57:301496#endif
Mikel Astizf61f4ba02018-06-01 10:50:191497 sessions::SessionIdGenerator::RegisterPrefs(registry);
Ryan Sleevi4689ad32018-04-16 19:09:051498 SSLConfigServiceManager::RegisterPrefs(registry);
Michael Giuffridab41fa5c42017-11-13 23:30:571499 subresource_filter::IndexedRulesetVersion::RegisterPrefs(registry);
Matt Menke4dfb375c2018-06-13 18:06:311500 SystemNetworkContextManager::RegisterPrefs(registry);
Patricia Alfonsoc6f40b5c2023-09-14 21:02:431501 tpcd::experiment::RegisterLocalStatePrefs(registry);
Oksana Zhuravlova58c85282022-06-14 20:24:281502 tracing::RegisterPrefs(registry);
wafflesd2d9a332016-04-09 01:59:571503 update_client::RegisterPrefs(registry);
Michael Giuffridab41fa5c42017-11-13 23:30:571504 variations::VariationsService::RegisterPrefs(registry);
[email protected]cc36c2c2012-03-01 00:57:341505
Chris Hamilton65c41312020-06-10 13:14:401506 // Individual preferences. If you have multiple preferences that should
1507 // clearly be grouped together, please group them together into a helper
1508 // function called above. Please keep this list alphabetized.
1509 registry->RegisterBooleanPref(
1510 policy::policy_prefs::kIntensiveWakeUpThrottlingEnabled, false);
Aaron Tagliaboschi8f3a28302020-06-24 03:08:261511 registry->RegisterBooleanPref(
Matt Reichhoff2f190122021-11-02 19:28:191512 policy::policy_prefs::kUserAgentClientHintsGREASEUpdateEnabled, true);
Xiaohan Wangae7f9182022-01-16 00:37:521513#if BUILDFLAG(IS_ANDROID)
Rakina Zata Amnic123bd22020-07-31 19:08:391514 registry->RegisterBooleanPref(policy::policy_prefs::kBackForwardCacheEnabled,
1515 true);
Andrea Gomezf2316d92023-07-19 16:30:571516 registry->RegisterBooleanPref(policy::policy_prefs::kReadAloudEnabled, true);
Xiaohan Wangae7f9182022-01-16 00:37:521517#endif // BUILDFLAG(IS_ANDROID)
Chris Hamilton65c41312020-06-10 13:14:401518
1519 // Below this point is for platform-specific and compile-time conditional
1520 // calls. Please follow the helper-function-first-then-direct-calls pattern
1521 // established above, and keep things alphabetized.
1522
Denis Kuznetsov32099f32017-12-15 14:04:571523#if BUILDFLAG(ENABLE_BACKGROUND_MODE)
Michael Giuffridab41fa5c42017-11-13 23:30:571524 BackgroundModeManager::RegisterPrefs(registry);
1525#endif
1526
Xiaohan Wangae7f9182022-01-16 00:37:521527#if BUILDFLAG(IS_ANDROID)
Mark Pearsonee17df912017-04-27 21:51:041528 ::android::RegisterPrefs(registry);
Sky Maliced8eb4302020-08-03 05:46:441529
Sky Malicef7dd9422020-10-26 22:12:401530 registry->RegisterIntegerPref(first_run::kTosDialogBehavior, 0);
Yu Su4d459862021-04-15 04:19:541531 registry->RegisterBooleanPref(lens::kLensCameraAssistedSearchEnabled, true);
Xiaohan Wangae7f9182022-01-16 00:37:521532#else // BUILDFLAG(IS_ANDROID)
Nasser Al-shawwa067cc3712023-03-01 17:55:391533 enterprise_connectors::RegisterLocalStatePrefs(registry);
johnme627dc8c72016-08-19 21:49:391534 gcm::RegisterPrefs(registry);
Peter Kvitek6567a8a3a2023-01-31 01:03:571535 headless::RegisterPrefs(registry);
Tommy Lid5b7c22b2020-10-28 01:26:511536 IntranetRedirectDetector::RegisterPrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101537 media_router::RegisterLocalStatePrefs(registry);
Michael Giuffridab41fa5c42017-11-13 23:30:571538 metrics::TabStatsTracker::RegisterPrefs(registry);
Anthony Vallee-Dubois2b822262022-04-25 19:31:441539 performance_manager::user_tuning::prefs::RegisterLocalStatePrefs(registry);
Michael Giuffridab41fa5c42017-11-13 23:30:571540 RegisterBrowserPrefs(registry);
Amanda Deacon9535c972021-04-29 04:26:511541 speech::SodaInstaller::RegisterLocalStatePrefs(registry);
Michael Giuffridab41fa5c42017-11-13 23:30:571542 StartupBrowserCreator::RegisterLocalStatePrefs(registry);
1543 task_manager::TaskManagerInterface::RegisterPrefs(registry);
thestigd75ce5532015-10-05 22:08:341544 UpgradeDetector::RegisterPrefs(registry);
rbpotter73c13252021-07-16 21:29:341545 WhatsNewUI::RegisterLocalStatePrefs(registry);
Xiaohan Wangae7f9182022-01-16 00:37:521546#endif // BUILDFLAG(IS_ANDROID)
[email protected]3954f332012-02-25 02:51:541547
Nicolas Dossou-Gbete7ccc8802022-11-10 15:12:461548#if BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(ENABLE_DICE_SUPPORT)
1549 FirstRunService::RegisterLocalStatePrefs(registry);
Nicolas Dossou-Gbete2804a372022-11-09 17:25:351550#endif
1551
Yuta Hijikata31a359c2020-11-27 07:50:261552#if BUILDFLAG(IS_CHROMEOS_ASH)
Shao-Chuan Lee85a46992019-03-05 04:46:151553 arc::prefs::RegisterLocalStatePrefs(registry);
[email protected]8304f61a2014-05-24 12:17:331554 ChromeOSMetricsProvider::RegisterPrefs(registry);
Henrique Ferreiro7a4401aa2022-11-11 21:37:331555 ash::ArcKioskAppManager::RegisterPrefs(registry);
Henrique Ferreiro3d9d93d2021-02-19 22:17:391556 ash::AudioDevicesPrefHandlerImpl::RegisterPrefs(registry);
Michal Mazur55ab4f52023-10-19 11:18:001557 ash::carrier_lock::CarrierLockManager::RegisterLocalPrefs(registry);
Yeunjoo Choicd4cc5382021-03-25 08:50:491558 ash::cert_provisioning::RegisterLocalStatePrefs(registry);
Yeunjoo Choi6c99c4d2022-08-08 03:11:111559 ash::CellularESimProfileHandlerImpl::RegisterLocalStatePrefs(registry);
1560 ash::ManagedCellularPrefHandler::RegisterLocalStatePrefs(registry);
Henrique Ferreirocddc8012021-03-26 00:47:151561 ash::ChromeUserManagerImpl::RegisterPrefs(registry);
Yuta Hijikata82c304ff2021-04-30 19:24:571562 crosapi::browser_util::RegisterLocalStatePrefs(registry);
Yeunjoo Choi47a6a142022-02-11 02:35:231563 ash::CupsPrintersManager::RegisterLocalStatePrefs(registry);
Yuta Hijikata368cc4b92021-12-23 07:39:101564 ash::BrowserDataMigratorImpl::RegisterLocalStatePrefs(registry);
Henrique Ferreirobbaee882022-09-08 07:15:551565 ash::bluetooth_config::BluetoothPowerControllerImpl::RegisterLocalStatePrefs(
1566 registry);
1567 ash::bluetooth_config::DeviceNameManagerImpl::RegisterLocalStatePrefs(
Gordon Setob2b7c7bc2021-10-12 17:42:551568 registry);
Henrique Ferreirod71de902021-05-10 18:57:111569 ash::DemoModeResourcesRemover::RegisterLocalStatePrefs(registry);
1570 ash::DemoSession::RegisterLocalStatePrefs(registry);
1571 ash::DemoSetupController::RegisterLocalStatePrefs(registry);
Henrique Ferreiro7967dce2021-09-23 11:37:471572 ash::DeviceNameStore::RegisterLocalStatePrefs(registry);
Anthony Vallee-Dubois85edf222020-03-24 20:30:021573 chromeos::DeviceOAuth2TokenStoreChromeOS::RegisterPrefs(registry);
Yeunjoo Choid461f872021-03-11 06:52:191574 ash::device_settings_cache::RegisterPrefs(registry);
Henrique Ferreirod1c3fe72021-05-14 13:26:151575 ash::EnableAdbSideloadingScreen::RegisterPrefs(registry);
Hirthanan Subenderan088f7322023-09-20 15:10:291576 ash::report::ReportController::RegisterPrefs(registry);
Yeunjoo Choif3fe34c2022-11-04 02:02:301577 ash::EnableDebuggingScreenHandler::RegisterPrefs(registry);
Yeunjoo Choid0b242f2022-07-28 02:23:021578 ash::FastTransitionObserver::RegisterPrefs(registry);
Danila Kuzmin90a42f02021-12-08 14:00:161579 ash::HWDataUsageController::RegisterLocalStatePrefs(registry);
Yeunjoo Choi4530b1792021-05-10 02:32:271580 ash::KerberosCredentialsManager::RegisterLocalStatePrefs(registry);
Edman Anjos0f2ad562023-11-08 10:40:491581 ash::KioskChromeAppManager::RegisterLocalStatePrefs(registry);
Henrique Ferreiro26ed25a2021-02-01 21:59:291582 ash::KioskCryptohomeRemover::RegisterPrefs(registry);
Henrique Ferreirodef18c22021-11-04 19:36:001583 ash::language_prefs::RegisterPrefs(registry);
Henrique Ferreiro234c7dff2022-09-08 02:44:541584 ash::local_search_service::SearchMetricsReporter::RegisterLocalStatePrefs(
1585 registry);
Henrique Ferreirob403be32021-09-22 07:15:361586 ash::login::SecurityTokenSessionController::RegisterLocalStatePrefs(registry);
Ahmed Nasrbe0670b72022-03-09 23:28:171587 ash::reporting::LoginLogoutReporter::RegisterPrefs(registry);
Henrique Ferreirocddc8012021-03-26 00:47:151588 ash::MultiProfileUserController::RegisterPrefs(registry);
Yeunjoo Choi6c99c4d2022-08-08 03:11:111589 ash::NetworkMetadataStore::RegisterPrefs(registry);
Henrique Ferreiroe2cbaaf2022-01-10 15:02:231590 ash::NetworkThrottlingObserver::RegisterPrefs(registry);
Yeunjoo Choic2000932021-06-10 01:54:081591 ash::PowerMetricsReporter::RegisterLocalStatePrefs(registry);
Henrique Ferreiroa8763b62021-10-13 18:37:531592 ash::platform_keys::KeyPermissionsManagerImpl::RegisterLocalStatePrefs(
Omar Morsi4febb4d2020-10-30 07:55:211593 registry);
Yeunjoo Choif3c7e402021-06-04 04:28:561594 ash::power::auto_screen_brightness::MetricsReporter::RegisterLocalStatePrefs(
1595 registry);
Henrique Ferreiro4b21d142021-11-10 11:47:371596 ash::Preferences::RegisterPrefs(registry);
Henrique Ferreirod1c3fe72021-05-14 13:26:151597 ash::ResetScreen::RegisterPrefs(registry);
Henrique Ferreiro4b21d142021-11-10 11:47:371598 ash::SchedulerConfigurationManager::RegisterLocalStatePrefs(registry);
Yeunjoo Choicf61fba2021-04-23 02:43:091599 ash::ServicesCustomizationDocument::RegisterPrefs(registry);
Yuta Hijikata4538fc02023-09-26 15:19:551600 ash::standalone_browser::migrator_util::RegisterLocalStatePrefs(registry);
Henrique Ferreirob403be32021-09-22 07:15:361601 ash::StartupUtils::RegisterPrefs(registry);
Yeunjoo Choid461f872021-03-11 06:52:191602 ash::StatsReportingController::RegisterLocalStatePrefs(registry);
Yeunjoo Choi03b09c62021-02-18 21:40:051603 ash::system::AutomaticRebootManager::RegisterPrefs(registry);
Yeunjoo Choi953a4c32021-10-15 05:20:441604 ash::TimeZoneResolver::RegisterPrefs(registry);
Henrique Ferreirocddc8012021-03-26 00:47:151605 ash::UserImageManager::RegisterPrefs(registry);
Henrique Ferreirod70b5c22021-04-30 10:55:271606 ash::UserSessionManager::RegisterPrefs(registry);
Henrique Ferreiro26ed25a2021-02-01 21:59:291607 ash::WebKioskAppManager::RegisterPrefs(registry);
Xiaochu Liu48ab5932018-05-11 03:44:041608 component_updater::MetadataTable::RegisterPrefs(registry);
Henrique Ferreirob902d6c2021-10-14 19:55:441609 ash::CryptAuthDeviceIdProviderImpl::RegisterLocalPrefs(registry);
[email protected]5a145e82014-05-29 22:19:071610 extensions::ExtensionAssetsManagerChromeOS::RegisterPrefs(registry);
Aya ElAttarb4f7a5f2020-03-05 00:47:241611 extensions::ExtensionsPermissionsTracker::RegisterLocalStatePrefs(registry);
tbarzicd9a88fc92017-07-14 02:18:101612 extensions::lock_screen_data::LockScreenItemStorage::RegisterLocalState(
1613 registry);
Jit Yao Yap8e247322019-06-24 16:56:591614 extensions::login_api::RegisterLocalStatePrefs(registry);
stevenjbf22f82e2016-10-26 21:47:381615 ::onc::RegisterPrefs(registry);
Jong Ahnfaf5f1f72023-01-19 03:20:441616 metrics::structured::ChromeStructuredMetricsRecorder::RegisterLocalStatePrefs(
1617 registry);
Jana Grill784b1e52020-06-26 18:22:121618 policy::AdbSideloadingAllowanceModePolicyHandler::RegisterPrefs(registry);
Sergiy Belozorov757bc002023-03-13 19:13:191619 // TODO(b/265923216): Replace with EnrollmentStateFetcher::RegisterPrefs.
Pavol Marko35bcf1a2018-05-23 15:33:071620 policy::AutoEnrollmentClientImpl::RegisterPrefs(registry);
Yeunjoo Choi7227dba2021-08-04 06:35:471621 policy::BrowserPolicyConnectorAsh::RegisterPrefs(registry);
Ashutosh Singhal96d051012023-07-26 11:00:491622 policy::CrdAdminSessionController::RegisterLocalStatePrefs(registry);
Yeunjoo Choiead8b3c2021-07-27 08:08:191623 policy::DeviceCloudPolicyManagerAsh::RegisterPrefs(registry);
[email protected]b1de2c72013-02-06 02:45:471624 policy::DeviceStatusCollector::RegisterPrefs(registry);
Nikita Podguzov72c21f02019-06-17 14:48:411625 policy::DeviceWallpaperImageExternalDataHandler::RegisterPrefs(registry);
rsorokin3c13ece2017-01-16 15:58:411626 policy::DMTokenStorage::RegisterPrefs(registry);
Sergey Poromovd6575a0b2020-05-19 21:41:091627 policy::EnrollmentRequisitionManager::RegisterPrefs(registry);
Saurabh Nijhara839c17c2020-05-19 00:18:291628 policy::MinimumVersionPolicyHandler::RegisterPrefs(registry);
Anatoliy Potapchuka460bc12021-11-05 19:23:101629 policy::EuiccStatusUploader::RegisterLocalStatePrefs(registry);
Andreea Costinasc4b76ff2019-04-11 15:52:131630 policy::TPMAutoUpdateModePolicyHandler::RegisterPrefs(registry);
glevin5dd01a72016-03-23 23:08:121631 quirks::QuirksManager::RegisterPrefs(registry);
Roman Aleksandrovd32e34e72019-05-22 17:29:501632 UpgradeDetectorChromeos::RegisterPrefs(registry);
James Hawkins225001cf2020-09-18 16:04:341633 RegisterNearbySharingLocalPrefs(registry);
Yuta Hijikata31a359c2020-11-27 07:50:261634#endif // BUILDFLAG(IS_CHROMEOS_ASH)
[email protected]b6366ffa2012-02-29 17:12:261635
Xiaohan Wangae7f9182022-01-16 00:37:521636#if BUILDFLAG(IS_CHROMEOS)
Erik Chen643355d2022-04-22 05:44:491637 chromeos::echo_offer::RegisterPrefs(registry);
Kuo-Hsin Yang40227972022-05-16 18:39:091638 memory::OOMKillsMonitor::RegisterPrefs(registry);
Ben Franz73537362021-11-08 11:53:401639 policy::SystemFeaturesDisableListPolicyHandler::RegisterPrefs(registry);
Alvin Lee99f8d9a82021-11-18 18:45:551640 policy::DlpRulesManagerImpl::RegisterPrefs(registry);
Xiaohan Wangae7f9182022-01-16 00:37:521641#endif // BUILDFLAG(IS_CHROMEOS)
Ben Franz73537362021-11-08 11:53:401642
Xiaohan Wangae7f9182022-01-16 00:37:521643#if BUILDFLAG(IS_MAC)
[email protected]b1de2c72013-02-06 02:45:471644 confirm_quit::RegisterLocalState(registry);
[email protected]425f7a02014-04-29 01:51:441645 QuitWithAppsController::RegisterPrefs(registry);
Henrik Grunelle11045a2019-04-12 09:27:271646 system_media_permissions::RegisterSystemMediaPermissionStatesPrefs(registry);
Christopher Cameron81f442e2019-11-14 06:50:141647 AppShimRegistry::Get()->RegisterLocalPrefs(registry);
[email protected]b6366ffa2012-02-29 17:12:261648#endif
[email protected]bdb8a1e2013-10-03 08:14:001649
Erik Chen38ceca082020-12-16 01:31:351650#if BUILDFLAG(IS_CHROMEOS_LACROS)
Alex Ilin953f1092021-11-26 15:49:101651 AccountCache::RegisterLocalStatePrefs(registry);
Erik Chen38ceca082020-12-16 01:31:351652 lacros_prefs::RegisterLocalStatePrefs(registry);
Polina Bondarenko3f3dc4f2022-04-25 07:55:011653 KioskSessionServiceLacros::RegisterLocalStatePrefs(registry);
Erik Chen38ceca082020-12-16 01:31:351654#endif
1655
Xiaohan Wangae7f9182022-01-16 00:37:521656#if BUILDFLAG(IS_WIN)
Will Harris265b3942019-10-21 01:01:331657 OSCrypt::RegisterLocalPrefs(registry);
Will Harris956e0ca2019-08-23 20:47:391658 registry->RegisterBooleanPref(prefs::kRendererCodeIntegrityEnabled, true);
Will Harrisf09e40d2022-06-02 21:15:401659 registry->RegisterBooleanPref(prefs::kRendererAppContainerEnabled, true);
Stefan Smolenfd3965b2021-08-17 19:27:181660 registry->RegisterBooleanPref(prefs::kBlockBrowserLegacyExtensionPoints,
1661 true);
David Bienvenu554a2592020-02-13 20:20:541662 registry->RegisterBooleanPref(
1663 policy::policy_prefs::kNativeWindowOcclusionEnabled, true);
Xiaohan Wang259f34c7a2022-03-26 23:18:191664 MediaFoundationServiceMonitor::RegisterPrefs(registry);
Will Harriseb364b2c2022-06-23 00:49:011665 os_crypt::RegisterLocalStatePrefs(registry);
Nico Webereaa08412019-08-14 01:24:371666#if BUILDFLAG(GOOGLE_CHROME_BRANDING)
Patrick Monettef8fd8b22018-05-10 20:58:041667 IncompatibleApplicationsUpdater::RegisterLocalStatePrefs(registry);
Patrick Monette6b7c475b2018-06-12 14:58:081668 ModuleDatabase::RegisterLocalStatePrefs(registry);
Patrick Monettee31f63e22018-06-06 00:10:341669 ThirdPartyConflictsManager::RegisterLocalStatePrefs(registry);
Nico Webereaa08412019-08-14 01:24:371670#endif // BUILDFLAG(GOOGLE_CHROME_BRANDING)
Xiaohan Wangae7f9182022-01-16 00:37:521671#endif // BUILDFLAG(IS_WIN)
[email protected]ceafc462013-11-04 12:26:031672
Xiaohan Wangae7f9182022-01-16 00:37:521673#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
Lei Zhang92c15542020-01-10 17:05:101674 RegisterDefaultBrowserPromptPrefs(registry);
Yann Dago0d896f62020-02-04 19:59:151675 downgrade::RegisterPrefs(registry);
Anthony Vallee-Dubois85edf222020-03-24 20:30:021676 DeviceOAuth2TokenStoreDesktop::RegisterPrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101677#endif
1678
Ramin Halavati52a9a292022-04-28 04:27:491679#if BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
Ramin Halavati69bf7752022-04-04 09:58:151680 screen_ai::RegisterLocalStatePrefs(registry);
Ramin Halavati52a9a292022-04-28 04:27:491681#endif // BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
Ramin Halavati69bf7752022-04-04 09:58:151682
Igor Ruvinov13e658e2022-12-13 03:15:201683#if BUILDFLAG(IS_WIN)
1684 PlatformAuthPolicyObserver::RegisterPrefs(registry);
1685#endif // BUILDFLAG(IS_WIN)
1686
Jack Yammine96729f72023-09-25 15:47:281687#if BUILDFLAG(ENABLE_SEARCH_ENGINE_CHOICE)
1688 SearchEngineChoiceService::RegisterLocalStatePrefs(registry);
Nicolas Dossou-Gbeteaaa3a422023-11-29 19:15:291689 SearchEngineChoiceClientSideTrial::RegisterLocalStatePrefs(registry);
Jack Yammine96729f72023-09-25 15:47:281690#endif
1691
Alan Screen661060f82023-11-20 19:58:561692 // Platform-specific and compile-time conditional individual preferences.
1693 // If you have multiple preferences that should clearly be grouped together,
1694 // please group them together into a helper function called above. Please
1695 // keep this list alphabetized.
1696
1697#if BUILDFLAG(ENABLE_OOP_PRINTING)
1698 registry->RegisterBooleanPref(prefs::kOopPrintDriversAllowedByPolicy, true);
1699#endif
1700
Chris Hamilton65c41312020-06-10 13:14:401701 // This is intentionally last.
Lei Zhangb76b80e32020-04-08 16:58:161702 RegisterLocalStatePrefsForMigration(registry);
[email protected]9acc48602009-11-30 21:18:511703}
initial.commit09911bf2008-07-26 23:55:291704
[email protected]37ca3fe02013-07-05 15:32:441705// Register prefs applicable to all profiles.
Xi Han25a7f032019-04-18 21:44:211706void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
1707 const std::string& locale) {
rkaplow058da3132015-02-19 18:18:381708 TRACE_EVENT0("browser", "chrome::RegisterProfilePrefs");
[email protected]2a5f29632012-11-26 17:17:551709 // User prefs. Please keep this list alphabetized.
Dominic Mazzoni21fb0282019-02-13 18:32:471710 AccessibilityLabelsService::RegisterProfilePrefs(registry);
James Wallace-Lee25a1b05e2018-07-24 00:06:311711 AccessibilityUIMessageHandler::RegisterProfilePrefs(registry);
Xing Liu7252b8d2020-01-22 22:12:471712 AnnouncementNotificationService::RegisterProfilePrefs(registry);
Moe Ahmadi173b0a2b2018-08-03 17:35:511713 autofill::prefs::RegisterProfilePrefs(registry);
Bernhard Bauer19190732017-09-28 09:03:331714 browsing_data::prefs::RegisterBrowserUserPrefs(registry);
Simon Hangl2d73e742023-06-16 16:52:471715 capture_policy::RegisterProfilePrefs(registry);
Doug Turner9e79cf0c2018-04-05 21:32:301716 certificate_transparency::prefs::RegisterPrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441717 ChromeContentBrowserClient::RegisterProfilePrefs(registry);
Elaine Chien07f137d2021-01-14 02:57:211718 chrome_labs_prefs::RegisterProfilePrefs(registry);
Livvie Lin9141d0f132020-03-23 22:47:041719 ChromeLocationBarModelDelegate::RegisterProfilePrefs(registry);
Colin Blundell7657b402020-02-25 09:46:501720 StatefulSSLHostStateDelegate::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441721 ChromeVersionService::RegisterProfilePrefs(registry);
Eric Secklera5c24e12018-11-28 16:09:201722 chrome_browser_net::NetErrorTabHelper::RegisterProfilePrefs(registry);
[email protected]06690dc2014-03-07 08:44:001723 chrome_prefs::RegisterProfilePrefs(registry);
Matt Jones704e1a62022-09-20 16:28:241724 commerce::RegisterPrefs(registry);
Travis Skare27cee15c2018-07-19 14:34:131725 DocumentProvider::RegisterProfilePrefs(registry);
hmaree31cadf52022-11-09 22:32:551726 enterprise::RegisterIdentifiersProfilePrefs(registry);
Owen Min9867b162022-01-20 21:39:071727 enterprise_reporting::RegisterProfilePrefs(registry);
Katie D1ca4328b2020-02-19 18:08:471728 dom_distiller::DistilledPagePrefs::RegisterProfilePrefs(registry);
1729 dom_distiller::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441730 DownloadPrefs::RegisterProfilePrefs(registry);
Florian Jackya33ad152023-11-22 11:46:041731 permissions::PermissionHatsTriggerHelper::RegisterProfilePrefs(registry);
Moe Ahmadi656dd532021-10-06 21:59:181732 history_clusters::prefs::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441733 HostContentSettingsMap::RegisterProfilePrefs(registry);
Brandon Wylie6961a2e2018-09-19 23:03:371734 image_fetcher::ImageCache::RegisterProfilePrefs(registry);
Evan Stade7a984802020-12-14 19:10:151735 site_engagement::ImportantSitesUtil::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441736 IncognitoModePrefs::RegisterProfilePrefs(registry);
Maksim Moskvitinf5f5f736c2021-01-12 12:13:281737 invalidation::PerUserTopicSubscriptionManager::RegisterProfilePrefs(registry);
1738 invalidation::InvalidatorRegistrarWithMemory::RegisterProfilePrefs(registry);
Alexandre Frechette37edd93a2019-03-19 15:57:201739 language::LanguagePrefs::RegisterProfilePrefs(registry);
rajendrantff2361da2020-12-16 09:18:271740 login_detection::prefs::RegisterProfilePrefs(registry);
Joe DeBlasio59db500b2020-08-21 00:37:351741 lookalikes::RegisterProfilePrefs(registry);
Bryant Chandlerd638fb02023-11-03 23:40:171742 media_prefs::RegisterUserPrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441743 MediaCaptureDevicesDispatcher::RegisterProfilePrefs(registry);
Guido Urdaneta9f831c22023-06-22 13:44:341744 media_device_salt::MediaDeviceIDSalt::RegisterProfilePrefs(registry);
Becca Hughes6354b6b2017-08-31 22:01:551745 MediaEngagementService::RegisterProfilePrefs(registry);
John Rummelle5621c12017-09-05 23:52:101746 MediaStorageIdSalt::RegisterProfilePrefs(registry);
Mikel Astizf4226912020-10-19 19:10:371747 metrics::RegisterDemographicsProfilePrefs(registry);
Tom Anderson1ef51d032020-02-11 01:05:081748 NotificationDisplayServiceImpl::RegisterProfilePrefs(registry);
brettw1f92eed2016-12-07 01:12:581749 NotifierStateTracker::RegisterProfilePrefs(registry);
treibbb0c5af52016-12-09 17:34:151750 ntp_tiles::MostVisitedSites::RegisterProfilePrefs(registry);
Sophie Chang5ff4b942019-05-23 20:04:321751 optimization_guide::prefs::RegisterProfilePrefs(registry);
rajendrant19e545e2023-12-04 16:51:371752 optimization_guide::model_execution::prefs::RegisterProfilePrefs(registry);
[email protected]a8564212014-04-09 16:16:511753 password_manager::PasswordManager::RegisterProfilePrefs(registry);
anthonyvd6a43b932017-05-11 18:39:271754 payments::RegisterProfilePrefs(registry);
Anthony Vallee-Duboiscee55b12022-03-24 22:54:021755 performance_manager::user_tuning::prefs::RegisterProfilePrefs(registry);
Aisulu Rakhmetullinaac4afcb62023-07-05 18:10:041756 permissions::RegisterProfilePrefs(registry);
Evan Stade32d635a2020-04-03 18:51:251757 PermissionBubbleMediaAccessHandler::RegisterProfilePrefs(registry);
Sharon Yangc6706902018-07-16 13:06:191758 PlatformNotificationServiceImpl::RegisterProfilePrefs(registry);
Matt Reichhoff329eea7e2023-09-28 17:11:281759 plus_addresses::RegisterProfilePrefs(registry);
Aaron Colwellf94fd97a2020-07-21 19:37:081760 policy::URLBlocklistManager::RegisterProfilePrefs(registry);
Jayee07bb468c2023-06-01 18:25:311761 PolicyUI::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441762 PrefProxyConfigTrackerImpl::RegisterProfilePrefs(registry);
Simon Pelchate74bbb62021-12-03 23:57:551763 prefetch::RegisterPredictionOptionsProfilePrefs(registry);
Max Curran14dd7872023-03-20 19:57:361764 PrefetchOriginDecider::RegisterPrefs(registry);
Xi Han25a7f032019-04-18 21:44:211765 PrefsTabHelper::RegisterProfilePrefs(registry, locale);
harrisonsean04618302020-11-27 16:00:531766 privacy_sandbox::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441767 Profile::RegisterProfilePrefs(registry);
1768 ProfileImpl::RegisterProfilePrefs(registry);
Matt Menkecfef87d2017-08-03 13:03:061769 ProfileNetworkContextService::RegisterProfilePrefs(registry);
Javier Fernández García-Boente7966a892021-12-09 12:28:231770 custom_handlers::ProtocolHandlerRegistry::RegisterProfilePrefs(registry);
johnmecf2da0c2015-10-28 19:42:121771 PushMessagingAppIdentifier::RegisterProfilePrefs(registry);
Balazs Engedy715b0ec2019-12-04 15:11:451772 QuietNotificationPermissionUiState::RegisterProfilePrefs(registry);
[email protected]c753f142013-02-10 13:14:041773 RegisterBrowserUserPrefs(registry);
Amanda Velasco Gallardo25f07362022-01-28 02:08:471774 safe_browsing::file_type::RegisterProfilePrefs(registry);
Luke Zielinski12ef88552017-06-23 15:36:271775 safe_browsing::RegisterProfilePrefs(registry);
Ryan Sturm010e2f52021-01-08 00:13:561776 SearchPrefetchService::RegisterProfilePrefs(registry);
Clark DuVall8236b6a82020-05-28 22:54:321777 blocked_content::SafeBrowsingTriggeredPopupBlocker::RegisterProfilePrefs(
1778 registry);
Carlos IL06e6c8c2020-07-28 00:25:191779 security_interstitials::InsecureFormBlockingPage::RegisterProfilePrefs(
1780 registry);
Shakti Sahu93bfba22021-06-17 18:05:211781 segmentation_platform::SegmentationPlatformService::RegisterProfilePrefs(
1782 registry);
Anastasia Helfinstein33187fd2023-01-27 03:06:071783 segmentation_platform::DeviceSwitcherResultDispatcher::RegisterProfilePrefs(
1784 registry);
[email protected]37ca3fe02013-07-05 15:32:441785 SessionStartupPref::RegisterProfilePrefs(registry);
Himanshu Jajubcf3b9292019-06-07 12:54:071786 SharingSyncPreference::RegisterProfilePrefs(registry);
Evan Stade89158192021-01-27 18:45:231787 site_engagement::SiteEngagementService::RegisterProfilePrefs(registry);
Ayu Ishii73a353d2022-07-07 21:56:421788 storage::RegisterProfilePrefs(registry);
Mikel Astiz0889b2be2018-09-25 16:20:411789 sync_sessions::SessionSyncPrefs::RegisterProfilePrefs(registry);
Jeffrey Cohen053be24d2019-07-23 23:44:051790 syncer::DeviceInfoPrefs::RegisterProfilePrefs(registry);
Bernhard Bauer19190732017-09-28 09:03:331791 syncer::SyncPrefs::RegisterProfilePrefs(registry);
Mikel Astiz89473c442021-07-13 09:46:121792 syncer::SyncTransportDataPrefs::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441793 TemplateURLPrepopulateData::RegisterProfilePrefs(registry);
Patricia Alfonsoc6f40b5c2023-09-14 21:02:431794 tpcd::experiment::RegisterProfilePrefs(registry);
[email protected]e5e72cc2014-07-22 19:06:491795 translate::TranslatePrefs::RegisterProfilePrefs(registry);
Moe Ahmadi1266de82020-04-10 17:19:531796 omnibox::RegisterProfilePrefs(registry);
[email protected]855ebff2014-05-09 07:14:381797 ZeroSuggestProvider::RegisterProfilePrefs(registry);
[email protected]cc36c2c2012-03-01 00:57:341798
Nicolas MacBeth53fa8142023-06-20 15:06:091799#if !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
1800 promos_utils::RegisterProfilePrefs(registry);
1801#endif // !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
1802
Scott Violet53fb03c2021-01-15 23:48:161803#if BUILDFLAG(ENABLE_SESSION_SERVICE)
1804 RegisterSessionServiceLogProfilePrefs(registry);
Christian Dullweber0747d7c92021-05-10 10:05:131805 SessionDataService::RegisterProfilePrefs(registry);
Scott Violet53fb03c2021-01-15 23:48:161806#endif
1807
brettw00899e62016-11-12 02:10:171808#if BUILDFLAG(ENABLE_EXTENSIONS)
[email protected]17510602014-06-05 11:02:281809 ExtensionWebUI::RegisterProfilePrefs(registry);
je_julie.kim7fbb5a1a2015-02-09 17:26:051810 RegisterAnimationPolicyPrefs(registry);
mfoltz96f329c2016-01-13 18:16:581811 extensions::ActivityLog::RegisterProfilePrefs(registry);
tbarzicfa3c7ef62017-04-17 23:12:021812 extensions::AudioAPI::RegisterUserPrefs(registry);
mfoltz96f329c2016-01-13 18:16:581813 extensions::ExtensionPrefs::RegisterProfilePrefs(registry);
Devlin Cronin71f0f532018-04-26 16:35:061814 extensions::ExtensionsUI::RegisterProfilePrefs(registry);
Joel Hockeya9ccf0e2022-05-27 22:11:191815#if BUILDFLAG(IS_CHROMEOS_ASH)
1816 extensions::shared_storage::RegisterProfilePrefs(registry);
1817#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Emilia Paz363fa0062022-01-15 05:12:031818 extensions::PermissionsManager::RegisterProfilePrefs(registry);
afakhry2bd481832016-06-16 16:17:241819 extensions::RuntimeAPI::RegisterPrefs(registry);
Devlin Cronina997c8e2021-03-18 00:33:181820 // TODO(devlin): This would be more inline with the other calls here if it
1821 // were nested in either a class or separate namespace with a simple
1822 // Register[Profile]Prefs() name.
1823 extensions::RegisterSettingsOverriddenUiPrefs(registry);
Minh X. Nguyen3aa40692018-03-28 01:15:591824 update_client::RegisterProfilePrefs(registry);
brettw00899e62016-11-12 02:10:171825#endif // BUILDFLAG(ENABLE_EXTENSIONS)
[email protected]c2ac1dda2013-09-23 05:04:561826
Andy Phan99ccfb42022-11-29 18:57:071827#if BUILDFLAG(ENABLE_PDF)
1828 registry->RegisterListPref(prefs::kPdfLocalFileAccessAllowedForDomains,
1829 base::Value::List());
Hui Yingsta4a03ec82023-05-16 00:00:171830 registry->RegisterBooleanPref(prefs::kPdfUseSkiaRendererEnabled, true);
Andy Phan99ccfb42022-11-29 18:57:071831#endif // BUILDFLAG(ENABLE_PDF)
1832
Brett Wilson65f951c2016-11-03 22:06:121833#if BUILDFLAG(ENABLE_PRINT_PREVIEW)
Nicolas Ouellet-Payeur4dbdf1e52018-08-06 21:51:021834 printing::PolicySettings::RegisterProfilePrefs(registry);
Nikita Podguzov26222d12019-12-04 11:44:311835 printing::PrintPreviewStickySettings::RegisterProfilePrefs(registry);
bauerb4da36132014-12-26 19:53:131836#endif
1837
Lei Zhang92c15542020-01-10 17:05:101838#if BUILDFLAG(ENABLE_RLZ)
1839 ChromeRLZTrackerDelegate::RegisterProfilePrefs(registry);
1840#endif
1841
brettw9e85ef42016-11-01 21:01:241842#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
[email protected]6189ab72023-11-06 15:55:081843 supervised_user::RegisterProfilePrefs(registry);
bauerb4da36132014-12-26 19:53:131844#endif
1845
Jian Lic9a227c2022-02-28 22:55:441846#if BUILDFLAG(ENABLE_FEED_V2)
1847 feed::prefs::RegisterFeedSharedProfilePrefs(registry);
1848 feed::RegisterProfilePrefs(registry);
1849#endif
1850
Xiaohan Wangae7f9182022-01-16 00:37:521851#if BUILDFLAG(IS_ANDROID)
Lei Zhang92c15542020-01-10 17:05:101852 cdm::MediaDrmStorageImpl::RegisterProfilePrefs(registry);
Sebastien Lalancette374cf6a2021-06-22 17:23:521853 content_creation::prefs::RegisterProfilePrefs(registry);
Christopher Thompson2602fea2019-11-26 19:36:541854 KnownInterceptionDisclosureInfoBarDelegate::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101855 MediaDrmOriginIdManager::RegisterProfilePrefs(registry);
1856 NotificationChannelsProviderAndroid::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101857 ntp_tiles::PopularSitesImpl::RegisterProfilePrefs(registry);
1858 OomInterventionDecider::RegisterProfilePrefs(registry);
[email protected]084f82b2013-11-01 00:09:591859 PartnerBookmarksShim::RegisterProfilePrefs(registry);
Wolfgang Billenstein546bd4d72022-09-20 11:34:261860 permissions::GeolocationPermissionContextAndroid::RegisterProfilePrefs(
1861 registry);
Xing Liu0327d832020-05-15 21:07:031862 query_tiles::RegisterPrefs(registry);
Ian Wells5d248f012023-11-07 17:30:021863 readaloud::RegisterProfilePrefs(registry);
mvanouwerkerkc1751e02017-01-06 12:16:431864 RecentTabsPagePrefs::RegisterProfilePrefs(registry);
Patrick Noland87d9f842019-01-16 03:52:021865 usage_stats::UsageStatsBridge::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101866 variations::VariationsService::RegisterProfilePrefs(registry);
Ella Gebf864d372023-06-06 17:44:311867 webapps::InstallPromptPrefs::RegisterProfilePrefs(registry);
Jan Keitel98b2cc42022-09-20 05:38:391868#else // BUILDFLAG(IS_ANDROID)
Emily Shack670f745c2023-03-03 19:47:301869 bookmarks_webui::RegisterProfilePrefs(registry);
johnme627dc8c72016-08-19 21:49:391870 browser_sync::ForeignSessionHandler::RegisterProfilePrefs(registry);
Dana Fried68baeb002023-09-18 20:25:041871 BrowserFeaturePromoStorageService::RegisterProfilePrefs(registry);
evliuc5b5a722022-10-28 00:05:491872 captions::LiveTranslateController::RegisterProfilePrefs(registry);
dljames4b665b22023-09-21 19:35:081873 CartService::RegisterProfilePrefs(registry);
Nina Satragno8c832df2019-07-29 15:59:391874 ChromeAuthenticatorRequestDelegate::RegisterProfilePrefs(registry);
Matt Jones43bca672023-11-22 15:19:271875 commerce::CommerceUiTabHelper::RegisterProfilePrefs(registry);
Shakti Sahu05ea4e12023-03-28 07:33:101876 companion::PromoHandler::RegisterProfilePrefs(registry);
Anqing Zhao9595e482021-06-10 11:33:551877 DeviceServiceImpl::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101878 DevToolsWindow::RegisterProfilePrefs(registry);
Tibor Goldschwendt610d0372021-05-11 01:39:021879 DriveService::RegisterProfilePrefs(registry);
Dominique Fauteux-Chapleau130242bf2020-12-07 19:07:481880 enterprise_connectors::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101881 extensions::CommandService::RegisterProfilePrefs(registry);
1882 extensions::TabsCaptureVisibleTabFunction::RegisterProfilePrefs(registry);
gabdac09c03b2017-03-22 20:00:111883 first_run::RegisterProfilePrefs(registry);
johnme627dc8c72016-08-19 21:49:391884 gcm::RegisterProfilePrefs(registry);
Florian Jackya33ad152023-11-22 11:46:041885 HatsServiceDesktop::RegisterProfilePrefs(registry);
Tibor Goldschwendtf3a3ce92021-08-17 00:42:161886 NtpCustomBackgroundService::RegisterProfilePrefs(registry);
George Benz13da3df02022-01-14 00:03:521887 media_router::RegisterAccessCodeProfilePrefs(registry);
Derek Cheng23a01402018-07-24 13:38:141888 media_router::RegisterProfilePrefs(registry);
Tibor Goldschwendt53ca78b2020-10-07 19:56:181889 NewTabPageHandler::RegisterProfilePrefs(registry);
Tibor Goldschwendtbbdbe8f2021-05-20 19:27:391890 NewTabPageUI::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101891 NewTabUI::RegisterProfilePrefs(registry);
Rohit Bhatia22e544f2021-10-05 15:32:261892 ntp::SafeBrowsingHandler::RegisterProfilePrefs(registry);
kristiparkc0199772018-07-18 05:25:421893 ntp_tiles::CustomLinksManagerImpl::RegisterProfilePrefs(registry);
Jeremy Selier730b56d32021-09-17 02:59:391894 PhotosService::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101895 PinnedTabCodec::RegisterProfilePrefs(registry);
Yann Dago44d6cc322022-07-13 17:46:251896 policy::DeveloperToolsPolicyHandler::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101897 PromoService::RegisterProfilePrefs(registry);
dljames4b665b22023-09-21 19:35:081898 RecipesService::RegisterProfilePrefs(registry);
Mark Schillaciba4a7322022-06-29 15:08:351899 RegisterReadAnythingProfilePrefs(registry);
Eduard Hez55d711f2023-07-12 12:10:071900 RegisterSafetyHubProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101901 settings::SettingsUI::RegisterProfilePrefs(registry);
Victor Hugo Vianna Silva3452787c2022-07-28 23:25:301902 send_tab_to_self::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101903 signin::RegisterProfilePrefs(registry);
tmartino6254f472016-11-21 01:22:561904 StartupBrowserCreator::RegisterProfilePrefs(registry);
Taylor Bergquistc0109ac2023-11-18 01:10:041905 tab_organization_prefs::RegisterProfilePrefs(registry);
Roman Aroracd8462c2021-08-03 01:20:331906 tab_search_prefs::RegisterProfilePrefs(registry);
Roman Arorabc876bf2023-08-03 15:25:211907 ThemeColorPickerHandler::RegisterProfilePrefs(registry);
dljames4b665b22023-09-21 19:35:081908 toolbar::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101909 UnifiedAutoplayConfig::RegisterProfilePrefs(registry);
Caroline Rising065085a22023-02-22 14:34:091910 user_notes::RegisterProfilePrefs(registry);
dljames4b665b22023-09-21 19:35:081911
Michael Martis8b35dd72023-01-26 01:07:471912#if !BUILDFLAG(IS_CHROMEOS_LACROS)
1913 captions::LiveCaptionController::RegisterProfilePrefs(registry);
1914#endif // !BUILDFLAG(IS_CHROMEOS_LACROS)
Xiaohan Wangae7f9182022-01-16 00:37:521915#endif // BUILDFLAG(IS_ANDROID)
mvanouwerkerk9f0f38a2016-06-08 14:11:441916
Xiaohan Wangae7f9182022-01-16 00:37:521917#if BUILDFLAG(IS_CHROMEOS)
Benjamin Gordon24cc3552023-11-29 01:03:431918 extensions::DocumentScanAPIHandler::RegisterProfilePrefs(registry);
Maria Petrisorbb5226b2022-06-02 09:10:511919 extensions::login_api::RegisterProfilePrefs(registry);
Olya Kalitova39e913d52021-03-16 22:26:221920 extensions::platform_keys::RegisterProfilePrefs(registry);
Michael Ershovd9a627e2021-11-03 13:55:271921 certificate_manager::CertificatesHandler::RegisterProfilePrefs(registry);
Simon Hangl8ebaf732023-08-25 14:59:471922 chromeos::cloud_storage::RegisterProfilePrefs(registry);
Andrew Rayskiy0ec947f2023-08-23 09:19:541923 chromeos::cloud_upload::RegisterProfilePrefs(registry);
Michael Ershov5b2a7062022-01-17 14:28:451924 policy::PolicyCertService::RegisterProfilePrefs(registry);
Josh Simmons29bce0e82023-08-31 05:59:501925 quickoffice::RegisterProfilePrefs(registry);
Yanzhu Du76169d12022-09-21 02:53:311926 registry->RegisterBooleanPref(prefs::kDeskAPIThirdPartyAccessEnabled, false);
avynnf0708712023-10-26 21:19:301927 registry->RegisterBooleanPref(prefs::kDeskAPIDeskSaveAndShareEnabled, false);
Yanzhu Du428de9052022-10-05 22:46:581928 registry->RegisterListPref(prefs::kDeskAPIThirdPartyAllowlist);
Vignesh Shenvif47279d2022-04-07 10:55:361929 registry->RegisterBooleanPref(prefs::kInsightsExtensionEnabled, false);
Nicolas Dossou-Gbete8bf46c12022-05-16 14:20:171930 // By default showing Sync Consent is set to true. It can changed by policy.
1931 registry->RegisterBooleanPref(prefs::kEnableSyncConsent, true);
anina koehlerf1e29df62022-08-10 07:22:321932 registry->RegisterListPref(
1933 chromeos::prefs::kKeepFullscreenWithoutNotificationUrlAllowList,
1934 PrefRegistry::PUBLIC);
Vignesh Shenvidfab2b12023-08-07 19:13:001935 ::reporting::RegisterProfilePrefs(registry);
Andrew Rayskiy16f8cab2022-12-15 16:28:331936#if BUILDFLAG(USE_CUPS)
Pranav Batrae71407672021-08-16 23:53:001937 extensions::PrintingAPIHandler::RegisterProfilePrefs(registry);
Andrew Rayskiy16f8cab2022-12-15 16:28:331938#endif // BUILDFLAG(USE_CUPS)
Xiaohan Wangae7f9182022-01-16 00:37:521939#endif // BUILDFLAG(IS_CHROMEOS)
Olya Kalitova39e913d52021-03-16 22:26:221940
Yuta Hijikata31a359c2020-11-27 07:50:261941#if BUILDFLAG(IS_CHROMEOS_ASH)
James Cookc542d992019-11-08 23:34:241942 app_list::AppListSyncableService::RegisterProfilePrefs(registry);
Elitsa Bankova984491f2023-10-06 07:40:111943 apps::AlmanacFetcher::RegisterProfilePrefs(registry);
Nancy Wanga78b7a32021-04-28 05:10:291944 apps::AppPlatformMetricsService::RegisterProfilePrefs(registry);
Jeevan Shikarama73dec1a2022-09-08 05:51:521945 apps::AppPreloadService::RegisterProfilePrefs(registry);
Nikki Fangac3f0592023-02-14 01:31:191946 apps::deduplication::AppDeduplicationService::RegisterProfilePrefs(registry);
Tim Sergeant1231dcc2021-05-10 14:00:571947 apps::webapk_prefs::RegisterProfilePrefs(registry);
Hidehiko Abe33e9adf2017-09-13 06:12:231948 arc::prefs::RegisterProfilePrefs(registry);
James Cookc542d992019-11-08 23:34:241949 ArcAppListPrefs::RegisterProfilePrefs(registry);
Hidehiko Abe89f9b5c92023-09-19 04:37:111950 arc::ArcBootPhaseMonitorBridge::RegisterProfilePrefs(registry);
Anastasiia N0582a902021-12-08 17:44:591951 ash::AccountAppsAvailability::RegisterPrefs(registry);
Kushagra Sinhab37e24db2021-07-02 15:14:241952 account_manager::AccountManager::RegisterPrefs(registry);
Yeunjoo Choi19772c942021-03-08 14:51:111953 ash::ApkWebAppService::RegisterProfilePrefs(registry);
Yeunjoo Choi40d02412021-04-21 01:38:561954 ash::app_time::AppActivityRegistry::RegisterProfilePrefs(registry);
1955 ash::app_time::AppTimeController::RegisterProfilePrefs(registry);
Andreea Costinasc33add32023-07-13 16:57:131956 ash::AshProxyMonitor::RegisterProfilePrefs(registry);
Yeunjoo Choi65c73cc2022-08-02 05:30:161957 ash::assistant::prefs::RegisterProfilePrefs(registry);
Anastasiia N1ad94e1e2022-09-15 08:47:281958 ash::auth::AuthFactorConfig::RegisterPrefs(registry);
Yeunjoo Choi0e66c9aa2021-04-02 02:05:561959 ash::bluetooth::DebugLogsManager::RegisterPrefs(registry);
Henrique Ferreirobbaee882022-09-08 07:15:551960 ash::bluetooth_config::BluetoothPowerControllerImpl::RegisterProfilePrefs(
1961 registry);
Theo Johnson-Kanudc9f96272023-01-12 05:11:391962 ash::HatsBluetoothRevampTriggerImpl::RegisterProfilePrefs(registry);
Henrique Ferreiro2029590e2021-09-23 08:01:521963 ash::ClientAppMetadataProviderService::RegisterProfilePrefs(registry);
Yeunjoo Choi47a6a142022-02-11 02:35:231964 ash::CupsPrintersManager::RegisterProfilePrefs(registry);
Yeunjoo Choi0dc579e42022-03-23 04:14:521965 ash::device_sync::RegisterProfilePrefs(registry);
Yeunjoo Choi651766c02021-04-26 11:45:431966 ash::FamilyUserChromeActivityMetrics::RegisterProfilePrefs(registry);
1967 ash::FamilyUserMetricsService::RegisterProfilePrefs(registry);
1968 ash::FamilyUserSessionMetrics::RegisterProfilePrefs(registry);
Yeunjoo Choiebbdaa62022-10-20 01:05:311969 ash::InlineLoginHandlerImpl::RegisterProfilePrefs(registry);
Yeunjoo Choi395103872021-07-22 01:16:071970 ash::first_run::RegisterProfilePrefs(registry);
Yeunjoo Choic4e54fe2021-06-09 02:11:391971 ash::file_system_provider::RegisterProfilePrefs(registry);
Yeunjoo Choi0842edfa2021-07-29 00:53:171972 ash::full_restore::RegisterProfilePrefs(registry);
Yeunjoo Choi4530b1792021-05-10 02:32:271973 ash::KerberosCredentialsManager::RegisterProfilePrefs(registry);
Yeunjoo Choi044ea242022-03-14 12:06:291974 ash::multidevice_setup::MultiDeviceSetupService::RegisterProfilePrefs(
Jordy Greenblatt2265de702018-07-26 19:05:261975 registry);
Henrique Ferreirocddc8012021-03-26 00:47:151976 ash::MultiProfileUserController::RegisterProfilePrefs(registry);
Yeunjoo Choi6c99c4d2022-08-08 03:11:111977 ash::NetworkMetadataStore::RegisterPrefs(registry);
Yeunjoo Choic1593bf2021-04-23 03:49:251978 ash::ReleaseNotesStorage::RegisterProfilePrefs(registry);
Yeunjoo Choif5706262021-08-24 01:11:241979 ash::HelpAppNotificationController::RegisterProfilePrefs(registry);
Henrique Ferreirob3ff980b2021-07-19 09:41:271980 ash::quick_unlock::FingerprintStorage::RegisterProfilePrefs(registry);
1981 ash::quick_unlock::PinStoragePrefs::RegisterProfilePrefs(registry);
Henrique Ferreiro4b21d142021-11-10 11:47:371982 ash::Preferences::RegisterProfilePrefs(registry);
Yeunjoo Choida53f442021-09-17 01:07:361983 ash::EnterprisePrintersProvider::RegisterProfilePrefs(registry);
Yeunjoo Choi09213db2021-04-16 03:42:081984 ash::parent_access::ParentAccessService::RegisterProfilePrefs(registry);
Yue Lia3125692022-01-05 20:05:431985 quick_answers::prefs::RegisterProfilePrefs(registry);
Henrique Ferreirob3ff980b2021-07-19 09:41:271986 ash::quick_unlock::RegisterProfilePrefs(registry);
Henrique Ferreiroec8355d2021-07-20 08:20:081987 ash::RegisterSamlProfilePrefs(registry);
Yeunjoo Choi651766c02021-04-26 11:45:431988 ash::ScreenTimeController::RegisterProfilePrefs(registry);
Henrique Ferreirofad33bd2021-01-29 00:28:401989 ash::EduCoexistenceConsentInvalidationController::RegisterProfilePrefs(
yilkalc04a16dc2020-11-04 22:07:071990 registry);
Yeunjoo Choi38cea422022-10-18 06:19:171991 ash::EduCoexistenceLoginHandler::RegisterProfilePrefs(registry);
Henrique Ferreiroa264c8c02021-07-20 08:31:471992 ash::SigninErrorNotifier::RegisterPrefs(registry);
Yeunjoo Choicf61fba2021-04-23 02:43:091993 ash::ServicesCustomizationDocument::RegisterProfilePrefs(registry);
Yeunjoo Choiba3d9972022-10-11 12:50:121994 ash::settings::OSSettingsUI::RegisterProfilePrefs(registry);
Henrique Ferreirob403be32021-09-22 07:15:361995 ash::StartupUtils::RegisterOobeProfilePrefs(registry);
Jiaming Chengd3d84762023-07-20 20:47:361996 ash::UpdateNotificationShowingController::RegisterProfilePrefs(registry);
Aiden Chiavatti112d3672023-03-17 21:13:411997 ash::user_image::prefs::RegisterProfilePrefs(registry);
Henrique Ferreirocddc8012021-03-26 00:47:151998 ash::UserImageSyncObserver::RegisterProfilePrefs(registry);
Jong Ahn6f1c54a42022-01-18 00:20:561999 ChromeMetricsServiceClient::RegisterProfilePrefs(registry);
Renee Wrightc41d5432018-04-26 05:27:372000 crostini::prefs::RegisterProfilePrefs(registry);
sdefresne8593e6432015-12-01 12:38:082001 flags_ui::PrefServiceFlagsStorage::RegisterProfilePrefs(registry);
Joel Hockey7fb974342019-06-27 23:35:052002 guest_os::prefs::RegisterProfilePrefs(registry);
Toni Barzic14329d02017-07-17 21:59:122003 lock_screen_apps::StateController::RegisterProfilePrefs(registry);
Olya Kalitovac869f962018-12-04 12:01:232004 plugin_vm::prefs::RegisterProfilePrefs(registry);
GioVAX287418d2020-11-23 17:56:592005 policy::ArcAppInstallEventLogger::RegisterProfilePrefs(registry);
Bartosz Fabianowskid4d93a72018-05-17 18:49:482006 policy::AppInstallEventLogManagerWrapper::RegisterProfilePrefs(registry);
Marcelo Almeida9ef8c132019-05-13 20:19:122007 policy::StatusCollector::RegisterProfilePrefs(registry);
Henrique Ferreiroe2cbaaf2022-01-10 15:02:232008 ash::SystemProxyManager::RegisterProfilePrefs(registry);
Erik Chenc2927bbd2021-09-22 23:20:072009 ChromeShelfPrefs::RegisterProfilePrefs(registry);
stevenjbf22f82e2016-10-26 21:47:382010 ::onc::RegisterProfilePrefs(registry);
Yeunjoo Choicd4cc5382021-03-25 08:50:492011 ash::cert_provisioning::RegisterProfilePrefs(registry);
Nicholas Hollingumf4c11e32020-10-05 22:52:572012 borealis::prefs::RegisterProfilePrefs(registry);
Gavin Williamsf6781f3e2021-04-22 01:13:492013 ash::ChromeScanningAppDelegate::RegisterProfilePrefs(registry);
yilkal95d9f882021-10-18 21:59:002014 ProjectorAppClientImpl::RegisterProfilePrefs(registry);
Geng Li11526bb42022-02-15 23:59:142015 ash::floating_workspace_util::RegisterProfilePrefs(registry);
Sanja Perisic91217932022-04-13 13:45:022016 policy::RebootNotificationsScheduler::RegisterProfilePrefs(registry);
Edman Anjos0f2ad562023-11-08 10:40:492017 ash::KioskChromeAppManager::RegisterProfilePrefs(registry);
Andrew Rayskiy47076d72022-09-27 18:46:142018 file_manager::file_tasks::RegisterProfilePrefs(registry);
Nigel Taoa1d4dce2022-10-18 00:01:202019 file_manager::prefs::RegisterProfilePrefs(registry);
Fergus Dall54a6a432022-11-18 17:35:292020 bruschetta::prefs::RegisterProfilePrefs(registry);
Chris Mullinse59586192023-03-06 17:42:172021 wallpaper_handlers::prefs::RegisterProfilePrefs(registry);
Vignesh Shenvi145bf6e2023-05-08 22:11:302022 ash::reporting::RegisterProfilePrefs(registry);
Yuta Hijikata31a359c2020-11-27 07:50:262023#endif // BUILDFLAG(IS_CHROMEOS_ASH)
gab3ca4a492017-03-02 00:19:412024
Darin Fisher127d5782021-01-20 20:32:342025#if BUILDFLAG(IS_CHROMEOS_LACROS)
2026 lacros_prefs::RegisterProfilePrefs(registry);
Andreea Costinas68cad91f2021-09-22 15:58:092027 chromeos::ProxyConfigServiceLacros::RegisterProfilePrefs(registry);
Ian Helmkec4a4e452022-05-09 22:17:582028 lacros_prefs::RegisterExtensionControlledAshPrefs(registry);
Irina Fedorova13745422022-07-15 12:59:002029 KioskSessionServiceLacros::RegisterProfilePrefs(registry);
Nancy Wangc84098e2022-10-24 10:30:362030 apps::WebsiteMetricsServiceLacros::RegisterProfilePrefs(registry);
Darin Fisher127d5782021-01-20 20:32:342031#endif
2032
Xiaohan Wangae7f9182022-01-16 00:37:522033#if BUILDFLAG(IS_WIN)
Alex St-Onge9e4b9b72021-06-08 15:35:542034 CdmPrefServiceHelper::RegisterProfilePrefs(registry);
Scott Violet3ff87d062021-12-21 06:10:102035 FontPrewarmerTabHelper::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:442036 NetworkProfileBubble::RegisterProfilePrefs(registry);
[email protected]a4422802012-05-03 09:19:152037#endif
[email protected]eeec6ca2013-02-21 15:10:432038
Sebastien Lalancette413625312023-05-08 13:58:012039#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
2040 BUILDFLAG(IS_CHROMEOS_ASH)
Zonghan Xuc528f6e82022-08-09 22:31:582041 device_signals::RegisterProfilePrefs(registry);
Sebastien Lalancette413625312023-05-08 13:58:012042#endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ||
2043 // BUILDFLAG(IS_CHROMEOS_ASH)
Zonghan Xuc528f6e82022-08-09 22:31:582044
Nicolas Ouellet-Payeurc1b89932022-09-30 16:22:532045#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
Nicolas4b82a652019-01-04 17:42:382046 browser_switcher::BrowserSwitcherPrefs::RegisterProfilePrefs(registry);
Nicolas Ouellet-Payeurcb894532023-09-28 04:03:152047 enterprise_signin::RegisterProfilePrefs(registry);
Nicolas Ouellet-Payeur9a4a94d2018-09-17 15:26:112048#endif
2049
Miyoung Shin16caa0c12023-11-15 14:09:462050#if BUILDFLAG(ENABLE_EXTENSIONS) && !BUILDFLAG(IS_CHROMEOS_ASH)
Daniel Murphy3657906d2021-04-13 20:33:122051 preinstalled_apps::RegisterProfilePrefs(registry);
Becca Hughes7d2bbb82018-08-07 22:56:592052#endif
2053
Xiaohan Wangae7f9182022-01-16 00:37:522054#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS)
Kristi Parkd0f72412021-07-02 01:09:032055 sharing_hub::RegisterProfilePrefs(registry);
2056#endif
2057
Lei Zhang92c15542020-01-10 17:05:102058#if defined(TOOLKIT_VIEWS)
2059 accessibility_prefs::RegisterInvertBubbleUserPrefs(registry);
Yuheng Huang9ce54892022-05-06 19:29:392060 side_search_prefs::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:102061 RegisterBrowserViewProfilePrefs(registry);
Owen Minef022e92019-10-15 21:25:212062#endif
2063
Duncan Mercer8062eef2022-12-28 22:28:372064#if BUILDFLAG(ENABLE_LENS_DESKTOP)
Juan Mojica4669f8d2021-08-05 20:01:452065 registry->RegisterBooleanPref(
2066 prefs::kLensRegionSearchEnabled, true,
2067 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
Duncan Mercer8062eef2022-12-28 22:28:372068 registry->RegisterBooleanPref(prefs::kLensDesktopNTPSearchEnabled, true);
2069#endif
2070
2071#if !BUILDFLAG(IS_ANDROID)
Martin Kreichgauerd7aa4f92022-02-22 20:46:212072 registry->RegisterBooleanPref(
2073 webauthn::pref_names::kRemoteProxiedRequestsAllowed, false);
dljames0a96ef192022-07-07 23:31:432074
Nina Satragno42747a42023-06-29 15:25:272075 registry->RegisterStringPref(
2076 webauthn::pref_names::kLastUsedPairingFromSyncPublicKey, "");
2077
Caroline Risingf4b49092023-03-23 02:28:262078 side_panel_prefs::RegisterProfilePrefs(registry);
Juan Mojica4669f8d2021-08-05 20:01:452079#endif
2080
Nina Satragnod7b8fb42022-11-10 20:43:392081 registry->RegisterBooleanPref(webauthn::pref_names::kAllowWithBrokenCerts,
2082 false);
2083
Sean Harrisonf263b732021-12-07 11:17:522084 registry->RegisterBooleanPref(prefs::kPrivacyGuideViewed, false);
Sean Harrisonf263b732021-12-07 11:17:522085
Leonard Grey812af7a2022-05-02 15:46:032086#if BUILDFLAG(IS_MAC)
2087 registry->RegisterBooleanPref(policy::policy_prefs::kScreenTimeEnabled, true);
2088#endif
2089
James Cook0ba192bf2017-12-01 20:53:112090 RegisterProfilePrefsForMigration(registry);
Alison Gale6bf2cc52022-09-08 15:11:492091
2092#if !BUILDFLAG(IS_ANDROID)
2093 registry->RegisterIntegerPref(prefs::kHighEfficiencyChipExpandedCount, 0);
Alison Gale58bb3cd52023-04-21 15:03:202094 registry->RegisterTimePref(prefs::kLastHighEfficiencyChipExpandedTimestamp,
2095 base::Time());
Alison Gale6bf2cc52022-09-08 15:11:492096#endif
Anders Hartvoll Ruudeedebdc2022-10-12 15:38:012097
2098#if BUILDFLAG(IS_ANDROID)
2099 registry->RegisterBooleanPref(prefs::kVirtualKeyboardResizesLayoutByDefault,
2100 false);
2101#endif
Kirubel Aklilubb804082022-11-10 19:02:302102
2103 registry->RegisterTimePref(prefs::kDIPSTimerLastUpdate, base::Time());
Kyungjun Lee0dcd7c3e2022-12-16 22:01:392104
2105#if BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
Kyungjun Lee6faff152023-10-23 18:04:312106 registry->RegisterBooleanPref(prefs::kAccessibilityPdfOcrAlwaysActive, true);
Kyungjun Lee0dcd7c3e2022-12-16 22:01:392107#endif // BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
Yuta Hijikata9cd674122023-07-29 15:43:372108
2109#if BUILDFLAG(IS_CHROMEOS_ASH)
2110 registry->RegisterBooleanPref(kClearUserDataDir1Pref, false);
2111#endif
Andrew Williams0e136592023-08-09 15:13:342112
2113 registry->RegisterBooleanPref(prefs::kBlockTruncatedCookies, true);
Jonathan Hao3a829c12023-10-24 14:35:472114 registry->RegisterBooleanPref(
2115 prefs::kManagedPrivateNetworkAccessRestrictionsEnabled, false);
Dominique Fauteux-Chapleaub6be8ae2023-09-26 13:48:402116
2117#if BUILDFLAG(ENTERPRISE_DATA_CONTROLS)
2118 data_controls::RegisterProfilePrefs(registry);
2119#endif // BUILDFLAG(ENTERPRISE_DATA_CONTROLS)
Georgina Sanchez Buenrostro57c36622023-10-26 00:53:122120
2121#if BUILDFLAG(IS_WIN)
2122 registry->RegisterBooleanPref(prefs::kNativeHostsExecutablesLaunchDirectly,
2123 false);
2124#endif // BUILDFLAG(IS_WIN)
Anthony Cui417bf4b2023-11-17 20:48:042125
Anthony Cuifc4726fc2023-12-01 23:28:472126#if BUILDFLAG(ENABLE_COMPOSE)
Anthony Cui417bf4b2023-11-17 20:48:042127 registry->RegisterBooleanPref(prefs::kPrefHasAcceptedComposeConsent, false);
2128#endif
initial.commit09911bf2008-07-26 23:55:292129}
license.botbf09a502008-08-24 00:55:552130
[email protected]37ca3fe02013-07-05 15:32:442131void RegisterUserProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
Xi Han25a7f032019-04-18 21:44:212132 RegisterUserProfilePrefs(registry, g_browser_process->GetApplicationLocale());
2133}
2134
2135void RegisterUserProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
2136 const std::string& locale) {
2137 RegisterProfilePrefs(registry, locale);
[email protected]2424cc52013-07-17 13:44:382138
Xiaohan Wangae7f9182022-01-16 00:37:522139#if BUILDFLAG(IS_ANDROID)
mlliuee3a405c2016-10-28 22:34:522140 ::android::RegisterUserProfilePrefs(registry);
2141#endif
Yuta Hijikata31a359c2020-11-27 07:50:262142#if BUILDFLAG(IS_CHROMEOS_ASH)
John Palmer1e70a002023-08-15 02:20:342143 ash::RegisterUserProfilePrefs(registry, locale);
Kush Sinha31d120b72023-09-04 12:21:542144 ash::TokenHandleFetcher::RegisterPrefs(registry);
Xiyuan Xia5a8c4172019-05-13 16:23:482145#endif
[email protected]37ca3fe02013-07-05 15:32:442146}
2147
[email protected]8eefe842014-01-17 06:42:402148void RegisterScreenshotPrefs(PrefRegistrySimple* registry) {
2149 registry->RegisterBooleanPref(prefs::kDisableScreenshots, false);
2150}
2151
Yuta Hijikata31a359c2020-11-27 07:50:262152#if BUILDFLAG(IS_CHROMEOS_ASH)
John Palmer1e70a002023-08-15 02:20:342153void RegisterSigninProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
2154 std::string_view country) {
Xi Han25a7f032019-04-18 21:44:212155 RegisterProfilePrefs(registry, g_browser_process->GetApplicationLocale());
John Palmer1e70a002023-08-15 02:20:342156 ash::RegisterSigninProfilePrefs(registry, country);
[email protected]37ca3fe02013-07-05 15:32:442157}
Eyor Alemayehu4b516fb2019-02-20 20:24:292158
[email protected]37ca3fe02013-07-05 15:32:442159#endif
2160
rkaplowf216caf2015-03-02 22:37:452161// This method should be periodically pruned of year+ old migrations.
Gabriel Charette1eecf132021-04-15 16:55:532162// See chrome/browser/prefs/README.md for details.
Lei Zhangb76b80e32020-04-08 16:58:162163void MigrateObsoleteLocalStatePrefs(PrefService* local_state) {
Scott Littlec463f3362022-02-15 18:44:242164 // IMPORTANT NOTE: This code is *not* run on iOS Chrome. If a pref is migrated
2165 // or cleared here, and that pref is also used in iOS Chrome, it may also need
2166 // to be migrated or cleared specifically for iOS as well. This could be by
2167 // doing the migration in feature code that's called by all platforms instead
2168 // of here, or by calling migration code in the appropriate place for iOS
Gauthier Ambardfd73b8a12023-05-17 09:54:432169 // specifically, e.g. ios/chrome/browser/shared/model/prefs/browser_prefs.mm.
Scott Littlec463f3362022-02-15 18:44:242170
Dominic Battre645d42342020-12-04 16:14:102171 // BEGIN_MIGRATE_OBSOLETE_LOCAL_STATE_PREFS
2172 // Please don't delete the preceding line. It is used by PRESUBMIT.py.
2173
Avi Drissmanfee70e5f2022-11-02 20:50:112174#if BUILDFLAG(ENABLE_BACKGROUND_MODE) && BUILDFLAG(IS_MAC)
2175 // Added 11/2022.
2176 local_state->ClearPref(kUserRemovedLoginItem);
2177 local_state->ClearPref(kChromeCreatedLoginItem);
2178 local_state->ClearPref(kMigratedLoginItemPref);
2179#endif
Nicolas Dossou-Gbete2804a372022-11-09 17:25:352180#if BUILDFLAG(IS_CHROMEOS_LACROS)
2181 if (local_state->HasPrefPath(kPrimaryProfileFirstRunFinished)) {
2182 bool old_value = local_state->GetBoolean(kPrimaryProfileFirstRunFinished);
2183 local_state->ClearPref(kPrimaryProfileFirstRunFinished);
2184 local_state->SetBoolean(prefs::kFirstRunFinished, old_value);
2185 }
2186#endif
Avi Drissmanfee70e5f2022-11-02 20:50:112187
Victor Hugo Vianna Silva29ab0a32022-11-10 03:48:382188 // Added 11/2022.
2189 local_state->ClearPref(kLocalConsentsDictionary);
2190
Nasser Al-shawwa16ffdfc2023-01-13 14:32:202191 // Added 01/2023
2192 local_state->ClearPref(kSendDownloadToCloudPref);
Nasser Al-shawwafef41782023-01-27 20:43:502193
Sebastien Lalancette55953e42023-01-17 14:48:312194#if BUILDFLAG(IS_MAC)
2195 local_state->ClearPref(kDeviceTrustDisableKeyCreationPref);
2196#endif // BUILDFLAG(IS_MAC)
Nasser Al-shawwa16ffdfc2023-01-13 14:32:202197
Andrew Breggerf89f1322023-02-01 02:22:032198 // Added 01/2023
2199#if BUILDFLAG(IS_CHROMEOS_ASH)
2200 local_state->ClearPref(kEventSequenceLastSystemUptime);
2201 local_state->ClearPref(kEventSequenceResetCounter);
2202#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2203
Lu Huangeba5b532023-02-22 23:19:342204 // Added 02/2023
2205#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
2206 local_state->ClearPref(kWebAppsUrlHandlerInfo);
2207#endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
2208
Brittany Hartmire537aa47b2023-03-01 23:43:092209// Added 02/2023.
2210#if BUILDFLAG(IS_CHROMEOS_ASH)
2211 local_state->ClearPref(kEasyUnlockLocalStateTpmKeys);
2212#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2213
Artsiom Mitrokhincf332e22023-03-07 16:27:472214// Added 03/2023.
2215#if BUILDFLAG(IS_CHROMEOS_ASH)
2216 local_state->ClearPref(kGlanceablesSignoutScreenshotDuration);
2217#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2218
Brittany Hartmireafd35312023-03-16 00:21:032219// Added 03/2023.
2220#if BUILDFLAG(IS_CHROMEOS_ASH)
2221 local_state->ClearPref(kEasyUnlockLocalStateUserPrefs);
2222#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2223
Brittany Hartmire1ffd662e2023-04-04 22:46:512224// Added 04/2023.
2225#if BUILDFLAG(IS_CHROMEOS_ASH)
2226 local_state->ClearPref(kEasyUnlockHardlockState);
2227#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2228
Artem Sumaneev77f80bb2023-04-11 14:04:582229 // Added 04/2023.
2230 local_state->ClearPref(kTypeSubscribedForInvalidations);
2231 local_state->ClearPref(kActiveRegistrationToken);
2232 local_state->ClearPref(kFCMInvalidationClientIDCache);
2233
Osama Fathy5d236652023-04-17 17:31:122234// Added 04/2023.
2235#if BUILDFLAG(IS_CHROMEOS_ASH)
2236 local_state->ClearPref(kConsolidatedConsentTrial);
2237#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2238
Roland Bock8e21dd022023-04-27 09:33:482239// Added 04/2023.
2240#if BUILDFLAG(IS_CHROMEOS_ASH)
2241 local_state->ClearPref(kEnrollmentIdUploadedOnChromad);
2242 local_state->ClearPref(kLastChromadMigrationAttemptTime);
2243#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2244
Pilar Molina Lopezef825502023-05-12 18:08:482245 // Added 05/2023.
Colin Blundella2aea272023-05-15 09:50:002246 local_state->ClearPref(kForceEnablePepperVideoDecoderDevAPI);
2247
2248 // Added 05/2023.
Pilar Molina Lopezef825502023-05-12 18:08:482249 local_state->ClearPref(kUseMojoVideoDecoderForPepperAllowed);
2250
Vasiliy Telezhnikov2a786452023-05-12 23:53:372251 // Added 05/2023
2252 local_state->ClearPref(kPPAPISharedImagesSwapChainAllowed);
2253
Ramin Halavatiec90e022023-05-23 13:55:052254// Added 05/2023.
2255#if BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
2256 local_state->ClearPref(kScreenAIScheduledDeletionTimePrefName);
2257#endif
2258
Cathy Li7ff029622023-05-26 04:56:522259// Added 05/2023
2260#if BUILDFLAG(IS_ANDROID)
2261 local_state->ClearPref(kWeeklyStatsReportingTimestamp);
2262#endif
2263
Hidehiko Abead7991f22023-05-31 14:32:222264// Added 05/2023.
2265#if BUILDFLAG(IS_CHROMEOS_ASH)
2266 local_state->ClearPref(kSupervisedUsersFirstRun);
2267 local_state->ClearPref(kSupervisedUserSyncId);
2268 local_state->ClearPref(kSupervisedUserManagers);
2269 local_state->ClearPref(kSupervisedUserManagerNames);
2270 local_state->ClearPref(kSupervisedUserManagerDisplayEmails);
2271
2272 local_state->ClearPref(kSupervisedUserPasswordSchema);
2273 local_state->ClearPref(kSupervisedUserPasswordSalt);
2274 local_state->ClearPref(kSupervisedUserPasswordRevision);
2275
2276 local_state->ClearPref(kSupervisedUserNeedPasswordUpdate);
2277 local_state->ClearPref(kSupervisedUserIncompleteKey);
2278#endif
2279
Eshwar Stalin883b5a72023-07-11 02:05:592280// Added 07/2023.
2281#if !BUILDFLAG(IS_ANDROID)
2282 local_state->ClearPref(kLegacyHoverCardImagesEnabled);
2283#endif
2284
Etienne Bergeron6ac228e2023-08-02 17:39:042285 // Added 07/2023.
2286 local_state->ClearPref(kShutdownNumProcesses);
2287 local_state->ClearPref(kShutdownNumProcessesSlow);
Etienne Bergeronec5c88fb2023-08-07 15:09:392288 local_state->ClearPref(kShutdownType);
Etienne Bergeron6ac228e2023-08-02 17:39:042289
Daniel Ruberya440a6b12023-09-08 22:04:332290 // Added 09/2023.
2291#if BUILDFLAG(IS_WIN)
2292 local_state->ClearPref(kSwReporter);
2293 local_state->ClearPref(kChromeCleaner);
2294#endif
2295
Ahmed Mehfooze6c06892023-09-14 00:48:172296// Added 09/2023.
2297#if BUILDFLAG(IS_CHROMEOS_ASH)
2298 local_state->ClearPref(kGestureEducationNotificationShown);
2299#endif
2300
Dominic Battre645d42342020-12-04 16:14:102301 // Please don't delete the following line. It is used by PRESUBMIT.py.
2302 // END_MIGRATE_OBSOLETE_LOCAL_STATE_PREFS
Scott Littlec463f3362022-02-15 18:44:242303
2304 // IMPORTANT NOTE: This code is *not* run on iOS Chrome. If a pref is migrated
2305 // or cleared here, and that pref is also used in iOS Chrome, it may also need
2306 // to be migrated or cleared specifically for iOS as well. This could be by
2307 // doing the migration in feature code that's called by all platforms instead
2308 // of here, or by calling migration code in the appropriate place for iOS
Gauthier Ambardfd73b8a12023-05-17 09:54:432309 // specifically, e.g. ios/chrome/browser/shared/model/prefs/browser_prefs.mm.
rkaplowf216caf2015-03-02 22:37:452310}
2311
2312// This method should be periodically pruned of year+ old migrations.
Gabriel Charette1eecf132021-04-15 16:55:532313// See chrome/browser/prefs/README.md for details.
Victor Hugo Vianna Silva6cc84402023-12-06 15:21:572314void MigrateObsoleteProfilePrefs(PrefService* profile_prefs,
2315 const base::FilePath& profile_path) {
Scott Littlec463f3362022-02-15 18:44:242316 // IMPORTANT NOTE: This code is *not* run on iOS Chrome. If a pref is migrated
2317 // or cleared here, and that pref is also used in iOS Chrome, it may also need
2318 // to be migrated or cleared specifically for iOS as well. This could be by
2319 // doing the migration in feature code that's called by all platforms instead
2320 // of here, or by calling migration code in the appropriate place for iOS
Gauthier Ambardfd73b8a12023-05-17 09:54:432321 // specifically, e.g. ios/chrome/browser/shared/model/prefs/browser_prefs.mm.
Scott Littlec463f3362022-02-15 18:44:242322
Dominic Battre645d42342020-12-04 16:14:102323 // BEGIN_MIGRATE_OBSOLETE_PROFILE_PREFS
2324 // Please don't delete the preceding line. It is used by PRESUBMIT.py.
2325
wutaobc9027e2020-04-08 02:01:442326 // Check MigrateDeprecatedAutofillPrefs() to see if this is safe to remove.
Moe Ahmadic3061bd2018-08-30 16:25:322327 autofill::prefs::MigrateDeprecatedAutofillPrefs(profile_prefs);
Alexandr Ilin273e20b2018-09-05 19:47:572328
Tarun Bansal99e447d2020-03-17 10:07:562329 // Added 3/2020.
Julian Pastarmov7da3bc22021-03-30 14:30:182330 // TODO(crbug.com/1062698): Remove this once the privacy settings redesign
2331 // is fully launched.
Ben Schwartz135746c2020-05-14 04:37:032332 chrome_browser_net::secure_dns::MigrateProbesSettingToOrFromBackup(
2333 profile_prefs);
wutao2e24aff2020-04-03 17:01:022334
Mihai Sardarescu3a27a8b2022-05-30 14:01:492335#if BUILDFLAG(ENABLE_DICE_SUPPORT)
2336 // Added 06/2022.
Mariam Ali15a343d2023-08-28 15:56:502337 // TODO(crbug.com/1476489): Remove when unit test code is updated.
Mihai Sardarescu3a27a8b2022-05-30 14:01:492338 profile_prefs->ClearPref(kTokenServiceDiceCompatible);
2339#endif // BUILDFLAG(ENABLE_DICE_SUPPORT)
Tom Andersoncb3408482022-09-02 19:06:412340
Jonathan Freedff18fb6a2022-10-17 20:46:292341 // Added 10/2022
David Roger877bdc72022-10-19 09:38:512342#if BUILDFLAG(IS_ANDROID)
Jonathan Freedff18fb6a2022-10-17 20:46:292343 feed::MigrateObsoleteProfilePrefsOct_2022(profile_prefs);
2344#endif // BUILDFLAG(IS_ANDROID)
Peter Birk Pakkenberg71a43942023-01-04 13:50:372345 profile_prefs->ClearPref(kOriginTrialPrefKey);
Jonathan Freedff18fb6a2022-10-17 20:46:292346
David Roger877bdc72022-10-19 09:38:512347 // Once this migration is complete, the tracked preference
Mikel Astiz662cb5e22023-10-02 16:04:242348 // `kGoogleServicesLastSyncingAccountIdDeprecated` can be removed.
David Roger877bdc72022-10-19 09:38:512349 if (profile_prefs->HasPrefPath(
Mikel Astiz662cb5e22023-10-02 16:04:242350 prefs::kGoogleServicesLastSyncingAccountIdDeprecated)) {
2351 std::string account_id = profile_prefs->GetString(
2352 prefs::kGoogleServicesLastSyncingAccountIdDeprecated);
2353 profile_prefs->ClearPref(
2354 prefs::kGoogleServicesLastSyncingAccountIdDeprecated);
David Roger877bdc72022-10-19 09:38:512355 bool is_email = account_id.find('@') != std::string::npos;
Andrew Breggerf89f1322023-02-01 02:22:032356 if (!is_email && !account_id.empty()) {
Mikel Astiz662cb5e22023-10-02 16:04:242357 profile_prefs->SetString(prefs::kGoogleServicesLastSyncingGaiaId,
2358 account_id);
Andrew Breggerf89f1322023-02-01 02:22:032359 }
David Roger877bdc72022-10-19 09:38:512360 }
2361
Martin Kreichgauerc86cc652022-10-28 16:52:042362 // Added 10/2022.
2363#if BUILDFLAG(ENABLE_EXTENSIONS)
2364 profile_prefs->ClearPref(kLoadCryptoTokenExtension);
2365#endif
2366
Yulun Wu066dab712022-11-01 17:20:242367#if BUILDFLAG(IS_CHROMEOS_ASH)
2368 // Added 10/2022.
2369 profile_prefs->ClearPref(kSuggestedContentInfoShownInLauncher);
2370 profile_prefs->ClearPref(kSuggestedContentInfoDismissedInLauncher);
2371#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2372
Jan Keitel4707c1f2022-11-30 11:08:592373 // Added 11/2022.
2374 profile_prefs->ClearPref(kAutofillAssistantEnabled);
2375 profile_prefs->ClearPref(kAutofillAssistantConsent);
2376 profile_prefs->ClearPref(kAutofillAssistantTriggerScriptsEnabled);
2377 profile_prefs->ClearPref(kAutofillAssistantTriggerScriptsIsFirstTimeUser);
2378
Mikel Astiz823b71012022-12-07 09:57:022379 // Added 12/2022.
Mikel Astiz231dd522023-04-23 15:51:442380 profile_prefs->ClearPref(kDeprecatedReadingListHasUnseenEntries);
Mikel Astiz823b71012022-12-07 09:57:022381
Vishwas Uppoorbcf36722022-12-30 18:55:222382 // Added 12/2022.
2383 profile_prefs->ClearPref(kAutofillWalletImportStorageCheckboxState);
2384
Daseul Lee56c5a8d2023-01-17 17:18:462385 // Added 01/2023.
2386 profile_prefs->ClearPref(kFileSystemSyncAccessHandleAsyncInterfaceEnabled);
2387
mark a. foltz264816212023-01-19 21:10:462388 // Added 01/2023.
2389#if !BUILDFLAG(IS_ANDROID)
2390 profile_prefs->ClearPref(kMediaRouterTabMirroringSources);
2391#endif // !BUILDFLAG(IS_ANDROID)
2392
Mahmoud Rashad96ac6022023-01-26 23:48:182393 // Added 01/2023
2394 profile_prefs->ClearPref(kAutofillCreditCardSigninPromoImpressionCount);
2395
Nasser Al-shawwafef41782023-01-27 20:43:502396 // Added 01/2023
2397 profile_prefs->ClearPref(kSendDownloadToCloudPref);
Osama Fathy592e239a2023-02-02 15:26:132398
2399 // Added 02/2023.
2400#if BUILDFLAG(IS_CHROMEOS_ASH)
2401 profile_prefs->ClearPref(kArcTermsShownInOobe);
2402#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2403
Maksim Moskvitin265fd062023-02-17 13:04:222404 // Added 02/2023.
2405 profile_prefs->ClearPref(kSyncInvalidationVersions);
2406 profile_prefs->ClearPref(kSyncInvalidationVersions2);
2407
Lei Zhang52efbb02023-02-21 22:56:382408 // Added 02/2023.
Lei Zhang5e1ffd62023-02-23 17:52:442409 profile_prefs->ClearPref(kClearPluginLSODataEnabled);
Lei Zhang543294f2023-02-23 19:53:432410 profile_prefs->ClearPref(kContentSettingsPluginAllowlist);
Lei Zhang5e1ffd62023-02-23 17:52:442411 profile_prefs->ClearPref(kPepperFlashSettingsEnabled);
Lei Zhang52efbb02023-02-21 22:56:382412 profile_prefs->ClearPref(kPluginsAllowOutdated);
Lei Zhang701e2342023-02-22 00:39:422413 profile_prefs->ClearPref(kPluginsLastInternalDirectory);
2414 profile_prefs->ClearPref(kPluginsPluginsList);
Lei Zhang52efbb02023-02-21 22:56:382415 profile_prefs->ClearPref(kPluginsShowDetails);
2416
Brittany Hartmire8a36b6e42023-02-24 23:09:092417// Added 02/2023.
2418#if BUILDFLAG(IS_CHROMEOS_ASH)
2419 profile_prefs->ClearPref(kHasSeenSmartLockSignInRemovedNotification);
2420#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2421
Eric Sumbed9fdd2023-03-15 18:06:302422// Added 03/2023.
2423#if BUILDFLAG(IS_CHROMEOS_ASH)
2424 ash::ambient::prefs::MigrateDeprecatedPrefs(*profile_prefs);
2425#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2426
Ari Chivukula951893d2023-03-03 18:03:292427 // Added 03/2023
2428 profile_prefs->ClearPref(
2429 kGoogleSearchDomainMixingMetricsEmitterLastMetricsTime);
2430
conniekxu4d14f65c2023-03-28 20:56:362431// Added 03/2023.
2432#if BUILDFLAG(IS_CHROMEOS_ASH)
2433 profile_prefs->ClearPref(kDarkLightModeNudgeLeftToShowCount);
2434#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2435
Adam Langley390670302023-03-31 00:43:312436 // Added 03/2023.
2437#if BUILDFLAG(IS_WIN)
2438 profile_prefs->ClearPref(kWebAuthnLastOperationWasNativeAPI);
2439#endif
2440
Richard Chui821cdad2023-04-07 21:39:572441// Added 04/2023.
2442#if BUILDFLAG(IS_CHROMEOS_ASH)
2443 profile_prefs->ClearPref(kBentoBarEnabled);
2444 profile_prefs->ClearPref(kUserHasUsedDesksRecently);
2445#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2446
Dan Harrington83791492023-04-10 20:49:272447// Added 04/2023.
2448#if BUILDFLAG(IS_ANDROID)
2449 profile_prefs->ClearPref(kBackoff);
2450 profile_prefs->ClearPref(kUserSettingEnabled);
2451 profile_prefs->ClearPref(kLimitlessPrefetchingEnabledTimePref);
2452 profile_prefs->ClearPref(kPrefetchTestingHeaderPref);
2453 profile_prefs->ClearPref(kEnabledByServer);
2454 profile_prefs->ClearPref(kNextForbiddenCheckTimePref);
2455 profile_prefs->ClearPref(kPrefetchCachedGCMToken);
2456#endif
2457
Artem Sumaneev77f80bb2023-04-11 14:04:582458 // Added 04/2023.
2459 profile_prefs->ClearPref(kTypeSubscribedForInvalidations);
2460 profile_prefs->ClearPref(kActiveRegistrationToken);
2461 profile_prefs->ClearPref(kFCMInvalidationClientIDCache);
2462
Dan Harrington899e25232023-04-11 18:23:572463 // Added 04/2023.
2464#if BUILDFLAG(IS_ANDROID)
2465 ntp_snippets::prefs::MigrateObsoleteProfilePrefsApril2023(profile_prefs);
2466#endif
2467
Jérémie Boulic8d672f22023-04-18 02:44:052468// Added 04/2023.
2469#if BUILDFLAG(IS_CHROMEOS_ASH)
2470 profile_prefs->ClearPref(kOfficeFilesAlwaysMove);
2471 profile_prefs->ClearPref(kOfficeMoveConfirmationShown);
2472#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2473
Brittany Hartmire402a3922023-04-18 22:15:362474// Added 04/2023.
2475#if BUILDFLAG(IS_CHROMEOS_ASH)
2476 profile_prefs->ClearPref(kProximityAuthIsChromeOSLoginEnabled);
2477#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2478
Brittany Hartmire22aa1ae82023-05-09 17:37:232479// Added 05/2023.
2480#if BUILDFLAG(IS_CHROMEOS_ASH)
2481 profile_prefs->ClearPref(kSmartLockSigninAllowed);
2482#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2483
David Trainorb7400c22023-05-10 19:17:062484// Added 05/2023.
2485#if BUILDFLAG(IS_ANDROID)
2486 profile_prefs->ClearPref(kVideoTutorialsPreferredLocaleKey);
2487 profile_prefs->ClearPref(kVideoTutorialsLastUpdatedTimeKey);
2488#endif // BUILDFLAG(IS_ANDROID
2489
Peter Marshall7fdea2b2023-05-15 01:16:382490// Added 05/2023.
2491#if BUILDFLAG(IS_CHROMEOS_ASH)
2492 profile_prefs->ClearPref(kOfficeSetupComplete);
2493#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2494
Elias Khsheibund1700562023-05-15 13:31:212495// Added 05/2023.
Michael Checo1f8625942023-05-23 19:33:472496#if BUILDFLAG(IS_CHROMEOS_ASH)
2497 profile_prefs->ClearPref(kEventRemappedToRightClick);
2498#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2499
2500// Added 05/2023.
Elias Khsheibund1700562023-05-15 13:31:212501#if BUILDFLAG(IS_ANDROID)
2502 profile_prefs->ClearPref(kTimesUPMAuthErrorShown);
2503#endif // BUILDFLAG(IS_ANDROID)
2504
Maciek Slusarczyk56833f02023-05-19 09:02:142505// Added 05/2023.
2506#if BUILDFLAG(IS_CHROMEOS_ASH)
2507 profile_prefs->ClearPref(kSamlPasswordSyncToken);
2508#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2509
Alan Cutter086bdf72023-06-09 02:40:112510// Added 06/2023.
2511#if BUILDFLAG(IS_CHROMEOS_ASH)
2512 profile_prefs->ClearPref(kWebAppCalculatorAppErasureFixAppliedPref);
2513#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2514
Alan Cutter3bfce6e2023-06-07 01:53:022515 // Added 06/2023.
2516 profile_prefs->ClearPref(kWebAppsExtensionIDs);
2517
Marc Treib7aaf21332023-06-14 08:30:012518 // Added 06/2023.
2519#if BUILDFLAG(IS_CHROMEOS_ASH)
2520 profile_prefs->ClearPref(kOsSyncPrefsMigrated);
2521#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2522
Yue Zhangf7cf6712023-06-16 18:11:322523 // Added 06/2023.
2524#if !BUILDFLAG(IS_ANDROID)
2525 profile_prefs->ClearPref(kShouldShowSidePanelBookmarkTab);
2526#endif // !BUILDFLAG(IS_ANDROID)
2527
Jian Li7541a082023-06-18 23:52:142528 // Added 06/2023
2529#if BUILDFLAG(ENABLE_FEED_V2)
2530 profile_prefs->ClearPref(kVideoPreviewsType);
2531#endif // BUILDFLAG(ENABLE_FEED_V2)
2532
Maciek Slusarczyk9fed52232023-06-21 14:46:072533 // Added 06/2023.
2534#if BUILDFLAG(IS_CHROMEOS_ASH)
2535 profile_prefs->ClearPref(kGaiaLastOnlineSignInTime);
2536 profile_prefs->ClearPref(kSAMLLastGAIASignInTime);
2537#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2538
Anthony Cui5e5dad9322023-07-10 17:34:542539 // Added 06/2023.
2540#if BUILDFLAG(IS_ANDROID)
2541 profile_prefs->ClearPref(kPrefExplicitLanguageAskShown);
2542#endif // BUILDFLAG(IS_ANDROID)
2543
Mihai Sardarescu6db89cf2023-07-04 07:36:022544// Added 07/2023.
2545#if !BUILDFLAG(IS_CHROMEOS_ASH)
2546 profile_prefs->ClearPref(kUnifiedConsentMigrationState);
2547#endif
2548
Viktor Semeniuk13075de02023-07-18 08:24:362549 // Added 07/2023.
2550 profile_prefs->ClearPref(kPasswordsGroupingInfoRequested);
2551
Hui Yingstd4c7a572023-07-18 18:16:152552 // Added 07/2023.
2553#if BUILDFLAG(IS_CHROMEOS_ASH)
2554 profile_prefs->ClearPref(kPowerMetricsIdleScreenOffCount);
2555 profile_prefs->ClearPref(kPowerMetricsIdleSuspendCount);
2556 profile_prefs->ClearPref(kPowerMetricsLidClosedSuspendCount);
2557#endif
Mikel Astiz5c4bda9b2023-07-21 10:28:032558 syncer::SyncPrefs::MigrateAutofillWalletImportEnabledPref(profile_prefs);
Hui Yingstd4c7a572023-07-18 18:16:152559
Christoph Schlosser1f1ec9b2023-07-26 08:12:562560// Added 07/2023.
2561#if BUILDFLAG(IS_CHROMEOS_ASH)
2562 profile_prefs->ClearPref(kHatsPrivacyHubBaselineIsSelected);
2563 profile_prefs->ClearPref(kHatsPrivacyHubBaselineCycleEndTs);
2564#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2565
Yuta Hijikata9cd674122023-07-29 15:43:372566// Added 07/2023.
2567#if BUILDFLAG(IS_CHROMEOS_ASH)
2568 profile_prefs->ClearPref(kClearUserDataDir1Pref);
2569#endif
2570
Rushan Suleymanov95b36922023-08-03 17:17:412571 // Added 08/2023.
2572 invalidation::InvalidatorRegistrarWithMemory::ClearDeprecatedPrefs(
2573 profile_prefs);
2574 invalidation::PerUserTopicSubscriptionManager::ClearDeprecatedPrefs(
2575 profile_prefs);
2576 invalidation::FCMInvalidationService::ClearDeprecatedPrefs(profile_prefs);
2577
François Degros82e8d052023-08-15 19:44:232578 // Added 08/2023.
2579 profile_prefs->ClearPref(kDriveFsBulkPinningMaxQueueSize);
2580
Nicola Tommasiff549832023-09-04 11:35:062581 // Added 09/2023
2582 profile_prefs->ClearPref(kPrivacySandboxM1Unrestricted);
Daniel Ruberya440a6b12023-09-08 22:04:332583#if BUILDFLAG(IS_WIN)
2584 profile_prefs->ClearPref(kSwReporter);
2585 profile_prefs->ClearPref(kSettingsResetPrompt);
2586 profile_prefs->ClearPref(kChromeCleaner);
2587#endif
Lily Chen492c670f2023-09-15 21:35:472588 profile_prefs->ClearPref(kDownloadBubbleEnabled);
Ankush Singh041ec0d2023-09-21 09:06:132589 profile_prefs->ClearPref(kPrivacySandboxManuallyControlled);
Mikel Astiz3dc3dabc2023-09-25 19:32:212590#if BUILDFLAG(IS_CHROMEOS_ASH)
2591 profile_prefs->ClearPref(kSyncInitialSyncFeatureSetupCompleteOnAsh);
2592#endif
Ivana Žužić2fa04d12023-09-29 13:46:312593#if BUILDFLAG(IS_ANDROID)
2594 profile_prefs->ClearPref(kSettingsMigratedToUPM);
2595#endif
Nicola Tommasiff549832023-09-04 11:35:062596
Mikel Astizd848587f2023-10-02 09:28:032597 // Added 10/2023.
2598 ClearSyncRequestedPrefAndMaybeMigrate(profile_prefs);
2599
James Hawkins8d2adfd2023-10-05 08:24:562600// Added 10/2023.
2601#if BUILDFLAG(IS_CHROMEOS_ASH)
2602 profile_prefs->ClearPref(kLastSuccessfulDomainPref);
2603 profile_prefs->ClearPref(kShouldAttemptReenable);
Jeremy Wu52e5c852023-10-31 01:45:092604 profile_prefs->ClearPref(kAudioVolumePercent);
James Hawkins8d2adfd2023-10-05 08:24:562605#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2606
Tim Sergeantce1539d2023-10-12 00:35:492607 // Added 10/2023.
2608#if BUILDFLAG(IS_CHROMEOS)
2609 profile_prefs->ClearPref(kSupportedLinksAppPrefsKey);
2610#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2611
Eric Suma2add402023-10-24 03:48:532612#if BUILDFLAG(IS_CHROMEOS_ASH)
2613 // Added 10/2023.
2614 profile_prefs->ClearPref(kNightLightCachedLatitude);
2615 profile_prefs->ClearPref(kNightLightCachedLongitude);
2616#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2617
Ryan Kalla4bd74b412023-11-03 16:11:362618 // Added 11/2023
2619 profile_prefs->ClearPref(kPrivacySandboxAntiAbuseInitialized);
2620
Guido Urdaneta39d28bb72023-11-09 14:40:582621 // Added 11/2023.
2622 profile_prefs->ClearPref(kWebRTCAllowLegacyTLSProtocols);
2623
Jiaming Chengbf012ae2023-11-10 22:00:122624#if BUILDFLAG(IS_CHROMEOS_ASH)
2625 // Added 11/2023.
2626 profile_prefs->ClearPref(kSystemTrayExpanded);
2627#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2628
Zauri Meshvelianic39cff7c2023-11-14 20:31:112629#if BUILDFLAG(IS_CHROMEOS_ASH)
2630 // Added 11/2023
2631 profile_prefs->ClearPref(kUserGeolocationAllowed);
2632#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2633
Victor Hugo Vianna Silvaa9775a22023-11-23 10:20:082634#if !BUILDFLAG(IS_ANDROID)
2635 // Added 11/2023.
2636 password_manager::features_util::MigrateOptInPrefToSyncSelectedTypes(
2637 profile_prefs);
2638#endif // !BUILDFLAG(IS_ANDROID)
2639
Victor Hugo Vianna Silva6cc84402023-12-06 15:21:572640#if BUILDFLAG(IS_ANDROID)
2641 // Added 11/2023, but DO NOT REMOVE after the usual year!
2642 // TODO(crbug.com/1445497): The pref kPasswordsUseUPMLocalAndSeparateStores
2643 // and this call (to compute said pref) should be removed once
2644 // kUnifiedPasswordManagerLocalPasswordsAndroidWithMigration is launched and
2645 // enough clients have migrated. UsesSplitStoresAndUPMForLocal() should be
2646 // updated to check the GmsCoreVersion directly instead of the pref, or might
2647 // be removed entirely, depending how the outdated GmsCore case is handled.
2648 password_manager_android_util::SetUsesSplitStoresAndUPMForLocal(profile_prefs,
2649 profile_path);
2650#endif
2651
Jan Keitel17fdab22023-11-17 12:41:362652 // Deprecated 11/2023.
2653 profile_prefs->ClearPref(kPasswordChangeSuccessTrackerFlows);
2654 profile_prefs->ClearPref(kPasswordChangeSuccessTrackerVersion);
2655
Wen-Chien Wang29111192023-11-30 02:13:302656#if BUILDFLAG(IS_CHROMEOS_ASH)
2657 // Deprecated 11/2023
2658 profile_prefs->ClearPref(kImageSearchPrivacyNotice);
2659#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2660
Matt Jones90c86302023-12-07 18:06:382661 // Added 11/2023.
2662 profile_prefs->ClearPref(kWebAndAppActivityEnabledForShopping);
2663
Dominic Battre645d42342020-12-04 16:14:102664 // Please don't delete the following line. It is used by PRESUBMIT.py.
2665 // END_MIGRATE_OBSOLETE_PROFILE_PREFS
Scott Littlec463f3362022-02-15 18:44:242666
2667 // IMPORTANT NOTE: This code is *not* run on iOS Chrome. If a pref is migrated
2668 // or cleared here, and that pref is also used in iOS Chrome, it may also need
2669 // to be migrated or cleared specifically for iOS as well. This could be by
2670 // doing the migration in feature code that's called by all platforms instead
2671 // of here, or by calling migration code in the appropriate place for iOS
Gauthier Ambardfd73b8a12023-05-17 09:54:432672 // specifically, e.g. ios/chrome/browser/shared/model/prefs/browser_prefs.mm.
[email protected]102253f2012-12-14 17:00:582673}