diff --git a/chromium_version.txt b/chromium_version.txt index da058b20d..b5eb33b53 100644 --- a/chromium_version.txt +++ b/chromium_version.txt @@ -1 +1 @@ -142.0.7444.175 +143.0.7499.40 diff --git a/devutils/update_platform_patches.py b/devutils/update_platform_patches.py index ce25613d3..eecd98d02 100755 --- a/devutils/update_platform_patches.py +++ b/devutils/update_platform_patches.py @@ -1,10 +1,6 @@ #!/usr/bin/env python3 # -*- coding: utf-8 -*- -# Copyright 2025 The Helium Authors -# You can use, redistribute, and/or modify this source code under -# the terms of the GPL-3.0 license that can be found in the LICENSE file. - # Copyright (c) 2019 The ungoogled-chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE.ungoogled_chromium file. @@ -67,19 +63,19 @@ def _dir_empty(path): return False -def _rename_files_with_dirs(root_dir, sorted_file_iter): +def _rename_files_with_dirs(root_dir, source_dir, sorted_file_iter): ''' - Moves a list of sorted files back to the upstream repo, removing empty directories along the way + Moves a list of sorted files back to their original location, + removing empty directories along the way ''' past_parent = None - upstream_path = Path(os.path.dirname(os.path.realpath(__file__))) / '../patches' for partial_path in sorted_file_iter: complete_path = Path(root_dir, partial_path) - complete_upstream_path = Path(upstream_path, partial_path) + complete_source_path = Path(source_dir, partial_path) try: - complete_path.rename(complete_upstream_path) + complete_path.rename(complete_source_path) except FileNotFoundError: - get_logger().warning('Could not remove prepended patch: %s', complete_path) + get_logger().warning('Could not move prepended patch: %s', complete_path) if past_parent != complete_path.parent: while past_parent and _dir_empty(past_parent): past_parent.rmdir() @@ -91,7 +87,7 @@ def _rename_files_with_dirs(root_dir, sorted_file_iter): complete_path = complete_path.parent -def unmerge_platform_patches(platform_patches_dir): +def unmerge_platform_patches(platform_patches_dir, prepend_patches_dir): ''' Undo merge_platform_patches(), adding any new patches from series.merged as necessary @@ -105,8 +101,8 @@ def unmerge_platform_patches(platform_patches_dir): filter(len, (platform_patches_dir / _SERIES_PREPEND).read_text(encoding=ENCODING).splitlines())) - # Move prepended files to original location, preserving changes, and clean up - _rename_files_with_dirs(platform_patches_dir, sorted(prepend_series)) + # Move prepended files back to original location, preserving changes + _rename_files_with_dirs(platform_patches_dir, prepend_patches_dir, sorted(prepend_series)) # Determine positions of blank spaces in series.orig if not (platform_patches_dir / _SERIES_ORIG).exists(): @@ -175,10 +171,11 @@ def main(): repo_dir = Path(__file__).resolve().parent.parent success = False + prepend_patches_dir = repo_dir / 'patches' if args.command == 'merge': - success = merge_platform_patches(args.platform_patches, repo_dir / 'patches') + success = merge_platform_patches(args.platform_patches, prepend_patches_dir) elif args.command == 'unmerge': - success = unmerge_platform_patches(args.platform_patches) + success = unmerge_platform_patches(args.platform_patches, prepend_patches_dir) else: raise NotImplementedError(args.command) diff --git a/domain_substitution.list b/domain_substitution.list index 6cb1a2fbc..af90ec799 100644 --- a/domain_substitution.list +++ b/domain_substitution.list @@ -56,7 +56,6 @@ ash/login/ui/auth_icon_view.cc ash/login/ui/login_remove_account_dialog_unittest.cc ash/metrics/demo_session_metrics_recorder_unittest.cc ash/projector/projector_metadata_model.cc -ash/public/cpp/android_intent_helper_unittest.cc ash/public/cpp/system_notification_builder_unittest.cc ash/quick_insert/model/quick_insert_link_suggester.cc ash/quick_insert/model/quick_insert_link_suggester_unittest.cc @@ -515,8 +514,9 @@ cc/input/scroll_state.h cc/input/scrollbar_controller.h cc/metrics/average_lag_tracker.h cc/metrics/event_metrics.h -cc/metrics/scroll_jank_dropped_frame_tracker.cc -cc/metrics/scroll_jank_dropped_frame_tracker.h +cc/metrics/scroll_jank_v4_decider.cc +cc/metrics/scroll_jank_v4_decider.h +cc/metrics/scroll_jank_v4_processor.h cc/paint/paint_image.h cc/paint/tone_map_util.cc cc/scheduler/scheduler_state_machine.cc @@ -552,6 +552,8 @@ chrome/app/theme/PRESUBMIT.py chrome/browser/PRESUBMIT.py chrome/browser/about_flags.cc chrome/browser/accessibility/live_caption/live_caption_speech_recognition_host_browsertest.cc +chrome/browser/actor/safety_list_manager.cc +chrome/browser/actor/safety_list_manager_unittest.cc chrome/browser/actor/site_policy_browsertest.cc chrome/browser/ai/ai_data_keyed_service.cc chrome/browser/ai/ai_language_model.cc @@ -599,7 +601,6 @@ chrome/browser/apps/app_service/publishers/arc_apps.cc chrome/browser/apps/app_service/publishers/arc_apps_unittest.cc chrome/browser/apps/app_service/publishers/publisher_unittest.cc chrome/browser/apps/app_service/web_contents_app_id_utils.h -chrome/browser/apps/app_service/webapk/webapk_install_task.cc chrome/browser/apps/digital_goods/digital_goods_factory_impl.cc chrome/browser/apps/guest_view/web_view_browsertest.cc chrome/browser/apps/intent_helper/intent_chip_display_prefs_unittest.cc @@ -649,6 +650,7 @@ chrome/browser/ash/app_restore/full_restore_service_unittest.cc chrome/browser/ash/app_restore/informed_restore_browsertest.cc chrome/browser/ash/apps/apk_web_app_installer_browsertest.cc chrome/browser/ash/apps/apk_web_app_installer_unittest.cc +chrome/browser/ash/apps/webapk/webapk_install_task.cc chrome/browser/ash/arc/adbd/arc_adbd_monitor_bridge_unittest.cc chrome/browser/ash/arc/arc_util_unittest.cc chrome/browser/ash/arc/auth/arc_auth_service_browsertest.cc @@ -670,7 +672,6 @@ chrome/browser/ash/arc/session/arc_session_manager_browsertest.cc chrome/browser/ash/arc/session/arc_session_manager_unittest.cc chrome/browser/ash/arc/tracing/arc_app_performance_tracing.cc chrome/browser/ash/arc/tracing/overview_tracing_handler.cc -chrome/browser/ash/assistant/assistant_util.cc chrome/browser/ash/attestation/attestation_ca_client.cc chrome/browser/ash/attestation/attestation_ca_client_unittest.cc chrome/browser/ash/attestation/platform_verification_flow_unittest.cc @@ -946,8 +947,13 @@ chrome/browser/content_settings/content_settings_pref_provider_unittest.cc chrome/browser/content_settings/host_content_settings_map_unittest.cc chrome/browser/content_settings/javascript_optimizer_provider_android_unittest.cc chrome/browser/content_settings/sound_content_setting_observer_unittest.cc +chrome/browser/contextual_cueing/caching_zero_state_suggestions_manager_unittest.cc chrome/browser/contextual_cueing/zero_state_suggestions_browsertest.cc chrome/browser/contextual_tasks/contextual_tasks_context_controller_impl_unittest.cc +chrome/browser/contextual_tasks/contextual_tasks_ui.cc +chrome/browser/contextual_tasks/contextual_tasks_ui_service.cc +chrome/browser/contextual_tasks/contextual_tasks_ui_service_unittest.cc +chrome/browser/contextual_tasks/tab_strip_context_decorator_unittest.cc chrome/browser/custom_handlers/protocol_handler_registry_browsertest.cc chrome/browser/data_sharing/desktop/data_sharing_conversion_utils_unittest.cc chrome/browser/data_sharing/desktop/data_sharing_service_browsertest.cc @@ -1101,6 +1107,7 @@ chrome/browser/extensions/extension_context_menu_model_browsertest.cc chrome/browser/extensions/extension_keybinding_browsertest.cc chrome/browser/extensions/extension_loading_browsertest.cc chrome/browser/extensions/extension_management.cc +chrome/browser/extensions/extension_management_unittest.cc chrome/browser/extensions/extension_override_apitest.cc chrome/browser/extensions/extension_prefs_unittest.cc chrome/browser/extensions/extension_service_test_base.cc @@ -1115,7 +1122,6 @@ chrome/browser/extensions/external_pref_loader.cc chrome/browser/extensions/external_provider_impl_chromeos_unittest.cc chrome/browser/extensions/file_handlers/web_file_handlers_permission_handler.cc chrome/browser/extensions/forced_extensions/force_installed_test_base.cc -chrome/browser/extensions/install_signer.cc chrome/browser/extensions/installed_loader_unittest.cc chrome/browser/extensions/lazy_background_page_apitest.cc chrome/browser/extensions/menu_manager_unittest.cc @@ -1160,7 +1166,7 @@ chrome/browser/file_system_access/cloud_identifier/cloud_identifier_util_ash_bro chrome/browser/first_run/bookmark_importer_unittest.cc chrome/browser/first_run/first_run_unittest.cc chrome/browser/flag-metadata.json -chrome/browser/flag_descriptions.cc +chrome/browser/flag_descriptions.h chrome/browser/flags/android/chrome_session_state.h chrome/browser/font_prewarmer_tab_helper_browsertest.cc chrome/browser/glic/e2e_test/glic_e2e_test.cc @@ -1171,6 +1177,7 @@ chrome/browser/glic/fre/glic_fre_page_handler.cc chrome/browser/glic/glic_metrics_unittest.cc chrome/browser/glic/glic_user_status_browsertest.cc chrome/browser/glic/host/glic_annotation_manager_interactive_uitest.cc +chrome/browser/glic/host/glic_api_browsertest.cc chrome/browser/glic/host/glic_cookie_synchronizer.cc chrome/browser/glic/host/glic_cookie_synchronizer_unittest.cc chrome/browser/glic/host/glic_page_handler.cc @@ -1332,6 +1339,7 @@ chrome/browser/page_load_metrics/observers/gws_abandoned_page_load_metrics_obser chrome/browser/page_load_metrics/observers/gws_hp_page_load_metrics_observer_browsertest.cc chrome/browser/page_load_metrics/observers/gws_page_load_metrics_observer_browsertest.cc chrome/browser/page_load_metrics/observers/gws_page_load_metrics_observer_unittest.cc +chrome/browser/page_load_metrics/observers/initial_webui_page_load_metrics_observer.h chrome/browser/page_load_metrics/observers/loading_predictor_page_load_metrics_observer_unittest.cc chrome/browser/page_load_metrics/observers/local_network_requests_page_load_metrics_observer_unittest.cc chrome/browser/page_load_metrics/observers/multi_tab_loading_page_load_metrics_observer_unittest.cc @@ -1378,6 +1386,7 @@ chrome/browser/policy/cloud/cloud_policy_browsertest.cc chrome/browser/policy/cloud/cloud_policy_invalidator.h chrome/browser/policy/cloud/device_management_service_browsertest.cc chrome/browser/policy/cloud/user_policy_signin_service_unittest.cc +chrome/browser/policy/developer_tools_policy_checker_unittest.cc chrome/browser/policy/extension_policy_browsertest.cc chrome/browser/policy/messaging_layer/upload/file_upload_impl.cc chrome/browser/policy/policy_prefs_browsertest.cc @@ -1527,8 +1536,6 @@ chrome/browser/resources/chromeos/accessibility/common/testing/mock_tts.js chrome/browser/resources/chromeos/accessibility/common/tutorial/chromevox_tutorial.js chrome/browser/resources/chromeos/accessibility/definitions/command_line_private.d.ts chrome/browser/resources/chromeos/accessibility/select_to_speak/mv2/select_to_speak.ts -chrome/browser/resources/chromeos/accessibility/select_to_speak/mv2/select_to_speak_navigation_control_test.js -chrome/browser/resources/chromeos/accessibility/select_to_speak/mv2/select_to_speak_unittest.js chrome/browser/resources/chromeos/accessibility/select_to_speak/mv3/select_to_speak.ts chrome/browser/resources/chromeos/accessibility/select_to_speak/mv3/select_to_speak_navigation_control_test.js chrome/browser/resources/chromeos/accessibility/select_to_speak/mv3/select_to_speak_unittest.js @@ -1572,6 +1579,7 @@ chrome/browser/resources/default_apps/external_extensions.json chrome/browser/resources/downloads/icons.html chrome/browser/resources/extensions/detail_view.ts chrome/browser/resources/extensions/mv2_deprecation_panel.ts +chrome/browser/resources/extensions_zero_state_promo/zero_state_promo_app.html.ts chrome/browser/resources/feedback/js/feedback_util.ts chrome/browser/resources/gaia_auth_host/PRESUBMIT.py chrome/browser/resources/gaia_auth_host/authenticator.js @@ -1815,6 +1823,7 @@ chrome/browser/tab_contents/navigation_metrics_recorder_browsertest.cc chrome/browser/tab_ui/android/java/strings/android_tab_ui_strings.grd chrome/browser/task_manager/sampling/shared_sampler_win_defines.h chrome/browser/themes/theme_syncable_service.cc +chrome/browser/touch_to_fill/autofill/android/touch_to_fill_payment_method_controller_unittest.cc chrome/browser/translate/translate_manager_browsertest.cc chrome/browser/trusted_vault/trusted_vault_encryption_keys_tab_helper_browsertest.cc chrome/browser/ui/accelerator_table.cc @@ -1865,7 +1874,6 @@ chrome/browser/ui/ash/wallpaper/wallpaper_controller_client_impl.cc chrome/browser/ui/ash/web_view/ash_web_view_impl_browsertest.cc chrome/browser/ui/ash/wm/coral_browsertest.cc chrome/browser/ui/autofill/address_editor_controller_unittest.cc -chrome/browser/ui/autofill/autofill_ai/save_or_update_autofill_ai_data_controller_impl.cc chrome/browser/ui/autofill/autofill_keyboard_accessory_controller_impl.cc chrome/browser/ui/autofill/chrome_autofill_client.cc chrome/browser/ui/autofill/delete_address_profile_dialog_controller_impl_browsertest.cc @@ -1934,6 +1942,7 @@ chrome/browser/ui/managed_ui_browsertest.cc chrome/browser/ui/media_router/media_router_ui_helper_unittest.cc chrome/browser/ui/media_router/media_router_ui_unittest.cc chrome/browser/ui/media_router/query_result_manager.h +chrome/browser/ui/omnibox/omnibox_context_menu_controller_browsertest.cc chrome/browser/ui/omnibox/omnibox_edit_model.cc chrome/browser/ui/omnibox/omnibox_edit_model.h chrome/browser/ui/omnibox/omnibox_edit_model_unittest.cc @@ -1986,6 +1995,7 @@ chrome/browser/ui/tabs/pinned_tab_service_browsertest.cc chrome/browser/ui/tabs/saved_tab_groups/collaboration_messaging_page_action_controller_unittest.cc chrome/browser/ui/tabs/saved_tab_groups/collaboration_messaging_tab_data_unittest.cc chrome/browser/ui/tabs/saved_tab_groups/instant_message_queue_processor_unittest.cc +chrome/browser/ui/tabs/saved_tab_groups/tab_group_menu_utils_unittest.cc chrome/browser/ui/tabs/saved_tab_groups/tab_group_sync_delegate_browsertest.cc chrome/browser/ui/tabs/tab_list_interface_observer.h chrome/browser/ui/tabs/tab_strip_api/tab_strip_service_impl_browsertest.cc @@ -1996,7 +2006,7 @@ chrome/browser/ui/toolbar/cast/cast_toolbar_button_util.cc chrome/browser/ui/toolbar/location_bar_model_unittest.cc chrome/browser/ui/url_identity_unittest.cc chrome/browser/ui/views/apps/app_dialog/app_uninstall_dialog_view.cc -chrome/browser/ui/views/autofill/autofill_ai/save_or_update_autofill_ai_data_bubble_view_browsertest.cc +chrome/browser/ui/views/autofill/autofill_ai/autofill_ai_import_data_bubble_view_browsertest.cc chrome/browser/ui/views/autofill/payments/filled_card_information_bubble_views_interactive_uitest.cc chrome/browser/ui/views/autofill/payments/iban_bubble_view_uitest.cc chrome/browser/ui/views/autofill/payments/offer_notification_bubble_views_test_base.cc @@ -2032,7 +2042,6 @@ chrome/browser/ui/views/frame/browser_view.h chrome/browser/ui/views/frame/browser_view_browsertest.cc chrome/browser/ui/views/frame/multi_contents_drop_target_view_unittest.cc chrome/browser/ui/views/frame/multi_contents_view_browsertest.cc -chrome/browser/ui/views/frame/multi_contents_view_drop_target_controller_browsertest.cc chrome/browser/ui/views/frame/multi_contents_view_drop_target_controller_unittest.cc chrome/browser/ui/views/frame/webui_tab_strip_interactive_uitest.cc chrome/browser/ui/views/intent_picker_bubble_view_browsertest.cc @@ -2075,6 +2084,8 @@ chrome/browser/ui/views/profiles/profiles_pixel_test_utils.cc chrome/browser/ui/views/profiles/sync_confirmation_ui_browsertest.cc chrome/browser/ui/views/promos/ios_promo_constants.h chrome/browser/ui/views/qrcode_generator/qrcode_generator_bubble_unittest.cc +chrome/browser/ui/views/search_engines/dse_reset_dialog.cc +chrome/browser/ui/views/search_engines/dse_reset_dialog_view_browsertest.cc chrome/browser/ui/views/select_file_dialog_extension/select_file_dialog_extension_browsertest.cc chrome/browser/ui/views/session_crashed_bubble_view.cc chrome/browser/ui/views/sharing/click_to_call_browsertest.cc @@ -2144,6 +2155,7 @@ chrome/browser/ui/webui/management/management_ui_handler_unittest.cc chrome/browser/ui/webui/media_router/cast_feedback_ui.cc chrome/browser/ui/webui/nearby_internals/quick_pair/quick_pair_handler.cc chrome/browser/ui/webui/new_tab_footer/new_tab_footer_handler_browsertest.cc +chrome/browser/ui/webui/new_tab_page/action_chips/action_chips_handler_unittest.cc chrome/browser/ui/webui/new_tab_page/foo/foo_handler.cc chrome/browser/ui/webui/new_tab_page/new_tab_page_handler_unittest.cc chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc @@ -2163,6 +2175,7 @@ chrome/browser/ui/webui/sanitized_image_source_unittest.cc chrome/browser/ui/webui/searchbox/contextual_searchbox_handler_unittest.cc chrome/browser/ui/webui/searchbox/contextual_searchbox_test_utils.cc chrome/browser/ui/webui/searchbox/searchbox_handler.cc +chrome/browser/ui/webui/searchbox/webui_omnibox_interactive_uitest.cc chrome/browser/ui/webui/settings/about_handler_unittest.cc chrome/browser/ui/webui/settings/on_startup_handler_unittest.cc chrome/browser/ui/webui/settings/people_handler_unittest.cc @@ -2239,13 +2252,14 @@ chrome/browser/web_applications/preinstalled_web_apps/google_slides.cc chrome/browser/web_applications/preinstalled_web_apps/messages_dogfood.cc chrome/browser/web_applications/preinstalled_web_apps/notebook_lm.cc chrome/browser/web_applications/preinstalled_web_apps/preinstalled_web_apps.cc +chrome/browser/web_applications/preinstalled_web_apps/vids.cc chrome/browser/web_applications/preinstalled_web_apps/youtube.cc chrome/browser/web_applications/preinstalled_web_apps_browsertest.cc chrome/browser/web_applications/web_app_command_scheduler.cc chrome/browser/web_applications/web_app_helpers_unittest.cc chrome/browser/web_applications/web_app_install_utils_unittest.cc -chrome/browser/web_applications/web_app_provider.cc chrome/browser/web_applications/web_contents/web_app_icon_downloader_unittest.cc +chrome/browser/web_applications/web_install_browsertest.cc chrome/browser/webapps/installable/installable_manager_browsertest.cc chrome/browser/webauthn/authenticator_request_dialog_controller.cc chrome/browser/webauthn/cablev2_devices.h @@ -2259,15 +2273,20 @@ chrome/browser/webauthn/chrome_web_authentication_delegate_unittest.cc chrome/browser/webauthn/chrome_webauthn_autofill_interactive_uitest.cc chrome/browser/webauthn/enclave_authenticator_browsertest.cc chrome/browser/webauthn/enclave_manager.cc +chrome/browser/webauthn/enclave_manager.h chrome/browser/webauthn/enclave_manager_unittest.cc chrome/browser/webauthn/fake_magic_arch.h chrome/browser/webauthn/fake_recovery_key_store.h chrome/browser/webauthn/fake_security_domain_service.cc +chrome/browser/webauthn/gpm_enclave_controller.h +chrome/browser/webauthn/passkey_unlock_manager_browsertest.cc chrome/browser/webauthn/test_util.h chrome/browser/webshare/win/fake_random_access_stream.cc chrome/browser/webshare/win/share_operation.cc chrome/browser/win/chrome_process_finder.cc chrome/browser/win/conflicts/enumerate_shell_extensions.cc +chrome/browser/win/installer_downloader/installer_downloader_controller.cc +chrome/browser/win/installer_downloader/installer_downloader_feature.h chrome/browser/win/jumplist.cc chrome/browser/win/jumplist_update_util_unittest.cc chrome/browser/win/parental_controls.cc @@ -2699,7 +2718,6 @@ chromeos/ash/services/device_sync/remote_device_provider_impl_unittest.cc chromeos/ash/services/device_sync/remote_device_v2_loader_impl_unittest.cc chromeos/ash/services/device_sync/switches.cc chromeos/ash/services/ime/input_method_user_data_service_impl_unittest.cc -chromeos/ash/services/libassistant/public/cpp/assistant_suggestion.h chromeos/ash/services/quick_pair/fast_pair_data_parser.cc chromeos/ash/services/quick_pair/fast_pair_decryption.cc chromeos/ash/services/quick_pair/public/cpp/account_key_filter.cc @@ -2772,6 +2790,7 @@ components/autofill/core/browser/metrics/form_interactions_ukm_logger_unittest.c components/autofill/core/browser/metrics/prediction_quality_metrics_unittest.cc components/autofill/core/browser/metrics/quality_metrics_unittest.cc components/autofill/core/browser/ml_model/field_classification_model_handler.cc +components/autofill/core/browser/payments/amount_extraction_manager_unittest.cc components/autofill/core/browser/payments/autofill_offer_manager_unittest.cc components/autofill/core/browser/payments/constants.h components/autofill/core/browser/payments/credit_card_access_manager_test_base.cc @@ -2874,7 +2893,6 @@ components/components_google_chrome_strings.grd components/content_relationship_verification/digital_asset_links_handler.cc components/content_relationship_verification/digital_asset_links_handler.h components/content_settings/browser/page_specific_content_settings_unittest.cc -components/content_settings/core/browser/content_settings_partitioned_origin_value_map_unittest.cc components/content_settings/core/browser/content_settings_provider_unittest.cc components/content_settings/core/browser/content_settings_uma_util.cc components/content_settings/core/common/content_settings_pattern.cc @@ -2882,10 +2900,13 @@ components/content_settings/core/common/content_settings_pattern.h components/content_settings/core/common/content_settings_pattern_parser_unittest.cc components/content_settings/core/common/content_settings_pattern_unittest.cc components/content_settings/renderer/content_settings_agent_impl.cc -components/contextual_search/core/browser/contextual_search_context.h -components/contextual_search/core/browser/contextual_search_delegate_impl.cc -components/contextual_search/core/browser/contextual_search_delegate_impl_unittest.cc +components/contextual_search/internal/composebox_query_controller.cc +components/contextual_search/internal/composebox_query_controller_unittest.cc +components/contextual_tasks/internal/account_utils_unittest.cc components/contextual_tasks/internal/contextual_tasks_service_impl_unittest.cc +components/contextual_tasks/internal/fallback_title_context_decorator_unittest.cc +components/contextual_tasks/internal/favicon_context_decorator_unittest.cc +components/contextual_tasks/internal/history_context_decorator_unittest.cc components/contextual_tasks/public/contextual_task_context_unittest.cc components/contextual_tasks/public/contextual_task_unittest.cc components/continuous_search/browser/search_result_extractor_client_unittest.cc @@ -2957,6 +2978,7 @@ components/enterprise/data_controls/core/browser/rule_unittest.cc components/enterprise/data_controls/core/browser/rules_service_base_unittest.cc components/enterprise/obfuscation/core/utils.h components/enterprise/signin/enterprise_identity_service_unittest.cc +components/enterprise_strings.grdp components/error_page/common/localized_error.cc components/error_page_strings.grdp components/exo/keyboard_unittest.cc @@ -3183,6 +3205,7 @@ components/omnibox/browser/on_device_head_provider_unittest.cc components/omnibox/browser/on_device_tail_model_service_unittest.cc components/omnibox/browser/open_tab_provider_unittest.cc components/omnibox/browser/recently_closed_tabs_provider.cc +components/omnibox/browser/remote_suggestions_service.h components/omnibox/browser/remote_suggestions_service_unittest.cc components/omnibox/browser/scored_history_match.cc components/omnibox/browser/scored_history_match_unittest.cc @@ -3201,8 +3224,6 @@ components/omnibox/browser/zero_suggest_cache_service_unittest.cc components/omnibox/browser/zero_suggest_provider_unittest.cc components/omnibox/browser/zero_suggest_verbatim_match_provider_unittest.cc components/omnibox/common/omnibox_feature_configs.h -components/omnibox/composebox/composebox_query_controller.cc -components/omnibox/composebox/composebox_query_controller_unittest.cc components/omnibox/resources/omnibox_pedal_synonyms.grd components/omnibox_pedal_ui_strings.grdp components/omnibox_strings.grdp @@ -3294,6 +3315,7 @@ components/password_manager/core/browser/old_google_credentials_cleaner.cc components/password_manager/core/browser/old_google_credentials_cleaner.h components/password_manager/core/browser/old_google_credentials_cleaner_unittest.cc components/password_manager/core/browser/os_crypt_async_migrator.h +components/password_manager/core/browser/password_autofill_manager_unittest.cc components/password_manager/core/browser/password_feature_manager_impl_unittest.cc components/password_manager/core/browser/password_form_filling_unittest.cc components/password_manager/core/browser/password_form_manager_unittest.cc @@ -3397,7 +3419,6 @@ components/permissions/prediction_service/prediction_model_handler.cc components/permissions/prediction_service/prediction_service_base.h components/permissions/test/mock_permission_request.h components/permissions_strings.grdp -components/persistent_cache/backend_params_manager.h components/persistent_cache/sqlite/vfs/sandboxed_file.cc components/plus_addresses/core/browser/metrics/plus_address_submission_logger_unittest.cc components/plus_addresses/core/browser/plus_address_http_client_impl.cc @@ -3623,6 +3644,7 @@ components/resources/terms/terms_zh-TW.html components/rlz/rlz_tracker.h components/safe_browsing/android/real_time_url_checks_allowlist_resource_file_unittest.cc components/safe_browsing/android/real_time_url_checks_allowlist_unittest.cc +components/safe_browsing/android/safe_browsing_api_handler_util.h components/safe_browsing/content/browser/client_side_detection_service.cc components/safe_browsing/content/browser/notification_content_detection/notifications_global_cache_list_unittest.cc components/safe_browsing/content/browser/password_protection/password_protection_service_unittest.cc @@ -3664,6 +3686,7 @@ components/safe_search_api/stub_url_checker.cc components/safety_check/update_check_helper.h components/safety_check/url_constants.cc components/saved_tab_groups/internal/android/tab_group_sync_service_android_unittest.cc +components/saved_tab_groups/internal/migration/tab_group_entity_converter_unittest.cc components/saved_tab_groups/internal/saved_tab_group_sync_bridge_unittest.cc components/saved_tab_groups/internal/shared_tab_group_account_data_sync_bridge_unittest.cc components/saved_tab_groups/internal/shared_tab_group_data_sync_bridge_unittest.cc @@ -3713,8 +3736,6 @@ components/services/app_service/public/cpp/app_capability_access_cache_wrapper_u components/services/app_service/public/cpp/app_launch_util.h components/services/app_service/public/cpp/app_registry_cache_unittest.cc components/services/app_service/public/cpp/app_registry_cache_wrapper_unittest.cc -components/services/app_service/public/cpp/app_storage/app_storage_file_handler_unittest.cc -components/services/app_service/public/cpp/app_storage/app_storage_unittest.cc components/services/app_service/public/cpp/app_types.h components/services/app_service/public/cpp/app_update_unittest.cc components/services/app_service/public/cpp/capability_access_update_unittest.cc @@ -3848,6 +3869,9 @@ components/sync_sessions/session_sync_bridge.h components/sync_sessions/synced_session_unittest.cc components/system_cpu/cpu_probe_win.cc components/themes/ntp_background_service.cc +components/touch_to_search/core/browser/contextual_search_context.h +components/touch_to_search/core/browser/contextual_search_delegate_impl.cc +components/touch_to_search/core/browser/contextual_search_delegate_impl_unittest.cc components/tpcd/enterprise_reporting/enterprise_reporting_tab_helper_unittest.cc components/tpcd/metadata/browser/parser_unittest.cc components/tracing/common/etw_consumer_win.cc @@ -3936,6 +3960,7 @@ components/viz/common/features.h components/viz/common/quads/render_pass_io_unittest.cc components/viz/common/resources/shared_image_format.h components/viz/common/switches.cc +components/viz/host/persistent_cache_sandboxed_file_factory.cc components/viz/service/display/output_surface.h components/viz/service/display/overlay_candidate.h components/viz/service/display/overlay_processor_using_strategy.cc @@ -3950,10 +3975,12 @@ components/webapps/browser/android/webapk/webapk_icons_hasher_unittest.cc components/webapps/browser/android/webapk/webapk_single_icon_hasher_unittest.cc components/webapps/browser/banners/app_banner_settings_helper_unittest.cc components/webapps/browser/installable/installable_evaluator_unittest.cc +components/webapps/common/manifest_id_constants.h components/webapps/isolated_web_apps/types/source_unittest.cc components/webauthn/content/browser/internal_authenticator_impl_unittest.cc components/webauthn/core/browser/client_data_json.cc components/webauthn/core/browser/passkey_change_quota_tracker_unittest.cc +components/webauthn/json/value_conversions.h components/webui/flags/flags_test_helpers.cc components/webui/flags/resources/app.html.ts components/webxr/android/arcore_install_helper.cc @@ -4068,6 +4095,7 @@ content/browser/preloading/prefetch/prefetch_match_resolver.cc content/browser/preloading/prefetch/prefetch_params.cc content/browser/preloading/prefetch/prefetch_scheduler.cc content/browser/preloading/prefetch/prefetch_scheduler.h +content/browser/preloading/prefetch/prefetch_servable_state.h content/browser/preloading/prefetch/prefetch_service.cc content/browser/preloading/prefetch/prefetch_status.h content/browser/preloading/prefetch/prefetch_streaming_url_loader_common_types.h @@ -4117,10 +4145,10 @@ content/browser/renderer_host/render_view_host_unittest.cc content/browser/renderer_host/render_widget_host_impl.h content/browser/renderer_host/render_widget_host_view_aura.h content/browser/renderer_host/should_swap_browsing_instance.h -content/browser/renderer_host/text_input_client_mac.h content/browser/renderer_host/virtual_keyboard_controller_win.h content/browser/resources/PRESUBMIT.py content/browser/resources/gpu/info_view.ts +content/browser/resources/media/client_renderer.js content/browser/resources/traces_internals/icons.html content/browser/sandbox_ipc_linux.h content/browser/sandbox_support_win_impl.cc @@ -4332,9 +4360,9 @@ content/zygote/zygote_linux.cc content/zygote/zygote_linux.h content/zygote/zygote_main_linux.cc crypto/chaps_support.cc +crypto/ecdsa_utils.h crypto/hkdf.h crypto/hmac.h -crypto/hmac_unittest.cc crypto/kdf.h crypto/nss_util.cc crypto/secure_hash.h @@ -4406,6 +4434,7 @@ extensions/browser/event_listener_map.h extensions/browser/event_listener_map_unittest.cc extensions/browser/event_router_unittest.cc extensions/browser/extension_prefs_observer.h +extensions/browser/install_signer.cc extensions/browser/permissions_manager.h extensions/browser/script_injection_tracker.cc extensions/browser/suggest_permission_util.cc @@ -4593,7 +4622,6 @@ gpu/command_buffer/service/shared_image/d3d_image_backing_factory.cc gpu/command_buffer/service/shared_image/dcomp_image_backing_factory.cc gpu/command_buffer/service/shared_image/dcomp_surface_image_backing.cc gpu/command_buffer/service/shared_image/dxgi_swap_chain_image_representation.cc -gpu/command_buffer/service/shared_image/gpu_memory_buffer_factory_dxgi.cc gpu/command_buffer/service/shared_image/ozone_image_backing_factory.cc gpu/command_buffer/service/shared_image/shared_image_factory.cc gpu/command_buffer/service/shared_image/video_image_reader_image_backing.cc @@ -4704,7 +4732,6 @@ media/gpu/vaapi/test/vp8_decoder.cc media/gpu/vaapi/test/vp9_decoder.cc media/gpu/vaapi/vaapi_image_decoder_test_common.h media/gpu/vaapi/vaapi_unittest.cc -media/gpu/vaapi/vaapi_webp_decoder_unittest.cc media/gpu/windows/d3d11_video_decoder_wrapper.cc media/gpu/windows/d3d12_copy_command_list_wrapper.cc media/gpu/windows/d3d12_video_encode_h264_delegate.cc @@ -4808,7 +4835,6 @@ net/disk_cache/disk_cache.h net/disk_cache/simple/simple_backend_impl.h net/disk_cache/simple/simple_file_enumerator.h net/disk_cache/simple/simple_index.cc -net/disk_cache/sql/sql_entry_impl.cc net/dns/address_sorter_posix.cc net/dns/context_host_resolver_unittest.cc net/dns/dns_config_service_linux_unittest.cc @@ -4834,6 +4860,7 @@ net/dns/mapped_host_resolver_unittest.cc net/dns/mdns_cache_unittest.cc net/dns/mdns_client.h net/dns/notify_watcher_mac.cc +net/dns/platform_dns_query_executor_android.h net/dns/public/doh_provider_entry.cc net/dns/record_parsed_unittest.cc net/dns/record_rdata_unittest.cc @@ -4892,7 +4919,7 @@ net/ntlm/ntlm_client.cc net/ntlm/ntlm_client.h net/ntlm/ntlm_test_data.h net/ntlm/ntlm_unittest.cc -net/proxy_resolution/configured_proxy_resolution_service.cc +net/proxy_resolution/configured_proxy_resolution_service.h net/proxy_resolution/configured_proxy_resolution_service_unittest.cc net/proxy_resolution/pac_file_decider.cc net/proxy_resolution/pac_file_decider_unittest.cc @@ -4969,6 +4996,7 @@ net/third_party/quiche/src/quiche/quic/core/quic_dispatcher_test.cc net/third_party/quiche/src/quiche/quic/core/quic_packet_creator_test.cc net/third_party/quiche/src/quiche/quic/core/quic_server_id_test.cc net/third_party/quiche/src/quiche/quic/core/quic_session_test.cc +net/third_party/quiche/src/quiche/quic/core/tls_client_handshaker.h net/third_party/quiche/src/quiche/quic/tools/quic_client_bin.cc net/third_party/quiche/src/quiche/quic/tools/quic_memory_cache_backend.cc net/third_party/quiche/src/quiche/quic/tools/quic_memory_cache_backend_test.cc @@ -5089,7 +5117,6 @@ sandbox/win/src/security_level.h sandbox/win/src/startup_information_helper.cc sandbox/win/src/win_utils.cc services/BUILD.gn -services/accessibility/features/javascript/event.js services/device/generic_sensor/platform_sensor_and_provider_unittest_win.cc services/device/generic_sensor/platform_sensor_provider_chromeos.cc services/device/generic_sensor/platform_sensor_reader_win.cc @@ -5177,7 +5204,6 @@ services/webnn/dml/graph_builder_dml.h services/webnn/dml/graph_impl_dml.cc services/webnn/dml/tensor_desc.cc services/webnn/dml/utils.cc -services/webnn/ort/platform_functions_ort.cc services/webnn/tflite/graph_builder_tflite.cc services/webnn/webnn_graph_impl_backend_test.cc skia/config/SkUserConfig.h @@ -5351,6 +5377,7 @@ third_party/angle/extensions/EGL_ANGLE_global_fence_sync.txt third_party/angle/extensions/EGL_ANGLE_iosurface_client_buffer.txt third_party/angle/extensions/EGL_ANGLE_keyed_mutex.txt third_party/angle/extensions/EGL_ANGLE_memory_usage_report.txt +third_party/angle/extensions/EGL_ANGLE_metal_commands_scheduled_sync.txt third_party/angle/extensions/EGL_ANGLE_metal_texture_client_buffer.txt third_party/angle/extensions/EGL_ANGLE_no_error.txt third_party/angle/extensions/EGL_ANGLE_platform_angle_d3d_luid.txt @@ -5558,6 +5585,7 @@ third_party/blink/renderer/core/css/properties/css_parsing_utils.cc third_party/blink/renderer/core/css/properties/longhands/longhands_custom.cc third_party/blink/renderer/core/css/remote_font_face_source.cc third_party/blink/renderer/core/css/resolver/style_adjuster.cc +third_party/blink/renderer/core/css/rule_set_test.cc third_party/blink/renderer/core/css/style_engine.cc third_party/blink/renderer/core/css/style_engine_test.cc third_party/blink/renderer/core/css/style_rule_import.cc @@ -5572,6 +5600,7 @@ third_party/blink/renderer/core/dom/class_collection.cc third_party/blink/renderer/core/dom/class_collection.h third_party/blink/renderer/core/dom/comment.idl third_party/blink/renderer/core/dom/container_node.cc +third_party/blink/renderer/core/dom/document.h third_party/blink/renderer/core/dom/dom_implementation.idl third_party/blink/renderer/core/dom/element.cc third_party/blink/renderer/core/dom/element.idl @@ -5676,6 +5705,7 @@ third_party/blink/renderer/core/frame/web_local_frame_impl.cc third_party/blink/renderer/core/frame/web_remote_frame_impl.cc third_party/blink/renderer/core/geolocation/geolocation.h third_party/blink/renderer/core/html/anchor_element_metrics_test.cc +third_party/blink/renderer/core/html/canvas/canvas_rendering_context.cc third_party/blink/renderer/core/html/custom/element_internals.idl third_party/blink/renderer/core/html/custom/validity_state_flags.idl third_party/blink/renderer/core/html/forms/base_text_input_type.cc @@ -5733,6 +5763,7 @@ third_party/blink/renderer/core/html/parser/html_document_parser.cc third_party/blink/renderer/core/input/event_handler.cc third_party/blink/renderer/core/input/event_handling_util.cc third_party/blink/renderer/core/input/pointer_event_manager.cc +third_party/blink/renderer/core/inspector/console_message.h third_party/blink/renderer/core/inspector/devtools_session.h third_party/blink/renderer/core/intersection_observer/intersection_observer_controller.h third_party/blink/renderer/core/layout/adjust_for_absolute_zoom.h @@ -5894,7 +5925,6 @@ third_party/blink/renderer/modules/accessibility/ax_object_cache_impl.cc third_party/blink/renderer/modules/accessibility/ax_object_cache_impl.h third_party/blink/renderer/modules/accessibility/testing/internals_accessibility.h third_party/blink/renderer/modules/bluetooth/bluetooth_error.cc -third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering_context_2d.cc third_party/blink/renderer/modules/clipboard/clipboard.idl third_party/blink/renderer/modules/content_extraction/ai_page_content_agent_unittest.cc third_party/blink/renderer/modules/credentialmanagement/authentication_credentials_container.cc @@ -6001,10 +6031,12 @@ third_party/blink/renderer/platform/graphics/paint/region_capture_data.h third_party/blink/renderer/platform/heap/collection_support/heap_linked_stack.h third_party/blink/renderer/platform/image-decoders/bmp/bmp_image_decoder.cc third_party/blink/renderer/platform/image-decoders/bmp/bmp_image_decoder_test.cc +third_party/blink/renderer/platform/image-decoders/bmp/bmp_image_reader.h third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc third_party/blink/renderer/platform/image-decoders/webp/webp_image_decoder.cc third_party/blink/renderer/platform/instrumentation/use_counter.h third_party/blink/renderer/platform/loader/fetch/client_hints_preferences_test.cc +third_party/blink/renderer/platform/loader/fetch/console_logger.h third_party/blink/renderer/platform/loader/fetch/fetch_utils.h third_party/blink/renderer/platform/loader/fetch/raw_resource.h third_party/blink/renderer/platform/loader/fetch/resource.cc @@ -6358,6 +6390,7 @@ third_party/catapult/dashboard/sandwich_verification/Makefile third_party/catapult/dashboard/sandwich_verification/common/dashboard_service.py third_party/catapult/dashboard/sandwich_verification/common/pinpoint_service.py third_party/catapult/dashboard/sandwich_verification/common/request.py +third_party/catapult/dashboard/skia_export/skia_export/skia_converter.py third_party/catapult/devil/PRESUBMIT.py third_party/catapult/devil/devil/android/device_utils.py third_party/catapult/devil/devil/android/device_utils_test.py @@ -6399,6 +6432,7 @@ third_party/catapult/perf_issue_service/application/clients/monorail_client.py third_party/catapult/perf_issue_service/application/clients/sheriff_config_client.py third_party/catapult/perf_issue_service/application/utils.py third_party/catapult/skia_bridge/application/perf_api/alert_group.py +third_party/catapult/skia_bridge/application/perf_api/anomalies.py third_party/catapult/skia_bridge/application/perf_api/auth_helper.py third_party/catapult/skia_bridge/application/perf_api/skia_perf_upload.py third_party/catapult/skia_bridge/common/cloud_metric.py @@ -7426,11 +7460,11 @@ third_party/crossbench/crossbench/cli/exception_formatter.py third_party/crossbench/crossbench/plt/android_adb.py third_party/crossbench/crossbench/probes/chrome_histograms.py third_party/crossbench/crossbench/probes/perfetto/downloader.py -third_party/crossbench/crossbench/probes/perfetto/trace_processor/queries/loadline/breakdown.sql third_party/crossbench/crossbench/probes/performance_entries.py third_party/crossbench/crossbench/probes/profiling/browser_profiling.py third_party/crossbench/crossbench/probes/profiling/context/base.py third_party/crossbench/crossbench/probes/profiling/enum.py +third_party/crossbench/crossbench/probes/trace_processor/queries/loadline/breakdown.sql third_party/crossbench/crossbench/probes/web_page_replay/recorder.py third_party/crossbench/protoc/compile.py third_party/crossbench/tests/crossbench/benchmarks/loading/action_runner/test_default_bond_action_runner.py @@ -7438,6 +7472,7 @@ third_party/crossbench/tests/crossbench/benchmarks/loading/config/test_example_c third_party/crossbench/tests/crossbench/benchmarks/loading/config/test_login.py third_party/crossbench/tests/crossbench/benchmarks/loading/config/test_pages.py third_party/crossbench/tests/crossbench/benchmarks/loading/test_loading.py +third_party/crossbench/tests/crossbench/network/test_web_page_replay.py third_party/crossbench/tests/crossbench/plt/test_chromeos_ssh.py third_party/crossbench/tests/crossbench/probes/test_js.py third_party/crossbench/tests/crossbench/probes/test_meminfo.py @@ -7461,6 +7496,7 @@ third_party/dawn/infra/specs/PRESUBMIT.py third_party/dawn/src/dawn/common/Constants.h third_party/dawn/src/dawn/common/SystemUtils.cpp third_party/dawn/src/dawn/dawn.json +third_party/dawn/src/dawn/native/BindGroupLayoutInternal.h third_party/dawn/src/dawn/native/CommandAllocator.cpp third_party/dawn/src/dawn/native/CopyTextureForBrowserHelper.cpp third_party/dawn/src/dawn/native/Features.cpp @@ -7517,8 +7553,8 @@ third_party/dawn/src/dawn/tests/end2end/VideoViewsTests_win.cpp third_party/dawn/src/dawn/tests/perf_tests/DawnPerfTestPlatform.h third_party/dawn/src/dawn/tests/unittests/validation/ComputeValidationTests.cpp third_party/dawn/src/dawn/tests/unittests/validation/CopyCommandsValidationTests.cpp -third_party/dawn/src/dawn/tests/unittests/validation/DynamicBindingArrayValidationTests.cpp third_party/dawn/src/dawn/tests/unittests/validation/RenderPassDescriptorValidationTests.cpp +third_party/dawn/src/dawn/tests/white_box/SharedBufferMemoryTests_win.cpp third_party/dawn/src/dawn/tests/white_box/SharedTextureMemoryTests_dmabuf.cpp third_party/dawn/src/dawn/tests/white_box/VulkanImageWrappingTests_DmaBuf.cpp third_party/dawn/src/dawn/utils/WindowsDebugLogger.cpp @@ -7681,10 +7717,6 @@ third_party/dawn/third_party/khronos/OpenGL-Registry/extensions/MESA/MESA_frameb third_party/dawn/third_party/khronos/OpenGL-Registry/extensions/MESA/MESA_framebuffer_swap_xy.txt third_party/dawn/third_party/khronos/OpenGL-Registry/extensions/OES/OES_primitive_bounding_box.txt third_party/dawn/third_party/khronos/OpenGL-Registry/extensions/OES/OES_tessellation_shader.txt -third_party/dawn/third_party/khronos/OpenGL-Registry/specs/es/3.2/GLSL_ES_Specification_3.20.html -third_party/dawn/third_party/khronos/OpenGL-Registry/specs/es/katex/katex.js -third_party/dawn/third_party/khronos/OpenGL-Registry/specs/gl/GLSLangSpec.4.60.html -third_party/dawn/third_party/khronos/OpenGL-Registry/specs/katex/katex.js third_party/dawn/third_party/khronos/OpenGL-Registry/xml/vendors.txt third_party/dawn/third_party/webgpu-cts/src/webgpu/api/operation/command_buffer/queries/occlusionQuery.spec.ts third_party/dawn/third_party/webgpu-cts/src/webgpu/api/operation/render_pipeline/sample_mask.spec.ts @@ -7694,6 +7726,7 @@ third_party/dawn/third_party/webgpu-cts/src/webgpu/multisample_info.ts third_party/dawn/third_party/webgpu-cts/src/webgpu/shader/execution/shader_io/fragment_builtins.spec.ts third_party/dawn/third_party/webgpu-cts/standalone/index.html third_party/dawn/third_party/webgpu-headers/src/webgpu.h +third_party/dawn/third_party/webgpu-headers/src/webgpu.json third_party/dawn/tools/src/cmd/cts/config.json third_party/dawn/tools/src/cmd/cts/treemap/treemap.html third_party/depot_tools/PRESUBMIT.py @@ -7711,16 +7744,19 @@ third_party/depot_tools/fetch_configs/chromium.py third_party/depot_tools/fetch_configs/crashpad.py third_party/depot_tools/fetch_configs/crossbench.py third_party/depot_tools/fetch_configs/dart.py +third_party/depot_tools/fetch_configs/dawn.py third_party/depot_tools/fetch_configs/depot_tools.py third_party/depot_tools/fetch_configs/devtools-frontend.py third_party/depot_tools/fetch_configs/gn.py third_party/depot_tools/fetch_configs/gyp.py third_party/depot_tools/fetch_configs/infra_superproject.py third_party/depot_tools/fetch_configs/inspector_protocol.py +third_party/depot_tools/fetch_configs/libyuv.py third_party/depot_tools/fetch_configs/nacl.py third_party/depot_tools/fetch_configs/naclports.py third_party/depot_tools/fetch_configs/node-ci.py third_party/depot_tools/fetch_configs/node.py +third_party/depot_tools/fetch_configs/openscreen.py third_party/depot_tools/fetch_configs/pdfium.py third_party/depot_tools/fetch_configs/skia.py third_party/depot_tools/fetch_configs/skia_buildbot.py @@ -8055,8 +8091,6 @@ third_party/devtools-frontend/src/front_end/models/badges/StarterBadge.ts third_party/devtools-frontend/src/front_end/models/bindings/ResourceUtils.ts third_party/devtools-frontend/src/front_end/models/crux-manager/CrUXManager.test.ts third_party/devtools-frontend/src/front_end/models/crux-manager/CrUXManager.ts -third_party/devtools-frontend/src/front_end/models/extensions/ExtensionServer.test.ts -third_party/devtools-frontend/src/front_end/models/extensions/ExtensionServer.ts third_party/devtools-frontend/src/front_end/models/extensions/HostUrlPattern.test.ts third_party/devtools-frontend/src/front_end/models/issues_manager/ContentSecurityPolicyIssue.ts third_party/devtools-frontend/src/front_end/models/issues_manager/CookieDeprecationMetadataIssue.ts @@ -8089,20 +8123,27 @@ third_party/devtools-frontend/src/front_end/models/trace/handlers/helpers.ts third_party/devtools-frontend/src/front_end/models/trace/helpers/Network.ts third_party/devtools-frontend/src/front_end/models/trace/helpers/Trace.test.ts third_party/devtools-frontend/src/front_end/models/trace/insights/CLSCulprits.ts +third_party/devtools-frontend/src/front_end/models/trace/insights/Cache.ts third_party/devtools-frontend/src/front_end/models/trace/insights/Common.ts third_party/devtools-frontend/src/front_end/models/trace/insights/DOMSize.ts third_party/devtools-frontend/src/front_end/models/trace/insights/DocumentLatency.ts +third_party/devtools-frontend/src/front_end/models/trace/insights/DuplicatedJavaScript.ts third_party/devtools-frontend/src/front_end/models/trace/insights/FontDisplay.test.ts third_party/devtools-frontend/src/front_end/models/trace/insights/FontDisplay.ts third_party/devtools-frontend/src/front_end/models/trace/insights/ForcedReflow.ts third_party/devtools-frontend/src/front_end/models/trace/insights/INPBreakdown.ts third_party/devtools-frontend/src/front_end/models/trace/insights/ImageDelivery.ts +third_party/devtools-frontend/src/front_end/models/trace/insights/LCPBreakdown.ts +third_party/devtools-frontend/src/front_end/models/trace/insights/LCPDiscovery.ts +third_party/devtools-frontend/src/front_end/models/trace/insights/LegacyJavaScript.ts third_party/devtools-frontend/src/front_end/models/trace/insights/ModernHTTP.test.ts third_party/devtools-frontend/src/front_end/models/trace/insights/ModernHTTP.ts third_party/devtools-frontend/src/front_end/models/trace/insights/NetworkDependencyTree.test.ts third_party/devtools-frontend/src/front_end/models/trace/insights/NetworkDependencyTree.ts third_party/devtools-frontend/src/front_end/models/trace/insights/RenderBlocking.test.ts +third_party/devtools-frontend/src/front_end/models/trace/insights/RenderBlocking.ts third_party/devtools-frontend/src/front_end/models/trace/insights/SlowCSSSelector.ts +third_party/devtools-frontend/src/front_end/models/trace/insights/ThirdParties.ts third_party/devtools-frontend/src/front_end/models/trace/insights/Viewport.ts third_party/devtools-frontend/src/front_end/models/trace/lantern/core/NetworkAnalyzer.test.ts third_party/devtools-frontend/src/front_end/models/trace/lantern/graph/NetworkNode.ts @@ -8147,8 +8188,11 @@ third_party/devtools-frontend/src/front_end/panels/browser_debugger/DOMBreakpoin third_party/devtools-frontend/src/front_end/panels/changes/ChangesView.ts third_party/devtools-frontend/src/front_end/panels/common/AiCodeCompletionTeaser.ts third_party/devtools-frontend/src/front_end/panels/common/BadgeNotification.ts +third_party/devtools-frontend/src/front_end/panels/common/ExtensionServer.test.ts +third_party/devtools-frontend/src/front_end/panels/common/ExtensionServer.ts third_party/devtools-frontend/src/front_end/panels/common/GdpSignUpDialog.test.ts third_party/devtools-frontend/src/front_end/panels/common/GdpSignUpDialog.ts +third_party/devtools-frontend/src/front_end/panels/console/ConsoleInsightTeaser.ts third_party/devtools-frontend/src/front_end/panels/console/ConsoleViewMessage.ts third_party/devtools-frontend/src/front_end/panels/console/ErrorStackParser.test.ts third_party/devtools-frontend/src/front_end/panels/coverage/CoverageView.ts @@ -8168,10 +8212,10 @@ third_party/devtools-frontend/src/front_end/panels/lighthouse/LighthouseControll third_party/devtools-frontend/src/front_end/panels/linear_memory_inspector/LinearMemoryInspectorPane.ts third_party/devtools-frontend/src/front_end/panels/media/MainView.ts third_party/devtools-frontend/src/front_end/panels/mobile_throttling/CalibrationController.ts -third_party/devtools-frontend/src/front_end/panels/network/BlockedURLsPane.ts third_party/devtools-frontend/src/front_end/panels/network/NetworkConfigView.ts third_party/devtools-frontend/src/front_end/panels/network/NetworkDataGridNode.ts third_party/devtools-frontend/src/front_end/panels/network/NetworkLogView.ts +third_party/devtools-frontend/src/front_end/panels/network/RequestConditionsDrawer.ts third_party/devtools-frontend/src/front_end/panels/network/RequestCookiesView.ts third_party/devtools-frontend/src/front_end/panels/network/RequestTimingView.ts third_party/devtools-frontend/src/front_end/panels/network/ResourceWebSocketFrameView.ts @@ -8354,6 +8398,7 @@ third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/cj third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/QueryHandler.js third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Viewport.d.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/util.js +third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.js third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/FirefoxLauncher.js third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/LaunchOptions.d.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/PuppeteerNode.d.ts @@ -8391,6 +8436,7 @@ third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/es third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/QueryHandler.js third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Viewport.d.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/util.js +third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.js third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/FirefoxLauncher.js third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/LaunchOptions.d.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/PuppeteerNode.d.ts @@ -8417,6 +8463,7 @@ third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/co third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/common/QueryHandler.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/common/Viewport.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/common/util.ts +third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/node/BrowserLauncher.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/node/FirefoxLauncher.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/node/LaunchOptions.ts third_party/devtools-frontend/src/front_end/third_party/puppeteer/package/src/node/PuppeteerNode.ts @@ -8456,6 +8503,7 @@ third_party/devtools-frontend/src/front_end/ui/legacy/SearchableView.ts third_party/devtools-frontend/src/front_end/ui/legacy/UIUtils.test.ts third_party/devtools-frontend/src/front_end/ui/legacy/UIUtils.ts third_party/devtools-frontend/src/front_end/ui/legacy/Widget.ts +third_party/devtools-frontend/src/front_end/ui/legacy/components/cookie_table/CookiesTable.ts third_party/devtools-frontend/src/front_end/ui/legacy/components/object_ui/CustomPreviewComponent.ts third_party/devtools-frontend/src/front_end/ui/legacy/components/perf_ui/FlameChart.ts third_party/devtools-frontend/src/front_end/ui/legacy/components/utils/JSPresentationUtils.test.ts @@ -8885,6 +8933,13 @@ third_party/devtools-frontend/src/node_modules/normalize-package-data/package.js third_party/devtools-frontend/src/node_modules/normalize-path/index.js third_party/devtools-frontend/src/node_modules/object-assign/index.js third_party/devtools-frontend/src/node_modules/object-assign/package.json +third_party/devtools-frontend/src/node_modules/object-deep-merge/node_modules/type-fest/package.json +third_party/devtools-frontend/src/node_modules/object-deep-merge/node_modules/type-fest/source/basic.d.ts +third_party/devtools-frontend/src/node_modules/object-deep-merge/node_modules/type-fest/source/entries.d.ts +third_party/devtools-frontend/src/node_modules/object-deep-merge/node_modules/type-fest/source/entry.d.ts +third_party/devtools-frontend/src/node_modules/object-deep-merge/node_modules/type-fest/source/join.d.ts +third_party/devtools-frontend/src/node_modules/object-deep-merge/node_modules/type-fest/source/primitive.d.ts +third_party/devtools-frontend/src/node_modules/object-deep-merge/node_modules/type-fest/source/typed-array.d.ts third_party/devtools-frontend/src/node_modules/object-keys/package.json third_party/devtools-frontend/src/node_modules/object.fromentries/package.json third_party/devtools-frontend/src/node_modules/object.groupby/package.json @@ -8892,7 +8947,6 @@ third_party/devtools-frontend/src/node_modules/object.values/package.json third_party/devtools-frontend/src/node_modules/onetime/package.json third_party/devtools-frontend/src/node_modules/ora/node_modules/ansi-regex/package.json third_party/devtools-frontend/src/node_modules/ora/node_modules/is-unicode-supported/package.json -third_party/devtools-frontend/src/node_modules/ora/node_modules/log-symbols/node_modules/is-unicode-supported/package.json third_party/devtools-frontend/src/node_modules/ora/node_modules/log-symbols/package.json third_party/devtools-frontend/src/node_modules/ora/node_modules/string-width/package.json third_party/devtools-frontend/src/node_modules/ora/node_modules/strip-ansi/package.json @@ -9334,6 +9388,7 @@ third_party/devtools-frontend/src/node_modules/yargs/node_modules/strip-ansi/pac third_party/devtools-frontend/src/node_modules/yauzl/package.json third_party/devtools-frontend/src/node_modules/yocto-queue/index.d.ts third_party/devtools-frontend/src/node_modules/yocto-queue/package.json +third_party/devtools-frontend/src/node_modules/yoctocolors/package.json third_party/devtools-frontend/src/node_modules/zod/src/v3/tests/refine.test.ts third_party/devtools-frontend/src/node_modules/zod/src/v3/tests/string.test.ts third_party/devtools-frontend/src/node_modules/zod/src/v4/classic/tests/refine.test.ts @@ -9345,6 +9400,7 @@ third_party/devtools-frontend/src/package.json third_party/devtools-frontend/src/scripts/ai_assistance/suite/helpers/gemini.ts third_party/devtools-frontend/src/scripts/build/compress_files.js third_party/devtools-frontend/src/scripts/check_external_links.js +third_party/devtools-frontend/src/scripts/component_docs/component_docs.css third_party/devtools-frontend/src/scripts/deps/download_emscripten.py third_party/devtools-frontend/src/scripts/deps/roll_to_chromium.py third_party/devtools-frontend/src/scripts/eslint_rules/lib/no-customized-builtin-elements.ts @@ -9362,6 +9418,7 @@ third_party/devtools-frontend/src/test/e2e_non_hosted/lighthouse/devtools-settin third_party/devtools-frontend/src/test/e2e_non_hosted/lighthouse/navigation_test.ts third_party/devtools-frontend/src/test/e2e_non_hosted/lighthouse/snapshot_test.ts third_party/devtools-frontend/src/test/e2e_non_hosted/lighthouse/timespan_test.ts +third_party/devtools-frontend/src/test/e2e_non_hosted/performance/trace-app_test.ts third_party/devtools-frontend/src/test/e2e_non_hosted/shared/frontend-helper.ts third_party/devtools-frontend/src/test/perf/report/report.ts third_party/devtools-frontend/src/third_party/blink/public/devtools_protocol/browser_protocol.json @@ -9442,6 +9499,7 @@ third_party/eigen3/src/Eigen/src/Core/Product.h third_party/eigen3/src/Eigen/src/Core/ProductEvaluators.h third_party/eigen3/src/Eigen/src/Core/Random.h third_party/eigen3/src/Eigen/src/Core/RandomImpl.h +third_party/eigen3/src/Eigen/src/Core/RealView.h third_party/eigen3/src/Eigen/src/Core/Redux.h third_party/eigen3/src/Eigen/src/Core/Ref.h third_party/eigen3/src/Eigen/src/Core/Replicate.h @@ -9855,6 +9913,7 @@ third_party/eigen3/src/test/random_matrix.cpp third_party/eigen3/src/test/random_matrix_helper.h third_party/eigen3/src/test/random_without_cast_overflow.h third_party/eigen3/src/test/real_qz.cpp +third_party/eigen3/src/test/realview.cpp third_party/eigen3/src/test/redux.cpp third_party/eigen3/src/test/ref.cpp third_party/eigen3/src/test/reshape.cpp @@ -11346,8 +11405,8 @@ third_party/icu/source/test/intltest/strcase.cpp third_party/icu/source/test/intltest/uobjtest.cpp third_party/icu/source/test/perf/collationperf/collperf.cpp third_party/icu/source/test/perf/collationperf/readme.html -third_party/icu/source/test/perf/ubrkperf/ubrkperfold.cpp third_party/icu/source/test/testdata/numberformattestspecification.txt +third_party/icu/source/tools/toolutil/json-json.hpp third_party/icu/source/tools/toolutil/pkg_genc.cpp third_party/inspector_protocol/crdtp/cbor.cc third_party/inspector_protocol/crdtp/json.cc @@ -11437,9 +11496,6 @@ third_party/libc++/src/src/print.cpp third_party/libc++/src/test/libcxx/containers/sequences/deque/asan_turning_off.pass.cpp third_party/libc++/src/test/libcxx/containers/sequences/vector/asan_turning_off.pass.cpp third_party/libc++/src/test/libcxx/containers/strings/basic.string/asan_turning_off.pass.cpp -third_party/libc++/src/test/std/input.output/filesystems/class.rec.dir.itr/cache_refresh_iter.pass.cpp -third_party/libc++/src/test/std/time/time.zone/time.zone.db/time.zone.db.access/current_zone.pass.cpp -third_party/libc++/src/test/std/time/time.zone/time.zone.db/time.zone.db.tzdb/current_zone.pass.cpp third_party/libc++/src/utils/ci/BOT_OWNERS.txt third_party/libc++abi/src/CREDITS.TXT third_party/libdrm/src/android/gralloc_handle.h @@ -12154,6 +12210,7 @@ third_party/node/node_modules/domutils/lib/esm/stringify.js third_party/node/node_modules/domutils/lib/stringify.js third_party/node/node_modules/eslint-plugin-jsdoc/node_modules/escape-string-regexp/package.json third_party/node/node_modules/eslint-plugin-jsdoc/src/tagNames.js +third_party/node/node_modules/eslint-plugin-lit/lib/rules/no-native-attributes.js third_party/node/node_modules/eslint-scope/lib/definition.js third_party/node/node_modules/eslint-scope/lib/index.js third_party/node/node_modules/eslint-scope/lib/pattern-visitor.js @@ -12214,6 +12271,9 @@ third_party/node/node_modules/p-limit/package.json third_party/node/node_modules/p-locate/package.json third_party/node/node_modules/parent-module/package.json third_party/node/node_modules/parse-imports/package.json +third_party/node/node_modules/parse5-htmlparser2-tree-adapter/package.json +third_party/node/node_modules/parse5/lib/tokenizer/index.js +third_party/node/node_modules/parse5/package.json third_party/node/node_modules/path-exists/package.json third_party/node/node_modules/path-key/package.json third_party/node/node_modules/postcss-selector-parser/package.json @@ -12329,7 +12389,6 @@ third_party/openscreen/src/cast/streaming/encoded_frame.h third_party/openscreen/src/cast/streaming/environment.h third_party/openscreen/src/cast/streaming/frame_id.h third_party/openscreen/src/cast/streaming/impl/clock_offset_estimator.h -third_party/openscreen/src/cast/streaming/impl/compound_rtcp_parser.cc third_party/openscreen/src/cast/streaming/impl/rtcp_common.cc third_party/openscreen/src/cast/streaming/impl/rtp_defines.h third_party/openscreen/src/cast/streaming/impl/sender_session_unittest.cc @@ -13012,8 +13071,8 @@ third_party/perfetto/ui/src/frontend/permalink.ts third_party/perfetto/ui/src/frontend/post_message_handler.ts third_party/perfetto/ui/src/frontend/post_message_handler_unittest.ts third_party/perfetto/ui/src/frontend/sidebar.ts +third_party/perfetto/ui/src/frontend/timeline_page/wasd_navigation_handler.ts third_party/perfetto/ui/src/frontend/trace_url_handler.ts -third_party/perfetto/ui/src/frontend/viewer_page/wasd_navigation_handler.ts third_party/perfetto/ui/src/open_perfetto_trace/index.html third_party/perfetto/ui/src/plugins/dev.perfetto.ProcessSummary/index.ts third_party/perfetto/ui/src/plugins/dev.perfetto.RecordTraceV2/adb/adb_msg.ts @@ -13021,6 +13080,7 @@ third_party/perfetto/ui/src/plugins/dev.perfetto.RecordTraceV2/adb/web_device_pr third_party/perfetto/ui/src/plugins/dev.perfetto.RecordTraceV2/pages/android.ts third_party/perfetto/ui/src/plugins/dev.perfetto.RecordTraceV2/pages/record_page.ts third_party/perfetto/ui/src/plugins/dev.perfetto.TraceInfoPage/trace_info_page.ts +third_party/perfetto/ui/src/plugins/org.kernel.Wattson/index.ts third_party/perfetto/ui/src/trace_processor/engine.ts third_party/perfetto/ui/src/widgets/hotkey_context.ts third_party/polymer/v3_0/BUILD.gn @@ -14374,6 +14434,7 @@ third_party/readability/src/test/test-pages/yahoo-1/source.html third_party/readability/src/test/test-pages/yahoo-2/source.html third_party/readability/src/test/test-pages/yahoo-3/source.html third_party/readability/src/test/test-pages/yahoo-4/source.html +third_party/readability/test_extension/viewer.html third_party/rust/PRESUBMIT.py third_party/rust/adler2/v2/BUILD.gn third_party/rust/anyhow/v1/BUILD.gn @@ -14392,6 +14453,7 @@ third_party/rust/diplomat_core/v0_13/BUILD.gn third_party/rust/diplomat_runtime/v0_13/BUILD.gn third_party/rust/foldhash/v0_2/BUILD.gn third_party/rust/hashbrown/v0_15/BUILD.gn +third_party/rust/hashbrown/v0_16/BUILD.gn third_party/rust/itoa/v1/BUILD.gn third_party/rust/lazy_static/v1/BUILD.gn third_party/rust/memchr/v2/BUILD.gn @@ -14404,7 +14466,6 @@ third_party/rust/quote/v1/BUILD.gn third_party/rust/regex_automata/v0_4/BUILD.gn third_party/rust/regex_syntax/v0_8/BUILD.gn third_party/rust/rustc_demangle_capi/v0_1/BUILD.gn -third_party/rust/rustversion/v1/BUILD.gn third_party/rust/ryu/v1/BUILD.gn third_party/rust/serde/v1/BUILD.gn third_party/rust/serde_core/v1/BUILD.gn @@ -14523,7 +14584,6 @@ third_party/skia/infra/bots/recipes/housekeeper.expected/Housekeeper-PerCommit-T third_party/skia/infra/bots/recipes/housekeeper.expected/Housekeeper-PerCommit.json third_party/skia/infra/bots/recipes/housekeeper.py third_party/skia/infra/bots/recipes/infra.py -third_party/skia/infra/bots/recipes/perf_pathkit.py third_party/skia/infra/bots/recipes/perf_skottietrace.py third_party/skia/infra/bots/recipes/perf_skottiewasm_lottieweb.py third_party/skia/infra/bots/recipes/sync_and_compile.expected/Build-Debian10-Clang-arm-Release-NoPatch (tryjob).json @@ -14533,7 +14593,6 @@ third_party/skia/infra/bots/recipes/sync_and_compile.py third_party/skia/infra/bots/recipes/test.py third_party/skia/infra/bots/recipes/test_canvaskit.py third_party/skia/infra/bots/recipes/test_lottie_web.py -third_party/skia/infra/bots/recipes/test_pathkit.py third_party/skia/infra/bots/recipes/upload_buildstats_results.py third_party/skia/infra/bots/recipes/upload_dm_results.py third_party/skia/infra/bots/recipes/upload_nano_results.py @@ -14552,10 +14611,6 @@ third_party/skia/modules/canvaskit/tests/core_test.js third_party/skia/modules/canvaskit/tests/font_test.js third_party/skia/modules/canvaskit/tests/skottie_test.js third_party/skia/modules/canvaskit/webgl.js -third_party/skia/modules/pathkit/chaining.js -third_party/skia/modules/pathkit/helper.js -third_party/skia/modules/pathkit/npm-asmjs/package.json -third_party/skia/modules/pathkit/npm-wasm/package.json third_party/skia/modules/skottie/src/effects/SkSLEffect.cpp third_party/skia/modules/skottie/src/layers/TextLayer.cpp third_party/skia/modules/skunicode/BUILD.gn @@ -14648,6 +14703,8 @@ third_party/skia/tests/SkXmpTest.cpp third_party/skia/tests/StringTest.cpp third_party/skia/tests/TriangulatingPathRendererTests.cpp third_party/skia/tests/TypefaceTest.cpp +third_party/skia/third_party/dawn/BUILD.gn +third_party/skia/third_party/dawn/build_dawn.py third_party/skia/third_party/etc1/etc1.cpp third_party/skia/third_party/etc1/etc1.h third_party/skia/third_party/freetype2/include/freetype-android/freetype/config/ftoption.h @@ -15026,8 +15083,12 @@ third_party/tflite/src/tensorflow/tools/android/test/jni/rgb2yuv.cc third_party/tflite/src/tensorflow/tools/compatibility/tf_upgrade_v2_safety_test.py third_party/tflite/src/tensorflow/tools/pip_package/THIRD_PARTY_NOTICES.txt third_party/tflite/src/third_party/xla/xla/backends/gpu/codegen/emitters/transpose.h +third_party/tflite/src/third_party/xla/xla/error/debug_me_context_util.h third_party/tflite/src/third_party/xla/xla/pjrt/c/pjrt_c_api.h third_party/tflite/src/third_party/xla/xla/pjrt/pjrt_api.cc +third_party/tflite/src/third_party/xla/xla/python/ifrt/user_context_status_util.cc +third_party/tflite/src/third_party/xla/xla/python/ifrt/user_context_status_util_test.cc +third_party/tflite/src/third_party/xla/xla/python/ifrt_proxy/contrib/pathways/status_annotator_util.cc third_party/tflite/src/third_party/xla/xla/service/hlo_graph_dumper.cc third_party/tflite/src/third_party/xla/xla/service/hlo_verifier.cc third_party/tflite/src/third_party/xla/xla/tools/benchmarks/utils/generate_benchmark_matrices_main.cc @@ -15085,9 +15146,9 @@ third_party/vulkan-tools/src/cube/cube.c third_party/vulkan-tools/src/cube/gettime.h third_party/vulkan-tools/src/icd/generated/vk_typemap_helper.h third_party/vulkan-tools/src/scripts/android.py +third_party/vulkan-tools/src/scripts/generators/mock_icd_generator.py +third_party/vulkan-tools/src/scripts/generators/vulkan_tools_helper_file_generator.py third_party/vulkan-tools/src/scripts/gn/gn.py -third_party/vulkan-tools/src/scripts/mock_icd_generator.py -third_party/vulkan-tools/src/scripts/vulkan_tools_helper_file_generator.py third_party/vulkan-utility-libraries/src/scripts/gn/gn.py third_party/vulkan-validation-layers/src/layers/CMakeLists.txt third_party/vulkan-validation-layers/src/layers/external/inplace_function.h @@ -15170,6 +15231,7 @@ third_party/webrtc/BUILD.gn third_party/webrtc/PRESUBMIT.py third_party/webrtc/api/audio_codecs/opus/audio_encoder_opus_config.h third_party/webrtc/api/data_channel_event_observer_interface.h +third_party/webrtc/api/jsep.cc third_party/webrtc/api/location.h third_party/webrtc/api/scoped_refptr.h third_party/webrtc/api/uma_metrics.h @@ -15180,6 +15242,8 @@ third_party/webrtc/api/video/i422_buffer.h third_party/webrtc/api/video/i444_buffer.h third_party/webrtc/api/video/nv12_buffer.h third_party/webrtc/api/video_codecs/video_encoder.h +third_party/webrtc/api/webrtc_sdp.cc +third_party/webrtc/api/webrtc_sdp_unittest.cc third_party/webrtc/call/adaptation/resource_adaptation_processor.h third_party/webrtc/call/call.cc third_party/webrtc/common_audio/resampler/sinc_resampler.cc @@ -15237,7 +15301,6 @@ third_party/webrtc/p2p/base/turn_port_unittest.cc third_party/webrtc/p2p/client/basic_port_allocator.cc third_party/webrtc/p2p/client/basic_port_allocator_unittest.cc third_party/webrtc/pc/channel.cc -third_party/webrtc/pc/jsep_session_description.cc third_party/webrtc/pc/media_session_unittest.cc third_party/webrtc/pc/peer_connection_bundle_unittest.cc third_party/webrtc/pc/peer_connection_crypto_unittest.cc @@ -15250,8 +15313,6 @@ third_party/webrtc/pc/peer_connection_integrationtest.cc third_party/webrtc/pc/peer_connection_interface_unittest.cc third_party/webrtc/pc/scenario_tests/goog_cc_test.cc third_party/webrtc/pc/sdp_offer_answer.cc -third_party/webrtc/pc/webrtc_sdp.cc -third_party/webrtc/pc/webrtc_sdp_unittest.cc third_party/webrtc/presubmit_test_mocks.py third_party/webrtc/rtc_base/async_dns_resolver.cc third_party/webrtc/rtc_base/byte_buffer.h @@ -15296,6 +15357,7 @@ third_party/webrtc/sdk/objc/api/peerconnection/RTCConfiguration.h third_party/webrtc/sdk/objc/components/renderer/metal/RTCMTLI420Renderer.mm third_party/webrtc/test/android/native_test_launcher.cc third_party/webrtc/test/android/native_test_util.cc +third_party/webrtc/test/peer_scenario/tests/l4s_test.cc third_party/webrtc/test/test_flags.cc third_party/webrtc/test/test_main_lib.cc third_party/webrtc/test/testsupport/perf_test.h @@ -15463,7 +15525,6 @@ tools/android/dependency_analysis/js/src/package_view.html tools/android/dependency_analysis/js/src/target_view.html tools/android/dependency_analysis/upload_html_viewer.py tools/android/generate_java_test/generate_java_test.py -tools/android/logcat_filtering/index.html tools/android/memtrack_helper/memtrack_helper.c tools/android/modularization/convenience/touch_resources.py tools/android/native_lib_memory/PRESUBMIT.py @@ -15570,6 +15631,7 @@ tools/download_optimization_profile.py tools/dromaeo_benchmark_runner/dromaeo_benchmark_runner.py tools/emacs/trybot-mac.txt tools/find_runtime_symbols/PRESUBMIT.py +tools/flags/generate_clank_feature_flag.py tools/flags/list_flags.py tools/fuchsia/3pp/gn-sdk/3pp/fetch.py tools/fuchsia/3pp/test-scripts/3pp/fetch.py @@ -15618,7 +15680,6 @@ tools/json_schema_compiler/test/content_settings.json tools/json_schema_compiler/test/tabs.json tools/json_schema_compiler/test/windows.json tools/json_to_struct/PRESUBMIT.py -tools/licenses/licenses_test.py tools/linux/PRESUBMIT.py tools/mac/download_symbols.py tools/mac/icons/compile_car.py @@ -15707,6 +15768,9 @@ tools/metrics/histograms/metadata/content/histograms.xml tools/metrics/histograms/metadata/content_extraction/histograms.xml tools/metrics/histograms/metadata/contextual_cueing/enums.xml tools/metrics/histograms/metadata/contextual_cueing/histograms.xml +tools/metrics/histograms/metadata/contextual_search/enums.xml +tools/metrics/histograms/metadata/contextual_search/histograms.xml +tools/metrics/histograms/metadata/contextual_tasks/histograms.xml tools/metrics/histograms/metadata/cookie/enums.xml tools/metrics/histograms/metadata/cookie/histograms.xml tools/metrics/histograms/metadata/cras/enums.xml @@ -15968,6 +16032,7 @@ tools/metrics/histograms/metadata/xr/histograms.xml tools/metrics/histograms/name_expansion_metadata.py tools/metrics/histograms/populate_enums.py tools/metrics/histograms/pretty_print_test.py +tools/metrics/histograms/print_expanded_histograms_test.py tools/metrics/histograms/split_enums.py tools/metrics/histograms/split_xml.py tools/metrics/histograms/test_data/components/histograms.xml @@ -15984,7 +16049,6 @@ tools/metrics/histograms/test_data/ukm.xml tools/metrics/md2xml.py tools/metrics/private_metrics/PRESUBMIT.py tools/metrics/private_metrics/dwa.xml -tools/metrics/private_metrics/dwa_test.xml tools/metrics/private_metrics/private_metrics_model_shared_test.py tools/metrics/private_metrics/private_metrics_validations_test.py tools/metrics/structured/PRESUBMIT.py @@ -16075,6 +16139,7 @@ tools/perf/core/shard_maps/timing_data/mac-laptop_high_end-perf_timing.json tools/perf/core/shard_maps/timing_data/mac-laptop_low_end-perf_timing.json tools/perf/core/shard_maps/timing_data/mac-m1_mini_2020-perf_timing.json tools/perf/core/shard_maps/timing_data/mac-m2-pro-perf_timing.json +tools/perf/core/shard_maps/timing_data/mac-m4-mini-perf_timing.json tools/perf/core/shard_maps/timing_data/win-10-perf_timing.json tools/perf/core/shard_maps/timing_data/win-10_laptop_low_end-perf_timing.json tools/perf/core/shard_maps/timing_data/win-11-perf_timing.json @@ -16180,6 +16245,7 @@ tools/typescript/PRESUBMIT.py tools/typescript/definitions/command_line_private.d.ts tools/typescript/definitions/pending.d.ts tools/typescript/definitions/system_display.d.ts +tools/ubsan/array_bounds_ignorelist.txt tools/usb_gadget/gadget.py tools/usb_gadget/msos20_descriptors.py tools/utr/builders.py @@ -16314,12 +16380,12 @@ ui/gfx/font.h ui/gfx/font_fallback_win.h ui/gfx/font_names_testing.h ui/gfx/geometry/matrix44.cc -ui/gfx/icon_util.cc -ui/gfx/icon_util.h ui/gfx/render_text.cc ui/gfx/render_text_unittest.cc ui/gfx/text_elider_unittest.cc ui/gfx/win/hwnd_util.cc +ui/gfx/win/icon_util.cc +ui/gfx/win/icon_util.h ui/gfx/win/physical_size.cc ui/gfx/win/singleton_hwnd_hot_key_observer.cc ui/gl/android/scoped_a_native_window.cc @@ -16370,6 +16436,7 @@ ui/views/view_unittest.cc ui/views/widget/desktop_aura/desktop_native_widget_aura.cc ui/views/win/hwnd_message_handler.cc ui/views/window/non_client_view.cc +ui/webui/resources/cr_components/composebox/composebox_voice_search.ts ui/webui/resources/cr_components/cr_shortcut_input/cr_shortcut_input.ts ui/webui/resources/cr_components/help_bubble/help_bubble_icons.html ui/webui/resources/cr_elements/icons.html.ts diff --git a/patches/contrib/brave/chrome-importer-files.patch b/patches/contrib/brave/chrome-importer-files.patch index e0a7f562c..2c23f422b 100644 --- a/patches/contrib/brave/chrome-importer-files.patch +++ b/patches/contrib/brave/chrome-importer-files.patch @@ -2735,7 +2735,7 @@ along with this program. If not, see . +#endif // BRAVE_UTILITY_IMPORTER_BRAVE_EXTERNAL_PROCESS_IMPORTER_BRIDGE_H_ --- /dev/null +++ b/chrome/utility/importer/chrome_importer.cc -@@ -0,0 +1,437 @@ +@@ -0,0 +1,436 @@ +/* Copyright (c) 2019 The Brave Authors. All rights reserved. + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this file, @@ -3103,8 +3103,7 @@ along with this program. If not, see . + if (!usage.favicon_url.is_valid()) + continue; // Don't bother importing favicons with invalid URLs. + -+ std::vector data; -+ s.ColumnBlobAsVector(1, &data); ++ std::vector data = s.ColumnBlobAsVector(1); + if (data.empty()) + continue; // Data definitely invalid. + diff --git a/patches/contrib/brave/custom-importer.patch b/patches/contrib/brave/custom-importer.patch index 8e1eafacc..73e35ed69 100644 --- a/patches/contrib/brave/custom-importer.patch +++ b/patches/contrib/brave/custom-importer.patch @@ -177,7 +177,7 @@ along with this program. If not, see . } // namespace user_data_importer --- a/tools/metrics/histograms/metadata/sql/histograms.xml +++ b/tools/metrics/histograms/metadata/sql/histograms.xml -@@ -40,6 +40,7 @@ chromium-metrics-reviews@google.com. +@@ -42,6 +42,7 @@ chromium-metrics-reviews@google.com. @@ -207,7 +207,7 @@ along with this program. If not, see . } // namespace user_data_importer --- a/chrome/common/importer/profile_import_process_param_traits_macros.h +++ b/chrome/common/importer/profile_import_process_param_traits_macros.h -@@ -20,11 +20,11 @@ +@@ -23,11 +23,11 @@ #if BUILDFLAG(IS_WIN) IPC_ENUM_TRAITS_MIN_MAX_VALUE(user_data_importer::ImporterType, user_data_importer::TYPE_UNKNOWN, @@ -244,7 +244,7 @@ along with this program. If not, see . } --- a/chrome/common/pref_names.h +++ b/chrome/common/pref_names.h -@@ -4266,6 +4266,9 @@ inline constexpr char kServiceWorkerToCo +@@ -4281,6 +4281,9 @@ inline constexpr char kServiceWorkerToCo inline constexpr char kSharedWorkerBlobURLFixEnabled[] = "worker.shared_worker_blob_url_fix_enabled"; @@ -256,7 +256,7 @@ along with this program. If not, see . inline constexpr char kClearWindowNameForNewBrowsingContextGroup[] = --- a/chrome/browser/extensions/api/settings_private/prefs_util.cc +++ b/chrome/browser/extensions/api/settings_private/prefs_util.cc -@@ -1164,6 +1164,8 @@ const PrefsUtil::TypedPrefMap& PrefsUtil +@@ -1147,6 +1147,8 @@ const PrefsUtil::TypedPrefMap& PrefsUtil settings_api::PrefType::kBoolean; (*s_allowlist)[::prefs::kImportDialogSearchEngine] = settings_api::PrefType::kBoolean; @@ -267,7 +267,7 @@ along with this program. If not, see . // Supervised Users. This setting is queried in our Tast tests (b/241943380). --- a/chrome/browser/ui/webui/settings/settings_ui.cc +++ b/chrome/browser/ui/webui/settings/settings_ui.cc -@@ -62,6 +62,7 @@ +@@ -63,6 +63,7 @@ #include "chrome/browser/ui/webui/settings/font_handler.h" #include "chrome/browser/ui/webui/settings/hats_handler.h" #include "chrome/browser/ui/webui/settings/import_data_handler.h" @@ -275,7 +275,7 @@ along with this program. If not, see . #include "chrome/browser/ui/webui/settings/metrics_reporting_handler.h" #include "chrome/browser/ui/webui/settings/on_startup_handler.h" #include "chrome/browser/ui/webui/settings/password_manager_handler.h" -@@ -201,6 +202,7 @@ void SettingsUI::RegisterProfilePrefs( +@@ -203,6 +204,7 @@ void SettingsUI::RegisterProfilePrefs( registry->RegisterBooleanPref(prefs::kImportDialogHistory, true); registry->RegisterBooleanPref(prefs::kImportDialogSavedPasswords, true); registry->RegisterBooleanPref(prefs::kImportDialogSearchEngine, true); @@ -283,7 +283,7 @@ along with this program. If not, see . } SettingsUI::SettingsUI(content::WebUI* web_ui) -@@ -230,7 +232,7 @@ SettingsUI::SettingsUI(content::WebUI* w +@@ -232,7 +234,7 @@ SettingsUI::SettingsUI(content::WebUI* w AddSettingsPageUIHandler(std::make_unique(profile)); AddSettingsPageUIHandler(std::make_unique()); AddSettingsPageUIHandler(std::make_unique(profile)); @@ -294,7 +294,7 @@ along with this program. If not, see . #if BUILDFLAG(IS_WIN) --- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc +++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc -@@ -900,6 +900,8 @@ void AddImportDataStrings(content::WebUI +@@ -999,6 +999,8 @@ void AddImportDataStrings(content::WebUI {"importHistory", IDS_SETTINGS_IMPORT_HISTORY_CHECKBOX}, {"importFavorites", IDS_SETTINGS_IMPORT_FAVORITES_CHECKBOX}, {"importPasswords", IDS_SETTINGS_IMPORT_PASSWORDS_CHECKBOX}, @@ -319,7 +319,7 @@ along with this program. If not, see . --- a/chrome/browser/ui/BUILD.gn +++ b/chrome/browser/ui/BUILD.gn -@@ -1237,6 +1237,10 @@ static_library("ui") { +@@ -1252,6 +1252,10 @@ static_library("ui") { "webui/settings/accessibility_main_handler.h", "webui/settings/appearance_handler.cc", "webui/settings/appearance_handler.h", @@ -330,7 +330,7 @@ along with this program. If not, see . "webui/settings/browser_lifetime_handler.cc", "webui/settings/browser_lifetime_handler.h", "webui/settings/captions_handler.cc", -@@ -1391,6 +1395,13 @@ static_library("ui") { +@@ -1408,6 +1412,13 @@ static_library("ui") { ] } @@ -412,7 +412,7 @@ along with this program. If not, see . // Corresponds to the "id" column of the "visits" SQL table. --- a/components/history/core/browser/visit_database.cc +++ b/components/history/core/browser/visit_database.cc -@@ -119,6 +119,8 @@ VisitSource VisitSourceFromInt(int value +@@ -120,6 +120,8 @@ VisitSource VisitSourceFromInt(int value case SOURCE_SAFARI_IMPORTED: case SOURCE_ACTOR: case SOURCE_OS_MIGRATION_IMPORTED: @@ -434,7 +434,7 @@ along with this program. If not, see . } --- a/chrome/utility/BUILD.gn +++ b/chrome/utility/BUILD.gn -@@ -92,6 +92,12 @@ static_library("utility") { +@@ -90,6 +90,12 @@ static_library("utility") { sources += [ "importer/bookmarks_file_importer.cc", "importer/bookmarks_file_importer.h", @@ -459,7 +459,7 @@ along with this program. If not, see . #include "components/mirroring/service/mirroring_service.h" #include "services/passage_embeddings/passage_embeddings_service.h" #include "services/proxy_resolver/proxy_resolver_factory_impl.h" // nogncheck -@@ -144,6 +146,13 @@ static_assert(BUILDFLAG(ENABLE_PRINTING) +@@ -138,6 +140,13 @@ static_assert(BUILDFLAG(ENABLE_PRINTING) namespace { @@ -473,7 +473,7 @@ along with this program. If not, see . auto RunFilePatcher(mojo::PendingReceiver receiver) { return std::make_unique(std::move(receiver)); } -@@ -456,6 +465,7 @@ void RegisterMainThreadServices(mojo::Se +@@ -434,6 +443,7 @@ void RegisterMainThreadServices(mojo::Se services.Add(ContentBookmarkParser); #if !BUILDFLAG(IS_ANDROID) @@ -583,7 +583,7 @@ along with this program. If not, see . // entire group has been collected and is ready to be written to the profile. --- a/chrome/app/generated_resources.grd +++ b/chrome/app/generated_resources.grd -@@ -11171,6 +11171,15 @@ Check your passwords anytime in diff --git a/patches/contrib/brave/tab-cycling-mru-impl.patch b/patches/contrib/brave/tab-cycling-mru-impl.patch index 55772ba89..c27431ab9 100644 --- a/patches/contrib/brave/tab-cycling-mru-impl.patch +++ b/patches/contrib/brave/tab-cycling-mru-impl.patch @@ -35,7 +35,7 @@ along with this program. If not, see . #include "chrome/browser/ui/commerce/ui_utils.h" #include "chrome/browser/ui/send_tab_to_self/send_tab_to_self_bubble.h" #include "chrome/browser/ui/tabs/features.h" -@@ -3658,6 +3659,44 @@ TabStripSelectionChange TabStripModel::S +@@ -3703,6 +3704,44 @@ TabStripSelectionChange TabStripModel::S return selection; } @@ -82,7 +82,7 @@ along with this program. If not, see . // This may happen during automated testing or if a user somehow buffers --- a/chrome/browser/ui/tabs/tab_strip_model.h +++ b/chrome/browser/ui/tabs/tab_strip_model.h -@@ -604,6 +604,10 @@ class TabStripModel { +@@ -611,6 +611,10 @@ class TabStripModel { TabStripUserGestureDetails detail = TabStripUserGestureDetails( TabStripUserGestureDetails::GestureType::kOther)); @@ -93,7 +93,7 @@ along with this program. If not, see . // Moves the active in the specified direction. Respects group boundaries. void MoveTabNext(); void MoveTabPrevious(); -@@ -1132,6 +1136,11 @@ class TabStripModel { +@@ -1139,6 +1143,11 @@ class TabStripModel { kPrevious, }; @@ -105,7 +105,7 @@ along with this program. If not, see . // Selects either the next tab (kNext), or the previous tab (kPrevious). void SelectRelativeTab(TabRelativeDirection direction, TabStripUserGestureDetails detail); -@@ -1388,6 +1397,9 @@ class TabStripModel { +@@ -1393,6 +1402,9 @@ class TabStripModel { // Tracks whether a modal UI is showing. bool showing_modal_ui_ = false; @@ -117,7 +117,7 @@ along with this program. If not, see . --- a/chrome/browser/ui/views/frame/browser_view.cc +++ b/chrome/browser/ui/views/frame/browser_view.cc -@@ -285,7 +285,10 @@ +@@ -291,7 +291,10 @@ #include "ui/compositor/paint_recorder.h" #include "ui/content_accelerators/accelerator_util.h" #include "ui/display/screen.h" @@ -128,7 +128,7 @@ along with this program. If not, see . #include "ui/gfx/animation/animation_runner.h" #include "ui/gfx/canvas.h" #include "ui/gfx/color_utils.h" -@@ -303,6 +306,7 @@ +@@ -309,6 +312,7 @@ #include "ui/views/controls/button/menu_button.h" #include "ui/views/controls/textfield/textfield.h" #include "ui/views/controls/webview/webview.h" @@ -136,9 +136,9 @@ along with this program. If not, see . #include "ui/views/interaction/element_tracker_views.h" #include "ui/views/layout/fill_layout.h" #include "ui/views/view.h" -@@ -726,6 +730,83 @@ bool ConvertedHitTest(views::View* src, - - } // namespace +@@ -809,6 +813,83 @@ class BrowserView::ExclusiveAccessContex + base::WeakPtrFactory weak_ptr_factory_{this}; + }; +// Handles events during MRU tab cycling to start/stop tab cycling. +class TabCyclingEventHandler : public ui::EventObserver, @@ -230,9 +230,9 @@ along with this program. If not, see . class TabDragDelegate; class TabSearchBubbleHost; class TabStrip; -@@ -566,6 +567,10 @@ class BrowserView : public BrowserWindow +@@ -555,6 +556,10 @@ class BrowserView : public BrowserWindow + bool IsBorderlessModeEnabled() const override; void ShowChromeLabs() override; - views::WebView* GetContentsWebView() override; BrowserView* AsBrowserView() override; + + void StartTabCycling(); @@ -241,15 +241,15 @@ along with this program. If not, see . SharingDialog* ShowSharingDialog(content::WebContents* contents, SharingDialogData data) override; void ShowUpdateChromeDialog() override; -@@ -889,6 +894,7 @@ class BrowserView : public BrowserWindow - friend class BrowserViewLayoutDelegateImplNew; +@@ -860,6 +865,7 @@ class BrowserView : public BrowserWindow + friend class BrowserViewLayoutDelegateImpl; friend class BrowserViewLayoutDelegateImplOld; friend class BrowserViewLayoutDelegateImplBrowsertest; + friend class TabCyclingEventHandler; friend class TopControlsSlideControllerTest; FRIEND_TEST_ALL_PREFIXES(BrowserViewTest, BrowserView); FRIEND_TEST_ALL_PREFIXES(BrowserViewTest, AccessibleWindowTitle); -@@ -1395,6 +1401,8 @@ class BrowserView : public BrowserWindow +@@ -1387,6 +1393,8 @@ class BrowserView : public BrowserWindow base::CallbackListSubscription vertical_tab_subscription_; diff --git a/patches/contrib/bromite/disable-fetching-field-trials.patch b/patches/contrib/bromite/disable-fetching-field-trials.patch index 73a8b6cd5..b55010d38 100644 --- a/patches/contrib/bromite/disable-fetching-field-trials.patch +++ b/patches/contrib/bromite/disable-fetching-field-trials.patch @@ -10,7 +10,7 @@ Subject: Disable fetching of all field trials --- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java +++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java -@@ -60,7 +60,7 @@ public abstract class ChromeFeatureList +@@ -61,7 +61,7 @@ public abstract class ChromeFeatureList * |kFeaturesExposedToJava| in chrome/browser/flags/android/chrome_feature_list.cc */ public static String getFieldTrialParamByFeature(String featureName, String paramName) { @@ -19,7 +19,7 @@ Subject: Disable fetching of all field trials } /** -@@ -72,8 +72,7 @@ public abstract class ChromeFeatureList +@@ -73,8 +73,7 @@ public abstract class ChromeFeatureList */ public static boolean getFieldTrialParamByFeatureAsBoolean( String featureName, String paramName, boolean defaultValue) { @@ -29,7 +29,7 @@ Subject: Disable fetching of all field trials } /** -@@ -85,8 +84,7 @@ public abstract class ChromeFeatureList +@@ -86,8 +85,7 @@ public abstract class ChromeFeatureList */ public static int getFieldTrialParamByFeatureAsInt( String featureName, String paramName, int defaultValue) { @@ -39,7 +39,7 @@ Subject: Disable fetching of all field trials } /** -@@ -98,8 +96,7 @@ public abstract class ChromeFeatureList +@@ -99,8 +97,7 @@ public abstract class ChromeFeatureList */ public static double getFieldTrialParamByFeatureAsDouble( String featureName, String paramName, double defaultValue) { @@ -51,7 +51,7 @@ Subject: Disable fetching of all field trials /** --- a/components/variations/service/variations_service.cc +++ b/components/variations/service/variations_service.cc -@@ -224,22 +224,7 @@ bool GetInstanceManipulations(const net: +@@ -223,22 +223,7 @@ bool GetInstanceManipulations(const net: // Variations seed fetching is only enabled in official Chrome builds, if a URL // is specified on the command line, and for testing. bool IsFetchingEnabled() { diff --git a/patches/contrib/bromite/fingerprinting-flags-client-rects-and-measuretext.patch b/patches/contrib/bromite/fingerprinting-flags-client-rects-and-measuretext.patch index 780f9c4b9..78b858b96 100644 --- a/patches/contrib/bromite/fingerprinting-flags-client-rects-and-measuretext.patch +++ b/patches/contrib/bromite/fingerprinting-flags-client-rects-and-measuretext.patch @@ -9,7 +9,7 @@ --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -2609,6 +2609,7 @@ static_library("browser") { +@@ -2596,6 +2596,7 @@ static_library("browser") { "//third_party/libyuv", "//third_party/metrics_proto", "//third_party/re2", @@ -44,7 +44,7 @@ #endif // CHROME_BROWSER_BROMITE_FLAG_ENTRIES_H_ --- a/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn -@@ -302,6 +302,7 @@ source_set("browser") { +@@ -299,6 +299,7 @@ source_set("browser") { "//third_party/re2", "//third_party/snappy", "//third_party/sqlite", @@ -62,7 +62,7 @@ #include "components/viz/common/switches.h" #include "components/viz/host/gpu_client.h" #include "components/viz/host/host_frame_sink_manager.h" -@@ -3591,6 +3592,8 @@ void RenderProcessHostImpl::PropagateBro +@@ -3698,6 +3699,8 @@ void RenderProcessHostImpl::PropagateBro switches::kEnableWebGLImageChromium, switches::kEnableWebGPUDeveloperFeatures, switches::kFileUrlPathAlias, @@ -73,7 +73,7 @@ switches::kForceHighContrast, --- a/content/child/BUILD.gn +++ b/content/child/BUILD.gn -@@ -110,6 +110,7 @@ target(link_target_type, "child") { +@@ -109,6 +109,7 @@ target(link_target_type, "child") { "//third_party/blink/public/common:buildflags", "//third_party/blink/public/strings", "//third_party/ced", @@ -83,7 +83,7 @@ "//ui/events/blink", --- a/content/child/runtime_features.cc +++ b/content/child/runtime_features.cc -@@ -41,6 +41,7 @@ +@@ -42,6 +42,7 @@ #include "third_party/blink/public/common/loader/referrer_utils.h" #include "third_party/blink/public/common/switches.h" #include "third_party/blink/public/platform/web_runtime_features.h" @@ -91,7 +91,7 @@ #include "ui/accessibility/accessibility_features.h" #include "ui/base/ui_base_features.h" #include "ui/events/blink/blink_features.h" -@@ -483,6 +484,10 @@ void SetRuntimeFeaturesFromCommandLine(c +@@ -485,6 +486,10 @@ void SetRuntimeFeaturesFromCommandLine(c true}, {wrf::EnableWebAudioBypassOutputBufferingOptOut, blink::switches::kWebAudioBypassOutputBufferingOptOut, true}, @@ -124,7 +124,7 @@ #include "base/task/single_thread_task_runner.h" #include "base/time/time.h" #include "base/trace_event/trace_event.h" -@@ -1087,6 +1088,11 @@ Document::Document(const DocumentInit& i +@@ -1089,6 +1090,11 @@ Document::Document(const DocumentInit& i TRACE_EVENT_WITH_FLOW0("blink", "Document::Document", TRACE_ID_LOCAL(this), TRACE_EVENT_FLAG_FLOW_OUT); DCHECK(agent_); @@ -136,7 +136,7 @@ if (base::FeatureList::IsEnabled(features::kDelayAsyncScriptExecution) && features::kDelayAsyncScriptExecutionDelayByDefaultParam.Get()) { script_runner_delayer_->Activate(); -@@ -1224,6 +1230,14 @@ const Position Document::PositionAdjuste +@@ -1226,6 +1232,14 @@ const Position Document::PositionAdjuste return Position::BeforeNode(*shadow_host); } @@ -164,7 +164,7 @@ V8VisibilityState visibilityState() const; String visibilityStateAsString() const; bool IsPageVisible() const; -@@ -2795,6 +2799,9 @@ class CORE_EXPORT Document : public Cont +@@ -2810,6 +2814,9 @@ class CORE_EXPORT Document : public Cont base::ElapsedTimer start_time_; @@ -176,19 +176,17 @@ // - ScriptSchedulingType::kInOrder --- a/third_party/blink/renderer/core/dom/element.cc +++ b/third_party/blink/renderer/core/dom/element.cc -@@ -3190,6 +3190,11 @@ DOMRectList* Element::getClientRects() { - DCHECK(element_layout_object); - GetDocument().AdjustQuadsForScrollAndAbsoluteZoom(quads, - *element_layout_object); -+ if (RuntimeEnabledFeatures::FingerprintingClientRectsNoiseEnabled()) { -+ for (gfx::QuadF& quad : quads) { +@@ -3195,6 +3195,9 @@ Vector Element::GetClientRec + } + Vector result; + for (auto& quad : quads) { ++ if (RuntimeEnabledFeatures::FingerprintingClientRectsNoiseEnabled()) { + quad.Scale(GetDocument().GetNoiseFactorX(), GetDocument().GetNoiseFactorY()); + } -+ } - return MakeGarbageCollected(quads); - } - -@@ -3217,6 +3222,9 @@ gfx::RectF Element::GetBoundingClientRec + result.emplace_back(quad.BoundingBox()); + } + return result; +@@ -3224,6 +3227,9 @@ gfx::RectF Element::GetBoundingClientRec DCHECK(element_layout_object); GetDocument().AdjustRectForScrollAndAbsoluteZoom(result, *element_layout_object); @@ -228,9 +226,9 @@ // TODO(editing-dev): We should make --- a/third_party/blink/renderer/core/html/canvas/text_metrics.cc +++ b/third_party/blink/renderer/core/html/canvas/text_metrics.cc -@@ -106,6 +106,24 @@ const ShapeResult* ShapeWord(const TextR +@@ -89,6 +89,24 @@ TextMetrics::TextMetrics(const Font* fon + Update(font, direction, baseline, align, text, text_painter); } - } // namespace +void TextMetrics::Shuffle(const double factor) { + // x-direction @@ -255,7 +253,7 @@ const V8CanvasTextBaseline::Enum baseline, --- a/third_party/blink/renderer/core/html/canvas/text_metrics.h +++ b/third_party/blink/renderer/core/html/canvas/text_metrics.h -@@ -111,6 +111,8 @@ class CORE_EXPORT TextMetrics final : pu +@@ -109,6 +109,8 @@ class CORE_EXPORT TextMetrics final : pu float x_position_; }; @@ -266,7 +264,7 @@ const TextDirection& direction, --- a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc +++ b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc -@@ -108,6 +108,9 @@ +@@ -107,6 +107,9 @@ // https://github.com/include-what-you-use/include-what-you-use/issues/1122 // IWYU pragma: no_include "base/numerics/clamped_math.h" @@ -276,20 +274,14 @@ namespace blink { class MemoryManagedPaintCanvas; -@@ -1252,13 +1255,26 @@ TextMetrics* BaseRenderingContext2D::mea +@@ -1233,9 +1236,22 @@ TextMetrics* BaseRenderingContext2D::mea TextDirection direction = ToTextDirection(state.GetDirection(), host, computed_style); - return MakeGarbageCollected( -- font, direction, state.GetTextBaseline().AsEnum(), -- state.GetTextAlign().AsEnum(), text, + TextMetrics* text_metrics = MakeGarbageCollected( -+ font, direction, GetState().GetTextBaseline().AsEnum(), -+ GetState().GetTextAlign().AsEnum(), text, - RuntimeEnabledFeatures::CanvasTextNgEnabled( - host->GetTopExecutionContext()) - ? &host->GetPlainTextPainter() - : nullptr); + font, direction, state.GetTextBaseline().AsEnum(), + state.GetTextAlign().AsEnum(), text, host->GetPlainTextPainter()); + + // Scale text metrics if enabled + if (RuntimeEnabledFeatures::FingerprintingCanvasMeasureTextNoiseEnabled()) { @@ -308,7 +300,7 @@ String BaseRenderingContext2D::lang() const { --- a/third_party/blink/renderer/platform/BUILD.gn +++ b/third_party/blink/renderer/platform/BUILD.gn -@@ -1815,6 +1815,7 @@ component("platform") { +@@ -1811,6 +1811,7 @@ component("platform") { "//components/paint_preview/common", "//components/search_engines:search_engine_utils", "//components/translate/core/language_detection", @@ -343,7 +335,7 @@ #include "third_party/skia/include/core/SkImage.h" --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 -@@ -2350,6 +2350,12 @@ +@@ -2441,6 +2441,12 @@ status: "stable", }, { diff --git a/patches/contrib/bromite/flag-fingerprinting-canvas-image-data-noise.patch b/patches/contrib/bromite/flag-fingerprinting-canvas-image-data-noise.patch index 2d7183e4f..4e6fedf5f 100644 --- a/patches/contrib/bromite/flag-fingerprinting-canvas-image-data-noise.patch +++ b/patches/contrib/bromite/flag-fingerprinting-canvas-image-data-noise.patch @@ -34,7 +34,7 @@ approach to change color components. #endif // CHROME_BROWSER_BROMITE_FLAG_ENTRIES_H_ --- a/content/browser/renderer_host/render_process_host_impl.cc +++ b/content/browser/renderer_host/render_process_host_impl.cc -@@ -3594,6 +3594,7 @@ void RenderProcessHostImpl::PropagateBro +@@ -3701,6 +3701,7 @@ void RenderProcessHostImpl::PropagateBro switches::kFileUrlPathAlias, switches::kFingerprintingClientRectsNoise, switches::kFingerprintingCanvasMeasureTextNoise, @@ -44,7 +44,7 @@ approach to change color components. switches::kForceHighContrast, --- a/content/child/runtime_features.cc +++ b/content/child/runtime_features.cc -@@ -488,6 +488,8 @@ void SetRuntimeFeaturesFromCommandLine(c +@@ -490,6 +490,8 @@ void SetRuntimeFeaturesFromCommandLine(c switches::kFingerprintingClientRectsNoise, true}, {wrf::EnableFingerprintingCanvasMeasureTextNoise, switches::kFingerprintingCanvasMeasureTextNoise, true}, @@ -65,7 +65,7 @@ approach to change color components. }; --- a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc +++ b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc -@@ -558,6 +558,9 @@ ImageData* BaseRenderingContext2D::getIm +@@ -557,6 +557,9 @@ ImageData* BaseRenderingContext2D::getIm snapshot->PaintImageForCurrentFrame().GetSkImageInfo().bounds(); DCHECK(!bounds.intersect(SkIRect::MakeXYWH(sx, sy, sw, sh))); } @@ -77,7 +77,7 @@ approach to change color components. return image_data; --- a/third_party/blink/renderer/platform/BUILD.gn +++ b/third_party/blink/renderer/platform/BUILD.gn -@@ -1757,7 +1757,9 @@ component("platform") { +@@ -1753,7 +1753,9 @@ component("platform") { "//third_party/blink/renderer:non_test_config", ] @@ -281,7 +281,7 @@ approach to change color components. } // namespace blink --- a/third_party/blink/renderer/platform/graphics/static_bitmap_image.h +++ b/third_party/blink/renderer/platform/graphics/static_bitmap_image.h -@@ -39,6 +39,8 @@ class PLATFORM_EXPORT StaticBitmapImage +@@ -38,6 +38,8 @@ class PLATFORM_EXPORT StaticBitmapImage StaticBitmapImage(ImageOrientation orientation) : orientation_(orientation) {} @@ -314,7 +314,7 @@ approach to change color components. SkJpegEncoder::Options options; --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 -@@ -2356,6 +2356,9 @@ +@@ -2447,6 +2447,9 @@ name: "FingerprintingCanvasMeasureTextNoise", }, { diff --git a/patches/contrib/bromite/flag-max-connections-per-host.patch b/patches/contrib/bromite/flag-max-connections-per-host.patch index a010155f0..6d5914fd4 100644 --- a/patches/contrib/bromite/flag-max-connections-per-host.patch +++ b/patches/contrib/bromite/flag-max-connections-per-host.patch @@ -17,7 +17,7 @@ with limited CPU/memory resources and it is disabled by default. --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -2283,6 +2283,7 @@ static_library("browser") { +@@ -2269,6 +2269,7 @@ static_library("browser") { "//components/net_log", "//components/network_hints/common:mojo_bindings", "//components/network_session_configurator/browser", @@ -81,7 +81,7 @@ with limited CPU/memory resources and it is disabled by default. #include "printing/buildflags/buildflags.h" #include "services/network/public/cpp/features.h" #include "services/network/public/cpp/network_switches.h" -@@ -417,6 +421,18 @@ void BrowserProcessImpl::Init() { +@@ -432,6 +436,18 @@ void BrowserProcessImpl::Init() { pref_change_registrar_.Add(metrics::prefs::kMetricsReportingEnabled, base::BindRepeating(&ApplyMetricsReportingPolicy)); @@ -100,31 +100,19 @@ with limited CPU/memory resources and it is disabled by default. DCHECK(!webrtc_event_log_manager_); webrtc_event_log_manager_ = WebRtcEventLogManager::CreateSingletonInstance(); ---- a/chrome/browser/flag_descriptions.cc -+++ b/chrome/browser/flag_descriptions.cc -@@ -2671,6 +2671,10 @@ const char kLogJsConsoleMessagesDescript +--- a/chrome/browser/flag_descriptions.h ++++ b/chrome/browser/flag_descriptions.h +@@ -2753,6 +2753,10 @@ inline constexpr char kLogJsConsoleMessa "Enable logging JS console messages in system logs, please note that they " "may contain PII."; -+const char kMaxConnectionsPerHostName[] = "Maximum connections per host"; -+const char kMaxConnectionsPerHostDescription[] = ++inline constexpr char kMaxConnectionsPerHostName[] = "Maximum connections per host"; ++inline constexpr char kMaxConnectionsPerHostDescription[] = + "Customize maximum allowed connections per host. ungoogled-chromium flag, Bromite feature."; + - const char kMediaRouterCastAllowAllIPsName[] = + inline constexpr char kMediaRouterCastAllowAllIPsName[] = "Connect to Cast devices on all IP addresses"; - const char kMediaRouterCastAllowAllIPsDescription[] = ---- a/chrome/browser/flag_descriptions.h -+++ b/chrome/browser/flag_descriptions.h -@@ -1567,6 +1567,9 @@ extern const char kLockTopControlsOnLarg - extern const char kLogJsConsoleMessagesName[]; - extern const char kLogJsConsoleMessagesDescription[]; - -+extern const char kMaxConnectionsPerHostName[]; -+extern const char kMaxConnectionsPerHostDescription[]; -+ - extern const char kMediaRouterCastAllowAllIPsName[]; - extern const char kMediaRouterCastAllowAllIPsDescription[]; - + inline constexpr char kMediaRouterCastAllowAllIPsDescription[] = --- a/components/network_session_configurator/common/network_features.cc +++ b/components/network_session_configurator/common/network_features.cc @@ -8,4 +8,7 @@ diff --git a/patches/contrib/inox-patchset/disable-rlz.patch b/patches/contrib/inox-patchset/disable-rlz.patch index 175a734bf..6f6e27f35 100644 --- a/patches/contrib/inox-patchset/disable-rlz.patch +++ b/patches/contrib/inox-patchset/disable-rlz.patch @@ -2,7 +2,7 @@ --- a/BUILD.gn +++ b/BUILD.gn -@@ -458,14 +458,6 @@ group("gn_all") { +@@ -459,14 +459,6 @@ group("gn_all") { ] } diff --git a/patches/contrib/inox-patchset/disable-update-pings.patch b/patches/contrib/inox-patchset/disable-update-pings.patch index 8cbdbb3b7..071a9f90d 100644 --- a/patches/contrib/inox-patchset/disable-update-pings.patch +++ b/patches/contrib/inox-patchset/disable-update-pings.patch @@ -1,6 +1,6 @@ --- a/chrome/updater/configurator.cc +++ b/chrome/updater/configurator.cc -@@ -133,7 +133,7 @@ base::TimeDelta Configurator::UpdateDela +@@ -132,7 +132,7 @@ base::TimeDelta Configurator::UpdateDela std::vector Configurator::UpdateUrl() const { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); diff --git a/patches/contrib/inox-patchset/fix-building-without-safebrowsing.patch b/patches/contrib/inox-patchset/fix-building-without-safebrowsing.patch index b1d2c4387..3466c2d8b 100644 --- a/patches/contrib/inox-patchset/fix-building-without-safebrowsing.patch +++ b/patches/contrib/inox-patchset/fix-building-without-safebrowsing.patch @@ -1,6 +1,6 @@ --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -3801,8 +3801,6 @@ static_library("browser") { +@@ -3800,8 +3800,6 @@ static_library("browser") { "download/download_auto_open_policy_handler.cc", "download/download_auto_open_policy_handler.h", "download/download_commands.cc", @@ -11,9 +11,9 @@ "download/download_dir_util.cc", --- a/chrome/browser/chrome_content_browser_client_navigation_throttles.cc +++ b/chrome/browser/chrome_content_browser_client_navigation_throttles.cc -@@ -393,10 +393,6 @@ void CreateAndAddChromeThrottlesForNavig - registry.AddThrottle(std::make_unique( - registry, handle.GetWebContents()->GetBrowserContext())); +@@ -405,10 +405,6 @@ void CreateAndAddChromeThrottlesForNavig + Profile::FromBrowserContext(context)), + SafeSearchFactory::GetForBrowserContext(context))); - // Before setting up SSL error detection, configure SSLErrorHandler to invoke - // the relevant extension API whenever an SSL interstitial is shown. @@ -76,15 +76,15 @@ } --- a/chrome/browser/extensions/api/downloads/downloads_api.cc +++ b/chrome/browser/extensions/api/downloads/downloads_api.cc -@@ -36,7 +36,6 @@ - #include "chrome/browser/browser_process.h" - #include "chrome/browser/download/download_core_service.h" - #include "chrome/browser/download/download_core_service_factory.h" +@@ -86,7 +86,6 @@ + #endif + + #if BUILDFLAG(ENABLE_EXTENSIONS) -#include "chrome/browser/download/download_danger_prompt.h" - #include "chrome/browser/download/download_file_icon_extractor.h" #include "chrome/browser/download/download_open_prompt.h" - #include "chrome/browser/download/download_prefs.h" -@@ -1382,9 +1381,6 @@ DownloadsAcceptDangerFunction::Downloads + #include "chrome/browser/ui/browser.h" + #include "chrome/browser/ui/browser_window.h" +@@ -1359,9 +1358,6 @@ DownloadsAcceptDangerFunction::Downloads DownloadsAcceptDangerFunction::~DownloadsAcceptDangerFunction() = default; @@ -94,10 +94,10 @@ ExtensionFunction::ResponseAction DownloadsAcceptDangerFunction::Run() { std::optional params = downloads::AcceptDanger::Params::Create(args()); -@@ -1434,44 +1430,7 @@ void DownloadsAcceptDangerFunction::Prom - return; +@@ -1412,50 +1408,13 @@ void DownloadsAcceptDangerFunction::Prom } RecordApiFunctions(DownloadsFunctionName::kDownloadsFunctionAcceptDanger); + #if BUILDFLAG(ENABLE_EXTENSIONS) - // DownloadDangerPrompt displays a modal dialog using native widgets that the - // user must either accept or cancel. It cannot be scripted. - DownloadDangerPrompt* prompt = DownloadDangerPrompt::Create( @@ -110,8 +110,13 @@ - on_prompt_created_ = nullptr; - } - // Function finishes in DangerPromptCallback(). --} -- ++ download_item->ValidateDangerousDownload(); + #else + NOTIMPLEMENTED(); + Respond(Error("DownloadDangerPrompt not implemented")); + #endif // BUILDFLAG(ENABLE_EXTENSIONS) + } + -void DownloadsAcceptDangerFunction::DangerPromptCallback( - int download_id, - DownloadDangerPrompt::Action action) { @@ -136,10 +141,11 @@ - break; - } - Respond(NoArguments()); -+ download_item->ValidateDangerousDownload(); - } - +-} +- DownloadsShowFunction::DownloadsShowFunction() = default; + + DownloadsShowFunction::~DownloadsShowFunction() = default; --- a/chrome/browser/extensions/api/downloads/downloads_api.h +++ b/chrome/browser/extensions/api/downloads/downloads_api.h @@ -13,7 +13,6 @@ @@ -150,7 +156,7 @@ #include "chrome/common/extensions/api/downloads.h" #include "components/download/content/public/all_download_item_notifier.h" #include "components/download/public/common/download_path_reservation_tracker.h" -@@ -201,13 +200,6 @@ class DownloadsRemoveFileFunction : publ +@@ -170,13 +169,6 @@ class DownloadsRemoveFileFunction : publ class DownloadsAcceptDangerFunction : public ExtensionFunction { public: @@ -164,7 +170,7 @@ DECLARE_EXTENSION_FUNCTION("downloads.acceptDanger", DOWNLOADS_ACCEPTDANGER) DownloadsAcceptDangerFunction(); -@@ -219,13 +211,10 @@ class DownloadsAcceptDangerFunction : pu +@@ -188,13 +180,10 @@ class DownloadsAcceptDangerFunction : pu protected: ~DownloadsAcceptDangerFunction() override; @@ -253,7 +259,7 @@ if (enable_extensions) { deps += [ "//chrome/browser/ui/web_applications" ] -@@ -614,6 +616,7 @@ static_library("advanced_protection") { +@@ -616,6 +618,7 @@ static_library("advanced_protection") { } source_set("metrics_collector") { @@ -261,7 +267,7 @@ sources = [ "safe_browsing_metrics_collector_factory.cc", "safe_browsing_metrics_collector_factory.h", -@@ -633,6 +636,7 @@ source_set("metrics_collector") { +@@ -635,6 +638,7 @@ source_set("metrics_collector") { "//components/safe_browsing/core/common:safe_browsing_prefs", "//content/public/browser", ] diff --git a/patches/contrib/inox-patchset/modify-default-prefs.patch b/patches/contrib/inox-patchset/modify-default-prefs.patch index 6a4c490ab..975e0a04c 100644 --- a/patches/contrib/inox-patchset/modify-default-prefs.patch +++ b/patches/contrib/inox-patchset/modify-default-prefs.patch @@ -1,6 +1,6 @@ --- a/chrome/browser/background/extensions/background_mode_manager.cc +++ b/chrome/browser/background/extensions/background_mode_manager.cc -@@ -350,7 +350,7 @@ BackgroundModeManager::~BackgroundModeMa +@@ -349,7 +349,7 @@ BackgroundModeManager::~BackgroundModeMa // static void BackgroundModeManager::RegisterPrefs(PrefRegistrySimple* registry) { @@ -11,7 +11,7 @@ void BackgroundModeManager::RegisterProfile(Profile* profile) { --- a/chrome/browser/chrome_content_browser_client.cc +++ b/chrome/browser/chrome_content_browser_client.cc -@@ -1439,7 +1439,7 @@ void ChromeContentBrowserClient::Registe +@@ -1419,7 +1419,7 @@ void ChromeContentBrowserClient::Registe void ChromeContentBrowserClient::RegisterProfilePrefs( user_prefs::PrefRegistrySyncable* registry) { registry->RegisterBooleanPref(prefs::kDisable3DAPIs, false); @@ -22,7 +22,7 @@ // used for mapping the command-line flags). --- a/chrome/browser/net/profile_network_context_service.cc +++ b/chrome/browser/net/profile_network_context_service.cc -@@ -598,7 +598,7 @@ void ProfileNetworkContextService::Confi +@@ -618,7 +618,7 @@ void ProfileNetworkContextService::Confi void ProfileNetworkContextService::RegisterProfilePrefs( user_prefs::PrefRegistrySyncable* registry) { registry->RegisterBooleanPref(embedder_support::kAlternateErrorPagesEnabled, @@ -55,7 +55,7 @@ --- a/chrome/browser/ui/browser_ui_prefs.cc +++ b/chrome/browser/ui/browser_ui_prefs.cc -@@ -125,7 +125,7 @@ void RegisterBrowserUserPrefs(user_prefs +@@ -128,7 +128,7 @@ void RegisterBrowserUserPrefs(user_prefs registry->RegisterBooleanPref(prefs::kWebAppCreateInAppsMenu, true); registry->RegisterBooleanPref(prefs::kWebAppCreateInQuickLaunchBar, true); registry->RegisterBooleanPref( @@ -75,7 +75,7 @@ user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); registry->RegisterIntegerPref( kAutofillLastVersionDeduped, 0, -@@ -43,7 +43,7 @@ void RegisterProfilePrefs(user_prefs::Pr +@@ -49,7 +49,7 @@ void RegisterProfilePrefs(user_prefs::Pr kAutofillHasSeenIban, false, user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); registry->RegisterBooleanPref( @@ -108,18 +108,13 @@ --- a/components/password_manager/core/browser/password_manager.cc +++ b/components/password_manager/core/browser/password_manager.cc -@@ -522,7 +522,7 @@ bool HasManuallyFilledPassword(const Pas +@@ -544,10 +544,10 @@ PasswordForm CreateFormForLeakCheck(cons void PasswordManager::RegisterProfilePrefs( user_prefs::PrefRegistrySyncable* registry) { registry->RegisterBooleanPref( - prefs::kCredentialsEnableService, true, + prefs::kCredentialsEnableService, false, user_prefs::PrefRegistrySyncable::SYNCABLE_PRIORITY_PREF); - #if BUILDFLAG(IS_IOS) - // Deprecated pref in profile prefs. -@@ -530,7 +530,7 @@ void PasswordManager::RegisterProfilePre - false); - #endif // BUILDFLAG(IS_IOS) registry->RegisterBooleanPref( - prefs::kCredentialsEnableAutosignin, true, + prefs::kCredentialsEnableAutosignin, false, diff --git a/patches/contrib/iridium-browser/all-add-trk-prefixes-to-possibly-evil-connections.patch b/patches/contrib/iridium-browser/all-add-trk-prefixes-to-possibly-evil-connections.patch index 5b9dbe01b..8c7b29ed3 100644 --- a/patches/contrib/iridium-browser/all-add-trk-prefixes-to-possibly-evil-connections.patch +++ b/patches/contrib/iridium-browser/all-add-trk-prefixes-to-possibly-evil-connections.patch @@ -88,17 +88,6 @@ by default. // Return true if the customization was applied. Customization is applied only // once per machine. ---- a/chrome/browser/extensions/install_signer.cc -+++ b/chrome/browser/extensions/install_signer.cc -@@ -66,7 +66,7 @@ const int kSignatureFormatVersion = 2; - const size_t kSaltBytes = 32; - - const char kBackendUrl[] = -- "https://www.googleapis.com/chromewebstore/v1.1/items/verify"; -+ "trk:222:https://www.googleapis.com/chromewebstore/v1.1/items/verify"; - - const char kPublicKeyPEM[] = - "-----BEGIN PUBLIC KEY-----" --- a/chrome/browser/media/webrtc/webrtc_event_log_uploader.cc +++ b/chrome/browser/media/webrtc/webrtc_event_log_uploader.cc @@ -111,7 +111,7 @@ void OnURLLoadUploadProgress(uint64_t cu @@ -236,20 +225,6 @@ by default. // This class is a singleton. explicit SimpleGeolocationProvider( ---- a/components/drive/service/drive_api_service.cc -+++ b/components/drive/service/drive_api_service.cc -@@ -79,9 +79,9 @@ namespace drive { - namespace { - - // OAuth2 scopes for Drive API. --const char kDriveScope[] = "https://www.googleapis.com/auth/drive"; -+const char kDriveScope[] = "trk:217:https://www.googleapis.com/auth/drive"; - const char kDriveAppsReadonlyScope[] = -- "https://www.googleapis.com/auth/drive.apps.readonly"; -+ "trk:218:https://www.googleapis.com/auth/drive.apps.readonly"; - const char kDriveAppsScope[] = "https://www.googleapis.com/auth/drive.apps"; - - // Mime type to create a directory. --- a/components/feedback/feedback_uploader.cc +++ b/components/feedback/feedback_uploader.cc @@ -40,7 +40,7 @@ constexpr base::FilePath::CharType kFeed @@ -392,6 +367,17 @@ by default. #if BUILDFLAG(IS_WIN) GURL url(base::WideToUTF16(args[0])); +--- a/extensions/browser/install_signer.cc ++++ b/extensions/browser/install_signer.cc +@@ -66,7 +66,7 @@ const int kSignatureFormatVersion = 2; + const size_t kSaltBytes = 32; + + const char kBackendUrl[] = +- "https://www.googleapis.com/chromewebstore/v1.1/items/verify"; ++ "trk:222:https://www.googleapis.com/chromewebstore/v1.1/items/verify"; + + const char kPublicKeyPEM[] = + "-----BEGIN PUBLIC KEY-----" --- a/extensions/common/extension_urls.cc +++ b/extensions/common/extension_urls.cc @@ -38,13 +38,13 @@ const GURL* g_item_snippet_url_for_test_ @@ -415,7 +401,7 @@ by default. const char kExtensionsMenuUtmSource[] = "ext_extensions_menu"; --- a/google_apis/gaia/gaia_constants.cc +++ b/google_apis/gaia/gaia_constants.cc -@@ -14,173 +14,173 @@ const char kChromeSource[] = "ChromiumBr +@@ -14,185 +14,185 @@ const char kChromeSource[] = "ChromiumBr const char kUnexpectedServiceResponse[] = "UnexpectedServiceResponse"; // OAuth scopes. @@ -521,6 +507,11 @@ by default. -const char kTachyonOAuthScope[] = "https://www.googleapis.com/auth/tachyon"; +const char kTachyonOAuthScope[] = "trk:087:https://www.googleapis.com/auth/tachyon"; + // OAuth2 scope for School Tools API. + const char kSchoolToolsAuthScope[] = +- "https://www.googleapis.com/auth/chromeosschooltools"; ++ "trk:068:https://www.googleapis.com/auth/chromeosschooltools"; + // OAuth2 scope for access to the Photos API. -const char kPhotosOAuth2Scope[] = "https://www.googleapis.com/auth/photos"; +const char kPhotosOAuth2Scope[] = "trk:088:https://www.googleapis.com/auth/photos"; @@ -566,6 +557,11 @@ by default. -const char kDriveOAuth2Scope[] = "https://www.googleapis.com/auth/drive"; +const char kDriveOAuth2Scope[] = "trk:097:https://www.googleapis.com/auth/drive"; + // OAuth2 scope for access to Drive Apps. + const char kDriveAppsOAuth2Scope[] = +- "https://www.googleapis.com/auth/drive.apps"; ++ "trk:067:https://www.googleapis.com/auth/drive.apps"; + // OAuth2 scope for access for DriveFS to access flags. const char kExperimentsAndConfigsOAuth2Scope[] = - "https://www.googleapis.com/auth/experimentsandconfigs"; @@ -591,6 +587,11 @@ by default. - "https://www.googleapis.com/auth/nearbydevices-pa"; + "trk:100:https://www.googleapis.com/auth/nearbydevices-pa"; + // OAuth2 scope for access to readonly Drive Apps. + const char kDriveAppsReadonlyOAuth2Scope[] = +- "https://www.googleapis.com/auth/drive.apps.readonly"; ++ "trk:066:https://www.googleapis.com/auth/drive.apps.readonly"; + // OAuth2 scope for access to nearby sharing. const char kNearbyShareOAuth2Scope[] = - "https://www.googleapis.com/auth/nearbysharing-pa"; @@ -637,7 +638,7 @@ by default. const char kFeedOAuth2Scope[] = "https://www.googleapis.com/auth/googlenow"; --- a/google_apis/gaia/gaia_urls.cc +++ b/google_apis/gaia/gaia_urls.cc -@@ -24,6 +24,7 @@ +@@ -25,6 +25,7 @@ namespace { // Gaia service constants diff --git a/patches/contrib/iridium-browser/browser-disable-profile-auto-import-on-first-run.patch b/patches/contrib/iridium-browser/browser-disable-profile-auto-import-on-first-run.patch index fa9fe4377..f3abe1f90 100644 --- a/patches/contrib/iridium-browser/browser-disable-profile-auto-import-on-first-run.patch +++ b/patches/contrib/iridium-browser/browser-disable-profile-auto-import-on-first-run.patch @@ -5,7 +5,7 @@ Subject: [PATCH 56/66] browser: disable profile auto-import on first run --- a/chrome/browser/chrome_browser_main.cc +++ b/chrome/browser/chrome_browser_main.cc -@@ -1589,30 +1589,6 @@ int ChromeBrowserMainParts::PreMainMessa +@@ -1793,30 +1793,6 @@ int ChromeBrowserMainParts::PreMainMessa // and preferences have been registered since some of the import code depends // on preferences. if (first_run::IsChromeFirstRun()) { diff --git a/patches/contrib/iridium-browser/updater-disable-auto-update.patch b/patches/contrib/iridium-browser/updater-disable-auto-update.patch index 3bc89cbc4..e7f862c8f 100644 --- a/patches/contrib/iridium-browser/updater-disable-auto-update.patch +++ b/patches/contrib/iridium-browser/updater-disable-auto-update.patch @@ -16,7 +16,7 @@ the case anyway, since we are based off Chromium, not Chrome. --- a/chrome/browser/app_controller_mac.mm +++ b/chrome/browser/app_controller_mac.mm -@@ -1081,7 +1081,7 @@ class AppControllerNativeThemeObserver : +@@ -1098,7 +1098,7 @@ class AppControllerNativeThemeObserver : CFStringRef checkInterval = CFSTR("checkInterval"); CFPropertyListRef plist = CFPreferencesCopyAppValue(checkInterval, app); if (!plist) { diff --git a/patches/contrib/ungoogled-chromium/add-credits.patch b/patches/contrib/ungoogled-chromium/add-credits.patch index d32421073..b0fde89e1 100644 --- a/patches/contrib/ungoogled-chromium/add-credits.patch +++ b/patches/contrib/ungoogled-chromium/add-credits.patch @@ -41,26 +41,33 @@ +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --- a/tools/licenses/licenses.py +++ b/tools/licenses/licenses.py -@@ -1026,6 +1026,16 @@ def GenerateCredits(file_template_file, - entries.append( - MetadataToTemplateEntry(chromium_license_metadata, entry_template)) +@@ -52,6 +52,14 @@ _CHROMIUM_LICENSE_METADATA = { + 'dir': '', # Relative to _REPOSITORY_ROOT + } -+ ugc_license_metadata = { -+ 'Name': 'ungoogled-chromium', -+ 'URL': 'https://github.com/ungoogled-software/ungoogled-chromium', -+ 'Shipped': 'yes', -+ 'License File': [os.path.join(_REPOSITORY_ROOT, 'third_party', 'ungoogled-chromium', 'LICENSE')], -+ } ++_UGC_LICENSE_METADATA = { ++ 'Name': 'ungoogled-chromium', ++ 'URL': 'https://github.com/ungoogled-software/ungoogled-chromium', ++ 'License': 'BSD-3-Clause', ++ 'Shipped': 'yes', ++ 'License File': [os.path.join(_REPOSITORY_ROOT, 'third_party', 'ungoogled-chromium', 'LICENSE')], ++} + -+ entries.append( -+ MetadataToTemplateEntry(ugc_license_metadata, entry_template)) -+ - entries_by_name = {} - for path in third_party_dirs: - try: -@@ -1062,8 +1072,8 @@ def GenerateCredits(file_template_file, - reciprocal_template = codecs.open(reciprocal_template_file, - encoding='utf-8').read() + # Paths from the root of the tree to directories to skip. + PRUNE_PATHS = set([ + # Placeholder directory only, not third-party code. +@@ -1008,7 +1016,7 @@ def _DiscoverMetadatas(args): + LogParseDirErrors(errors) + + metadatas.sort(key=lambda m: (m['Name'].lower(), m['dir'])) +- metadatas = [_CHROMIUM_LICENSE_METADATA] + metadatas ++ metadatas = [_CHROMIUM_LICENSE_METADATA] + [_UGC_LICENSE_METADATA] + metadatas + return metadatas, had_errors + + +@@ -1085,8 +1093,8 @@ def GenerateCredits(args, metadatas): + entries_contents = '\n'.join([entry['content'] for entry in entries]) + reciprocal_contents = EvaluateTemplate(reciprocal_template, { - 'opensource_project': 'Chromium', - 'opensource_link': 'https://source.chromium.org/chromium' diff --git a/patches/contrib/ungoogled-chromium/add-flag-for-close-confirmation.patch b/patches/contrib/ungoogled-chromium/add-flag-for-close-confirmation.patch index 85df61135..d6be48a70 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-for-close-confirmation.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-for-close-confirmation.patch @@ -7,16 +7,16 @@ +#include "chrome/browser/ui/views/message_box_dialog.h" #include "chrome/browser/ui/views/status_bubble_views.h" #include "chrome/browser/ui/web_applications/app_browser_controller.h" - #include "chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.h" -@@ -630,6 +631,7 @@ Browser::Browser(const CreateParams& par - omit_from_session_restore_(params.omit_from_session_restore), + #include "chrome/browser/ui/webui/signin/login_ui_service.h" +@@ -588,6 +589,7 @@ Browser::Browser(const CreateParams& par should_trigger_session_restore_(params.should_trigger_session_restore), - cancel_download_confirmation_state_(NOT_PROMPTED), -+ close_multitab_confirmation_state_(NOT_PROMPTED), + cancel_download_confirmation_state_( + CancelDownloadConfirmationState::kNotPrompted), ++ close_multitab_confirmation_state_(CancelDownloadConfirmationState::kNotPrompted), override_bounds_(params.initial_bounds), initial_show_state_(params.initial_show_state), initial_workspace_(params.initial_workspace), -@@ -1015,20 +1017,22 @@ Browser::WarnBeforeClosingResult Browser +@@ -973,20 +975,22 @@ Browser::WarnBeforeClosingResult Browser return WarnBeforeClosingResult::kOkToClose; } @@ -52,15 +52,15 @@ } DCHECK(!warn_before_closing_callback_) -@@ -1080,6 +1084,7 @@ bool Browser::TryToCloseWindow( - +@@ -1040,6 +1044,7 @@ bool Browser::TryToCloseWindow( void Browser::ResetTryToCloseWindow() { - cancel_download_confirmation_state_ = NOT_PROMPTED; -+ close_multitab_confirmation_state_ = NOT_PROMPTED; + cancel_download_confirmation_state_ = + CancelDownloadConfirmationState::kNotPrompted; ++ close_multitab_confirmation_state_ = CancelDownloadConfirmationState::kNotPrompted; unload_controller_.ResetTryToCloseWindow(); } -@@ -3555,6 +3560,58 @@ bool Browser::CanCloseWithInProgressDown +@@ -3498,6 +3503,58 @@ bool Browser::CanCloseWithInProgressDown return false; } @@ -70,8 +70,8 @@ + + // If we've prompted, we need to hear from the user before we + // can close. -+ if (close_multitab_confirmation_state_ != NOT_PROMPTED) -+ return close_multitab_confirmation_state_ != WAITING_FOR_RESPONSE; ++ if (close_multitab_confirmation_state_ != CancelDownloadConfirmationState::kNotPrompted) ++ return close_multitab_confirmation_state_ != CancelDownloadConfirmationState::kWaitingForResponse; + + // If we're not running a full browser process with a profile manager + // (testing), it's ok to close the browser. @@ -102,7 +102,7 @@ + tab_strip_model_delegate_->AddTabAt(GURL(), -1, true); + } + -+ close_multitab_confirmation_state_ = WAITING_FOR_RESPONSE; ++ close_multitab_confirmation_state_ = CancelDownloadConfirmationState::kWaitingForResponse; + + auto callback = base::BindOnce(&Browser::MultitabResponse, + weak_factory_.GetWeakPtr()); @@ -118,8 +118,8 @@ + void Browser::InProgressDownloadResponse(bool cancel_downloads) { if (cancel_downloads) { - cancel_download_confirmation_state_ = RESPONSE_RECEIVED; -@@ -3580,6 +3637,22 @@ void Browser::InProgressDownloadResponse + cancel_download_confirmation_state_ = +@@ -3526,6 +3583,22 @@ void Browser::InProgressDownloadResponse std::move(warn_before_closing_callback_) .Run(WarnBeforeClosingResult::kDoNotClose); @@ -127,15 +127,15 @@ + +void Browser::MultitabResponse(chrome::MessageBoxResult result) { + if (result == chrome::MESSAGE_BOX_RESULT_YES) { -+ close_multitab_confirmation_state_ = RESPONSE_RECEIVED; ++ close_multitab_confirmation_state_ = CancelDownloadConfirmationState::kResponseReceived; + std::move(warn_before_closing_callback_) + .Run(WarnBeforeClosingResult::kOkToClose); + return; + } + -+ // Sets the confirmation state to NOT_PROMPTED so that if the user tries to ++ // Sets the confirmation state to kNotPrompted so that if the user tries to + // close again we'll show the warning again. -+ close_multitab_confirmation_state_ = NOT_PROMPTED; ++ close_multitab_confirmation_state_ = CancelDownloadConfirmationState::kNotPrompted; + + std::move(warn_before_closing_callback_) + .Run(WarnBeforeClosingResult::kDoNotClose); @@ -152,7 +152,7 @@ #include "chrome/browser/ui/tabs/tab_strip_model.h" #include "chrome/browser/ui/tabs/tab_strip_model_observer.h" #include "chrome/browser/ui/unload_controller.h" -@@ -1157,12 +1158,17 @@ class Browser : public TabStripModelObse +@@ -1136,12 +1137,17 @@ class Browser : public TabStripModelObse // Returns true if the window can close, false otherwise. bool CanCloseWithInProgressDownloads(); @@ -170,7 +170,7 @@ // Called when the user has decided whether to proceed or not with the browser // closure, in case the cookie migration notice was shown. |proceed_closing| // is true if the browser can be closed. -@@ -1343,6 +1349,8 @@ class Browser : public TabStripModelObse +@@ -1317,6 +1323,8 @@ class Browser : public TabStripModelObse // when the browser is closed with in-progress downloads. CancelDownloadConfirmationState cancel_download_confirmation_state_; diff --git a/patches/contrib/ungoogled-chromium/add-flag-for-custom-ntp.patch b/patches/contrib/ungoogled-chromium/add-flag-for-custom-ntp.patch index a8533ba54..67c5ed425 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-for-custom-ntp.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-for-custom-ntp.patch @@ -1,6 +1,6 @@ --- a/chrome/browser/chrome_content_browser_client.cc +++ b/chrome/browser/chrome_content_browser_client.cc -@@ -834,11 +834,15 @@ bool HandleNewTabPageLocationOverride( +@@ -800,11 +800,15 @@ bool HandleNewTabPageLocationOverride( // Don't change the URL when incognito mode. if (profile->IsOffTheRecord()) { diff --git a/patches/contrib/ungoogled-chromium/add-flag-for-disabling-link-drag.patch b/patches/contrib/ungoogled-chromium/add-flag-for-disabling-link-drag.patch index 19d2da08c..46187d09a 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-for-disabling-link-drag.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-for-disabling-link-drag.patch @@ -11,7 +11,7 @@ #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ --- a/third_party/blink/common/features.cc +++ b/third_party/blink/common/features.cc -@@ -19,6 +19,8 @@ +@@ -20,6 +20,8 @@ namespace blink::features { diff --git a/patches/contrib/ungoogled-chromium/add-flag-for-incognito-themes.patch b/patches/contrib/ungoogled-chromium/add-flag-for-incognito-themes.patch index 5dd27bd4a..4dd120f4d 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-for-incognito-themes.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-for-incognito-themes.patch @@ -1,6 +1,6 @@ --- a/chrome/browser/ui/views/frame/browser_widget.cc +++ b/chrome/browser/ui/views/frame/browser_widget.cc -@@ -680,5 +680,7 @@ bool BrowserWidget::RegenerateFrameOnThe +@@ -605,5 +605,7 @@ bool BrowserWidget::RegenerateFrameOnThe } bool BrowserWidget::IsIncognitoBrowser() const { diff --git a/patches/contrib/ungoogled-chromium/add-flag-for-omnibox-autocomplete-filtering.patch b/patches/contrib/ungoogled-chromium/add-flag-for-omnibox-autocomplete-filtering.patch index b316eaaa5..b0ddbe2b5 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-for-omnibox-autocomplete-filtering.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-for-omnibox-autocomplete-filtering.patch @@ -41,18 +41,18 @@ #include "base/feature_list.h" #include "base/format_macros.h" #include "base/functional/bind.h" -@@ -572,6 +573,15 @@ AutocompleteController::AutocompleteCont - steady_state_omnibox_position_( - metrics::OmniboxEventProto::UNKNOWN_POSITION) { - provider_types &= ~OmniboxFieldTrial::GetDisabledProviderTypes(); +@@ -558,6 +559,15 @@ AutocompleteController::AutocompleteCont + metrics::OmniboxEventProto::UNKNOWN_POSITION), + config_(config) { + config_.provider_types &= ~OmniboxFieldTrial::GetDisabledProviderTypes(); + if (base::CommandLine::ForCurrentProcess()->HasSwitch("omnibox-autocomplete-filtering")) { + const std::string flag_value = base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII("omnibox-autocomplete-filtering"); -+ provider_types &= AutocompleteProvider::TYPE_KEYWORD | AutocompleteProvider::TYPE_SEARCH | ++ config_.provider_types &= AutocompleteProvider::TYPE_KEYWORD | AutocompleteProvider::TYPE_SEARCH | + AutocompleteProvider::TYPE_HISTORY_URL | AutocompleteProvider::TYPE_BOOKMARK | AutocompleteProvider::TYPE_BUILTIN; + if (!base::Contains(flag_value, "bookmarks")) -+ provider_types &= ~AutocompleteProvider::TYPE_BOOKMARK; ++ config_.provider_types &= ~AutocompleteProvider::TYPE_BOOKMARK; + if (!base::Contains(flag_value, "chrome")) -+ provider_types &= ~AutocompleteProvider::TYPE_BUILTIN; ++ config_.provider_types &= ~AutocompleteProvider::TYPE_BUILTIN; + } // Providers run in the order they're added. Async providers should run first diff --git a/patches/contrib/ungoogled-chromium/add-flag-for-qr-generator.patch b/patches/contrib/ungoogled-chromium/add-flag-for-qr-generator.patch index f23e74b6a..706193e4f 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-for-qr-generator.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-for-qr-generator.patch @@ -30,9 +30,9 @@ #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ --- a/components/sharing_message/features.cc +++ b/components/sharing_message/features.cc -@@ -6,6 +6,8 @@ - +@@ -7,6 +7,8 @@ #include "build/build_config.h" + #include "components/sync_preferences/features.h" +BASE_FEATURE(kDisableQRGenerator, "DisableQRGenerator", base::FEATURE_DISABLED_BY_DEFAULT); + diff --git a/patches/contrib/ungoogled-chromium/add-flag-for-search-engine-collection.patch b/patches/contrib/ungoogled-chromium/add-flag-for-search-engine-collection.patch index 54c293164..431e8a7f3 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-for-search-engine-collection.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-for-search-engine-collection.patch @@ -2,7 +2,7 @@ --- a/chrome/browser/ui/tab_helpers.cc +++ b/chrome/browser/ui/tab_helpers.cc -@@ -567,7 +567,9 @@ void TabHelpers::AttachTabHelpers(WebCon +@@ -573,7 +573,9 @@ void TabHelpers::AttachTabHelpers(WebCon profile, web_contents); #endif // BUILDFLAG(SAFE_BROWSING_AVAILABLE) SafetyTipWebContentsObserver::CreateForWebContents(web_contents); @@ -25,7 +25,7 @@ #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ --- a/chrome/renderer/chrome_render_frame_observer.cc +++ b/chrome/renderer/chrome_render_frame_observer.cc -@@ -260,14 +260,16 @@ void ChromeRenderFrameObserver::DidFinis +@@ -273,14 +273,16 @@ void ChromeRenderFrameObserver::DidFinis if (frame->Parent() || frame->IsInFencedFrameTree()) return; @@ -73,7 +73,7 @@ } // namespace // TemplateURLService::LessWithPrefix ----------------------------------------- -@@ -582,6 +589,7 @@ TemplateURLService::TemplateURLService( +@@ -581,6 +588,7 @@ TemplateURLService::TemplateURLService( std::unique_ptr client, const base::RepeatingClosure& dsp_change_callback) : prefs_(prefs), @@ -81,18 +81,18 @@ search_engine_choice_service_(search_engine_choice_service), prepopulate_data_resolver_(prepopulate_data_resolver), search_terms_data_(std::move(search_terms_data)), -@@ -665,8 +673,8 @@ bool TemplateURLService::CanAddAutogener +@@ -664,8 +672,8 @@ bool TemplateURLService::CanAddAutogener // that may interfere with search queries). An easy heuristic for this is // whether the user has a TemplateURL that has been manually modified (e.g., // renamed) connected to the same host. -- return !url.is_valid() || url.host().empty() || -- CanAddAutogeneratedKeywordForHost(url.host()); -+ return should_autocollect_ && (!url.is_valid() || url.host().empty() || -+ CanAddAutogeneratedKeywordForHost(url.host())); +- return !url.is_valid() || url.GetHost().empty() || +- CanAddAutogeneratedKeywordForHost(url.GetHost()); ++ return should_autocollect_ && (!url.is_valid() || url.GetHost().empty() || ++ CanAddAutogeneratedKeywordForHost(url.GetHost())); } bool TemplateURLService::IsPrepopulatedOrDefaultProviderByPolicy( -@@ -2489,6 +2497,8 @@ SyncDataMap TemplateURLService::CreateGU +@@ -2492,6 +2500,8 @@ SyncDataMap TemplateURLService::CreateGU } void TemplateURLService::Init() { @@ -101,7 +101,7 @@ if (client_) { client_->SetOwner(this); } -@@ -2654,6 +2664,9 @@ void TemplateURLService::ChangeToLoadedS +@@ -2657,6 +2667,9 @@ void TemplateURLService::ChangeToLoadedS bool TemplateURLService::CanAddAutogeneratedKeywordForHost( const std::string& host) const { @@ -113,7 +113,7 @@ return true; --- a/components/search_engines/template_url_service.h +++ b/components/search_engines/template_url_service.h -@@ -909,6 +909,8 @@ class TemplateURLService final : public +@@ -912,6 +912,8 @@ class TemplateURLService final : public raw_ref prepopulate_data_resolver_; diff --git a/patches/contrib/ungoogled-chromium/add-flag-for-tab-hover-cards.patch b/patches/contrib/ungoogled-chromium/add-flag-for-tab-hover-cards.patch index 17caaa6bd..2a685d37a 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-for-tab-hover-cards.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-for-tab-hover-cards.patch @@ -8,7 +8,7 @@ #include "base/debug/alias.h" #include "base/functional/bind.h" #include "base/i18n/rtl.h" -@@ -762,6 +763,13 @@ void Tab::HideHover(TabStyle::HideHoverS +@@ -763,6 +764,13 @@ void Tab::HideHover(TabStyle::HideHoverS DeprecatedLayoutImmediately(); } @@ -42,7 +42,7 @@ #include "base/check.h" #include "base/compiler_specific.h" #include "base/containers/adapters.h" -@@ -2003,6 +2004,8 @@ void TabStrip::OnMouseEventInTab(views:: +@@ -1995,6 +1996,8 @@ void TabStrip::OnMouseEventInTab(views:: } void TabStrip::UpdateHoverCard(Tab* tab, HoverCardUpdateType update_type) { diff --git a/patches/contrib/ungoogled-chromium/add-flag-for-tabsearch-button.patch b/patches/contrib/ungoogled-chromium/add-flag-for-tabsearch-button.patch index 20002af53..96225aead 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-for-tabsearch-button.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-for-tabsearch-button.patch @@ -1,6 +1,6 @@ --- a/chrome/browser/ui/browser_command_controller.cc +++ b/chrome/browser/ui/browser_command_controller.cc -@@ -1633,7 +1633,8 @@ void BrowserCommandController::InitComma +@@ -1644,7 +1644,8 @@ void BrowserCommandController::InitComma command_updater_.UpdateCommandEnabled(IDC_WINDOW_CLOSE_OTHER_TABS, normal_window); @@ -20,7 +20,7 @@ #include "base/feature_list.h" #include "base/metrics/field_trial_params.h" #include "base/time/time.h" -@@ -613,6 +614,10 @@ static std::string GetCountryCode() { +@@ -656,6 +657,10 @@ static std::string GetCountryCode() { } bool HasTabSearchToolbarButton() { @@ -33,14 +33,16 @@ base::FeatureList::IsEnabled( --- a/chrome/browser/ui/views/frame/browser_view.cc +++ b/chrome/browser/ui/views/frame/browser_view.cc -@@ -5088,6 +5088,7 @@ void BrowserView::AddedToWidget() { - - toolbar_->Init(); +@@ -4475,6 +4475,9 @@ BookmarkBar::State BrowserView::bookmark + } -+ if (!base::CommandLine::ForCurrentProcess()->HasSwitch("remove-tabsearch-button")) - if (GetIsNormalType()) { - if (features::HasTabSearchToolbarButton()) { - tab_search_bubble_host_ = std::make_unique( + void BrowserView::UpdateTabSearchBubbleHost() { ++ if (base::CommandLine::ForCurrentProcess()->HasSwitch("remove-tabsearch-button")) { ++ return; ++ } + if (!GetIsNormalType()) { + return; + } --- a/chrome/browser/ui/views/frame/tab_strip_region_view.cc +++ b/chrome/browser/ui/views/frame/tab_strip_region_view.cc @@ -4,6 +4,7 @@ diff --git a/patches/contrib/ungoogled-chromium/add-flag-to-clear-data-on-exit.patch b/patches/contrib/ungoogled-chromium/add-flag-to-clear-data-on-exit.patch index 8009ff1ff..654032f68 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-to-clear-data-on-exit.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-to-clear-data-on-exit.patch @@ -1,6 +1,6 @@ --- a/chrome/browser/browser_features.cc +++ b/chrome/browser/browser_features.cc -@@ -313,4 +313,5 @@ BASE_FEATURE(kReportPakFileIntegrity, +@@ -302,4 +302,5 @@ BASE_FEATURE(kReportPakFileIntegrity, // show both in Chrome Tabs and Windows. BASE_FEATURE(kRemovalOfIWAsFromTabCapture, base::FEATURE_ENABLED_BY_DEFAULT); @@ -8,7 +8,7 @@ } // namespace features --- a/chrome/browser/browser_features.h +++ b/chrome/browser/browser_features.h -@@ -126,6 +126,7 @@ BASE_DECLARE_FEATURE(kRemovalOfIWAsFromT +@@ -122,6 +122,7 @@ BASE_DECLARE_FEATURE(kRemovalOfIWAsFromT // module, e.g. // //chrome/browser//features.h // diff --git a/patches/contrib/ungoogled-chromium/add-flag-to-close-window-with-last-tab.patch b/patches/contrib/ungoogled-chromium/add-flag-to-close-window-with-last-tab.patch index 860acb1dc..c202c9a15 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-to-close-window-with-last-tab.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-to-close-window-with-last-tab.patch @@ -8,7 +8,7 @@ #include "base/containers/adapters.h" #include "base/containers/flat_map.h" #include "base/containers/span.h" -@@ -1174,6 +1175,10 @@ void TabStripModel::CloseAllTabsInGroup( +@@ -1230,6 +1231,10 @@ void TabStripModel::CloseAllTabsInGroup( void TabStripModel::CloseWebContentsAt(int index, uint32_t close_types) { CHECK(ContainsIndex(index)); @@ -19,7 +19,7 @@ CloseTabs({GetWebContentsAt(index)}, close_types); } -@@ -3028,9 +3033,13 @@ TabStripModel::GetGroupsDestroyedFromRem +@@ -3088,9 +3093,13 @@ TabStripModel::GetGroupsDestroyedFromRem void TabStripModel::ExecuteCloseTabsByIndices( base::RepeatingCallback()> get_indices_to_close, uint32_t close_types) { diff --git a/patches/contrib/ungoogled-chromium/add-flag-to-configure-extension-downloading.patch b/patches/contrib/ungoogled-chromium/add-flag-to-configure-extension-downloading.patch index 85cc93ed1..c561d9804 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-to-configure-extension-downloading.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-to-configure-extension-downloading.patch @@ -53,8 +53,8 @@ @@ -1243,10 +1243,12 @@ DownloadConfirmationReason DownloadTarge return DownloadConfirmationReason::SAVE_AS; - #if BUILDFLAG(ENABLE_EXTENSIONS) -- // Don't prompt for extension downloads if the installation site is white + #if BUILDFLAG(ENABLE_EXTENSIONS_CORE) +- // Don't prompt for extension downloads if the installation site is allow - // listed. - if (download_crx_util::IsTrustedExtensionDownload(GetProfile(), *download_)) - return DownloadConfirmationReason::NONE; @@ -69,7 +69,7 @@ // Don't prompt for file types that are marked for opening automatically. --- a/chrome/browser/extensions/extension_management.cc +++ b/chrome/browser/extensions/extension_management.cc -@@ -326,6 +326,13 @@ bool ExtensionManagement::IsInstallation +@@ -331,6 +331,13 @@ bool ExtensionManagement::IsInstallation bool ExtensionManagement::IsOffstoreInstallAllowed( const GURL& url, const GURL& referrer_url) const { diff --git a/patches/contrib/ungoogled-chromium/add-flag-to-disable-local-history-expiration.patch b/patches/contrib/ungoogled-chromium/add-flag-to-disable-local-history-expiration.patch index a53e0f087..a158a650a 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-to-disable-local-history-expiration.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-to-disable-local-history-expiration.patch @@ -21,7 +21,7 @@ #include "base/compiler_specific.h" #include "base/containers/flat_set.h" #include "base/feature_list.h" -@@ -1346,7 +1347,8 @@ void HistoryBackend::InitImpl( +@@ -1344,7 +1345,8 @@ void HistoryBackend::InitImpl( db_->GetStartDate(&first_recorded_time_); // Start expiring old stuff. @@ -31,7 +31,7 @@ } void HistoryBackend::OnMemoryPressure( -@@ -1583,6 +1585,8 @@ void HistoryBackend::AddPagesWithDetails +@@ -1580,6 +1582,8 @@ void HistoryBackend::AddPagesWithDetails } bool HistoryBackend::IsExpiredVisitTime(const base::Time& time) const { diff --git a/patches/contrib/ungoogled-chromium/add-flag-to-force-punycode-hostnames.patch b/patches/contrib/ungoogled-chromium/add-flag-to-force-punycode-hostnames.patch index 8a2a01bc7..57ca4f26e 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-to-force-punycode-hostnames.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-to-force-punycode-hostnames.patch @@ -21,7 +21,7 @@ #include "base/memory/raw_ptr.h" #include "base/no_destructor.h" #include "base/numerics/safe_conversions.h" -@@ -316,6 +317,13 @@ IDNConversionResult IDNToUnicodeWithAdju +@@ -317,6 +318,13 @@ IDNConversionResult IDNToUnicodeWithAdju host16.reserve(host.length()); host16.insert(host16.end(), host.begin(), host.end()); diff --git a/patches/contrib/ungoogled-chromium/add-flag-to-hide-extensions-menu.patch b/patches/contrib/ungoogled-chromium/add-flag-to-hide-extensions-menu.patch index 53ef24632..0e2777e3c 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-to-hide-extensions-menu.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-to-hide-extensions-menu.patch @@ -8,15 +8,15 @@ #include "base/feature_list.h" #include "base/functional/bind.h" #include "base/functional/callback_helpers.h" -@@ -34,6 +35,7 @@ - #include "chrome/browser/ui/views/frame/toolbar_button_provider.h" +@@ -36,6 +37,7 @@ + #include "chrome/browser/ui/views/side_panel/extensions/extension_side_panel_coordinator.h" #include "chrome/browser/ui/views/side_panel/side_panel_ui.h" #include "chrome/browser/ui/views/toolbar/toolbar_action_hover_card_controller.h" +#include "chrome/browser/ui/views/toolbar/toolbar_view.h" #include "chrome/common/pref_names.h" #include "chrome/grit/generated_resources.h" #include "components/feature_engagement/public/event_constants.h" -@@ -547,6 +549,17 @@ void ExtensionsToolbarContainer::AnchorA +@@ -549,6 +551,17 @@ void ExtensionsToolbarContainer::AnchorA widget->widget_delegate()->AsBubbleDialogDelegate()->SetAnchorView( anchor_view && anchor_view->GetVisible() ? anchor_view : GetExtensionsButton()); @@ -34,7 +34,7 @@ widget->Show(); } -@@ -949,6 +962,9 @@ void ExtensionsToolbarContainer::UpdateC +@@ -953,6 +966,9 @@ void ExtensionsToolbarContainer::UpdateC } bool ExtensionsToolbarContainer::ShouldContainerBeVisible() const { diff --git a/patches/contrib/ungoogled-chromium/add-flag-to-hide-fullscreen-exit-ui.patch b/patches/contrib/ungoogled-chromium/add-flag-to-hide-fullscreen-exit-ui.patch index 7f0f0c783..3a718f41e 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-to-hide-fullscreen-exit-ui.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-to-hide-fullscreen-exit-ui.patch @@ -1,19 +1,18 @@ --- a/chrome/browser/ui/views/frame/browser_view.cc +++ b/chrome/browser/ui/views/frame/browser_view.cc -@@ -1969,6 +1969,10 @@ void BrowserView::ExitFullscreen() { - void BrowserView::UpdateExclusiveAccessBubble( - const ExclusiveAccessBubbleParams& params, - ExclusiveAccessBubbleHideCallback first_hide_callback) { -+ if (base::CommandLine::ForCurrentProcess()->HasSwitch( -+ "hide-fullscreen-exit-ui")) -+ return; -+ - // Trusted pinned mode does not allow to escape. So do not show the bubble. - bool is_trusted_pinned = - platform_util::IsBrowserLockedFullscreen(browser_.get()); +@@ -715,6 +715,9 @@ class BrowserView::ExclusiveAccessContex + void UpdateExclusiveAccessBubble( + const ExclusiveAccessBubbleParams& params, + ExclusiveAccessBubbleHideCallback first_hide_callback) override { ++ if (base::CommandLine::ForCurrentProcess()->HasSwitch("hide-fullscreen-exit-ui")) { ++ return; ++ } + // Trusted pinned mode does not allow to escape. So do not show the bubble. + bool is_trusted_pinned = + platform_util::IsBrowserLockedFullscreen(browser_view_->browser_.get()); --- a/chrome/browser/ui/views/fullscreen_control/fullscreen_control_host.cc +++ b/chrome/browser/ui/views/fullscreen_control/fullscreen_control_host.cc -@@ -74,6 +74,10 @@ bool IsExitUiEnabled() { +@@ -75,6 +75,10 @@ bool IsExitUiEnabled() { // menu and controls reveal when the cursor is moved to the top. return false; #else diff --git a/patches/contrib/ungoogled-chromium/add-flag-to-hide-tab-close-buttons.patch b/patches/contrib/ungoogled-chromium/add-flag-to-hide-tab-close-buttons.patch index 9130d375e..8c460dc4e 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-to-hide-tab-close-buttons.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-to-hide-tab-close-buttons.patch @@ -1,6 +1,6 @@ --- a/chrome/browser/ui/views/tabs/tab.cc +++ b/chrome/browser/ui/views/tabs/tab.cc -@@ -1177,7 +1177,11 @@ void Tab::UpdateIconVisibility() { +@@ -1178,7 +1178,11 @@ void Tab::UpdateIconVisibility() { // Close button is shown on active tabs regardless of the size. showing_close_button_ = true; #endif // BUILDFLAG(IS_CHROMEOS) @@ -12,7 +12,7 @@ showing_alert_indicator_ = has_alert_icon && alert_icon_width <= available_width; -@@ -1206,6 +1210,8 @@ void Tab::UpdateIconVisibility() { +@@ -1207,6 +1211,8 @@ void Tab::UpdateIconVisibility() { !controller_->IsLockedForOnTask() && #endif large_enough_for_close_button; diff --git a/patches/contrib/ungoogled-chromium/add-flag-to-reduce-system-info.patch b/patches/contrib/ungoogled-chromium/add-flag-to-reduce-system-info.patch index d1889c837..ed8914dcb 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-to-reduce-system-info.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-to-reduce-system-info.patch @@ -29,10 +29,10 @@ #if BUILDFLAG(IS_ANDROID) return ShouldReduceUserAgentMinorVersion(user_agent_reduction) && base::FeatureList::IsEnabled( -@@ -672,6 +676,8 @@ blink::UserAgentMetadata GetUserAgentMet +@@ -667,6 +671,8 @@ std::string GetPlatformForUAMetadata() { + } - blink::UserAgentMetadata GetUserAgentMetadata(const PrefService* pref_service, - bool only_low_entropy_ch) { + blink::UserAgentMetadata GetUserAgentMetadata(bool only_low_entropy_ch) { + if (base::FeatureList::IsEnabled(blink::features::kReducedSystemInfo)) + only_low_entropy_ch = true; blink::UserAgentMetadata metadata; @@ -40,7 +40,7 @@ // Low entropy client hints. --- a/third_party/blink/common/features.cc +++ b/third_party/blink/common/features.cc -@@ -20,6 +20,7 @@ +@@ -21,6 +21,7 @@ namespace blink::features { BASE_FEATURE(kDisableLinkDrag, "DisableLinkDrag", base::FEATURE_DISABLED_BY_DEFAULT); diff --git a/patches/contrib/ungoogled-chromium/add-flag-to-remove-client-hints.patch b/patches/contrib/ungoogled-chromium/add-flag-to-remove-client-hints.patch index 757f1bd0e..ad89f90e8 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-to-remove-client-hints.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-to-remove-client-hints.patch @@ -31,7 +31,7 @@ data, container_policy); --- a/third_party/blink/common/features.cc +++ b/third_party/blink/common/features.cc -@@ -21,6 +21,7 @@ namespace blink::features { +@@ -22,6 +22,7 @@ namespace blink::features { BASE_FEATURE(kDisableLinkDrag, "DisableLinkDrag", base::FEATURE_DISABLED_BY_DEFAULT); BASE_FEATURE(kReducedSystemInfo, "ReducedSystemInfo", base::FEATURE_DISABLED_BY_DEFAULT); diff --git a/patches/contrib/ungoogled-chromium/add-flag-to-show-avatar-button.patch b/patches/contrib/ungoogled-chromium/add-flag-to-show-avatar-button.patch index 30a07807c..ea7196bec 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-to-show-avatar-button.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-to-show-avatar-button.patch @@ -1,6 +1,6 @@ --- a/chrome/browser/ui/views/toolbar/toolbar_view.cc +++ b/chrome/browser/ui/views/toolbar/toolbar_view.cc -@@ -466,6 +466,17 @@ void ToolbarView::Init() { +@@ -475,6 +475,17 @@ void ToolbarView::Init() { browser_->profile()->IsGuestSession() || browser_->profile()->IsRegularProfile(); #endif diff --git a/patches/contrib/ungoogled-chromium/add-flag-to-spoof-webgl-renderer-info.patch b/patches/contrib/ungoogled-chromium/add-flag-to-spoof-webgl-renderer-info.patch index ea8deca94..d09ba2451 100644 --- a/patches/contrib/ungoogled-chromium/add-flag-to-spoof-webgl-renderer-info.patch +++ b/patches/contrib/ungoogled-chromium/add-flag-to-spoof-webgl-renderer-info.patch @@ -58,7 +58,7 @@ #endif // CHROME_BROWSER_UNGOOGLED_FLAG_ENTRIES_H_ --- a/third_party/blink/common/features.cc +++ b/third_party/blink/common/features.cc -@@ -22,6 +22,11 @@ namespace blink::features { +@@ -23,6 +23,11 @@ namespace blink::features { BASE_FEATURE(kDisableLinkDrag, "DisableLinkDrag", base::FEATURE_DISABLED_BY_DEFAULT); BASE_FEATURE(kReducedSystemInfo, "ReducedSystemInfo", base::FEATURE_DISABLED_BY_DEFAULT); BASE_FEATURE(kRemoveClientHints, "RemoveClientHints", base::FEATURE_DISABLED_BY_DEFAULT); @@ -86,7 +86,7 @@ // Feature declarations and associated constants (feature params, et cetera) --- a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc +++ b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc -@@ -4153,6 +4153,8 @@ ScriptValue WebGLRenderingContextBase::g +@@ -4107,6 +4107,8 @@ ScriptValue WebGLRenderingContextBase::g pname, IdentifiabilityBenignStringToken( String(ContextGL()->GetString(GL_RENDERER)))); } @@ -95,7 +95,7 @@ return WebGLAny(script_state, String(ContextGL()->GetString(GL_RENDERER))); } -@@ -4168,6 +4170,8 @@ ScriptValue WebGLRenderingContextBase::g +@@ -4122,6 +4124,8 @@ ScriptValue WebGLRenderingContextBase::g pname, IdentifiabilityBenignStringToken( String(ContextGL()->GetString(GL_VENDOR)))); } diff --git a/patches/contrib/ungoogled-chromium/add-flags-for-existing-switches.patch b/patches/contrib/ungoogled-chromium/add-flags-for-existing-switches.patch index de2d340fa..0fc53f19b 100644 --- a/patches/contrib/ungoogled-chromium/add-flags-for-existing-switches.patch +++ b/patches/contrib/ungoogled-chromium/add-flags-for-existing-switches.patch @@ -1,6 +1,6 @@ --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -5004,10 +5004,12 @@ const FeatureEntry::FeatureVariation kSe +@@ -5203,10 +5203,12 @@ const FeatureEntry::FeatureVariation kPr #include "chrome/browser/ungoogled_flag_choices.h" #include "chrome/browser/bromite_flag_choices.h" #include "chrome/browser/ungoogled_platform_flag_choices.h" diff --git a/patches/contrib/ungoogled-chromium/add-flags-for-referrer-customization.patch b/patches/contrib/ungoogled-chromium/add-flags-for-referrer-customization.patch index cd4aa4be4..9a792cfdc 100644 --- a/patches/contrib/ungoogled-chromium/add-flags-for-referrer-customization.patch +++ b/patches/contrib/ungoogled-chromium/add-flags-for-referrer-customization.patch @@ -44,7 +44,7 @@ if (NeedsHTTPOrigin(headers, method)) { --- a/content/renderer/render_frame_impl.cc +++ b/content/renderer/render_frame_impl.cc -@@ -136,6 +136,7 @@ +@@ -137,6 +137,7 @@ #include "services/network/public/cpp/content_decoding_interceptor.h" #include "services/network/public/cpp/features.h" #include "services/network/public/cpp/not_implemented_url_loader_factory.h" @@ -52,7 +52,7 @@ #include "services/network/public/cpp/weak_wrapper_shared_url_loader_factory.h" #include "services/network/public/mojom/fetch_api.mojom.h" #include "services/network/public/mojom/restricted_cookie_manager.mojom.h" -@@ -4522,10 +4523,13 @@ void RenderFrameImpl::FinalizeRequestInt +@@ -4450,10 +4451,13 @@ void RenderFrameImpl::FinalizeRequestInt request.SetHasUserGesture(frame_->HasTransientUserActivation()); @@ -100,7 +100,7 @@ --- a/services/network/public/cpp/BUILD.gn +++ b/services/network/public/cpp/BUILD.gn -@@ -122,6 +122,8 @@ component("cpp") { +@@ -124,6 +124,8 @@ component("cpp") { "private_network_access_check_result.cc", "private_network_access_check_result.h", "record_ontransfersizeupdate_utils.h", diff --git a/patches/contrib/ungoogled-chromium/add-suggestions-url-field.patch b/patches/contrib/ungoogled-chromium/add-suggestions-url-field.patch index 31e637fb8..62e31227a 100644 --- a/patches/contrib/ungoogled-chromium/add-suggestions-url-field.patch +++ b/patches/contrib/ungoogled-chromium/add-suggestions-url-field.patch @@ -428,7 +428,7 @@ --- a/components/search_engines/template_url_service.cc +++ b/components/search_engines/template_url_service.cc -@@ -1038,7 +1038,8 @@ void TemplateURLService::IncrementUsageC +@@ -1037,7 +1037,8 @@ void TemplateURLService::IncrementUsageC void TemplateURLService::ResetTemplateURL(TemplateURL* url, const std::u16string& title, const std::u16string& keyword, @@ -438,7 +438,7 @@ DCHECK(!IsCreatedByExtension(*url)); DCHECK(!keyword.empty()); DCHECK(!search_url.empty()); -@@ -1062,6 +1063,7 @@ void TemplateURLService::ResetTemplateUR +@@ -1061,6 +1062,7 @@ void TemplateURLService::ResetTemplateUR data.last_modified = clock_->Now(); data.is_active = TemplateURLData::ActiveStatus::kTrue; data.policy_origin = TemplateURLData::PolicyOrigin::kNoPolicy; diff --git a/patches/contrib/ungoogled-chromium/add-ungoogled-flag-headers.patch b/patches/contrib/ungoogled-chromium/add-ungoogled-flag-headers.patch index 000ab6b88..cef8b807c 100644 --- a/patches/contrib/ungoogled-chromium/add-ungoogled-flag-headers.patch +++ b/patches/contrib/ungoogled-chromium/add-ungoogled-flag-headers.patch @@ -1,6 +1,6 @@ --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -5000,7 +5000,13 @@ const FeatureEntry::FeatureVariation kSe +@@ -5199,7 +5199,13 @@ const FeatureEntry::FeatureVariation kPr // calculate and verify checksum. // // When adding a new choice, add it to the end of the list. diff --git a/patches/contrib/ungoogled-chromium/block-requests.patch b/patches/contrib/ungoogled-chromium/block-requests.patch index ac59585b6..c04760c5d 100644 --- a/patches/contrib/ungoogled-chromium/block-requests.patch +++ b/patches/contrib/ungoogled-chromium/block-requests.patch @@ -28,7 +28,7 @@ // via the feature params. --- a/chrome/browser/profile_resetter/profile_resetter.cc +++ b/chrome/browser/profile_resetter/profile_resetter.cc -@@ -99,17 +99,6 @@ ProfileResetter::ProfileResetter(Profile +@@ -101,17 +101,6 @@ ProfileResetter::ProfileResetter(Profile cookies_remover_(nullptr) { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); DCHECK(profile_); diff --git a/patches/contrib/ungoogled-chromium/block-trk-and-subdomains.patch b/patches/contrib/ungoogled-chromium/block-trk-and-subdomains.patch index cc79c3c31..ac1dde7a4 100644 --- a/patches/contrib/ungoogled-chromium/block-trk-and-subdomains.patch +++ b/patches/contrib/ungoogled-chromium/block-trk-and-subdomains.patch @@ -23,7 +23,7 @@ url.SchemeIs(dom_distiller::kDomDistillerScheme)) --- a/chrome/browser/ui/singleton_tabs.cc +++ b/chrome/browser/ui/singleton_tabs.cc -@@ -137,7 +137,8 @@ int GetIndexOfExistingTab(BrowserWindowI +@@ -140,7 +140,8 @@ int GetIndexOfExistingTab(BrowserWindowI // RewriteURLIfNecessary removes the "view-source:" scheme which could lead // to incorrect matching, so ensure that the target and the candidate are // either both view-source:, or neither is. @@ -35,7 +35,7 @@ --- a/components/omnibox/browser/autocomplete_input.cc +++ b/components/omnibox/browser/autocomplete_input.cc -@@ -578,7 +578,8 @@ void AutocompleteInput::ParseForEmphasiz +@@ -580,7 +580,8 @@ void AutocompleteInput::ParseForEmphasiz // For the view-source and blob schemes, we should emphasize the host of the // URL qualified by the view-source or blob prefix. if ((base::EqualsCaseInsensitiveASCII(scheme_str, kViewSourceScheme) || @@ -70,7 +70,7 @@ // other origins, so we should not treat them as web safe. Remove callers of --- a/net/BUILD.gn +++ b/net/BUILD.gn -@@ -1128,6 +1128,8 @@ component("net") { +@@ -1133,6 +1133,8 @@ component("net") { "url_request/static_http_user_agent_settings.cc", "url_request/static_http_user_agent_settings.h", "url_request/storage_access_status_cache.h", diff --git a/patches/contrib/ungoogled-chromium/disable-ai-search-shortcuts.patch b/patches/contrib/ungoogled-chromium/disable-ai-search-shortcuts.patch index b535b4ff5..5c41a4171 100644 --- a/patches/contrib/ungoogled-chromium/disable-ai-search-shortcuts.patch +++ b/patches/contrib/ungoogled-chromium/disable-ai-search-shortcuts.patch @@ -29,7 +29,7 @@ --- a/components/omnibox/browser/featured_search_provider.cc +++ b/components/omnibox/browser/featured_search_provider.cc -@@ -294,20 +294,10 @@ void FeaturedSearchProvider::AddFeatured +@@ -295,20 +295,10 @@ void FeaturedSearchProvider::AddFeatured for (TemplateURL* turl : turls) { if (turl->starter_pack_id() > 0 && turl->is_active() == TemplateURLData::ActiveStatus::kTrue) { diff --git a/patches/contrib/ungoogled-chromium/disable-crash-reporter.patch b/patches/contrib/ungoogled-chromium/disable-crash-reporter.patch index a91abafac..5e188fb6c 100644 --- a/patches/contrib/ungoogled-chromium/disable-crash-reporter.patch +++ b/patches/contrib/ungoogled-chromium/disable-crash-reporter.patch @@ -2,7 +2,7 @@ --- a/chrome/browser/chrome_content_browser_client.cc +++ b/chrome/browser/chrome_content_browser_client.cc -@@ -2790,24 +2790,6 @@ void ChromeContentBrowserClient::AppendE +@@ -2683,24 +2683,6 @@ void ChromeContentBrowserClient::AppendE command_line->AppendSwitchASCII(switches::kMetricsClientID, client_info->client_id); } diff --git a/patches/contrib/ungoogled-chromium/disable-download-quarantine.patch b/patches/contrib/ungoogled-chromium/disable-download-quarantine.patch index df1aa10a7..909cde919 100644 --- a/patches/contrib/ungoogled-chromium/disable-download-quarantine.patch +++ b/patches/contrib/ungoogled-chromium/disable-download-quarantine.patch @@ -142,7 +142,7 @@ } // namespace download --- a/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn -@@ -140,7 +140,6 @@ source_set("browser") { +@@ -139,7 +139,6 @@ source_set("browser") { "//components/persistent_cache", "//components/power_monitor", "//components/services/filesystem:lib", diff --git a/patches/contrib/ungoogled-chromium/disable-fonts-googleapis-references.patch b/patches/contrib/ungoogled-chromium/disable-fonts-googleapis-references.patch index 6b873d437..f1a7ebbaf 100644 --- a/patches/contrib/ungoogled-chromium/disable-fonts-googleapis-references.patch +++ b/patches/contrib/ungoogled-chromium/disable-fonts-googleapis-references.patch @@ -2,7 +2,7 @@ --- a/components/dom_distiller/content/browser/dom_distiller_viewer_source.cc +++ b/components/dom_distiller/content/browser/dom_distiller_viewer_source.cc -@@ -296,7 +296,7 @@ bool DomDistillerViewerSource::ShouldSer +@@ -308,7 +308,7 @@ bool DomDistillerViewerSource::ShouldSer std::string DomDistillerViewerSource::GetContentSecurityPolicy( network::mojom::CSPDirectiveName directive) { if (directive == network::mojom::CSPDirectiveName::StyleSrc) { @@ -24,7 +24,7 @@ .english :lang(zh) {display: none} --- a/components/dom_distiller/core/javascript/dom_distiller_viewer.js +++ b/components/dom_distiller/core/javascript/dom_distiller_viewer.js -@@ -402,7 +402,7 @@ function maybeSetWebFont() { +@@ -465,7 +465,7 @@ function maybeSetWebFont() { } const e = document.createElement('link'); diff --git a/patches/contrib/ungoogled-chromium/disable-google-host-detection.patch b/patches/contrib/ungoogled-chromium/disable-google-host-detection.patch index 63f02ed4a..086e0c345 100644 --- a/patches/contrib/ungoogled-chromium/disable-google-host-detection.patch +++ b/patches/contrib/ungoogled-chromium/disable-google-host-detection.patch @@ -25,7 +25,7 @@ #if BUILDFLAG(ENABLE_BOUND_SESSION_CREDENTIALS) #include "chrome/common/bound_session_request_throttled_handler.h" #include "net/cookies/cookie_util.h" -@@ -171,71 +167,6 @@ void GoogleURLLoaderThrottle::DetachFrom +@@ -172,71 +168,6 @@ void GoogleURLLoaderThrottle::DetachFrom void GoogleURLLoaderThrottle::WillStartRequest( network::ResourceRequest* request, bool* defer) { @@ -97,7 +97,7 @@ } void GoogleURLLoaderThrottle::WillRedirectRequest( -@@ -245,97 +176,12 @@ void GoogleURLLoaderThrottle::WillRedire +@@ -246,97 +177,12 @@ void GoogleURLLoaderThrottle::WillRedire std::vector* to_be_removed_headers, net::HttpRequestHeaders* modified_headers, net::HttpRequestHeaders* modified_cors_exempt_headers) { @@ -268,14 +268,14 @@ - base::CommandLine::ForCurrentProcess()->HasSwitch( - switches::kIgnoreGooglePortNumbers); - return url.is_valid() && url.SchemeIsHTTPOrHTTPS() && -- (url.port().empty() || g_ignore_port_numbers || +- (!url.has_port() || g_ignore_port_numbers || - (port_permission == ALLOW_NON_STANDARD_PORTS)); -} - -bool IsCanonicalHostGoogleHostname(std::string_view canonical_host, - SubdomainPermission subdomain_permission) { - const GURL& base_url(CommandLineGoogleBaseURL()); -- if (base_url.is_valid() && (canonical_host == base_url.host_piece())) { +- if (base_url.is_valid() && (canonical_host == base_url.host())) { - return true; - } - @@ -302,7 +302,7 @@ - return false; - } - -- std::string_view host(url.host_piece()); +- std::string_view host(url.host()); - StripTrailingDot(&host); - - static constexpr auto google_subdomains = @@ -339,7 +339,7 @@ } std::string GetGoogleCountryCode(const GURL& google_homepage_url) { -- std::string_view google_hostname = google_homepage_url.host_piece(); +- std::string_view google_hostname = google_homepage_url.host(); - // TODO(igorcov): This needs a fix for case when the host has a trailing dot, - // like "google.com./". https://crbug.com/720295. - const size_t last_dot = google_hostname.find_last_of('.'); @@ -407,7 +407,7 @@ SubdomainPermission subdomain_permission, PortPermission port_permission) { - return IsValidURL(url, port_permission) && -- IsCanonicalHostGoogleHostname(url.host_piece(), subdomain_permission); +- IsCanonicalHostGoogleHostname(url.host(), subdomain_permission); + return false; } @@ -428,7 +428,7 @@ - } - - // Make sure the path is a known home page path. -- std::string_view path(url.path_piece()); +- std::string_view path(url.path()); - return IsPathHomePageBase(path) || - base::StartsWith(path, "/ig", base::CompareCase::INSENSITIVE_ASCII); + return false; @@ -443,7 +443,7 @@ - } - - // Make sure the path is a known search path. -- std::string_view path(url.path_piece()); +- std::string_view path(url.path()); - bool is_home_page_base = IsPathHomePageBase(path); - bool is_search_url = - is_home_page_base || path == "/search" || path == "/imgres"; @@ -456,8 +456,8 @@ - - // Check for query parameter in URL parameter and hash fragment, depending on - // the path type. -- return HasGoogleSearchQueryParam(url.ref_piece()) || -- (!is_home_page_base && HasGoogleSearchQueryParam(url.query_piece())); +- return HasGoogleSearchQueryParam(url.ref()) || +- (!is_home_page_base && HasGoogleSearchQueryParam(url.query())); + return false; } @@ -465,7 +465,7 @@ SubdomainPermission subdomain_permission, PortPermission port_permission) { - return IsValidURL(url, port_permission) && -- IsCanonicalHostYoutubeHostname(url.host_piece(), subdomain_permission); +- IsCanonicalHostYoutubeHostname(url.host(), subdomain_permission); + return false; } @@ -495,7 +495,7 @@ - ".youtubekids.com", - ".ytimg.com", - }); -- const std::string host = url.host(); +- const std::string_view host(url.host()); - for (auto* i : kSuffixesToSetHeadersFor) { - if (base::EndsWith(host, i, base::CompareCase::INSENSITIVE_ASCII)) { - return true; @@ -533,7 +533,7 @@ - // want to match URLs like www.google.appspot.com. - net::registry_controlled_domains::EXCLUDE_PRIVATE_REGISTRIES); - -- const std::string_view hostname = url.host_piece(); +- const std::string_view hostname = url.host(); - if (registry_length == 0 || registry_length == std::string::npos || - registry_length >= hostname.length()) { - return std::nullopt; @@ -570,7 +570,7 @@ bool IsProbablyGoogleSearchUrl(const GURL& url) { --- a/components/search_engines/template_url.cc +++ b/components/search_engines/template_url.cc -@@ -610,10 +610,7 @@ std::u16string TemplateURLRef::SearchTer +@@ -611,10 +611,7 @@ std::u16string TemplateURLRef::SearchTer bool TemplateURLRef::HasGoogleBaseURLs( const SearchTermsData& search_terms_data) const { ParseIfNecessary(search_terms_data); @@ -584,7 +584,7 @@ bool TemplateURLRef::ExtractSearchTermsFromURL( --- a/components/variations/net/variations_http_headers.cc +++ b/components/variations/net/variations_http_headers.cc -@@ -31,10 +31,6 @@ +@@ -30,10 +30,6 @@ namespace variations { @@ -595,7 +595,7 @@ namespace { // The result of checking whether a request to a URL should have variations -@@ -116,16 +112,6 @@ URLValidationResult GetUrlValidationResu +@@ -115,16 +111,6 @@ URLValidationResult GetUrlValidationResu return URLValidationResult::kShouldAppend; } @@ -612,7 +612,7 @@ // Returns true if the request is sent from a Google web property, i.e. from a // first-party context. // -@@ -252,30 +238,7 @@ class VariationsHeaderHelper { +@@ -251,30 +237,7 @@ class VariationsHeaderHelper { VariationsHeaderHelper& operator=(const VariationsHeaderHelper&) = delete; bool AppendHeaderIfNeeded(const GURL& url, InIncognito incognito) { @@ -644,7 +644,7 @@ } private: -@@ -341,9 +304,6 @@ void RemoveVariationsHeaderIfNeeded( +@@ -340,9 +303,6 @@ void RemoveVariationsHeaderIfNeeded( const net::RedirectInfo& redirect_info, const network::mojom::URLResponseHead& response_head, std::vector* to_be_removed_headers) { @@ -654,7 +654,7 @@ } std::unique_ptr -@@ -379,29 +339,22 @@ CreateSimpleURLLoaderWithVariationsHeade +@@ -378,29 +338,22 @@ CreateSimpleURLLoaderWithVariationsHeade } bool HasVariationsHeader(const network::ResourceRequest& request) { @@ -689,7 +689,7 @@ } // namespace variations --- a/content/browser/preloading/prefetch/prefetch_container.cc +++ b/content/browser/preloading/prefetch/prefetch_container.cc -@@ -713,7 +713,7 @@ void PrefetchContainer::AddRedirectHop(c +@@ -727,7 +727,7 @@ void PrefetchContainer::AddRedirectHop(c // prefetch, including browsing topics and client hints. // TODO(crbug.com/441612842): Support User-Agent overrides. net::HttpRequestHeaders updated_headers; @@ -700,7 +700,7 @@ --- a/net/base/url_util.cc +++ b/net/base/url_util.cc -@@ -550,28 +550,6 @@ bool HasGoogleHost(const GURL& url) { +@@ -552,28 +552,6 @@ bool HasGoogleHost(const GURL& url) { } bool IsGoogleHost(std::string_view host) { diff --git a/patches/contrib/ungoogled-chromium/disable-mei-preload.patch b/patches/contrib/ungoogled-chromium/disable-mei-preload.patch index 174519dd9..87747c924 100644 --- a/patches/contrib/ungoogled-chromium/disable-mei-preload.patch +++ b/patches/contrib/ungoogled-chromium/disable-mei-preload.patch @@ -7,7 +7,7 @@ --- a/chrome/BUILD.gn +++ b/chrome/BUILD.gn -@@ -369,7 +369,6 @@ if (!is_android && !is_mac) { +@@ -368,7 +368,6 @@ if (!is_android && !is_mac) { } data_deps += [ @@ -15,7 +15,7 @@ "//components/webapps/isolated_web_apps/preload:component", "//third_party/widevine/cdm", ] -@@ -1185,7 +1184,6 @@ if (is_win) { +@@ -1180,7 +1179,6 @@ if (is_win) { ":optimization_guide_library", ":swiftshader_binaries", ":widevine_cdm_library", @@ -25,7 +25,7 @@ --- a/chrome/browser/resources/BUILD.gn +++ b/chrome/browser/resources/BUILD.gn -@@ -107,11 +107,6 @@ group("resources") { +@@ -108,11 +108,6 @@ group("resources") { ] } diff --git a/patches/contrib/ungoogled-chromium/disable-privacy-sandbox.patch b/patches/contrib/ungoogled-chromium/disable-privacy-sandbox.patch index bbd9c7a6d..751e37f22 100644 --- a/patches/contrib/ungoogled-chromium/disable-privacy-sandbox.patch +++ b/patches/contrib/ungoogled-chromium/disable-privacy-sandbox.patch @@ -1,6 +1,6 @@ --- a/components/browsing_data/content/browsing_data_model.cc +++ b/components/browsing_data/content/browsing_data_model.cc -@@ -991,12 +991,6 @@ void BrowsingDataModel::PopulateFromDisk +@@ -992,12 +992,6 @@ void BrowsingDataModel::PopulateFromDisk base::FeatureList::IsEnabled(network::features::kSharedStorageAPI); bool is_shared_dictionary_enabled = base::FeatureList::IsEnabled( network::features::kCompressionDictionaryTransport); @@ -13,7 +13,7 @@ base::RepeatingClosure completion = base::BindRepeating([](const base::OnceClosure&) {}, -@@ -1033,27 +1027,7 @@ void BrowsingDataModel::PopulateFromDisk +@@ -1034,27 +1028,7 @@ void BrowsingDataModel::PopulateFromDisk base::BindOnce(&OnSharedDictionaryUsageLoaded, this, completion)); } @@ -175,7 +175,7 @@ void AdAuctionServiceImpl::JoinInterestGroup( --- a/content/browser/storage_partition_impl.cc +++ b/content/browser/storage_partition_impl.cc -@@ -1505,38 +1505,7 @@ void StoragePartitionImpl::Initialize( +@@ -1506,38 +1506,7 @@ void StoragePartitionImpl::Initialize( bucket_manager_ = std::make_unique(this); @@ -214,7 +214,7 @@ GeneratedCodeCacheSettings settings = GetContentClient()->browser()->GetGeneratedCodeCacheSettings( -@@ -1565,8 +1534,6 @@ void StoragePartitionImpl::Initialize( +@@ -1566,8 +1535,6 @@ void StoragePartitionImpl::Initialize( font_access_manager_ = FontAccessManager::Create(); @@ -223,7 +223,7 @@ #if BUILDFLAG(ENABLE_LIBRARY_CDMS) if (is_in_memory()) { -@@ -1590,11 +1557,6 @@ void StoragePartitionImpl::Initialize( +@@ -1591,11 +1558,6 @@ void StoragePartitionImpl::Initialize( std::make_unique(this); } @@ -237,7 +237,7 @@ void StoragePartitionImpl::ResetSessionStorageConnections() { --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -4210,12 +4210,6 @@ void WebContentsImpl::Init(const WebCont +@@ -4267,12 +4267,6 @@ void WebContentsImpl::Init(const WebCont DateTimeChooser::CreateDateTimeChooser(this); #endif @@ -252,7 +252,7 @@ BtmWebContentsObserver::MaybeCreateForWebContents(this); --- a/content/services/auction_worklet/private_aggregation_bindings.cc +++ b/content/services/auction_worklet/private_aggregation_bindings.cc -@@ -406,53 +406,6 @@ PrivateAggregationBindings::~PrivateAggr +@@ -407,53 +407,6 @@ PrivateAggregationBindings::~PrivateAggr void PrivateAggregationBindings::AttachToContext( v8::Local context) { @@ -262,8 +262,8 @@ - return; - } - -- v8::Local v8_this = -- v8::External::New(v8_helper_->isolate(), this); +- v8::Local v8_this = v8::External::New( +- v8_helper_->isolate(), this, gin::kPrivateAggregationBindingsTag); - - v8::Local private_aggregation = - v8::Object::New(v8_helper_->isolate()); diff --git a/patches/contrib/ungoogled-chromium/disable-webrtc-log-uploader.patch b/patches/contrib/ungoogled-chromium/disable-webrtc-log-uploader.patch index 4183358c3..79f6bf4d6 100644 --- a/patches/contrib/ungoogled-chromium/disable-webrtc-log-uploader.patch +++ b/patches/contrib/ungoogled-chromium/disable-webrtc-log-uploader.patch @@ -116,7 +116,7 @@ --- a/chrome/browser/ui/browser_ui_prefs.cc +++ b/chrome/browser/ui/browser_ui_prefs.cc -@@ -143,7 +143,7 @@ void RegisterBrowserUserPrefs(user_prefs +@@ -146,7 +146,7 @@ void RegisterBrowserUserPrefs(user_prefs registry->RegisterStringPref(prefs::kWebRTCUDPPortRange, std::string()); registry->RegisterBooleanPref(prefs::kWebRtcEventLogCollectionAllowed, false); registry->RegisterListPref(prefs::kWebRtcLocalIpsAllowedUrls); diff --git a/patches/contrib/ungoogled-chromium/disable-webstore-urls.patch b/patches/contrib/ungoogled-chromium/disable-webstore-urls.patch index 9ee3e227c..e17bde3c6 100644 --- a/patches/contrib/ungoogled-chromium/disable-webstore-urls.patch +++ b/patches/contrib/ungoogled-chromium/disable-webstore-urls.patch @@ -2,7 +2,7 @@ --- a/chrome/browser/extensions/chrome_content_browser_client_extensions_part.cc +++ b/chrome/browser/extensions/chrome_content_browser_client_extensions_part.cc -@@ -681,12 +681,6 @@ std::vector ChromeContentBr +@@ -688,12 +688,6 @@ std::vector ChromeContentBr GetOriginsRequiringDedicatedProcess() { std::vector list; @@ -173,11 +173,11 @@ fetch->oauth2_attempt_count++; --- a/extensions/common/extension_urls.cc +++ b/extensions/common/extension_urls.cc -@@ -77,8 +77,6 @@ GURL AppendUtmSource(const GURL& url, st +@@ -82,8 +82,6 @@ GURL AppendUtmSource(const GURL& url, st GURL GetWebstoreExtensionsCategoryURL() { GURL base_url = GetNewWebstoreLaunchURL(); -- CHECK_EQ(base_url.path_piece(), "/") +- CHECK_EQ(base_url.path(), "/") - << "GURL::Resolve() won't work with a URL with a path."; return base_url.Resolve("category/extensions"); } diff --git a/patches/contrib/ungoogled-chromium/enable-menu-on-reload-button.patch b/patches/contrib/ungoogled-chromium/enable-menu-on-reload-button.patch index 6c82918fc..8d0812549 100644 --- a/patches/contrib/ungoogled-chromium/enable-menu-on-reload-button.patch +++ b/patches/contrib/ungoogled-chromium/enable-menu-on-reload-button.patch @@ -2,12 +2,12 @@ --- a/chrome/browser/ui/views/toolbar/reload_button.cc +++ b/chrome/browser/ui/views/toolbar/reload_button.cc -@@ -114,7 +114,7 @@ bool ReloadButton::GetMenuEnabled() cons +@@ -132,7 +132,7 @@ bool ReloadButton::GetMenuEnabled() cons } - void ReloadButton::SetMenuEnabled(bool enable) { -- menu_enabled_ = enable; -+ menu_enabled_ = true; + void ReloadButton::SetMenuEnabled(bool is_menu_enabled) { +- is_menu_enabled_ = is_menu_enabled; ++ is_menu_enabled_ = true; UpdateAccessibleHasPopup(); UpdateCachedTooltipText(); } diff --git a/patches/contrib/ungoogled-chromium/enable-page-saving-on-more-pages.patch b/patches/contrib/ungoogled-chromium/enable-page-saving-on-more-pages.patch index b98593222..bd96c9fd0 100644 --- a/patches/contrib/ungoogled-chromium/enable-page-saving-on-more-pages.patch +++ b/patches/contrib/ungoogled-chromium/enable-page-saving-on-more-pages.patch @@ -2,7 +2,7 @@ --- a/chrome/browser/ui/browser_commands.cc +++ b/chrome/browser/ui/browser_commands.cc -@@ -628,11 +628,6 @@ int GetContentRestrictions(const Browser +@@ -702,11 +702,6 @@ int GetContentRestrictions(const Browser CoreTabHelper* core_tab_helper = CoreTabHelper::FromWebContents(current_tab); content_restrictions = core_tab_helper->content_restrictions(); @@ -14,7 +14,7 @@ } return content_restrictions; } -@@ -2007,8 +2002,7 @@ bool CanSavePage(const Browser* browser) +@@ -2050,8 +2045,7 @@ bool CanSavePage(const Browser* browser) policy::DownloadRestriction::ALL_FILES) { return false; } diff --git a/patches/contrib/ungoogled-chromium/enable-paste-and-go-new-tab-button.patch b/patches/contrib/ungoogled-chromium/enable-paste-and-go-new-tab-button.patch index a2220f9b7..95bad5e69 100644 --- a/patches/contrib/ungoogled-chromium/enable-paste-and-go-new-tab-button.patch +++ b/patches/contrib/ungoogled-chromium/enable-paste-and-go-new-tab-button.patch @@ -1,34 +1,44 @@ --- a/chrome/browser/ui/views/frame/tab_strip_region_view.cc +++ b/chrome/browser/ui/views/frame/tab_strip_region_view.cc -@@ -302,12 +302,10 @@ TabStripRegionView::TabStripRegionView(s +@@ -301,6 +301,9 @@ TabStripRegionView::TabStripRegionView(s + l10n_util::GetStringUTF16(IDS_TOOLTIP_NEW_TAB)); new_tab_button_->GetViewAccessibility().SetName( l10n_util::GetStringUTF16(IDS_ACCNAME_NEWTAB)); - --#if BUILDFLAG(IS_LINUX) - // The New Tab Button can be middle-clicked on Linux. - new_tab_button_->SetTriggerableEventFlags( - new_tab_button_->GetTriggerableEventFlags() | - ui::EF_MIDDLE_MOUSE_BUTTON); --#endif ++ new_tab_button_->SetTriggerableEventFlags( ++ new_tab_button_->GetTriggerableEventFlags() | ++ ui::EF_MIDDLE_MOUSE_BUTTON); } reserved_grab_handle_space_ = --- a/chrome/browser/ui/views/tabs/tab_strip.cc +++ b/chrome/browser/ui/views/tabs/tab_strip.cc -@@ -2274,8 +2274,6 @@ void TabStrip::NewTabButtonPressed(const - - const ui::MouseEvent& mouse = static_cast(event); - if (mouse.IsOnlyMiddleMouseButton()) { -- if (ui::Clipboard::IsSupportedClipboardBuffer( -- ui::ClipboardBuffer::kSelection)) { - ui::Clipboard* clipboard = ui::Clipboard::GetForCurrentThread(); - CHECK(clipboard) - << "Clipboard instance is not available, cannot proceed with " -@@ -2286,7 +2284,6 @@ void TabStrip::NewTabButtonPressed(const - if (!clipboard_text.empty()) { - controller_->CreateNewTabWithLocation(clipboard_text); - } -- } - return; +@@ -83,6 +83,8 @@ + #include "components/tab_groups/tab_group_id.h" + #include "components/tab_groups/tab_group_visual_data.h" + #include "components/tabs/public/split_tab_id.h" ++#include "ui/base/clipboard/clipboard.h" ++#include "ui/base/clipboard/clipboard_constants.h" + #include "ui/base/dragdrop/drag_drop_types.h" + #include "ui/base/dragdrop/mojom/drag_drop_types.mojom.h" + #include "ui/base/interaction/element_identifier.h" +@@ -2255,6 +2257,20 @@ void TabStrip::NewTabButtonPressed(const + if (hover_card_controller_) { + hover_card_controller_->PreventImmediateReshow(); } ++ const ui::MouseEvent& mouse = static_cast(event); ++ if (mouse.IsOnlyMiddleMouseButton()) { ++ ui::Clipboard* clipboard = ui::Clipboard::GetForCurrentThread(); ++ CHECK(clipboard) ++ << "Clipboard instance is not available, cannot proceed with " ++ "middle mouse button action."; ++ std::u16string clipboard_text; ++ clipboard->ReadText(ui::ClipboardBuffer::kSelection, ++ /* data_dst = */ nullptr, &clipboard_text); ++ if (!clipboard_text.empty()) { ++ controller_->CreateNewTabWithLocation(clipboard_text); ++ } ++ return; ++ } } + controller_->CreateNewTab(NewTabTypes::NEW_TAB_BUTTON); + } diff --git a/patches/contrib/ungoogled-chromium/extensions-manifestv2.patch b/patches/contrib/ungoogled-chromium/extensions-manifestv2.patch index 74ccf720a..bccf4f257 100644 --- a/patches/contrib/ungoogled-chromium/extensions-manifestv2.patch +++ b/patches/contrib/ungoogled-chromium/extensions-manifestv2.patch @@ -22,7 +22,7 @@ // `CanUploadAsAccountExtension` should already check for the feature flag --- a/chrome/browser/extensions/extension_management.cc +++ b/chrome/browser/extensions/extension_management.cc -@@ -362,31 +362,7 @@ bool ExtensionManagement::IsAllowedManif +@@ -367,31 +367,7 @@ bool ExtensionManagement::IsAllowedManif int manifest_version, const std::string& extension_id, Manifest::Type manifest_type) { @@ -54,7 +54,7 @@ } bool ExtensionManagement::IsAllowedManifestVersion(const Extension* extension) { -@@ -407,26 +383,8 @@ bool ExtensionManagement::IsExemptFromMV +@@ -412,26 +388,8 @@ bool ExtensionManagement::IsExemptFromMV return false; } diff --git a/patches/contrib/ungoogled-chromium/fix-building-with-prunned-binaries.patch b/patches/contrib/ungoogled-chromium/fix-building-with-prunned-binaries.patch index e8470f835..a57b00ba2 100644 --- a/patches/contrib/ungoogled-chromium/fix-building-with-prunned-binaries.patch +++ b/patches/contrib/ungoogled-chromium/fix-building-with-prunned-binaries.patch @@ -3,7 +3,7 @@ --- a/chrome/BUILD.gn +++ b/chrome/BUILD.gn -@@ -370,7 +370,6 @@ if (!is_android && !is_mac) { +@@ -369,7 +369,6 @@ if (!is_android && !is_mac) { data_deps += [ "//chrome/browser/resources/media/mei_preload:component", @@ -11,7 +11,7 @@ "//components/webapps/isolated_web_apps/preload:component", "//third_party/widevine/cdm", ] -@@ -940,8 +939,6 @@ if (is_win) { +@@ -935,8 +934,6 @@ if (is_win) { bundle_data("chrome_framework_resources") { sources = [ @@ -20,7 +20,7 @@ # This image is used to badge the lock icon in the # authentication dialogs, such as those used for installation # from disk image and Keystone promotion (if so enabled). It -@@ -1189,7 +1186,6 @@ if (is_win) { +@@ -1184,7 +1181,6 @@ if (is_win) { ":swiftshader_binaries", ":widevine_cdm_library", "//chrome/browser/resources/media/mei_preload:component_bundle", @@ -30,7 +30,7 @@ --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -760,10 +760,6 @@ static_library("browser") { +@@ -728,10 +728,6 @@ static_library("browser") { "navigation_predictor/navigation_predictor_metrics_document_data.h", "navigation_predictor/navigation_predictor_preconnect_client.cc", "navigation_predictor/navigation_predictor_preconnect_client.h", @@ -41,7 +41,7 @@ "navigation_predictor/search_engine_preconnector_keyed_service_factory.cc", "navigation_predictor/search_engine_preconnector_keyed_service_factory.h", "net/cert_verifier_service_time_updater.cc", -@@ -3698,10 +3694,6 @@ static_library("browser") { +@@ -3694,10 +3690,6 @@ static_library("browser") { } else { #!is_android sources += [ @@ -52,7 +52,7 @@ "accessibility/caption_bubble_context_browser.h", "accessibility/embedded_a11y_extension_loader.cc", "accessibility/embedded_a11y_extension_loader.h", -@@ -4330,8 +4322,6 @@ static_library("browser") { +@@ -4341,8 +4333,6 @@ static_library("browser") { "//chrome/app:command_ids", "//chrome/app/theme:chrome_unscaled_resources_grit", "//chrome/app/vector_icons", @@ -61,7 +61,7 @@ "//chrome/browser/actor", "//chrome/browser/actor:impl", "//chrome/browser/actor/ui", -@@ -4364,10 +4354,6 @@ static_library("browser") { +@@ -4379,10 +4369,6 @@ static_library("browser") { "//chrome/browser/performance_manager/user_tuning", "//chrome/browser/policy:path_parser", "//chrome/browser/resource_coordinator", @@ -72,7 +72,7 @@ "//chrome/browser/sharing_hub", "//chrome/browser/smart_card", "//chrome/browser/themes", -@@ -4440,7 +4426,6 @@ static_library("browser") { +@@ -4457,7 +4443,6 @@ static_library("browser") { "//chrome/browser/ui/webui/access_code_cast", "//chrome/browser/ui/webui/actor_internals", "//chrome/browser/ui/webui/app_service_internals", @@ -80,7 +80,7 @@ "//chrome/browser/ui/webui/color_pipeline_internals", "//chrome/browser/ui/webui/commerce", "//chrome/browser/ui/webui/commerce:impl", -@@ -4530,9 +4515,6 @@ static_library("browser") { +@@ -4548,9 +4533,6 @@ static_library("browser") { "//components/webauthn/core/browser", "//components/webauthn/core/browser:passkey_model", "//services/device/public/cpp/hid", @@ -90,7 +90,7 @@ "//third_party/crashpad/crashpad/client:common", "//third_party/zxcvbn-cpp", "//ui/views", -@@ -4725,8 +4707,6 @@ static_library("browser") { +@@ -4742,8 +4724,6 @@ static_library("browser") { sources += [ "accessibility/soda_installer_impl.cc", "accessibility/soda_installer_impl.h", @@ -99,7 +99,7 @@ "device_identity/device_oauth2_token_store_desktop.cc", "device_identity/device_oauth2_token_store_desktop.h", "download/bubble/download_bubble_accessible_alerts_map.cc", -@@ -4780,8 +4760,6 @@ static_library("browser") { +@@ -4797,8 +4777,6 @@ static_library("browser") { "profiles/profile_activity_metrics_recorder.h", "profiles/profile_list_desktop.cc", "profiles/profile_list_desktop.h", @@ -108,7 +108,7 @@ "signin/force_signin_verifier.cc", "signin/force_signin_verifier.h", "signin/signin_manager.cc", -@@ -5595,7 +5573,6 @@ static_library("browser") { +@@ -5596,7 +5574,6 @@ static_library("browser") { "//chrome/browser/policy:system_features_disable_list", "//chrome/browser/push_notification", "//chrome/browser/resources:app_icon_resources", @@ -116,7 +116,7 @@ "//chrome/browser/sharesheet", "//chrome/browser/support_tool/ash", "//chrome/browser/ui/ash/accelerator", -@@ -5860,7 +5837,6 @@ static_library("browser") { +@@ -5861,7 +5838,6 @@ static_library("browser") { "//remoting/host/chromeos:browser_interop", "//remoting/host/chromeos:features", "//services/device/public/cpp/geolocation", @@ -140,7 +140,7 @@ } --- a/chrome/browser/browser_process_impl.cc +++ b/chrome/browser/browser_process_impl.cc -@@ -243,12 +243,10 @@ +@@ -247,12 +247,10 @@ void OnLocalStatePrefsLoaded(); #if BUILDFLAG(IS_CHROMEOS) #include "chrome/browser/chromeos/extensions/telemetry/chromeos_telemetry_extensions_browser_api_provider.h" #include "chrome/browser/hid/hid_pinned_notification.h" @@ -153,7 +153,7 @@ #include "chrome/browser/usb/usb_status_icon.h" #include "components/enterprise/browser/controller/chrome_browser_cloud_management_controller.h" #endif -@@ -1459,9 +1457,6 @@ void BrowserProcessImpl::PreMainMessageL +@@ -1476,9 +1474,6 @@ void BrowserProcessImpl::PreMainMessageL soda_installer_impl_ = std::make_unique(); #endif // BUILDFLAG(IS_CHROMEOS) @@ -165,7 +165,7 @@ bool result = base::PathService::Get(chrome::DIR_USER_DATA, &user_data_dir); --- a/chrome/browser/browser_process_impl.h +++ b/chrome/browser/browser_process_impl.h -@@ -90,9 +90,6 @@ namespace speech { +@@ -89,9 +89,6 @@ namespace speech { class SodaInstaller; } // namespace speech @@ -175,7 +175,7 @@ // Real implementation of BrowserProcess that creates and returns the services. class BrowserProcessImpl : public BrowserProcess, -@@ -437,9 +434,6 @@ class BrowserProcessImpl : public Browse +@@ -436,9 +433,6 @@ class BrowserProcessImpl : public Browse // to ensure that SodaInstallerImpl gets destructed first. std::unique_ptr soda_installer_impl_; @@ -196,7 +196,7 @@ #include "chrome/browser/ui/web_applications/sub_apps_service_impl.h" #endif -@@ -364,27 +362,6 @@ void BindMediaFoundationPreferences( +@@ -365,27 +363,6 @@ void BindMediaFoundationPreferences( } #endif // BUILDFLAG(IS_WIN) @@ -224,7 +224,7 @@ void BindModelBroker( content::RenderFrameHost* frame_host, -@@ -554,10 +531,6 @@ void PopulateChromeFrameBinders( +@@ -555,10 +532,6 @@ void PopulateChromeFrameBinders( &web_app::SubAppsServiceImpl::CreateIfAllowed); } @@ -237,7 +237,7 @@ #if BUILDFLAG(IS_WIN) --- a/chrome/browser/chrome_browser_interface_binders_webui_parts_desktop.cc +++ b/chrome/browser/chrome_browser_interface_binders_webui_parts_desktop.cc -@@ -487,8 +487,6 @@ void PopulateChromeWebUIFrameBindersPart +@@ -484,8 +484,6 @@ void PopulateChromeWebUIFrameBindersPart ::mojom::app_service_internals::AppServiceInternalsPageHandler, AppServiceInternalsUI>(map); @@ -257,7 +257,7 @@ #endif // BUILDFLAG(IS_ANDROID) #if !BUILDFLAG(IS_ANDROID) -@@ -221,9 +219,6 @@ void RegisterComponentsForUpdate() { +@@ -223,9 +221,6 @@ void RegisterComponentsForUpdate() { RegisterAutofillStatesComponent(cus, g_browser_process->local_state()); @@ -370,6 +370,24 @@ } void NavigationPredictor::SetModelScoreCallbackForTesting( +--- a/chrome/browser/password_manager/password_change_delegate_impl.cc ++++ b/chrome/browser/password_manager/password_change_delegate_impl.cc +@@ -393,15 +393,6 @@ void PasswordChangeDelegateImpl::StartPa + ProceedToChangePassword(); + } + +- // This creates FieldClassificationModelHandler and should trigger download of +- // a local ML model for field classification. +- // TODO(452883239): Clean this up when model is downloaded on start-up for +- // everybody. +- if (base::FeatureList::IsEnabled( +- password_manager::features::kDownloadModelForPasswordChange)) { +- PasswordFieldClassificationModelHandlerFactory::GetForBrowserContext( +- originator_->GetBrowserContext()); +- } + } + + void PasswordChangeDelegateImpl::OnLoginStateCheckResult(bool is_logged_in) { --- a/chrome/browser/pdf/pdf_extension_util.cc +++ b/chrome/browser/pdf/pdf_extension_util.cc @@ -121,7 +121,6 @@ base::Value::Dict GetPdfViewerStrings() @@ -382,14 +400,12 @@ {"tooltipAttachments", IDS_PDF_TOOLTIP_ATTACHMENTS}, --- a/chrome/browser/permissions/BUILD.gn +++ b/chrome/browser/permissions/BUILD.gn -@@ -42,12 +42,8 @@ source_set("permissions") { +@@ -42,10 +42,6 @@ source_set("permissions") { "prediction_service/language_detection_observer.h", "prediction_service/passage_embedder_delegate.cc", "prediction_service/passage_embedder_delegate.h", - "prediction_service/permissions_ai_ui_selector.cc", - "prediction_service/permissions_ai_ui_selector.h", - "prediction_service/permissions_aiv1_handler.cc", - "prediction_service/permissions_aiv1_handler.h", - "prediction_service/prediction_model_handler_provider.cc", - "prediction_service/prediction_model_handler_provider.h", "prediction_service/prediction_service_factory.cc", @@ -397,7 +413,15 @@ "prediction_service/prediction_service_request.cc", --- a/chrome/browser/permissions/chrome_permissions_client.cc +++ b/chrome/browser/permissions/chrome_permissions_client.cc -@@ -472,8 +472,6 @@ ChromePermissionsClient::CreatePermissio +@@ -28,7 +28,6 @@ + #include "chrome/browser/permissions/permission_actions_history_factory.h" + #include "chrome/browser/permissions/permission_decision_auto_blocker_factory.h" + #include "chrome/browser/permissions/permission_revocation_request.h" +-#include "chrome/browser/permissions/prediction_service/permissions_ai_ui_selector.h" + #include "chrome/browser/permissions/pref_based_quiet_permission_ui_selector.h" + #include "chrome/browser/permissions/quiet_notification_permission_ui_config.h" + #include "chrome/browser/permissions/system/system_permission_settings.h" +@@ -481,8 +480,6 @@ ChromePermissionsClient::CreatePermissio #endif selectors.emplace_back(std::make_unique( Profile::FromBrowserContext(browser_context))); @@ -406,6 +430,15 @@ return selectors; } +@@ -503,8 +500,6 @@ void ChromePermissionsClient::OnPromptRe + + Profile* profile = + Profile::FromBrowserContext(web_contents->GetBrowserContext()); +- PermissionActionsHistoryFactory::GetForProfile(profile)->RecordAction( +- action, request_type, prompt_disposition); + + if (request_type == permissions::RequestType::kNotifications) { + if (action == permissions::PermissionAction::GRANTED && --- a/chrome/browser/permissions/prediction_service/passage_embedder_delegate.cc +++ b/chrome/browser/permissions/prediction_service/passage_embedder_delegate.cc @@ -17,18 +17,6 @@ PassageEmbedderDelegate::PassageEmbedder @@ -429,7 +462,7 @@ } --- a/chrome/browser/permissions/prediction_service/permissions_ai_ui_selector.cc +++ b/chrome/browser/permissions/prediction_service/permissions_ai_ui_selector.cc -@@ -857,7 +857,7 @@ void PermissionsAiUiSelector::ExecuteOnD +@@ -817,7 +817,7 @@ void PermissionsAiUiSelector::ExecuteOnD ModelExecutionData model_data) { VLOG(1) << "[PermissionsAI] ExecuteOnDeviceAivXModel"; PredictionModelHandlerProvider* prediction_model_handler_provider = @@ -440,7 +473,7 @@ model_data.request_metadata.request_type; --- a/chrome/browser/prefs/BUILD.gn +++ b/chrome/browser/prefs/BUILD.gn -@@ -304,7 +304,6 @@ source_set("impl") { +@@ -305,7 +305,6 @@ source_set("impl") { "//chrome/browser/actor/ui", "//chrome/browser/contextual_cueing", "//chrome/browser/promos:utils", @@ -450,7 +483,7 @@ "//chrome/browser/search_engines", --- a/chrome/browser/prefs/browser_prefs.cc +++ b/chrome/browser/prefs/browser_prefs.cc -@@ -1971,9 +1971,6 @@ void RegisterLocalState(PrefRegistrySimp +@@ -1787,9 +1787,6 @@ void RegisterLocalState(PrefRegistrySimp DeviceOAuth2TokenStoreDesktop::RegisterPrefs(registry); #endif @@ -462,7 +495,7 @@ PlatformAuthPolicyObserver::RegisterPrefs(registry); --- a/chrome/browser/profiles/BUILD.gn +++ b/chrome/browser/profiles/BUILD.gn -@@ -336,7 +336,6 @@ source_set("profiles_extra_parts_impl") +@@ -344,7 +344,6 @@ source_set("profiles_extra_parts_impl") ] } else { deps += [ @@ -470,7 +503,7 @@ "//chrome/browser/apps/app_service", "//chrome/browser/autofill", "//chrome/browser/badging", -@@ -345,7 +344,6 @@ source_set("profiles_extra_parts_impl") +@@ -354,7 +353,6 @@ source_set("profiles_extra_parts_impl") "//chrome/browser/feedback", "//chrome/browser/hid", "//chrome/browser/media/router/discovery/access_code:access_code_sink_service", @@ -480,7 +513,7 @@ "//chrome/browser/themes", --- a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc +++ b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc -@@ -115,7 +115,6 @@ +@@ -116,7 +116,6 @@ #include "chrome/browser/media_galleries/media_galleries_preferences_factory.h" #include "chrome/browser/metrics/variations/google_groups_manager_factory.h" #include "chrome/browser/navigation_predictor/navigation_predictor_keyed_service_factory.h" @@ -488,7 +521,7 @@ #include "chrome/browser/navigation_predictor/search_engine_preconnector.h" #include "chrome/browser/navigation_predictor/search_engine_preconnector_keyed_service_factory.h" #include "chrome/browser/net/dns_probe_service_factory.h" -@@ -349,7 +348,6 @@ +@@ -350,7 +349,6 @@ #include "chrome/browser/prefs/persistent_renderer_prefs_manager_factory.h" #include "chrome/browser/privacy_sandbox/privacy_sandbox_survey_desktop_controller_factory.h" #include "chrome/browser/profile_resetter/reset_report_uploader_factory.h" @@ -496,7 +529,7 @@ #include "chrome/browser/search/background/ntp_background_service_factory.h" #include "chrome/browser/search/background/ntp_custom_background_service_factory.h" #include "chrome/browser/search/instant_service_factory.h" -@@ -1072,7 +1070,6 @@ void ChromeBrowserMainExtraPartsProfiles +@@ -1082,7 +1080,6 @@ void ChromeBrowserMainExtraPartsProfiles #if BUILDFLAG(CHROME_ROOT_STORE_CERT_MANAGEMENT_UI) net::ServerCertificateDatabaseServiceFactory::GetInstance(); #endif @@ -504,7 +537,7 @@ #if BUILDFLAG(ENABLE_DICE_SUPPORT) HistorySyncOptinServiceFactory::GetInstance(); ProfileManagementDisclaimerServiceFactory::GetInstance(); -@@ -1122,9 +1119,6 @@ void ChromeBrowserMainExtraPartsProfiles +@@ -1132,9 +1129,6 @@ void ChromeBrowserMainExtraPartsProfiles OneTimePermissionsTrackerFactory::GetInstance(); #endif OpenerHeuristicServiceFactory::GetInstance(); @@ -514,15 +547,15 @@ OptimizationGuideKeyedServiceFactory::GetInstance(); OriginKeyedPermissionActionServiceFactory::GetInstance(); OriginTrialsFactory::GetInstance(); -@@ -1204,7 +1198,6 @@ void ChromeBrowserMainExtraPartsProfiles +@@ -1216,7 +1210,6 @@ void ChromeBrowserMainExtraPartsProfiles + #else policy::UserPolicySigninServiceFactory::GetInstance(); #endif - PolicyBlocklistFactory::GetInstance(); - PredictionModelHandlerProviderFactory::GetInstance(); PredictionServiceFactory::GetInstance(); predictors::AutocompleteActionPredictorFactory::GetInstance(); predictors::LoadingPredictorFactory::GetInstance(); -@@ -1287,10 +1280,6 @@ void ChromeBrowserMainExtraPartsProfiles +@@ -1298,10 +1291,6 @@ void ChromeBrowserMainExtraPartsProfiles SafetyHubMenuNotificationServiceFactory::GetInstance(); #if !BUILDFLAG(IS_ANDROID) SafetyHubHatsServiceFactory::GetInstance(); @@ -533,7 +566,7 @@ #endif #if BUILDFLAG(IS_CHROMEOS) if (ash::features::IsScannerEnabled()) { -@@ -1414,7 +1403,6 @@ void ChromeBrowserMainExtraPartsProfiles +@@ -1425,7 +1414,6 @@ void ChromeBrowserMainExtraPartsProfiles TrackingProtectionSettingsFactory::GetInstance(); translate::TranslateRankerFactory::GetInstance(); #if !BUILDFLAG(IS_ANDROID) @@ -543,7 +576,7 @@ #if !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_ANDROID) --- a/chrome/browser/profiles/off_the_record_profile_impl.cc +++ b/chrome/browser/profiles/off_the_record_profile_impl.cc -@@ -224,11 +224,6 @@ void OffTheRecordProfileImpl::Init() { +@@ -227,11 +227,6 @@ void OffTheRecordProfileImpl::Init() { // AccessibilityLabelsService has a default prefs behavior in incognito. AccessibilityLabelsService::InitOffTheRecordPrefs(this); @@ -557,7 +590,7 @@ // System Profile. --- a/chrome/browser/profiles/profile_impl.cc +++ b/chrome/browser/profiles/profile_impl.cc -@@ -845,11 +845,6 @@ void ProfileImpl::DoFinalInit(CreateMode +@@ -842,11 +842,6 @@ void ProfileImpl::DoFinalInit(CreateMode // The password settings service needs to start listening to settings // changes from Google Mobile Services, as early as possible. PasswordManagerSettingsServiceFactory::GetForProfile(this); @@ -579,7 +612,7 @@ #include "chrome/browser/prefs/incognito_mode_prefs.h" #include "chrome/browser/profiles/delete_profile_helper.h" #include "chrome/browser/profiles/keep_alive/profile_keep_alive_types.h" -@@ -1487,9 +1486,6 @@ void ProfileManager::DoFinalInitForServi +@@ -1507,9 +1506,6 @@ void ProfileManager::DoFinalInitForServi // Ensure NavigationPredictorKeyedService is started. NavigationPredictorKeyedServiceFactory::GetForProfile(profile); @@ -591,7 +624,7 @@ #if BUILDFLAG(IS_ANDROID) --- a/chrome/browser/resources/BUILD.gn +++ b/chrome/browser/resources/BUILD.gn -@@ -110,7 +110,6 @@ group("resources") { +@@ -111,7 +111,6 @@ group("resources") { if (is_mac) { public_deps += [ "//chrome/browser/resources/media/mei_preload:component", @@ -614,7 +647,7 @@ ${this.showErrorDialog ? html` --- a/chrome/browser/ui/BUILD.gn +++ b/chrome/browser/ui/BUILD.gn -@@ -1469,8 +1469,6 @@ static_library("ui") { +@@ -1491,8 +1491,6 @@ static_library("ui") { "//chrome/browser/regional_capabilities", "//chrome/browser/safe_browsing", "//chrome/browser/safe_browsing:advanced_protection", @@ -623,7 +656,7 @@ "//chrome/browser/smart_card", "//chrome/browser/tab_group_sync:utils", "//chrome/browser/themes", -@@ -2227,7 +2225,6 @@ static_library("ui") { +@@ -2253,7 +2251,6 @@ static_library("ui") { "//chrome/browser/policy:onc", "//chrome/browser/policy:system_features_disable_list", "//chrome/browser/push_notification", @@ -631,8 +664,8 @@ "//chrome/browser/ui/ash/accessibility", "//chrome/browser/ui/ash/app_access", "//chrome/browser/ui/ash/arc", -@@ -4685,7 +4682,6 @@ static_library("ui") { - # c/b/ui/passwords/passwords_model_delegate.h, passwords_client_ui_delegate.h. +@@ -4727,7 +4724,6 @@ static_library("ui") { + "//chrome/browser/ui/views/zoom", "//chrome/browser/ui/webauthn:impl", "//chrome/browser/ui/webui/app_service_internals", - "//chrome/browser/ui/webui/autofill_ml_internals", @@ -691,9 +724,19 @@ // Holds subscriptions for TabInterface callbacks. std::vector tab_subscriptions_; +--- a/chrome/browser/ui/safety_hub/BUILD.gn ++++ b/chrome/browser/ui/safety_hub/BUILD.gn +@@ -37,7 +37,6 @@ source_set("safety_hub") { + "//components/content_settings/core/browser", + "//components/content_settings/core/common", + "//components/keyed_service/core", +- "//components/safe_browsing/content/browser/notification_content_detection", + "//components/safe_browsing/core/browser:safe_browsing_metrics_collector", + "//components/safe_browsing/core/browser/db:database_manager", + "//components/safety_check:features", --- a/chrome/browser/ui/views/user_education/browser_user_education_service.cc +++ b/chrome/browser/ui/views/user_education/browser_user_education_service.cc -@@ -786,39 +786,6 @@ void MaybeRegisterChromeFeaturePromos( +@@ -818,39 +818,6 @@ void MaybeRegisterChromeFeaturePromos( .SetBubbleIcon(kLightbulbOutlineIcon) .SetBubbleTitleText(IDS_PASSWORD_MANAGER_IPH_CREATE_SHORTCUT_TITLE))); @@ -735,7 +778,7 @@ registry.RegisterFeature(std::move( --- a/chrome/browser/ui/webui/BUILD.gn +++ b/chrome/browser/ui/webui/BUILD.gn -@@ -60,7 +60,6 @@ source_set("configs") { +@@ -68,7 +68,6 @@ source_set("configs") { "//chrome/browser/ui/webui/access_code_cast", "//chrome/browser/ui/webui/actor_internals", "//chrome/browser/ui/webui/app_service_internals", @@ -745,7 +788,7 @@ "//chrome/browser/ui/webui/new_tab_footer", --- a/chrome/browser/ui/webui/chrome_web_ui_configs.cc +++ b/chrome/browser/ui/webui/chrome_web_ui_configs.cc -@@ -298,7 +298,6 @@ void RegisterChromeWebUIConfigs() { +@@ -299,7 +299,6 @@ void RegisterChromeWebUIConfigs() { map.AddWebUIConfig(std::make_unique()); map.AddWebUIConfig(std::make_unique()); map.AddWebUIConfig(std::make_unique()); @@ -858,7 +901,7 @@ #include "chrome/browser/speech/extension_api/tts_engine_extension_api.h" #include "chrome/browser/translate/chrome_translate_client.h" #include "chrome/browser/ui/browser.h" -@@ -302,14 +300,6 @@ ReadAnythingUntrustedPageHandler::ReadAn +@@ -314,14 +312,6 @@ ReadAnythingUntrustedPageHandler::ReadAn prefs_lang = language::ExtractBaseLanguage(prefs_lang); SetDefaultLanguageCode(prefs_lang); @@ -886,7 +929,7 @@ # It is enableable separately to facilitate testing. --- a/chrome/renderer/BUILD.gn +++ b/chrome/renderer/BUILD.gn -@@ -346,18 +346,6 @@ static_library("renderer") { +@@ -345,18 +345,6 @@ static_library("renderer") { ] } else { sources += [ @@ -905,7 +948,7 @@ "media/chrome_speech_recognition_client.cc", "media/chrome_speech_recognition_client.h", "searchbox/searchbox.cc", -@@ -373,7 +361,6 @@ static_library("renderer") { +@@ -372,7 +360,6 @@ static_library("renderer") { "//components/crx_file", "//components/trusted_vault", "//services/screen_ai/buildflags", @@ -923,7 +966,7 @@ #include "chrome/renderer/actor/journal.h" #include "chrome/renderer/actor/page_stability_monitor.h" #include "chrome/renderer/actor/tool_executor.h" -@@ -325,20 +324,6 @@ void ChromeRenderFrameObserver::DidCommi +@@ -338,20 +337,6 @@ void ChromeRenderFrameObserver::DidCommi } void ChromeRenderFrameObserver::DidClearWindowObject() { @@ -946,7 +989,7 @@ void ChromeRenderFrameObserver::DidMeaningfulLayout( --- a/chrome/test/BUILD.gn +++ b/chrome/test/BUILD.gn -@@ -2463,9 +2463,6 @@ if (!is_android) { +@@ -2488,9 +2488,6 @@ if (!is_android) { "//chrome/browser/resource_coordinator:tab_manager_features", "//chrome/browser/safe_browsing:advanced_protection", "//chrome/browser/safe_browsing:verdict_cache_manager_factory", @@ -956,7 +999,7 @@ "//chrome/browser/search", "//chrome/browser/search_engines", "//chrome/browser/segmentation_platform:test_utils", -@@ -2914,8 +2911,6 @@ if (!is_android) { +@@ -2937,8 +2934,6 @@ if (!is_android) { "//services/preferences/public/cpp", "//services/preferences/public/cpp/tracked", "//services/preferences/tracked:features", @@ -965,7 +1008,17 @@ "//services/service_manager/public/cpp", "//services/strings", "//services/test/echo/public/mojom", -@@ -8555,7 +8550,6 @@ test("unit_tests") { +@@ -7253,9 +7248,6 @@ test("unit_tests") { + "//components/safe_browsing/content/browser", + "//components/safe_browsing/content/browser:client_side_detection_images_cache", + "//components/safe_browsing/content/browser:credit_card_form_event", +- "//components/safe_browsing/content/browser/notification_content_detection", +- "//components/safe_browsing/content/browser/notification_content_detection:notifications_global_cache_list", +- "//components/safe_browsing/content/browser/notification_content_detection:test_utils", + "//components/safe_browsing/content/browser/password_protection", + "//components/safe_browsing/content/browser/password_protection:mock_password_protection", + "//components/safe_browsing/content/browser/web_ui", +@@ -8586,7 +8578,6 @@ test("unit_tests") { # # TODO(crbug.com/417513088): Maybe merge with the non-android `deps` declaration above? deps += [ @@ -973,7 +1026,7 @@ "//chrome:packed_resources_integrity_header", "//chrome/browser/apps:icon_standardizer", "//chrome/browser/apps/app_service", -@@ -8591,7 +8585,6 @@ test("unit_tests") { +@@ -8621,7 +8612,6 @@ test("unit_tests") { "//chrome/browser/profile_resetter:fake_profile_resetter", "//chrome/browser/resource_coordinator:tab_manager_features", "//chrome/browser/resources/new_tab_page_instant:resources_grit", @@ -1004,7 +1057,7 @@ python_library("fixtures") { --- a/chrome/utility/BUILD.gn +++ b/chrome/utility/BUILD.gn -@@ -145,7 +145,6 @@ static_library("utility") { +@@ -143,7 +143,6 @@ static_library("utility") { "//components/user_data_importer/content", "//components/user_data_importer/utility:bookmarks", "//services/proxy_resolver:lib", @@ -1023,7 +1076,7 @@ #endif // !BUILDFLAG(IS_ANDROID) #if BUILDFLAG(ENABLE_BROWSER_SPEECH_SERVICE) -@@ -266,12 +264,6 @@ auto RunSpeechRecognitionService( +@@ -260,12 +258,6 @@ auto RunSpeechRecognitionService( } #endif // !BUILDFLAG(ENABLE_BROWSER_SPEECH_SERVICE) @@ -1036,7 +1089,7 @@ #if (BUILDFLAG(SAFE_BROWSING_DOWNLOAD_PROTECTION) && \ !BUILDFLAG(IS_ANDROID)) || \ -@@ -467,7 +459,6 @@ void RegisterMainThreadServices(mojo::Se +@@ -445,7 +437,6 @@ void RegisterMainThreadServices(mojo::Se services.Add(RunProfileImporter); services.Add(RunMirroringService); services.Add(RunPassageEmbeddingsService); @@ -1046,7 +1099,7 @@ #if BUILDFLAG(ENABLE_BROWSER_SPEECH_SERVICE) --- a/components/BUILD.gn +++ b/components/BUILD.gn -@@ -622,7 +622,6 @@ test("components_unittests") { +@@ -625,7 +625,6 @@ test("components_unittests") { "//components/one_time_tokens/core/browser:unit_tests", "//components/page_info:unit_tests", "//components/permissions:unit_tests", @@ -1075,7 +1128,7 @@ GeoIpCountryCode country_code; LanguageCode current_page_language; std::unique_ptr log_manager; -@@ -718,13 +716,6 @@ void AutofillManager::ParseFormsAsyncCom +@@ -721,13 +719,6 @@ void AutofillManager::ParseFormsAsyncCom } } @@ -1089,7 +1142,7 @@ if (!context.regex_predictions.empty()) { context.regex_predictions[i].ApplyTo(form_structure->fields()); } -@@ -843,10 +834,8 @@ void AutofillManager::RunMlModels( +@@ -846,10 +837,8 @@ void AutofillManager::RunMlModels( })); switch (source) { case HeuristicSource::kAutofillMachineLearning: @@ -1100,7 +1153,7 @@ break; case HeuristicSource::kRegexes: NOTREACHED(); -@@ -968,26 +957,6 @@ void AutofillManager::LogCurrentFieldTyp +@@ -992,26 +981,6 @@ void AutofillManager::LogCurrentFieldTyp void AutofillManager::SubscribeToMlModelChanges( FieldClassificationModelHandler& handler) { @@ -1159,7 +1212,7 @@ }; --- a/components/update_client/BUILD.gn +++ b/components/update_client/BUILD.gn -@@ -361,8 +361,6 @@ source_set("unit_tests") { +@@ -360,8 +360,6 @@ source_set("unit_tests") { "//third_party/puffin:libpuffpatch", "//third_party/re2", ] @@ -1170,7 +1223,7 @@ fuzzer_test("update_client_protocol_serializer_fuzzer") { --- a/content/shell/BUILD.gn +++ b/content/shell/BUILD.gn -@@ -831,10 +831,6 @@ if (is_apple) { +@@ -836,10 +836,6 @@ if (is_apple) { deps = [ "//third_party/icu:icudata" ] } @@ -1181,6 +1234,42 @@ if (v8_use_external_startup_data) { public_deps += [ "//v8" ] if (use_v8_context_snapshot) { +--- a/media/webrtc/BUILD.gn ++++ b/media/webrtc/BUILD.gn +@@ -26,7 +26,6 @@ component("webrtc") { + deps = [ + "//base", + "//build:chromecast_buildflags", +- "//components/optimization_guide/core/inference:op_resolver", + "//media", + "//third_party/webrtc_overrides:webrtc_component", + ] +--- a/media/webrtc/helpers.cc ++++ b/media/webrtc/helpers.cc +@@ -158,23 +158,6 @@ CreateWebRtcAudioProcessingModule( + webrtc::EchoCanceller3Config::CreateDefaultMultichannelConfig(); + std::unique_ptr echo_estimator; + +- // Fuchsia does not use the optimization guide. +- // Avoid linking the op resolver to keep Fuchsia binary size down. +- // TODO(crbug.com/450466837): Investigate if this build guard can be avoided. +-#if !BUILDFLAG(IS_FUCHSIA) +- if (residual_echo_estimator_model) { +- optimization_guide::TFLiteOpResolver op_resolver; +- echo_estimator = webrtc::CreateNeuralResidualEchoEstimator( +- residual_echo_estimator_model, &op_resolver); +- if (echo_estimator) { +- aec3_config = echo_estimator->GetConfiguration(/*multi_channel=*/false); +- multichannel_aec3_config = +- echo_estimator->GetConfiguration(/*multi_channel=*/true); +- } else { +- LOG(ERROR) << "Failed to initialize neural residual echo estimator."; +- } +- } +-#endif // !BUILDFLAG(IS_FUCHSIA) + + #if BUILDFLAG(SYSTEM_LOOPBACK_AS_AEC_REFERENCE) + if (settings.use_loopback_aec_reference) { --- a/services/on_device_model/ml/BUILD.gn +++ b/services/on_device_model/ml/BUILD.gn @@ -66,7 +66,6 @@ if (use_blink || (is_ios && build_with_i @@ -1337,7 +1426,7 @@ } --- a/third_party/devtools-frontend/src/front_end/BUILD.gn +++ b/third_party/devtools-frontend/src/front_end/BUILD.gn -@@ -213,7 +213,6 @@ group("unittests") { +@@ -214,7 +214,6 @@ group("unittests") { "panels/timeline:unittests", "panels/timeline/components:unittests", "panels/timeline/components/insights:unittests", diff --git a/patches/contrib/ungoogled-chromium/fix-building-without-safebrowsing.patch b/patches/contrib/ungoogled-chromium/fix-building-without-safebrowsing.patch index 82d428ff5..ccbc7e2b9 100644 --- a/patches/contrib/ungoogled-chromium/fix-building-without-safebrowsing.patch +++ b/patches/contrib/ungoogled-chromium/fix-building-without-safebrowsing.patch @@ -2,7 +2,7 @@ --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -598,8 +598,6 @@ static_library("browser") { +@@ -571,8 +571,6 @@ static_library("browser") { "idle/idle_detection_permission_context.h", "interstitials/chrome_settings_page_helper.cc", "interstitials/chrome_settings_page_helper.h", @@ -11,7 +11,7 @@ "invalidation/profile_invalidation_provider_factory.cc", "invalidation/profile_invalidation_provider_factory.h", "k_anonymity_service/k_anonymity_service_client.cc", -@@ -2393,7 +2391,6 @@ static_library("browser") { +@@ -2379,7 +2377,6 @@ static_library("browser") { "//components/resources", "//components/safe_browsing/content/browser", "//components/safe_browsing/content/browser:safe_browsing_service", @@ -19,7 +19,7 @@ "//components/safe_browsing/content/browser/password_protection", "//components/safe_browsing/content/browser/web_ui", "//components/safe_browsing/content/common/proto:download_file_types_proto", -@@ -4005,10 +4002,6 @@ static_library("browser") { +@@ -4004,10 +4001,6 @@ static_library("browser") { "new_tab_page/modules/modules_switches.h", "new_tab_page/modules/new_tab_page_modules.cc", "new_tab_page/modules/new_tab_page_modules.h", @@ -30,7 +30,7 @@ "new_tab_page/modules/v2/authentication/microsoft_auth_page_handler.cc", "new_tab_page/modules/v2/authentication/microsoft_auth_page_handler.h", "new_tab_page/modules/v2/calendar/calendar_fake_data_helper.cc", -@@ -8643,7 +8636,6 @@ static_library("browser_generated_files" +@@ -8608,7 +8601,6 @@ static_library("browser_generated_files" "//chrome/browser/new_tab_page/chrome_colors:generate_chrome_colors_info", "//chrome/browser/new_tab_page/chrome_colors:generate_colors_info", "//chrome/browser/new_tab_page/modules/file_suggestion:mojo_bindings", @@ -38,7 +38,7 @@ "//chrome/browser/new_tab_page/modules/v2/authentication:mojo_bindings", "//chrome/browser/new_tab_page/modules/v2/calendar:mojo_bindings", "//chrome/browser/new_tab_page/modules/v2/most_relevant_tab_resumption:mojo_bindings", -@@ -9132,8 +9124,6 @@ static_library("test_support") { +@@ -9074,8 +9066,6 @@ static_library("test_support") { "//components/reporting/util:status", "//components/reporting/util:status_macros", "//components/reporting/util:task_runner_context", @@ -47,6 +47,33 @@ "//components/safe_browsing/core/common/proto:csd_proto", "//components/search_engines:test_support", "//components/security_interstitials/content:security_interstitial_page", +--- a/chrome/browser/content_settings/generated_javascript_optimizer_pref.cc ++++ b/chrome/browser/content_settings/generated_javascript_optimizer_pref.cc +@@ -30,7 +30,7 @@ GeneratedJavascriptOptimizerPref::Genera + user_prefs_registrar_.Init(profile->GetPrefs()); + user_prefs_registrar_.AddMultiple( + {prefs::kJavascriptOptimizerBlockedForUnfamiliarSites, +- prefs::kSafeBrowsingEnabled}, ++ }, + base::BindRepeating( + &GeneratedJavascriptOptimizerPref::OnPreferencesChanged, + base::Unretained(this))); +@@ -98,7 +98,6 @@ PrefObject GeneratedJavascriptOptimizerP + &pref_object, SettingSource::kPolicy); + } + +- if (!safe_browsing::IsSafeBrowsingEnabled(*profile_->GetPrefs())) { + pref_object.enforcement = + extensions::api::settings_private::Enforcement::kEnforced; + pref_object.controlled_by = +@@ -109,7 +108,6 @@ PrefObject GeneratedJavascriptOptimizerP + user_selectable_values.Append( + base::Value(static_cast(JavascriptOptimizerSetting::kBlocked))); + pref_object.user_selectable_values = std::move(user_selectable_values); +- } + + return pref_object; + } --- a/chrome/browser/download/bubble/download_bubble_ui_controller.cc +++ b/chrome/browser/download/bubble/download_bubble_ui_controller.cc @@ -47,7 +47,6 @@ @@ -74,7 +101,7 @@ // Launch a HaTS survey. Note this needs to come before the command is --- a/chrome/browser/download/chrome_download_manager_delegate.cc +++ b/chrome/browser/download/chrome_download_manager_delegate.cc -@@ -179,7 +179,6 @@ using content::DownloadManager; +@@ -185,7 +185,6 @@ using content::DownloadManager; using download::DownloadItem; using download::DownloadPathReservationTracker; using download::PathValidationResult; @@ -82,7 +109,7 @@ using ConnectionType = net::NetworkChangeNotifier::ConnectionType; #if BUILDFLAG(SAFE_BROWSING_DOWNLOAD_PROTECTION) -@@ -1899,7 +1898,6 @@ void ChromeDownloadManagerDelegate::OnDo +@@ -1969,7 +1968,6 @@ void ChromeDownloadManagerDelegate::OnDo DownloadItemModel model(item); model.DetermineAndSetShouldPreferOpeningInBrowser( target_info.target_path, target_info.is_filetype_handled_safely); @@ -90,7 +117,7 @@ } if (ShouldBlockFile(item, target_info.danger_type)) { MaybeReportDangerousDownloadBlocked( -@@ -1980,49 +1978,20 @@ bool ChromeDownloadManagerDelegate::IsOp +@@ -2050,49 +2048,20 @@ bool ChromeDownloadManagerDelegate::IsOp bool ChromeDownloadManagerDelegate::ShouldBlockFile( download::DownloadItem* item, download::DownloadDangerType danger_type) const { @@ -292,20 +319,9 @@ } base::TimeDelta GetIgnoreDownloadBubbleWarningDelay() { ---- a/chrome/browser/enterprise/connectors/analysis/analysis_service_settings.cc -+++ b/chrome/browser/enterprise/connectors/analysis/analysis_service_settings.cc -@@ -246,8 +246,6 @@ AnalysisSettings AnalysisServiceSettings - settings.block_large_files = block_large_files_; - if (is_cloud_analysis()) { - CloudAnalysisSettings cloud_settings; -- cloud_settings.analysis_url = -- GetRegionalizedEndpoint(analysis_config_->region_urls, data_region); - // We assume all support_tags structs have the same max file size. - cloud_settings.max_file_size = - analysis_config_->supported_tags[0].max_file_size; --- a/chrome/browser/enterprise/connectors/analysis/content_analysis_delegate.cc +++ b/chrome/browser/enterprise/connectors/analysis/content_analysis_delegate.cc -@@ -40,8 +40,6 @@ +@@ -39,8 +39,6 @@ #include "chrome/browser/safe_browsing/chrome_enterprise_url_lookup_service_factory.h" #include "chrome/browser/safe_browsing/cloud_content_scanning/binary_upload_service.h" #include "chrome/browser/safe_browsing/cloud_content_scanning/deep_scanning_utils.h" @@ -316,7 +332,7 @@ #include "chrome/grit/generated_resources.h" --- a/chrome/browser/enterprise/connectors/analysis/content_analysis_downloads_delegate.cc +++ b/chrome/browser/enterprise/connectors/analysis/content_analysis_downloads_delegate.cc -@@ -126,7 +126,7 @@ ContentAnalysisDownloadsDelegate::GetCus +@@ -125,7 +125,7 @@ ContentAnalysisDownloadsDelegate::GetCus } bool ContentAnalysisDownloadsDelegate::BypassRequiresJustification() const { @@ -433,7 +449,7 @@ void OnGotFileInfo( --- a/chrome/browser/enterprise/connectors/connectors_manager.cc +++ b/chrome/browser/enterprise/connectors/connectors_manager.cc -@@ -316,26 +316,7 @@ std::vector Conne +@@ -317,26 +317,7 @@ std::vector Conne } DataRegion ConnectorsManager::GetDataRegion(AnalysisConnector connector) const { @@ -634,7 +650,7 @@ signal_response.profile_id = profile_id_service_->GetProfileId(); --- a/chrome/browser/extensions/BUILD.gn +++ b/chrome/browser/extensions/BUILD.gn -@@ -407,8 +407,6 @@ source_set("extensions") { +@@ -405,8 +405,6 @@ source_set("extensions") { "mv2_deprecation_impact_checker.cc", "mv2_deprecation_impact_checker.h", "mv2_experiment_stage.h", @@ -664,7 +680,7 @@ info.enterprise_profile_id = signals.enterprise_profile_id; --- a/chrome/browser/extensions/api/settings_private/prefs_util.cc +++ b/chrome/browser/extensions/api/settings_private/prefs_util.cc -@@ -382,8 +382,6 @@ const PrefsUtil::TypedPrefMap& PrefsUtil +@@ -385,8 +385,6 @@ const PrefsUtil::TypedPrefMap& PrefsUtil settings_api::PrefType::kBoolean; (*s_allowlist)[::kGeneratedHttpsFirstModePref] = settings_api::PrefType::kNumber; @@ -699,7 +715,7 @@ void Blocklist::GetMalwareIDs(const std::set& ids, --- a/chrome/browser/extensions/chrome_extension_system.cc +++ b/chrome/browser/extensions/chrome_extension_system.cc -@@ -464,8 +464,6 @@ void ChromeExtensionSystem::InstallUpdat +@@ -466,8 +466,6 @@ void ChromeExtensionSystem::InstallUpdat void ChromeExtensionSystem::PerformActionBasedOnOmahaAttributes( const std::string& extension_id, const base::Value::Dict& attributes) { @@ -751,7 +767,7 @@ #include "chrome/browser/extensions/permissions/permissions_updater.h" #include "chrome/browser/extensions/profile_util.h" #include "chrome/browser/extensions/sync/extension_sync_service.h" -@@ -218,9 +217,6 @@ ExtensionService::ExtensionService( +@@ -219,9 +218,6 @@ ExtensionService::ExtensionService( extension_telemetry_service_verdict_handler_(extension_prefs, registry_, extension_registrar_), @@ -761,7 +777,7 @@ force_installed_tracker_(registry_, profile_), force_installed_metrics_(registry_, profile_, &force_installed_tracker_), corrupted_extension_reinstaller_( -@@ -407,11 +403,6 @@ void ExtensionService::LoadExtensionsFro +@@ -408,11 +404,6 @@ void ExtensionService::LoadExtensionsFro << "--load-extension is not allowed in Google Chrome, ignoring."; return; #else // BUILDFLAG(GOOGLE_CHROME_BRANDING) && !BUILDFLAG(IS_CHROMEOS) @@ -773,7 +789,7 @@ if (ShouldBlockCommandLineExtension(*profile_)) { // TODO(crbug.com/401529219): Deprecate this restriction once // --load-extension removal on Chrome builds is fully launched. -@@ -467,17 +458,6 @@ void ExtensionService::LoadSigninProfile +@@ -468,17 +459,6 @@ void ExtensionService::LoadSigninProfile } #endif @@ -874,7 +890,7 @@ } --- a/chrome/browser/notifications/persistent_notification_handler.cc +++ b/chrome/browser/notifications/persistent_notification_handler.cc -@@ -315,24 +315,6 @@ void PersistentNotificationHandler::Disa +@@ -317,33 +317,6 @@ void PersistentNotificationHandler::Disa NotificationPermissionContext::UpdatePermission(profile, origin, CONTENT_SETTING_BLOCK); #endif @@ -894,12 +910,21 @@ - safe_browsing::MaybeLogSuspiciousNotificationUnsubscribeUkm( - hcsm, origin, notification_id.value(), profile); - } +- if (is_suspicious.has_value()) { +- safe_browsing::SafeBrowsingMetricsCollector:: +- LogSafeBrowsingNotificationRevocationSourceHistogram( +- is_suspicious.value() +- ? safe_browsing::NotificationRevocationSource:: +- kSuspiciousWarningOneTapUnsubscribe +- : safe_browsing::NotificationRevocationSource:: +- kStandardOneTapUnsubscribe); +- } -#endif - } } void PersistentNotificationHandler::OpenSettings(Profile* profile, -@@ -403,42 +385,6 @@ void PersistentNotificationHandler::OnMa +@@ -414,42 +387,6 @@ void PersistentNotificationHandler::OnMa Profile* profile, bool did_show_warning, bool did_user_unsubscribe) { @@ -944,28 +969,44 @@ #if BUILDFLAG(ENABLE_BACKGROUND_MODE) --- a/chrome/browser/notifications/platform_notification_service_impl.cc +++ b/chrome/browser/notifications/platform_notification_service_impl.cc -@@ -778,47 +778,8 @@ void PlatformNotificationServiceImpl::Up - std::unique_ptr persistent_metadata, - bool should_show_warning, - std::optional serialized_content_detection_metadata) { +@@ -792,68 +792,8 @@ void PlatformNotificationServiceImpl:: + std::unique_ptr persistent_metadata, + bool should_show_warning, + std::optional serialized_content_detection_metadata) { +- bool suspicious_notification_revoked = false; - if (base::FeatureList::IsEnabled( - safe_browsing::kAutoRevokeSuspiciousNotification) && - should_show_warning) { +-#if BUILDFLAG(IS_ANDROID) +- suspicious_notification_revoked = AbusiveNotificationPermissionsManager:: +- MaybeRevokeSuspiciousNotificationPermission(profile_, +- notification.origin_url()); +-#endif +- +- auto* service = +- NotificationsEngagementServiceFactory::GetForProfile(profile_); - // This service might be missing for incognito profiles and in tests. -- if (auto* service = -- NotificationsEngagementServiceFactory::GetForProfile(profile_)) { +- if (!suspicious_notification_revoked && service) { +- // Increment suspicious count if the notification permission has not been +- // revoked. - service->RecordNotificationSuspicious(notification.origin_url()); - } - } - if (base::FeatureList::IsEnabled( - safe_browsing::kReportNotificationContentDetectionData)) { +- // If the notification permission has been revoked, we do still want to +- // record the notification in the database for re-grant scenario; however; +- // there is no need to trigger `DidUpdatePersistentMetadata` callback. - content::PlatformNotificationContext::WriteResourcesResultCallback -- callback = base::BindOnce( -- &PlatformNotificationServiceImpl::DidUpdatePersistentMetadata, -- weak_ptr_factory_.GetWeakPtr(), std::move(persistent_metadata), -- notification, should_show_warning); +- callback = suspicious_notification_revoked +- ? base::DoNothing() +- : base::BindOnce(&PlatformNotificationServiceImpl:: +- DidUpdatePersistentMetadata, +- weak_ptr_factory_.GetWeakPtr(), +- std::move(persistent_metadata), +- notification, should_show_warning); -#if BUILDFLAG(IS_ANDROID) -- if (should_show_warning) { +- if (should_show_warning && !suspicious_notification_revoked) { - // Keep track of suspicious notification ids. - safe_browsing::UpdateSuspiciousNotificationIds( - HostContentSettingsMapFactory::GetForProfile(profile_), @@ -986,6 +1027,11 @@ - } - std::move(callback).Run(/*success=*/false); - } else { +- // Notification permission has been revoked due to suspicious content; do +- // not show notification. +- if (suspicious_notification_revoked) { +- return; +- } DoUpdatePersistentMetadataThenDisplay(std::move(persistent_metadata), notification, should_show_warning); - } @@ -1008,7 +1054,7 @@ page_load_metrics::PageLoadMetricsObserver::ObservePolicy --- a/chrome/browser/permissions/permission_revocation_request.cc +++ b/chrome/browser/permissions/permission_revocation_request.cc -@@ -209,32 +209,6 @@ void PermissionRevocationRequest::OnSite +@@ -211,32 +211,6 @@ void PermissionRevocationRequest::OnSite base::TimeTicks::Now() - crowd_deny_request_start_time_.value(); } @@ -1093,7 +1139,7 @@ void ContextualNotificationPermissionUiSelector::OnSafeBrowsingVerdictReceived( --- a/chrome/browser/permissions/prediction_service/permissions_ai_ui_selector.cc +++ b/chrome/browser/permissions/prediction_service/permissions_ai_ui_selector.cc -@@ -718,76 +718,6 @@ bool PermissionsAiUiSelector::ShouldHold +@@ -673,77 +673,6 @@ bool PermissionsAiUiSelector::ShouldHold PredictionSource PermissionsAiUiSelector::GetPredictionTypeToUse( permissions::RequestType request_type) { @@ -1141,9 +1187,9 @@ - } - if (use_server_side) { - // AIvX models take priority over each other in the following order: -- // AIv4, AIv3, AIv1 +- // AIv4, AIv3 -#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) -- if (PredictionModelHandlerProvider::IsAiv4ModelAvailable()) { +- if (PredictionModelHandlerProvider::IsAIv4FeatureEnabled()) { - VLOG(1) << "[CPSS] GetPredictionTypeToUse AIv4"; - return PredictionSource::kOnDeviceAiv4AndServerSideModel; - } @@ -1152,17 +1198,18 @@ - return PredictionSource::kOnDeviceAiv3AndServerSideModel; - } -#endif // BUILDFLAG(BUILD_WITH_TFLITE_LIB) -- if (base::FeatureList::IsEnabled(permissions::features::kPermissionsAIv1)) { -- VLOG(1) << "[CPSS] GetPredictionTypeToUse AIv1"; -- return PredictionSource::kOnDeviceAiv1AndServerSideModel; -- } - VLOG(1) << "[CPSS] GetPredictionTypeToUse CPSSv3"; - return PredictionSource::kServerSideCpssV3Model; - } - -#if BUILDFLAG(BUILD_WITH_TFLITE_LIB) -- if (request_type == permissions::RequestType::kNotifications || -- request_type == permissions::RequestType::kGeolocation) { +- if ((request_type == permissions::RequestType::kNotifications && +- base::FeatureList::IsEnabled( +- permissions::features:: +- kPermissionOnDeviceNotificationPredictions)) || +- (request_type == permissions::RequestType::kGeolocation && +- base::FeatureList::IsEnabled( +- permissions::features::kPermissionOnDeviceGeolocationPredictions))) { - VLOG(1) << "[CPSS] GetPredictionTypeToUse CPSSv1"; - return PredictionSource::kOnDeviceCpssV1Model; - } @@ -1172,7 +1219,7 @@ return PredictionSource::kNoCpssModel; --- a/chrome/browser/policy/configuration_policy_handler_list_factory.cc +++ b/chrome/browser/policy/configuration_policy_handler_list_factory.cc -@@ -2544,8 +2544,6 @@ std::unique_ptrAddHandler( std::make_unique( chrome_schema)); @@ -1183,7 +1230,7 @@ std::make_unique(key::kURLBlocklist)); --- a/chrome/browser/prefs/browser_prefs.cc +++ b/chrome/browser/prefs/browser_prefs.cc -@@ -285,7 +285,6 @@ +@@ -289,7 +289,6 @@ #include "chrome/browser/nearby_sharing/common/nearby_share_prefs.h" #include "chrome/browser/new_tab_page/modules/file_suggestion/drive_service.h" #include "chrome/browser/new_tab_page/modules/file_suggestion/microsoft_files_page_handler.h" @@ -1191,7 +1238,7 @@ #include "chrome/browser/new_tab_page/modules/v2/authentication/microsoft_auth_page_handler.h" #include "chrome/browser/new_tab_page/modules/v2/calendar/google_calendar_page_handler.h" #include "chrome/browser/new_tab_page/modules/v2/calendar/outlook_calendar_page_handler.h" -@@ -2225,7 +2224,6 @@ void RegisterProfilePrefs(user_prefs::Pr +@@ -2043,7 +2042,6 @@ void RegisterProfilePrefs(user_prefs::Pr NewTabFooterUI::RegisterProfilePrefs(registry); NewTabPageHandler::RegisterProfilePrefs(registry); NewTabPageUI::RegisterProfilePrefs(registry); @@ -1201,7 +1248,7 @@ promos_utils::RegisterProfilePrefs(registry); --- a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc +++ b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc -@@ -889,9 +889,7 @@ void ChromeBrowserMainExtraPartsProfiles +@@ -901,9 +901,7 @@ void ChromeBrowserMainExtraPartsProfiles enterprise_connectors::TelomereEventRouterFactory::GetInstance(); } #endif @@ -1242,7 +1289,7 @@ } --- a/chrome/browser/resources/settings/privacy_page/privacy_page_index.ts +++ b/chrome/browser/resources/settings/privacy_page/privacy_page_index.ts -@@ -148,7 +148,7 @@ export class SettingsPrivacyPageIndexEle +@@ -154,7 +154,7 @@ export class SettingsPrivacyPageIndexEle enableSafeBrowsingSubresourceFilter_: { type: Boolean, value: () => { @@ -1428,6 +1475,18 @@ } scoped_refptr +--- a/chrome/browser/site_protection/site_familiarity_utils.cc ++++ b/chrome/browser/site_protection/site_familiarity_utils.cc +@@ -46,9 +46,6 @@ ComputeDefaultJavascriptOptimizerSetting + return content_settings::JavascriptOptimizerSetting::kAllowed; + } + +- if (!safe_browsing::IsSafeBrowsingEnabled(*profile->GetPrefs())) { +- return content_settings::JavascriptOptimizerSetting::kAllowed; +- } + + return profile->GetPrefs()->GetBoolean( + prefs::kJavascriptOptimizerBlockedForUnfamiliarSites) --- a/chrome/browser/ssl/chrome_security_blocking_page_factory.cc +++ b/chrome/browser/ssl/chrome_security_blocking_page_factory.cc @@ -123,15 +123,6 @@ CreateSettingsPageHelper() { @@ -1492,7 +1551,7 @@ // certificate. So, when users click proceed on an interstitial, move the tab --- a/chrome/browser/ui/BUILD.gn +++ b/chrome/browser/ui/BUILD.gn -@@ -4231,8 +4231,6 @@ static_library("ui") { +@@ -4269,8 +4269,6 @@ static_library("ui") { "views/safe_browsing/password_reuse_modal_warning_dialog.h", "views/safe_browsing/tailored_security_desktop_dialog_manager.cc", "views/safe_browsing/tailored_security_desktop_dialog_manager.h", @@ -1501,6 +1560,24 @@ "views/screen_sharing_util.cc", "views/screen_sharing_util.h", "views/select_audio_output/select_audio_output_dialog.cc", +--- a/chrome/browser/ui/autofill/chrome_otp_phish_guard_delegate.cc ++++ b/chrome/browser/ui/autofill/chrome_otp_phish_guard_delegate.cc +@@ -20,15 +20,6 @@ ChromeOtpPhishGuardDelegate::~ChromeOtpP + void ChromeOtpPhishGuardDelegate::StartOtpPhishGuardCheck( + const GURL& url, + base::OnceCallback callback) { +- if (auto* client = +- ChromePasswordManagerClient::FromWebContents(&web_contents_.get())) { +- if (safe_browsing::PasswordProtectionService* pps = +- client->GetPasswordProtectionService()) { +- pps->MaybeStartOtpPhishingRequest(&web_contents_.get(), url, +- std::move(callback)); +- return; +- } +- } + std::move(callback).Run(false); + } + --- a/chrome/browser/ui/file_system_access/BUILD.gn +++ b/chrome/browser/ui/file_system_access/BUILD.gn @@ -23,7 +23,6 @@ source_set("file_system_access") { @@ -1513,7 +1590,7 @@ "file_system_access_restricted_directory_dialog.cc", --- a/chrome/browser/ui/omnibox/chrome_omnibox_client.cc +++ b/chrome/browser/ui/omnibox/chrome_omnibox_client.cc -@@ -795,12 +795,6 @@ void ChromeOmniboxClient::OnAutocomplete +@@ -807,12 +807,6 @@ void ChromeOmniboxClient::OnAutocomplete extensions::MaybeShowExtensionControlledSearchNotification( location_bar_->GetWebContents(), match_type); @@ -1528,28 +1605,28 @@ --- a/chrome/browser/ui/safety_hub/revoked_permissions_service.cc +++ b/chrome/browser/ui/safety_hub/revoked_permissions_service.cc -@@ -40,7 +40,6 @@ +@@ -41,7 +41,6 @@ + #include "components/permissions/permission_util.h" #include "components/prefs/pref_change_registrar.h" #include "components/prefs/pref_service.h" - #include "components/safe_browsing/core/common/features.h" -#include "components/safe_browsing/core/common/safe_browsing_prefs.h" + #include "components/safety_check/safety_check.h" #include "content/public/browser/browser_context.h" #include "content/public/browser/browser_thread.h" - #include "content/public/browser/page.h" -@@ -157,31 +156,6 @@ RevokedPermissionsService::RevokedPermis - base::Unretained(this))); - #endif // BUILDFLAG(IS_ANDROID) - -- abusive_notification_manager_ = -- std::make_unique( +@@ -167,32 +166,6 @@ RevokedPermissionsService::RevokedPermis + notification_display_manager = + RevokedPermissionsOSNotificationDisplayManagerFactory:: + GetForProfile(Profile::FromBrowserContext(browser_context_)); +- abusive_notification_manager_ = +- std::make_unique( -#if BUILDFLAG(SAFE_BROWSING_AVAILABLE) -- g_browser_process->safe_browsing_service() -- ? g_browser_process->safe_browsing_service()->database_manager() -- : nullptr, +- g_browser_process->safe_browsing_service() +- ? g_browser_process->safe_browsing_service()->database_manager() +- : nullptr, -#else - nullptr, -#endif -- hcsm(), pref_change_registrar_->prefs()); +- hcsm(), pref_change_registrar_->prefs()); - - pref_change_registrar_->Add( - prefs::kSafeBrowsingEnabled, @@ -1563,12 +1640,13 @@ - std::make_unique( - hcsm(), - site_engagement::SiteEngagementServiceFactory::GetForProfile( -- browser_context_)); +- browser_context_), +- notification_display_manager); - } unused_site_permissions_manager_ = std::make_unique(browser_context, prefs); -@@ -562,5 +536,5 @@ bool RevokedPermissionsService::IsUnused +@@ -608,5 +581,5 @@ bool RevokedPermissionsService::IsUnused } bool RevokedPermissionsService::IsAbusiveNotificationAutoRevocationEnabled() { @@ -1793,6 +1871,33 @@ std::string client_channel = std::string(version_info::GetChannelString(chrome::GetChannel())); +--- a/chrome/browser/ui/webui/settings/safety_hub_handler.cc ++++ b/chrome/browser/ui/webui/settings/safety_hub_handler.cc +@@ -176,10 +176,6 @@ SafetyHubHandler::SafetyHubHandler(Profi + prefs_observation_.Observe(ExtensionPrefs::Get(profile_)); + extension_registry_observation_.Observe(ExtensionRegistry::Get(profile_)); + pref_change_registrar_.Init(profile_->GetPrefs()); +- pref_change_registrar_.Add( +- prefs::kSafeBrowsingEnhanced, +- base::BindRepeating(&SafetyHubHandler::OnSafeBrowsingEnhancedChanged, +- base::Unretained(this))); + } + SafetyHubHandler::~SafetyHubHandler() = default; + +@@ -834,13 +830,4 @@ void SafetyHubHandler::OnJavascriptAllow + void SafetyHubHandler::OnJavascriptDisallowed() {} + + void SafetyHubHandler::OnSafeBrowsingEnhancedChanged() { +- if (profile_->GetPrefs()->GetBoolean(prefs::kSafeBrowsingEnhanced) && +- MobilePromoOnDesktopTypeEnabled() == +- MobilePromoOnDesktopPromoType::kESBPromo) { +- IOSPromoTriggerService* service = +- IOSPromoTriggerServiceFactory::GetForProfile(profile_); +- if (service) { +- service->NotifyPromoShouldBeShown(IOSPromoType::kEnhancedBrowsing); +- } +- } + } --- a/chrome/browser/webshare/share_service_impl.cc +++ b/chrome/browser/webshare/share_service_impl.cc @@ -17,7 +17,9 @@ @@ -1837,7 +1942,7 @@ std::move(callback), --- a/chrome/common/webui_url_constants.cc +++ b/chrome/common/webui_url_constants.cc -@@ -127,7 +127,6 @@ base::span Chr +@@ -130,7 +130,6 @@ base::span Chr kChromeUISuggestInternalsHost, #endif kChromeUINTPTilesInternalsHost, @@ -1847,7 +1952,15 @@ kChromeUITabSearchHost, --- a/chrome/test/BUILD.gn +++ b/chrome/test/BUILD.gn -@@ -2774,7 +2774,6 @@ if (!is_android) { +@@ -1670,7 +1670,6 @@ source_set("platform_browser_tests") { + "//components/privacy_sandbox:privacy_sandbox_settings_headers", + "//components/proxy_config", + "//components/reading_list/core:test_support", +- "//components/safe_browsing/content/common:file_type_policies_test_support", + "//components/tabs:public", + "//components/web_package", + "//components/web_package/test_support", +@@ -2797,7 +2796,6 @@ if (!is_android) { "//components/resources", "//components/safe_browsing:buildflags", "//components/safe_browsing/content/browser", @@ -1855,14 +1968,14 @@ "//components/safe_browsing/content/browser:safe_browsing_service", "//components/safe_browsing/content/browser/password_protection", "//components/safe_browsing/content/browser/password_protection:test_support", -@@ -7225,7 +7224,6 @@ test("unit_tests") { +@@ -7246,7 +7244,6 @@ test("unit_tests") { "//components/resources", "//components/safe_browsing:buildflags", "//components/safe_browsing/content/browser", - "//components/safe_browsing/content/browser:client_side_detection_images_cache", - "//components/safe_browsing/content/browser/notification_content_detection", - "//components/safe_browsing/content/browser/notification_content_detection:notifications_global_cache_list", - "//components/safe_browsing/content/browser/notification_content_detection:test_utils", + "//components/safe_browsing/content/browser:credit_card_form_event", + "//components/safe_browsing/content/browser/password_protection", + "//components/safe_browsing/content/browser/password_protection:mock_password_protection", --- a/components/device_signals/core/browser/browser_utils.cc +++ b/components/device_signals/core/browser/browser_utils.cc @@ -29,35 +29,6 @@ bool IsURLBlocked(const GURL& url, Polic @@ -1926,7 +2039,7 @@ #if BUILDFLAG(IS_WIN) #include "components/device_signals/core/common/win/win_types.h" -@@ -261,10 +260,7 @@ struct ProfileSignalsResponse : BaseSign +@@ -271,10 +270,7 @@ struct ProfileSignalsResponse : BaseSign bool built_in_dns_client_enabled; bool chrome_remote_desktop_app_blocked; @@ -1939,7 +2052,7 @@ --- a/components/enterprise/browser/reporting/chrome_profile_request_generator.cc +++ b/components/enterprise/browser/reporting/chrome_profile_request_generator.cc -@@ -265,18 +265,12 @@ void ChromeProfileRequestGenerator::OnAg +@@ -288,18 +288,12 @@ void ChromeProfileRequestGenerator::OnAg profile_signals.built_in_dns_client_enabled); profile_signals_report->set_chrome_remote_desktop_app_blocked( profile_signals.chrome_remote_desktop_app_blocked); @@ -1960,7 +2073,7 @@ --- a/components/enterprise/browser/reporting/report_util.cc +++ b/components/enterprise/browser/reporting/report_util.cc -@@ -79,25 +79,6 @@ em::SettingValue TranslateSettingValue( +@@ -80,25 +80,6 @@ em::SettingValue TranslateSettingValue( } } @@ -1986,7 +2099,7 @@ em::ProfileSignalsReport::RealtimeUrlCheckMode TranslateRealtimeUrlCheckMode( enterprise_connectors::EnterpriseRealTimeUrlCheckMode mode) { switch (mode) { -@@ -110,18 +91,6 @@ em::ProfileSignalsReport::RealtimeUrlChe +@@ -111,18 +92,6 @@ em::ProfileSignalsReport::RealtimeUrlChe } } @@ -2027,7 +2140,7 @@ device_signals::AvProduct av_product); --- a/components/enterprise/buildflags/buildflags.gni +++ b/components/enterprise/buildflags/buildflags.gni -@@ -11,11 +11,11 @@ declare_args() { +@@ -10,11 +10,11 @@ declare_args() { # Indicates support for content analysis against a cloud agent for Enterprise # Connector policies. enterprise_cloud_content_analysis = @@ -2041,6 +2154,17 @@ # Indicates support for Data Control rules. enterprise_data_controls = +--- a/components/enterprise/connectors/core/analysis_service_settings_base.cc ++++ b/components/enterprise/connectors/core/analysis_service_settings_base.cc +@@ -271,8 +271,6 @@ CloudAnalysisSettings AnalysisServiceSet + CHECK(is_cloud_analysis()); + + CloudAnalysisSettings cloud_settings; +- cloud_settings.analysis_url = +- GetRegionalizedEndpoint(analysis_config_->region_urls, data_region); + // We assume all support_tags structs have the same max file size. + cloud_settings.max_file_size = + analysis_config_->supported_tags[0].max_file_size; --- a/components/enterprise/connectors/core/reporting_service_settings.cc +++ b/components/enterprise/connectors/core/reporting_service_settings.cc @@ -45,16 +45,6 @@ ReportingServiceSettings::ReportingServi @@ -2062,7 +2186,7 @@ const base::Value::List* enabled_opt_in_events_value = --- a/components/password_manager/core/browser/leak_detection/leak_detection_check_impl.cc +++ b/components/password_manager/core/browser/leak_detection/leak_detection_check_impl.cc -@@ -314,12 +314,7 @@ bool LeakDetectionCheck::IsURLBlockedByP +@@ -312,12 +312,7 @@ bool LeakDetectionCheck::IsURLBlockedByP const PrefService& prefs, const GURL& form_url, autofill::SavePasswordProgressLogger* logger) { @@ -2088,7 +2212,7 @@ // the image embedding model. This call sends the model and the image --- a/components/safe_browsing/core/browser/BUILD.gn +++ b/components/safe_browsing/core/browser/BUILD.gn -@@ -23,8 +23,6 @@ source_set("browser") { +@@ -21,8 +21,6 @@ source_set("browser") { "url_checker_delegate.h", "url_realtime_mechanism.cc", "url_realtime_mechanism.h", @@ -2250,7 +2374,7 @@ #include "components/safe_browsing/core/common/proto/csd.pb.h" --- a/components/safe_browsing/core/browser/tailored_security_service/tailored_security_service.cc +++ b/components/safe_browsing/core/browser/tailored_security_service/tailored_security_service.cc -@@ -406,7 +406,6 @@ void TailoredSecurityService::MaybeNotif +@@ -407,7 +407,6 @@ void TailoredSecurityService::MaybeNotif RecordEnabledNotificationResult( TailoredSecurityNotificationResult::kHistoryNotSynced); } @@ -2258,7 +2382,7 @@ return; } -@@ -416,7 +415,6 @@ void TailoredSecurityService::MaybeNotif +@@ -417,7 +416,6 @@ void TailoredSecurityService::MaybeNotif RecordEnabledNotificationResult( TailoredSecurityNotificationResult::kSafeBrowsingControlledByPolicy); } @@ -2266,7 +2390,7 @@ return; } -@@ -519,25 +517,10 @@ void TailoredSecurityService::Shutdown() +@@ -525,25 +523,10 @@ void TailoredSecurityService::Shutdown() } void TailoredSecurityService::TailoredSecurityTimestampUpdateCallback() { @@ -2314,7 +2438,7 @@ raw_ptr identity_manager_; --- a/components/safe_browsing/core/browser/verdict_cache_manager.cc +++ b/components/safe_browsing/core/browser/verdict_cache_manager.cc -@@ -459,16 +459,6 @@ VerdictCacheManager::VerdictCacheManager +@@ -468,16 +468,6 @@ VerdictCacheManager::VerdictCacheManager // pref_service can be null in tests. if (pref_service) { pref_change_registrar_.Init(pref_service); @@ -2333,7 +2457,7 @@ if (sync_observer_) { --- a/components/safe_browsing/core/browser/web_ui/safe_browsing_ui_util.cc +++ b/components/safe_browsing/core/browser/web_ui/safe_browsing_ui_util.cc -@@ -306,20 +306,7 @@ std::string SerializeHitReport(const Hit +@@ -307,20 +307,7 @@ std::string SerializeHitReport(const Hit } hit_report_dict.Set("threat_source", std::move(threat_source)); std::string extended_reporting_level; @@ -2400,7 +2524,7 @@ void SSLBlockingPageBase::PopulateEnhancedProtectionMessage( --- a/components/sync_preferences/common_syncable_prefs_database.cc +++ b/components/sync_preferences/common_syncable_prefs_database.cc -@@ -344,9 +344,6 @@ constexpr auto kCommonSyncablePrefsAllow +@@ -389,9 +389,6 @@ constexpr auto kCommonSyncablePrefsAllow {plus_addresses::prefs::kLastPlusAddressFillingTime, {syncable_prefs_ids::kLastPlusAddressFillingTime, syncer::PREFERENCES, PrefSensitivity::kNone, MergeBehavior::kNone}}, @@ -2533,7 +2657,7 @@ return RespondNow(Error(std::move(error))); --- a/extensions/browser/api/web_request/extension_web_request_event_router.cc +++ b/extensions/browser/api/web_request/extension_web_request_event_router.cc -@@ -1025,14 +1025,6 @@ int WebRequestEventRouter::OnBeforeReque +@@ -1026,14 +1026,6 @@ int WebRequestEventRouter::OnBeforeReque DCHECK(action.redirect_url); OnDNRActionMatched(browser_context, *request, action); *new_url = GetNewUrl(action.redirect_url.value(), browser_context); diff --git a/patches/contrib/ungoogled-chromium/move-js-optimizer-unfamiliar-sites.patch b/patches/contrib/ungoogled-chromium/move-js-optimizer-unfamiliar-sites.patch index 3284333ce..0db55eb0b 100644 --- a/patches/contrib/ungoogled-chromium/move-js-optimizer-unfamiliar-sites.patch +++ b/patches/contrib/ungoogled-chromium/move-js-optimizer-unfamiliar-sites.patch @@ -3,7 +3,7 @@ # Move it to content_settings since we remove safebrowsing prefs --- a/chrome/browser/content_settings/generated_javascript_optimizer_pref.cc +++ b/chrome/browser/content_settings/generated_javascript_optimizer_pref.cc -@@ -11,6 +11,7 @@ +@@ -13,6 +13,7 @@ #include "chrome/common/extensions/api/settings_private.h" #include "components/content_settings/core/common/features.h" #include "components/prefs/pref_service.h" @@ -13,9 +13,9 @@ using extensions::api::settings_private::PrefObject; --- a/chrome/browser/site_protection/site_familiarity_utils.cc +++ b/chrome/browser/site_protection/site_familiarity_utils.cc -@@ -5,6 +5,7 @@ - #include "chrome/browser/site_protection/site_familiarity_utils.h" - +@@ -8,6 +8,7 @@ + #include "chrome/browser/content_settings/host_content_settings_map_factory.h" + #include "components/content_settings/core/browser/host_content_settings_map.h" #include "components/content_settings/core/common/features.h" +#include "components/content_settings/core/common/pref_names.h" #include "components/prefs/pref_service.h" @@ -23,7 +23,7 @@ --- a/components/content_settings/core/browser/content_settings_pref_provider.cc +++ b/components/content_settings/core/browser/content_settings_pref_provider.cc -@@ -88,6 +88,7 @@ void PrefProvider::RegisterProfilePrefs( +@@ -89,6 +89,7 @@ void PrefProvider::RegisterProfilePrefs( ContentSettingsPattern::kContentSettingsPatternVersion); registry->RegisterBooleanPref(prefs::kInContextCookieControlsOpened, false); registry->RegisterBooleanPref(kGeolocationMigrateExceptionsPref, false); diff --git a/patches/contrib/ungoogled-chromium/prepopulated-search-engines.patch b/patches/contrib/ungoogled-chromium/prepopulated-search-engines.patch index ef9f6db3f..f49bec493 100644 --- a/patches/contrib/ungoogled-chromium/prepopulated-search-engines.patch +++ b/patches/contrib/ungoogled-chromium/prepopulated-search-engines.patch @@ -2,7 +2,7 @@ # --- a/components/omnibox/common/omnibox_features.cc +++ b/components/omnibox/common/omnibox_features.cc -@@ -274,7 +274,7 @@ BASE_FEATURE(kOmniboxTouchDownTriggerFor +@@ -262,7 +262,7 @@ BASE_FEATURE(kOmniboxTouchDownTriggerFor BASE_FEATURE(kOmniboxSiteSearch, DISABLED); // Enables additional site search providers for the Site search Starter Pack. diff --git a/patches/contrib/ungoogled-chromium/remove-disable-setuid-sandbox-as-bad-flag.patch b/patches/contrib/ungoogled-chromium/remove-disable-setuid-sandbox-as-bad-flag.patch index 037577cbb..6c5244839 100644 --- a/patches/contrib/ungoogled-chromium/remove-disable-setuid-sandbox-as-bad-flag.patch +++ b/patches/contrib/ungoogled-chromium/remove-disable-setuid-sandbox-as-bad-flag.patch @@ -2,7 +2,7 @@ --- a/chrome/browser/ui/startup/bad_flags_prompt.cc +++ b/chrome/browser/ui/startup/bad_flags_prompt.cc -@@ -77,7 +77,6 @@ const char* const kBadFlags[] = { +@@ -84,7 +84,6 @@ const char* const kBadFlags[] = { sandbox::policy::switches::kDisableGpuSandbox, sandbox::policy::switches::kDisableLandlockSandbox, sandbox::policy::switches::kDisableSeccompFilterSandbox, diff --git a/patches/contrib/ungoogled-chromium/remove-uneeded-ui.patch b/patches/contrib/ungoogled-chromium/remove-uneeded-ui.patch index e4a1ef860..2ec46c1d6 100644 --- a/patches/contrib/ungoogled-chromium/remove-uneeded-ui.patch +++ b/patches/contrib/ungoogled-chromium/remove-uneeded-ui.patch @@ -53,7 +53,7 @@ --- a/chrome/app/settings_strings.grdp +++ b/chrome/app/settings_strings.grdp -@@ -1075,7 +1075,7 @@ +@@ -1096,7 +1096,7 @@ Active site @@ -62,7 +62,7 @@ Power -@@ -1099,7 +1099,7 @@ +@@ -1120,7 +1120,7 @@ Inactive tabs appearance @@ -71,7 +71,7 @@ Tab hover preview card appearance -@@ -1111,7 +1111,7 @@ +@@ -1132,7 +1132,7 @@ Performance issue alerts @@ -227,7 +227,7 @@ hidden="[[!prefs.feedback_allowed.value]]" --- a/chrome/browser/resources/settings/autofill_page/payments_section.html +++ b/chrome/browser/resources/settings/autofill_page/payments_section.html -@@ -83,11 +83,6 @@ +@@ -88,11 +88,6 @@ @@ -236,12 +236,12 @@ -
$i18nRaw{manageCreditCardsLabel}
- - -
-

$i18n{creditCards}

- ---- a/chrome/browser/resources/settings/privacy_page/security_page.ts -+++ b/chrome/browser/resources/settings/privacy_page/security_page.ts +--- a/chrome/browser/resources/settings/privacy_page/security/security_page.ts ++++ b/chrome/browser/resources/settings/privacy_page/security/security_page.ts @@ -245,17 +245,6 @@ export class SettingsSecurityPageElement super.ready(); @@ -1544,8 +1544,8 @@ return subLabel; } ---- a/chrome/browser/resources/settings/site_settings_page/site_settings_page.ts -+++ b/chrome/browser/resources/settings/site_settings_page/site_settings_page.ts +--- a/chrome/browser/resources/settings/site_settings/site_settings_page.ts ++++ b/chrome/browser/resources/settings/site_settings/site_settings_page.ts @@ -60,7 +60,7 @@ function getCategoryItemMap(): MapAppend( --- a/chrome/browser/safe_browsing/incident_reporting/extension_data_collection_unittest.cc +++ b/chrome/browser/safe_browsing/incident_reporting/extension_data_collection_unittest.cc -@@ -21,7 +21,6 @@ +@@ -20,7 +20,6 @@ #include "chrome/test/base/testing_profile.h" #include "chrome/test/base/testing_profile_manager.h" #include "components/safe_browsing/core/common/proto/csd.pb.h" @@ -2232,7 +2243,7 @@ #include "components/signin/public/identity_manager/account_info.h" #include "components/signin/public/identity_manager/accounts_mutator.h" #include "components/signin/public/identity_manager/identity_manager.h" -@@ -193,25 +192,11 @@ void AccountsPolicyManager::Initialize() +@@ -197,25 +196,11 @@ void AccountsPolicyManager::Initialize() EnsurePrimaryAccountAllowedForProfile( profile_, signin_metrics::ProfileSignout::kSigninNotAllowedOnProfileInit); @@ -2258,7 +2269,7 @@ if (identity_manager->AreRefreshTokensLoaded()) { OnRefreshTokensLoaded(); } -@@ -220,7 +205,6 @@ void AccountsPolicyManager::Initialize() +@@ -224,7 +209,6 @@ void AccountsPolicyManager::Initialize() void AccountsPolicyManager::Shutdown() { profile_pref_change_registrar_.RemoveAll(); local_state_pref_registrar_.RemoveAll(); @@ -2288,7 +2299,7 @@ #include "components/signin/public/base/signin_switches.h" #include "components/signin/public/identity_manager/account_managed_status_finder.h" #include "components/signin/public/identity_manager/accounts_cookie_mutator.h" -@@ -115,11 +114,6 @@ class ProfileDataRemover : public conten +@@ -109,11 +108,6 @@ class ProfileDataRemover : public conten // All the Profile data has been wiped. Clear the last signed in username // as well, so that the next signin doesn't trigger the account // change dialog. @@ -2310,7 +2321,7 @@ #include "components/signin/public/base/signin_switches.h" #include "content/public/browser/network_service_instance.h" -@@ -110,7 +109,4 @@ BoundSessionCookieRefreshServiceFactory: +@@ -108,7 +107,4 @@ BoundSessionCookieRefreshServiceFactory: void BoundSessionCookieRefreshServiceFactory::RegisterProfilePrefs( user_prefs::PrefRegistrySyncable* registry) { BoundSessionParamsStorage::RegisterProfilePrefs(registry); @@ -2376,7 +2387,7 @@ #include "components/user_manager/user.h" --- a/chrome/browser/signin/dice_browsertest.cc +++ b/chrome/browser/signin/dice_browsertest.cc -@@ -83,7 +83,6 @@ +@@ -86,7 +86,6 @@ #include "components/signin/public/base/signin_buildflags.h" #include "components/signin/public/base/signin_client.h" #include "components/signin/public/base/signin_metrics.h" @@ -2421,7 +2432,7 @@ } std::optional -@@ -1563,16 +1554,6 @@ void DiceWebSigninInterceptor:: +@@ -1568,16 +1559,6 @@ void DiceWebSigninInterceptor:: g_browser_process->browser_policy_connector(), g_browser_process->system_network_context_manager() ->GetSharedURLLoaderFactory()); @@ -2448,7 +2459,7 @@ #include "components/signin/public/base/signin_switches.h" #include "components/signin/public/identity_manager/account_info.h" #include "components/signin/public/identity_manager/identity_manager.h" -@@ -208,7 +207,7 @@ void HeaderModificationDelegateImpl::Pro +@@ -209,7 +208,7 @@ void HeaderModificationDelegateImpl::Pro // the sync feature is enabled, which in particular triggers a // confirmation web page on signout. sync_service && sync_service->IsSyncFeatureEnabled(), @@ -2745,7 +2756,7 @@ } #endif // !BUILDFLAG(IS_CHROMEOS) -@@ -467,59 +438,7 @@ void EnableHistorySync(syncer::SyncServi +@@ -558,59 +529,7 @@ bool IsValidAccessPointForHistoryOptinSc } bool ShouldShowAvatarSyncPromo(Profile* profile) { @@ -2856,8 +2867,8 @@ #include "components/signin/public/identity_manager/primary_account_mutator.h" --- a/chrome/browser/site_protection/site_familiarity_utils.cc +++ b/chrome/browser/site_protection/site_familiarity_utils.cc -@@ -6,7 +6,6 @@ - +@@ -9,7 +9,6 @@ + #include "components/content_settings/core/browser/host_content_settings_map.h" #include "components/content_settings/core/common/features.h" #include "components/prefs/pref_service.h" -#include "components/safe_browsing/core/common/safe_browsing_prefs.h" @@ -2916,7 +2927,7 @@ --- a/chrome/browser/ui/autofill/payments/save_card_bubble_controller_impl.cc +++ b/chrome/browser/ui/autofill/payments/save_card_bubble_controller_impl.cc @@ -47,7 +47,6 @@ - #include "components/autofill/core/common/autofill_features.h" + #include "components/autofill/core/common/autofill_constants.h" #include "components/autofill/core/common/autofill_payments_features.h" #include "components/signin/public/base/signin_buildflags.h" -#include "components/signin/public/base/signin_pref_names.h" @@ -2925,7 +2936,7 @@ #include "components/sync/service/sync_service.h" --- a/chrome/browser/ui/browser_command_controller.cc +++ b/chrome/browser/ui/browser_command_controller.cc -@@ -94,7 +94,6 @@ +@@ -95,7 +95,6 @@ #include "components/sessions/core/tab_restore_service.h" #include "components/signin/public/base/signin_buildflags.h" #include "components/signin/public/base/signin_metrics.h" @@ -3047,11 +3058,11 @@ #include "chrome/common/chrome_features.h" #include "components/prefs/pref_service.h" -#include "components/safe_browsing/core/common/safe_browsing_prefs.h" - #include "components/safety_check/features.h" #if BUILDFLAG(IS_ANDROID) -@@ -139,14 +138,6 @@ SafetyHubMenuNotificationService::Safety - } + #include "chrome/browser/ui/safety_hub/password_status_check_result_android.h" +@@ -145,14 +144,6 @@ SafetyHubMenuNotificationService::Safety + stored_notifications); #endif // !BUILDFLAG(IS_ANDROID) - // Listen for changes to the Safe Browsing pref to accommodate the trigger @@ -3216,7 +3227,7 @@ #include "components/signin/public/base/signin_prefs.h" #include "components/signin/public/base/signin_switches.h" #include "components/signin/public/identity_manager/account_info.h" -@@ -355,15 +354,6 @@ void SigninViewController::SignoutOrReau +@@ -351,15 +350,6 @@ void SigninViewController::SignoutOrReau &SigninViewController::SignoutOrReauthWithPromptWithUnsyncedDataTypes, weak_ptr_factory_.GetWeakPtr(), reauth_access_point, profile_signout_source, token_signout_source); @@ -3232,7 +3243,7 @@ // Dice users don't see the prompt, pass empty datatypes. std::move(signout_prompt_with_datatypes) .Run(absl::flat_hash_map()); -@@ -728,9 +718,7 @@ void SigninViewController::SignoutOrReau +@@ -724,9 +714,7 @@ void SigninViewController::SignoutOrReau bool sign_out_immediately = unsynced_datatypes.empty() && needs_reauth; // Do not show the dialog to users with implicit signin. @@ -3288,7 +3299,7 @@ void SetFirstRunFinished(FirstRunService::FinishedReason reason) { --- a/chrome/browser/ui/toolbar/app_menu_model.cc +++ b/chrome/browser/ui/toolbar/app_menu_model.cc -@@ -112,7 +112,6 @@ +@@ -114,7 +114,6 @@ #include "components/profile_metrics/browser_profile_type.h" #include "components/saved_tab_groups/public/features.h" #include "components/signin/public/base/signin_metrics.h" @@ -3296,7 +3307,7 @@ #include "components/signin/public/identity_manager/identity_manager.h" #include "components/strings/grit/components_strings.h" #include "components/sync/base/features.h" -@@ -602,68 +601,7 @@ int ProfileSubMenuModel::GetAndIncrement +@@ -605,101 +604,7 @@ int ProfileSubMenuModel::GetAndIncrement } bool ProfileSubMenuModel::BuildSyncSection() { @@ -3319,28 +3330,61 @@ - - // First, check for sync errors. They may exist even if sync-the-feature is - // disabled and only sync-the-transport is running. -- const std::optional error = -- GetAvatarSyncErrorType(profile_); -- if (error.has_value()) { -- if (error == AvatarSyncErrorType::kSyncPaused) { -- if (identity_manager->HasPrimaryAccount(signin::ConsentLevel::kSync)) { -- // If sync is paused the menu item will be specific to the paused error. -- AddItemWithStringIdAndVectorIcon( -- this, IDC_SHOW_SIGNIN_WHEN_PAUSED, IDS_PROFILE_ROW_SIGN_IN_AGAIN, -- vector_icons::kSyncOffChromeRefreshIcon); -- } else { -- AddItemWithStringIdAndVectorIcon( -- this, IDC_SHOW_SIGNIN_WHEN_PAUSED, -- IDS_PROFILES_VERIFY_ACCOUNT_BUTTON, -- vector_icons::kAccountCircleOffChromeRefreshIcon); +- syncer::SyncService* service = SyncServiceFactory::GetForProfile(profile_); +- if (service) { +- const syncer::SyncService::UserActionableError error = +- service->GetUserActionableError(); +- if (error != syncer::SyncService::UserActionableError::kNone) { +- int command_id = 0; +- const gfx::VectorIcon* icon = nullptr; +- int button_string_id = +- GetSyncErrorButtonStringId(error, /*support_title_case=*/true); +- switch (error) { +- case syncer::SyncService::UserActionableError::kNone: +- NOTREACHED(); +- case syncer::SyncService::UserActionableError::kSignInNeedsUpdate: +- command_id = IDC_SHOW_SIGNIN_WHEN_PAUSED; +- if (identity_manager->HasPrimaryAccount( +- signin::ConsentLevel::kSync)) { +- button_string_id = IDS_SYNC_RELOGIN_BUTTON_MAYBE_TITLE_CASE; +- icon = &vector_icons::kSyncOffChromeRefreshIcon; +- } else { +- // Merge this case with the others below once ConsentLevel::kSync is +- // gone. +- icon = &vector_icons::kAccountCircleOffChromeRefreshIcon; +- } +- break; +- case syncer::SyncService::UserActionableError:: +- kNeedsTrustedVaultKeyForPasswords: +- case syncer::SyncService::UserActionableError:: +- kTrustedVaultRecoverabilityDegradedForPasswords: +- case syncer::SyncService::UserActionableError:: +- kTrustedVaultRecoverabilityDegradedForEverything: +- case syncer::SyncService::UserActionableError:: +- kNeedsTrustedVaultKeyForEverything: +- command_id = IDC_SHOW_SIGNIN_WHEN_PAUSED; +- icon = &vector_icons::kAccountCircleOffChromeRefreshIcon; +- break; +- case syncer::SyncService::UserActionableError::kNeedsClientUpgrade: +- command_id = IDC_UPGRADE_DIALOG; +- icon = &vector_icons::kErrorOutlineIcon; +- break; +- case syncer::SyncService::UserActionableError::kNeedsPassphrase: +- command_id = IDC_SHOW_SYNC_PASSPHRASE_DIALOG; +- icon = &vector_icons::kErrorOutlineIcon; +- break; +- case syncer::SyncService::UserActionableError:: +- kNeedsSettingsConfirmation: +- case syncer::SyncService::UserActionableError::kUnrecoverableError: +- // Only shown for "Sync-the-feature". +- command_id = IDC_SHOW_SYNC_SETTINGS; +- icon = &vector_icons::kErrorOutlineIcon; +- break; - } -- } else { -- // All remaining errors will have the same menu item. -- AddItemWithStringIdAndVectorIcon( -- this, IDC_SHOW_SYNC_SETTINGS, IDS_PROFILE_ROW_SYNC_ERROR_MESSAGE, -- vector_icons::kSyncProblemChromeRefreshIcon); +- AddItemWithStringIdAndVectorIcon(this, command_id, button_string_id, +- *icon); +- return true; - } -- return true; - } - - if (identity_manager->HasPrimaryAccount(signin::ConsentLevel::kSync)) { @@ -3367,7 +3411,7 @@ void ProfileSubMenuModel::BuildGuestProfileRow(Profile* profile) { --- a/chrome/browser/ui/views/download/bubble/download_toolbar_ui_controller.cc +++ b/chrome/browser/ui/views/download/bubble/download_toolbar_ui_controller.cc -@@ -45,7 +45,6 @@ +@@ -46,7 +46,6 @@ #include "components/feature_engagement/public/feature_constants.h" #include "components/safe_browsing/core/common/features.h" #include "components/safe_browsing/core/common/safe_browsing_policy_handler.h" @@ -3395,7 +3439,7 @@ #include "components/signin/public/base/signin_prefs.h" #include "components/signin/public/base/signin_switches.h" #include "components/signin/public/identity_manager/tribool.h" -@@ -450,49 +449,6 @@ void AvatarToolbarButton::MaybeShowSuper +@@ -451,49 +450,6 @@ void AvatarToolbarButton::MaybeShowSuper } void AvatarToolbarButton::MaybeShowSignInBenefitsIPH() { @@ -3445,32 +3489,6 @@ } #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -626,25 +582,6 @@ void AvatarToolbarButton::OnErrorStateOf - const CoreAccountInfo& account_info, - const GoogleServiceAuthError& error, - signin_metrics::SourceForRefreshTokenOperation token_operation_source) { -- Profile* profile = browser_->profile(); -- CHECK(profile); -- PrefService* prefs = profile->GetPrefs(); -- CHECK(prefs); -- signin::IdentityManager* identity_manager = -- IdentityManagerFactory::GetForProfile(profile); -- CHECK(identity_manager); -- if (base::FeatureList::IsEnabled( -- syncer::kReplaceSyncPromosWithSignInPromos) && -- prefs->GetBoolean(prefs::kExplicitBrowserSignin) && -- account_info == identity_manager->GetPrimaryAccountInfo( -- signin::ConsentLevel::kSignin) && -- !identity_manager->HasPrimaryAccount(signin::ConsentLevel::kSync) && -- error.state() == -- GoogleServiceAuthError::State::INVALID_GAIA_CREDENTIALS && -- token_operation_source == signin_metrics::SourceForRefreshTokenOperation:: -- kDiceResponseHandler_Signout) { -- MaybeShowWebSignoutIPH(account_info.gaia); -- } - } - - void AvatarToolbarButton::AfterPropertyChange(const void* key, --- a/chrome/browser/ui/views/profiles/avatar_toolbar_button_state_manager.cc +++ b/chrome/browser/ui/views/profiles/avatar_toolbar_button_state_manager.cc @@ -59,7 +59,6 @@ @@ -3483,7 +3501,7 @@ #include "components/signin/public/identity_manager/account_info.h" --- a/chrome/browser/ui/views/profiles/profile_menu_view.cc +++ b/chrome/browser/ui/views/profiles/profile_menu_view.cc -@@ -81,7 +81,6 @@ +@@ -82,7 +82,6 @@ #include "components/signin/core/browser/signin_error_controller.h" #include "components/signin/public/base/consent_level.h" #include "components/signin/public/base/signin_metrics.h" @@ -3491,7 +3509,7 @@ #include "components/signin/public/base/signin_switches.h" #include "components/signin/public/identity_manager/account_info.h" #include "components/signin/public/identity_manager/identity_manager.h" -@@ -957,9 +956,7 @@ void ProfileMenuView::MaybeBuildChromeAc +@@ -966,9 +965,7 @@ void ProfileMenuView::MaybeBuildChromeAc // Show the settings button when signed in to Chrome or to the web, or if // signin is disallowed. const bool should_show_settings_button = @@ -3502,7 +3520,7 @@ if (!should_show_settings_button) { return; } -@@ -981,25 +978,6 @@ void ProfileMenuView::MaybeBuildChromeAc +@@ -990,25 +987,6 @@ void ProfileMenuView::MaybeBuildChromeAc } void ProfileMenuView::MaybeBuildGoogleServicesSettingsButton() { @@ -3530,10 +3548,10 @@ void ProfileMenuView::MaybeBuildManageGoogleAccountButton() { --- a/chrome/browser/ui/views/profiles/profile_menu_view_browsertest.cc +++ b/chrome/browser/ui/views/profiles/profile_menu_view_browsertest.cc -@@ -96,7 +96,6 @@ - #include "components/policy/core/common/management/scoped_management_service_override_for_testing.h" +@@ -98,7 +98,6 @@ #include "components/prefs/pref_service.h" #include "components/signin/public/base/consent_level.h" + #include "components/signin/public/base/signin_metrics.h" -#include "components/signin/public/base/signin_pref_names.h" #include "components/signin/public/base/signin_switches.h" #include "components/signin/public/identity_manager/accounts_in_cookie_jar_info.h" @@ -3595,7 +3613,7 @@ --- a/chrome/browser/ui/views/toolbar/app_menu.cc +++ b/chrome/browser/ui/views/toolbar/app_menu.cc -@@ -61,7 +61,6 @@ +@@ -63,7 +63,6 @@ #include "chrome/grit/theme_resources.h" #include "components/prefs/pref_service.h" #include "components/saved_tab_groups/public/features.h" @@ -3603,7 +3621,7 @@ #include "components/signin/public/identity_manager/account_info.h" #include "components/zoom/page_zoom.h" #include "components/zoom/zoom_controller.h" -@@ -386,68 +385,6 @@ void AddSignedInChipToProfileMenuItem( +@@ -388,68 +387,6 @@ void AddSignedInChipToProfileMenuItem( const int horizontal_padding, std::vector& profile_menu_subscription_list) { @@ -3682,7 +3700,7 @@ #include "components/signin/public/identity_manager/identity_manager.h" #include "components/user_education/common/ntp_promo/ntp_promo_registry.h" #include "components/user_education/common/ntp_promo/ntp_promo_specification.h" -@@ -47,34 +46,7 @@ Profile* GetProfile(ContextPtr context) +@@ -48,34 +47,7 @@ Profile* GetProfile(ContextPtr context) NtpPromoSpecification::Eligibility CheckSignInPromoEligibility( ContextPtr context) { @@ -3772,7 +3790,7 @@ #include "content/public/browser/download_item_utils.h" --- a/chrome/browser/ui/webui/history/history_ui.cc +++ b/chrome/browser/ui/webui/history/history_ui.cc -@@ -57,7 +57,6 @@ +@@ -56,7 +56,6 @@ #include "components/page_image_service/image_service.h" #include "components/page_image_service/image_service_handler.h" #include "components/prefs/pref_service.h" @@ -3850,7 +3868,7 @@ #include "components/signin/public/base/signin_prefs.h" #include "components/signin/public/base/signin_switches.h" #include "components/signin/public/identity_manager/account_info.h" -@@ -415,10 +414,6 @@ void PeopleHandler::OnJavascriptAllowed( +@@ -420,10 +419,6 @@ void PeopleHandler::OnJavascriptAllowed( PrefService* prefs = profile_->GetPrefs(); profile_pref_registrar_ = std::make_unique(); profile_pref_registrar_->Init(prefs); @@ -3863,17 +3881,17 @@ *profile_pref_registrar_, --- a/chrome/browser/ui/webui/settings/safety_hub_handler.cc +++ b/chrome/browser/ui/webui/settings/safety_hub_handler.cc -@@ -50,7 +50,6 @@ +@@ -52,7 +52,6 @@ #include "components/password_manager/core/common/password_manager_pref_names.h" #include "components/permissions/constants.h" #include "components/safe_browsing/core/common/features.h" -#include "components/safe_browsing/core/common/safe_browsing_prefs.h" + #include "components/sharing_message/features.h" #include "components/signin/public/base/consent_level.h" #include "components/signin/public/identity_manager/identity_manager.h" - #include "components/site_engagement/content/site_engagement_service.h" --- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc +++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc -@@ -87,7 +87,6 @@ +@@ -86,7 +86,6 @@ #include "components/regional_capabilities/regional_capabilities_service.h" #include "components/safe_browsing/core/common/features.h" #include "components/safe_browsing/core/common/hashprefix_realtime/hash_realtime_utils.h" @@ -3881,7 +3899,7 @@ #include "components/saved_tab_groups/public/features.h" #include "components/signin/public/base/signin_buildflags.h" #include "components/strings/grit/components_branded_strings.h" -@@ -3545,11 +3544,6 @@ void AddSiteSettingsStrings(content::Web +@@ -3708,11 +3707,6 @@ void AddSiteSettingsStrings(content::Web html_source->AddLocalizedStrings(kSensorsLocalizedStrings); html_source->AddBoolean( @@ -3895,7 +3913,7 @@ --- a/chrome/browser/ui/webui/settings/settings_ui.cc +++ b/chrome/browser/ui/webui/settings/settings_ui.cc -@@ -116,7 +116,6 @@ +@@ -118,7 +118,6 @@ #include "components/safe_browsing/core/common/features.h" #include "components/safe_browsing/core/common/hashprefix_realtime/hash_realtime_utils.h" #include "components/search_engines/template_url_service.h" @@ -3903,7 +3921,7 @@ #include "components/signin/public/base/signin_switches.h" #include "components/sync/base/features.h" #include "content/public/browser/url_data_source.h" -@@ -277,9 +276,7 @@ SettingsUI::SettingsUI(content::WebUI* w +@@ -280,9 +279,7 @@ SettingsUI::SettingsUI(content::WebUI* w AddSettingsPageUIHandler(std::make_unique()); #endif @@ -4320,7 +4338,7 @@ "value": ["searchSuggestEnabled", {"type":"boolean"}], --- a/components/autofill/core/browser/data_manager/addresses/address_data_manager.cc +++ b/components/autofill/core/browser/data_manager/addresses/address_data_manager.cc -@@ -35,7 +35,6 @@ +@@ -36,7 +36,6 @@ #include "components/autofill/core/common/autofill_prefs.h" #include "components/autofill/core/common/dense_set.h" #include "components/prefs/pref_service.h" @@ -4328,7 +4346,7 @@ #include "components/signin/public/base/signin_switches.h" #include "components/sync/base/data_type.h" #include "components/sync/base/features.h" -@@ -364,13 +363,7 @@ void AddressDataManager::RemoveLocalProf +@@ -363,13 +362,7 @@ void AddressDataManager::RemoveLocalProf } bool AddressDataManager::IsEligibleForAddressAccountStorage() const { @@ -4342,7 +4360,7 @@ } void AddressDataManager::MigrateProfileToAccount( -@@ -654,40 +647,7 @@ bool AddressDataManager::IsAutofillUserS +@@ -670,40 +663,7 @@ bool AddressDataManager::IsAutofillUserS } bool AddressDataManager::IsAutofillSyncToggleAvailable() const { @@ -4393,7 +4411,7 @@ #include "components/strings/grit/components_strings.h" #include "components/sync/base/features.h" #include "components/sync/base/user_selectable_type.h" -@@ -175,12 +174,6 @@ bool IsCreditCardUploadEnabled( +@@ -177,12 +176,6 @@ bool IsCreditCardUploadEnabled( // TODO(crbug.com/40066949): Simplify once IsSyncFeatureActive() is deleted // from the codebase. bool addresses_in_transport_mode = true; @@ -4406,7 +4424,7 @@ bool syncing_or_addresses_in_transport_mode = sync_service->IsSyncFeatureActive() || addresses_in_transport_mode; if (syncing_or_addresses_in_transport_mode && -@@ -294,10 +287,6 @@ bool IsUserOptedInWalletSyncTransport(co +@@ -296,10 +289,6 @@ bool IsUserOptedInWalletSyncTransport(co // On mobile, no specific opt-in is required. return true; #else @@ -4419,7 +4437,7 @@ std::string account_hash = --- a/components/browser_sync/BUILD.gn +++ b/components/browser_sync/BUILD.gn -@@ -15,8 +15,6 @@ static_library("browser_sync") { +@@ -14,8 +14,6 @@ static_library("browser_sync") { "sync_engine_factory_impl.h", "sync_internals_message_handler.cc", "sync_internals_message_handler.h", @@ -4602,7 +4620,7 @@ void CollaborationServiceImpl::RefreshServiceStatus() { --- a/components/commerce/core/shopping_service.cc +++ b/components/commerce/core/shopping_service.cc -@@ -62,7 +62,6 @@ +@@ -63,7 +63,6 @@ #include "components/search/ntp_features.h" #include "components/session_proto_db/session_proto_storage.h" #include "components/sessions/core/tab_restore_service.h" @@ -4610,7 +4628,7 @@ #include "components/sync/base/features.h" #include "components/sync/service/sync_service.h" #include "components/unified_consent/url_keyed_data_collection_consent_helper.h" -@@ -164,16 +163,6 @@ class ProductSpecificationsUrlObserver +@@ -165,16 +164,6 @@ class ProductSpecificationsUrlObserver // This function can be deleted once the Sync feature is removed. signin::ConsentLevel GetConsentLevelForEndpointFetchers( PrefService* pref_service) { @@ -4706,7 +4724,7 @@ #include "components/signin/public/identity_manager/access_token_fetcher.h" #include "components/signin/public/identity_manager/access_token_info.h" #include "components/signin/public/identity_manager/identity_manager.h" -@@ -228,14 +227,7 @@ bool LeakDetectionCheck::CanStartLeakChe +@@ -227,14 +226,7 @@ bool LeakDetectionCheck::CanStartLeakChe const PrefService& prefs, const GURL& form_url, std::unique_ptr logger) { @@ -5308,7 +5326,7 @@ #include "components/sessions/core/session_id.h" #include "components/signin/public/identity_manager/account_info.h" #include "services/network/public/cpp/shared_url_loader_factory.h" -@@ -149,10 +148,6 @@ class PasswordProtectionServiceBase : pu +@@ -154,10 +153,6 @@ class PasswordProtectionServiceBase : pu // Returns if the warning UI is enabled. bool IsWarningEnabled(ReusedPasswordAccountType password_type); @@ -5450,7 +5468,7 @@ } void SafeBrowsingMetricsCollector::Shutdown() { -@@ -74,16 +67,6 @@ void SafeBrowsingMetricsCollector::Shutd +@@ -82,16 +75,6 @@ void SafeBrowsingMetricsCollector:: } void SafeBrowsingMetricsCollector::StartLogging() { @@ -5467,7 +5485,7 @@ } void SafeBrowsingMetricsCollector::LogMetricsAndScheduleNextLogging() { -@@ -92,77 +75,10 @@ void SafeBrowsingMetricsCollector::LogMe +@@ -100,77 +83,10 @@ void SafeBrowsingMetricsCollector::LogMe MaybeLogDailyEsbProtegoPingSent(); RemoveOldEventsFromPref(); @@ -5545,7 +5563,7 @@ } void SafeBrowsingMetricsCollector::ScheduleNextLoggingAfterInterval( -@@ -174,75 +90,16 @@ void SafeBrowsingMetricsCollector::Sched +@@ -182,75 +98,16 @@ void SafeBrowsingMetricsCollector::Sched } void SafeBrowsingMetricsCollector::LogDailyOptInMetrics() { @@ -5621,7 +5639,7 @@ } void SafeBrowsingMetricsCollector::AddBypassEventToPref( -@@ -285,15 +142,7 @@ std::optional SafeBrowsingMe +@@ -293,15 +150,7 @@ std::optional SafeBrowsingMe std::optional SafeBrowsingMetricsCollector::GetLatestEventTimestamp( EventTypeFilter event_type_filter) { // Events are not logged when Safe Browsing is disabled. @@ -5637,7 +5655,7 @@ } std::optional -@@ -305,45 +154,15 @@ SafeBrowsingMetricsCollector::GetLatestS +@@ -313,45 +162,15 @@ SafeBrowsingMetricsCollector::GetLatestS void SafeBrowsingMetricsCollector::AddSafeBrowsingEventAndUserStateToPref( UserState user_state, EventType event_type) { @@ -5684,7 +5702,7 @@ } std::optional -@@ -470,22 +289,6 @@ int SafeBrowsingMetricsCollector::GetEve +@@ -478,22 +297,6 @@ int SafeBrowsingMetricsCollector::GetEve }); } @@ -5717,7 +5735,7 @@ #include "components/safe_browsing/core/common/utils.h" #include "components/signin/public/identity_manager/access_token_info.h" #include "components/signin/public/identity_manager/identity_manager.h" -@@ -240,15 +239,6 @@ TailoredSecurityService::TailoredSecurit +@@ -241,15 +240,6 @@ TailoredSecurityService::TailoredSecurit : identity_manager_(identity_manager), sync_service_(sync_service), prefs_(prefs) { @@ -5733,7 +5751,7 @@ } TailoredSecurityService::~TailoredSecurityService() { -@@ -418,26 +408,6 @@ void TailoredSecurityService::MaybeNotif +@@ -419,26 +409,6 @@ void TailoredSecurityService::MaybeNotif return; } @@ -5813,7 +5831,7 @@ } // namespace safe_browsing --- a/components/safe_browsing/core/common/BUILD.gn +++ b/components/safe_browsing/core/common/BUILD.gn -@@ -6,22 +6,8 @@ import("//build/config/features.gni") +@@ -5,22 +5,8 @@ import("//components/safe_browsing/buildflags.gni") import("//mojo/public/tools/bindings/mojom.gni") @@ -5994,13 +6012,17 @@ --- a/components/safety_check/safety_check.cc +++ b/components/safety_check/safety_check.cc -@@ -4,26 +4,9 @@ +@@ -4,8 +4,6 @@ #include "components/safety_check/safety_check.h" -#include "components/safe_browsing/core/common/safe_browsing_prefs.h" - - namespace safety_check { + namespace { + + const base::TimeDelta kUnusedSitePermissionsRevocationCleanUpThreshold = +@@ -20,21 +18,6 @@ base::TimeDelta GetUnusedSitePermissions + } SafeBrowsingStatus CheckSafeBrowsing(PrefService* pref_service) { - const PrefService::Preference* enabled_pref = @@ -6379,7 +6401,7 @@ #include "components/signin/public/identity_manager/account_capabilities.h" #include "components/signin/public/identity_manager/account_info.h" #include "components/signin/public/identity_manager/tribool.h" -@@ -194,11 +193,6 @@ AccountTrackerService::~AccountTrackerSe +@@ -188,11 +187,6 @@ AccountTrackerService::~AccountTrackerSe // static void AccountTrackerService::RegisterPrefs(PrefRegistrySimple* registry) { @@ -6391,7 +6413,7 @@ } void AccountTrackerService::Initialize(PrefService* pref_service, -@@ -552,14 +546,12 @@ AccountTrackerService::ComputeNewMigrati +@@ -546,14 +540,12 @@ AccountTrackerService::ComputeNewMigrati void AccountTrackerService::SetMigrationState(AccountIdMigrationState state) { DCHECK(state != MIGRATION_DONE || AreAllAccountsMigrated()) << "state: " << state << ", accounts = " << AccountsToString(accounts_); @@ -6407,7 +6429,7 @@ } #endif // BUILDFLAG(IS_CHROMEOS) -@@ -619,27 +611,6 @@ void AccountTrackerService::OnAccountIma +@@ -613,27 +605,6 @@ void AccountTrackerService::OnAccountIma const CoreAccountId& account_id, const std::string& image_url_with_size, bool success) { @@ -6435,7 +6457,55 @@ } void AccountTrackerService::RemoveAccountImageFromDisk( -@@ -652,176 +623,9 @@ void AccountTrackerService::RemoveAccoun +@@ -648,182 +619,37 @@ void AccountTrackerService::RemoveAccoun + AccountCapabilities AccountTrackerService::LoadAccountCapabilities( + const base::Value::Dict& dict) { + AccountCapabilities capabilities; +- for (std::string_view name : +- AccountCapabilities::GetSupportedAccountCapabilityNames()) { +- signin::Tribool state = FindAccountCapabilityState(dict, name); +- if (state != signin::Tribool::kUnknown) { +- capabilities.capabilities_map_[std::string(name)] = +- (state == signin::Tribool::kTrue); +- } +- } + return capabilities; + } + + AccountInfo AccountTrackerService::LoadAccountInfoFromDict( + const base::Value::Dict& dict) { + AccountInfo account_info; +- std::string gaia_id_string; +- GetString(dict, kAccountGaiaKey, gaia_id_string); +- account_info.gaia = GaiaId(gaia_id_string); +- +- GetString(dict, kAccountEmailKey, account_info.email); +- GetString(dict, kAccountHostedDomainKey, account_info.hosted_domain); +- GetString(dict, kAccountFullNameKey, account_info.full_name); +- GetString(dict, kAccountGivenNameKey, account_info.given_name); +- GetString(dict, kAccountLocaleKey, account_info.locale); +- GetString(dict, kAccountPictureURLKey, account_info.picture_url); +- GetString(dict, kLastDownloadedImageURLWithSizeKey, +- account_info.last_downloaded_image_url_with_size); +- +- account_info.is_child_account = +- ParseTribool(dict.FindInt(kAccountChildAttributeKey)); +- +- std::optional is_under_advanced_protection = +- dict.FindBool(kAdvancedProtectionAccountStatusKey); +- if (is_under_advanced_protection.has_value()) { +- account_info.is_under_advanced_protection = +- is_under_advanced_protection.value(); +- } +- +- std::optional access_point = dict.FindInt(kAccountAccessPoint); +- if (access_point.has_value()) { +- account_info.access_point = +- static_cast(access_point.value()); +- } +- +- account_info.capabilities.UpdateWith(this->LoadAccountCapabilities(dict)); + return account_info; } void AccountTrackerService::LoadFromPrefs() { @@ -6467,65 +6537,8 @@ - CoreAccountId account_id = CoreAccountId::FromString(*account_key); - StartTrackingAccount(account_id); - AccountInfo& account_info = accounts_[account_id]; -- -- std::string gaia_id_string; -- GetString(*dict, kAccountGaiaKey, gaia_id_string); -- account_info.gaia = GaiaId(gaia_id_string); -- -- GetString(*dict, kAccountEmailKey, account_info.email); -- GetString(*dict, kAccountHostedDomainKey, account_info.hosted_domain); -- GetString(*dict, kAccountFullNameKey, account_info.full_name); -- GetString(*dict, kAccountGivenNameKey, account_info.given_name); -- GetString(*dict, kAccountLocaleKey, account_info.locale); -- GetString(*dict, kAccountPictureURLKey, account_info.picture_url); -- GetString(*dict, kLastDownloadedImageURLWithSizeKey, -- account_info.last_downloaded_image_url_with_size); -- -- account_info.is_child_account = -- ParseTribool(dict->FindInt(kAccountChildAttributeKey)); -- -- std::optional is_under_advanced_protection = -- dict->FindBool(kAdvancedProtectionAccountStatusKey); -- if (is_under_advanced_protection.has_value()) { -- account_info.is_under_advanced_protection = -- is_under_advanced_protection.value(); -- } -- -- std::optional access_point = dict->FindInt(kAccountAccessPoint); -- if (access_point.has_value()) { -- account_info.access_point = -- static_cast(access_point.value()); -- } -- -- if (std::optional deprecated_can_offer_extended_chrome_sync_promos = -- dict->FindIntByDottedPath( -- kDeprecatedCanOfferExtendedChromeSyncPromosPrefPath)) { -- // Migrate to Capability names based pref paths. -- ScopedListPrefUpdate update(pref_service_, prefs::kAccountInfo); -- base::Value::Dict& update_dict = (*update)[i].GetDict(); -- SetAccountCapabilityState( -- update_dict, -- kCanShowHistorySyncOptInsWithoutMinorModeRestrictionsCapabilityName, -- ParseTribool(deprecated_can_offer_extended_chrome_sync_promos)); -- update_dict.RemoveByDottedPath( -- kDeprecatedCanOfferExtendedChromeSyncPromosPrefPath); -- } -- -- for (std::string_view name : -- AccountCapabilities::GetSupportedAccountCapabilityNames()) { -- switch (FindAccountCapabilityState(*dict, name)) { -- case signin::Tribool::kUnknown: -- account_info.capabilities.capabilities_map_.erase(name); -- break; -- case signin::Tribool::kTrue: -- account_info.capabilities.capabilities_map_[std::string(name)] = true; -- break; -- case signin::Tribool::kFalse: -- account_info.capabilities.capabilities_map_[std::string(name)] = -- false; -- break; -- } -- } +- account_info = LoadAccountInfoFromDict(*dict); +- account_info.account_id = account_id; - - if (!account_info.gaia.empty()) { - NotifyAccountUpdated(account_info); @@ -6564,55 +6577,70 @@ - accounts_.size()); } - void AccountTrackerService::SaveToPrefs(const AccountInfo& account_info) { -- if (!pref_service_) { -- return; -- } -- -- base::Value::Dict* dict = nullptr; -- ScopedListPrefUpdate update(pref_service_, prefs::kAccountInfo); + base::Value::Dict* AccountTrackerService::FindOrCreateDictForAccount( + ScopedListPrefUpdate& update, + const CoreAccountId& account_id) { - for (base::Value& value : *update) { -- base::Value::Dict* maybe_dict = value.GetIfDict(); -- if (maybe_dict) { -- const std::string* account_key = maybe_dict->FindString(kAccountKeyKey); -- if (account_key && *account_key == account_info.account_id.ToString()) { -- dict = maybe_dict; -- break; +- base::Value::Dict* dict = value.GetIfDict(); +- if (dict) { +- const std::string* account_key = dict->FindString(kAccountKeyKey); +- if (account_key && *account_key == account_id.ToString()) { +- return dict; - } - } - } - -- if (!dict) { -- update->Append(base::Value::Dict()); -- dict = &update->back().GetDict(); -- dict->Set(kAccountKeyKey, account_info.account_id.ToString()); -- } -- -- dict->Set(kAccountEmailKey, account_info.email); -- dict->Set(kAccountGaiaKey, account_info.gaia.ToString()); -- dict->Set(kAccountHostedDomainKey, account_info.hosted_domain); -- dict->Set(kAccountFullNameKey, account_info.full_name); -- dict->Set(kAccountGivenNameKey, account_info.given_name); -- dict->Set(kAccountLocaleKey, account_info.locale); -- dict->Set(kAccountPictureURLKey, account_info.picture_url); -- dict->Set(kAccountChildAttributeKey, -- static_cast(account_info.is_child_account)); -- dict->Set(kAdvancedProtectionAccountStatusKey, -- account_info.is_under_advanced_protection); -- dict->Set(kAccountAccessPoint, static_cast(account_info.access_point)); + update->Append(base::Value::Dict()); + base::Value::Dict* new_dict = &update->back().GetDict(); +- new_dict->Set(kAccountKeyKey, account_id.ToString()); + return new_dict; + } + + void AccountTrackerService::UpdateDictForAccount( + base::Value::Dict& dict, + const AccountInfo& account_info) { +- dict.Set(kAccountEmailKey, account_info.email); +- dict.Set(kAccountGaiaKey, account_info.gaia.ToString()); +- dict.Set(kAccountHostedDomainKey, account_info.hosted_domain); +- dict.Set(kAccountFullNameKey, account_info.full_name); +- dict.Set(kAccountGivenNameKey, account_info.given_name); +- dict.Set(kAccountLocaleKey, account_info.locale); +- dict.Set(kAccountPictureURLKey, account_info.picture_url); +- dict.Set(kAccountChildAttributeKey, +- static_cast(account_info.is_child_account)); +- dict.Set(kAdvancedProtectionAccountStatusKey, +- account_info.is_under_advanced_protection); +- dict.Set(kAccountAccessPoint, static_cast(account_info.access_point)); - // |kLastDownloadedImageURLWithSizeKey| should only be set after the GAIA - // picture is successufly saved to disk. Otherwise, there is no guarantee that - // |kLastDownloadedImageURLWithSizeKey| matches the picture on disk. +- this->SaveAccountCapabilitiesToDict(dict, account_info.capabilities); + } + + void AccountTrackerService::SaveAccountCapabilitiesToDict( + base::Value::Dict& dict, + const AccountCapabilities& capabilities) { - for (std::string_view name : - AccountCapabilities::GetSupportedAccountCapabilityNames()) { - signin::Tribool capability_state = -- account_info.capabilities.GetCapabilityByName(name); -- SetAccountCapabilityState(*dict, name, capability_state); +- capabilities.GetCapabilityByName(name); +- SetAccountCapabilityState(dict, name, capability_state); - } } + void AccountTrackerService::SaveToPrefs(const AccountInfo& account_info) { +- if (!pref_service_) { +- return; +- } +- +- ScopedListPrefUpdate update(pref_service_, prefs::kAccountInfo); +- base::Value::Dict* dict = +- FindOrCreateDictForAccount(update, account_info.account_id); +- UpdateDictForAccount(*dict, account_info); + } + void AccountTrackerService::RemoveFromPrefs(const AccountInfo& account_info) { -@@ -829,15 +633,7 @@ void AccountTrackerService::RemoveFromPr +@@ -831,15 +657,7 @@ void AccountTrackerService::RemoveFromPr return; } @@ -7188,7 +7216,7 @@ #include "components/signin/public/identity_manager/account_info.h" --- a/components/signin/public/base/BUILD.gn +++ b/components/signin/public/base/BUILD.gn -@@ -153,8 +153,6 @@ component("signin_switches") { +@@ -154,8 +154,6 @@ component("signin_switches") { defines = [ "IS_SIGNIN_SWITCHES_IMPL" ] sources = [ @@ -7309,7 +7337,7 @@ #if BUILDFLAG(IS_WIN) #include "base/win/windows_version.h" -@@ -148,10 +147,6 @@ BASE_FEATURE(kEnableBoundSessionCredenti +@@ -159,10 +158,6 @@ BASE_FEATURE(kEnableBoundSessionCredenti #endif ); bool IsBoundSessionCredentialsEnabled(const PrefService* profile_prefs) { @@ -7320,7 +7348,7 @@ return base::FeatureList::IsEnabled(kEnableBoundSessionCredentials); } // Restricts the DBSC registration URL path to a single allowed string. -@@ -172,10 +167,6 @@ BASE_FEATURE(kEnableChromeRefreshTokenBi +@@ -183,10 +178,6 @@ BASE_FEATURE(kEnableChromeRefreshTokenBi #endif ); bool IsChromeRefreshTokenBindingEnabled(const PrefService* profile_prefs) { @@ -7524,7 +7552,7 @@ // kSyncedDefaultSearchProviderGUID = 49, (deprecated) kPrefForceTriggerTranslateCount = 50, // kPrefNeverPromptSitesDeprecated = 51, (deprecated) -@@ -254,10 +251,6 @@ constexpr auto kCommonSyncablePrefsAllow +@@ -271,10 +268,6 @@ constexpr auto kCommonSyncablePrefsAllow {payments::kCanMakePaymentEnabled, {syncable_prefs_ids::kCanMakePaymentEnabled, syncer::PREFERENCES, PrefSensitivity::kNone, MergeBehavior::kNone}}, @@ -7535,8 +7563,8 @@ {prefs::kCookieControlsMode, {syncable_prefs_ids::kCookieControlsMode, syncer::PREFERENCES, PrefSensitivity::kNone, MergeBehavior::kNone}}, -@@ -265,9 +258,6 @@ constexpr auto kCommonSyncablePrefsAllow - {syncable_prefs_ids::kCrossDeviceOmniboxIsInBottomPosition, +@@ -310,9 +303,6 @@ constexpr auto kCommonSyncablePrefsAllow + {syncable_prefs_ids::kCrossDeviceTipsHomeModuleEnabled, syncer::PREFERENCES, PrefSensitivity::kNone, MergeBehavior::kMergeableDict}}, - {prefs::kSafeBrowsingEnabled, diff --git a/patches/contrib/ungoogled-chromium/toggle-translation-via-switch.patch b/patches/contrib/ungoogled-chromium/toggle-translation-via-switch.patch index 27cd62e7e..71b98d00a 100644 --- a/patches/contrib/ungoogled-chromium/toggle-translation-via-switch.patch +++ b/patches/contrib/ungoogled-chromium/toggle-translation-via-switch.patch @@ -1,7 +1,7 @@ # Disables translation and removes the "Translate to" context menu when --translate-script-url flag is not set --- a/chrome/browser/renderer_context_menu/render_view_context_menu.cc +++ b/chrome/browser/renderer_context_menu/render_view_context_menu.cc -@@ -176,6 +176,7 @@ +@@ -180,6 +180,7 @@ #include "components/supervised_user/core/browser/supervised_user_preferences.h" #include "components/supervised_user/core/browser/supervised_user_service.h" #include "components/supervised_user/core/browser/supervised_user_url_filter.h" @@ -9,7 +9,7 @@ #include "components/translate/core/browser/translate_download_manager.h" #include "components/translate/core/browser/translate_manager.h" #include "components/translate/core/browser/translate_prefs.h" -@@ -2239,6 +2240,7 @@ void RenderViewContextMenu::AppendPageIt +@@ -2271,6 +2272,7 @@ void RenderViewContextMenu::AppendPageIt } if (CanTranslate(/*menu_logging=*/true)) { diff --git a/patches/helium/core/add-component-l10n-support.patch b/patches/helium/core/add-component-l10n-support.patch index fd44da161..c299439c6 100644 --- a/patches/helium/core/add-component-l10n-support.patch +++ b/patches/helium/core/add-component-l10n-support.patch @@ -189,7 +189,7 @@ base::FilePath GetComputedHashesPath(const base::FilePath& extension_path); --- a/extensions/common/file_util.cc +++ b/extensions/common/file_util.cc -@@ -593,6 +593,25 @@ MessageBundle* LoadMessageBundle( +@@ -597,6 +597,25 @@ MessageBundle* LoadMessageBundle( return message_bundle; } @@ -217,7 +217,7 @@ .Append(kVerifiedContentsFilename); --- a/extensions/browser/renderer_startup_helper.cc +++ b/extensions/browser/renderer_startup_helper.cc -@@ -666,6 +666,18 @@ void RendererStartupHelper::GetMessageBu +@@ -688,6 +688,18 @@ void RendererStartupHelper::GetMessageBu paths_to_load.push_back(imported_extension->path()); } diff --git a/patches/helium/core/add-component-managed-schema-support.patch b/patches/helium/core/add-component-managed-schema-support.patch index 2ad5dfab7..424d7a8ef 100644 --- a/patches/helium/core/add-component-managed-schema-support.patch +++ b/patches/helium/core/add-component-managed-schema-support.patch @@ -126,7 +126,7 @@ --- a/chrome/common/extensions/BUILD.gn +++ b/chrome/common/extensions/BUILD.gn -@@ -83,6 +83,7 @@ source_set("extensions") { +@@ -82,6 +82,7 @@ source_set("extensions") { "//components/url_formatter", "//components/version_info", "//extensions:extensions_resources", @@ -134,7 +134,7 @@ "//extensions/common", "//extensions/common:common_constants", "//extensions/common:core_api_provider", -@@ -90,6 +91,7 @@ source_set("extensions") { +@@ -89,6 +90,7 @@ source_set("extensions") { "//extensions/strings", "//ui/gfx/geometry", "//ui/message_center/public/cpp", diff --git a/patches/helium/core/add-default-browser-reject-button.patch b/patches/helium/core/add-default-browser-reject-button.patch index 9ae96e85e..c5c9fe7b4 100644 --- a/patches/helium/core/add-default-browser-reject-button.patch +++ b/patches/helium/core/add-default-browser-reject-button.patch @@ -14,7 +14,7 @@ inline constexpr char kDefaultBrowserLastDeclined[] = --- a/chrome/browser/ui/browser_ui_prefs.cc +++ b/chrome/browser/ui/browser_ui_prefs.cc -@@ -77,6 +77,8 @@ void RegisterBrowserPrefs(PrefRegistrySi +@@ -80,6 +80,8 @@ void RegisterBrowserPrefs(PrefRegistrySi registry->RegisterIntegerPref(prefs::kDefaultBrowserDeclinedCount, 0); registry->RegisterTimePref(prefs::kDefaultBrowserFirstShownTime, base::Time()); @@ -82,7 +82,7 @@ } bool DefaultBrowserInfoBarDelegate::Accept() { -@@ -155,6 +157,22 @@ bool DefaultBrowserInfoBarDelegate::Acce +@@ -156,6 +158,22 @@ bool DefaultBrowserInfoBarDelegate::Acce return ConfirmInfoBarDelegate::Accept(); } @@ -119,7 +119,7 @@ raw_ptr profile_; --- a/chrome/browser/ui/views/infobars/confirm_infobar.cc +++ b/chrome/browser/ui/views/infobars/confirm_infobar.cc -@@ -126,7 +126,9 @@ void ConfirmInfoBar::Layout(PassKey) { +@@ -137,7 +137,9 @@ void ConfirmInfoBar::Layout(PassKey) { } if constexpr (!views::PlatformStyle::kIsOkButtonLeading) { diff --git a/patches/helium/core/add-disable-ech-flag.patch b/patches/helium/core/add-disable-ech-flag.patch index 9818d7fd5..d999eb2ed 100644 --- a/patches/helium/core/add-disable-ech-flag.patch +++ b/patches/helium/core/add-disable-ech-flag.patch @@ -31,7 +31,7 @@ #include "base/containers/to_vector.h" #include "base/feature_list.h" #include "base/functional/bind.h" -@@ -263,6 +264,10 @@ network::mojom::SSLConfigPtr SSLConfigSe +@@ -265,6 +266,10 @@ network::mojom::SSLConfigPtr SSLConfigSe config->ech_enabled = ech_enabled_.GetValue(); diff --git a/patches/helium/core/add-middle-click-autoscroll-flag.patch b/patches/helium/core/add-middle-click-autoscroll-flag.patch index 3a21eb6cb..c4850e5bc 100644 --- a/patches/helium/core/add-middle-click-autoscroll-flag.patch +++ b/patches/helium/core/add-middle-click-autoscroll-flag.patch @@ -31,7 +31,7 @@ BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kReducedSystemInfo); --- a/third_party/blink/common/features.cc +++ b/third_party/blink/common/features.cc -@@ -23,6 +23,15 @@ BASE_FEATURE(kAudioContextJitter, +@@ -24,6 +24,15 @@ BASE_FEATURE(kAudioContextJitter, "AudioContextJitter", base::FEATURE_ENABLED_BY_DEFAULT); @@ -49,7 +49,7 @@ BASE_FEATURE(kRemoveClientHints, "RemoveClientHints", base::FEATURE_DISABLED_BY_DEFAULT); --- a/third_party/blink/renderer/core/exported/web_view_impl.cc +++ b/third_party/blink/renderer/core/exported/web_view_impl.cc -@@ -1905,9 +1905,9 @@ void WebView::ApplyWebPreferences(const +@@ -1903,9 +1903,9 @@ void WebView::ApplyWebPreferences(const prefs.default_maximum_page_scale_factor); #endif diff --git a/patches/helium/core/add-native-bangs.patch b/patches/helium/core/add-native-bangs.patch index 9bdca4883..8a76a5d35 100644 --- a/patches/helium/core/add-native-bangs.patch +++ b/patches/helium/core/add-native-bangs.patch @@ -111,7 +111,7 @@ #include "url/gurl.h" #include "url/origin.h" #include "url/third_party/mozilla/url_parse.h" -@@ -582,6 +587,7 @@ class TemplateURLService::PreLoadingProv +@@ -581,6 +586,7 @@ class TemplateURLService::PreLoadingProv // TemplateURLService --------------------------------------------------------- TemplateURLService::TemplateURLService( PrefService& prefs, @@ -119,7 +119,7 @@ search_engines::SearchEngineChoiceService& search_engine_choice_service, TemplateURLPrepopulateData::Resolver& prepopulate_data_resolver, std::unique_ptr search_terms_data, -@@ -594,6 +600,8 @@ TemplateURLService::TemplateURLService( +@@ -593,6 +599,8 @@ TemplateURLService::TemplateURLService( prepopulate_data_resolver_(prepopulate_data_resolver), search_terms_data_(std::move(search_terms_data)), web_data_service_(web_data_service), @@ -128,7 +128,7 @@ client_(std::move(client)), dsp_change_callback_(dsp_change_callback), pre_loading_providers_(std::make_unique()), -@@ -610,11 +618,13 @@ TemplateURLService::TemplateURLService( +@@ -609,11 +617,13 @@ TemplateURLService::TemplateURLService( TemplateURLService::TemplateURLService( PrefService& prefs, @@ -142,7 +142,7 @@ search_engine_choice_service, prepopulate_data_resolver, /*search_terms_data=*/std::make_unique(), -@@ -695,6 +705,10 @@ bool TemplateURLService::ShowInActivesLi +@@ -694,6 +704,10 @@ bool TemplateURLService::ShowInActivesLi } bool TemplateURLService::HiddenFromLists(const TemplateURL* t_url) const { @@ -153,7 +153,7 @@ switch (t_url->policy_origin()) { case TemplateURLData::PolicyOrigin::kDefaultSearchProvider: return false; -@@ -1524,11 +1538,37 @@ void TemplateURLService::Load() { +@@ -1527,11 +1541,37 @@ void TemplateURLService::Load() { if (web_data_service_) { load_handle_ = web_data_service_->GetKeywords(this); @@ -191,7 +191,7 @@ base::CallbackListSubscription TemplateURLService::RegisterOnLoadedCallback( base::OnceClosure callback) { return loaded_ ? base::CallbackListSubscription() -@@ -2512,6 +2552,13 @@ void TemplateURLService::Init() { +@@ -2515,6 +2555,13 @@ void TemplateURLService::Init() { &TemplateURLService::OnDefaultSearchProviderGUIDChanged, base::Unretained(this))); @@ -236,7 +236,7 @@ search_engines::SearchEngineChoiceService& search_engine_choice_service, TemplateURLPrepopulateData::Resolver& prepopulate_data_resolver, base::span initializers = {}); -@@ -479,6 +483,8 @@ class TemplateURLService final : public +@@ -482,6 +486,8 @@ class TemplateURLService final : public // OnTemplateURLServiceChanged. void Load(); @@ -245,7 +245,7 @@ // Registers a callback to be called when the service has loaded. // // If the service has already loaded, this function does nothing. -@@ -717,6 +723,8 @@ class TemplateURLService final : public +@@ -720,6 +726,8 @@ class TemplateURLService final : public void Init(); @@ -254,7 +254,7 @@ // Simulate a loaded `TemplateURLService`. void ApplyInitializersForTesting( base::span initializers); -@@ -919,6 +927,10 @@ class TemplateURLService final : public +@@ -922,6 +930,10 @@ class TemplateURLService final : public // Service used to store entries. scoped_refptr web_data_service_; @@ -565,7 +565,7 @@ + --- a/components/omnibox/browser/autocomplete_input.cc +++ b/components/omnibox/browser/autocomplete_input.cc -@@ -739,9 +739,9 @@ bool AutocompleteInput::HasHTTPSScheme(c +@@ -741,9 +741,9 @@ bool AutocompleteInput::HasHTTPSScheme(c // static AutocompleteInput::FeaturedKeywordMode AutocompleteInput::GetFeaturedKeywordMode(std::u16string_view text) { @@ -577,7 +577,7 @@ return FeaturedKeywordMode::kPrefix; return FeaturedKeywordMode::kFalse; } -@@ -909,6 +909,7 @@ std::u16string AutocompleteInput::Autoco +@@ -911,6 +911,7 @@ std::u16string AutocompleteInput::Autoco const std::u16string& input, bool trim_leading_whitespace, std::u16string* remaining_input) { @@ -585,7 +585,7 @@ // Find end of first token. The AutocompleteController has trimmed leading // whitespace, so we need not skip over that. const size_t first_white(input.find_first_of(base::kWhitespaceUTF16)); -@@ -917,6 +918,39 @@ std::u16string AutocompleteInput::Autoco +@@ -919,6 +920,39 @@ std::u16string AutocompleteInput::Autoco return input; // Only one token provided. } @@ -678,7 +678,7 @@ --- a/components/search_engines/template_url.cc +++ b/components/search_engines/template_url.cc -@@ -1693,6 +1693,8 @@ bool TemplateURL::IsBetterThanConflictin +@@ -1700,6 +1700,8 @@ bool TemplateURL::IsBetterThanConflictin : base::Time(), // Prefer engines that CANNOT be auto-replaced. !engine->safe_for_autoreplace(), @@ -724,7 +724,7 @@ COMPONENT_EXPORT(HELIUM) GURL GetDummyURL(); --- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc +++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc -@@ -1975,6 +1975,9 @@ void AddPrivacyStrings(content::WebUIDat +@@ -2125,6 +2125,9 @@ void AddPrivacyStrings(content::WebUIDat {"heliumServicesToggle", IDS_SETTINGS_HELIUM_SERVICES_TOGGLE}, {"heliumServicesToggleDescription", IDS_SETTINGS_HELIUM_SERVICES_TOGGLE_DESCRIPTION}, @@ -736,7 +736,7 @@ {"heliumExtProxyToggleDescription", --- a/chrome/app/settings_strings.grdp +++ b/chrome/app/settings_strings.grdp -@@ -1951,6 +1951,12 @@ +@@ -1981,6 +1981,12 @@ When enabled, Helium will proxy extension downloads and updates to protect your privacy. When disabled, downloading and updating extensions will not work. @@ -765,7 +765,7 @@ --- a/chrome/browser/ui/browser_ui_prefs.cc +++ b/chrome/browser/ui/browser_ui_prefs.cc -@@ -208,6 +208,7 @@ void RegisterBrowserUserPrefs(user_prefs +@@ -211,6 +211,7 @@ void RegisterBrowserUserPrefs(user_prefs { registry->RegisterBooleanPref(prefs::kHeliumServicesEnabled, true); @@ -775,7 +775,7 @@ registry->RegisterBooleanPref(prefs::kHeliumDidOnboarding, false); --- a/chrome/browser/extensions/api/settings_private/prefs_util.cc +++ b/chrome/browser/extensions/api/settings_private/prefs_util.cc -@@ -357,6 +357,8 @@ const PrefsUtil::TypedPrefMap& PrefsUtil +@@ -360,6 +360,8 @@ const PrefsUtil::TypedPrefMap& PrefsUtil settings_api::PrefType::kBoolean; (*s_allowlist)[::prefs::kHeliumExtProxyEnabled] = settings_api::PrefType::kBoolean; @@ -798,7 +798,7 @@ #endif // COMPONENTS_HELIUM_SERVICES_PREF_NAMES_H_ --- a/third_party/metrics_proto/omnibox_event.proto +++ b/third_party/metrics_proto/omnibox_event.proto -@@ -771,6 +771,8 @@ message OmniboxEventProto { +@@ -774,6 +774,8 @@ message OmniboxEventProto { // or tabbing to it. TOOLBELT = 9; // Select and activate a search shortcuts action // from the omnibox toolbelt. @@ -809,7 +809,7 @@ optional KeywordModeEntryMethod keyword_mode_entry_method = 20; --- a/chrome/browser/ui/omnibox/omnibox_edit_model.h +++ b/chrome/browser/ui/omnibox/omnibox_edit_model.h -@@ -268,6 +268,9 @@ class OmniboxEditModel { +@@ -300,6 +300,9 @@ class OmniboxEditModel { return !is_keyword_hint_ && !keyword_.empty(); } @@ -819,7 +819,7 @@ // Accepts the current keyword hint as a keyword. It always returns true for // caller convenience. |entry_method| indicates how the user entered // keyword mode. -@@ -647,6 +650,10 @@ class OmniboxEditModel { +@@ -655,6 +658,10 @@ class OmniboxEditModel { // triggering is enabled, false otherwise. bool AllowKeywordSpaceTriggering() const; @@ -832,7 +832,7 @@ // (assume "foo" is a keyword, | is the input caret, [] is selected text) --- a/chrome/browser/ui/omnibox/omnibox_edit_model.cc +++ b/chrome/browser/ui/omnibox/omnibox_edit_model.cc -@@ -832,6 +832,24 @@ void OmniboxEditModel::OpenSelectionForT +@@ -859,6 +859,24 @@ void OmniboxEditModel::OpenSelectionForT OpenSelection(popup_selection_, timestamp, disposition, via_keyboard); } @@ -857,7 +857,7 @@ bool OmniboxEditModel::AcceptKeyword( OmniboxEventProto::KeywordModeEntryMethod entry_method) { TRACE_EVENT0("omnibox", "OmniboxEditModel::AcceptKeyword"); -@@ -840,6 +858,17 @@ bool OmniboxEditModel::AcceptKeyword( +@@ -867,6 +885,17 @@ bool OmniboxEditModel::AcceptKeyword( controller_->StopAutocomplete(/*clear_result=*/false); @@ -866,16 +866,16 @@ + keyword_); + + if (turl && turl->bang_id() > 0 && !user_text_.starts_with(u'!')) { -+ AutocompleteMatch match = CurrentMatch(nullptr); ++ AutocompleteMatch match = CurrentMatch(); + if (!match.fill_into_edit.empty()) { + user_text_ = match.fill_into_edit; + } + } + - is_keyword_hint_ = false; + SetIsKeywordHint(false); keyword_mode_entry_method_ = entry_method; if (original_user_text_with_keyword_.empty()) { -@@ -882,9 +911,6 @@ bool OmniboxEditModel::AcceptKeyword( +@@ -909,9 +938,6 @@ bool OmniboxEditModel::AcceptKeyword( } base::RecordAction(base::UserMetricsAction("AcceptedKeywordHint")); @@ -885,7 +885,7 @@ EmitEnteredKeywordModeHistogram(entry_method, turl, !user_text_.empty()); return true; } -@@ -1543,7 +1569,13 @@ void OmniboxEditModel::InternalSetUserTe +@@ -1561,7 +1587,13 @@ void OmniboxEditModel::InternalSetUserTe std::u16string OmniboxEditModel::MaybeStripKeyword( const std::u16string& text) const { @@ -900,7 +900,7 @@ ? AutocompleteInput::SplitReplacementStringFromInput(text, false) : text; } -@@ -2750,16 +2782,33 @@ bool OmniboxEditModel::AllowKeywordSpace +@@ -2735,16 +2767,33 @@ bool OmniboxEditModel::AllowKeywordSpace return GetPrefService()->GetBoolean(omnibox::kKeywordSpaceTriggeringEnabled); } @@ -938,11 +938,11 @@ --- a/chrome/browser/ui/views/omnibox/omnibox_view_views.cc +++ b/chrome/browser/ui/views/omnibox/omnibox_view_views.cc -@@ -1925,6 +1925,7 @@ bool OmniboxViewViews::HandleKeyEvent(vi +@@ -1956,6 +1956,7 @@ bool OmniboxViewViews::HandleKeyEvent(vi metric_value); - if (model()->PopupIsOpen() && !control) { + if (controller()->IsPopupOpen() && !control) { // Normal case of pressing when the popup is open. -+ model()->MaybeAcceptTrailingBang(); - model()->OpenSelection(model()->GetPopupSelection(), event.time_stamp(), - disposition, - /*via_keyboard=*/true); ++ controller()->edit_model()->MaybeAcceptTrailingBang(); + controller()->edit_model()->OpenSelection( + controller()->edit_model()->GetPopupSelection(), event.time_stamp(), + disposition, diff --git a/patches/helium/core/add-update-channel-flag.patch b/patches/helium/core/add-update-channel-flag.patch index 7031a3a11..c3306a301 100644 --- a/patches/helium/core/add-update-channel-flag.patch +++ b/patches/helium/core/add-update-channel-flag.patch @@ -90,12 +90,12 @@ "Configures the frame rate the browser is throttled to when Energy Saver is enabled. Helium flag.", --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -264,6 +264,8 @@ static_library("browser") { - "btm/btm_browser_signin_detector_factory.h", - "btm/stateful_bounce_counter.cc", - "btm/stateful_bounce_counter.h", -+ "channel_selection.cc", -+ "channel_selection.h", +@@ -255,6 +255,8 @@ static_library("browser") { + "browsing_topics/browsing_topics_service_factory.h", "chained_back_navigation_tracker.cc", "chained_back_navigation_tracker.h", ++ "channel_selection.cc", ++ "channel_selection.h", "child_process_host_flags.h", + "chrome_browser_field_trials.cc", + "chrome_browser_field_trials.h", diff --git a/patches/helium/core/add-updater-preference.patch b/patches/helium/core/add-updater-preference.patch index 7120f9064..dbe80704f 100644 --- a/patches/helium/core/add-updater-preference.patch +++ b/patches/helium/core/add-updater-preference.patch @@ -102,7 +102,7 @@ TODO: guard services_page.html with is_mac --- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc +++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc -@@ -1985,6 +1985,10 @@ void AddPrivacyStrings(content::WebUIDat +@@ -2135,6 +2135,10 @@ void AddPrivacyStrings(content::WebUIDat IDS_SETTINGS_HELIUM_SERVICES_EXT_PROXY_TOGGLE}, {"heliumExtProxyToggleDescription", IDS_SETTINGS_HELIUM_SERVICES_EXT_PROXY_TOGGLE_DESCRIPTION}, @@ -115,7 +115,7 @@ TODO: guard services_page.html with is_mac IDS_SETTINGS_HELIUM_SERVICES_OVERRIDE_DESCRIPTION}, --- a/chrome/browser/extensions/api/settings_private/prefs_util.cc +++ b/chrome/browser/extensions/api/settings_private/prefs_util.cc -@@ -361,6 +361,8 @@ const PrefsUtil::TypedPrefMap& PrefsUtil +@@ -364,6 +364,8 @@ const PrefsUtil::TypedPrefMap& PrefsUtil settings_api::PrefType::kBoolean; (*s_allowlist)[::prefs::kHeliumSpellcheckEnabled] = settings_api::PrefType::kBoolean; @@ -126,7 +126,7 @@ TODO: guard services_page.html with is_mac (*s_allowlist)[::prefs::kHeliumServicesConsented] = --- a/chrome/browser/ui/browser_ui_prefs.cc +++ b/chrome/browser/ui/browser_ui_prefs.cc -@@ -214,6 +214,7 @@ void RegisterBrowserUserPrefs(user_prefs +@@ -217,6 +217,7 @@ void RegisterBrowserUserPrefs(user_prefs registry->RegisterStringPref(prefs::kHeliumServicesOrigin, ""); registry->RegisterBooleanPref(prefs::kHeliumDidOnboarding, false); registry->RegisterBooleanPref(prefs::kHeliumServicesConsented, false); @@ -136,7 +136,7 @@ TODO: guard services_page.html with is_mac registry->RegisterBooleanPref( --- a/chrome/app/settings_strings.grdp +++ b/chrome/app/settings_strings.grdp -@@ -1963,6 +1963,12 @@ +@@ -1993,6 +1993,12 @@ Helium will fetch dictionary files used for spell checking when requested. When disabled, spell checking will not work. diff --git a/patches/helium/core/add-zen-importer.patch b/patches/helium/core/add-zen-importer.patch index 5954b5267..16b7c7fe2 100644 --- a/patches/helium/core/add-zen-importer.patch +++ b/patches/helium/core/add-zen-importer.patch @@ -480,7 +480,7 @@ private: --- a/chrome/common/importer/profile_import_process_param_traits_macros.h +++ b/chrome/common/importer/profile_import_process_param_traits_macros.h -@@ -20,11 +20,11 @@ +@@ -23,11 +23,11 @@ #if BUILDFLAG(IS_WIN) IPC_ENUM_TRAITS_MIN_MAX_VALUE(user_data_importer::ImporterType, user_data_importer::TYPE_UNKNOWN, diff --git a/patches/helium/core/clean-context-menu.patch b/patches/helium/core/clean-context-menu.patch index 182a1b585..a21fdba7a 100644 --- a/patches/helium/core/clean-context-menu.patch +++ b/patches/helium/core/clean-context-menu.patch @@ -1,6 +1,6 @@ --- a/chrome/browser/renderer_context_menu/render_view_context_menu.cc +++ b/chrome/browser/renderer_context_menu/render_view_context_menu.cc -@@ -1127,11 +1127,6 @@ void RenderViewContextMenu::InitMenu() { +@@ -1146,11 +1146,6 @@ void RenderViewContextMenu::InitMenu() { AppendSpellingAndSearchSuggestionItems(); } @@ -12,7 +12,7 @@ if (editable) { AppendOtherEditableItems(); } -@@ -2213,7 +2208,6 @@ void RenderViewContextMenu::AppendPageIt +@@ -2245,7 +2240,6 @@ void RenderViewContextMenu::AppendPageIt IDS_CONTENT_CONTEXT_SAVEPAGEAS); menu_model_.AddItemWithStringId(IDC_PRINT, IDS_CONTENT_CONTEXT_PRINT); AppendLiveCaptionItem(); @@ -20,7 +20,7 @@ if (IsRegionSearchEnabled()) { AppendRegionSearchItem(); } -@@ -2342,8 +2336,7 @@ void RenderViewContextMenu::AppendMediaR +@@ -2374,8 +2368,7 @@ void RenderViewContextMenu::AppendMediaR void RenderViewContextMenu::AppendReadAnythingItem() { // Show Read Anything option if it's not already open in the side panel. @@ -30,7 +30,7 @@ menu_model_.AddItemWithStringId(IDC_CONTENT_CONTEXT_OPEN_IN_READING_MODE, IDS_CONTENT_CONTEXT_READING_MODE); } -@@ -3619,10 +3612,12 @@ void RenderViewContextMenu::ExecuteComma +@@ -3657,10 +3650,12 @@ void RenderViewContextMenu::ExecuteComma } void RenderViewContextMenu::AddSpellCheckServiceItem(bool is_checked) { @@ -43,7 +43,7 @@ if (is_checked) { menu_model_.AddCheckItemWithStringId( IDC_CONTENT_CONTEXT_ACCESSIBILITY_LABELS_TOGGLE, -@@ -3999,6 +3994,8 @@ bool RenderViewContextMenu::IsVideoFrame +@@ -4038,6 +4033,8 @@ bool RenderViewContextMenu::IsVideoFrame bool RenderViewContextMenu::AppendQRCodeGeneratorItem(bool for_image, bool draw_icon, bool add_separator) { diff --git a/patches/helium/core/disable-ad-topics-and-etc.patch b/patches/helium/core/disable-ad-topics-and-etc.patch index 94a961e9c..25674f417 100644 --- a/patches/helium/core/disable-ad-topics-and-etc.patch +++ b/patches/helium/core/disable-ad-topics-and-etc.patch @@ -1,6 +1,6 @@ --- a/services/network/public/cpp/features.cc +++ b/services/network/public/cpp/features.cc -@@ -421,7 +421,7 @@ BASE_FEATURE(kUpdateRequestForCorsRedire +@@ -439,7 +439,7 @@ BASE_FEATURE(kUpdateRequestForCorsRedire // https://github.com/patcg-individual-drafts/topics // Kill switch for the Topics API. @@ -9,7 +9,7 @@ // Enable the shared storage API. Note that enabling this feature does not // automatically expose this API to the web, it only allows the element to be -@@ -500,7 +500,7 @@ BASE_FEATURE(kSharedStorageTransactional +@@ -518,7 +518,7 @@ BASE_FEATURE(kSharedStorageTransactional // Kill switch for the Interest Group API, i.e. if disabled, the // API exposure will be disabled regardless of the OT config. diff --git a/patches/helium/core/disable-fedcm-bubble.patch b/patches/helium/core/disable-fedcm-bubble.patch index 74a940cd2..6432047fd 100644 --- a/patches/helium/core/disable-fedcm-bubble.patch +++ b/patches/helium/core/disable-fedcm-bubble.patch @@ -1,6 +1,6 @@ --- a/chrome/browser/ui/views/webid/fedcm_account_selection_view_desktop.cc +++ b/chrome/browser/ui/views/webid/fedcm_account_selection_view_desktop.cc -@@ -1280,6 +1280,9 @@ gfx::Rect FedCmAccountSelectionView::Get +@@ -1282,6 +1282,9 @@ gfx::Rect FedCmAccountSelectionView::Get void FedCmAccountSelectionView::ShouldShowDialog(bool& should_show) { if (dialog_type_ == DialogType::BUBBLE) { diff --git a/patches/helium/core/disable-ntp-footer.patch b/patches/helium/core/disable-ntp-footer.patch index 4e459685e..6da3f2bed 100644 --- a/patches/helium/core/disable-ntp-footer.patch +++ b/patches/helium/core/disable-ntp-footer.patch @@ -1,6 +1,6 @@ --- a/components/search/ntp_features.cc +++ b/components/search/ntp_features.cc -@@ -234,7 +234,7 @@ BASE_FEATURE(kNtpMicrosoftAuthentication +@@ -240,7 +240,7 @@ BASE_FEATURE(kNtpNextFeatures, base::FEA BASE_FEATURE(kNtpOneGoogleBarAsyncBarParts, base::FEATURE_DISABLED_BY_DEFAULT); // If enabled, a footer will show on the NTP. diff --git a/patches/helium/core/disable-outdated-build-detector.patch b/patches/helium/core/disable-outdated-build-detector.patch index 7b1256114..6d03ff4a6 100644 --- a/patches/helium/core/disable-outdated-build-detector.patch +++ b/patches/helium/core/disable-outdated-build-detector.patch @@ -1,6 +1,6 @@ --- a/chrome/browser/upgrade_detector/upgrade_detector_impl.cc +++ b/chrome/browser/upgrade_detector/upgrade_detector_impl.cc -@@ -214,6 +214,8 @@ void UpgradeDetectorImpl::DoCalculateThr +@@ -220,6 +220,8 @@ void UpgradeDetectorImpl::DoCalculateThr void UpgradeDetectorImpl::StartOutdatedBuildDetector() { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); diff --git a/patches/helium/core/disable-update-toast.patch b/patches/helium/core/disable-update-toast.patch index b94f7c34b..43c2f2a2b 100644 --- a/patches/helium/core/disable-update-toast.patch +++ b/patches/helium/core/disable-update-toast.patch @@ -1,6 +1,6 @@ --- a/chrome/browser/ui/ui_features.cc +++ b/chrome/browser/ui/ui_features.cc -@@ -627,7 +627,7 @@ bool HasTabSearchToolbarButton() { +@@ -670,7 +670,7 @@ bool HasTabSearchToolbarButton() { return is_tab_search_moving; } diff --git a/patches/helium/core/enable-tab-hover-cards.patch b/patches/helium/core/enable-tab-hover-cards.patch index bbe1dff4f..302064e30 100644 --- a/patches/helium/core/enable-tab-hover-cards.patch +++ b/patches/helium/core/enable-tab-hover-cards.patch @@ -1,6 +1,6 @@ --- a/chrome/browser/ui/ui_features.cc +++ b/chrome/browser/ui/ui_features.cc -@@ -285,13 +285,7 @@ bool IsTabGroupMenuMoreEntryPointsEnable +@@ -307,13 +307,7 @@ bool IsTabGroupMenuMoreEntryPointsEnable // Enables preview images in tab-hover cards. // https://crbug.com/928954 diff --git a/patches/helium/core/enable-tab-search-toolbar-button.patch b/patches/helium/core/enable-tab-search-toolbar-button.patch index 491877fb2..450f19913 100644 --- a/patches/helium/core/enable-tab-search-toolbar-button.patch +++ b/patches/helium/core/enable-tab-search-toolbar-button.patch @@ -23,7 +23,7 @@ if (tab_search_action.has_value()) { --- a/chrome/browser/ui/ui_features.cc +++ b/chrome/browser/ui/ui_features.cc -@@ -577,7 +577,7 @@ BASE_FEATURE(kByDateHistoryInSidePanel, +@@ -620,7 +620,7 @@ BASE_FEATURE(kByDateHistoryInSidePanel, BASE_FEATURE(kTabStripBrowserApi, base::FEATURE_DISABLED_BY_DEFAULT); @@ -32,7 +32,7 @@ // This serves as a "kill-switch" for migrating the Tab Search feature to be a // toolbar button for non-ChromeOS users in the US. -@@ -612,6 +612,8 @@ bool HasTabSearchToolbarButton() { +@@ -655,6 +655,8 @@ bool HasTabSearchToolbarButton() { return false; } diff --git a/patches/helium/core/exclude-irrelevant-flags.patch b/patches/helium/core/exclude-irrelevant-flags.patch index 82aea5751..f461eedd4 100644 --- a/patches/helium/core/exclude-irrelevant-flags.patch +++ b/patches/helium/core/exclude-irrelevant-flags.patch @@ -1,6 +1,6 @@ --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -13410,11 +13410,295 @@ const FeatureEntry kFeatureEntries[] = { +@@ -13643,11 +13643,328 @@ const FeatureEntry kFeatureEntries[] = { // AboutFlagsHistogramTest unit test to verify this process). }; @@ -26,6 +26,11 @@ + // Google's experimental APIs that don't work in Helium + // due to missing model binaries + "translation-api", ++ "translation-api-streaming-by-sentence", ++ ++ // Misc features not relevant to Helium ++ "extensions-menu-access-control", ++ "extensions-collapse-main-menu", + + // NTP + "omnibox-zero-suggest-prefetching", @@ -40,6 +45,8 @@ + "ntp-tab-groups-module-zero-state", + "ntp-microsoft-authentication-module", + "ntp-realbox-next", ++ "ntp-next-features", ++ "ntp-customize-chrome-auto-open", + + // Google Account & Sync + "use-sync-sandbox", @@ -54,14 +61,18 @@ + "enable-bookmarks-selected-type-on-signin-for-testing", + "enable-cross-device-pref-tracker", + "pdf-save-to-drive", ++ "mdm-errors-for-dasher-accounts-handling", ++ "profile-creation-decline-signin-cta-experiment", ++ "show-profile-picker-to-all-users-experiment", + -+ // Gemini Nano ++ // Gemini Nano / Other Google models + "prompt-api-for-gemini-nano", + "prompt-api-for-gemini-nano-multimodal-input", + "summarization-api-for-gemini-nano", + "writer-api-for-gemini-nano", + "rewriter-api-for-gemini-nano", + "proofreader-api-for-gemini-nano", ++ "omnibox-on-device-tail-suggestions", + + // AI Mode + "ai-mode-omnibox-entry-point", @@ -75,6 +86,17 @@ + "composebox-uses-chrome-compose-client", + "compose-selection-nudge", + "contextual-tasks", ++ "web-app-migrate-preinstalled-chat", ++ "webui-omnibox-aim-popup", ++ ++ // Contextual AI stuff (AI Mode entrypoints?) ++ "contextual-search-box-uses-contextual-search-provider", ++ "contextual-suggestions-ablate-others-when-present", ++ "omnibox-contextual-search-on-focus-suggestions", ++ "omnibox-contextual-suggestions", ++ "contextual-cueing", ++ "contextual-suggestion-ui-improvements", ++ "contextual-tasks-context", + + // Shopping stuff + "product-specifications", @@ -126,6 +148,10 @@ + "lens-search-zero-state-csb", + "lens-updated-feedback-entrypoint", + "lens-video-citations", ++ "lens-aim-suggestions", ++ "lens-aim-gradient-suggest-background", ++ "lens-overlay-optimization-filter", ++ "lens-overlay-non-blocking-privacy-notice", + + // Google Assistant + "enable-assistant-dsp", @@ -150,6 +176,8 @@ + "enable-ntp-browser-promos", + "mobile-promo-on-desktop", + "in-product-help-demo-mode-choice", ++ "iph-extensions-menu-feature", ++ "iph-extensions-request-access-button-feature", + + // GLIC (AI agent stuff) + "glic", @@ -204,6 +232,7 @@ + "apply-clientside-model-predictions-for-password-types", + "enable-site-isolation-for-password-sites", + "pwm-show-suggestions-on-autofocus", ++ "web-authentication-passkey-upgrade", + + // Reading Mode + "read-anything-read-aloud", @@ -211,6 +240,8 @@ + "read-anything-images-via-algorithm", + "read-anything-docs-integration", + "read-anything-docs-load-more-button", ++ "read-anything-read-aloud-ts-text-segmentation", ++ "read-anything-with-readability-enabled", + + // Autofill + "reintroduce-hybrid-passkey-entry-point", @@ -274,6 +305,8 @@ + "autofill-and-passwords-in-same-surface", + "autofill-enable-ai-based-amount-extraction", + "autofill-prefer-buy-now-pay-later-blocklists", ++ "mark-all-credentials-as-leaked", ++ "apply-clientside-model-predictions-for-otps", + + // Add new entries above this line and categorize them accordingly. +}); @@ -297,7 +330,7 @@ FlagsStateSingleton(const FlagsStateSingleton&) = delete; FlagsStateSingleton& operator=(const FlagsStateSingleton&) = delete; ~FlagsStateSingleton() override = default; -@@ -13433,7 +13717,7 @@ class FlagsStateSingleton : public flags +@@ -13666,7 +13983,7 @@ class FlagsStateSingleton : public flags void RestoreDefaultState() { flags_state_ = @@ -306,7 +339,7 @@ } private: -@@ -13758,7 +14042,7 @@ base::span GetFeatur +@@ -13990,7 +14307,7 @@ base::span GetFeatur !entries_for_testing->empty()) { return *entries_for_testing; } diff --git a/patches/helium/core/fix-tab-sync-unreached-error.patch b/patches/helium/core/fix-tab-sync-unreached-error.patch index 9d67eae23..911e2fd1b 100644 --- a/patches/helium/core/fix-tab-sync-unreached-error.patch +++ b/patches/helium/core/fix-tab-sync-unreached-error.patch @@ -1,6 +1,6 @@ --- a/chrome/browser/ui/tabs/saved_tab_groups/saved_tab_group_model_listener.cc +++ b/chrome/browser/ui/tabs/saved_tab_groups/saved_tab_group_model_listener.cc -@@ -188,17 +188,7 @@ void SavedTabGroupModelListener::OnTabSt +@@ -193,17 +193,7 @@ void SavedTabGroupModelListener::OnTabSt return; } diff --git a/patches/helium/core/flags-setup.patch b/patches/helium/core/flags-setup.patch index ca481f1c2..91c59a766 100644 --- a/patches/helium/core/flags-setup.patch +++ b/patches/helium/core/flags-setup.patch @@ -1,6 +1,6 @@ --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -392,11 +392,11 @@ namespace about_flags { +@@ -390,11 +390,11 @@ namespace about_flags { namespace { @@ -15,7 +15,7 @@ #endif // USE_AURA #if defined(USE_AURA) -@@ -5001,11 +5001,13 @@ const FeatureEntry::FeatureVariation kSe +@@ -5200,11 +5200,13 @@ const FeatureEntry::FeatureVariation kPr // calculate and verify checksum. // // When adding a new choice, add it to the end of the list. diff --git a/patches/helium/core/keyboard-shortcuts.patch b/patches/helium/core/keyboard-shortcuts.patch index e7394c903..d62608337 100644 --- a/patches/helium/core/keyboard-shortcuts.patch +++ b/patches/helium/core/keyboard-shortcuts.patch @@ -29,7 +29,7 @@ // asking the user to set up automatic updates when Keystone promotion is --- a/chrome/browser/ui/browser_ui_prefs.cc +++ b/chrome/browser/ui/browser_ui_prefs.cc -@@ -146,6 +146,8 @@ void RegisterBrowserUserPrefs(user_prefs +@@ -149,6 +149,8 @@ void RegisterBrowserUserPrefs(user_prefs registry->RegisterListPref(prefs::kWebRtcLocalIpsAllowedUrls); registry->RegisterBooleanPref(prefs::kWebRtcTextLogCollectionAllowed, false); @@ -40,7 +40,7 @@ registry->RegisterBooleanPref(policy::policy_prefs::kHideWebStoreIcon, false); --- a/chrome/browser/ui/browser_command_controller.cc +++ b/chrome/browser/ui/browser_command_controller.cc -@@ -388,7 +388,9 @@ bool BrowserCommandController::IsReserve +@@ -389,7 +389,9 @@ bool BrowserCommandController::IsReserve command_id == IDC_NEW_INCOGNITO_WINDOW || command_id == IDC_NEW_TAB || command_id == IDC_NEW_WINDOW || command_id == IDC_RESTORE_TAB || command_id == IDC_SELECT_NEXT_TAB || @@ -51,7 +51,7 @@ } void BrowserCommandController::TabStateChanged() { -@@ -1160,6 +1162,14 @@ bool BrowserCommandController::ExecuteCo +@@ -1176,6 +1178,14 @@ bool BrowserCommandController::ExecuteCo case IDC_DUPLICATE_TARGET_TAB: DuplicateKeyboardFocusedTab(browser_); break; @@ -66,7 +66,7 @@ // Hosted App commands case IDC_COPY_URL: CopyURL(browser_, browser_->tab_strip_model()->GetActiveWebContents()); -@@ -1912,6 +1922,12 @@ void BrowserCommandController::UpdateCom +@@ -1926,6 +1936,12 @@ void BrowserCommandController::UpdateCom bool dev_tools_enabled = DevToolsWindow::AllowDevToolsFor( profile(), browser_->tab_strip_model()->GetActiveWebContents()); @@ -142,7 +142,7 @@ "G", IDC_FIND_NEXT, VIRTKEY, CONTROL --- a/chrome/browser/extensions/api/settings_private/prefs_util.cc +++ b/chrome/browser/extensions/api/settings_private/prefs_util.cc -@@ -584,6 +584,8 @@ const PrefsUtil::TypedPrefMap& PrefsUtil +@@ -587,6 +587,8 @@ const PrefsUtil::TypedPrefMap& PrefsUtil (*s_allowlist)[::prefs::kCaretBrowsingEnabled] = settings_api::PrefType::kBoolean; @@ -153,7 +153,7 @@ // Accounts / Users / People. --- a/chrome/app/settings_strings.grdp +++ b/chrome/app/settings_strings.grdp -@@ -193,6 +193,16 @@ +@@ -190,6 +190,16 @@ Shows a confirmation when you copy links, images, or videos @@ -172,7 +172,7 @@ --- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc +++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc -@@ -276,6 +276,7 @@ void AddA11yStrings(content::WebUIDataSo +@@ -282,6 +282,7 @@ void AddA11yStrings(content::WebUIDataSo #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) {"axTreeFixingTitle", IDS_SETTINGS_AX_TREE_FIXING_TITLE}, {"axTreeFixingSubtitle", IDS_SETTINGS_AX_TREE_FIXING_SUBTITLE}, diff --git a/patches/helium/core/mitigate-fingerprinting-audio-context.patch b/patches/helium/core/mitigate-fingerprinting-audio-context.patch index cad67e8fe..280088ac4 100644 --- a/patches/helium/core/mitigate-fingerprinting-audio-context.patch +++ b/patches/helium/core/mitigate-fingerprinting-audio-context.patch @@ -24,7 +24,7 @@ https://github.com/uazo/cromite/blob/b2824377/build/patches/AudioBuffer-Analyser #endif /* CHROME_BROWSER_HELIUM_FLAG_ENTRIES_H_ */ --- a/third_party/blink/common/features.cc +++ b/third_party/blink/common/features.cc -@@ -19,6 +19,10 @@ +@@ -20,6 +20,10 @@ namespace blink::features { @@ -79,7 +79,7 @@ https://github.com/uazo/cromite/blob/b2824377/build/patches/AudioBuffer-Analyser ExceptionState& exception_state) { --- a/third_party/blink/renderer/modules/webaudio/audio_buffer.h +++ b/third_party/blink/renderer/modules/webaudio/audio_buffer.h -@@ -116,6 +116,8 @@ class MODULES_EXPORT AudioBuffer final : +@@ -115,6 +115,8 @@ class MODULES_EXPORT AudioBuffer final : std::unique_ptr CreateSharedAudioBuffer(); @@ -90,7 +90,7 @@ https://github.com/uazo/cromite/blob/b2824377/build/patches/AudioBuffer-Analyser uint32_t length, --- a/third_party/blink/renderer/modules/webaudio/audio_context.cc +++ b/third_party/blink/renderer/modules/webaudio/audio_context.cc -@@ -850,7 +850,12 @@ double AudioContext::baseLatency() const +@@ -863,7 +863,12 @@ double AudioContext::baseLatency() const DCHECK_CALLED_ON_VALID_SEQUENCE(main_thread_sequence_checker_); DCHECK(destination()); @@ -106,7 +106,7 @@ https://github.com/uazo/cromite/blob/b2824377/build/patches/AudioBuffer-Analyser double AudioContext::outputLatency() const { --- a/third_party/blink/renderer/modules/webaudio/base_audio_context.cc +++ b/third_party/blink/renderer/modules/webaudio/base_audio_context.cc -@@ -774,6 +774,13 @@ LocalDOMWindow* BaseAudioContext::GetWin +@@ -776,6 +776,13 @@ LocalDOMWindow* BaseAudioContext::GetWin return To(GetExecutionContext()); } @@ -133,7 +133,7 @@ https://github.com/uazo/cromite/blob/b2824377/build/patches/AudioBuffer-Analyser --- a/third_party/blink/renderer/modules/webaudio/offline_audio_context.cc +++ b/third_party/blink/renderer/modules/webaudio/offline_audio_context.cc -@@ -375,6 +375,8 @@ void OfflineAudioContext::FireCompletion +@@ -396,6 +396,8 @@ void OfflineAudioContext::FireCompletion return; } @@ -237,7 +237,7 @@ https://github.com/uazo/cromite/blob/b2824377/build/patches/AudioBuffer-Analyser --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 -@@ -599,7 +599,6 @@ +@@ -622,7 +622,6 @@ // AudioContext.playoutStats interface. // https://chromestatus.com/feature/5172818344148992 name: "AudioContextPlayoutStats", diff --git a/patches/helium/core/onboarding-page.patch b/patches/helium/core/onboarding-page.patch index b903c5aac..3fdb7914c 100644 --- a/patches/helium/core/onboarding-page.patch +++ b/patches/helium/core/onboarding-page.patch @@ -23,7 +23,7 @@ #endif // COMPONENTS_HELIUM_SERVICES_PREF_NAMES_H_ --- a/chrome/browser/ui/browser_ui_prefs.cc +++ b/chrome/browser/ui/browser_ui_prefs.cc -@@ -205,6 +205,8 @@ void RegisterBrowserUserPrefs(user_prefs +@@ -208,6 +208,8 @@ void RegisterBrowserUserPrefs(user_prefs { registry->RegisterBooleanPref(prefs::kHeliumServicesEnabled, true); registry->RegisterStringPref(prefs::kHeliumServicesOrigin, ""); @@ -60,7 +60,7 @@ whats_new::LogStartupType(whats_new::StartupType::kIneligible); --- a/tools/gritsettings/resource_ids.spec +++ b/tools/gritsettings/resource_ids.spec -@@ -1216,6 +1216,10 @@ +@@ -1228,6 +1228,10 @@ "META": {"sizes": {"includes": [30],}}, "includes": [7480], }, @@ -73,7 +73,7 @@ # START ios/ section. --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -8621,6 +8621,7 @@ static_library("browser_generated_files" +@@ -8586,6 +8586,7 @@ static_library("browser_generated_files" "//chrome/browser/v8_compile_hints/proto", "//chrome/browser/web_applications/mojom:mojom_web_apps_enum", "//chrome/common/request_header_integrity:buildflags", @@ -83,7 +83,7 @@ "//components/webui/chrome_urls/mojom:mojo_bindings", --- a/chrome/chrome_paks.gni +++ b/chrome/chrome_paks.gni -@@ -468,11 +468,13 @@ template("chrome_extra_paks") { +@@ -470,11 +470,13 @@ template("chrome_extra_paks") { if (!is_android && !is_chromeos) { sources += [ "$root_gen_dir/chrome/intro_resources.pak", @@ -104,12 +104,12 @@ kChromeUIProfileInternalsHost, content::kChromeUIQuotaInternalsHost, + kHeliumSetupHost, - kChromeUISignInInternalsHost, - kChromeUISiteEngagementHost, #if !BUILDFLAG(IS_ANDROID) + kChromeUIReloadButtonHost, + #endif --- a/chrome/common/webui_url_constants.h +++ b/chrome/common/webui_url_constants.h -@@ -597,6 +597,8 @@ inline constexpr char kChromeUIProfilePi +@@ -604,6 +604,8 @@ inline constexpr char kChromeUIProfilePi inline constexpr char kChromeUIProfilePickerStartupQuery[] = "startup"; inline constexpr char kChromeUIProfilePickerGlicQuery[] = "glic"; inline constexpr char kChromeUIProfilePickerUrl[] = "chrome://profile-picker/"; @@ -141,7 +141,7 @@ #include "chrome/browser/ui/webui/omnibox/omnibox_ui.h" #include "chrome/browser/ui/webui/policy/policy_ui.h" #include "chrome/browser/ui/webui/predictors/predictors_ui.h" -@@ -417,6 +418,7 @@ void RegisterChromeWebUIConfigs() { +@@ -419,6 +420,7 @@ void RegisterChromeWebUIConfigs() { #if !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_ANDROID) map.AddWebUIConfig(std::make_unique()); map.AddWebUIConfig(std::make_unique()); @@ -524,16 +524,16 @@ --- a/chrome/browser/favicon/favicon_utils.cc +++ b/chrome/browser/favicon/favicon_utils.cc @@ -189,6 +189,7 @@ bool ShouldThemifyFavicon(GURL url) { - url.host_piece() != chrome::kChromeUIVersionHost && - url.host_piece() != chrome::kChromeUINetExportHost && - url.host_piece() != chrome::kChromeUINewTabHost && -+ url.host_piece() != chrome::kHeliumSetupHost && - url.host_piece() != password_manager::kChromeUIPasswordManagerHost; + url.host() != chrome::kChromeUIVersionHost && + url.host() != chrome::kChromeUINetExportHost && + url.host() != chrome::kChromeUINewTabHost && ++ url.host() != chrome::kHeliumSetupHost && + url.host() != password_manager::kChromeUIPasswordManagerHost; } --- a/chrome/app/settings_strings.grdp +++ b/chrome/app/settings_strings.grdp -@@ -1917,6 +1917,12 @@ +@@ -1947,6 +1947,12 @@ Manage what Helium services are allowed in your browser @@ -548,7 +548,7 @@ --- a/chrome/browser/extensions/api/settings_private/prefs_util.cc +++ b/chrome/browser/extensions/api/settings_private/prefs_util.cc -@@ -357,6 +357,8 @@ const PrefsUtil::TypedPrefMap& PrefsUtil +@@ -360,6 +360,8 @@ const PrefsUtil::TypedPrefMap& PrefsUtil settings_api::PrefType::kBoolean; (*s_allowlist)[::prefs::kHeliumServicesOrigin] = settings_api::PrefType::kString; @@ -612,7 +612,7 @@ --- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc +++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc -@@ -1969,6 +1969,8 @@ void AddPrivacyStrings(content::WebUIDat +@@ -2119,6 +2119,8 @@ void AddPrivacyStrings(content::WebUIDat {"securityPageDescription", IDS_SETTINGS_SECURITY_DESCRIPTION}, {"heliumServicesTitle", IDS_SETTINGS_HELIUM_SERVICES}, {"heliumServicesDescription", IDS_SETTINGS_HELIUM_SERVICES_DESCRIPTION}, diff --git a/patches/helium/core/open-new-tabs-next-to-active-tab-option.patch b/patches/helium/core/open-new-tabs-next-to-active-tab-option.patch index 287bd8b1c..5a5b22f2b 100644 --- a/patches/helium/core/open-new-tabs-next-to-active-tab-option.patch +++ b/patches/helium/core/open-new-tabs-next-to-active-tab-option.patch @@ -13,7 +13,7 @@ inline constexpr char kShowHomeButton[] = "browser.show_home_button"; --- a/chrome/browser/ui/browser_ui_prefs.cc +++ b/chrome/browser/ui/browser_ui_prefs.cc -@@ -110,6 +110,8 @@ void RegisterBrowserUserPrefs(user_prefs +@@ -113,6 +113,8 @@ void RegisterBrowserUserPrefs(user_prefs registry->RegisterIntegerPref(prefs::kSessionRestoreInfoBarTimesShown, 0); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) @@ -39,7 +39,7 @@ #include "components/reading_list/core/reading_list_model.h" #include "components/tab_groups/tab_group_id.h" #include "components/tab_groups/tab_group_visual_data.h" -@@ -1549,7 +1551,11 @@ void TabStripModel::AddTab(std::unique_p +@@ -1605,7 +1607,11 @@ void TabStripModel::AddTab(std::unique_p // For all other types, respect what was passed to us, normalizing -1s and // values that are too large. if (index < 0 || index > count()) { @@ -54,7 +54,7 @@ --- a/chrome/app/settings_strings.grdp +++ b/chrome/app/settings_strings.grdp -@@ -273,6 +273,9 @@ +@@ -270,6 +270,9 @@ Mode @@ -66,7 +66,7 @@ --- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc +++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc -@@ -515,6 +515,7 @@ void AddAppearanceStrings(content::WebUI +@@ -521,6 +521,7 @@ void AddAppearanceStrings(content::WebUI {"lightMode", IDS_NTP_CUSTOMIZE_CHROME_COLOR_SCHEME_MODE_LIGHT_LABEL}, {"darkMode", IDS_NTP_CUSTOMIZE_CHROME_COLOR_SCHEME_MODE_DARK_LABEL}, {"systemMode", IDS_NTP_CUSTOMIZE_CHROME_COLOR_SCHEME_MODE_SYSTEM_LABEL}, @@ -76,7 +76,7 @@ {"allowSplitViewDragAndDrop", --- a/chrome/browser/extensions/api/settings_private/prefs_util.cc +++ b/chrome/browser/extensions/api/settings_private/prefs_util.cc -@@ -222,6 +222,10 @@ const PrefsUtil::TypedPrefMap& PrefsUtil +@@ -225,6 +225,10 @@ const PrefsUtil::TypedPrefMap& PrefsUtil (*s_allowlist)[::prefs::kUseCustomChromeFrame] = settings_api::PrefType::kBoolean; #endif diff --git a/patches/helium/core/override-chrome-protocol.patch b/patches/helium/core/override-chrome-protocol.patch index 865b67645..c7b5c2823 100644 --- a/patches/helium/core/override-chrome-protocol.patch +++ b/patches/helium/core/override-chrome-protocol.patch @@ -10,7 +10,7 @@ inline constexpr char kViewSourceScheme[] = "view-source"; --- a/chrome/browser/profiles/profile_io_data.cc +++ b/chrome/browser/profiles/profile_io_data.cc -@@ -44,6 +44,7 @@ bool ProfileIOData::IsHandledProtocol(co +@@ -44,6 +44,7 @@ bool ProfileIOData::IsHandledProtocol(st extensions::kExtensionScheme, #endif content::kChromeUIScheme, @@ -62,7 +62,7 @@ // Prevent future modification of the scheme lists. This is to prevent --- a/content/renderer/render_thread_impl.cc +++ b/content/renderer/render_thread_impl.cc -@@ -887,10 +887,18 @@ void RenderThreadImpl::RegisterSchemes() +@@ -879,10 +879,18 @@ void RenderThreadImpl::RegisterSchemes() chrome_scheme); WebSecurityPolicy::RegisterURLSchemeAsWebUI(chrome_scheme); @@ -95,21 +95,21 @@ +++ b/chrome/browser/ui/incognito_allowed_url.cc @@ -19,7 +19,8 @@ namespace { bool IsHostAllowedInIncognito(const GURL& url) { - std::string scheme = url.scheme(); - std::string_view host = url.host_piece(); + std::string scheme = url.GetScheme(); + std::string_view host = url.host(); - if (scheme != content::kChromeUIScheme) { -+ if (scheme != content::kChromeUIScheme -+ && scheme != content::kHeliumUIScheme) { ++ if (scheme != content::kChromeUIScheme && ++ scheme != content::kHeliumUIScheme) { return true; } --- a/chrome/browser/ui/browser_navigator.cc +++ b/chrome/browser/ui/browser_navigator.cc -@@ -544,6 +544,12 @@ base::WeakPtr +@@ -562,6 +562,12 @@ base::WeakPtr } } -+ if (params->url.scheme_piece() == content::kHeliumUIScheme) { ++ if (params->url.scheme() == content::kHeliumUIScheme) { + GURL::Replacements replacements; + replacements.SetSchemeStr(content::kChromeUIScheme); + params->url = params->url.ReplaceComponents(replacements); @@ -120,7 +120,7 @@ // handling. --- a/chrome/browser/extensions/extension_tab_util.cc +++ b/chrome/browser/extensions/extension_tab_util.cc -@@ -1297,7 +1297,8 @@ bool ExtensionTabUtil::IsKillURL(const G +@@ -1274,7 +1274,8 @@ bool ExtensionTabUtil::IsKillURL(const G return true; } @@ -132,7 +132,7 @@ --- a/chrome/browser/ui/browser.cc +++ b/chrome/browser/ui/browser.cc -@@ -2287,6 +2287,13 @@ void Browser::SetContentsBounds(WebConte +@@ -2240,6 +2240,13 @@ void Browser::SetContentsBounds(WebConte } void Browser::UpdateTargetURL(WebContents* source, const GURL& url) { @@ -146,7 +146,7 @@ std::vector status_bubbles = GetStatusBubbles(); for (StatusBubble* status_bubble : status_bubbles) { StatusBubbleViews* status_bubble_views = -@@ -2294,7 +2301,7 @@ void Browser::UpdateTargetURL(WebContent +@@ -2247,7 +2254,7 @@ void Browser::UpdateTargetURL(WebContent ContentsWebView* anchor = static_cast(status_bubble_views->base_view()); if (source == anchor->GetWebContents()) { @@ -185,9 +185,9 @@ #include "base/threading/thread_local_storage.h" #include "build/build_config.h" +#include "content/public/common/url_constants.h" + #include "components/url_formatter/spoof_checks/idn_spoof_checker.h" #include "net/base/registry_controlled_domains/registry_controlled_domain.h" #include "third_party/icu/source/common/unicode/uidna.h" - #include "third_party/icu/source/common/unicode/utypes.h" @@ -564,6 +565,7 @@ const FormatUrlType kFormatUrlTrimAfterH const FormatUrlType kFormatUrlOmitFileScheme = 1 << 7; const FormatUrlType kFormatUrlOmitMailToScheme = 1 << 8; @@ -350,7 +350,7 @@ #include "components/user_education/common/feature_promo/feature_promo_controller.h" #include "components/web_modal/web_contents_modal_dialog_manager.h" #include "components/webapps/common/web_app_id.h" -@@ -2386,7 +2387,12 @@ bool IsDebuggerAttachedToCurrentTab(Brow +@@ -2441,7 +2442,12 @@ bool IsDebuggerAttachedToCurrentTab(Brow void CopyURL(BrowserWindowInterface* bwi, content::WebContents* web_contents) { ui::ScopedClipboardWriter scw(ui::ClipboardBuffer::kCopyPaste); @@ -366,7 +366,7 @@ if (toast_features::IsEnabled(toast_features::kLinkCopiedToast)) { --- a/chrome/browser/ui/views/tabs/tab_hover_card_bubble_view.cc +++ b/chrome/browser/ui/views/tabs/tab_hover_card_bubble_view.cc -@@ -557,7 +557,8 @@ void TabHoverCardBubbleView::UpdateCardC +@@ -562,7 +562,8 @@ void TabHoverCardBubbleView::UpdateCardC url_formatter::kFormatUrlOmitDefaults | url_formatter::kFormatUrlOmitHTTPS | url_formatter::kFormatUrlOmitTrivialSubdomains | diff --git a/patches/helium/core/prefer-https-by-default.patch b/patches/helium/core/prefer-https-by-default.patch index 7c03af308..76d80df0b 100644 --- a/patches/helium/core/prefer-https-by-default.patch +++ b/patches/helium/core/prefer-https-by-default.patch @@ -1,6 +1,6 @@ --- a/chrome/common/chrome_features.cc +++ b/chrome/common/chrome_features.cc -@@ -967,7 +967,7 @@ BASE_FEATURE(kHttpsFirstBalancedMode, ba +@@ -1181,7 +1181,7 @@ BASE_FEATURE(kHttpsFirstBalancedMode, ba // Automatically enables HTTPS-First Mode in a balanced configuration when // possible. BASE_FEATURE(kHttpsFirstBalancedModeAutoEnable, diff --git a/patches/helium/core/proxy-extension-downloads.patch b/patches/helium/core/proxy-extension-downloads.patch index 5874bff15..f61368af3 100644 --- a/patches/helium/core/proxy-extension-downloads.patch +++ b/patches/helium/core/proxy-extension-downloads.patch @@ -16,7 +16,7 @@ const char kChromeWebstoreApiURL[] = "trk:07:https://chromewebstore.googleapis.com/"; const char kAppMenuUtmSource[] = "ext_app_menu"; -@@ -72,6 +72,7 @@ GURL GetNewWebstoreLaunchURL() { +@@ -77,6 +77,7 @@ GURL GetNewWebstoreLaunchURL() { } GURL AppendUtmSource(const GURL& url, std::string_view utm_source_value) { @@ -24,7 +24,7 @@ return net::AppendQueryParameter(url, "utm_source", utm_source_value); } -@@ -85,6 +86,8 @@ std::string GetWebstoreItemDetailURLPref +@@ -90,6 +91,8 @@ std::string GetWebstoreItemDetailURLPref } GURL GetWebstoreItemSnippetURL(const extensions::ExtensionId& extension_id) { @@ -33,7 +33,7 @@ if (g_item_snippet_url_for_test_) { // Return ``. There is no suffix if the URL is // overridden by a test. -@@ -114,9 +117,6 @@ GURL GetDefaultWebstoreUpdateUrl() { +@@ -119,9 +122,6 @@ GURL GetDefaultWebstoreUpdateUrl() { } GURL GetWebstoreUpdateUrl() { @@ -95,12 +95,12 @@ + +bool CanPatchUpdateUrl(const GURL& url) { + GURL chrome_webstore = GetOriginalWebstoreUpdateUrl(); -+ return chrome_webstore.host_piece() == url.host_piece(); ++ return chrome_webstore.host() == url.host(); +} + +GURL PatchUpdateUrl(const GURL& url) { + GURL chrome_webstore = GetOriginalWebstoreUpdateUrl(); -+ if (chrome_webstore.host_piece() == url.host_piece()) { ++ if (chrome_webstore.host() == url.host()) { + return GetDefaultWebstoreUpdateUrl(); + } + @@ -133,7 +133,7 @@ +#endif // EXTENSIONS_COMMON_MANIFEST_URL_PATCHER_H_ --- a/extensions/common/BUILD.gn +++ b/extensions/common/BUILD.gn -@@ -457,6 +457,8 @@ static_library("common") { +@@ -456,6 +456,8 @@ static_library("common") { "manifest_handlers/webview_info.h", "manifest_url_handlers.cc", "manifest_url_handlers.h", @@ -166,7 +166,7 @@ --- a/chrome/browser/extensions/api/settings_private/prefs_util.cc +++ b/chrome/browser/extensions/api/settings_private/prefs_util.cc -@@ -355,6 +355,8 @@ const PrefsUtil::TypedPrefMap& PrefsUtil +@@ -358,6 +358,8 @@ const PrefsUtil::TypedPrefMap& PrefsUtil // Helium services page (*s_allowlist)[::prefs::kHeliumServicesEnabled] = settings_api::PrefType::kBoolean; @@ -177,7 +177,7 @@ (*s_allowlist)[::prefs::kHeliumServicesConsented] = --- a/chrome/browser/ui/browser_ui_prefs.cc +++ b/chrome/browser/ui/browser_ui_prefs.cc -@@ -208,6 +208,7 @@ void RegisterBrowserUserPrefs(user_prefs +@@ -211,6 +211,7 @@ void RegisterBrowserUserPrefs(user_prefs { registry->RegisterBooleanPref(prefs::kHeliumServicesEnabled, true); @@ -201,7 +201,7 @@ --- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc +++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc -@@ -1975,6 +1975,10 @@ void AddPrivacyStrings(content::WebUIDat +@@ -2125,6 +2125,10 @@ void AddPrivacyStrings(content::WebUIDat {"heliumServicesToggle", IDS_SETTINGS_HELIUM_SERVICES_TOGGLE}, {"heliumServicesToggleDescription", IDS_SETTINGS_HELIUM_SERVICES_TOGGLE_DESCRIPTION}, @@ -214,7 +214,7 @@ IDS_SETTINGS_HELIUM_SERVICES_OVERRIDE_DESCRIPTION}, --- a/chrome/app/settings_strings.grdp +++ b/chrome/app/settings_strings.grdp -@@ -1945,6 +1945,12 @@ +@@ -1975,6 +1975,12 @@ When enabled, Helium will be able to connect to anonymous web services to provide additional functionality. When disabled, additional features will not work. @@ -330,7 +330,7 @@ continue; } -+ if (it.second.update_url().host_piece() == baseUrl.host_piece()) { ++ if (it.second.update_url().host() == baseUrl.host()) { + Profile* profile = Profile::FromBrowserContext(context_.get()); + PrefService* prefs = profile->GetPrefs(); + @@ -391,7 +391,7 @@ // In Kiosk mode extensions are downloaded and updated by the ExternalCache. // Therefore we skip updates here to avoid conflicts. -@@ -461,7 +469,7 @@ void ExtensionUpdater::CheckNow(CheckPar +@@ -468,7 +476,7 @@ void ExtensionUpdater::CheckNow(CheckPar // Add fetch records for extensions that should be fetched by an update URL. // These extensions are not yet installed. They come from group policy // and external install sources. @@ -400,7 +400,7 @@ PendingExtensionManager::Get(profile_); ExtensionUpdateCheckParams update_check_params; -@@ -595,7 +603,7 @@ void ExtensionUpdater::CheckNow(CheckPar +@@ -602,7 +610,7 @@ void ExtensionUpdater::CheckNow(CheckPar // OnExtensionDownloadFinished for each extension that was checked. downloader_->StartAllPending(extension_cache_); @@ -409,7 +409,7 @@ update_check_params.priority = params.fetch_priority == DownloadFetchPriority::kBackground ? ExtensionUpdateCheckParams::UpdateCheckPriority::BACKGROUND -@@ -816,6 +824,10 @@ void ExtensionUpdater::CleanUpCrxFileIfN +@@ -823,6 +831,10 @@ void ExtensionUpdater::CleanUpCrxFileIfN bool ExtensionUpdater::CanUseUpdateService( const ExtensionId& extension_id) const { @@ -422,7 +422,7 @@ } --- a/chrome/browser/extensions/webstore_installer.cc +++ b/chrome/browser/extensions/webstore_installer.cc -@@ -45,6 +45,7 @@ +@@ -43,6 +43,7 @@ #include "components/crx_file/id_util.h" #include "components/download/public/common/download_url_parameters.h" #include "components/update_client/update_query_params.h" @@ -430,7 +430,7 @@ #include "content/public/browser/browser_thread.h" #include "content/public/browser/download_manager.h" #include "content/public/browser/navigation_controller.h" -@@ -206,7 +207,7 @@ GURL WebstoreInstaller::GetWebstoreInsta +@@ -207,7 +208,7 @@ GURL WebstoreInstaller::GetWebstoreInsta if (!install_source.empty()) params.push_back(installsource_param); params.push_back("uc"); @@ -474,7 +474,7 @@ // Note that both |global_settings_| and |default_settings_| will be null // before first call to Refresh(), so in order to resolve this, Refresh() must // be called in the initialization of ExtensionManagement. -@@ -282,12 +290,20 @@ GURL ExtensionManagement::GetEffectiveUp +@@ -287,12 +295,20 @@ GURL ExtensionManagement::GetEffectiveUp << "Update URL cannot be overridden to be the webstore URL!"; return update_url; } @@ -483,7 +483,7 @@ + const GURL& original_url = ManifestURL::GetUpdateURL(&extension); + const GURL& dummy_url = extension_urls::GetDefaultWebstoreUpdateUrl(); + -+ if (dummy_url.host_piece() == original_url.host_piece()) { ++ if (dummy_url.host() == original_url.host()) { + return helium::GetExtensionUpdateURL(*profile_->GetPrefs()); + } + @@ -575,7 +575,7 @@ max_auto_retries_ = max_retries; --- a/chrome/browser/extensions/webstore_standalone_installer.cc +++ b/chrome/browser/extensions/webstore_standalone_installer.cc -@@ -20,6 +20,7 @@ +@@ -19,6 +19,7 @@ #include "chrome/browser/extensions/webstore_data_fetcher.h" #include "chrome/browser/profiles/profile.h" #include "components/crx_file/id_util.h" diff --git a/patches/helium/core/reenable-spellcheck-downloads.patch b/patches/helium/core/reenable-spellcheck-downloads.patch index c29de3c50..cd7a0c053 100644 --- a/patches/helium/core/reenable-spellcheck-downloads.patch +++ b/patches/helium/core/reenable-spellcheck-downloads.patch @@ -96,7 +96,7 @@ #endif // COMPONENTS_HELIUM_SERVICES_PREF_NAMES_H_ --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -8264,6 +8264,8 @@ static_library("browser") { +@@ -8261,6 +8261,8 @@ static_library("browser") { deps += [ "//components/spellcheck/browser", "//components/spellcheck/common", @@ -107,7 +107,7 @@ if (!is_android) { --- a/chrome/browser/extensions/api/settings_private/prefs_util.cc +++ b/chrome/browser/extensions/api/settings_private/prefs_util.cc -@@ -359,6 +359,8 @@ const PrefsUtil::TypedPrefMap& PrefsUtil +@@ -362,6 +362,8 @@ const PrefsUtil::TypedPrefMap& PrefsUtil settings_api::PrefType::kBoolean; (*s_allowlist)[::prefs::kHeliumBangsEnabled] = settings_api::PrefType::kBoolean; @@ -118,7 +118,7 @@ (*s_allowlist)[::prefs::kHeliumServicesConsented] = --- a/chrome/browser/ui/browser_ui_prefs.cc +++ b/chrome/browser/ui/browser_ui_prefs.cc -@@ -210,6 +210,7 @@ void RegisterBrowserUserPrefs(user_prefs +@@ -213,6 +213,7 @@ void RegisterBrowserUserPrefs(user_prefs registry->RegisterBooleanPref(prefs::kHeliumServicesEnabled, true); registry->RegisterBooleanPref(prefs::kHeliumBangsEnabled, true); registry->RegisterBooleanPref(prefs::kHeliumExtProxyEnabled, true); @@ -144,7 +144,7 @@ --- a/chrome/app/settings_strings.grdp +++ b/chrome/app/settings_strings.grdp -@@ -1957,6 +1957,12 @@ +@@ -1987,6 +1987,12 @@ Helium will fetch a list of bangs that help you browse the Internet faster, such as !w or !gh. When disabled, bangs will not work. @@ -159,7 +159,7 @@ --- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc +++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc -@@ -1978,6 +1978,9 @@ void AddPrivacyStrings(content::WebUIDat +@@ -2128,6 +2128,9 @@ void AddPrivacyStrings(content::WebUIDat {"heliumBangsToggle", IDS_SETTINGS_HELIUM_SERVICES_BANGS_TOGGLE}, {"heliumBangsToggleDescription", IDS_SETTINGS_HELIUM_SERVICES_BANGS_TOGGLE_DESCRIPTION}, diff --git a/patches/helium/core/remove-dead-toolbar-actions.patch b/patches/helium/core/remove-dead-toolbar-actions.patch index f1310bd6e..f3199b51d 100644 --- a/patches/helium/core/remove-dead-toolbar-actions.patch +++ b/patches/helium/core/remove-dead-toolbar-actions.patch @@ -56,7 +56,7 @@ case side_panel::customize_chrome::mojom::ActionId::kShowDownloads: return kActionShowDownloads; case side_panel::customize_chrome::mojom::ActionId::kClearBrowsingData: -@@ -280,16 +250,8 @@ void CustomizeToolbarHandler::ListAction +@@ -291,16 +261,8 @@ void CustomizeToolbarHandler::ListAction add_action(kActionNewIncognitoWindow, side_panel::customize_chrome::mojom::CategoryId::kNavigation); @@ -73,7 +73,7 @@ add_action(kActionSidePanelShowHistoryCluster, side_panel::customize_chrome::mojom::CategoryId::kYourChrome); add_action(kActionShowDownloads, -@@ -303,18 +265,12 @@ void CustomizeToolbarHandler::ListAction +@@ -314,18 +276,12 @@ void CustomizeToolbarHandler::ListAction } add_action(kActionPrint, side_panel::customize_chrome::mojom::CategoryId::kTools); diff --git a/patches/helium/core/search/engine-defaults.patch b/patches/helium/core/search/engine-defaults.patch index d25c0342b..08ceb5c33 100644 --- a/patches/helium/core/search/engine-defaults.patch +++ b/patches/helium/core/search/engine-defaults.patch @@ -1,7 +1,7 @@ --- a/components/search_engines/template_url_prepopulate_data.cc +++ b/components/search_engines/template_url_prepopulate_data.cc -@@ -261,7 +261,7 @@ std::unique_ptr GetPrep - std::vector +@@ -258,7 +258,7 @@ std::unique_ptr GetPrep + const std::vector& regional_prepopulated_engines) { return FindPrepopulatedEngineInternal(prefs, regional_prepopulated_engines, - google.id, diff --git a/patches/helium/core/search/fix-search-engine-icons.patch b/patches/helium/core/search/fix-search-engine-icons.patch index b93f283b3..fc956d776 100644 --- a/patches/helium/core/search/fix-search-engine-icons.patch +++ b/patches/helium/core/search/fix-search-engine-icons.patch @@ -1,8 +1,8 @@ --- a/build/config/chrome_build.gni +++ b/build/config/chrome_build.gni -@@ -92,4 +92,4 @@ declare_args() { +@@ -101,4 +101,4 @@ declare_args() { # Whether to enable built-in branding assets (logos & marketing snippets) for # search providers in choice UIs. --enable_builtin_search_provider_assets = is_chrome_branded +-enable_builtin_search_provider_assets = is_internal_chrome_branded +enable_builtin_search_provider_assets = true diff --git a/patches/helium/core/search/force-eu-search-features.patch b/patches/helium/core/search/force-eu-search-features.patch index 94a66ea9a..1234dc364 100644 --- a/patches/helium/core/search/force-eu-search-features.patch +++ b/patches/helium/core/search/force-eu-search-features.patch @@ -8,7 +8,7 @@ #include "chrome/browser/signin/account_consistency_mode_manager.h" #include "chrome/browser/signin/account_consistency_mode_manager_factory.h" #include "chrome/browser/signin/chrome_signin_client_factory.h" -@@ -84,7 +83,6 @@ +@@ -83,7 +82,6 @@ #include "components/plus_addresses/core/browser/plus_address_service.h" #include "components/plus_addresses/core/common/features.h" #include "components/prefs/pref_service.h" @@ -16,7 +16,7 @@ #include "components/safe_browsing/core/common/features.h" #include "components/safe_browsing/core/common/hashprefix_realtime/hash_realtime_utils.h" #include "components/saved_tab_groups/public/features.h" -@@ -2505,14 +2503,9 @@ void AddSearchStrings(content::WebUIData +@@ -2662,14 +2660,9 @@ void AddSearchStrings(content::WebUIData html_source->AddString("searchExplanationLearnMoreURL", chrome::kOmniboxLearnMoreURL); @@ -70,8 +70,8 @@ // settings". Here we check for the program reference directly as command line --- a/components/search_engine_choice_strings.grdp +++ b/components/search_engine_choice_strings.grdp -@@ -106,6 +106,10 @@ - These search engines are popular in your region +@@ -19,6 +19,10 @@ + $1Google is now your default search engine + diff --git a/patches/helium/core/search/remove-description-snippet-deps.patch b/patches/helium/core/search/remove-description-snippet-deps.patch index 78bf23ba6..8df2f6fbe 100644 --- a/patches/helium/core/search/remove-description-snippet-deps.patch +++ b/patches/helium/core/search/remove-description-snippet-deps.patch @@ -1,6 +1,6 @@ --- a/chrome/chrome_repack_locales.gni +++ b/chrome/chrome_repack_locales.gni -@@ -100,12 +100,6 @@ template("chrome_repack_locales") { +@@ -99,12 +99,6 @@ template("chrome_repack_locales") { } compress = true } @@ -26,7 +26,7 @@ namespace { const bool kEnableBuiltinSearchProviderAssets = -@@ -1878,18 +1874,6 @@ std::string TemplateURL::GetBuiltinDescr +@@ -1885,18 +1881,6 @@ std::string TemplateURL::GetBuiltinDescr } std::optional TemplateURL::GetBuiltinMarketingSnippet() const { diff --git a/patches/helium/core/services-prefs.patch b/patches/helium/core/services-prefs.patch index aa018c2a4..2843292be 100644 --- a/patches/helium/core/services-prefs.patch +++ b/patches/helium/core/services-prefs.patch @@ -1,6 +1,6 @@ --- a/chrome/app/settings_strings.grdp +++ b/chrome/app/settings_strings.grdp -@@ -1911,6 +1911,31 @@ +@@ -1941,6 +1941,31 @@ Safe Browsing (protection from dangerous sites) and other security settings @@ -34,8 +34,8 @@ Google Advanced Protection Program --- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc +++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc -@@ -1967,6 +1967,18 @@ void AddPrivacyStrings(content::WebUIDat - {"permissionsPageDescription", IDS_SETTINGS_PERMISSIONS_DESCRIPTION}, +@@ -2117,6 +2117,18 @@ void AddPrivacyStrings(content::WebUIDat + {"siteSettingsSublabel", IDS_SETTINGS_PERMISSIONS_DESCRIPTION}, {"securityPageTitle", IDS_SETTINGS_SECURITY}, {"securityPageDescription", IDS_SETTINGS_SECURITY_DESCRIPTION}, + {"heliumServicesTitle", IDS_SETTINGS_HELIUM_SERVICES}, @@ -56,8 +56,8 @@ --- a/chrome/browser/resources/settings/privacy_page/privacy_page.html +++ b/chrome/browser/resources/settings/privacy_page/privacy_page.html @@ -67,6 +67,11 @@ - sub-label="$i18n{permissionsPageDescription}" - on-click="onPermissionsPageClick_" + sub-label="$i18n{siteSettingsSublabel}" + on-click="onSiteSettingsLinkRowClick_" role-description="$i18n{subpageArrowRoleDescription}"> + --- a/chrome/browser/resources/settings/privacy_page/privacy_page_index.html +++ b/chrome/browser/resources/settings/privacy_page/privacy_page_index.html -@@ -45,6 +45,14 @@ +@@ -47,6 +47,14 @@ @@ -83,10 +83,10 @@ + - +@@ -123,12 +123,6 @@ +
+ - - --