blob: 2ab6e767c374164c6613688d46e9a2af1be5cbba [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
David Blackdf74125d22024-02-12 19:00:057#include <array>
Arthur Sonzognife132ee2024-01-15 11:01:048#include <optional>
[email protected]c5d4b1842014-06-20 21:19:509#include <string>
John Palmer1e70a002023-08-15 02:20:3410#include <string_view>
[email protected]c5d4b1842014-06-20 21:19:5011
conniekxu4d14f65c2023-03-28 20:56:3612#include "ash/constants/ash_constants.h"
Artsiom Mitrokhincf332e22023-03-07 16:27:4713#include "base/time/time.h"
primiano6221e572015-01-28 12:14:3414#include "base/trace_event/trace_event.h"
Nico Webereaa08412019-08-14 01:24:3715#include "build/branding_buildflags.h"
avib896c712015-12-26 02:10:4316#include "build/build_config.h"
Maksim Sisovb2e86e272021-09-28 05:24:4917#include "build/chromecast_buildflags.h"
Yuta Hijikata31a359c2020-11-27 07:50:2618#include "build/chromeos_buildflags.h"
[email protected]1a47d7e2010-10-15 00:37:2419#include "chrome/browser/about_flags.h"
Dominic Mazzoni21fb0282019-02-13 18:32:4720#include "chrome/browser/accessibility/accessibility_labels_service.h"
[email protected]7a25d872012-05-21 19:14:1321#include "chrome/browser/accessibility/invert_bubble_prefs.h"
Evelynn Kaplan840e1c0e2024-02-01 00:47:2722#include "chrome/browser/accessibility/prefers_default_scrollbar_styles_prefs.h"
[email protected]b1de2c72013-02-06 02:45:4723#include "chrome/browser/browser_process_impl.h"
[email protected]bca18382012-06-25 19:15:2324#include "chrome/browser/chrome_content_browser_client.h"
Simon Hangl8ebaf732023-08-25 14:59:4725#include "chrome/browser/chromeos/enterprise/cloud_storage/policy_utils.h"
Andrew Rayskiy0ec947f2023-08-23 09:19:5426#include "chrome/browser/chromeos/upload_office_to_cloud/upload_office_to_cloud.h"
sorinebcfc8dd2016-08-12 21:57:1827#include "chrome/browser/component_updater/component_updater_prefs.h"
[email protected]70019152012-12-19 11:44:1928#include "chrome/browser/devtools/devtools_window.h"
[email protected]e5dc4222010-08-30 22:16:3229#include "chrome/browser/download/download_prefs.h"
dmurph93fa43b2017-02-07 23:45:1630#include "chrome/browser/engagement/important_sites_util.h"
Dominique Fauteux-Chapleau556bb84f2020-04-20 22:06:2931#include "chrome/browser/enterprise/connectors/connectors_prefs.h"
Og Astorga3089fd82021-09-21 00:02:3732#include "chrome/browser/enterprise/reporting/prefs.h"
Dominique Fauteux-Chapleau0e897db02021-04-19 18:42:2233#include "chrome/browser/enterprise/util/managed_browser_utils.h"
[email protected]ed2b1002011-05-25 14:12:1034#include "chrome/browser/external_protocol/external_protocol_handler.h"
[email protected]1b3588d2012-10-10 21:17:2535#include "chrome/browser/first_run/first_run.h"
[email protected]e6933d2a2013-03-12 22:32:2136#include "chrome/browser/gpu/gpu_mode_manager.h"
Avi Drissmand30927342018-05-22 15:04:2737#include "chrome/browser/lifetime/browser_shutdown.h"
rajendrantff2361da2020-12-16 09:18:2738#include "chrome/browser/login_detection/login_detection_prefs.h"
Becca Hughes6354b6b2017-08-31 22:01:5539#include "chrome/browser/media/media_engagement_service.h"
John Rummelle5621c12017-09-05 23:52:1040#include "chrome/browser/media/media_storage_id_salt.h"
Bryant Chandlerd638fb02023-11-03 23:40:1741#include "chrome/browser/media/prefs/capture_device_ranking.h"
George Benz13da3df02022-01-14 00:03:5242#include "chrome/browser/media/router/discovery/access_code/access_code_cast_feature.h"
Derek Cheng23a01402018-07-24 13:38:1443#include "chrome/browser/media/router/media_router_feature.h"
Simon Hangl2d73e742023-06-16 16:52:4744#include "chrome/browser/media/webrtc/capture_policy_utils.h"
mcasasa2023ab2016-09-08 01:06:3645#include "chrome/browser/media/webrtc/media_capture_devices_dispatcher.h"
Evan Stade32d635a2020-04-03 18:51:2546#include "chrome/browser/media/webrtc/permission_bubble_media_access_handler.h"
Sebastien Marchand5a63997a2019-09-27 19:15:3447#include "chrome/browser/memory/enterprise_memory_limit_pref_observer.h"
[email protected]4a55a712014-06-08 16:50:3448#include "chrome/browser/metrics/chrome_metrics_service_client.h"
Eric Secklera5c24e12018-11-28 16:09:2049#include "chrome/browser/net/net_error_tab_helper.h"
Matt Menkecfef87d2017-08-03 13:03:0650#include "chrome/browser/net/profile_network_context_service.h"
Ben Schwartz135746c2020-05-14 04:37:0351#include "chrome/browser/net/secure_dns_util.h"
Matt Menke4dfb375c2018-06-13 18:06:3152#include "chrome/browser/net/system_network_context_manager.h"
Tom Anderson1ef51d032020-02-11 01:05:0853#include "chrome/browser/notifications/notification_display_service_impl.h"
peterc4007912015-07-31 21:13:3754#include "chrome/browser/notifications/notifier_state_tracker.h"
Sharon Yangc6706902018-07-16 13:06:1955#include "chrome/browser/notifications/platform_notification_service_impl.h"
Balazs Engedy715b0ec2019-12-04 15:11:4556#include "chrome/browser/permissions/quiet_notification_permission_ui_state.h"
[email protected]24f95242014-02-10 17:55:2857#include "chrome/browser/prefs/chrome_pref_service_factory.h"
[email protected]4e94ab32011-08-05 05:28:2758#include "chrome/browser/prefs/incognito_mode_prefs.h"
[email protected]37858e52010-08-26 00:22:0259#include "chrome/browser/prefs/session_startup_pref.h"
Max Curran14dd7872023-03-20 19:57:3660#include "chrome/browser/preloading/prefetch/prefetch_service/prefetch_origin_decider.h"
Sreeja Kamishettyb8e18ae2022-07-22 03:12:4361#include "chrome/browser/preloading/prefetch/search_prefetch/search_prefetch_service.h"
Hiroki Nakagawa0977bd02023-09-08 15:33:1162#include "chrome/browser/preloading/preloading_prefs.h"
Nikita Podguzov26222d12019-12-04 11:44:3163#include "chrome/browser/printing/print_preview_sticky_settings.h"
[email protected]1bee6ed2012-03-14 06:46:3664#include "chrome/browser/profiles/chrome_version_service.h"
Thomas Tanglc67ace42019-06-07 19:31:5065#include "chrome/browser/profiles/profile_attributes_entry.h"
Alex Ilinbb08a0d2021-07-08 09:37:2466#include "chrome/browser/profiles/profile_attributes_storage.h"
[email protected]8ecad5e2010-12-02 21:18:3367#include "chrome/browser/profiles/profile_impl.h"
[email protected]de71ae992013-07-18 03:30:3868#include "chrome/browser/profiles/profiles_state.h"
johnmecf2da0c2015-10-28 19:42:1269#include "chrome/browser/push_messaging/push_messaging_app_identifier.h"
Illia Klimov4b72378ed2022-07-18 13:46:5770#include "chrome/browser/push_messaging/push_messaging_service_impl.h"
gab3ca4a492017-03-02 00:19:4171#include "chrome/browser/rlz/chrome_rlz_tracker_delegate.h"
[email protected]a7b8e43d2013-03-18 18:52:4372#include "chrome/browser/search/search.h"
Himanshu Jajubcf3b9292019-06-07 12:54:0773#include "chrome/browser/sharing/sharing_sync_preference.h"
Kristi Parkd0f72412021-07-02 01:09:0374#include "chrome/browser/sharing_hub/sharing_hub_features.h"
Ryan Sleevi4689ad32018-04-16 19:09:0575#include "chrome/browser/ssl/ssl_config_service_manager.h"
avi24d693f2016-08-06 18:03:5276#include "chrome/browser/task_manager/task_manager_interface.h"
Patricia Alfonsoc6f40b5c2023-09-14 21:02:4377#include "chrome/browser/tpcd/experiment/tpcd_pref_names.h"
oysteine386fc9e2015-06-07 18:45:4178#include "chrome/browser/tracing/chrome_tracing_delegate.h"
[email protected]2cd4fde2012-06-26 03:10:2679#include "chrome/browser/ui/browser_ui_prefs.h"
Florian Jackya33ad152023-11-22 11:46:0480#include "chrome/browser/ui/hats/hats_service_desktop.h"
[email protected]297fb7c22012-06-26 12:37:4981#include "chrome/browser/ui/network_profile_bubble.h"
[email protected]9ce7cb42011-12-07 18:53:0782#include "chrome/browser/ui/prefs/prefs_tab_helper.h"
[email protected]62f77772011-02-23 19:45:4283#include "chrome/browser/ui/search_engines/keyword_editor_controller.h"
Victor Hugo Vianna Silva3452787c2022-07-28 23:25:3084#include "chrome/browser/ui/send_tab_to_self/send_tab_to_self_bubble.h"
Caroline Risingf4b49092023-03-23 02:28:2685#include "chrome/browser/ui/side_panel/side_panel_prefs.h"
Taylor Bergquistc0109ac2023-11-18 01:10:0486#include "chrome/browser/ui/tabs/organization/prefs.h"
[email protected]b56e2e32012-05-11 21:18:0487#include "chrome/browser/ui/tabs/pinned_tab_codec.h"
dljames77eab0a2024-01-19 23:08:2588#include "chrome/browser/ui/toolbar/chrome_labs/chrome_labs_prefs.h"
Livvie Lin9141d0f132020-03-23 22:47:0489#include "chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.h"
dljames4b665b22023-09-21 19:35:0890#include "chrome/browser/ui/toolbar/toolbar_pref_names.h"
rbpottera58d7c52024-01-26 17:36:3191#include "chrome/browser/ui/webui/accessibility/accessibility_ui.h"
Emily Shack670f745c2023-03-03 19:47:3092#include "chrome/browser/ui/webui/bookmarks/bookmark_prefs.h"
dpapad2be5b61c62020-12-08 11:58:4993#include "chrome/browser/ui/webui/flags/flags_ui.h"
[email protected]7c5c6f3a2011-04-28 19:56:4994#include "chrome/browser/ui/webui/ntp/new_tab_ui.h"
Jayee07bb468c2023-06-01 18:25:3195#include "chrome/browser/ui/webui/policy/policy_ui.h"
Nicolas Ouellet-Payeur4dbdf1e52018-08-06 21:51:0296#include "chrome/browser/ui/webui/print_preview/policy_settings.h"
Xing Liu7252b8d2020-01-22 22:12:4797#include "chrome/browser/updates/announcement_notification/announcement_notification_service.h"
Dana Friedb723dc42023-10-26 22:14:2298#include "chrome/browser/user_education/browser_feature_promo_storage_service.h"
Martin Kreichgauer0e1b15ef2018-06-20 02:59:5099#include "chrome/browser/webauthn/chrome_authenticator_request_delegate.h"
Martin Kreichgauerd7aa4f92022-02-22 20:46:21100#include "chrome/browser/webauthn/webauthn_pref_names.h"
Scott Violet6200d332018-02-23 21:29:23101#include "chrome/common/buildflags.h"
[email protected]f87919d72011-02-02 18:46:16102#include "chrome/common/pref_names.h"
Ayu Ishiifbb1fad2020-06-22 20:15:07103#include "chrome/common/secure_origin_allowlist.h"
Moe Ahmadi173b0a2b2018-08-03 17:35:51104#include "components/autofill/core/common/autofill_prefs.h"
Clark DuVall8236b6a82020-05-28 22:54:32105#include "components/blocked_content/safe_browsing_triggered_popup_blocker.h"
Jesse McKenna0d767592023-11-03 19:31:52106#include "components/breadcrumbs/core/breadcrumbs_status.h"
ioanapa8bfbc72016-09-07 16:09:05107#include "components/browsing_data/core/pref_names.h"
Doug Turner9e79cf0c2018-04-05 21:32:30108#include "components/certificate_transparency/pref_names.h"
Matt Jones704e1a62022-09-20 16:28:24109#include "components/commerce/core/pref_names.h"
mukai8eaec822014-10-25 17:53:16110#include "components/content_settings/core/browser/host_content_settings_map.h"
Andrew Williams0e136592023-08-09 15:13:34111#include "components/content_settings/core/common/pref_names.h"
Javier Fernández García-Boente7966a892021-12-09 12:28:23112#include "components/custom_handlers/protocol_handler_registry.h"
[email protected]6a5b0712014-07-16 00:30:10113#include "components/dom_distiller/core/distilled_page_prefs.h"
Katie D1ca4328b2020-02-19 18:08:47114#include "components/dom_distiller/core/dom_distiller_features.h"
115#include "components/dom_distiller/core/pref_names.h"
Alex Chen9e56f7352023-01-20 22:56:15116#include "components/domain_reliability/domain_reliability_prefs.h"
Mugdha Lakhanida851fd2021-03-16 18:21:02117#include "components/embedder_support/origin_trials/origin_trial_prefs.h"
hmaree31cadf52022-11-09 22:32:55118#include "components/enterprise/browser/identifiers/identifiers_prefs.h"
Dominique Fauteux-Chapleaub6be8ae2023-09-26 13:48:40119#include "components/enterprise/buildflags/buildflags.h"
sdefresne8593e6432015-12-01 12:38:08120#include "components/flags_ui/pref_service_flags_storage.h"
Moe Ahmadi656dd532021-10-06 21:59:18121#include "components/history_clusters/core/history_clusters_prefs.h"
Brandon Wyliec7a94502018-10-18 18:43:25122#include "components/image_fetcher/core/cache/image_cache.h"
Anthony Vallee-Dubois43fded9702020-06-19 16:30:38123#include "components/invalidation/impl/fcm_invalidation_service.h"
Tanja Gornak5c8b5d952018-10-12 14:39:54124#include "components/invalidation/impl/invalidator_registrar_with_memory.h"
Marc Treib8c29f0c2019-12-19 12:48:07125#include "components/invalidation/impl/per_user_topic_subscription_manager.h"
Anthony Vallee-Dubois6f993122018-09-17 16:13:28126#include "components/language/content/browser/geo_language_provider.h"
Alexandre Frechette38f4ef92019-02-25 16:31:57127#include "components/language/content/browser/ulp_language_code_locator/ulp_language_code_locator.h"
Alexandre Frechette572755b2019-02-13 22:30:20128#include "components/language/core/browser/language_prefs.h"
Duncan Mercer8062eef2022-12-28 22:28:37129#include "components/lens/buildflags.h"
Joe DeBlasio59db500b2020-08-21 00:37:35130#include "components/lookalikes/core/lookalike_url_util.h"
Guido Urdaneta9f831c22023-06-22 13:44:34131#include "components/media_device_salt/media_device_id_salt.h"
Mikel Astizf4226912020-10-19 19:10:37132#include "components/metrics/demographics/user_demographics.h"
Peter Wen45025ea2018-09-17 15:16:27133#include "components/metrics/metrics_pref_names.h"
[email protected]d0ab865b2014-06-04 19:41:34134#include "components/network_time/network_time_tracker.h"
treibbb0c5af52016-12-09 17:34:15135#include "components/ntp_tiles/most_visited_sites.h"
Scott Violet9ae82892018-03-01 18:38:12136#include "components/offline_pages/buildflags/buildflags.h"
Travis Skare27cee15c2018-07-19 14:34:13137#include "components/omnibox/browser/document_provider.h"
Moe Ahmadi1266de82020-04-10 17:19:53138#include "components/omnibox/browser/omnibox_prefs.h"
blundell2102f7c2015-07-09 10:00:53139#include "components/omnibox/browser/zero_suggest_provider.h"
rajendrant19e545e2023-12-04 16:51:37140#include "components/optimization_guide/core/model_execution/model_execution_prefs.h"
Sophie Changf2da5f02021-01-07 19:38:47141#include "components/optimization_guide/core/optimization_guide_prefs.h"
[email protected]1f730bd2014-02-28 15:11:32142#include "components/password_manager/core/browser/password_manager.h"
anthonyvd6a43b932017-05-11 18:39:27143#include "components/payments/core/payment_prefs.h"
Anthony Vallee-Duboiscee55b12022-03-24 22:54:02144#include "components/performance_manager/public/user_tuning/prefs.h"
Florian Jackya33ad152023-11-22 11:46:04145#include "components/permissions/permission_hats_trigger_helper.h"
Aisulu Rakhmetullinaac4afcb62023-07-05 18:10:04146#include "components/permissions/pref_names.h"
Kirubel Aklilu7abc28662023-09-14 17:14:40147#include "components/plus_addresses/plus_address_prefs.h"
brettw03e61962016-03-15 06:27:04148#include "components/policy/core/browser/browser_policy_connector.h"
Aaron Colwellb4226222020-07-25 16:11:36149#include "components/policy/core/browser/url_blocklist_manager.h"
Jayeeb93166c2023-07-17 14:04:49150#include "components/policy/core/common/local_test_policy_provider.h"
Yann Dago9c1e19512022-02-28 22:27:31151#include "components/policy/core/common/management/management_service.h"
David Bienvenu554a2592020-02-13 20:20:54152#include "components/policy/core/common/policy_pref_names.h"
brettw03e61962016-03-15 06:27:04153#include "components/policy/core/common/policy_statistics_collector.h"
[email protected]f0c8c4992014-05-15 17:37:26154#include "components/pref_registry/pref_registry_syncable.h"
Martin Šrámek5921f6312020-03-25 09:31:47155#include "components/prefs/pref_registry.h"
brettwb1fc1b82016-02-02 00:19:08156#include "components/prefs/pref_registry_simple.h"
157#include "components/prefs/pref_service.h"
Sean Harrison4685ab72020-12-08 18:26:22158#include "components/privacy_sandbox/privacy_sandbox_prefs.h"
abhishek.a2171c612852015-08-31 10:48:19159#include "components/proxy_config/pref_proxy_config_tracker_impl.h"
Amanda Velasco Gallardo25f07362022-01-28 02:08:47160#include "components/safe_browsing/content/common/file_type_policies_prefs.h"
Ali Jumafb3dc1f2020-01-07 17:33:47161#include "components/safe_browsing/core/common/safe_browsing_prefs.h"
[email protected]0915b352014-06-25 19:58:14162#include "components/search_engines/template_url_prepopulate_data.h"
Carlos IL06e6c8c2020-07-28 00:25:19163#include "components/security_interstitials/content/insecure_form_blocking_page.h"
Colin Blundell7657b402020-02-25 09:46:50164#include "components/security_interstitials/content/stateful_ssl_host_state_delegate.h"
Anastasia Helfinstein33187fd2023-01-27 03:06:07165#include "components/segmentation_platform/embedder/default_model/device_switcher_result_dispatcher.h"
Shakti Sahu93bfba22021-06-17 18:05:21166#include "components/segmentation_platform/public/segmentation_platform_service.h"
Ramin Halavati52a9a292022-04-28 04:27:49167#include "components/services/screen_ai/buildflags/buildflags.h"
Ayu Ishii73a353d2022-07-07 21:56:42168#include "components/services/storage/public/cpp/storage_prefs.h"
Mikel Astizf61f4ba02018-06-01 10:50:19169#include "components/sessions/core/session_id_generator.h"
David Roger877bdc72022-10-19 09:38:51170#include "components/signin/public/base/signin_pref_names.h"
Henrique Ferreiro94eb46f2019-07-03 14:38:56171#include "components/signin/public/identity_manager/identity_manager.h"
Evan Stade89158192021-01-27 18:45:23172#include "components/site_engagement/content/site_engagement_service.h"
Eric Robinson49f19b62018-09-17 21:28:15173#include "components/subresource_filter/content/browser/ruleset_service.h"
[email protected]6189ab72023-11-06 15:55:08174#include "components/supervised_user/core/browser/supervised_user_preferences.h"
[email protected]1099454d2023-01-31 14:35:11175#include "components/supervised_user/core/common/buildflags.h"
Mikel Astizd848587f2023-10-02 09:28:03176#include "components/sync/base/pref_names.h"
Mikel Astiz91c345c2023-05-16 14:18:56177#include "components/sync/service/glue/sync_transport_data_prefs.h"
Marc Treibd6c8540e2023-07-04 19:18:49178#include "components/sync/service/sync_prefs.h"
Jeffrey Cohen053be24d2019-07-23 23:44:05179#include "components/sync_device_info/device_info_prefs.h"
maxbogueea16ff412016-10-28 16:35:29180#include "components/sync_preferences/pref_service_syncable.h"
Mikel Astiz0889b2be2018-09-25 16:20:41181#include "components/sync_sessions/session_sync_prefs.h"
Oksana Zhuravlova58c85282022-06-14 20:24:28182#include "components/tracing/common/pref_names.h"
[email protected]81135072014-02-14 14:11:02183#include "components/translate/core/browser/translate_prefs.h"
wafflesd2d9a332016-04-09 01:59:57184#include "components/update_client/update_client.h"
blundell0300cdea2015-09-03 12:47:44185#include "components/variations/service/variations_service.h"
[email protected]f3b1a082011-11-18 00:34:30186#include "content/public/browser/render_process_host.h"
Scott Violetc8240b02018-03-08 22:03:59187#include "extensions/buildflags/buildflags.h"
[email protected]ad66db12014-07-10 12:43:47188#include "net/http/http_server_properties_manager.h"
Andy Phan99ccfb42022-11-29 18:57:07189#include "pdf/buildflags.h"
Scott Violet02e38b92018-03-27 23:42:14190#include "ppapi/buildflags/buildflags.h"
Scott Violet318a55f2018-03-30 19:08:19191#include "printing/buildflags/buildflags.h"
Scott Violeta5f7ba12018-04-02 22:03:40192#include "rlz/buildflags/buildflags.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
Andy Phan99ccfb42022-11-29 18:57:07233#if BUILDFLAG(ENABLE_PDF)
234#include "chrome/browser/pdf/pdf_pref_names.h"
235#endif // BUILDFLAG(ENABLE_PDF)
236
Ramin Halavati52a9a292022-04-28 04:27:49237#if BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
Ramin Halavatic21eb8a2023-05-23 07:32:31238#include "chrome/browser/screen_ai/pref_names.h"
Ramin Halavati52a9a292022-04-28 04:27:49239#endif
240
Lei Zhang6cb9b842019-12-16 20:29:12241#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
[email protected]503e2922023-06-23 13:38:37242#include "components/supervised_user/core/browser/child_account_service.h"
[email protected]1e50f232023-05-12 13:57:34243#include "components/supervised_user/core/browser/supervised_user_service.h"
Bettina Deaf3dac202017-09-16 20:53:22244#endif
245
Jian Lic9a227c2022-02-28 22:55:44246#include "components/feed/buildflags.h"
247#include "components/feed/core/common/pref_names.h"
248#include "components/feed/core/shared_prefs/pref_names.h"
249
Xiaohan Wangae7f9182022-01-16 00:37:52250#if BUILDFLAG(IS_ANDROID)
Amanda Lin Dietz8864d302023-06-26 18:36:39251#include "chrome/browser/accessibility/accessibility_prefs/android/accessibility_prefs_controller.h"
zpengdb4a58e2017-01-10 17:40:32252#include "chrome/browser/android/bookmarks/partner_bookmarks_shim.h"
zpengdb4a58e2017-01-10 17:40:32253#include "chrome/browser/android/ntp/recent_tabs_page_prefs.h"
Kenichi Ishibashi35ac7132017-12-08 03:44:30254#include "chrome/browser/android/oom_intervention/oom_intervention_decider.h"
mlliuee3a405c2016-10-28 22:34:52255#include "chrome/browser/android/preferences/browser_prefs_android.h"
Jan Keitel98b2cc42022-09-20 05:38:39256#include "chrome/browser/android/preferences/shared_preferences_migrator_android.h"
Patrick Noland87d9f842019-01-16 03:52:02257#include "chrome/browser/android/usage_stats/usage_stats_bridge.h"
Sky Maliced8eb4302020-08-03 05:46:44258#include "chrome/browser/first_run/android/first_run_prefs.h"
Yu Su4d459862021-04-15 04:19:54259#include "chrome/browser/lens/android/lens_prefs.h"
John Rummell4703af62019-02-15 02:31:00260#include "chrome/browser/media/android/cdm/media_drm_origin_id_manager.h"
Lei Zhangdb0c0872022-03-04 04:26:59261#include "chrome/browser/notifications/notification_channels_provider_android.h"
Victor Hugo Vianna Silva6cc84402023-12-06 15:21:57262#include "chrome/browser/password_manager/android/password_manager_android_util.h"
Ian Wells5d248f012023-11-07 17:30:02263#include "chrome/browser/readaloud/android/prefs.h"
Christopher Thompson2602fea2019-11-26 19:36:54264#include "chrome/browser/ssl/known_interception_disclosure_infobar_delegate.h"
Glen Robertson8a825ae4f2020-09-16 06:50:08265#include "components/cdm/browser/media_drm_storage_impl.h" // nogncheck crbug.com/1125897
Dan Harrington899e25232023-04-11 18:23:57266#include "components/ntp_snippets/register_prefs.h"
zpengdb4a58e2017-01-10 17:40:32267#include "components/ntp_tiles/popular_sites_impl.h"
Clark DuVall600abea2020-03-23 16:16:17268#include "components/permissions/contexts/geolocation_permission_context_android.h"
Xing Liu0327d832020-05-15 21:07:03269#include "components/query_tiles/tile_service_prefs.h"
Ella Gec7c64062023-05-02 17:16:14270#include "components/webapps/browser/android/install_prompt_prefs.h"
Xiaohan Wangae7f9182022-01-16 00:37:52271#else // BUILDFLAG(IS_ANDROID)
Yue Zhang87902392020-12-23 23:12:05272#include "chrome/browser/cart/cart_service.h"
Shakti Sahue7597fd2023-04-05 23:32:39273#include "chrome/browser/companion/core/promo_handler.h"
Anqing Zhao9595e482021-06-10 11:33:55274#include "chrome/browser/device_api/device_service_impl.h"
peter9f4490a2017-01-27 00:58:36275#include "chrome/browser/gcm/gcm_product_util.h"
Matt Reynolds1914ff6b2022-02-04 08:48:26276#include "chrome/browser/hid/hid_policy_allowed_devices.h"
Tommy Lid5b7c22b2020-10-28 01:26:51277#include "chrome/browser/intranet_redirect_detector.h"
Lei Zhang6cb9b842019-12-16 20:29:12278#include "chrome/browser/media/unified_autoplay_config.h"
Sebastien Marchande9f7b992021-02-10 03:11:08279#include "chrome/browser/metrics/tab_stats/tab_stats_tracker.h"
Josh Nohle13ea6b432020-07-21 20:46:59280#include "chrome/browser/nearby_sharing/common/nearby_share_prefs.h"
Tibor Goldschwendt83b26a02021-07-09 23:13:18281#include "chrome/browser/new_tab_page/modules/drive/drive_service.h"
Jeremy Selier730b56d32021-09-17 02:59:39282#include "chrome/browser/new_tab_page/modules/photos/photos_service.h"
Riley Tatumc48258f12022-08-18 22:13:13283#include "chrome/browser/new_tab_page/modules/recipes/recipes_service.h"
Rohit Bhatia22e544f2021-10-05 15:32:26284#include "chrome/browser/new_tab_page/modules/safe_browsing/safe_browsing_handler.h"
Marlon Facey79d84f77b2024-02-08 18:49:43285#include "chrome/browser/new_tab_page/modules/v2/tab_resumption/tab_resumption_page_handler.h"
Tibor Goldschwendt53a0eab2021-07-29 10:40:25286#include "chrome/browser/new_tab_page/promos/promo_service.h"
Yann Dago44d6cc322022-07-13 17:46:25287#include "chrome/browser/policy/developer_tools_policy_handler.h"
Tibor Goldschwendtf3a3ce92021-08-17 00:42:16288#include "chrome/browser/search/background/ntp_custom_background_service.h"
Jack Yammine1aae2ba2023-12-16 06:56:36289#include "chrome/browser/search_engine_choice/search_engine_choice_client_side_trial.h"
Boris Sazonovc7c3b8b02024-01-05 11:08:01290#include "chrome/browser/search_engine_choice/search_engine_choice_dialog_service.h"
Reilly Grantd4fb5842021-03-15 23:16:49291#include "chrome/browser/serial/serial_policy_allowed_ports.h"
thestigc91176f42014-10-28 20:16:35292#include "chrome/browser/signin/signin_promo.h"
Matt Jones43bca672023-11-22 15:19:27293#include "chrome/browser/ui/commerce/commerce_ui_tab_helper.h"
Eduard Hez55d711f2023-07-12 12:10:07294#include "chrome/browser/ui/safety_hub/safety_hub_prefs.h"
zpengdb4a58e2017-01-10 17:40:32295#include "chrome/browser/ui/startup/startup_browser_creator.h"
Roman Arorabc876bf2023-08-03 15:25:21296#include "chrome/browser/ui/webui/cr_components/theme_color_picker/theme_color_picker_handler.h"
rbpotterbe128632019-11-22 04:50:42297#include "chrome/browser/ui/webui/history/foreign_session_handler.h"
Tibor Goldschwendt53ca78b2020-10-07 19:56:18298#include "chrome/browser/ui/webui/new_tab_page/new_tab_page_handler.h"
Tibor Goldschwendtbbdbe8f2021-05-20 19:27:39299#include "chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.h"
John Lee136759f02019-04-15 20:19:11300#include "chrome/browser/ui/webui/settings/settings_ui.h"
Mark Schillaciba4a7322022-06-29 15:08:35301#include "chrome/browser/ui/webui/side_panel/read_anything/read_anything_prefs.h"
Roman Aroracd8462c2021-08-03 01:20:33302#include "chrome/browser/ui/webui/tab_search/tab_search_prefs.h"
rbpotter73c13252021-07-16 21:29:34303#include "chrome/browser/ui/webui/whats_new/whats_new_ui.h"
Greg Thompson8bcd799b2018-08-10 09:49:33304#include "chrome/browser/upgrade_detector/upgrade_detector.h"
Peter Kvitek6567a8a3a2023-01-31 01:03:57305#include "components/headless/policy/headless_mode_prefs.h"
Abigail Klein153fa7a2021-08-26 19:50:50306#include "components/live_caption/live_caption_controller.h"
evliuc5b5a722022-10-28 00:05:49307#include "components/live_caption/live_translate_controller.h"
Lei Zhang6cb9b842019-12-16 20:29:12308#include "components/ntp_tiles/custom_links_manager_impl.h"
Caroline Rising065085a22023-02-22 14:34:09309#include "components/user_notes/user_notes_prefs.h"
Xiaohan Wangae7f9182022-01-16 00:37:52310#endif // BUILDFLAG(IS_ANDROID)
thestigc91176f42014-10-28 20:16:35311
Nicolas MacBeth53fa8142023-06-20 15:06:09312#if !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
313#include "chrome/browser/promos/promos_utils.h"
314#endif // !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
315
Xiaohan Wangae7f9182022-01-16 00:37:52316#if BUILDFLAG(IS_CHROMEOS)
Erik Chen643355d2022-04-22 05:44:49317#include "chrome/browser/chromeos/extensions/echo_private/echo_private_api.h"
Maria Petrisorbb5226b2022-06-02 09:10:51318#include "chrome/browser/chromeos/extensions/login_screen/login/login_api_prefs.h"
Alvin Lee99f8d9a82021-11-18 18:45:55319#include "chrome/browser/chromeos/policy/dlp/dlp_rules_manager_impl.h"
Josh Simmons29bce0e82023-08-31 05:59:50320#include "chrome/browser/chromeos/quickoffice/quickoffice_prefs.h"
Vignesh Shenvidfab2b12023-08-07 19:13:00321#include "chrome/browser/chromeos/reporting/metric_reporting_prefs.h"
Benjamin Gordon24cc3552023-11-29 01:03:43322#include "chrome/browser/extensions/api/document_scan/document_scan_api_handler.h"
Olya Kalitova39e913d52021-03-16 22:26:22323#include "chrome/browser/extensions/api/enterprise_platform_keys/enterprise_platform_keys_api.h"
Kuo-Hsin Yang40227972022-05-16 18:39:09324#include "chrome/browser/memory/oom_kills_monitor.h"
Michael Ershov5b2a7062022-01-17 14:28:45325#include "chrome/browser/policy/networking/policy_cert_service.h"
Ben Franz73537362021-11-08 11:53:40326#include "chrome/browser/policy/system_features_disable_list_policy_handler.h"
Michael Ershovd9a627e2021-11-03 13:55:27327#include "chrome/browser/ui/webui/certificates_handler.h"
anina koehlerf1e29df62022-08-10 07:22:32328#include "chromeos/ui/wm/fullscreen/pref_names.h"
Andrew Rayskiy16f8cab2022-12-15 16:28:33329#if BUILDFLAG(USE_CUPS)
Pranav Batrae71407672021-08-16 23:53:00330#include "chrome/browser/extensions/api/printing/printing_api_handler.h"
Andrew Rayskiy16f8cab2022-12-15 16:28:33331#endif // BUILDFLAG(USE_CUPS)
Xiaohan Wangae7f9182022-01-16 00:37:52332#endif // BUILDFLAG(IS_CHROMEOS)
Olya Kalitova39e913d52021-03-16 22:26:22333
Yuta Hijikata31a359c2020-11-27 07:50:26334#if BUILDFLAG(IS_CHROMEOS_ASH)
Yao Li646187a2021-11-16 01:02:11335#include "ash/components/arc/arc_prefs.h"
Henrique Ferreirof9d1cb22021-07-13 01:32:47336#include "ash/constants/ash_pref_names.h"
Eric Sumbed9fdd2023-03-15 18:06:30337#include "ash/public/cpp/ambient/ambient_prefs.h"
Xiyuan Xia5a8c4172019-05-13 16:23:48338#include "ash/public/cpp/ash_prefs.h"
Nikki Fangac3f0592023-02-14 01:31:19339#include "chrome/browser/apps/app_deduplication_service/app_deduplication_service.h"
Elitsa Bankova984491f2023-10-06 07:40:11340#include "chrome/browser/apps/app_discovery_service/almanac_fetcher.h"
Jeevan Shikarama73dec1a2022-09-08 05:51:52341#include "chrome/browser/apps/app_preload_service/app_preload_service.h"
Nancy Wang811fe4f92021-10-08 12:28:13342#include "chrome/browser/apps/app_service/metrics/app_platform_metrics_service.h"
Tim Sergeant1231dcc2021-05-10 14:00:57343#include "chrome/browser/apps/app_service/webapk/webapk_prefs.h"
Anastasiia N0582a902021-12-08 17:44:59344#include "chrome/browser/ash/account_manager/account_apps_availability.h"
Pranav Batra468fbe622021-06-23 01:42:36345#include "chrome/browser/ash/account_manager/account_manager_edu_coexistence_controller.h"
Yeunjoo Choife4364d2022-12-14 10:41:37346#include "chrome/browser/ash/app_list/app_list_syncable_service.h"
Yeunjoo Choi366e3462022-12-06 08:58:53347#include "chrome/browser/ash/app_list/arc/arc_app_list_prefs.h"
Henrique Ferreiro53d4dc42021-01-27 01:02:38348#include "chrome/browser/ash/app_mode/arc/arc_kiosk_app_manager.h"
Edman Anjos0f2ad562023-11-08 10:40:49349#include "chrome/browser/ash/app_mode/kiosk_chrome_app_manager.h"
Henrique Ferreiro53d4dc42021-01-27 01:02:38350#include "chrome/browser/ash/app_mode/kiosk_cryptohome_remover.h"
Emmanuel Arias Soto24bf9f32024-01-31 13:27:42351#include "chrome/browser/ash/app_mode/kiosk_system_session.h"
Henrique Ferreiro53d4dc42021-01-27 01:02:38352#include "chrome/browser/ash/app_mode/web_app/web_kiosk_app_manager.h"
Sammie Quon21285822021-09-20 19:48:34353#include "chrome/browser/ash/app_restore/full_restore_prefs.h"
Yeunjoo Choidf64fe692021-03-08 05:32:34354#include "chrome/browser/ash/apps/apk_web_app_service.h"
Hidehiko Abe89f9b5c92023-09-19 04:37:11355#include "chrome/browser/ash/arc/boot_phase_monitor/arc_boot_phase_monitor_bridge.h"
Henrique Ferreiro2ef82302021-03-24 12:12:25356#include "chrome/browser/ash/arc/policy/arc_policy_bridge.h"
Henrique Ferreiro717d3022021-03-24 15:43:56357#include "chrome/browser/ash/arc/session/arc_session_manager.h"
Yeunjoo Choi2c5e78c2021-04-01 10:51:52358#include "chrome/browser/ash/bluetooth/debug_logs_manager.h"
Theo Johnson-Kanudc9f96272023-01-12 05:11:39359#include "chrome/browser/ash/bluetooth/hats_bluetooth_revamp_trigger_impl.h"
Pranav Batra468fbe622021-06-23 01:42:36360#include "chrome/browser/ash/borealis/borealis_prefs.h"
Fergus Dall54a6a432022-11-18 17:35:29361#include "chrome/browser/ash/bruschetta/bruschetta_pref_names.h"
Yeunjoo Choiebf07312021-03-24 01:48:51362#include "chrome/browser/ash/cert_provisioning/cert_provisioning_common.h"
Yeunjoo Choi8a355962021-04-13 01:22:27363#include "chrome/browser/ash/child_accounts/family_user_chrome_activity_metrics.h"
364#include "chrome/browser/ash/child_accounts/family_user_metrics_service.h"
365#include "chrome/browser/ash/child_accounts/family_user_session_metrics.h"
Yeunjoo Choi52e1c572021-04-08 07:56:27366#include "chrome/browser/ash/child_accounts/parent_access_code/parent_access_service.h"
Yeunjoo Choi8a355962021-04-13 01:22:27367#include "chrome/browser/ash/child_accounts/screen_time_controller.h"
Yeunjoo Choi882388a2021-04-12 05:17:29368#include "chrome/browser/ash/child_accounts/time_limits/app_activity_registry.h"
369#include "chrome/browser/ash/child_accounts/time_limits/app_time_controller.h"
Pranav Batra468fbe622021-06-23 01:42:36370#include "chrome/browser/ash/crosapi/browser_util.h"
Yeunjoo Choiaba21c02021-05-07 09:06:34371#include "chrome/browser/ash/crostini/crostini_pref_names.h"
Henrique Ferreiro2029590e2021-09-23 08:01:52372#include "chrome/browser/ash/cryptauth/client_app_metadata_provider_service.h"
373#include "chrome/browser/ash/cryptauth/cryptauth_device_id_provider_impl.h"
Yeunjoo Choi91907642021-04-16 13:18:19374#include "chrome/browser/ash/customization/customization_document.h"
Nigel Taoa1d4dce2022-10-18 00:01:20375#include "chrome/browser/ash/file_manager/file_manager_pref_names.h"
Andrew Rayskiy47076d72022-09-27 18:46:14376#include "chrome/browser/ash/file_manager/file_tasks.h"
Yeunjoo Choi627505b7b2021-05-13 15:56:31377#include "chrome/browser/ash/file_system_provider/registry.h"
Yeunjoo Choi55626172021-07-27 03:17:27378#include "chrome/browser/ash/first_run/first_run.h"
Geng Li11526bb42022-02-15 23:59:14379#include "chrome/browser/ash/floating_workspace/floating_workspace_util.h"
Joel Hockeyfcc56a292022-06-17 02:28:00380#include "chrome/browser/ash/guest_os/guest_id.h"
Yeunjoo Choi0a9c1d42021-03-31 01:38:56381#include "chrome/browser/ash/guest_os/guest_os_pref_names.h"
David Munro86435df2022-07-25 01:27:45382#include "chrome/browser/ash/guest_os/guest_os_terminal.h"
Yeunjoo Choi6aa07d82021-03-22 08:55:28383#include "chrome/browser/ash/lock_screen_apps/state_controller.h"
Henrique Ferreiro606669a2021-02-24 13:36:55384#include "chrome/browser/ash/login/demo_mode/demo_mode_resources_remover.h"
385#include "chrome/browser/ash/login/demo_mode/demo_session.h"
386#include "chrome/browser/ash/login/demo_mode/demo_setup_controller.h"
Henrique Ferreiroe55c0d5f2021-02-25 02:16:05387#include "chrome/browser/ash/login/quick_unlock/fingerprint_storage.h"
388#include "chrome/browser/ash/login/quick_unlock/pin_storage_prefs.h"
389#include "chrome/browser/ash/login/quick_unlock/quick_unlock_utils.h"
Ahmed Nasrbe0670b72022-03-09 23:28:17390#include "chrome/browser/ash/login/reporting/login_logout_reporter.h"
Henrique Ferreiro96143e5a2021-02-25 12:52:36391#include "chrome/browser/ash/login/saml/saml_profile_prefs.h"
Henrique Ferreiro1786d45a2021-02-25 22:48:19392#include "chrome/browser/ash/login/screens/enable_adb_sideloading_screen.h"
Henrique Ferreiro81312ab2021-02-25 23:14:03393#include "chrome/browser/ash/login/screens/reset_screen.h"
Henrique Ferreiro995b1db2021-03-06 00:41:41394#include "chrome/browser/ash/login/security_token_session_controller.h"
Henrique Ferreiroad3c6a572021-03-02 12:43:51395#include "chrome/browser/ash/login/session/user_session_manager.h"
Henrique Ferreiroa264c8c02021-07-20 08:31:47396#include "chrome/browser/ash/login/signin/signin_error_notifier.h"
Kush Sinha31d120b72023-09-04 12:21:54397#include "chrome/browser/ash/login/signin/token_handle_fetcher.h"
Henrique Ferreiro995b1db2021-03-06 00:41:41398#include "chrome/browser/ash/login/startup_utils.h"
Henrique Ferreiro2dc9e1c2021-03-04 17:33:58399#include "chrome/browser/ash/login/users/avatar/user_image_manager.h"
Aiden Chiavatti112d3672023-03-17 21:13:41400#include "chrome/browser/ash/login/users/avatar/user_image_prefs.h"
Henrique Ferreiro2dc9e1c2021-03-04 17:33:58401#include "chrome/browser/ash/login/users/avatar/user_image_sync_observer.h"
402#include "chrome/browser/ash/login/users/chrome_user_manager_impl.h"
Andreea Costinasc33add32023-07-13 16:57:13403#include "chrome/browser/ash/net/ash_proxy_monitor.h"
Henrique Ferreirod57c4962021-09-29 07:26:59404#include "chrome/browser/ash/net/network_throttling_observer.h"
Yeunjoo Choic5b3bf492021-03-15 13:57:19405#include "chrome/browser/ash/plugin_vm/plugin_vm_pref_names.h"
Yeunjoo Choi7227dba2021-08-04 06:35:47406#include "chrome/browser/ash/policy/core/browser_policy_connector_ash.h"
Yeunjoo Choiead8b3c2021-07-27 08:08:19407#include "chrome/browser/ash/policy/core/device_cloud_policy_manager_ash.h"
Yeunjoo Choi8623e4a2021-07-02 01:57:06408#include "chrome/browser/ash/policy/core/dm_token_storage.h"
Yeunjoo Choia60b6212021-07-06 11:25:12409#include "chrome/browser/ash/policy/enrollment/auto_enrollment_client_impl.h"
410#include "chrome/browser/ash/policy/enrollment/enrollment_requisition_manager.h"
411#include "chrome/browser/ash/policy/external_data/handlers/device_wallpaper_image_external_data_handler.h"
Yeunjoo Choi5d6eb012021-07-09 03:03:05412#include "chrome/browser/ash/policy/handlers/adb_sideloading_allowance_mode_policy_handler.h"
413#include "chrome/browser/ash/policy/handlers/minimum_version_policy_handler.h"
Henrique Ferreiro11492caf2021-11-02 22:16:16414#include "chrome/browser/ash/policy/handlers/tpm_auto_update_mode_policy_handler.h"
Yeunjoo Choiad73a322021-07-20 04:55:49415#include "chrome/browser/ash/policy/reporting/app_install_event_log_manager_wrapper.h"
416#include "chrome/browser/ash/policy/reporting/arc_app_install_event_logger.h"
Vignesh Shenvi145bf6e2023-05-08 22:11:30417#include "chrome/browser/ash/policy/reporting/metrics_reporting/metric_reporting_prefs.h"
Sanja Perisic91217932022-04-13 13:45:02418#include "chrome/browser/ash/policy/scheduled_task_handler/reboot_notifications_scheduler.h"
Yeunjoo Choid33fdb62021-07-21 06:57:42419#include "chrome/browser/ash/policy/status_collector/device_status_collector.h"
420#include "chrome/browser/ash/policy/status_collector/status_collector.h"
Yeunjoo Choi0bab0cf2021-05-31 05:14:03421#include "chrome/browser/ash/power/auto_screen_brightness/metrics_reporter.h"
Yeunjoo Choi7629a77a12021-06-02 06:37:18422#include "chrome/browser/ash/power/power_metrics_reporter.h"
Henrique Ferreiroae846062021-10-04 14:44:34423#include "chrome/browser/ash/preferences.h"
Pranav Batra9c0eb782022-02-01 23:13:33424#include "chrome/browser/ash/printing/cups_printers_manager.h"
Yeunjoo Choia52715a2021-09-09 02:45:17425#include "chrome/browser/ash/printing/enterprise_printers_provider.h"
Yeunjoo Choi0fb01cf62021-04-21 01:30:15426#include "chrome/browser/ash/release_notes/release_notes_storage.h"
Pranav Batra468fbe622021-06-23 01:42:36427#include "chrome/browser/ash/scanning/chrome_scanning_app_delegate.h"
Henrique Ferreiro11492caf2021-11-02 22:16:16428#include "chrome/browser/ash/scheduler_configuration_manager.h"
Yeunjoo Choi5097e9c2021-02-25 08:46:52429#include "chrome/browser/ash/settings/device_settings_cache.h"
Yeunjoo Choia43d74a2021-02-10 23:23:19430#include "chrome/browser/ash/system/automatic_reboot_manager.h"
431#include "chrome/browser/ash/system/input_device_settings.h"
Glen Robertson54e553b2023-06-27 03:18:37432#include "chrome/browser/ash/system_web_apps/apps/help_app/help_app_notification_controller.h"
Anthony Vallee-Dubois85edf222020-03-24 20:30:02433#include "chrome/browser/device_identity/chromeos/device_oauth2_token_store_chromeos.h"
[email protected]5a145e82014-05-29 22:19:07434#include "chrome/browser/extensions/extension_assets_manager_chromeos.h"
xhwangc84739e2015-03-14 01:02:46435#include "chrome/browser/media/protected_media_identifier_permission_context.h"
[email protected]8304f61a2014-05-24 12:17:33436#include "chrome/browser/metrics/chromeos_metrics_provider.h"
Erik Chenc2927bbd2021-09-22 23:20:07437#include "chrome/browser/ui/ash/shelf/chrome_shelf_prefs.h"
Yeunjoo Choi3fc970b2022-10-28 02:55:48438#include "chrome/browser/ui/webui/ash/login/enable_debugging_screen_handler.h"
Xiaohui Chen0b04ceb2023-10-20 21:22:17439#include "chrome/browser/ui/webui/ash/settings/os_settings_ui.h"
Behnood Momenzadeh1684ef642024-01-30 09:35:45440#include "chrome/browser/ui/webui/settings/reset_settings_handler.h"
Roman Aleksandrovd32e34e72019-05-22 17:29:50441#include "chrome/browser/upgrade_detector/upgrade_detector_chromeos.h"
Henrique Ferreiro94c5e502022-08-17 14:20:22442#include "chromeos/ash/components/audio/audio_devices_pref_handler_impl.h"
Henrique Ferreiroc9e2aaf2022-07-07 13:45:18443#include "chromeos/ash/components/local_search_service/search_metrics_reporter.h"
Yeunjoo Choi1a8bc9942022-06-20 05:31:16444#include "chromeos/ash/components/network/cellular_esim_profile_handler_impl.h"
445#include "chromeos/ash/components/network/cellular_metrics_logger.h"
Yeunjoo Choibe813122022-06-29 15:13:44446#include "chromeos/ash/components/network/fast_transition_observer.h"
447#include "chromeos/ash/components/network/managed_cellular_pref_handler.h"
Yeunjoo Choi643dead2022-07-11 12:52:16448#include "chromeos/ash/components/network/network_metadata_store.h"
Yeunjoo Choida91d6452022-06-02 15:26:42449#include "chromeos/ash/components/network/proxy/proxy_config_handler.h"
Hirthanan Subenderan088f7322023-09-20 15:10:29450#include "chromeos/ash/components/report/report_controller.h"
Yuta Hijikata4538fc02023-09-26 15:19:55451#include "chromeos/ash/components/standalone_browser/migrator_util.h"
Henrique Ferreiroacf002702022-10-06 21:54:59452#include "chromeos/ash/components/timezone/timezone_resolver.h"
Yeunjoo Choi2d3704c12022-06-21 02:44:34453#include "chromeos/ash/services/assistant/public/cpp/assistant_prefs.h"
Anastasiia N1ad94e1e2022-09-15 08:47:28454#include "chromeos/ash/services/auth_factor_config/auth_factor_config.h"
Henrique Ferreiroae001e92022-09-01 16:58:46455#include "chromeos/ash/services/bluetooth_config/bluetooth_power_controller_impl.h"
456#include "chromeos/ash/services/bluetooth_config/device_name_manager_impl.h"
Yeunjoo Choia292ed72022-11-01 01:19:55457#include "chromeos/ash/services/device_sync/public/cpp/device_sync_prefs.h"
Yeunjoo Choie4980f452022-10-21 16:07:58458#include "chromeos/ash/services/multidevice_setup/multidevice_setup_service.h"
Yue Lif0da5bf2021-11-19 22:01:57459#include "chromeos/components/quick_answers/public/cpp/quick_answers_prefs.h"
Kushagra Sinhab37e24db2021-07-02 15:14:24460#include "components/account_manager_core/chromeos/account_manager.h"
stevenjbf22f82e2016-10-26 21:47:38461#include "components/onc/onc_pref_names.h"
glevin5dd01a72016-03-23 23:08:12462#include "components/quirks/quirks_manager.h"
tbarzicd9a88fc92017-07-14 02:18:10463#include "extensions/browser/api/lock_screen_data/lock_screen_item_storage.h"
Pranav Batra468fbe622021-06-23 01:42:36464
Pranav Batra468fbe622021-06-23 01:42:36465#endif // BUILDFLAG(IS_CHROMEOS_ASH)
466
Xiaohan Wangae7f9182022-01-16 00:37:52467#if BUILDFLAG(IS_MAC)
Lei Zhangdb0c0872022-03-04 04:26:59468#include "chrome/browser/media/webrtc/system_media_capture_permissions_stats_mac.h"
[email protected]425f7a02014-04-29 01:51:44469#include "chrome/browser/ui/cocoa/apps/quit_with_apps_controller_mac.h"
Tom Anderson6a496032018-08-30 23:38:37470#include "chrome/browser/ui/cocoa/confirm_quit.h"
Song Fangzhencda4af62021-09-09 05:24:02471#include "chrome/browser/web_applications/app_shim_registry_mac.h"
[email protected]2366a3a2012-10-02 20:41:14472#endif
473
Xiaohan Wangae7f9182022-01-16 00:37:52474#if BUILDFLAG(IS_WIN)
Igor Ruvinov13e658e2022-12-13 03:15:20475#include "chrome/browser/enterprise/platform_auth/platform_auth_policy_observer.h"
Scott Violet3ff87d062021-12-21 06:10:10476#include "chrome/browser/font_prewarmer_tab_helper.h"
Alex St-Onge9e4b9b72021-06-08 15:35:54477#include "chrome/browser/media/cdm_pref_service_helper.h"
Xiaohan Wang259f34c7a2022-03-26 23:18:19478#include "chrome/browser/media/media_foundation_service_monitor.h"
Will Harriseb364b2c2022-06-23 00:49:01479#include "chrome/browser/os_crypt/app_bound_encryption_metrics_win.h"
Nico Webereaa08412019-08-14 01:24:37480#if BUILDFLAG(GOOGLE_CHROME_BRANDING)
Patrick Monettebb543942019-05-17 17:45:32481#include "chrome/browser/win/conflicts/incompatible_applications_updater.h"
482#include "chrome/browser/win/conflicts/module_database.h"
483#include "chrome/browser/win/conflicts/third_party_conflicts_manager.h"
Nico Webereaa08412019-08-14 01:24:37484#endif // BUILDFLAG(GOOGLE_CHROME_BRANDING)
Daniel Ruberyd17b2fd2023-09-07 23:31:36485#endif // BUILDFLAG(IS_WIN)
[email protected]bdb8a1e2013-10-03 08:14:00486
Xiaohan Wangae7f9182022-01-16 00:37:52487#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC)
Will Harris93d0dcd52023-03-14 23:38:47488#include "components/os_crypt/sync/os_crypt.h"
Will Harris265b3942019-10-21 01:01:33489#endif
490
Sebastien Lalancette413625312023-05-08 13:58:01491#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
492 BUILDFLAG(IS_CHROMEOS_ASH)
Sebastien Lalancette120e0592023-05-04 21:02:33493#include "components/device_signals/core/browser/pref_names.h" // nogncheck due to crbug.com/1125897
Lu Huangcd11f21c2021-02-03 22:24:56494#endif
495
Yuta Hijikata31a359c2020-11-27 07:50:26496// TODO(crbug.com/1052397): Revisit the macro expression once build flag switch
497// of lacros-chrome is complete.
Xiaohan Wangae7f9182022-01-16 00:37:52498#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \
499 (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS))
Nicolas Ouellet-Payeur9a4a94d2018-09-17 15:26:11500#include "chrome/browser/browser_switcher/browser_switcher_prefs.h"
501#endif
502
Nicolas Ouellet-Payeurcb894532023-09-28 04:03:15503#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
504#include "chrome/browser/enterprise/signin/enterprise_signin_prefs.h"
505#endif
506
Erik Chen38ceca082020-12-16 01:31:35507#if BUILDFLAG(IS_CHROMEOS_LACROS)
Nancy Wangc84098e2022-10-24 10:30:36508#include "chrome/browser/apps/app_service/metrics/website_metrics_service_lacros.h"
Alex Ilin953f1092021-11-26 15:49:10509#include "chrome/browser/lacros/account_manager/account_cache.h"
Polina Bondarenko3f3dc4f2022-04-25 07:55:01510#include "chrome/browser/lacros/app_mode/kiosk_session_service_lacros.h"
Erik Chen38ceca082020-12-16 01:31:35511#include "chrome/browser/lacros/lacros_prefs.h"
Andreea Costinas68cad91f2021-09-22 15:58:09512#include "chrome/browser/lacros/net/proxy_config_service_lacros.h"
Nicolas Dossou-Gbete7ccc8802022-11-10 15:12:46513#endif
514
515#if BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(ENABLE_DICE_SUPPORT)
516#include "chrome/browser/ui/startup/first_run_service.h"
Erik Chen38ceca082020-12-16 01:31:35517#endif
518
Georg Neisf11427f92024-02-02 01:27:46519#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS)
520#include "chrome/browser/downgrade/downgrade_prefs.h"
521#endif
522
Xiaohan Wangae7f9182022-01-16 00:37:52523#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
Yusuke Sato28ab25092021-05-07 23:04:02524#include "chrome/browser/device_identity/device_oauth2_token_store_desktop.h"
thestigf2a0fa92016-09-07 09:37:29525#include "chrome/browser/ui/startup/default_browser_prompt.h"
526#endif
527
[email protected]ceafc462013-11-04 12:26:03528#if defined(TOOLKIT_VIEWS)
529#include "chrome/browser/ui/browser_view_prefs.h"
Yuheng Huang9ce54892022-05-06 19:29:39530#include "chrome/browser/ui/side_search/side_search_prefs.h"
[email protected]ceafc462013-11-04 12:26:03531#endif
532
Scott Violet53fb03c2021-01-15 23:48:16533#if BUILDFLAG(ENABLE_SESSION_SERVICE)
Christian Dullweber0747d7c92021-05-10 10:05:13534#include "chrome/browser/sessions/session_data_service.h"
Scott Violet53fb03c2021-01-15 23:48:16535#include "chrome/browser/sessions/session_service_log.h"
536#endif
tomc5dd0cd2021-10-01 22:15:52537
Tom Andersoncb3408482022-09-02 19:06:41538#if BUILDFLAG(IS_LINUX)
539#include "ui/color/system_theme.h"
540#endif
541
Chris Mullinse59586192023-03-06 17:42:17542#if BUILDFLAG(IS_CHROMEOS_ASH)
543#include "chrome/browser/ash/wallpaper_handlers/wallpaper_prefs.h"
544#endif
545
Dominique Fauteux-Chapleaub6be8ae2023-09-26 13:48:40546#if BUILDFLAG(ENTERPRISE_DATA_CONTROLS)
547#include "components/enterprise/data_controls/prefs.h"
548#endif
549
[email protected]572f40c9b2012-07-06 20:35:33550namespace {
Yao Xiao9255aec2022-02-05 00:02:19551
Lei Zhang9523de82022-03-14 21:40:21552// Please keep the list of deprecated prefs in chronological order. i.e. Add to
553// the bottom of the list, not here at the top.
Toby Huang33753282020-05-05 18:55:22554
Ari Chivukula951893d2023-03-03 18:03:29555// Deprecated 03/2023.
556const char kGoogleSearchDomainMixingMetricsEmitterLastMetricsTime[] =
557 "browser.last_google_search_domain_mixing_metrics_time";
558
Mariam Ali4c166962024-01-04 12:18:16559// Deprecated 03/2023.
Artsiom Mitrokhincf332e22023-03-07 16:27:47560#if BUILDFLAG(IS_CHROMEOS_ASH)
561const char kGlanceablesSignoutScreenshotDuration[] =
562 "ash.signout_screenshot.duration";
563#endif // BUILDFLAG(IS_CHROMEOS_ASH)
564
Brittany Hartmireafd35312023-03-16 00:21:03565// Deprecated 03/2023.
566#if BUILDFLAG(IS_CHROMEOS_ASH)
567const char kEasyUnlockLocalStateUserPrefs[] = "easy_unlock.user_prefs";
568#endif // BUILDFLAG(IS_CHROMEOS_ASH)
569
Mariam Ali4c166962024-01-04 12:18:16570// Deprecated 03/2023.
conniekxu4d14f65c2023-03-28 20:56:36571#if BUILDFLAG(IS_CHROMEOS_ASH)
572const char kDarkLightModeNudgeLeftToShowCount[] =
573 "ash.dark_light_mode.educational_nudge";
574#endif // BUILDFLAG(IS_CHROMEOS_ASH)
575
Adam Langley390670302023-03-31 00:43:31576// Deprecated 03/2023.
577#if BUILDFLAG(IS_WIN)
578const char kWebAuthnLastOperationWasNativeAPI[] =
579 "webauthn.last_op_used_native_api";
580#endif
581
Brittany Hartmire1ffd662e2023-04-04 22:46:51582// Deprecated 03/2023.
583#if BUILDFLAG(IS_CHROMEOS_ASH)
584const char kEasyUnlockHardlockState[] = "easy_unlock.hardlock_state";
585#endif // BUILDFLAG(IS_CHROMEOS_ASH)
586
Richard Chui821cdad2023-04-07 21:39:57587// Deprecated 04/2023.
588#if BUILDFLAG(IS_CHROMEOS_ASH)
589const char kBentoBarEnabled[] = "ash.bento_bar.enabled";
590const char kUserHasUsedDesksRecently[] = "ash.user_has_used_desks_recently";
591#endif // BUILDFLAG(IS_CHROMEOS_ASH)
592
Dan Harrington83791492023-04-10 20:49:27593// Deprecated 04/2023.
594#if BUILDFLAG(IS_ANDROID)
595const char kUserSettingEnabled[] = "offline_prefetch.enabled";
596const char kBackoff[] = "offline_prefetch.backoff";
597const char kLimitlessPrefetchingEnabledTimePref[] =
598 "offline_prefetch.limitless_prefetching_enabled_time";
599const char kPrefetchTestingHeaderPref[] =
600 "offline_prefetch.testing_header_value";
601const char kEnabledByServer[] = "offline_prefetch.enabled_by_server";
602const char kNextForbiddenCheckTimePref[] = "offline_prefetch.next_gpb_check";
603const char kPrefetchCachedGCMToken[] = "offline_prefetch.gcm_token";
604#endif
605
Artem Sumaneev77f80bb2023-04-11 14:04:58606// Deprecated 04/2023.
607const char kTypeSubscribedForInvalidations[] =
608 "invalidation.registered_for_invalidation";
609const char kActiveRegistrationToken[] =
610 "invalidation.active_registration_token";
611const char kFCMInvalidationClientIDCache[] = "fcm.invalidation.client_id_cache";
612
Osama Fathy5d236652023-04-17 17:31:12613// Deprecated 04/2023.
614#if BUILDFLAG(IS_CHROMEOS_ASH)
615const char kConsolidatedConsentTrial[] = "per_user_metrics.trial_group";
616#endif // BUILDFLAG(IS_CHROMEOS_ASH)
617
Jérémie Boulic8d672f22023-04-18 02:44:05618// Deprecated 04/2023.
619#if BUILDFLAG(IS_CHROMEOS_ASH)
620const char kOfficeFilesAlwaysMove[] = "filebrowser.office.always_move";
621const char kOfficeMoveConfirmationShown[] =
622 "filebrowser.office.move_confirmation_shown";
623#endif // BUILDFLAG(IS_CHROMEOS_ASH)
624
Brittany Hartmire402a3922023-04-18 22:15:36625// Deprecated 04/2023.
626#if BUILDFLAG(IS_CHROMEOS_ASH)
627const char kProximityAuthIsChromeOSLoginEnabled[] =
628 "proximity_auth.is_chromeos_login_enabled";
629#endif // BUILDFLAG(IS_CHROMEOS_ASH)
630
Roland Bock8e21dd022023-04-27 09:33:48631// Deprecated 04/2023.
632#if BUILDFLAG(IS_CHROMEOS_ASH)
633const char kEnrollmentIdUploadedOnChromad[] = "chromad.enrollment_id_uploaded";
634const char kLastChromadMigrationAttemptTime[] =
635 "chromad.last_migration_attempt_time";
636#endif // BUILDFLAG(IS_CHROMEOS_ASH)
637
Brittany Hartmire22aa1ae82023-05-09 17:37:23638// Deprecated 05/2023.
639#if BUILDFLAG(IS_CHROMEOS_ASH)
640const char kSmartLockSigninAllowed[] = "smart_lock_signin.allowed";
641#endif // BUILDFLAG(IS_CHROMEOS_ASH)
642
Mariam Ali4c166962024-01-04 12:18:16643// Deprecated 05/2023.
David Trainorb7400c22023-05-10 19:17:06644#if BUILDFLAG(IS_ANDROID)
645const char kVideoTutorialsPreferredLocaleKey[] =
646 "video_tutorials.perferred_locale";
647const char kVideoTutorialsLastUpdatedTimeKey[] =
648 "video_tutorials.last_updated_time";
Cathy Li7ff029622023-05-26 04:56:52649const char kWeeklyStatsReportingTimestamp[] =
650 "explore_sites.weekly_stats_reporting_timestamp";
David Trainorb7400c22023-05-10 19:17:06651#endif // BUILDFLAG(IS_ANDROID)
652
Mariam Ali4c166962024-01-04 12:18:16653// Deprecated 05/2023.
Colin Blundella2aea272023-05-15 09:50:00654const char kForceEnablePepperVideoDecoderDevAPI[] =
655 "policy.force_enable_pepper_video_decoder_dev_api";
656
Mariam Ali4c166962024-01-04 12:18:16657// Deprecated 05/2023.
Pilar Molina Lopezef825502023-05-12 18:08:48658const char kUseMojoVideoDecoderForPepperAllowed[] =
659 "policy.use_mojo_video_decoder_for_pepper_allowed";
660
Vasiliy Telezhnikov2a786452023-05-12 23:53:37661// Deprecated 05/2023.
662const char kPPAPISharedImagesSwapChainAllowed[] =
663 "policy.ppapi_shared_images_swap_chain_allowed";
664
Peter Marshall7fdea2b2023-05-15 01:16:38665// Deprecated 05/2023.
666#if BUILDFLAG(IS_CHROMEOS_ASH)
667const char kOfficeSetupComplete[] = "filebrowser.office.setup_complete";
668#endif // BUILDFLAG(IS_CHROMEOS_ASH)
669
Elias Khsheibund1700562023-05-15 13:31:21670// Deprecated 05/2023.
671#if BUILDFLAG(IS_ANDROID)
672const char kTimesUPMAuthErrorShown[] = "times_upm_auth_error_shown";
673#endif // BUILDFLAG(IS_ANDROID)
674
Maciek Slusarczyk56833f02023-05-19 09:02:14675// Deprecated 05/2023.
676#if BUILDFLAG(IS_CHROMEOS_ASH)
677const char kSamlPasswordSyncToken[] = "saml.password_sync_token";
678#endif // BUILDFLAG(IS_CHROMEOS_ASH)
679
Ramin Halavatiec90e022023-05-23 13:55:05680// Deprecated 05/2023.
681#if BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
682const char kScreenAIScheduledDeletionTimePrefName[] =
683 "accessibility.screen_ai.scheduled_deletion_time";
684#endif
685
Michael Checo1f8625942023-05-23 19:33:47686// Deprecated 05/2023.
687#if BUILDFLAG(IS_CHROMEOS_ASH)
688const char kEventRemappedToRightClick[] =
689 "ash.settings.event_remapped_to_right_click";
690#endif
691
Hidehiko Abead7991f22023-05-31 14:32:22692// Deprecated 05/2023.
693#if BUILDFLAG(IS_CHROMEOS_ASH)
Tim Sergeantaffc95a2023-10-17 17:38:21694const char kSupervisedUserSyncId[] = "ManagedUserSyncId";
695const char kSupervisedUserManagers[] = "ManagedUserManagers";
696const char kSupervisedUserManagerNames[] = "ManagedUserManagerNames";
697const char kSupervisedUserManagerDisplayEmails[] =
Hidehiko Abead7991f22023-05-31 14:32:22698 "ManagedUserManagerDisplayEmails";
Tim Sergeantaffc95a2023-10-17 17:38:21699const char kSupervisedUsersFirstRun[] = "LocallyManagedUsersFirstRun";
700const char kSupervisedUserPasswordSchema[] = "SupervisedUserPasswordSchema";
701const char kSupervisedUserPasswordSalt[] = "SupervisedUserPasswordSalt";
702const char kSupervisedUserPasswordRevision[] = "SupervisedUserPasswordRevision";
703const char kSupervisedUserNeedPasswordUpdate[] =
Hidehiko Abead7991f22023-05-31 14:32:22704 "SupervisedUserNeedPasswordUpdate";
Tim Sergeantaffc95a2023-10-17 17:38:21705const char kSupervisedUserIncompleteKey[] = "SupervisedUserHasIncompleteKey";
Hidehiko Abead7991f22023-05-31 14:32:22706#endif
707
Alan Cutter3bfce6e2023-06-07 01:53:02708// Deprecated 06/2023.
Alan Cutter086bdf72023-06-09 02:40:11709#if BUILDFLAG(IS_CHROMEOS_ASH)
710const char kWebAppCalculatorAppErasureFixAppliedPref[] =
711 "web_app.calculator_app_erasure_fix_applied";
712#endif // BUILDFLAG(IS_CHROMEOS_ASH)
713
714// Deprecated 06/2023.
Alan Cutter3bfce6e2023-06-07 01:53:02715const char kWebAppsExtensionIDs[] = "web_apps.extension_ids";
716
Marc Treib7aaf21332023-06-14 08:30:01717// Deprecated 06/2023.
718#if BUILDFLAG(IS_CHROMEOS_ASH)
Tim Sergeantaffc95a2023-10-17 17:38:21719const char kOsSyncPrefsMigrated[] = "sync.os_sync_prefs_migrated";
Marc Treib7aaf21332023-06-14 08:30:01720#endif // BUILDFLAG(IS_CHROMEOS_ASH)
721
Mariam Ali4c166962024-01-04 12:18:16722// Deprecated 06/2023.
Yue Zhangf7cf6712023-06-16 18:11:32723#if !BUILDFLAG(IS_ANDROID)
724const char kShouldShowSidePanelBookmarkTab[] =
725 "should_show_side_panel_bookmark_tab";
726#endif // !BUILDFLAG(IS_ANDROID)
727
Maciek Slusarczyk9fed52232023-06-21 14:46:07728// Deprecated 06/2023.
729#if BUILDFLAG(IS_CHROMEOS_ASH)
730const char kGaiaLastOnlineSignInTime[] = "gaia.last_online_sign_in_time";
731const char kSAMLLastGAIASignInTime[] = "saml.last_gaia_sign_in_time";
732#endif // BUILDFLAG(IS_CHROMEOS_ASH)
733
Mariam Ali4c166962024-01-04 12:18:16734// Deprecated 07/2023.
Eshwar Stalin883b5a72023-07-11 02:05:59735#if !BUILDFLAG(IS_ANDROID)
736const char kLegacyHoverCardImagesEnabled[] = "browser.hovercard_images_enabled";
737#endif // !BUILDFLAG(IS_ANDROID)
738
Jian Li7541a082023-06-18 23:52:14739#if BUILDFLAG(ENABLE_FEED_V2)
740const char kVideoPreviewsType[] = "ntp_snippets.video_previews_type";
741#endif // BUILDFLAG(ENABLE_FEED_V2)
742
Anthony Cui5e5dad9322023-07-10 17:34:54743// Deprecated 06/2023.
744#if BUILDFLAG(IS_ANDROID)
745const char kPrefExplicitLanguageAskShown[] =
746 "translate_explicit_language_ask_shown";
747#endif // BUILDFLAG(IS_ANDROID)
748
Mihai Sardarescu6db89cf2023-07-04 07:36:02749// Deprecated 07/2023.
750#if !BUILDFLAG(IS_CHROMEOS_ASH)
751const char kUnifiedConsentMigrationState[] = "unified_consent.migration_state";
752#endif // !BUILDFLAG(IS_CHROMEOS_ASH)
753
Viktor Semeniuk13075de02023-07-18 08:24:36754// Deprecated 07/2023.
755const char kPasswordsGroupingInfoRequested[] =
756 "password_manager.passwords_grouping_info_requested";
757
Hui Yingstd4c7a572023-07-18 18:16:15758// Deprecated 07/2023.
759#if BUILDFLAG(IS_CHROMEOS_ASH)
760const char kPowerMetricsIdleScreenOffCount[] =
761 "power.metrics.idle_screen_off_count";
762const char kPowerMetricsIdleSuspendCount[] = "power.metrics.idle_suspend_count";
763const char kPowerMetricsLidClosedSuspendCount[] =
764 "power.metrics.lid_closed_suspend_count";
765#endif // BUILDFLAG(IS_CHROMEOS_ASH)
766
Christoph Schlosser1f1ec9b2023-07-26 08:12:56767// Deprecated 07/2023.
768#if BUILDFLAG(IS_CHROMEOS_ASH)
769const char kHatsPrivacyHubBaselineIsSelected[] =
770 "hats_privacy_hub_baseline_is_selected";
771const char kHatsPrivacyHubBaselineCycleEndTs[] =
772 "hats_privacy_hub_baseline_end_timestamp";
773#endif // BUILDFLAG(IS_CHROMEOS_ASH)
774
Yuta Hijikata9cd674122023-07-29 15:43:37775// Deprecated 07/2023.
776#if BUILDFLAG(IS_CHROMEOS_ASH)
777const char kClearUserDataDir1Pref[] = "lacros.clear_user_data_dir_1";
778#endif
779
Etienne Bergeron6ac228e2023-08-02 17:39:04780// Deprecated 07/2023.
781const char kShutdownNumProcesses[] = "shutdown.num_processes";
782const char kShutdownNumProcessesSlow[] = "shutdown.num_processes_slow";
Etienne Bergeronec5c88fb2023-08-07 15:09:39783const char kShutdownType[] = "shutdown.type";
Etienne Bergeron6ac228e2023-08-02 17:39:04784
François Degros82e8d052023-08-15 19:44:23785// Deprecated 08/2023.
786const char kDriveFsBulkPinningMaxQueueSize[] =
787 "drivefs.bulk_pinning.max_queue_size";
788
Nicola Tommasiff549832023-09-04 11:35:06789// Deprecated 09/2023.
790const char kPrivacySandboxM1Unrestricted[] = "privacy_sandbox.m1.unrestricted";
Daniel Ruberya440a6b12023-09-08 22:04:33791#if BUILDFLAG(IS_WIN)
792const char kSwReporter[] = "software_reporter";
Lily Chene658b27b2023-10-11 19:06:19793const char kChromeCleaner[] = "chrome_cleaner";
794const char kSettingsResetPrompt[] = "settings_reset_prompt";
Daniel Ruberya440a6b12023-09-08 22:04:33795#endif
Lily Chen492c670f2023-09-15 21:35:47796// A boolean specifying whether the new download bubble UI is enabled. If it is
797// set to false, the old download shelf UI will be shown instead.
Lily Chene658b27b2023-10-11 19:06:19798const char kDownloadBubbleEnabled[] = "download_bubble_enabled";
Nicola Tommasiff549832023-09-04 11:35:06799
Ahmed Mehfooze6c06892023-09-14 00:48:17800// Deprecated 09/2023.
801#if BUILDFLAG(IS_CHROMEOS_ASH)
Lily Chene658b27b2023-10-11 19:06:19802const char kGestureEducationNotificationShown[] =
Ahmed Mehfooze6c06892023-09-14 00:48:17803 "ash.gesture_education.notification_shown";
Mikel Astiz3dc3dabc2023-09-25 19:32:21804
805// Note that this very name is used outside ChromeOS Ash, where it isn't
806// deprecated.
Lily Chene658b27b2023-10-11 19:06:19807const char kSyncInitialSyncFeatureSetupCompleteOnAsh[] =
Mikel Astiz3dc3dabc2023-09-25 19:32:21808 "sync.has_setup_completed";
Ahmed Mehfooze6c06892023-09-14 00:48:17809#endif
810
Ankush Singh041ec0d2023-09-21 09:06:13811// Deprecated 09/2023.
Lily Chene658b27b2023-10-11 19:06:19812const char kPrivacySandboxManuallyControlled[] =
Ankush Singh041ec0d2023-09-21 09:06:13813 "privacy_sandbox.manually_controlled";
814
Ivana Žužić2fa04d12023-09-29 13:46:31815// Deprecated 09/2023.
Ivana Žužić2fa04d12023-09-29 13:46:31816#if BUILDFLAG(IS_ANDROID)
817const char kSettingsMigratedToUPM[] = "profile.settings_migrated_to_upm";
818#endif
819
Mikel Astizd848587f2023-10-02 09:28:03820// Deprecated 10/2023.
Lily Chene658b27b2023-10-11 19:06:19821const char kSyncRequested[] = "sync.requested";
822const char kDownloadLastCompleteTime[] = "download.last_complete_time";
Mikel Astizd848587f2023-10-02 09:28:03823
James Hawkins8d2adfd2023-10-05 08:24:56824// Deprecated 10/2023.
825#if BUILDFLAG(IS_CHROMEOS_ASH)
826const char kLastSuccessfulDomainPref[] = "android_sms.last_successful_domain";
827const char kShouldAttemptReenable[] = "android_sms.should_attempt_reenable";
Jeremy Wu52e5c852023-10-31 01:45:09828const char kAudioVolumePercent[] = "settings.audio.volume_percent";
James Hawkins8d2adfd2023-10-05 08:24:56829#endif // BUILDFLAG(IS_CHROMEOS_ASH)
830
Tim Sergeantce1539d2023-10-12 00:35:49831// Deprecated 10/2023.
832#if BUILDFLAG(IS_CHROMEOS)
Tim Sergeantaffc95a2023-10-17 17:38:21833const char kSupportedLinksAppPrefsKey[] = "supported_links_infobar.apps";
Tim Sergeantce1539d2023-10-12 00:35:49834#endif // BUILDFLAG(IS_CHROMEOS)
835
Eric Suma2add402023-10-24 03:48:53836// Deprecated 10/2023.
837#if BUILDFLAG(IS_CHROMEOS_ASH)
838constexpr char kNightLightCachedLatitude[] = "ash.night_light.cached_latitude";
839constexpr char kNightLightCachedLongitude[] =
840 "ash.night_light.cached_longitude";
Zauri Meshvelianic39cff7c2023-11-14 20:31:11841#endif // BUILDFLAG(IS_CHROMEOS_ASH)
842
Mariam Ali4c166962024-01-04 12:18:16843// Deprecated 11/2023.
Zauri Meshvelianic39cff7c2023-11-14 20:31:11844#if BUILDFLAG(IS_CHROMEOS_ASH)
845constexpr char kUserGeolocationAllowed[] = "ash.user.geolocation_allowed";
846#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Eric Suma2add402023-10-24 03:48:53847
Ryan Kalla4bd74b412023-11-03 16:11:36848// Deprecated 11/2023.
849const char kPrivacySandboxAntiAbuseInitialized[] =
850 "privacy_sandbox.anti_abuse_initialized";
851
Guido Urdaneta39d28bb72023-11-09 14:40:58852// Deprecated 11/2023.
853constexpr char kWebRTCAllowLegacyTLSProtocols[] =
854 "webrtc.allow_legacy_tls_protocols";
855
Jiaming Chengbf012ae2023-11-10 22:00:12856// Deprecated 11/2023.
857#if BUILDFLAG(IS_CHROMEOS_ASH)
858constexpr char kSystemTrayExpanded[] = "ash.system_tray.expanded";
859#endif
860
Jan Keitel17fdab22023-11-17 12:41:36861// Deprecated 11/2023.
862constexpr char kPasswordChangeSuccessTrackerFlows[] =
863 "password_manager.password_change_success_tracker.flows";
864constexpr char kPasswordChangeSuccessTrackerVersion[] =
865 "password_manager.password_change_success_tracker.version";
866
Wen-Chien Wang29111192023-11-30 02:13:30867// Deprecated 11/2023.
868#if BUILDFLAG(IS_CHROMEOS_ASH)
869constexpr char kImageSearchPrivacyNotice[] =
870 "ash.launcher.image_search_privacy_notice";
871#endif // BUILDFLAG(IS_CHROMEOS_ASH)
872
Matt Jones90c86302023-12-07 18:06:38873// Deprecated 11/2023.
874constexpr char kWebAndAppActivityEnabledForShopping[] =
875 "web_and_app_activity_enabled_for_shopping";
876
Wenyu Fuae0324f2023-12-12 19:10:28877// Deprecated 12/2023.
878#if BUILDFLAG(IS_ANDROID)
879const char kTemplatesRandomOrder[] = "content_creation.notes.random_order";
880#endif
881
Shu Yangfc961acb2023-12-15 10:58:55882// Deprecated 12/2023.
883#if BUILDFLAG(IS_ANDROID)
884const char kDesktopSitePeripheralSettingEnabled[] =
885 "desktop_site.peripheral_setting";
886const char kDesktopSiteDisplaySettingEnabled[] = "desktop_site.display_setting";
887#endif
888
Lily Chen4766ba32023-12-15 17:37:12889// Deprecated 12/2023.
890constexpr char kDownloadDuplicateFilePromptEnabled[] =
891 "download_duplicate_file_prompt_enabled";
892
Zelin Liuafae5a22023-12-18 22:16:07893// Deprecated 12/2023.
894#if BUILDFLAG(IS_CHROMEOS_ASH)
895constexpr char kIsolatedWebAppsEnabled[] = "ash.isolated_web_apps_enabled";
896#endif // BUILDFLAG(IS_CHROMEOS_ASH)
897
Antonio Sartori910f325932023-12-19 16:19:03898// Deprecated 12/2023.
899const char kPrivacyBudgetReportedReidBlocks[] =
900 "privacy_budget.reported_reid_blocks";
901
Sophie Chang97c75f02023-12-21 17:36:30902// Deprecated from profile prefs 12/2023.
903const char kModelQualityLoggingClientId[] =
904 "optimization_guide.model_quality_logging_client_id";
905
Ryan Sultanem3b4f5952023-12-21 14:27:36906// Deprecated 12/2023.
907const char kSync_ExplicitBrowserSignin[] = "sync.explicit_browser_signin";
908
Mariam Alid43a5d42024-01-04 11:28:28909// Deprecated 01/2024.
910const char kPrivacySandboxPageViewed[] = "privacy_sandbox.page_viewed";
Sophie Chang97c75f02023-12-21 17:36:30911
Mariam Ali454bafbf2024-01-04 16:24:09912// Deprecated 01/2024.
913const char kPrivacySandboxApisEnabledV2[] = "privacy_sandbox.apis_enabled_v2";
914const char kPrivacySandboxManuallyControlledV2[] =
915 "privacy_sandbox.manually_controlled_v2";
916
Anthony Cui74262132024-01-04 20:29:58917// Deprecated 01/2024.
918#if BUILDFLAG(ENABLE_COMPOSE)
919constexpr char kPrefHasAcceptedComposeConsent[] =
920 "compose_has_accepted_consent";
Anthony Cui1f26306a2024-01-08 18:19:48921constexpr char kAutofillAssistanceEnabled[] = "autofill_assistance.enabled";
Anthony Cui74262132024-01-04 20:29:58922#endif
923
Side Yilmazcdc4cd92024-01-08 14:28:36924// Deprecated 01/2024.
925const char kSyncedLastTimePasswordCheckCompleted[] =
926 "profile.credentials_last_password_checkup_time";
927
Lily Chenf7aa1fc2024-01-09 16:25:05928// Deprecated 01/2024.
929const char kDownloadBubbleIphSuppression[] = "suppress_download_bubble_iph";
930
Andrea Orru162346b2024-01-12 10:24:45931#if BUILDFLAG(IS_CHROMEOS_ASH)
932// Deprecated 01/2024.
933const char kPersistedSystemExtensions[] = "system_extensions.persisted";
934#endif // BUILDFLAG(IS_CHROMEOS_ASH)
935
Vasiliy Telezhnikov3600f1e2024-01-13 01:28:34936// Deprecated 01/2024.
937const char kPPAPISharedImagesForVideoDecoderAllowed[] =
938 "policy.ppapi_shared_images_for_video_decoder_allowed";
939
Nicholas Hollingum8cef1a72024-01-17 23:12:51940#if BUILDFLAG(IS_CHROMEOS_ASH)
941// Deprecated 01/2024.
942const char kBorealisVmTokenHash[] = "borealis.vm_token_hash";
943#endif // BUILDFLAG(IS_CHROMEOS_ASH)
944
Michael Checoc64e6b0f2024-01-24 03:00:38945// Deprecated 01/2024.
946#if BUILDFLAG(IS_CHROMEOS_ASH)
947constexpr char kExtendedFkeysModifier[] =
948 "ash.settings.extended_fkeys_modifier";
949#endif // BUILDFLAG(IS_CHROMEOS_ASH)
950
Daniel Murphy93abb662024-01-25 17:11:14951// Deprecated 01/2024.
952constexpr char kNtpShownPage[] = "ntp.shown_page";
953constexpr char kNtpAppPageNames[] = "ntp.app_page_names";
954
Ian Kilpatrick3990a492024-01-26 00:31:55955// Deprecated 01/2024.
956#if BUILDFLAG(IS_WIN)
957const char kSearchResultsPagePrimaryFontsPref[] =
958 "cached_fonts.search_results_page.primary";
959const char kSearchResultsPageFallbackFontsPref[] =
960 "cached_fonts.search_results_page.fallback";
961#endif // BUILDFLAG(IS_WIN)
962
Jiaming Chengbdc479b2024-01-29 21:47:30963// Deprecated 01/2024.
964#if BUILDFLAG(IS_CHROMEOS_ASH)
965constexpr char kUpdateNotificationLastShownMilestone[] =
966 "update_notification_last_shown_milestone";
967#endif // BUILDFLAG(IS_CHROMEOS_ASH)
968
Viktor Semeniuk02ce9b82024-02-05 12:11:07969// Deprecated 02/2024.
970#if BUILDFLAG(IS_ANDROID)
971constexpr char kSavePasswordsSuspendedByError[] =
972 "profile.save_passwords_suspended_by_error";
973#endif
Daniel Rubery0d9dc312024-02-06 02:21:37974constexpr char kSafeBrowsingDeepScanPromptSeen[] =
975 "safebrowsing.deep_scan_prompt_seen";
976constexpr char kSafeBrowsingEsbEnabledTimestamp[] =
977 "safebrowsing.esb_enabled_timestamp";
Viktor Semeniuk02ce9b82024-02-05 12:11:07978
Leonard Grey8f81011a2024-02-07 17:59:45979#if BUILDFLAG(IS_MAC)
980constexpr char kScreenTimeEnabled[] = "policy.screen_time";
981#endif
982
David Blackdf74125d22024-02-12 19:00:05983// Deprecated 02/2024.
984#if BUILDFLAG(IS_CHROMEOS_ASH)
985constexpr std::array<const char*, 6u>
986 kWelcomeTourTimeBucketsOfFirstInteractions = {
987 "ash.welcome_tour.interaction_time.ExploreApp.first_time_bucket",
988 "ash.welcome_tour.interaction_time.FilesApp.first_time_bucket",
989 "ash.welcome_tour.interaction_time.Launcher.first_time_bucket",
990 "ash.welcome_tour.interaction_time.QuickSettings.first_time_bucket",
991 "ash.welcome_tour.interaction_time.Search.first_time_bucket",
992 "ash.welcome_tour.interaction_time.SettingsApp.first_time_bucket",
993};
994#endif
995
Nicolas Dossou-Gbete166dffd2024-02-16 15:46:51996// Deprecated 02/2024
997constexpr char kSearchEnginesChoiceProfile[] = "search_engines.choice_profile";
998
Lei Zhangb76b80e32020-04-08 16:58:16999// Register local state used only for migration (clearing or moving to a new
1000// key).
1001void RegisterLocalStatePrefsForMigration(PrefRegistrySimple* registry) {
Artsiom Mitrokhincf332e22023-03-07 16:27:471002// Deprecated 03/2023.
1003#if BUILDFLAG(IS_CHROMEOS_ASH)
1004 registry->RegisterTimeDeltaPref(kGlanceablesSignoutScreenshotDuration,
1005 base::TimeDelta());
1006#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Brittany Hartmireafd35312023-03-16 00:21:031007
1008// Deprecated 03/2023.
1009#if BUILDFLAG(IS_CHROMEOS_ASH)
1010 registry->RegisterDictionaryPref(kEasyUnlockLocalStateUserPrefs);
1011#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Brittany Hartmire1ffd662e2023-04-04 22:46:511012
1013// Deprecated 04/2023.
1014#if BUILDFLAG(IS_CHROMEOS_ASH)
1015 registry->RegisterDictionaryPref(kEasyUnlockHardlockState);
1016#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Artem Sumaneev77f80bb2023-04-11 14:04:581017
1018 // Deprecated 04/2023.
1019 registry->RegisterDictionaryPref(kTypeSubscribedForInvalidations);
1020 registry->RegisterStringPref(kActiveRegistrationToken, std::string());
1021 registry->RegisterStringPref(kFCMInvalidationClientIDCache, std::string());
Osama Fathy5d236652023-04-17 17:31:121022
1023// Deprecated 04/2023.
1024#if BUILDFLAG(IS_CHROMEOS_ASH)
1025 registry->RegisterStringPref(kConsolidatedConsentTrial, std::string());
1026#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Roland Bock8e21dd022023-04-27 09:33:481027
1028// Deprecated 04/2023.
1029#if BUILDFLAG(IS_CHROMEOS_ASH)
1030 registry->RegisterBooleanPref(kEnrollmentIdUploadedOnChromad, false);
1031 registry->RegisterTimePref(kLastChromadMigrationAttemptTime,
1032 /*default_value=*/base::Time());
1033#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Pilar Molina Lopezef825502023-05-12 18:08:481034
1035 // Deprecated 05/2023.
Colin Blundella2aea272023-05-15 09:50:001036 registry->RegisterBooleanPref(kForceEnablePepperVideoDecoderDevAPI, false);
1037
1038 // Deprecated 05/2023.
Pilar Molina Lopezef825502023-05-12 18:08:481039 registry->RegisterBooleanPref(kUseMojoVideoDecoderForPepperAllowed, true);
Vasiliy Telezhnikov2a786452023-05-12 23:53:371040
1041 // Deprecated 05/2023.
1042 registry->RegisterBooleanPref(kPPAPISharedImagesSwapChainAllowed, true);
Ramin Halavatiec90e022023-05-23 13:55:051043
1044// Deprecated 05/2023.
1045#if BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
1046 registry->RegisterTimePref(kScreenAIScheduledDeletionTimePrefName,
1047 base::Time());
1048#endif
Cathy Li7ff029622023-05-26 04:56:521049
Mariam Ali4c166962024-01-04 12:18:161050// Deprecated 05/2023.
Cathy Li7ff029622023-05-26 04:56:521051#if BUILDFLAG(IS_ANDROID)
1052 registry->RegisterTimePref(kWeeklyStatsReportingTimestamp, base::Time());
1053#endif // BUILDFLAG(IS_ANDROID)
Hidehiko Abead7991f22023-05-31 14:32:221054
1055// Deprecated 05/2023.
1056#if BUILDFLAG(IS_CHROMEOS_ASH)
1057 registry->RegisterListPref(kSupervisedUsersFirstRun);
1058 registry->RegisterDictionaryPref(kSupervisedUserSyncId);
1059 registry->RegisterDictionaryPref(kSupervisedUserManagers);
1060 registry->RegisterDictionaryPref(kSupervisedUserManagerNames);
1061 registry->RegisterDictionaryPref(kSupervisedUserManagerDisplayEmails);
1062
1063 registry->RegisterDictionaryPref(kSupervisedUserPasswordSchema);
1064 registry->RegisterDictionaryPref(kSupervisedUserPasswordSalt);
1065 registry->RegisterDictionaryPref(kSupervisedUserPasswordRevision);
1066
1067 registry->RegisterDictionaryPref(kSupervisedUserNeedPasswordUpdate);
1068 registry->RegisterDictionaryPref(kSupervisedUserIncompleteKey);
1069#endif
Eshwar Stalin883b5a72023-07-11 02:05:591070
Mariam Ali4c166962024-01-04 12:18:161071// Deprecated 07/2023.
Eshwar Stalin883b5a72023-07-11 02:05:591072#if !BUILDFLAG(IS_ANDROID)
1073 registry->RegisterBooleanPref(kLegacyHoverCardImagesEnabled, false);
1074#endif // !BUILDFLAG(IS_ANDROID)
Etienne Bergeron6ac228e2023-08-02 17:39:041075
1076 // Deprecated 07/2023.
1077 registry->RegisterIntegerPref(kShutdownNumProcesses, 0);
1078 registry->RegisterIntegerPref(kShutdownNumProcessesSlow, 0);
Etienne Bergeronec5c88fb2023-08-07 15:09:391079 registry->RegisterIntegerPref(kShutdownType, 0);
Daniel Ruberya440a6b12023-09-08 22:04:331080
1081 // Deprecated 09/2023.
1082#if BUILDFLAG(IS_WIN)
1083 registry->RegisterDictionaryPref(kSwReporter);
1084 registry->RegisterDictionaryPref(kChromeCleaner);
1085#endif
Ahmed Mehfooze6c06892023-09-14 00:48:171086
1087 // Deprecated 09/2023.
1088#if BUILDFLAG(IS_CHROMEOS_ASH)
1089 registry->RegisterBooleanPref(kGestureEducationNotificationShown, true);
1090#endif
Zelin Liuafae5a22023-12-18 22:16:071091
1092 // Deprecated 11/2023.
1093#if BUILDFLAG(IS_CHROMEOS_ASH)
1094 registry->RegisterBooleanPref(kIsolatedWebAppsEnabled, false);
1095#endif
Antonio Sartori910f325932023-12-19 16:19:031096
Mariam Ali4c166962024-01-04 12:18:161097 // Deprecated 12/2023.
Antonio Sartori910f325932023-12-19 16:19:031098 registry->RegisterStringPref(kPrivacyBudgetReportedReidBlocks, std::string());
Vasiliy Telezhnikov3600f1e2024-01-13 01:28:341099
1100 // Deprecated 01/2024.
1101 registry->RegisterBooleanPref(kPPAPISharedImagesForVideoDecoderAllowed, true);
Michael Checoc64e6b0f2024-01-24 03:00:381102
1103 // Deprecated 01/2024.
1104#if BUILDFLAG(IS_CHROMEOS_ASH)
1105 registry->RegisterIntegerPref(kExtendedFkeysModifier, 0);
1106#endif
Leonard Grey8f81011a2024-02-07 17:59:451107
1108 // Deprecated 02/2024
1109#if BUILDFLAG(IS_MAC)
1110 registry->RegisterBooleanPref(kScreenTimeEnabled, true);
1111#endif
Nicolas Dossou-Gbete166dffd2024-02-16 15:46:511112
1113 // Deprecated 02/2024.
1114 registry->RegisterFilePathPref(kSearchEnginesChoiceProfile, base::FilePath());
Lei Zhangb76b80e32020-04-08 16:58:161115}
1116
James Cook0ba192bf2017-12-01 20:53:111117// Register prefs used only for migration (clearing or moving to a new key).
1118void RegisterProfilePrefsForMigration(
1119 user_prefs::PrefRegistrySyncable* registry) {
Ben Schwartz135746c2020-05-14 04:37:031120 chrome_browser_net::secure_dns::RegisterProbesSettingBackupPref(registry);
wutao2e24aff2020-04-03 17:01:021121
Ari Chivukula951893d2023-03-03 18:03:291122 // Deprecated 03/2023.
1123 registry->RegisterTimePref(
1124 kGoogleSearchDomainMixingMetricsEmitterLastMetricsTime, base::Time());
conniekxu4d14f65c2023-03-28 20:56:361125
1126 // Deprecated 03/2023.
1127#if BUILDFLAG(IS_CHROMEOS_ASH)
1128 registry->RegisterIntegerPref(kDarkLightModeNudgeLeftToShowCount,
1129 ash::kDarkLightModeNudgeMaxShownCount);
1130#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Adam Langley390670302023-03-31 00:43:311131
1132 // Deprecated 03/2023.
1133#if BUILDFLAG(IS_WIN)
1134 registry->RegisterBooleanPref(kWebAuthnLastOperationWasNativeAPI, false);
1135#endif
Richard Chui821cdad2023-04-07 21:39:571136
1137// Deprecated 04/2023.
1138#if BUILDFLAG(IS_CHROMEOS_ASH)
1139 registry->RegisterBooleanPref(kBentoBarEnabled, false);
1140 registry->RegisterBooleanPref(kUserHasUsedDesksRecently, false);
1141#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Dan Harrington83791492023-04-10 20:49:271142
1143// Deprecated 04/2023.
1144#if BUILDFLAG(IS_ANDROID)
1145 registry->RegisterListPref(kBackoff);
1146 registry->RegisterBooleanPref(kUserSettingEnabled, true);
1147 registry->RegisterTimePref(kLimitlessPrefetchingEnabledTimePref,
1148 base::Time());
1149 registry->RegisterStringPref(kPrefetchTestingHeaderPref, std::string());
1150 registry->RegisterBooleanPref(kEnabledByServer, false);
1151 registry->RegisterTimePref(kNextForbiddenCheckTimePref, base::Time());
1152 registry->RegisterStringPref(kPrefetchCachedGCMToken, std::string());
1153#endif
Artem Sumaneev77f80bb2023-04-11 14:04:581154
1155 // Deprecated 04/2023.
1156 registry->RegisterDictionaryPref(kTypeSubscribedForInvalidations);
1157 registry->RegisterStringPref(kActiveRegistrationToken, std::string());
1158 registry->RegisterStringPref(kFCMInvalidationClientIDCache, std::string());
Dan Harrington899e25232023-04-11 18:23:571159
1160 // Deprecated 04/2023.
1161#if BUILDFLAG(IS_ANDROID)
1162 ntp_snippets::prefs::RegisterProfilePrefsForMigrationApril2023(registry);
1163#endif
Jérémie Boulic8d672f22023-04-18 02:44:051164
1165// Deprecated 04/2023.
1166#if BUILDFLAG(IS_CHROMEOS_ASH)
1167 registry->RegisterBooleanPref(kOfficeFilesAlwaysMove, false);
1168 registry->RegisterBooleanPref(kOfficeMoveConfirmationShown, false);
1169#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Brittany Hartmire402a3922023-04-18 22:15:361170
1171// Deprecated 04/2023.
1172#if BUILDFLAG(IS_CHROMEOS_ASH)
1173 registry->RegisterBooleanPref(kProximityAuthIsChromeOSLoginEnabled, false);
1174#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Brittany Hartmire22aa1ae82023-05-09 17:37:231175
1176// Deprecated 05/2023.
1177#if BUILDFLAG(IS_CHROMEOS_ASH)
1178 registry->RegisterBooleanPref(kSmartLockSigninAllowed, false);
1179#endif // BUILDFLAG(IS_CHROMEOS_ASH)
David Trainorb7400c22023-05-10 19:17:061180
1181 // Deprecated 05/2023.
1182#if BUILDFLAG(IS_ANDROID)
1183 registry->RegisterStringPref(kVideoTutorialsPreferredLocaleKey,
1184 std::string());
1185 registry->RegisterTimePref(kVideoTutorialsLastUpdatedTimeKey, base::Time());
1186#endif // BUILDFLAG(IS_ANDROID)
Peter Marshall7fdea2b2023-05-15 01:16:381187
1188// Deprecated 05/2023.
1189#if BUILDFLAG(IS_CHROMEOS_ASH)
1190 registry->RegisterBooleanPref(kOfficeSetupComplete, false);
1191#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Elias Khsheibund1700562023-05-15 13:31:211192
1193// Deprecated 05/2023.
1194#if BUILDFLAG(IS_ANDROID)
1195 registry->RegisterIntegerPref(kTimesUPMAuthErrorShown, 0);
1196#endif // BUILDFLAG(IS_ANDROID)
Maciek Slusarczyk56833f02023-05-19 09:02:141197
1198// Deprecated 05/2023.
1199#if BUILDFLAG(IS_CHROMEOS_ASH)
1200 registry->RegisterStringPref(kSamlPasswordSyncToken, std::string());
1201#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Michael Checo1f8625942023-05-23 19:33:471202
1203// Deprecated 05/2023.
1204#if BUILDFLAG(IS_CHROMEOS_ASH)
1205 registry->RegisterBooleanPref(kEventRemappedToRightClick, false);
1206#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Alan Cutter3bfce6e2023-06-07 01:53:021207
Alan Cutter086bdf72023-06-09 02:40:111208// Deprecated 06/2023.
1209#if BUILDFLAG(IS_CHROMEOS_ASH)
1210 registry->RegisterBooleanPref(kWebAppCalculatorAppErasureFixAppliedPref,
1211 false);
1212#endif // BUILDFLAG(IS_CHROMEOS_ASH)
1213
Alan Cutter3bfce6e2023-06-07 01:53:021214 // Deprecated 06/2023.
1215 registry->RegisterDictionaryPref(kWebAppsExtensionIDs);
Marc Treib7aaf21332023-06-14 08:30:011216
1217 // Deprecated 06/2023.
1218#if BUILDFLAG(IS_CHROMEOS_ASH)
1219 registry->RegisterBooleanPref(kOsSyncPrefsMigrated, false);
1220#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Yue Zhangf7cf6712023-06-16 18:11:321221
1222 // Deprecated 06/2023.
1223#if !BUILDFLAG(IS_ANDROID)
1224 registry->RegisterBooleanPref(kShouldShowSidePanelBookmarkTab, false);
1225#endif // !BUILDFLAG(IS_ANDROID)
Jian Li7541a082023-06-18 23:52:141226
1227 // Deprecated 06/2023.
1228#if BUILDFLAG(ENABLE_FEED_V2)
1229 registry->RegisterIntegerPref(kVideoPreviewsType, 1);
1230#endif // BUILDFLAG(ENABLE_FEED_V2)
Maciek Slusarczyk9fed52232023-06-21 14:46:071231
1232// Deprecated 06/2023.
1233#if BUILDFLAG(IS_CHROMEOS_ASH)
1234 registry->RegisterTimePref(kGaiaLastOnlineSignInTime, base::Time());
1235 registry->RegisterTimePref(kSAMLLastGAIASignInTime, base::Time());
1236#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Mihai Sardarescu6db89cf2023-07-04 07:36:021237
Anthony Cui5e5dad9322023-07-10 17:34:541238 // Deprecated 06/2023.
1239#if BUILDFLAG(IS_ANDROID)
1240 registry->RegisterBooleanPref(kPrefExplicitLanguageAskShown, false);
1241#endif // BUILDFLAG(IS_ANDROID)
1242
Mihai Sardarescu6db89cf2023-07-04 07:36:021243// Deprecated 07/2023.
1244#if !BUILDFLAG(IS_CHROMEOS_ASH)
1245 registry->RegisterIntegerPref(kUnifiedConsentMigrationState, 0);
1246#endif // !BUILDFLAG(IS_CHROMEOS_ASH)
Viktor Semeniuk13075de02023-07-18 08:24:361247
Mariam Ali4c166962024-01-04 12:18:161248 // Deprecated 07/2023.
Viktor Semeniuk13075de02023-07-18 08:24:361249 registry->RegisterBooleanPref(kPasswordsGroupingInfoRequested, false);
Hui Yingstd4c7a572023-07-18 18:16:151250
1251// Deprecated 07/2023.
1252#if BUILDFLAG(IS_CHROMEOS_ASH)
1253 registry->RegisterIntegerPref(kPowerMetricsIdleScreenOffCount, 0);
1254 registry->RegisterIntegerPref(kPowerMetricsIdleSuspendCount, 0);
1255 registry->RegisterIntegerPref(kPowerMetricsLidClosedSuspendCount, 0);
1256#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Christoph Schlosser1f1ec9b2023-07-26 08:12:561257
1258// Deprecated 07/2023.
1259#if BUILDFLAG(IS_CHROMEOS_ASH)
1260 registry->RegisterIntegerPref(kHatsPrivacyHubBaselineIsSelected, false);
1261 registry->RegisterIntegerPref(kHatsPrivacyHubBaselineCycleEndTs, 0);
1262#endif // BUILDFLAG(IS_CHROMEOS_ASH)
François Degros82e8d052023-08-15 19:44:231263
1264 // Deprecated 08/2023.
1265 registry->RegisterIntegerPref(kDriveFsBulkPinningMaxQueueSize, 0);
Nicola Tommasiff549832023-09-04 11:35:061266
1267 // Deprecated 09/2023.
1268 registry->RegisterBooleanPref(kPrivacySandboxM1Unrestricted, false);
Daniel Ruberya440a6b12023-09-08 22:04:331269#if BUILDFLAG(IS_WIN)
1270 registry->RegisterDictionaryPref(kSwReporter);
1271 registry->RegisterDictionaryPref(kSettingsResetPrompt);
1272 registry->RegisterDictionaryPref(kChromeCleaner);
1273#endif
Lily Chen492c670f2023-09-15 21:35:471274 registry->RegisterBooleanPref(kDownloadBubbleEnabled, true);
Ankush Singh041ec0d2023-09-21 09:06:131275 registry->RegisterBooleanPref(kPrivacySandboxManuallyControlled, false);
Mikel Astiz3dc3dabc2023-09-25 19:32:211276#if BUILDFLAG(IS_CHROMEOS_ASH)
1277 registry->RegisterBooleanPref(kSyncInitialSyncFeatureSetupCompleteOnAsh,
1278 false);
1279#endif
Ivana Žužić2fa04d12023-09-29 13:46:311280#if BUILDFLAG(IS_ANDROID)
1281 registry->RegisterBooleanPref(kSettingsMigratedToUPM, false);
1282#endif
Mikel Astizd848587f2023-10-02 09:28:031283 registry->RegisterBooleanPref(kSyncRequested, false);
James Hawkins8d2adfd2023-10-05 08:24:561284
1285 // Deprecated 10/2023.
1286#if BUILDFLAG(IS_CHROMEOS_ASH)
1287 registry->RegisterStringPref(kLastSuccessfulDomainPref, std::string());
1288 registry->RegisterBooleanPref(kShouldAttemptReenable, true);
Jeremy Wu52e5c852023-10-31 01:45:091289 registry->RegisterDoublePref(kAudioVolumePercent, 0);
James Hawkins8d2adfd2023-10-05 08:24:561290#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Lily Chene658b27b2023-10-11 19:06:191291 registry->RegisterTimePref(kDownloadLastCompleteTime, base::Time());
Tim Sergeantce1539d2023-10-12 00:35:491292
1293// Deprecated 10/2023.
1294#if BUILDFLAG(IS_CHROMEOS)
1295 registry->RegisterDictionaryPref(kSupportedLinksAppPrefsKey);
1296#endif // BUILDFLAG(IS_CHROMEOS)
Eric Suma2add402023-10-24 03:48:531297
1298// Deprecated 10/2023.
1299#if BUILDFLAG(IS_CHROMEOS_ASH)
1300 registry->RegisterDoublePref(kNightLightCachedLatitude, 0.0);
1301 registry->RegisterDoublePref(kNightLightCachedLongitude, 0.0);
1302#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Ryan Kalla4bd74b412023-11-03 16:11:361303
1304 // Deprecated 11/2023.
1305 registry->RegisterBooleanPref(kPrivacySandboxAntiAbuseInitialized, false);
Guido Urdaneta39d28bb72023-11-09 14:40:581306
1307 // Deprecated 11/2023.
1308 registry->RegisterBooleanPref(kWebRTCAllowLegacyTLSProtocols, false);
Jiaming Chengbf012ae2023-11-10 22:00:121309
1310// Deprecated 11/2023.
1311#if BUILDFLAG(IS_CHROMEOS_ASH)
1312 registry->RegisterBooleanPref(kSystemTrayExpanded, true);
1313#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Zauri Meshvelianic39cff7c2023-11-14 20:31:111314
Mariam Ali4c166962024-01-04 12:18:161315// Deprecated 11/2023.
Zauri Meshvelianic39cff7c2023-11-14 20:31:111316#if BUILDFLAG(IS_CHROMEOS_ASH)
1317 registry->RegisterBooleanPref(kUserGeolocationAllowed, true);
1318#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Jan Keitel17fdab22023-11-17 12:41:361319
1320 // Deprecated 11/2023.
1321 registry->RegisterListPref(kPasswordChangeSuccessTrackerFlows);
1322 registry->RegisterIntegerPref(kPasswordChangeSuccessTrackerVersion, 0);
Wen-Chien Wang29111192023-11-30 02:13:301323
1324 // Deprecated 11/2023.
1325#if BUILDFLAG(IS_CHROMEOS_ASH)
1326 registry->RegisterDictionaryPref(kImageSearchPrivacyNotice);
1327#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Matt Jones90c86302023-12-07 18:06:381328
1329 // Deprecated 11/2023.
1330 registry->RegisterBooleanPref(kWebAndAppActivityEnabledForShopping, true);
Wenyu Fuae0324f2023-12-12 19:10:281331
1332 // Deprecated 12/2023.
1333#if BUILDFLAG(IS_ANDROID)
1334 registry->RegisterListPref(kTemplatesRandomOrder);
1335#endif
Shu Yangfc961acb2023-12-15 10:58:551336
1337// Deprecated 12/2023.
1338#if BUILDFLAG(IS_ANDROID)
1339 registry->RegisterBooleanPref(kDesktopSitePeripheralSettingEnabled, false);
1340 registry->RegisterBooleanPref(kDesktopSiteDisplaySettingEnabled, false);
1341#endif
Lily Chen4766ba32023-12-15 17:37:121342
1343 // Deprecated 12/2023.
1344 registry->RegisterBooleanPref(kDownloadDuplicateFilePromptEnabled, true);
Ryan Sultanem3b4f5952023-12-21 14:27:361345
1346 // Deprecated 12/2023.
Sophie Chang97c75f02023-12-21 17:36:301347 registry->RegisterInt64Pref(kModelQualityLoggingClientId, true);
Ryan Sultanem3b4f5952023-12-21 14:27:361348 registry->RegisterBooleanPref(kSync_ExplicitBrowserSignin, false);
Mariam Alid43a5d42024-01-04 11:28:281349
1350 // Deprecated 01/2024.
1351 registry->RegisterBooleanPref(kPrivacySandboxPageViewed, false);
Mariam Ali454bafbf2024-01-04 16:24:091352
1353 // Deprecated 01/2024.
1354 registry->RegisterBooleanPref(kPrivacySandboxApisEnabledV2, false);
1355 registry->RegisterBooleanPref(kPrivacySandboxManuallyControlledV2, false);
Anthony Cui74262132024-01-04 20:29:581356
1357// Deprecated 01/2024.
1358#if BUILDFLAG(ENABLE_COMPOSE)
1359 registry->RegisterBooleanPref(kPrefHasAcceptedComposeConsent, false);
Anthony Cui1f26306a2024-01-08 18:19:481360 registry->RegisterBooleanPref(kAutofillAssistanceEnabled, false);
Anthony Cui74262132024-01-04 20:29:581361#endif
Side Yilmazcdc4cd92024-01-08 14:28:361362
1363 // Deprecated 01/2024.
1364 registry->RegisterTimePref(kSyncedLastTimePasswordCheckCompleted,
1365 base::Time());
Lily Chenf7aa1fc2024-01-09 16:25:051366
1367 // Deprecated 01/2024.
1368 registry->RegisterBooleanPref(kDownloadBubbleIphSuppression, false);
Andrea Orru162346b2024-01-12 10:24:451369
Nicholas Hollingum8cef1a72024-01-17 23:12:511370// Deprecated 01/2024.
Andrea Orru162346b2024-01-12 10:24:451371#if BUILDFLAG(IS_CHROMEOS_ASH)
1372 registry->RegisterDictionaryPref(kPersistedSystemExtensions);
Nicholas Hollingum8cef1a72024-01-17 23:12:511373 registry->RegisterStringPref(kBorealisVmTokenHash, "");
Andrea Orru162346b2024-01-12 10:24:451374#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Daniel Murphy93abb662024-01-25 17:11:141375
1376 // Deprecated 01/2024.
1377 registry->RegisterIntegerPref(kNtpShownPage, 0);
1378 registry->RegisterListPref(kNtpAppPageNames);
Ian Kilpatrick3990a492024-01-26 00:31:551379
1380 // Deprecated 01/2024.
1381#if BUILDFLAG(IS_WIN)
1382 registry->RegisterListPref(kSearchResultsPagePrimaryFontsPref);
1383 registry->RegisterListPref(kSearchResultsPageFallbackFontsPref);
1384#endif
Jiaming Chengbdc479b2024-01-29 21:47:301385
1386 // Deprecated 01/2024.
1387#if BUILDFLAG(IS_CHROMEOS_ASH)
1388 registry->RegisterIntegerPref(kUpdateNotificationLastShownMilestone, -10);
1389#endif
Viktor Semeniuk02ce9b82024-02-05 12:11:071390
1391 // Deprecated 02/2024.
1392#if BUILDFLAG(IS_ANDROID)
1393 registry->RegisterBooleanPref(kSavePasswordsSuspendedByError, false);
1394#endif
Daniel Rubery0d9dc312024-02-06 02:21:371395 registry->RegisterBooleanPref(kSafeBrowsingDeepScanPromptSeen, false);
1396 registry->RegisterTimePref(kSafeBrowsingEsbEnabledTimestamp, base::Time());
David Blackdf74125d22024-02-12 19:00:051397
1398// Deprecated 02/2024.
1399#if BUILDFLAG(IS_CHROMEOS_ASH)
1400 for (const char* pref : kWelcomeTourTimeBucketsOfFirstInteractions) {
1401 registry->RegisterIntegerPref(pref, -1);
1402 }
1403#endif
Mikel Astizd848587f2023-10-02 09:28:031404}
1405
1406void ClearSyncRequestedPrefAndMaybeMigrate(PrefService* profile_prefs) {
1407#if BUILDFLAG(IS_CHROMEOS_ASH)
1408 // On Ash specifically, if `kSyncRequested` was set to false explicitly, the
1409 // value needs to be migrated to syncer::internal::kSyncDisabledViaDashboard.
1410 if (profile_prefs->GetUserPrefValue(kSyncRequested) != nullptr &&
1411 !profile_prefs->GetUserPrefValue(kSyncRequested)->GetBool()) {
1412 profile_prefs->SetBoolean(
1413 syncer::prefs::internal::kSyncDisabledViaDashboard, true);
1414 }
1415#endif
1416 profile_prefs->ClearPref(kSyncRequested);
Osama Fathy592e239a2023-02-02 15:26:131417}
Rushan Suleymanov95b36922023-08-03 17:17:411418
[email protected]572f40c9b2012-07-06 20:35:331419} // namespace
1420
John Palmer1e70a002023-08-15 02:20:341421std::string GetCountry() {
1422 if (!g_browser_process || !g_browser_process->variations_service()) {
1423 // This should only happen in tests. Ideally this would be guarded by
1424 // CHECK_IS_TEST, but that is not set on Android, so no specific guard.
1425 return std::string();
1426 }
1427 return std::string(
1428 g_browser_process->variations_service()->GetStoredPermanentCountry());
1429}
1430
[email protected]4082306d92013-02-21 14:51:011431void RegisterLocalState(PrefRegistrySimple* registry) {
Chris Hamilton65c41312020-06-10 13:14:401432 // Call outs to individual subsystems that register Local State (browser-wide)
1433 // prefs en masse. See RegisterProfilePrefs for per-profile prefs. Please
1434 // keep this list alphabetized.
Amanda Lin Dietz8864d302023-06-26 18:36:391435#if BUILDFLAG(IS_ANDROID)
1436 accessibility::AccessibilityPrefsController::RegisterLocalStatePrefs(
1437 registry);
1438#endif
Jesse McKenna0d767592023-11-03 19:31:521439 breadcrumbs::RegisterPrefs(registry);
[email protected]b1de2c72013-02-06 02:45:471440 browser_shutdown::RegisterPrefs(registry);
[email protected]b1de2c72013-02-06 02:45:471441 BrowserProcessImpl::RegisterPrefs(registry);
Chris Palmerac7d75642017-11-22 20:12:541442 ChromeContentBrowserClient::RegisterLocalStatePrefs(registry);
Elaine Chienf8d13692021-07-26 23:05:561443 chrome_labs_prefs::RegisterLocalStatePrefs(registry);
[email protected]4a55a712014-06-08 16:50:341444 ChromeMetricsServiceClient::RegisterPrefs(registry);
Dominique Fauteux-Chapleau0e897db02021-04-19 18:42:221445 chrome::enterprise_util::RegisterLocalStatePrefs(registry);
sorinebcfc8dd2016-08-12 21:57:181446 component_updater::RegisterPrefs(registry);
Alex Chen9e56f7352023-01-20 22:56:151447 domain_reliability::RegisterPrefs(registry);
Mugdha Lakhanida851fd2021-03-16 18:21:021448 embedder_support::OriginTrialPrefs::RegisterPrefs(registry);
Og Astorga3089fd82021-09-21 00:02:371449 enterprise_reporting::RegisterLocalStatePrefs(registry);
[email protected]b1de2c72013-02-06 02:45:471450 ExternalProtocolHandler::RegisterPrefs(registry);
sdefresne8593e6432015-12-01 12:38:081451 flags_ui::PrefServiceFlagsStorage::RegisterPrefs(registry);
[email protected]e6933d2a2013-03-12 22:32:211452 GpuModeManager::RegisterPrefs(registry);
Miyoung Shin23737f62019-07-23 15:43:311453 signin::IdentityManager::RegisterLocalStatePrefs(registry);
Anthony Vallee-Dubois43fded9702020-06-19 16:30:381454 invalidation::FCMInvalidationService::RegisterPrefs(registry);
Maksim Moskvitinf5f5f736c2021-01-12 12:13:281455 invalidation::InvalidatorRegistrarWithMemory::RegisterPrefs(registry);
1456 invalidation::PerUserTopicSubscriptionManager::RegisterPrefs(registry);
Anthony Vallee-Dubois6f993122018-09-17 16:13:281457 language::GeoLanguageProvider::RegisterLocalStatePrefs(registry);
Alexandre Frechette38f4ef92019-02-25 16:31:571458 language::UlpLanguageCodeLocator::RegisterLocalStatePrefs(registry);
Sebastien Marchand5a63997a2019-09-27 19:15:341459 memory::EnterpriseMemoryLimitPrefObserver::RegisterPrefs(registry);
Roger McFarlane1c1147ae2022-11-07 17:25:171460 metrics::RegisterDemographicsLocalStatePrefs(registry);
[email protected]d0ab865b2014-06-04 19:41:341461 network_time::NetworkTimeTracker::RegisterPrefs(registry);
rajendrant5fb61c52022-11-21 19:42:551462 optimization_guide::prefs::RegisterLocalStatePrefs(registry);
Tonko Sabolčec6f271d32018-08-17 14:35:471463 password_manager::PasswordManager::RegisterLocalPrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101464 policy::BrowserPolicyConnector::RegisterPrefs(registry);
Jayee7b9b6df2023-07-31 16:39:241465 policy::LocalTestPolicyProvider::RegisterLocalStatePrefs(registry);
Yann Dago9c1e19512022-02-28 22:27:311466 policy::ManagementService::RegisterLocalStatePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101467 policy::PolicyStatisticsCollector::RegisterPrefs(registry);
[email protected]b1de2c72013-02-06 02:45:471468 PrefProxyConfigTrackerImpl::RegisterPrefs(registry);
Thomas Tanglc67ace42019-06-07 19:31:501469 ProfileAttributesEntry::RegisterLocalStatePrefs(registry);
Alex Ilinbb08a0d2021-07-08 09:37:241470 ProfileAttributesStorage::RegisterPrefs(registry);
Nick Harper030046f2019-09-05 23:36:091471 ProfileNetworkContextService::RegisterLocalStatePrefs(registry);
[email protected]de71ae992013-07-18 03:30:381472 profiles::RegisterPrefs(registry);
Illia Klimov4b72378ed2022-07-18 13:46:571473#if BUILDFLAG(IS_ANDROID)
1474 PushMessagingServiceImpl::RegisterPrefs(registry);
1475#endif
[email protected]ceafc462013-11-04 12:26:031476 RegisterScreenshotPrefs(registry);
Luke Zielinski63784cd2018-05-22 14:08:161477 safe_browsing::RegisterLocalStatePrefs(registry);
Ayu Ishiifbb1fad2020-06-22 20:15:071478 secure_origin_allowlist::RegisterPrefs(registry);
Min Qinc4012282022-04-15 16:53:581479 segmentation_platform::SegmentationPlatformService::RegisterLocalStatePrefs(
1480 registry);
Xiaohan Wangae7f9182022-01-16 00:37:521481#if !BUILDFLAG(IS_ANDROID)
Reilly Grantbfc2ab72021-06-02 23:57:301482 SerialPolicyAllowedPorts::RegisterPrefs(registry);
Matt Reynolds1914ff6b2022-02-04 08:48:261483 HidPolicyAllowedDevices::RegisterLocalStatePrefs(registry);
Reilly Grantbfc2ab72021-06-02 23:57:301484#endif
Mikel Astizf61f4ba02018-06-01 10:50:191485 sessions::SessionIdGenerator::RegisterPrefs(registry);
Ryan Sleevi4689ad32018-04-16 19:09:051486 SSLConfigServiceManager::RegisterPrefs(registry);
Michael Giuffridab41fa5c42017-11-13 23:30:571487 subresource_filter::IndexedRulesetVersion::RegisterPrefs(registry);
Matt Menke4dfb375c2018-06-13 18:06:311488 SystemNetworkContextManager::RegisterPrefs(registry);
Patricia Alfonsoc6f40b5c2023-09-14 21:02:431489 tpcd::experiment::RegisterLocalStatePrefs(registry);
Oksana Zhuravlova58c85282022-06-14 20:24:281490 tracing::RegisterPrefs(registry);
wafflesd2d9a332016-04-09 01:59:571491 update_client::RegisterPrefs(registry);
Michael Giuffridab41fa5c42017-11-13 23:30:571492 variations::VariationsService::RegisterPrefs(registry);
[email protected]cc36c2c2012-03-01 00:57:341493
Chris Hamilton65c41312020-06-10 13:14:401494 // Individual preferences. If you have multiple preferences that should
1495 // clearly be grouped together, please group them together into a helper
1496 // function called above. Please keep this list alphabetized.
1497 registry->RegisterBooleanPref(
1498 policy::policy_prefs::kIntensiveWakeUpThrottlingEnabled, false);
Aaron Tagliaboschi8f3a28302020-06-24 03:08:261499 registry->RegisterBooleanPref(
Matt Reichhoff2f190122021-11-02 19:28:191500 policy::policy_prefs::kUserAgentClientHintsGREASEUpdateEnabled, true);
Xiaohan Wangae7f9182022-01-16 00:37:521501#if BUILDFLAG(IS_ANDROID)
Rakina Zata Amnic123bd22020-07-31 19:08:391502 registry->RegisterBooleanPref(policy::policy_prefs::kBackForwardCacheEnabled,
1503 true);
Andrea Gomezf2316d92023-07-19 16:30:571504 registry->RegisterBooleanPref(policy::policy_prefs::kReadAloudEnabled, true);
Xiaohan Wangae7f9182022-01-16 00:37:521505#endif // BUILDFLAG(IS_ANDROID)
Chris Hamilton65c41312020-06-10 13:14:401506
1507 // Below this point is for platform-specific and compile-time conditional
1508 // calls. Please follow the helper-function-first-then-direct-calls pattern
1509 // established above, and keep things alphabetized.
1510
Denis Kuznetsov32099f32017-12-15 14:04:571511#if BUILDFLAG(ENABLE_BACKGROUND_MODE)
Michael Giuffridab41fa5c42017-11-13 23:30:571512 BackgroundModeManager::RegisterPrefs(registry);
1513#endif
1514
Xiaohan Wangae7f9182022-01-16 00:37:521515#if BUILDFLAG(IS_ANDROID)
Mark Pearsonee17df912017-04-27 21:51:041516 ::android::RegisterPrefs(registry);
Sky Maliced8eb4302020-08-03 05:46:441517
Sky Malicef7dd9422020-10-26 22:12:401518 registry->RegisterIntegerPref(first_run::kTosDialogBehavior, 0);
Yu Su4d459862021-04-15 04:19:541519 registry->RegisterBooleanPref(lens::kLensCameraAssistedSearchEnabled, true);
Xiaohan Wangae7f9182022-01-16 00:37:521520#else // BUILDFLAG(IS_ANDROID)
Nasser Al-shawwa067cc3712023-03-01 17:55:391521 enterprise_connectors::RegisterLocalStatePrefs(registry);
johnme627dc8c72016-08-19 21:49:391522 gcm::RegisterPrefs(registry);
Peter Kvitek6567a8a3a2023-01-31 01:03:571523 headless::RegisterPrefs(registry);
Tommy Lid5b7c22b2020-10-28 01:26:511524 IntranetRedirectDetector::RegisterPrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101525 media_router::RegisterLocalStatePrefs(registry);
Michael Giuffridab41fa5c42017-11-13 23:30:571526 metrics::TabStatsTracker::RegisterPrefs(registry);
Anthony Vallee-Dubois2b822262022-04-25 19:31:441527 performance_manager::user_tuning::prefs::RegisterLocalStatePrefs(registry);
Michael Giuffridab41fa5c42017-11-13 23:30:571528 RegisterBrowserPrefs(registry);
Jack Yammine1aae2ba2023-12-16 06:56:361529 SearchEngineChoiceClientSideTrial::RegisterLocalStatePrefs(registry);
Amanda Deacon9535c972021-04-29 04:26:511530 speech::SodaInstaller::RegisterLocalStatePrefs(registry);
Michael Giuffridab41fa5c42017-11-13 23:30:571531 StartupBrowserCreator::RegisterLocalStatePrefs(registry);
1532 task_manager::TaskManagerInterface::RegisterPrefs(registry);
thestigd75ce5532015-10-05 22:08:341533 UpgradeDetector::RegisterPrefs(registry);
rbpotter73c13252021-07-16 21:29:341534 WhatsNewUI::RegisterLocalStatePrefs(registry);
Xiaohan Wangae7f9182022-01-16 00:37:521535#endif // BUILDFLAG(IS_ANDROID)
[email protected]3954f332012-02-25 02:51:541536
Nicolas Dossou-Gbete7ccc8802022-11-10 15:12:461537#if BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(ENABLE_DICE_SUPPORT)
1538 FirstRunService::RegisterLocalStatePrefs(registry);
Nicolas Dossou-Gbete2804a372022-11-09 17:25:351539#endif
1540
Yuta Hijikata31a359c2020-11-27 07:50:261541#if BUILDFLAG(IS_CHROMEOS_ASH)
Shao-Chuan Lee85a46992019-03-05 04:46:151542 arc::prefs::RegisterLocalStatePrefs(registry);
[email protected]8304f61a2014-05-24 12:17:331543 ChromeOSMetricsProvider::RegisterPrefs(registry);
Henrique Ferreiro7a4401aa2022-11-11 21:37:331544 ash::ArcKioskAppManager::RegisterPrefs(registry);
Henrique Ferreiro3d9d93d2021-02-19 22:17:391545 ash::AudioDevicesPrefHandlerImpl::RegisterPrefs(registry);
Michal Mazur55ab4f52023-10-19 11:18:001546 ash::carrier_lock::CarrierLockManager::RegisterLocalPrefs(registry);
Yeunjoo Choicd4cc5382021-03-25 08:50:491547 ash::cert_provisioning::RegisterLocalStatePrefs(registry);
Yeunjoo Choi6c99c4d2022-08-08 03:11:111548 ash::CellularESimProfileHandlerImpl::RegisterLocalStatePrefs(registry);
1549 ash::ManagedCellularPrefHandler::RegisterLocalStatePrefs(registry);
Henrique Ferreirocddc8012021-03-26 00:47:151550 ash::ChromeUserManagerImpl::RegisterPrefs(registry);
Yuta Hijikata82c304ff2021-04-30 19:24:571551 crosapi::browser_util::RegisterLocalStatePrefs(registry);
Yeunjoo Choi47a6a142022-02-11 02:35:231552 ash::CupsPrintersManager::RegisterLocalStatePrefs(registry);
Yuta Hijikata368cc4b92021-12-23 07:39:101553 ash::BrowserDataMigratorImpl::RegisterLocalStatePrefs(registry);
Henrique Ferreirobbaee882022-09-08 07:15:551554 ash::bluetooth_config::BluetoothPowerControllerImpl::RegisterLocalStatePrefs(
1555 registry);
1556 ash::bluetooth_config::DeviceNameManagerImpl::RegisterLocalStatePrefs(
Gordon Setob2b7c7bc2021-10-12 17:42:551557 registry);
Henrique Ferreirod71de902021-05-10 18:57:111558 ash::DemoModeResourcesRemover::RegisterLocalStatePrefs(registry);
1559 ash::DemoSession::RegisterLocalStatePrefs(registry);
1560 ash::DemoSetupController::RegisterLocalStatePrefs(registry);
Henrique Ferreiro7967dce2021-09-23 11:37:471561 ash::DeviceNameStore::RegisterLocalStatePrefs(registry);
Anthony Vallee-Dubois85edf222020-03-24 20:30:021562 chromeos::DeviceOAuth2TokenStoreChromeOS::RegisterPrefs(registry);
Yeunjoo Choid461f872021-03-11 06:52:191563 ash::device_settings_cache::RegisterPrefs(registry);
Henrique Ferreirod1c3fe72021-05-14 13:26:151564 ash::EnableAdbSideloadingScreen::RegisterPrefs(registry);
Hirthanan Subenderan088f7322023-09-20 15:10:291565 ash::report::ReportController::RegisterPrefs(registry);
Yeunjoo Choif3fe34c2022-11-04 02:02:301566 ash::EnableDebuggingScreenHandler::RegisterPrefs(registry);
Yeunjoo Choid0b242f2022-07-28 02:23:021567 ash::FastTransitionObserver::RegisterPrefs(registry);
Danila Kuzmin90a42f02021-12-08 14:00:161568 ash::HWDataUsageController::RegisterLocalStatePrefs(registry);
Yeunjoo Choi4530b1792021-05-10 02:32:271569 ash::KerberosCredentialsManager::RegisterLocalStatePrefs(registry);
Edman Anjos0f2ad562023-11-08 10:40:491570 ash::KioskChromeAppManager::RegisterLocalStatePrefs(registry);
Emmanuel Arias Soto24bf9f32024-01-31 13:27:421571 ash::KioskSystemSession::RegisterLocalStatePrefs(registry);
Henrique Ferreiro26ed25a2021-02-01 21:59:291572 ash::KioskCryptohomeRemover::RegisterPrefs(registry);
Henrique Ferreirodef18c22021-11-04 19:36:001573 ash::language_prefs::RegisterPrefs(registry);
Henrique Ferreiro234c7dff2022-09-08 02:44:541574 ash::local_search_service::SearchMetricsReporter::RegisterLocalStatePrefs(
1575 registry);
Henrique Ferreirob403be32021-09-22 07:15:361576 ash::login::SecurityTokenSessionController::RegisterLocalStatePrefs(registry);
Ahmed Nasrbe0670b72022-03-09 23:28:171577 ash::reporting::LoginLogoutReporter::RegisterPrefs(registry);
Marc Grimme803938832024-01-11 15:41:581578 ash::reporting::RegisterLocalStatePrefs(registry);
Yeunjoo Choi6c99c4d2022-08-08 03:11:111579 ash::NetworkMetadataStore::RegisterPrefs(registry);
Henrique Ferreiroe2cbaaf2022-01-10 15:02:231580 ash::NetworkThrottlingObserver::RegisterPrefs(registry);
Yeunjoo Choic2000932021-06-10 01:54:081581 ash::PowerMetricsReporter::RegisterLocalStatePrefs(registry);
Henrique Ferreiroa8763b62021-10-13 18:37:531582 ash::platform_keys::KeyPermissionsManagerImpl::RegisterLocalStatePrefs(
Omar Morsi4febb4d2020-10-30 07:55:211583 registry);
Yeunjoo Choif3c7e402021-06-04 04:28:561584 ash::power::auto_screen_brightness::MetricsReporter::RegisterLocalStatePrefs(
1585 registry);
Henrique Ferreiro4b21d142021-11-10 11:47:371586 ash::Preferences::RegisterPrefs(registry);
Henrique Ferreirod1c3fe72021-05-14 13:26:151587 ash::ResetScreen::RegisterPrefs(registry);
Behnood Momenzadeh1684ef642024-01-30 09:35:451588 settings::ResetSettingsHandler::RegisterLocalStatePrefs(registry);
Henrique Ferreiro4b21d142021-11-10 11:47:371589 ash::SchedulerConfigurationManager::RegisterLocalStatePrefs(registry);
Yeunjoo Choicf61fba2021-04-23 02:43:091590 ash::ServicesCustomizationDocument::RegisterPrefs(registry);
Yuta Hijikata4538fc02023-09-26 15:19:551591 ash::standalone_browser::migrator_util::RegisterLocalStatePrefs(registry);
Henrique Ferreirob403be32021-09-22 07:15:361592 ash::StartupUtils::RegisterPrefs(registry);
Yeunjoo Choid461f872021-03-11 06:52:191593 ash::StatsReportingController::RegisterLocalStatePrefs(registry);
Yeunjoo Choi03b09c62021-02-18 21:40:051594 ash::system::AutomaticRebootManager::RegisterPrefs(registry);
Yeunjoo Choi953a4c32021-10-15 05:20:441595 ash::TimeZoneResolver::RegisterPrefs(registry);
Henrique Ferreirocddc8012021-03-26 00:47:151596 ash::UserImageManager::RegisterPrefs(registry);
Henrique Ferreirod70b5c22021-04-30 10:55:271597 ash::UserSessionManager::RegisterPrefs(registry);
Henrique Ferreiro26ed25a2021-02-01 21:59:291598 ash::WebKioskAppManager::RegisterPrefs(registry);
Xiaochu Liu48ab5932018-05-11 03:44:041599 component_updater::MetadataTable::RegisterPrefs(registry);
Henrique Ferreirob902d6c2021-10-14 19:55:441600 ash::CryptAuthDeviceIdProviderImpl::RegisterLocalPrefs(registry);
[email protected]5a145e82014-05-29 22:19:071601 extensions::ExtensionAssetsManagerChromeOS::RegisterPrefs(registry);
Aya ElAttarb4f7a5f2020-03-05 00:47:241602 extensions::ExtensionsPermissionsTracker::RegisterLocalStatePrefs(registry);
tbarzicd9a88fc92017-07-14 02:18:101603 extensions::lock_screen_data::LockScreenItemStorage::RegisterLocalState(
1604 registry);
Jit Yao Yap8e247322019-06-24 16:56:591605 extensions::login_api::RegisterLocalStatePrefs(registry);
stevenjbf22f82e2016-10-26 21:47:381606 ::onc::RegisterPrefs(registry);
Jana Grill784b1e52020-06-26 18:22:121607 policy::AdbSideloadingAllowanceModePolicyHandler::RegisterPrefs(registry);
Sergiy Belozorov757bc002023-03-13 19:13:191608 // TODO(b/265923216): Replace with EnrollmentStateFetcher::RegisterPrefs.
Pavol Marko35bcf1a2018-05-23 15:33:071609 policy::AutoEnrollmentClientImpl::RegisterPrefs(registry);
Yeunjoo Choi7227dba2021-08-04 06:35:471610 policy::BrowserPolicyConnectorAsh::RegisterPrefs(registry);
Ashutosh Singhal96d051012023-07-26 11:00:491611 policy::CrdAdminSessionController::RegisterLocalStatePrefs(registry);
Yeunjoo Choiead8b3c2021-07-27 08:08:191612 policy::DeviceCloudPolicyManagerAsh::RegisterPrefs(registry);
[email protected]b1de2c72013-02-06 02:45:471613 policy::DeviceStatusCollector::RegisterPrefs(registry);
Nikita Podguzov72c21f02019-06-17 14:48:411614 policy::DeviceWallpaperImageExternalDataHandler::RegisterPrefs(registry);
rsorokin3c13ece2017-01-16 15:58:411615 policy::DMTokenStorage::RegisterPrefs(registry);
Sergey Poromovd6575a0b2020-05-19 21:41:091616 policy::EnrollmentRequisitionManager::RegisterPrefs(registry);
Saurabh Nijhara839c17c2020-05-19 00:18:291617 policy::MinimumVersionPolicyHandler::RegisterPrefs(registry);
Anatoliy Potapchuka460bc12021-11-05 19:23:101618 policy::EuiccStatusUploader::RegisterLocalStatePrefs(registry);
Andreea Costinasc4b76ff2019-04-11 15:52:131619 policy::TPMAutoUpdateModePolicyHandler::RegisterPrefs(registry);
glevin5dd01a72016-03-23 23:08:121620 quirks::QuirksManager::RegisterPrefs(registry);
Roman Aleksandrovd32e34e72019-05-22 17:29:501621 UpgradeDetectorChromeos::RegisterPrefs(registry);
James Hawkins225001cf2020-09-18 16:04:341622 RegisterNearbySharingLocalPrefs(registry);
Yuta Hijikata31a359c2020-11-27 07:50:261623#endif // BUILDFLAG(IS_CHROMEOS_ASH)
[email protected]b6366ffa2012-02-29 17:12:261624
Xiaohan Wangae7f9182022-01-16 00:37:521625#if BUILDFLAG(IS_CHROMEOS)
Erik Chen643355d2022-04-22 05:44:491626 chromeos::echo_offer::RegisterPrefs(registry);
Kuo-Hsin Yang40227972022-05-16 18:39:091627 memory::OOMKillsMonitor::RegisterPrefs(registry);
Ben Franz73537362021-11-08 11:53:401628 policy::SystemFeaturesDisableListPolicyHandler::RegisterPrefs(registry);
Alvin Lee99f8d9a82021-11-18 18:45:551629 policy::DlpRulesManagerImpl::RegisterPrefs(registry);
Xiaohan Wangae7f9182022-01-16 00:37:521630#endif // BUILDFLAG(IS_CHROMEOS)
Ben Franz73537362021-11-08 11:53:401631
Xiaohan Wangae7f9182022-01-16 00:37:521632#if BUILDFLAG(IS_MAC)
[email protected]b1de2c72013-02-06 02:45:471633 confirm_quit::RegisterLocalState(registry);
[email protected]425f7a02014-04-29 01:51:441634 QuitWithAppsController::RegisterPrefs(registry);
Henrik Grunelle11045a2019-04-12 09:27:271635 system_media_permissions::RegisterSystemMediaPermissionStatesPrefs(registry);
Christopher Cameron81f442e2019-11-14 06:50:141636 AppShimRegistry::Get()->RegisterLocalPrefs(registry);
[email protected]b6366ffa2012-02-29 17:12:261637#endif
[email protected]bdb8a1e2013-10-03 08:14:001638
Erik Chen38ceca082020-12-16 01:31:351639#if BUILDFLAG(IS_CHROMEOS_LACROS)
Alex Ilin953f1092021-11-26 15:49:101640 AccountCache::RegisterLocalStatePrefs(registry);
Erik Chen38ceca082020-12-16 01:31:351641 lacros_prefs::RegisterLocalStatePrefs(registry);
Polina Bondarenko3f3dc4f2022-04-25 07:55:011642 KioskSessionServiceLacros::RegisterLocalStatePrefs(registry);
Erik Chen38ceca082020-12-16 01:31:351643#endif
1644
Xiaohan Wangae7f9182022-01-16 00:37:521645#if BUILDFLAG(IS_WIN)
Will Harris265b3942019-10-21 01:01:331646 OSCrypt::RegisterLocalPrefs(registry);
Will Harris956e0ca2019-08-23 20:47:391647 registry->RegisterBooleanPref(prefs::kRendererCodeIntegrityEnabled, true);
Will Harrisf09e40d2022-06-02 21:15:401648 registry->RegisterBooleanPref(prefs::kRendererAppContainerEnabled, true);
Stefan Smolenfd3965b2021-08-17 19:27:181649 registry->RegisterBooleanPref(prefs::kBlockBrowserLegacyExtensionPoints,
1650 true);
David Bienvenu554a2592020-02-13 20:20:541651 registry->RegisterBooleanPref(
1652 policy::policy_prefs::kNativeWindowOcclusionEnabled, true);
Xiaohan Wang259f34c7a2022-03-26 23:18:191653 MediaFoundationServiceMonitor::RegisterPrefs(registry);
Will Harriseb364b2c2022-06-23 00:49:011654 os_crypt::RegisterLocalStatePrefs(registry);
Nico Webereaa08412019-08-14 01:24:371655#if BUILDFLAG(GOOGLE_CHROME_BRANDING)
Patrick Monettef8fd8b22018-05-10 20:58:041656 IncompatibleApplicationsUpdater::RegisterLocalStatePrefs(registry);
Patrick Monette6b7c475b2018-06-12 14:58:081657 ModuleDatabase::RegisterLocalStatePrefs(registry);
Patrick Monettee31f63e22018-06-06 00:10:341658 ThirdPartyConflictsManager::RegisterLocalStatePrefs(registry);
Nico Webereaa08412019-08-14 01:24:371659#endif // BUILDFLAG(GOOGLE_CHROME_BRANDING)
Xiaohan Wangae7f9182022-01-16 00:37:521660#endif // BUILDFLAG(IS_WIN)
[email protected]ceafc462013-11-04 12:26:031661
Georg Neisf11427f92024-02-02 01:27:461662#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS)
1663 downgrade::RegisterPrefs(registry);
1664#endif
1665
Xiaohan Wangae7f9182022-01-16 00:37:521666#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
Lei Zhang92c15542020-01-10 17:05:101667 RegisterDefaultBrowserPromptPrefs(registry);
Anthony Vallee-Dubois85edf222020-03-24 20:30:021668 DeviceOAuth2TokenStoreDesktop::RegisterPrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101669#endif
1670
Ramin Halavati52a9a292022-04-28 04:27:491671#if BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
Ramin Halavati69bf7752022-04-04 09:58:151672 screen_ai::RegisterLocalStatePrefs(registry);
Ramin Halavati52a9a292022-04-28 04:27:491673#endif // BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
Ramin Halavati69bf7752022-04-04 09:58:151674
Igor Ruvinov13e658e2022-12-13 03:15:201675#if BUILDFLAG(IS_WIN)
1676 PlatformAuthPolicyObserver::RegisterPrefs(registry);
1677#endif // BUILDFLAG(IS_WIN)
1678
Alan Screen661060f82023-11-20 19:58:561679 // Platform-specific and compile-time conditional individual preferences.
1680 // If you have multiple preferences that should clearly be grouped together,
1681 // please group them together into a helper function called above. Please
1682 // keep this list alphabetized.
1683
1684#if BUILDFLAG(ENABLE_OOP_PRINTING)
1685 registry->RegisterBooleanPref(prefs::kOopPrintDriversAllowedByPolicy, true);
1686#endif
1687
Peter Kvitek82f9e1e2024-02-07 22:19:041688#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN)
1689 registry->RegisterBooleanPref(prefs::kChromeForTestingAllowed, true);
1690#endif
1691
Chris Hamilton65c41312020-06-10 13:14:401692 // This is intentionally last.
Lei Zhangb76b80e32020-04-08 16:58:161693 RegisterLocalStatePrefsForMigration(registry);
[email protected]9acc48602009-11-30 21:18:511694}
initial.commit09911bf2008-07-26 23:55:291695
[email protected]37ca3fe02013-07-05 15:32:441696// Register prefs applicable to all profiles.
Xi Han25a7f032019-04-18 21:44:211697void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
1698 const std::string& locale) {
rkaplow058da3132015-02-19 18:18:381699 TRACE_EVENT0("browser", "chrome::RegisterProfilePrefs");
[email protected]2a5f29632012-11-26 17:17:551700 // User prefs. Please keep this list alphabetized.
Dominic Mazzoni21fb0282019-02-13 18:32:471701 AccessibilityLabelsService::RegisterProfilePrefs(registry);
James Wallace-Lee25a1b052018-07-24 00:06:311702 AccessibilityUIMessageHandler::RegisterProfilePrefs(registry);
Xing Liu7252b8d2020-01-22 22:12:471703 AnnouncementNotificationService::RegisterProfilePrefs(registry);
Moe Ahmadi173b0a2b2018-08-03 17:35:511704 autofill::prefs::RegisterProfilePrefs(registry);
Bernhard Bauer19190732017-09-28 09:03:331705 browsing_data::prefs::RegisterBrowserUserPrefs(registry);
Simon Hangl2d73e742023-06-16 16:52:471706 capture_policy::RegisterProfilePrefs(registry);
Doug Turner9e79cf0c2018-04-05 21:32:301707 certificate_transparency::prefs::RegisterPrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441708 ChromeContentBrowserClient::RegisterProfilePrefs(registry);
Elaine Chien07f137d2021-01-14 02:57:211709 chrome_labs_prefs::RegisterProfilePrefs(registry);
Livvie Lin9141d0f132020-03-23 22:47:041710 ChromeLocationBarModelDelegate::RegisterProfilePrefs(registry);
Colin Blundell7657b402020-02-25 09:46:501711 StatefulSSLHostStateDelegate::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441712 ChromeVersionService::RegisterProfilePrefs(registry);
Eric Secklera5c24e12018-11-28 16:09:201713 chrome_browser_net::NetErrorTabHelper::RegisterProfilePrefs(registry);
[email protected]06690dc2014-03-07 08:44:001714 chrome_prefs::RegisterProfilePrefs(registry);
Matt Jones704e1a62022-09-20 16:28:241715 commerce::RegisterPrefs(registry);
Travis Skare27cee15c2018-07-19 14:34:131716 DocumentProvider::RegisterProfilePrefs(registry);
hmaree31cadf52022-11-09 22:32:551717 enterprise::RegisterIdentifiersProfilePrefs(registry);
Owen Min9867b162022-01-20 21:39:071718 enterprise_reporting::RegisterProfilePrefs(registry);
Katie D1ca4328b2020-02-19 18:08:471719 dom_distiller::DistilledPagePrefs::RegisterProfilePrefs(registry);
1720 dom_distiller::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441721 DownloadPrefs::RegisterProfilePrefs(registry);
Florian Jackya33ad152023-11-22 11:46:041722 permissions::PermissionHatsTriggerHelper::RegisterProfilePrefs(registry);
Moe Ahmadi656dd532021-10-06 21:59:181723 history_clusters::prefs::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441724 HostContentSettingsMap::RegisterProfilePrefs(registry);
Brandon Wylie6961a2e2018-09-19 23:03:371725 image_fetcher::ImageCache::RegisterProfilePrefs(registry);
Evan Stade7a984802020-12-14 19:10:151726 site_engagement::ImportantSitesUtil::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441727 IncognitoModePrefs::RegisterProfilePrefs(registry);
Maksim Moskvitinf5f5f736c2021-01-12 12:13:281728 invalidation::PerUserTopicSubscriptionManager::RegisterProfilePrefs(registry);
1729 invalidation::InvalidatorRegistrarWithMemory::RegisterProfilePrefs(registry);
Alexandre Frechette37edd93a2019-03-19 15:57:201730 language::LanguagePrefs::RegisterProfilePrefs(registry);
rajendrantff2361da2020-12-16 09:18:271731 login_detection::prefs::RegisterProfilePrefs(registry);
Joe DeBlasio59db500b2020-08-21 00:37:351732 lookalikes::RegisterProfilePrefs(registry);
Bryant Chandlerd638fb02023-11-03 23:40:171733 media_prefs::RegisterUserPrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441734 MediaCaptureDevicesDispatcher::RegisterProfilePrefs(registry);
Guido Urdaneta9f831c22023-06-22 13:44:341735 media_device_salt::MediaDeviceIDSalt::RegisterProfilePrefs(registry);
Becca Hughes6354b6b2017-08-31 22:01:551736 MediaEngagementService::RegisterProfilePrefs(registry);
John Rummelle5621c12017-09-05 23:52:101737 MediaStorageIdSalt::RegisterProfilePrefs(registry);
Mikel Astizf4226912020-10-19 19:10:371738 metrics::RegisterDemographicsProfilePrefs(registry);
Tom Anderson1ef51d032020-02-11 01:05:081739 NotificationDisplayServiceImpl::RegisterProfilePrefs(registry);
brettw1f92eed2016-12-07 01:12:581740 NotifierStateTracker::RegisterProfilePrefs(registry);
treibbb0c5af52016-12-09 17:34:151741 ntp_tiles::MostVisitedSites::RegisterProfilePrefs(registry);
Sophie Chang5ff4b942019-05-23 20:04:321742 optimization_guide::prefs::RegisterProfilePrefs(registry);
rajendrant19e545e2023-12-04 16:51:371743 optimization_guide::model_execution::prefs::RegisterProfilePrefs(registry);
[email protected]a8564212014-04-09 16:16:511744 password_manager::PasswordManager::RegisterProfilePrefs(registry);
anthonyvd6a43b932017-05-11 18:39:271745 payments::RegisterProfilePrefs(registry);
Anthony Vallee-Duboiscee55b12022-03-24 22:54:021746 performance_manager::user_tuning::prefs::RegisterProfilePrefs(registry);
Aisulu Rakhmetullinaac4afcb62023-07-05 18:10:041747 permissions::RegisterProfilePrefs(registry);
Evan Stade32d635a2020-04-03 18:51:251748 PermissionBubbleMediaAccessHandler::RegisterProfilePrefs(registry);
Sharon Yangc6706902018-07-16 13:06:191749 PlatformNotificationServiceImpl::RegisterProfilePrefs(registry);
Matt Reichhoff329eea7e2023-09-28 17:11:281750 plus_addresses::RegisterProfilePrefs(registry);
Aaron Colwellf94fd97a2020-07-21 19:37:081751 policy::URLBlocklistManager::RegisterProfilePrefs(registry);
Jayee07bb468c2023-06-01 18:25:311752 PolicyUI::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441753 PrefProxyConfigTrackerImpl::RegisterProfilePrefs(registry);
Simon Pelchate74bbb62021-12-03 23:57:551754 prefetch::RegisterPredictionOptionsProfilePrefs(registry);
Max Curran14dd7872023-03-20 19:57:361755 PrefetchOriginDecider::RegisterPrefs(registry);
Xi Han25a7f032019-04-18 21:44:211756 PrefsTabHelper::RegisterProfilePrefs(registry, locale);
harrisonsean04618302020-11-27 16:00:531757 privacy_sandbox::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441758 Profile::RegisterProfilePrefs(registry);
1759 ProfileImpl::RegisterProfilePrefs(registry);
Matt Menkecfef87d2017-08-03 13:03:061760 ProfileNetworkContextService::RegisterProfilePrefs(registry);
Javier Fernández García-Boente7966a892021-12-09 12:28:231761 custom_handlers::ProtocolHandlerRegistry::RegisterProfilePrefs(registry);
johnmecf2da0c2015-10-28 19:42:121762 PushMessagingAppIdentifier::RegisterProfilePrefs(registry);
Balazs Engedy715b0ec2019-12-04 15:11:451763 QuietNotificationPermissionUiState::RegisterProfilePrefs(registry);
[email protected]c753f142013-02-10 13:14:041764 RegisterBrowserUserPrefs(registry);
Evelynn Kaplan840e1c0e2024-02-01 00:47:271765 RegisterPrefersDefaultScrollbarStylesPrefs(registry);
Amanda Velasco Gallardo25f07362022-01-28 02:08:471766 safe_browsing::file_type::RegisterProfilePrefs(registry);
Luke Zielinski12ef88552017-06-23 15:36:271767 safe_browsing::RegisterProfilePrefs(registry);
Ryan Sturm010e2f52021-01-08 00:13:561768 SearchPrefetchService::RegisterProfilePrefs(registry);
Clark DuVall8236b6a82020-05-28 22:54:321769 blocked_content::SafeBrowsingTriggeredPopupBlocker::RegisterProfilePrefs(
1770 registry);
Carlos IL06e6c8c2020-07-28 00:25:191771 security_interstitials::InsecureFormBlockingPage::RegisterProfilePrefs(
1772 registry);
Shakti Sahu93bfba22021-06-17 18:05:211773 segmentation_platform::SegmentationPlatformService::RegisterProfilePrefs(
1774 registry);
Anastasia Helfinstein33187fd2023-01-27 03:06:071775 segmentation_platform::DeviceSwitcherResultDispatcher::RegisterProfilePrefs(
1776 registry);
[email protected]37ca3fe02013-07-05 15:32:441777 SessionStartupPref::RegisterProfilePrefs(registry);
Himanshu Jajubcf3b9292019-06-07 12:54:071778 SharingSyncPreference::RegisterProfilePrefs(registry);
Evan Stade89158192021-01-27 18:45:231779 site_engagement::SiteEngagementService::RegisterProfilePrefs(registry);
Ayu Ishii73a353d2022-07-07 21:56:421780 storage::RegisterProfilePrefs(registry);
Mikel Astiz0889b2be2018-09-25 16:20:411781 sync_sessions::SessionSyncPrefs::RegisterProfilePrefs(registry);
Jeffrey Cohen053be24d2019-07-23 23:44:051782 syncer::DeviceInfoPrefs::RegisterProfilePrefs(registry);
Bernhard Bauer19190732017-09-28 09:03:331783 syncer::SyncPrefs::RegisterProfilePrefs(registry);
Mikel Astiz89473c442021-07-13 09:46:121784 syncer::SyncTransportDataPrefs::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:441785 TemplateURLPrepopulateData::RegisterProfilePrefs(registry);
Patricia Alfonsoc6f40b5c2023-09-14 21:02:431786 tpcd::experiment::RegisterProfilePrefs(registry);
[email protected]e5e72cc2014-07-22 19:06:491787 translate::TranslatePrefs::RegisterProfilePrefs(registry);
Moe Ahmadi1266de82020-04-10 17:19:531788 omnibox::RegisterProfilePrefs(registry);
[email protected]855ebff2014-05-09 07:14:381789 ZeroSuggestProvider::RegisterProfilePrefs(registry);
[email protected]cc36c2c2012-03-01 00:57:341790
Nicolas MacBeth53fa8142023-06-20 15:06:091791#if !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
1792 promos_utils::RegisterProfilePrefs(registry);
1793#endif // !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
1794
Scott Violet53fb03c2021-01-15 23:48:161795#if BUILDFLAG(ENABLE_SESSION_SERVICE)
1796 RegisterSessionServiceLogProfilePrefs(registry);
Christian Dullweber0747d7c92021-05-10 10:05:131797 SessionDataService::RegisterProfilePrefs(registry);
Scott Violet53fb03c2021-01-15 23:48:161798#endif
1799
brettw00899e62016-11-12 02:10:171800#if BUILDFLAG(ENABLE_EXTENSIONS)
[email protected]17510602014-06-05 11:02:281801 ExtensionWebUI::RegisterProfilePrefs(registry);
je_julie.kim7fbb5a1a2015-02-09 17:26:051802 RegisterAnimationPolicyPrefs(registry);
mfoltz96f329c2016-01-13 18:16:581803 extensions::ActivityLog::RegisterProfilePrefs(registry);
tbarzicfa3c7ef62017-04-17 23:12:021804 extensions::AudioAPI::RegisterUserPrefs(registry);
mfoltz96f329c2016-01-13 18:16:581805 extensions::ExtensionPrefs::RegisterProfilePrefs(registry);
Devlin Cronin71f0f532018-04-26 16:35:061806 extensions::ExtensionsUI::RegisterProfilePrefs(registry);
Joel Hockeya9ccf0e2022-05-27 22:11:191807#if BUILDFLAG(IS_CHROMEOS_ASH)
1808 extensions::shared_storage::RegisterProfilePrefs(registry);
1809#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Emilia Paz363fa0062022-01-15 05:12:031810 extensions::PermissionsManager::RegisterProfilePrefs(registry);
afakhry2bd481832016-06-16 16:17:241811 extensions::RuntimeAPI::RegisterPrefs(registry);
Devlin Cronina997c8e2021-03-18 00:33:181812 // TODO(devlin): This would be more inline with the other calls here if it
1813 // were nested in either a class or separate namespace with a simple
1814 // Register[Profile]Prefs() name.
1815 extensions::RegisterSettingsOverriddenUiPrefs(registry);
Minh X. Nguyen3aa40692018-03-28 01:15:591816 update_client::RegisterProfilePrefs(registry);
brettw00899e62016-11-12 02:10:171817#endif // BUILDFLAG(ENABLE_EXTENSIONS)
[email protected]c2ac1dda2013-09-23 05:04:561818
Andy Phan99ccfb42022-11-29 18:57:071819#if BUILDFLAG(ENABLE_PDF)
1820 registry->RegisterListPref(prefs::kPdfLocalFileAccessAllowedForDomains,
1821 base::Value::List());
Hui Yingsta4a03ec82023-05-16 00:00:171822 registry->RegisterBooleanPref(prefs::kPdfUseSkiaRendererEnabled, true);
Andy Phan99ccfb42022-11-29 18:57:071823#endif // BUILDFLAG(ENABLE_PDF)
1824
Brett Wilson65f951c2016-11-03 22:06:121825#if BUILDFLAG(ENABLE_PRINT_PREVIEW)
Nicolas Ouellet-Payeur4dbdf1e52018-08-06 21:51:021826 printing::PolicySettings::RegisterProfilePrefs(registry);
Nikita Podguzov26222d12019-12-04 11:44:311827 printing::PrintPreviewStickySettings::RegisterProfilePrefs(registry);
bauerb4da36132014-12-26 19:53:131828#endif
1829
Lei Zhang92c15542020-01-10 17:05:101830#if BUILDFLAG(ENABLE_RLZ)
1831 ChromeRLZTrackerDelegate::RegisterProfilePrefs(registry);
1832#endif
1833
brettw9e85ef42016-11-01 21:01:241834#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
[email protected]6189ab72023-11-06 15:55:081835 supervised_user::RegisterProfilePrefs(registry);
bauerb4da36132014-12-26 19:53:131836#endif
1837
Jian Lic9a227c2022-02-28 22:55:441838#if BUILDFLAG(ENABLE_FEED_V2)
1839 feed::prefs::RegisterFeedSharedProfilePrefs(registry);
1840 feed::RegisterProfilePrefs(registry);
1841#endif
1842
Xiaohan Wangae7f9182022-01-16 00:37:521843#if BUILDFLAG(IS_ANDROID)
Lei Zhang92c15542020-01-10 17:05:101844 cdm::MediaDrmStorageImpl::RegisterProfilePrefs(registry);
Christopher Thompson2602fea2019-11-26 19:36:541845 KnownInterceptionDisclosureInfoBarDelegate::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101846 MediaDrmOriginIdManager::RegisterProfilePrefs(registry);
1847 NotificationChannelsProviderAndroid::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101848 ntp_tiles::PopularSitesImpl::RegisterProfilePrefs(registry);
1849 OomInterventionDecider::RegisterProfilePrefs(registry);
[email protected]084f82b2013-11-01 00:09:591850 PartnerBookmarksShim::RegisterProfilePrefs(registry);
Wolfgang Billenstein546bd4d72022-09-20 11:34:261851 permissions::GeolocationPermissionContextAndroid::RegisterProfilePrefs(
1852 registry);
Xing Liu0327d832020-05-15 21:07:031853 query_tiles::RegisterPrefs(registry);
Ian Wells5d248f012023-11-07 17:30:021854 readaloud::RegisterProfilePrefs(registry);
mvanouwerkerkc1751e02017-01-06 12:16:431855 RecentTabsPagePrefs::RegisterProfilePrefs(registry);
Patrick Noland87d9f842019-01-16 03:52:021856 usage_stats::UsageStatsBridge::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101857 variations::VariationsService::RegisterProfilePrefs(registry);
Ella Gebf864d372023-06-06 17:44:311858 webapps::InstallPromptPrefs::RegisterProfilePrefs(registry);
Jan Keitel98b2cc42022-09-20 05:38:391859#else // BUILDFLAG(IS_ANDROID)
Emily Shack670f745c2023-03-03 19:47:301860 bookmarks_webui::RegisterProfilePrefs(registry);
johnme627dc8c72016-08-19 21:49:391861 browser_sync::ForeignSessionHandler::RegisterProfilePrefs(registry);
Dana Fried68baeb002023-09-18 20:25:041862 BrowserFeaturePromoStorageService::RegisterProfilePrefs(registry);
evliuc5b5a722022-10-28 00:05:491863 captions::LiveTranslateController::RegisterProfilePrefs(registry);
dljames4b665b22023-09-21 19:35:081864 CartService::RegisterProfilePrefs(registry);
Nina Satragno8c832df2019-07-29 15:59:391865 ChromeAuthenticatorRequestDelegate::RegisterProfilePrefs(registry);
Matt Jones43bca672023-11-22 15:19:271866 commerce::CommerceUiTabHelper::RegisterProfilePrefs(registry);
Shakti Sahu05ea4e12023-03-28 07:33:101867 companion::PromoHandler::RegisterProfilePrefs(registry);
Anqing Zhao9595e482021-06-10 11:33:551868 DeviceServiceImpl::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101869 DevToolsWindow::RegisterProfilePrefs(registry);
Tibor Goldschwendt610d0372021-05-11 01:39:021870 DriveService::RegisterProfilePrefs(registry);
Dominique Fauteux-Chapleau130242bf2020-12-07 19:07:481871 enterprise_connectors::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101872 extensions::CommandService::RegisterProfilePrefs(registry);
1873 extensions::TabsCaptureVisibleTabFunction::RegisterProfilePrefs(registry);
gabdac09c03b2017-03-22 20:00:111874 first_run::RegisterProfilePrefs(registry);
johnme627dc8c72016-08-19 21:49:391875 gcm::RegisterProfilePrefs(registry);
Florian Jackya33ad152023-11-22 11:46:041876 HatsServiceDesktop::RegisterProfilePrefs(registry);
Tibor Goldschwendtf3a3ce92021-08-17 00:42:161877 NtpCustomBackgroundService::RegisterProfilePrefs(registry);
George Benz13da3df02022-01-14 00:03:521878 media_router::RegisterAccessCodeProfilePrefs(registry);
Derek Cheng23a01402018-07-24 13:38:141879 media_router::RegisterProfilePrefs(registry);
Tibor Goldschwendt53ca78b2020-10-07 19:56:181880 NewTabPageHandler::RegisterProfilePrefs(registry);
Tibor Goldschwendtbbdbe8f2021-05-20 19:27:391881 NewTabPageUI::RegisterProfilePrefs(registry);
Rohit Bhatia22e544f2021-10-05 15:32:261882 ntp::SafeBrowsingHandler::RegisterProfilePrefs(registry);
kristiparkc0199772018-07-18 05:25:421883 ntp_tiles::CustomLinksManagerImpl::RegisterProfilePrefs(registry);
Jeremy Selier730b56d32021-09-17 02:59:391884 PhotosService::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101885 PinnedTabCodec::RegisterProfilePrefs(registry);
Yann Dago44d6cc322022-07-13 17:46:251886 policy::DeveloperToolsPolicyHandler::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101887 PromoService::RegisterProfilePrefs(registry);
dljames4b665b22023-09-21 19:35:081888 RecipesService::RegisterProfilePrefs(registry);
Mark Schillaciba4a7322022-06-29 15:08:351889 RegisterReadAnythingProfilePrefs(registry);
Eduard Hez55d711f2023-07-12 12:10:071890 RegisterSafetyHubProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101891 settings::SettingsUI::RegisterProfilePrefs(registry);
Victor Hugo Vianna Silva3452787c2022-07-28 23:25:301892 send_tab_to_self::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101893 signin::RegisterProfilePrefs(registry);
tmartino6254f472016-11-21 01:22:561894 StartupBrowserCreator::RegisterProfilePrefs(registry);
Marlon Facey79d84f77b2024-02-08 18:49:431895 TabResumptionPageHandler::RegisterProfilePrefs(registry);
Taylor Bergquistc0109ac2023-11-18 01:10:041896 tab_organization_prefs::RegisterProfilePrefs(registry);
Roman Aroracd8462c2021-08-03 01:20:331897 tab_search_prefs::RegisterProfilePrefs(registry);
Roman Arorabc876bf2023-08-03 15:25:211898 ThemeColorPickerHandler::RegisterProfilePrefs(registry);
dljames4b665b22023-09-21 19:35:081899 toolbar::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:101900 UnifiedAutoplayConfig::RegisterProfilePrefs(registry);
Caroline Rising065085a22023-02-22 14:34:091901 user_notes::RegisterProfilePrefs(registry);
dljames4b665b22023-09-21 19:35:081902
Michael Martis8b35dd72023-01-26 01:07:471903#if !BUILDFLAG(IS_CHROMEOS_LACROS)
1904 captions::LiveCaptionController::RegisterProfilePrefs(registry);
1905#endif // !BUILDFLAG(IS_CHROMEOS_LACROS)
Xiaohan Wangae7f9182022-01-16 00:37:521906#endif // BUILDFLAG(IS_ANDROID)
mvanouwerkerk9f0f38a2016-06-08 14:11:441907
Xiaohan Wangae7f9182022-01-16 00:37:521908#if BUILDFLAG(IS_CHROMEOS)
Benjamin Gordon24cc3552023-11-29 01:03:431909 extensions::DocumentScanAPIHandler::RegisterProfilePrefs(registry);
Maria Petrisorbb5226b2022-06-02 09:10:511910 extensions::login_api::RegisterProfilePrefs(registry);
Olya Kalitova39e913d52021-03-16 22:26:221911 extensions::platform_keys::RegisterProfilePrefs(registry);
Michael Ershovd9a627e2021-11-03 13:55:271912 certificate_manager::CertificatesHandler::RegisterProfilePrefs(registry);
Simon Hangl8ebaf732023-08-25 14:59:471913 chromeos::cloud_storage::RegisterProfilePrefs(registry);
Andrew Rayskiy0ec947f2023-08-23 09:19:541914 chromeos::cloud_upload::RegisterProfilePrefs(registry);
Michael Ershov5b2a7062022-01-17 14:28:451915 policy::PolicyCertService::RegisterProfilePrefs(registry);
Josh Simmons29bce0e82023-08-31 05:59:501916 quickoffice::RegisterProfilePrefs(registry);
Yanzhu Du76169d12022-09-21 02:53:311917 registry->RegisterBooleanPref(prefs::kDeskAPIThirdPartyAccessEnabled, false);
avynnf0708712023-10-26 21:19:301918 registry->RegisterBooleanPref(prefs::kDeskAPIDeskSaveAndShareEnabled, false);
Yanzhu Du428de9052022-10-05 22:46:581919 registry->RegisterListPref(prefs::kDeskAPIThirdPartyAllowlist);
Vignesh Shenvif47279d2022-04-07 10:55:361920 registry->RegisterBooleanPref(prefs::kInsightsExtensionEnabled, false);
Mohammed Abdonb4ae483c2024-01-09 22:15:161921 registry->RegisterBooleanPref(prefs::kEssentialSearchEnabled, false);
Mohammed Abdondd78eef2024-02-02 01:06:541922 registry->RegisterBooleanPref(prefs::kLastEssentialSearchValue, false);
Nicolas Dossou-Gbete8bf46c12022-05-16 14:20:171923 // By default showing Sync Consent is set to true. It can changed by policy.
1924 registry->RegisterBooleanPref(prefs::kEnableSyncConsent, true);
anina koehlerf1e29df62022-08-10 07:22:321925 registry->RegisterListPref(
1926 chromeos::prefs::kKeepFullscreenWithoutNotificationUrlAllowList,
1927 PrefRegistry::PUBLIC);
zhumatthew58f3c2332024-02-15 21:46:481928 registry->RegisterBooleanPref(policy::policy_prefs::kFloatingWorkspaceEnabled,
1929 false);
Vignesh Shenvidfab2b12023-08-07 19:13:001930 ::reporting::RegisterProfilePrefs(registry);
Andrew Rayskiy16f8cab2022-12-15 16:28:331931#if BUILDFLAG(USE_CUPS)
Pranav Batrae71407672021-08-16 23:53:001932 extensions::PrintingAPIHandler::RegisterProfilePrefs(registry);
Andrew Rayskiy16f8cab2022-12-15 16:28:331933#endif // BUILDFLAG(USE_CUPS)
Xiaohan Wangae7f9182022-01-16 00:37:521934#endif // BUILDFLAG(IS_CHROMEOS)
Olya Kalitova39e913d52021-03-16 22:26:221935
Yuta Hijikata31a359c2020-11-27 07:50:261936#if BUILDFLAG(IS_CHROMEOS_ASH)
James Cookc542d992019-11-08 23:34:241937 app_list::AppListSyncableService::RegisterProfilePrefs(registry);
Elitsa Bankova984491f2023-10-06 07:40:111938 apps::AlmanacFetcher::RegisterProfilePrefs(registry);
Nancy Wanga78b7a32021-04-28 05:10:291939 apps::AppPlatformMetricsService::RegisterProfilePrefs(registry);
Jeevan Shikarama73dec1a2022-09-08 05:51:521940 apps::AppPreloadService::RegisterProfilePrefs(registry);
Nikki Fangac3f0592023-02-14 01:31:191941 apps::deduplication::AppDeduplicationService::RegisterProfilePrefs(registry);
Tim Sergeant1231dcc2021-05-10 14:00:571942 apps::webapk_prefs::RegisterProfilePrefs(registry);
Hidehiko Abe33e9adf2017-09-13 06:12:231943 arc::prefs::RegisterProfilePrefs(registry);
James Cookc542d992019-11-08 23:34:241944 ArcAppListPrefs::RegisterProfilePrefs(registry);
Hidehiko Abe89f9b5c92023-09-19 04:37:111945 arc::ArcBootPhaseMonitorBridge::RegisterProfilePrefs(registry);
Anastasiia N0582a902021-12-08 17:44:591946 ash::AccountAppsAvailability::RegisterPrefs(registry);
Kushagra Sinhab37e24db2021-07-02 15:14:241947 account_manager::AccountManager::RegisterPrefs(registry);
Yeunjoo Choi19772c942021-03-08 14:51:111948 ash::ApkWebAppService::RegisterProfilePrefs(registry);
Yeunjoo Choi40d02412021-04-21 01:38:561949 ash::app_time::AppActivityRegistry::RegisterProfilePrefs(registry);
1950 ash::app_time::AppTimeController::RegisterProfilePrefs(registry);
Andreea Costinasc33add32023-07-13 16:57:131951 ash::AshProxyMonitor::RegisterProfilePrefs(registry);
Yeunjoo Choi65c73cc2022-08-02 05:30:161952 ash::assistant::prefs::RegisterProfilePrefs(registry);
Anastasiia N1ad94e1e2022-09-15 08:47:281953 ash::auth::AuthFactorConfig::RegisterPrefs(registry);
Yeunjoo Choi0e66c9aa2021-04-02 02:05:561954 ash::bluetooth::DebugLogsManager::RegisterPrefs(registry);
Henrique Ferreirobbaee882022-09-08 07:15:551955 ash::bluetooth_config::BluetoothPowerControllerImpl::RegisterProfilePrefs(
1956 registry);
Theo Johnson-Kanudc9f96272023-01-12 05:11:391957 ash::HatsBluetoothRevampTriggerImpl::RegisterProfilePrefs(registry);
Hidehiko Abe982c47d52024-02-07 17:20:231958 ash::ChromeUserManagerImpl::RegisterProfilePrefs(registry);
Henrique Ferreiro2029590e2021-09-23 08:01:521959 ash::ClientAppMetadataProviderService::RegisterProfilePrefs(registry);
Yeunjoo Choi47a6a142022-02-11 02:35:231960 ash::CupsPrintersManager::RegisterProfilePrefs(registry);
Yeunjoo Choi0dc579e42022-03-23 04:14:521961 ash::device_sync::RegisterProfilePrefs(registry);
Yeunjoo Choi651766c02021-04-26 11:45:431962 ash::FamilyUserChromeActivityMetrics::RegisterProfilePrefs(registry);
1963 ash::FamilyUserMetricsService::RegisterProfilePrefs(registry);
1964 ash::FamilyUserSessionMetrics::RegisterProfilePrefs(registry);
Yeunjoo Choiebbdaa62022-10-20 01:05:311965 ash::InlineLoginHandlerImpl::RegisterProfilePrefs(registry);
Yeunjoo Choi395103872021-07-22 01:16:071966 ash::first_run::RegisterProfilePrefs(registry);
Yeunjoo Choic4e54fe2021-06-09 02:11:391967 ash::file_system_provider::RegisterProfilePrefs(registry);
Yeunjoo Choi0842edfa2021-07-29 00:53:171968 ash::full_restore::RegisterProfilePrefs(registry);
Yeunjoo Choi4530b1792021-05-10 02:32:271969 ash::KerberosCredentialsManager::RegisterProfilePrefs(registry);
Yeunjoo Choi044ea242022-03-14 12:06:291970 ash::multidevice_setup::MultiDeviceSetupService::RegisterProfilePrefs(
Jordy Greenblatt2265de702018-07-26 19:05:261971 registry);
Yeunjoo Choi6c99c4d2022-08-08 03:11:111972 ash::NetworkMetadataStore::RegisterPrefs(registry);
Yeunjoo Choic1593bf2021-04-23 03:49:251973 ash::ReleaseNotesStorage::RegisterProfilePrefs(registry);
Yeunjoo Choif5706262021-08-24 01:11:241974 ash::HelpAppNotificationController::RegisterProfilePrefs(registry);
Henrique Ferreirob3ff980b2021-07-19 09:41:271975 ash::quick_unlock::FingerprintStorage::RegisterProfilePrefs(registry);
1976 ash::quick_unlock::PinStoragePrefs::RegisterProfilePrefs(registry);
Henrique Ferreiro4b21d142021-11-10 11:47:371977 ash::Preferences::RegisterProfilePrefs(registry);
Yeunjoo Choida53f442021-09-17 01:07:361978 ash::EnterprisePrintersProvider::RegisterProfilePrefs(registry);
Yeunjoo Choi09213db2021-04-16 03:42:081979 ash::parent_access::ParentAccessService::RegisterProfilePrefs(registry);
Yue Lia3125692022-01-05 20:05:431980 quick_answers::prefs::RegisterProfilePrefs(registry);
Henrique Ferreirob3ff980b2021-07-19 09:41:271981 ash::quick_unlock::RegisterProfilePrefs(registry);
Henrique Ferreiroec8355d2021-07-20 08:20:081982 ash::RegisterSamlProfilePrefs(registry);
Yeunjoo Choi651766c02021-04-26 11:45:431983 ash::ScreenTimeController::RegisterProfilePrefs(registry);
Henrique Ferreirofad33bd2021-01-29 00:28:401984 ash::EduCoexistenceConsentInvalidationController::RegisterProfilePrefs(
yilkalc04a16dc2020-11-04 22:07:071985 registry);
Yeunjoo Choi38cea422022-10-18 06:19:171986 ash::EduCoexistenceLoginHandler::RegisterProfilePrefs(registry);
Henrique Ferreiroa264c8c02021-07-20 08:31:471987 ash::SigninErrorNotifier::RegisterPrefs(registry);
Yeunjoo Choicf61fba2021-04-23 02:43:091988 ash::ServicesCustomizationDocument::RegisterProfilePrefs(registry);
Yeunjoo Choiba3d9972022-10-11 12:50:121989 ash::settings::OSSettingsUI::RegisterProfilePrefs(registry);
Henrique Ferreirob403be32021-09-22 07:15:361990 ash::StartupUtils::RegisterOobeProfilePrefs(registry);
Aiden Chiavatti112d3672023-03-17 21:13:411991 ash::user_image::prefs::RegisterProfilePrefs(registry);
Henrique Ferreirocddc8012021-03-26 00:47:151992 ash::UserImageSyncObserver::RegisterProfilePrefs(registry);
Jong Ahn6f1c54a42022-01-18 00:20:561993 ChromeMetricsServiceClient::RegisterProfilePrefs(registry);
Renee Wrightc41d5432018-04-26 05:27:371994 crostini::prefs::RegisterProfilePrefs(registry);
sdefresne8593e6432015-12-01 12:38:081995 flags_ui::PrefServiceFlagsStorage::RegisterProfilePrefs(registry);
Joel Hockey7fb974342019-06-27 23:35:051996 guest_os::prefs::RegisterProfilePrefs(registry);
Toni Barzic14329d02017-07-17 21:59:121997 lock_screen_apps::StateController::RegisterProfilePrefs(registry);
Olya Kalitovac869f962018-12-04 12:01:231998 plugin_vm::prefs::RegisterProfilePrefs(registry);
GioVAX287418d2020-11-23 17:56:591999 policy::ArcAppInstallEventLogger::RegisterProfilePrefs(registry);
Bartosz Fabianowskid4d93a72018-05-17 18:49:482000 policy::AppInstallEventLogManagerWrapper::RegisterProfilePrefs(registry);
Marcelo Almeida9ef8c132019-05-13 20:19:122001 policy::StatusCollector::RegisterProfilePrefs(registry);
Henrique Ferreiroe2cbaaf2022-01-10 15:02:232002 ash::SystemProxyManager::RegisterProfilePrefs(registry);
Erik Chenc2927bbd2021-09-22 23:20:072003 ChromeShelfPrefs::RegisterProfilePrefs(registry);
stevenjbf22f82e2016-10-26 21:47:382004 ::onc::RegisterProfilePrefs(registry);
Yeunjoo Choicd4cc5382021-03-25 08:50:492005 ash::cert_provisioning::RegisterProfilePrefs(registry);
Nicholas Hollingumf4c11e32020-10-05 22:52:572006 borealis::prefs::RegisterProfilePrefs(registry);
Gavin Williamsf6781f3e2021-04-22 01:13:492007 ash::ChromeScanningAppDelegate::RegisterProfilePrefs(registry);
yilkal95d9f882021-10-18 21:59:002008 ProjectorAppClientImpl::RegisterProfilePrefs(registry);
Geng Li11526bb42022-02-15 23:59:142009 ash::floating_workspace_util::RegisterProfilePrefs(registry);
Sanja Perisic91217932022-04-13 13:45:022010 policy::RebootNotificationsScheduler::RegisterProfilePrefs(registry);
Edman Anjos0f2ad562023-11-08 10:40:492011 ash::KioskChromeAppManager::RegisterProfilePrefs(registry);
Andrew Rayskiy47076d72022-09-27 18:46:142012 file_manager::file_tasks::RegisterProfilePrefs(registry);
Nigel Taoa1d4dce2022-10-18 00:01:202013 file_manager::prefs::RegisterProfilePrefs(registry);
Fergus Dall54a6a432022-11-18 17:35:292014 bruschetta::prefs::RegisterProfilePrefs(registry);
Chris Mullinse59586192023-03-06 17:42:172015 wallpaper_handlers::prefs::RegisterProfilePrefs(registry);
Vignesh Shenvi145bf6e2023-05-08 22:11:302016 ash::reporting::RegisterProfilePrefs(registry);
Yuta Hijikata31a359c2020-11-27 07:50:262017#endif // BUILDFLAG(IS_CHROMEOS_ASH)
gab3ca4a492017-03-02 00:19:412018
Darin Fisher127d5782021-01-20 20:32:342019#if BUILDFLAG(IS_CHROMEOS_LACROS)
2020 lacros_prefs::RegisterProfilePrefs(registry);
Andreea Costinas68cad91f2021-09-22 15:58:092021 chromeos::ProxyConfigServiceLacros::RegisterProfilePrefs(registry);
Ian Helmkec4a4e452022-05-09 22:17:582022 lacros_prefs::RegisterExtensionControlledAshPrefs(registry);
Irina Fedorova13745422022-07-15 12:59:002023 KioskSessionServiceLacros::RegisterProfilePrefs(registry);
Nancy Wangc84098e2022-10-24 10:30:362024 apps::WebsiteMetricsServiceLacros::RegisterProfilePrefs(registry);
Darin Fisher127d5782021-01-20 20:32:342025#endif
2026
Xiaohan Wangae7f9182022-01-16 00:37:522027#if BUILDFLAG(IS_WIN)
Alex St-Onge9e4b9b72021-06-08 15:35:542028 CdmPrefServiceHelper::RegisterProfilePrefs(registry);
Scott Violet3ff87d062021-12-21 06:10:102029 FontPrewarmerTabHelper::RegisterProfilePrefs(registry);
[email protected]37ca3fe02013-07-05 15:32:442030 NetworkProfileBubble::RegisterProfilePrefs(registry);
[email protected]a4422802012-05-03 09:19:152031#endif
[email protected]eeec6ca2013-02-21 15:10:432032
Sebastien Lalancette413625312023-05-08 13:58:012033#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
2034 BUILDFLAG(IS_CHROMEOS_ASH)
Zonghan Xuc528f6e82022-08-09 22:31:582035 device_signals::RegisterProfilePrefs(registry);
Sebastien Lalancette413625312023-05-08 13:58:012036#endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ||
2037 // BUILDFLAG(IS_CHROMEOS_ASH)
Zonghan Xuc528f6e82022-08-09 22:31:582038
Nicolas Ouellet-Payeurc1b89932022-09-30 16:22:532039#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX)
Nicolas4b82a652019-01-04 17:42:382040 browser_switcher::BrowserSwitcherPrefs::RegisterProfilePrefs(registry);
Nicolas Ouellet-Payeurcb894532023-09-28 04:03:152041 enterprise_signin::RegisterProfilePrefs(registry);
Nicolas Ouellet-Payeur9a4a94d2018-09-17 15:26:112042#endif
2043
Miyoung Shin16caa0c12023-11-15 14:09:462044#if BUILDFLAG(ENABLE_EXTENSIONS) && !BUILDFLAG(IS_CHROMEOS_ASH)
Daniel Murphy3657906d2021-04-13 20:33:122045 preinstalled_apps::RegisterProfilePrefs(registry);
Becca Hughes7d2bbb82018-08-07 22:56:592046#endif
2047
Xiaohan Wangae7f9182022-01-16 00:37:522048#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS)
Kristi Parkd0f72412021-07-02 01:09:032049 sharing_hub::RegisterProfilePrefs(registry);
2050#endif
2051
Lei Zhang92c15542020-01-10 17:05:102052#if defined(TOOLKIT_VIEWS)
2053 accessibility_prefs::RegisterInvertBubbleUserPrefs(registry);
Yuheng Huang9ce54892022-05-06 19:29:392054 side_search_prefs::RegisterProfilePrefs(registry);
Lei Zhang92c15542020-01-10 17:05:102055 RegisterBrowserViewProfilePrefs(registry);
Owen Minef022e92019-10-15 21:25:212056#endif
2057
Duncan Mercer8062eef2022-12-28 22:28:372058#if BUILDFLAG(ENABLE_LENS_DESKTOP)
Juan Mojica4669f8d2021-08-05 20:01:452059 registry->RegisterBooleanPref(
2060 prefs::kLensRegionSearchEnabled, true,
2061 user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
Duncan Mercer8062eef2022-12-28 22:28:372062 registry->RegisterBooleanPref(prefs::kLensDesktopNTPSearchEnabled, true);
2063#endif
2064
2065#if !BUILDFLAG(IS_ANDROID)
Martin Kreichgauerd7aa4f92022-02-22 20:46:212066 registry->RegisterBooleanPref(
2067 webauthn::pref_names::kRemoteProxiedRequestsAllowed, false);
dljames0a96ef192022-07-07 23:31:432068
Nina Satragno42747a42023-06-29 15:25:272069 registry->RegisterStringPref(
2070 webauthn::pref_names::kLastUsedPairingFromSyncPublicKey, "");
2071
Caroline Risingf4b49092023-03-23 02:28:262072 side_panel_prefs::RegisterProfilePrefs(registry);
Juan Mojica4669f8d2021-08-05 20:01:452073#endif
2074
Nina Satragnod7b8fb42022-11-10 20:43:392075 registry->RegisterBooleanPref(webauthn::pref_names::kAllowWithBrokenCerts,
2076 false);
2077
Sean Harrisonf263b732021-12-07 11:17:522078 registry->RegisterBooleanPref(prefs::kPrivacyGuideViewed, false);
Sean Harrisonf263b732021-12-07 11:17:522079
James Cook0ba192bf2017-12-01 20:53:112080 RegisterProfilePrefsForMigration(registry);
Alison Gale6bf2cc52022-09-08 15:11:492081
2082#if !BUILDFLAG(IS_ANDROID)
Alison Gale3a43a5f02023-12-14 16:04:222083 registry->RegisterIntegerPref(prefs::kMemorySaverChipExpandedCount, 0);
2084 registry->RegisterTimePref(prefs::kLastMemorySaverChipExpandedTimestamp,
Alison Gale58bb3cd52023-04-21 15:03:202085 base::Time());
Alison Gale6bf2cc52022-09-08 15:11:492086#endif
Anders Hartvoll Ruudeedebdc2022-10-12 15:38:012087
2088#if BUILDFLAG(IS_ANDROID)
2089 registry->RegisterBooleanPref(prefs::kVirtualKeyboardResizesLayoutByDefault,
2090 false);
2091#endif
Kirubel Aklilubb804082022-11-10 19:02:302092
2093 registry->RegisterTimePref(prefs::kDIPSTimerLastUpdate, base::Time());
Kyungjun Lee0dcd7c3e2022-12-16 22:01:392094
2095#if BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
Kyungjun Lee6faff152023-10-23 18:04:312096 registry->RegisterBooleanPref(prefs::kAccessibilityPdfOcrAlwaysActive, true);
Kyungjun Lee0dcd7c3e2022-12-16 22:01:392097#endif // BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
Yuta Hijikata9cd674122023-07-29 15:43:372098
2099#if BUILDFLAG(IS_CHROMEOS_ASH)
2100 registry->RegisterBooleanPref(kClearUserDataDir1Pref, false);
2101#endif
Andrew Williams0e136592023-08-09 15:13:342102
2103 registry->RegisterBooleanPref(prefs::kBlockTruncatedCookies, true);
Jonathan Hao3a829c12023-10-24 14:35:472104 registry->RegisterBooleanPref(
2105 prefs::kManagedPrivateNetworkAccessRestrictionsEnabled, false);
Dominique Fauteux-Chapleaub6be8ae2023-09-26 13:48:402106
2107#if BUILDFLAG(ENTERPRISE_DATA_CONTROLS)
2108 data_controls::RegisterProfilePrefs(registry);
2109#endif // BUILDFLAG(ENTERPRISE_DATA_CONTROLS)
Georgina Sanchez Buenrostro57c36622023-10-26 00:53:122110
2111#if BUILDFLAG(IS_WIN)
2112 registry->RegisterBooleanPref(prefs::kNativeHostsExecutablesLaunchDirectly,
2113 false);
2114#endif // BUILDFLAG(IS_WIN)
Anthony Cui417bf4b2023-11-17 20:48:042115
Anthony Cuifc4726fc2023-12-01 23:28:472116#if BUILDFLAG(ENABLE_COMPOSE)
Anthony Cui74262132024-01-04 20:29:582117 registry->RegisterBooleanPref(prefs::kPrefHasCompletedComposeFRE, false);
Anthony Cui417bf4b2023-11-17 20:48:042118#endif
initial.commit09911bf2008-07-26 23:55:292119}
license.botbf09a502008-08-24 00:55:552120
[email protected]37ca3fe02013-07-05 15:32:442121void RegisterUserProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
Xi Han25a7f032019-04-18 21:44:212122 RegisterUserProfilePrefs(registry, g_browser_process->GetApplicationLocale());
2123}
2124
2125void RegisterUserProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
2126 const std::string& locale) {
2127 RegisterProfilePrefs(registry, locale);
[email protected]2424cc52013-07-17 13:44:382128
Xiaohan Wangae7f9182022-01-16 00:37:522129#if BUILDFLAG(IS_ANDROID)
mlliuee3a405c2016-10-28 22:34:522130 ::android::RegisterUserProfilePrefs(registry);
2131#endif
Yuta Hijikata31a359c2020-11-27 07:50:262132#if BUILDFLAG(IS_CHROMEOS_ASH)
John Palmer1e70a002023-08-15 02:20:342133 ash::RegisterUserProfilePrefs(registry, locale);
Kush Sinha31d120b72023-09-04 12:21:542134 ash::TokenHandleFetcher::RegisterPrefs(registry);
Xiyuan Xia5a8c4172019-05-13 16:23:482135#endif
[email protected]37ca3fe02013-07-05 15:32:442136}
2137
[email protected]8eefe842014-01-17 06:42:402138void RegisterScreenshotPrefs(PrefRegistrySimple* registry) {
2139 registry->RegisterBooleanPref(prefs::kDisableScreenshots, false);
2140}
2141
Yuta Hijikata31a359c2020-11-27 07:50:262142#if BUILDFLAG(IS_CHROMEOS_ASH)
John Palmer1e70a002023-08-15 02:20:342143void RegisterSigninProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
2144 std::string_view country) {
Xi Han25a7f032019-04-18 21:44:212145 RegisterProfilePrefs(registry, g_browser_process->GetApplicationLocale());
John Palmer1e70a002023-08-15 02:20:342146 ash::RegisterSigninProfilePrefs(registry, country);
[email protected]37ca3fe02013-07-05 15:32:442147}
Eyor Alemayehu4b516fb2019-02-20 20:24:292148
[email protected]37ca3fe02013-07-05 15:32:442149#endif
2150
rkaplowf216caf2015-03-02 22:37:452151// This method should be periodically pruned of year+ old migrations.
Gabriel Charette1eecf132021-04-15 16:55:532152// See chrome/browser/prefs/README.md for details.
Lei Zhangb76b80e32020-04-08 16:58:162153void MigrateObsoleteLocalStatePrefs(PrefService* local_state) {
Scott Littlec463f3362022-02-15 18:44:242154 // IMPORTANT NOTE: This code is *not* run on iOS Chrome. If a pref is migrated
2155 // or cleared here, and that pref is also used in iOS Chrome, it may also need
2156 // to be migrated or cleared specifically for iOS as well. This could be by
2157 // doing the migration in feature code that's called by all platforms instead
2158 // of here, or by calling migration code in the appropriate place for iOS
Gauthier Ambardfd73b8a12023-05-17 09:54:432159 // specifically, e.g. ios/chrome/browser/shared/model/prefs/browser_prefs.mm.
Scott Littlec463f3362022-02-15 18:44:242160
Dominic Battre645d42342020-12-04 16:14:102161 // BEGIN_MIGRATE_OBSOLETE_LOCAL_STATE_PREFS
2162 // Please don't delete the preceding line. It is used by PRESUBMIT.py.
2163
Artsiom Mitrokhincf332e22023-03-07 16:27:472164// Added 03/2023.
2165#if BUILDFLAG(IS_CHROMEOS_ASH)
2166 local_state->ClearPref(kGlanceablesSignoutScreenshotDuration);
2167#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2168
Brittany Hartmireafd35312023-03-16 00:21:032169// Added 03/2023.
2170#if BUILDFLAG(IS_CHROMEOS_ASH)
2171 local_state->ClearPref(kEasyUnlockLocalStateUserPrefs);
2172#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2173
Brittany Hartmire1ffd662e2023-04-04 22:46:512174// Added 04/2023.
2175#if BUILDFLAG(IS_CHROMEOS_ASH)
2176 local_state->ClearPref(kEasyUnlockHardlockState);
2177#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2178
Artem Sumaneev77f80bb2023-04-11 14:04:582179 // Added 04/2023.
2180 local_state->ClearPref(kTypeSubscribedForInvalidations);
2181 local_state->ClearPref(kActiveRegistrationToken);
2182 local_state->ClearPref(kFCMInvalidationClientIDCache);
2183
Osama Fathy5d236652023-04-17 17:31:122184// Added 04/2023.
2185#if BUILDFLAG(IS_CHROMEOS_ASH)
2186 local_state->ClearPref(kConsolidatedConsentTrial);
2187#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2188
Roland Bock8e21dd022023-04-27 09:33:482189// Added 04/2023.
2190#if BUILDFLAG(IS_CHROMEOS_ASH)
2191 local_state->ClearPref(kEnrollmentIdUploadedOnChromad);
2192 local_state->ClearPref(kLastChromadMigrationAttemptTime);
2193#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2194
Pilar Molina Lopezef825502023-05-12 18:08:482195 // Added 05/2023.
Colin Blundella2aea272023-05-15 09:50:002196 local_state->ClearPref(kForceEnablePepperVideoDecoderDevAPI);
2197
2198 // Added 05/2023.
Pilar Molina Lopezef825502023-05-12 18:08:482199 local_state->ClearPref(kUseMojoVideoDecoderForPepperAllowed);
2200
Mariam Ali4c166962024-01-04 12:18:162201 // Added 05/2023.
Vasiliy Telezhnikov2a786452023-05-12 23:53:372202 local_state->ClearPref(kPPAPISharedImagesSwapChainAllowed);
2203
Ramin Halavatiec90e022023-05-23 13:55:052204// Added 05/2023.
2205#if BUILDFLAG(ENABLE_SCREEN_AI_SERVICE)
2206 local_state->ClearPref(kScreenAIScheduledDeletionTimePrefName);
2207#endif
2208
Mariam Ali4c166962024-01-04 12:18:162209// Added 05/2023.
Cathy Li7ff029622023-05-26 04:56:522210#if BUILDFLAG(IS_ANDROID)
2211 local_state->ClearPref(kWeeklyStatsReportingTimestamp);
2212#endif
2213
Hidehiko Abead7991f22023-05-31 14:32:222214// Added 05/2023.
2215#if BUILDFLAG(IS_CHROMEOS_ASH)
2216 local_state->ClearPref(kSupervisedUsersFirstRun);
2217 local_state->ClearPref(kSupervisedUserSyncId);
2218 local_state->ClearPref(kSupervisedUserManagers);
2219 local_state->ClearPref(kSupervisedUserManagerNames);
2220 local_state->ClearPref(kSupervisedUserManagerDisplayEmails);
2221
2222 local_state->ClearPref(kSupervisedUserPasswordSchema);
2223 local_state->ClearPref(kSupervisedUserPasswordSalt);
2224 local_state->ClearPref(kSupervisedUserPasswordRevision);
2225
2226 local_state->ClearPref(kSupervisedUserNeedPasswordUpdate);
2227 local_state->ClearPref(kSupervisedUserIncompleteKey);
2228#endif
2229
Eshwar Stalin883b5a72023-07-11 02:05:592230// Added 07/2023.
2231#if !BUILDFLAG(IS_ANDROID)
2232 local_state->ClearPref(kLegacyHoverCardImagesEnabled);
2233#endif
2234
Etienne Bergeron6ac228e2023-08-02 17:39:042235 // Added 07/2023.
2236 local_state->ClearPref(kShutdownNumProcesses);
2237 local_state->ClearPref(kShutdownNumProcessesSlow);
Etienne Bergeronec5c88fb2023-08-07 15:09:392238 local_state->ClearPref(kShutdownType);
Etienne Bergeron6ac228e2023-08-02 17:39:042239
Daniel Ruberya440a6b12023-09-08 22:04:332240 // Added 09/2023.
2241#if BUILDFLAG(IS_WIN)
2242 local_state->ClearPref(kSwReporter);
2243 local_state->ClearPref(kChromeCleaner);
2244#endif
2245
Ahmed Mehfooze6c06892023-09-14 00:48:172246// Added 09/2023.
2247#if BUILDFLAG(IS_CHROMEOS_ASH)
2248 local_state->ClearPref(kGestureEducationNotificationShown);
2249#endif
2250
Zelin Liuafae5a22023-12-18 22:16:072251// Added 11/2023.
2252#if BUILDFLAG(IS_CHROMEOS_ASH)
2253 local_state->ClearPref(kIsolatedWebAppsEnabled);
2254#endif
2255
Mariam Ali4c166962024-01-04 12:18:162256 // Added 12/2023.
Antonio Sartori910f325932023-12-19 16:19:032257 local_state->ClearPref(kPrivacyBudgetReportedReidBlocks);
2258
Vasiliy Telezhnikov3600f1e2024-01-13 01:28:342259 // Added 01/2024.
2260 local_state->ClearPref(kPPAPISharedImagesForVideoDecoderAllowed);
2261
Michael Checoc64e6b0f2024-01-24 03:00:382262// Added 01/2024.
2263#if BUILDFLAG(IS_CHROMEOS_ASH)
2264 local_state->ClearPref(kExtendedFkeysModifier);
2265#endif
2266
Leonard Grey8f81011a2024-02-07 17:59:452267// Added 02/2024
2268#if BUILDFLAG(IS_MAC)
2269 local_state->ClearPref(kScreenTimeEnabled);
2270#endif
Nicolas Dossou-Gbete166dffd2024-02-16 15:46:512271
2272 // Added 02/2024
2273 local_state->ClearPref(kSearchEnginesChoiceProfile);
2274
Dominic Battre645d42342020-12-04 16:14:102275 // Please don't delete the following line. It is used by PRESUBMIT.py.
2276 // END_MIGRATE_OBSOLETE_LOCAL_STATE_PREFS
Scott Littlec463f3362022-02-15 18:44:242277
2278 // IMPORTANT NOTE: This code is *not* run on iOS Chrome. If a pref is migrated
2279 // or cleared here, and that pref is also used in iOS Chrome, it may also need
2280 // to be migrated or cleared specifically for iOS as well. This could be by
2281 // doing the migration in feature code that's called by all platforms instead
2282 // of here, or by calling migration code in the appropriate place for iOS
Gauthier Ambardfd73b8a12023-05-17 09:54:432283 // specifically, e.g. ios/chrome/browser/shared/model/prefs/browser_prefs.mm.
rkaplowf216caf2015-03-02 22:37:452284}
2285
2286// This method should be periodically pruned of year+ old migrations.
Gabriel Charette1eecf132021-04-15 16:55:532287// See chrome/browser/prefs/README.md for details.
Victor Hugo Vianna Silva6cc84402023-12-06 15:21:572288void MigrateObsoleteProfilePrefs(PrefService* profile_prefs,
2289 const base::FilePath& profile_path) {
Scott Littlec463f3362022-02-15 18:44:242290 // IMPORTANT NOTE: This code is *not* run on iOS Chrome. If a pref is migrated
2291 // or cleared here, and that pref is also used in iOS Chrome, it may also need
2292 // to be migrated or cleared specifically for iOS as well. This could be by
2293 // doing the migration in feature code that's called by all platforms instead
2294 // of here, or by calling migration code in the appropriate place for iOS
Gauthier Ambardfd73b8a12023-05-17 09:54:432295 // specifically, e.g. ios/chrome/browser/shared/model/prefs/browser_prefs.mm.
Scott Littlec463f3362022-02-15 18:44:242296
Dominic Battre645d42342020-12-04 16:14:102297 // BEGIN_MIGRATE_OBSOLETE_PROFILE_PREFS
2298 // Please don't delete the preceding line. It is used by PRESUBMIT.py.
2299
wutaobc9027e2020-04-08 02:01:442300 // Check MigrateDeprecatedAutofillPrefs() to see if this is safe to remove.
Moe Ahmadic3061bd2018-08-30 16:25:322301 autofill::prefs::MigrateDeprecatedAutofillPrefs(profile_prefs);
Alexandr Ilin273e20b2018-09-05 19:47:572302
Tarun Bansal99e447d2020-03-17 10:07:562303 // Added 3/2020.
Julian Pastarmov7da3bc22021-03-30 14:30:182304 // TODO(crbug.com/1062698): Remove this once the privacy settings redesign
2305 // is fully launched.
Ben Schwartz135746c2020-05-14 04:37:032306 chrome_browser_net::secure_dns::MigrateProbesSettingToOrFromBackup(
2307 profile_prefs);
wutao2e24aff2020-04-03 17:01:022308
David Roger877bdc72022-10-19 09:38:512309 // Once this migration is complete, the tracked preference
Mikel Astiz662cb5e22023-10-02 16:04:242310 // `kGoogleServicesLastSyncingAccountIdDeprecated` can be removed.
David Roger877bdc72022-10-19 09:38:512311 if (profile_prefs->HasPrefPath(
Mikel Astiz662cb5e22023-10-02 16:04:242312 prefs::kGoogleServicesLastSyncingAccountIdDeprecated)) {
2313 std::string account_id = profile_prefs->GetString(
2314 prefs::kGoogleServicesLastSyncingAccountIdDeprecated);
2315 profile_prefs->ClearPref(
2316 prefs::kGoogleServicesLastSyncingAccountIdDeprecated);
David Roger877bdc72022-10-19 09:38:512317 bool is_email = account_id.find('@') != std::string::npos;
Andrew Breggerf89f1322023-02-01 02:22:032318 if (!is_email && !account_id.empty()) {
Mikel Astiz662cb5e22023-10-02 16:04:242319 profile_prefs->SetString(prefs::kGoogleServicesLastSyncingGaiaId,
2320 account_id);
Andrew Breggerf89f1322023-02-01 02:22:032321 }
David Roger877bdc72022-10-19 09:38:512322 }
2323
Eric Sumbed9fdd2023-03-15 18:06:302324// Added 03/2023.
2325#if BUILDFLAG(IS_CHROMEOS_ASH)
2326 ash::ambient::prefs::MigrateDeprecatedPrefs(*profile_prefs);
2327#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2328
Mariam Ali4c166962024-01-04 12:18:162329 // Added 03/2023.
Ari Chivukula951893d2023-03-03 18:03:292330 profile_prefs->ClearPref(
2331 kGoogleSearchDomainMixingMetricsEmitterLastMetricsTime);
2332
conniekxu4d14f65c2023-03-28 20:56:362333// Added 03/2023.
2334#if BUILDFLAG(IS_CHROMEOS_ASH)
2335 profile_prefs->ClearPref(kDarkLightModeNudgeLeftToShowCount);
2336#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2337
Adam Langley390670302023-03-31 00:43:312338 // Added 03/2023.
2339#if BUILDFLAG(IS_WIN)
2340 profile_prefs->ClearPref(kWebAuthnLastOperationWasNativeAPI);
2341#endif
2342
Richard Chui821cdad2023-04-07 21:39:572343// Added 04/2023.
2344#if BUILDFLAG(IS_CHROMEOS_ASH)
2345 profile_prefs->ClearPref(kBentoBarEnabled);
2346 profile_prefs->ClearPref(kUserHasUsedDesksRecently);
2347#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2348
Dan Harrington83791492023-04-10 20:49:272349// Added 04/2023.
2350#if BUILDFLAG(IS_ANDROID)
2351 profile_prefs->ClearPref(kBackoff);
2352 profile_prefs->ClearPref(kUserSettingEnabled);
2353 profile_prefs->ClearPref(kLimitlessPrefetchingEnabledTimePref);
2354 profile_prefs->ClearPref(kPrefetchTestingHeaderPref);
2355 profile_prefs->ClearPref(kEnabledByServer);
2356 profile_prefs->ClearPref(kNextForbiddenCheckTimePref);
2357 profile_prefs->ClearPref(kPrefetchCachedGCMToken);
2358#endif
2359
Artem Sumaneev77f80bb2023-04-11 14:04:582360 // Added 04/2023.
2361 profile_prefs->ClearPref(kTypeSubscribedForInvalidations);
2362 profile_prefs->ClearPref(kActiveRegistrationToken);
2363 profile_prefs->ClearPref(kFCMInvalidationClientIDCache);
2364
Dan Harrington899e25232023-04-11 18:23:572365 // Added 04/2023.
2366#if BUILDFLAG(IS_ANDROID)
2367 ntp_snippets::prefs::MigrateObsoleteProfilePrefsApril2023(profile_prefs);
2368#endif
2369
Jérémie Boulic8d672f22023-04-18 02:44:052370// Added 04/2023.
2371#if BUILDFLAG(IS_CHROMEOS_ASH)
2372 profile_prefs->ClearPref(kOfficeFilesAlwaysMove);
2373 profile_prefs->ClearPref(kOfficeMoveConfirmationShown);
2374#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2375
Brittany Hartmire402a3922023-04-18 22:15:362376// Added 04/2023.
2377#if BUILDFLAG(IS_CHROMEOS_ASH)
2378 profile_prefs->ClearPref(kProximityAuthIsChromeOSLoginEnabled);
2379#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2380
Brittany Hartmire22aa1ae82023-05-09 17:37:232381// Added 05/2023.
2382#if BUILDFLAG(IS_CHROMEOS_ASH)
2383 profile_prefs->ClearPref(kSmartLockSigninAllowed);
2384#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2385
David Trainorb7400c22023-05-10 19:17:062386// Added 05/2023.
2387#if BUILDFLAG(IS_ANDROID)
2388 profile_prefs->ClearPref(kVideoTutorialsPreferredLocaleKey);
2389 profile_prefs->ClearPref(kVideoTutorialsLastUpdatedTimeKey);
2390#endif // BUILDFLAG(IS_ANDROID
2391
Peter Marshall7fdea2b2023-05-15 01:16:382392// Added 05/2023.
2393#if BUILDFLAG(IS_CHROMEOS_ASH)
2394 profile_prefs->ClearPref(kOfficeSetupComplete);
2395#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2396
Elias Khsheibund1700562023-05-15 13:31:212397// Added 05/2023.
Michael Checo1f8625942023-05-23 19:33:472398#if BUILDFLAG(IS_CHROMEOS_ASH)
2399 profile_prefs->ClearPref(kEventRemappedToRightClick);
2400#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2401
2402// Added 05/2023.
Elias Khsheibund1700562023-05-15 13:31:212403#if BUILDFLAG(IS_ANDROID)
2404 profile_prefs->ClearPref(kTimesUPMAuthErrorShown);
2405#endif // BUILDFLAG(IS_ANDROID)
2406
Maciek Slusarczyk56833f02023-05-19 09:02:142407// Added 05/2023.
2408#if BUILDFLAG(IS_CHROMEOS_ASH)
2409 profile_prefs->ClearPref(kSamlPasswordSyncToken);
2410#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2411
Alan Cutter086bdf72023-06-09 02:40:112412// Added 06/2023.
2413#if BUILDFLAG(IS_CHROMEOS_ASH)
2414 profile_prefs->ClearPref(kWebAppCalculatorAppErasureFixAppliedPref);
2415#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2416
Alan Cutter3bfce6e2023-06-07 01:53:022417 // Added 06/2023.
2418 profile_prefs->ClearPref(kWebAppsExtensionIDs);
2419
Marc Treib7aaf21332023-06-14 08:30:012420 // Added 06/2023.
2421#if BUILDFLAG(IS_CHROMEOS_ASH)
2422 profile_prefs->ClearPref(kOsSyncPrefsMigrated);
2423#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2424
Yue Zhangf7cf6712023-06-16 18:11:322425 // Added 06/2023.
2426#if !BUILDFLAG(IS_ANDROID)
2427 profile_prefs->ClearPref(kShouldShowSidePanelBookmarkTab);
2428#endif // !BUILDFLAG(IS_ANDROID)
2429
Mariam Ali4c166962024-01-04 12:18:162430 // Added 06/2023.
Jian Li7541a082023-06-18 23:52:142431#if BUILDFLAG(ENABLE_FEED_V2)
2432 profile_prefs->ClearPref(kVideoPreviewsType);
2433#endif // BUILDFLAG(ENABLE_FEED_V2)
2434
Maciek Slusarczyk9fed52232023-06-21 14:46:072435 // Added 06/2023.
2436#if BUILDFLAG(IS_CHROMEOS_ASH)
2437 profile_prefs->ClearPref(kGaiaLastOnlineSignInTime);
2438 profile_prefs->ClearPref(kSAMLLastGAIASignInTime);
2439#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2440
Anthony Cui5e5dad9322023-07-10 17:34:542441 // Added 06/2023.
2442#if BUILDFLAG(IS_ANDROID)
2443 profile_prefs->ClearPref(kPrefExplicitLanguageAskShown);
2444#endif // BUILDFLAG(IS_ANDROID)
2445
Mihai Sardarescu6db89cf2023-07-04 07:36:022446// Added 07/2023.
2447#if !BUILDFLAG(IS_CHROMEOS_ASH)
2448 profile_prefs->ClearPref(kUnifiedConsentMigrationState);
2449#endif
2450
Viktor Semeniuk13075de02023-07-18 08:24:362451 // Added 07/2023.
2452 profile_prefs->ClearPref(kPasswordsGroupingInfoRequested);
2453
Hui Yingstd4c7a572023-07-18 18:16:152454 // Added 07/2023.
2455#if BUILDFLAG(IS_CHROMEOS_ASH)
2456 profile_prefs->ClearPref(kPowerMetricsIdleScreenOffCount);
2457 profile_prefs->ClearPref(kPowerMetricsIdleSuspendCount);
2458 profile_prefs->ClearPref(kPowerMetricsLidClosedSuspendCount);
2459#endif
Mikel Astiz5c4bda9b2023-07-21 10:28:032460 syncer::SyncPrefs::MigrateAutofillWalletImportEnabledPref(profile_prefs);
Hui Yingstd4c7a572023-07-18 18:16:152461
Christoph Schlosser1f1ec9b2023-07-26 08:12:562462// Added 07/2023.
2463#if BUILDFLAG(IS_CHROMEOS_ASH)
2464 profile_prefs->ClearPref(kHatsPrivacyHubBaselineIsSelected);
2465 profile_prefs->ClearPref(kHatsPrivacyHubBaselineCycleEndTs);
2466#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2467
Yuta Hijikata9cd674122023-07-29 15:43:372468// Added 07/2023.
2469#if BUILDFLAG(IS_CHROMEOS_ASH)
2470 profile_prefs->ClearPref(kClearUserDataDir1Pref);
2471#endif
2472
Rushan Suleymanov95b36922023-08-03 17:17:412473 // Added 08/2023.
2474 invalidation::InvalidatorRegistrarWithMemory::ClearDeprecatedPrefs(
2475 profile_prefs);
2476 invalidation::PerUserTopicSubscriptionManager::ClearDeprecatedPrefs(
2477 profile_prefs);
2478 invalidation::FCMInvalidationService::ClearDeprecatedPrefs(profile_prefs);
2479
François Degros82e8d052023-08-15 19:44:232480 // Added 08/2023.
2481 profile_prefs->ClearPref(kDriveFsBulkPinningMaxQueueSize);
2482
Mariam Ali4c166962024-01-04 12:18:162483 // Added 09/2023.
Nicola Tommasiff549832023-09-04 11:35:062484 profile_prefs->ClearPref(kPrivacySandboxM1Unrestricted);
Daniel Ruberya440a6b12023-09-08 22:04:332485#if BUILDFLAG(IS_WIN)
2486 profile_prefs->ClearPref(kSwReporter);
2487 profile_prefs->ClearPref(kSettingsResetPrompt);
2488 profile_prefs->ClearPref(kChromeCleaner);
2489#endif
Lily Chen492c670f2023-09-15 21:35:472490 profile_prefs->ClearPref(kDownloadBubbleEnabled);
Ankush Singh041ec0d2023-09-21 09:06:132491 profile_prefs->ClearPref(kPrivacySandboxManuallyControlled);
Mikel Astiz3dc3dabc2023-09-25 19:32:212492#if BUILDFLAG(IS_CHROMEOS_ASH)
2493 profile_prefs->ClearPref(kSyncInitialSyncFeatureSetupCompleteOnAsh);
2494#endif
Ivana Žužić2fa04d12023-09-29 13:46:312495#if BUILDFLAG(IS_ANDROID)
2496 profile_prefs->ClearPref(kSettingsMigratedToUPM);
2497#endif
Nicola Tommasiff549832023-09-04 11:35:062498
Mikel Astizd848587f2023-10-02 09:28:032499 // Added 10/2023.
2500 ClearSyncRequestedPrefAndMaybeMigrate(profile_prefs);
2501
James Hawkins8d2adfd2023-10-05 08:24:562502// Added 10/2023.
2503#if BUILDFLAG(IS_CHROMEOS_ASH)
2504 profile_prefs->ClearPref(kLastSuccessfulDomainPref);
2505 profile_prefs->ClearPref(kShouldAttemptReenable);
Jeremy Wu52e5c852023-10-31 01:45:092506 profile_prefs->ClearPref(kAudioVolumePercent);
James Hawkins8d2adfd2023-10-05 08:24:562507#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2508
Tim Sergeantce1539d2023-10-12 00:35:492509 // Added 10/2023.
2510#if BUILDFLAG(IS_CHROMEOS)
2511 profile_prefs->ClearPref(kSupportedLinksAppPrefsKey);
2512#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2513
Eric Suma2add402023-10-24 03:48:532514#if BUILDFLAG(IS_CHROMEOS_ASH)
2515 // Added 10/2023.
2516 profile_prefs->ClearPref(kNightLightCachedLatitude);
2517 profile_prefs->ClearPref(kNightLightCachedLongitude);
2518#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2519
Mariam Ali4c166962024-01-04 12:18:162520 // Added 11/2023.
Ryan Kalla4bd74b412023-11-03 16:11:362521 profile_prefs->ClearPref(kPrivacySandboxAntiAbuseInitialized);
2522
Guido Urdaneta39d28bb72023-11-09 14:40:582523 // Added 11/2023.
2524 profile_prefs->ClearPref(kWebRTCAllowLegacyTLSProtocols);
2525
Jiaming Chengbf012ae2023-11-10 22:00:122526#if BUILDFLAG(IS_CHROMEOS_ASH)
2527 // Added 11/2023.
2528 profile_prefs->ClearPref(kSystemTrayExpanded);
2529#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2530
Zauri Meshvelianic39cff7c2023-11-14 20:31:112531#if BUILDFLAG(IS_CHROMEOS_ASH)
Mariam Ali4c166962024-01-04 12:18:162532 // Added 11/2023.
Zauri Meshvelianic39cff7c2023-11-14 20:31:112533 profile_prefs->ClearPref(kUserGeolocationAllowed);
2534#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2535
Victor Hugo Vianna Silvaa9775a22023-11-23 10:20:082536#if !BUILDFLAG(IS_ANDROID)
2537 // Added 11/2023.
2538 password_manager::features_util::MigrateOptInPrefToSyncSelectedTypes(
2539 profile_prefs);
2540#endif // !BUILDFLAG(IS_ANDROID)
2541
Victor Hugo Vianna Silva6cc84402023-12-06 15:21:572542#if BUILDFLAG(IS_ANDROID)
2543 // Added 11/2023, but DO NOT REMOVE after the usual year!
2544 // TODO(crbug.com/1445497): The pref kPasswordsUseUPMLocalAndSeparateStores
2545 // and this call (to compute said pref) should be removed once
2546 // kUnifiedPasswordManagerLocalPasswordsAndroidWithMigration is launched and
2547 // enough clients have migrated. UsesSplitStoresAndUPMForLocal() should be
2548 // updated to check the GmsCoreVersion directly instead of the pref, or might
2549 // be removed entirely, depending how the outdated GmsCore case is handled.
2550 password_manager_android_util::SetUsesSplitStoresAndUPMForLocal(profile_prefs,
2551 profile_path);
2552#endif
2553
Jan Keitel17fdab22023-11-17 12:41:362554 // Deprecated 11/2023.
2555 profile_prefs->ClearPref(kPasswordChangeSuccessTrackerFlows);
2556 profile_prefs->ClearPref(kPasswordChangeSuccessTrackerVersion);
2557
Wen-Chien Wang29111192023-11-30 02:13:302558#if BUILDFLAG(IS_CHROMEOS_ASH)
Mariam Ali4c166962024-01-04 12:18:162559 // Deprecated 11/2023.
Wen-Chien Wang29111192023-11-30 02:13:302560 profile_prefs->ClearPref(kImageSearchPrivacyNotice);
2561#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2562
Matt Jones90c86302023-12-07 18:06:382563 // Added 11/2023.
2564 profile_prefs->ClearPref(kWebAndAppActivityEnabledForShopping);
2565
Amelie Schneider21352392023-12-12 15:24:372566#if !BUILDFLAG(IS_ANDROID)
2567 // Added 12/2023.
2568 password_manager::features_util::MigrateDeclinedSaveOptInToExplicitOptOut(
2569 profile_prefs);
2570#endif // !BUILDFLAG(IS_ANDROID)
2571
Wenyu Fuae0324f2023-12-12 19:10:282572#if BUILDFLAG(IS_ANDROID)
2573 // Added 12/2023.
2574 profile_prefs->ClearPref(kTemplatesRandomOrder);
2575#endif
2576
Shu Yangfc961acb2023-12-15 10:58:552577#if BUILDFLAG(IS_ANDROID)
2578 // Added 12/2023.
2579 profile_prefs->ClearPref(kDesktopSitePeripheralSettingEnabled);
2580 profile_prefs->ClearPref(kDesktopSiteDisplaySettingEnabled);
2581#endif
2582
Lily Chen4766ba32023-12-15 17:37:122583 // Deprecated 12/2023.
2584 profile_prefs->ClearPref(kDownloadDuplicateFilePromptEnabled);
2585
Sophie Chang97c75f02023-12-21 17:36:302586 // Deprecated 12/2023.
2587 profile_prefs->ClearPref(kModelQualityLoggingClientId);
2588
Ryan Sultanem3b4f5952023-12-21 14:27:362589 // Added 12/2023.
2590 // Moving the `kExplicitBrowserSignin` from sync/ to signin/.
2591 // If the sync (old) pref still exists, copy it to signin (new),
2592 // and clear the sync part of the pref.
2593 if (profile_prefs->HasPrefPath(kSync_ExplicitBrowserSignin)) {
2594 profile_prefs->SetBoolean(
2595 prefs::kExplicitBrowserSignin,
2596 profile_prefs->GetBoolean(kSync_ExplicitBrowserSignin));
2597 profile_prefs->ClearPref(kSync_ExplicitBrowserSignin);
2598 }
2599
Mariam Alid43a5d42024-01-04 11:28:282600 // Added 01/2024.
2601 profile_prefs->ClearPref(kPrivacySandboxPageViewed);
2602
Mariam Ali454bafbf2024-01-04 16:24:092603 // Added 01/2024.
2604 profile_prefs->ClearPref(kPrivacySandboxApisEnabledV2);
2605 profile_prefs->ClearPref(kPrivacySandboxManuallyControlledV2);
2606
Anthony Cui74262132024-01-04 20:29:582607 // Added 01/2024.
2608#if BUILDFLAG(ENABLE_COMPOSE)
2609 profile_prefs->ClearPref(kPrefHasAcceptedComposeConsent);
Anthony Cui1f26306a2024-01-08 18:19:482610 profile_prefs->ClearPref(kAutofillAssistanceEnabled);
Anthony Cui74262132024-01-04 20:29:582611#endif
2612
Side Yilmazcdc4cd92024-01-08 14:28:362613 // Added 01/2024.
2614 profile_prefs->ClearPref(kSyncedLastTimePasswordCheckCompleted);
2615
Lily Chenf7aa1fc2024-01-09 16:25:052616 // Added 01/2024.
2617 profile_prefs->ClearPref(kDownloadBubbleIphSuppression);
2618
Andrea Orru162346b2024-01-12 10:24:452619 // Deprecated 01/2024.
Nicholas Hollingum8cef1a72024-01-17 23:12:512620#if BUILDFLAG(IS_CHROMEOS_ASH)
Andrea Orru162346b2024-01-12 10:24:452621 profile_prefs->ClearPref(kPersistedSystemExtensions);
Nicholas Hollingum8cef1a72024-01-17 23:12:512622 profile_prefs->ClearPref(kBorealisVmTokenHash);
Andrea Orru162346b2024-01-12 10:24:452623#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2624
Alison Gale002bbfa2024-01-24 17:22:492625#if !BUILDFLAG(IS_ANDROID)
2626 // Deprecated 1/2024.
2627 performance_manager::user_tuning::prefs::MigrateTabDiscardingExceptionsPref(
2628 profile_prefs);
2629#endif
2630
Daniel Murphy93abb662024-01-25 17:11:142631 // Added 01/2024.
2632 profile_prefs->ClearPref(kNtpShownPage);
2633 profile_prefs->ClearPref(kNtpAppPageNames);
2634
Ian Kilpatrick3990a492024-01-26 00:31:552635 // Deprecated 01/2024.
2636#if BUILDFLAG(IS_WIN)
2637 profile_prefs->ClearPref(kSearchResultsPagePrimaryFontsPref);
2638 profile_prefs->ClearPref(kSearchResultsPageFallbackFontsPref);
2639#endif
2640
Jiaming Chengbdc479b2024-01-29 21:47:302641 // Deprecated 01/2024.
2642#if BUILDFLAG(IS_CHROMEOS_ASH)
2643 profile_prefs->ClearPref(kUpdateNotificationLastShownMilestone);
2644#endif
2645
Viktor Semeniuk02ce9b82024-02-05 12:11:072646 // Deprecated 01/2024.
2647#if BUILDFLAG(IS_ANDROID)
2648 profile_prefs->ClearPref(kSavePasswordsSuspendedByError);
2649#endif
2650
Daniel Rubery0d9dc312024-02-06 02:21:372651 // Deprecated 02/2024
2652 profile_prefs->ClearPref(kSafeBrowsingDeepScanPromptSeen);
2653 profile_prefs->ClearPref(kSafeBrowsingEsbEnabledTimestamp);
2654
David Blackdf74125d22024-02-12 19:00:052655 // Deprecated 02/2024.
2656#if BUILDFLAG(IS_CHROMEOS_ASH)
2657 for (const char* pref : kWelcomeTourTimeBucketsOfFirstInteractions) {
2658 profile_prefs->ClearPref(pref);
2659 }
2660#endif
2661
Dominic Battre645d42342020-12-04 16:14:102662 // Please don't delete the following line. It is used by PRESUBMIT.py.
2663 // END_MIGRATE_OBSOLETE_PROFILE_PREFS
Scott Littlec463f3362022-02-15 18:44:242664
2665 // IMPORTANT NOTE: This code is *not* run on iOS Chrome. If a pref is migrated
2666 // or cleared here, and that pref is also used in iOS Chrome, it may also need
2667 // to be migrated or cleared specifically for iOS as well. This could be by
2668 // doing the migration in feature code that's called by all platforms instead
2669 // of here, or by calling migration code in the appropriate place for iOS
Gauthier Ambardfd73b8a12023-05-17 09:54:432670 // specifically, e.g. ios/chrome/browser/shared/model/prefs/browser_prefs.mm.
[email protected]102253f2012-12-14 17:00:582671}