From 9c4d783d1f31722fad95ea6dfccac03f068324f7 Mon Sep 17 00:00:00 2001 From: "trop[bot]" <37223003+trop[bot]@users.noreply.github.com> Date: Wed, 23 Jul 2025 10:12:00 +0200 Subject: [PATCH] chore: bump chromium to 140.0.7309.0 (38-x-y) (#47863) * chore: bump chromium in DEPS to 140.0.7309.0 Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> * 6762172: Replace MSG_ROUTING_NONE with IPC::mojom::kRoutingIdNone. Refs https://chromium-review.googlesource.com/c/chromium/src/+/6762172 Co-authored-by: David Sanders * 6759543: [exit-time-destructors] Exclude target with warnings Refs https://chromium-review.googlesource.com/c/chromium/src/+/6759543 Co-authored-by: David Sanders * 6765167: Split PreconnectManager into interface and implementation. Refs https://chromium-review.googlesource.com/c/chromium/src/+/6765167 Co-authored-by: David Sanders * 6766775: [media] Clarify coded and visible size in FrameResources Refs https://chromium-review.googlesource.com/c/chromium/src/+/6766775 Co-authored-by: David Sanders * 6760878: Move PreconnectRequest to //content/public Refs https://chromium-review.googlesource.com/c/chromium/src/+/6760878 Co-authored-by: David Sanders * 6718973: Implement media playback trust check for the video PiP overlay window Refs https://chromium-review.googlesource.com/c/chromium/src/+/6718973 Co-authored-by: David Sanders * chore: add missing include of in ada Co-authored-by: David Sanders * chore: update patches Co-authored-by: David Sanders * chore: node gen-libc++-filenames.js Co-authored-by: David Sanders * 6759633: [media] Use format from shared image in FrameResources Refs https://chromium-review.googlesource.com/c/chromium/src/+/6759633 Co-authored-by: David Sanders --------- Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com> Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> Co-authored-by: David Sanders --- DEPS | 2 +- chromium_src/BUILD.gn | 2 + filenames.libcxx.gni | 17 +++- .../add_didinstallconditionalfeatures.patch | 10 +- ..._scheduler_throttling_per_renderview.patch | 10 +- .../chromium/build_disable_thin_lto_mac.patch | 2 +- ..._depend_on_packed_resource_integrity.patch | 12 +-- patches/chromium/build_gn.patch | 2 +- .../build_libc_as_static_library.patch | 2 +- patches/chromium/can_create_window.patch | 16 ++-- ...ther_in_electron_views_and_delegates.patch | 4 +- .../chromium/chore_partial_revert_of.patch | 4 +- ...tition_attribute_dcheck_for_webviews.patch | 4 +- .../chore_patch_out_profile_methods.patch | 4 +- ...screationoverridden_with_full_params.patch | 18 ++-- ..._is_test_on_script_injection_tracker.patch | 2 +- .../custom_protocols_plzserviceworker.patch | 8 +- patches/chromium/disable_hidden.patch | 8 +- ...xpose_setuseragent_on_networkcontext.patch | 4 +- ...e_launch_options_for_service_process.patch | 22 ++--- ...moothing_css_rule_and_blink_painting.patch | 20 ++-- ...g_exit_code_on_service_process_crash.patch | 2 +- ..._raw_response_headers_from_urlloader.patch | 2 +- ...ding_non-standard_schemes_in_iframes.patch | 6 +- ...ingshelper_behind_branding_buildflag.patch | 4 +- ...board_hides_on_input_blur_in_webview.patch | 4 +- ...original_resize_performance_on_macos.patch | 4 +- patches/chromium/frame_host_manager.patch | 6 +- .../chromium/gritsettings_resource_ids.patch | 4 +- ..._avoid_private_macos_api_usage.patch.patch | 55 +++++------ ...emote_certificate_verification_logic.patch | 8 +- .../chromium/notification_provenance.patch | 6 +- ...xture_remove_keyed_mutex_on_win_dxgi.patch | 28 +++--- patches/chromium/picture-in-picture.patch | 32 ++++++- ...utofill_colors_to_the_color_pipeline.patch | 6 +- patches/chromium/preconnect_manager.patch | 96 ++++++------------- ...r_changes_to_the_webcontentsobserver.patch | 10 +- ...pose_hostimportmoduledynamically_and.patch | 2 +- ...efactor_unfilter_unresponsive_events.patch | 4 +- .../render_widget_host_view_mac.patch | 10 +- ...ean_up_stale_macwebcontentsocclusion.patch | 4 +- ...es_from_clang_toolchain_in_mac_build.patch | 2 +- ...windowtreehostwin_window_enlargement.patch | 4 +- .../support_mixed_sandbox_with_zygote.patch | 4 +- patches/chromium/web_contents.patch | 12 +-- patches/chromium/webview_fullscreen.patch | 10 +- ...i_to_allow_electron_to_set_dock_side.patch | 4 +- patches/node/.patches | 1 + ...hore_add_missing_include_of_iterator.patch | 35 +++++++ shell/browser/api/electron_api_session.cc | 3 +- shell/browser/electron_browser_context.cc | 3 +- 51 files changed, 287 insertions(+), 257 deletions(-) create mode 100644 patches/node/chore_add_missing_include_of_iterator.patch diff --git a/DEPS b/DEPS index fe84d68dc0b1..f675ed670437 100644 --- a/DEPS +++ b/DEPS @@ -2,7 +2,7 @@ gclient_gn_args_from = 'src' vars = { 'chromium_version': - '140.0.7301.0', + '140.0.7309.0', 'node_version': 'v22.17.1', 'nan_version': diff --git a/chromium_src/BUILD.gn b/chromium_src/BUILD.gn index a5750b2b8837..fae10015b748 100644 --- a/chromium_src/BUILD.gn +++ b/chromium_src/BUILD.gn @@ -78,6 +78,8 @@ static_library("chrome") { "//chrome/browser/platform_util.h", "//chrome/browser/predictors/preconnect_manager.cc", "//chrome/browser/predictors/preconnect_manager.h", + "//chrome/browser/predictors/preconnect_manager_impl.cc", + "//chrome/browser/predictors/preconnect_manager_impl.h", "//chrome/browser/predictors/predictors_features.cc", "//chrome/browser/predictors/predictors_features.h", "//chrome/browser/predictors/proxy_lookup_client_impl.cc", diff --git a/filenames.libcxx.gni b/filenames.libcxx.gni index 049042ebbc6a..2097af9e5887 100644 --- a/filenames.libcxx.gni +++ b/filenames.libcxx.gni @@ -821,6 +821,7 @@ libcxx_headers = [ "//third_party/libc++/src/include/__cxx03/__utility/unreachable.h", "//third_party/libc++/src/include/__cxx03/__variant/monostate.h", "//third_party/libc++/src/include/__cxx03/__verbose_abort", + "//third_party/libc++/src/include/__cxx03/__verbose_trap", "//third_party/libc++/src/include/__cxx03/algorithm", "//third_party/libc++/src/include/__cxx03/array", "//third_party/libc++/src/include/__cxx03/atomic", @@ -989,6 +990,7 @@ libcxx_headers = [ "//third_party/libc++/src/include/__format/indic_conjunct_break_table.h", "//third_party/libc++/src/include/__format/parser_std_format_spec.h", "//third_party/libc++/src/include/__format/range_default_formatter.h", + "//third_party/libc++/src/include/__format/range_format.h", "//third_party/libc++/src/include/__format/range_formatter.h", "//third_party/libc++/src/include/__format/unicode.h", "//third_party/libc++/src/include/__format/width_estimation_table.h", @@ -1084,6 +1086,7 @@ libcxx_headers = [ "//third_party/libc++/src/include/__iterator/ostreambuf_iterator.h", "//third_party/libc++/src/include/__iterator/permutable.h", "//third_party/libc++/src/include/__iterator/prev.h", + "//third_party/libc++/src/include/__iterator/product_iterator.h", "//third_party/libc++/src/include/__iterator/projected.h", "//third_party/libc++/src/include/__iterator/ranges_iterator_traits.h", "//third_party/libc++/src/include/__iterator/readable_traits.h", @@ -1096,13 +1099,18 @@ libcxx_headers = [ "//third_party/libc++/src/include/__iterator/unreachable_sentinel.h", "//third_party/libc++/src/include/__iterator/wrap_iter.h", "//third_party/libc++/src/include/__locale", - "//third_party/libc++/src/include/__locale_dir/locale_base_api/android.h", + "//third_party/libc++/src/include/__locale_dir/check_grouping.h", + "//third_party/libc++/src/include/__locale_dir/get_c_locale.h", "//third_party/libc++/src/include/__locale_dir/locale_base_api/bsd_locale_fallbacks.h", "//third_party/libc++/src/include/__locale_dir/locale_base_api/ibm.h", "//third_party/libc++/src/include/__locale_dir/locale_base_api/musl.h", "//third_party/libc++/src/include/__locale_dir/locale_base_api/openbsd.h", "//third_party/libc++/src/include/__locale_dir/locale_base_api.h", + "//third_party/libc++/src/include/__locale_dir/messages.h", + "//third_party/libc++/src/include/__locale_dir/money.h", + "//third_party/libc++/src/include/__locale_dir/num.h", "//third_party/libc++/src/include/__locale_dir/pad_and_output.h", + "//third_party/libc++/src/include/__locale_dir/scan_keyword.h", "//third_party/libc++/src/include/__locale_dir/support/apple.h", "//third_party/libc++/src/include/__locale_dir/support/bsd_like.h", "//third_party/libc++/src/include/__locale_dir/support/freebsd.h", @@ -1111,6 +1119,9 @@ libcxx_headers = [ "//third_party/libc++/src/include/__locale_dir/support/no_locale/characters.h", "//third_party/libc++/src/include/__locale_dir/support/no_locale/strtonum.h", "//third_party/libc++/src/include/__locale_dir/support/windows.h", + "//third_party/libc++/src/include/__locale_dir/time.h", + "//third_party/libc++/src/include/__locale_dir/wbuffer_convert.h", + "//third_party/libc++/src/include/__locale_dir/wstring_convert.h", "//third_party/libc++/src/include/__math/abs.h", "//third_party/libc++/src/include/__math/copysign.h", "//third_party/libc++/src/include/__math/error_functions.h", @@ -1363,9 +1374,8 @@ libcxx_headers = [ "//third_party/libc++/src/include/__tuple/tuple_size.h", "//third_party/libc++/src/include/__tuple/tuple_types.h", "//third_party/libc++/src/include/__type_traits/add_cv_quals.h", - "//third_party/libc++/src/include/__type_traits/add_lvalue_reference.h", "//third_party/libc++/src/include/__type_traits/add_pointer.h", - "//third_party/libc++/src/include/__type_traits/add_rvalue_reference.h", + "//third_party/libc++/src/include/__type_traits/add_reference.h", "//third_party/libc++/src/include/__type_traits/aligned_storage.h", "//third_party/libc++/src/include/__type_traits/aligned_union.h", "//third_party/libc++/src/include/__type_traits/alignment_of.h", @@ -1521,6 +1531,7 @@ libcxx_headers = [ "//third_party/libc++/src/include/__vector/vector_bool.h", "//third_party/libc++/src/include/__vector/vector_bool_formatter.h", "//third_party/libc++/src/include/__verbose_abort", + "//third_party/libc++/src/include/__verbose_trap", "//third_party/libc++/src/include/algorithm", "//third_party/libc++/src/include/any", "//third_party/libc++/src/include/array", diff --git a/patches/chromium/add_didinstallconditionalfeatures.patch b/patches/chromium/add_didinstallconditionalfeatures.patch index 21d452788aaa..f4a2bff9f379 100644 --- a/patches/chromium/add_didinstallconditionalfeatures.patch +++ b/patches/chromium/add_didinstallconditionalfeatures.patch @@ -10,7 +10,7 @@ DidCreateScriptContext is called, not all JS APIs are available in the context, which can cause some preload scripts to trip. diff --git a/content/public/renderer/render_frame_observer.h b/content/public/renderer/render_frame_observer.h -index 2061f1f0fe807495f9baacc319ba4cc588554eef..a9f7a62a2abdcfeb7af250d3c5570b959c0c6681 100644 +index 8364a976ab0ee8101a43ed82f969d1e5de53857a..9ed14ce5bdea8db14be52ecc98f161bebfbab180 100644 --- a/content/public/renderer/render_frame_observer.h +++ b/content/public/renderer/render_frame_observer.h @@ -138,6 +138,8 @@ class CONTENT_EXPORT RenderFrameObserver { @@ -23,10 +23,10 @@ index 2061f1f0fe807495f9baacc319ba4cc588554eef..a9f7a62a2abdcfeb7af250d3c5570b95 int32_t world_id) {} virtual void DidClearWindowObject() {} diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc -index b74623455d53d109a97e6c767f56a9beeb0e87e5..2f13ff0b2671c0851f31f527fe1f76b118bf03d2 100644 +index db4e2c71d3c0f91a6f61c4c3c87e84df8dd3f32a..868608115641bf50ab587e184fa132d42bd24893 100644 --- a/content/renderer/render_frame_impl.cc +++ b/content/renderer/render_frame_impl.cc -@@ -4666,6 +4666,12 @@ void RenderFrameImpl::DidCreateScriptContext(v8::Local context, +@@ -4676,6 +4676,12 @@ void RenderFrameImpl::DidCreateScriptContext(v8::Local context, observer.DidCreateScriptContext(context, world_id); } @@ -40,10 +40,10 @@ index b74623455d53d109a97e6c767f56a9beeb0e87e5..2f13ff0b2671c0851f31f527fe1f76b1 int world_id) { for (auto& observer : observers_) diff --git a/content/renderer/render_frame_impl.h b/content/renderer/render_frame_impl.h -index 79383765a3a0095b92355d6d5777be461c926447..e0b57c2b7aee0706b6b164ac555a3264236268e3 100644 +index 5f54302be2fac0c1c2d89932d6d3efa949eebe3c..59e86e54909bb0b59b329fe3f1edee5c920d88cd 100644 --- a/content/renderer/render_frame_impl.h +++ b/content/renderer/render_frame_impl.h -@@ -604,6 +604,8 @@ class CONTENT_EXPORT RenderFrameImpl +@@ -603,6 +603,8 @@ class CONTENT_EXPORT RenderFrameImpl void DidObserveLayoutShift(double score, bool after_input_or_scroll) override; void DidCreateScriptContext(v8::Local context, int world_id) override; diff --git a/patches/chromium/allow_disabling_blink_scheduler_throttling_per_renderview.patch b/patches/chromium/allow_disabling_blink_scheduler_throttling_per_renderview.patch index 8254371758df..edb9dd426378 100644 --- a/patches/chromium/allow_disabling_blink_scheduler_throttling_per_renderview.patch +++ b/patches/chromium/allow_disabling_blink_scheduler_throttling_per_renderview.patch @@ -6,7 +6,7 @@ Subject: allow disabling blink scheduler throttling per RenderView This allows us to disable throttling for hidden windows. diff --git a/content/browser/renderer_host/navigation_controller_impl_unittest.cc b/content/browser/renderer_host/navigation_controller_impl_unittest.cc -index e12bdf2e2f97f087684207eb42e55ef8a137f80e..4258bc80796161a7ac9ec8d7ad2cb10f9bc4bf00 100644 +index 3b996644e4bdeed5128d6cfb8b5f4fb9ddf4a00f..3c72cd28acbcc57aa086953942175cf33dfbd28a 100644 --- a/content/browser/renderer_host/navigation_controller_impl_unittest.cc +++ b/content/browser/renderer_host/navigation_controller_impl_unittest.cc @@ -167,6 +167,12 @@ class MockPageBroadcast : public blink::mojom::PageBroadcast { @@ -23,10 +23,10 @@ index e12bdf2e2f97f087684207eb42e55ef8a137f80e..4258bc80796161a7ac9ec8d7ad2cb10f return receiver_.BindNewEndpointAndPassDedicatedRemote(); } diff --git a/content/browser/renderer_host/render_view_host_impl.cc b/content/browser/renderer_host/render_view_host_impl.cc -index 910790557c979e26b1dde6001ffe64cbb0b46709..cb54181e58186d8d8d0523a787b813d9885bf3a6 100644 +index 04f7f6c52a28f21c621a1932677da380ff0c941c..08fdd256ae7a6446b9824b479c4c39659a2d6426 100644 --- a/content/browser/renderer_host/render_view_host_impl.cc +++ b/content/browser/renderer_host/render_view_host_impl.cc -@@ -763,6 +763,11 @@ void RenderViewHostImpl::SetBackgroundOpaque(bool opaque) { +@@ -764,6 +764,11 @@ void RenderViewHostImpl::SetBackgroundOpaque(bool opaque) { GetWidget()->GetAssociatedFrameWidget()->SetBackgroundOpaque(opaque); } @@ -39,10 +39,10 @@ index 910790557c979e26b1dde6001ffe64cbb0b46709..cb54181e58186d8d8d0523a787b813d9 return is_active(); } diff --git a/content/browser/renderer_host/render_view_host_impl.h b/content/browser/renderer_host/render_view_host_impl.h -index a6a9a5dd6bd2ecfecd924aeeeef691d44bc5c0ac..9a9ee8be03e590902a8adf7f282ece0a4a58e07d 100644 +index 7944fe64e0da112fc670358b75506bb199bb5e4a..0e3c16c6af2a078943e9f39808134ab20c115e99 100644 --- a/content/browser/renderer_host/render_view_host_impl.h +++ b/content/browser/renderer_host/render_view_host_impl.h -@@ -135,6 +135,7 @@ class CONTENT_EXPORT RenderViewHostImpl +@@ -136,6 +136,7 @@ class CONTENT_EXPORT RenderViewHostImpl void EnablePreferredSizeMode() override; void WriteIntoTrace(perfetto::TracedProto context) const override; diff --git a/patches/chromium/build_disable_thin_lto_mac.patch b/patches/chromium/build_disable_thin_lto_mac.patch index 2a976057a655..fb3fc8508b86 100644 --- a/patches/chromium/build_disable_thin_lto_mac.patch +++ b/patches/chromium/build_disable_thin_lto_mac.patch @@ -11,7 +11,7 @@ This patch can (and should) be removed when we can prevent those symbols from being stripped in the release build. diff --git a/build/config/compiler/compiler.gni b/build/config/compiler/compiler.gni -index 61c3779e9fd11869fdf7b789e3b728fd03ed8fd0..f0638cdfe9cd75834c09e5361201d9c50dad74af 100644 +index babd5a12fa7fbe263e1ecd6d269a2965a3024bbe..cf116f19c4031e3bec6c82125761ebbcb32c5c79 100644 --- a/build/config/compiler/compiler.gni +++ b/build/config/compiler/compiler.gni @@ -88,7 +88,7 @@ declare_args() { diff --git a/patches/chromium/build_do_not_depend_on_packed_resource_integrity.patch b/patches/chromium/build_do_not_depend_on_packed_resource_integrity.patch index 8ee195180334..91c221cbd270 100644 --- a/patches/chromium/build_do_not_depend_on_packed_resource_integrity.patch +++ b/patches/chromium/build_do_not_depend_on_packed_resource_integrity.patch @@ -33,10 +33,10 @@ index 2fb245ad4daabdf430be1f593e73b2da90504419..2f7cd882b6c6d893917b1f7850ee0843 "//base", "//build:branding_buildflags", diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn -index 5470a4ec4a6e63296ebc10cc4e5436075bf25e09..5425690a70795185ae37bfe262ac8ff1f6ad552c 100644 +index 40660c2e292cb0559ebef28ab1172eb6871c5423..0d8cac8fe3a75e823400ae819bbb6edaefbafdb6 100644 --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -4775,7 +4775,7 @@ static_library("browser") { +@@ -4760,7 +4760,7 @@ static_library("browser") { [ "//chrome/browser/ui/webui/signin:profile_impl" ] } @@ -46,10 +46,10 @@ index 5470a4ec4a6e63296ebc10cc4e5436075bf25e09..5425690a70795185ae37bfe262ac8ff1 # than here in :chrome_dll. deps += [ "//chrome:packed_resources_integrity_header" ] diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn -index af136570c5ee8d438e8cb638354f35b76ed33621..573c5e11948e766b0f718a7b7555c07181c9599d 100644 +index a11499f0976966d1941e7da6621343a2cce34ead..786febeb58506ce70b0557bbee9060183f108caa 100644 --- a/chrome/test/BUILD.gn +++ b/chrome/test/BUILD.gn -@@ -7439,9 +7439,12 @@ test("unit_tests") { +@@ -7455,9 +7455,12 @@ test("unit_tests") { "//chrome/notification_helper", ] @@ -63,7 +63,7 @@ index af136570c5ee8d438e8cb638354f35b76ed33621..573c5e11948e766b0f718a7b7555c071 "//chrome//services/util_win:unit_tests", "//chrome/app:chrome_dll_resources", "//chrome/app:win_unit_tests", -@@ -8376,6 +8379,10 @@ test("unit_tests") { +@@ -8388,6 +8391,10 @@ test("unit_tests") { "../browser/performance_manager/policies/background_tab_loading_policy_unittest.cc", ] @@ -74,7 +74,7 @@ index af136570c5ee8d438e8cb638354f35b76ed33621..573c5e11948e766b0f718a7b7555c071 sources += [ # The importer code is not used on Android. "../common/importer/firefox_importer_utils_unittest.cc", -@@ -8431,7 +8438,6 @@ test("unit_tests") { +@@ -8443,7 +8450,6 @@ test("unit_tests") { # TODO(crbug.com/417513088): Maybe merge with the non-android `deps` declaration above? deps += [ "../browser/screen_ai:screen_ai_install_state", diff --git a/patches/chromium/build_gn.patch b/patches/chromium/build_gn.patch index cc199871cbc6..51ec51851800 100644 --- a/patches/chromium/build_gn.patch +++ b/patches/chromium/build_gn.patch @@ -7,7 +7,7 @@ These are variables we add to the root BUILDCONFIG so that they're available everywhere, without having to import("//electron/.../flags.gni"). diff --git a/build/config/BUILDCONFIG.gn b/build/config/BUILDCONFIG.gn -index 2ff4a83b6ac8a8f2986b037a81357e5d68b2b6fc..6efa11b848b0a58928c189aa2ead24a5997c8973 100644 +index 7b1e29e99375a030c7e654d88da921bf6f95a52b..4c54c15e7c2f60c41b2c72231b5089ac806b06ba 100644 --- a/build/config/BUILDCONFIG.gn +++ b/build/config/BUILDCONFIG.gn @@ -123,6 +123,9 @@ if (current_os == "") { diff --git a/patches/chromium/build_libc_as_static_library.patch b/patches/chromium/build_libc_as_static_library.patch index 65d17d8bba70..b8b8e8bc07d1 100644 --- a/patches/chromium/build_libc_as_static_library.patch +++ b/patches/chromium/build_libc_as_static_library.patch @@ -7,7 +7,7 @@ Build libc++ as static library to compile and pass nan tests diff --git a/buildtools/third_party/libc++/BUILD.gn b/buildtools/third_party/libc++/BUILD.gn -index d4bdb6e7d386193f7b9b42f1f9785730594c237a..9df9989c2b835a0a96d659dcb25f5a144efb6d09 100644 +index f4e46e2813e89c00dbc4549fe7a8623776c1ea47..992d7a6b020b938db1d4cbd109a4c025dcaaeb05 100644 --- a/buildtools/third_party/libc++/BUILD.gn +++ b/buildtools/third_party/libc++/BUILD.gn @@ -908,6 +908,7 @@ target(libcxx_target_type, "libc++") { diff --git a/patches/chromium/can_create_window.patch b/patches/chromium/can_create_window.patch index bf34f3e0d855..7ed12fc250c1 100644 --- a/patches/chromium/can_create_window.patch +++ b/patches/chromium/can_create_window.patch @@ -9,10 +9,10 @@ potentially prevent a window from being created. TODO(loc): this patch is currently broken. diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc -index f8142d408911e110157a027c47cffee9ab84b1f2..858650444361a7ad749ef68e5fb91b5609fb7b6e 100644 +index 2406cb3ad5ea6f9709d1e0ef984cbfdf969f3c40..cf78be9a397d9c4372245b0a2b4ee8fdd58df3e8 100644 --- a/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc -@@ -9778,6 +9778,7 @@ void RenderFrameHostImpl::CreateNewWindow( +@@ -9773,6 +9773,7 @@ void RenderFrameHostImpl::CreateNewWindow( last_committed_origin_, params->window_container_type, params->target_url, params->referrer.To(), params->frame_name, params->disposition, *params->features, @@ -21,10 +21,10 @@ index f8142d408911e110157a027c47cffee9ab84b1f2..858650444361a7ad749ef68e5fb91b56 &no_javascript_access); diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index 73b5cec4c03c13464556fdfd0aafb41862385991..d2e3f73c11bc88237f901b79b7a6f010195b9e95 100644 +index ebfc82ce166b1cfa12523851598429364030ff9c..635ce2fb1a4f1e91b5abd7bd0ae1a6b6ccbdf926 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -5313,6 +5313,12 @@ FrameTree* WebContentsImpl::CreateNewWindow( +@@ -5340,6 +5340,12 @@ FrameTree* WebContentsImpl::CreateNewWindow( // Sets the newly created WebContents WindowOpenDisposition. new_contents_impl->original_window_open_disposition_ = params.disposition; @@ -37,7 +37,7 @@ index 73b5cec4c03c13464556fdfd0aafb41862385991..d2e3f73c11bc88237f901b79b7a6f010 // If the new frame has a name, make sure any SiteInstances that can find // this named frame have proxies for it. Must be called after // SetSessionStorageNamespace, since this calls CreateRenderView, which uses -@@ -5354,12 +5360,6 @@ FrameTree* WebContentsImpl::CreateNewWindow( +@@ -5381,12 +5387,6 @@ FrameTree* WebContentsImpl::CreateNewWindow( AddWebContentsDestructionObserver(new_contents_impl); } @@ -79,7 +79,7 @@ index c7986ab566838fcc187afed6905988f348275966..e0d34f995433072aa23cfd2ae5e8d98b bool opener_suppressed, bool* no_javascript_access) { diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h -index 778c53b6638e22cdab13fdf109f595057e68172a..07ce06a3c38d8aeef996329ce91c3cbcaf80581e 100644 +index 8b0bfc819b9c5d1aef14482306880ee21fef96b9..8c4704131677362a240a4456f7a73e34d8632d2b 100644 --- a/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h @@ -199,6 +199,7 @@ class NetworkService; @@ -148,10 +148,10 @@ index 4c687a84d14d5fa8cd5e376580b594ed0d116ef5..1a71f8020ba4de7bd4966bb025631552 // typically happens when popups are created. virtual void WebContentsCreated(WebContents* source_contents, diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc -index 414af5f3574d3fa7c45a5b809cd99d19e5202160..b74623455d53d109a97e6c767f56a9beeb0e87e5 100644 +index 623902124afe29a80efe98096921abad41d36b90..db4e2c71d3c0f91a6f61c4c3c87e84df8dd3f32a 100644 --- a/content/renderer/render_frame_impl.cc +++ b/content/renderer/render_frame_impl.cc -@@ -6756,6 +6756,10 @@ WebView* RenderFrameImpl::CreateNewWindow( +@@ -6766,6 +6766,10 @@ WebView* RenderFrameImpl::CreateNewWindow( request.HasUserGesture(), GetWebFrame()->IsAdFrame(), GetWebFrame()->IsAdScriptInStack()); diff --git a/patches/chromium/chore_grandfather_in_electron_views_and_delegates.patch b/patches/chromium/chore_grandfather_in_electron_views_and_delegates.patch index 918d7908b839..d92630085858 100644 --- a/patches/chromium/chore_grandfather_in_electron_views_and_delegates.patch +++ b/patches/chromium/chore_grandfather_in_electron_views_and_delegates.patch @@ -10,10 +10,10 @@ Subject: chore: "grandfather in" Electron Views and Delegates 6448510: Lock further access to View::set_owned_by_client(). | https://chromium-review.googlesource.com/c/chromium/src/+/6448510 diff --git a/ui/views/view.h b/ui/views/view.h -index 23232b148b002e83926b8848c2e2ada42d608083..df2e5a84387620bfa2e642e957e4d7e7d8106b44 100644 +index 4e531691d53c5fbed548cdd84cd41dd6e38ab3f0..7ae948a035f5be41ffc6af7d7f8815db85368039 100644 --- a/ui/views/view.h +++ b/ui/views/view.h -@@ -82,6 +82,19 @@ class ArcNotificationContentView; +@@ -81,6 +81,19 @@ class ArcNotificationContentView; class WideFrameView; } // namespace ash diff --git a/patches/chromium/chore_partial_revert_of.patch b/patches/chromium/chore_partial_revert_of.patch index 9a492bc72bed..e47bab1a01ef 100644 --- a/patches/chromium/chore_partial_revert_of.patch +++ b/patches/chromium/chore_partial_revert_of.patch @@ -14,10 +14,10 @@ track down the source of this problem & figure out if we can fix it by changing something in Electron. diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index 6a3da81cab89f23d7dbf26bf9e684209313ab889..3490ec3cf591254eb9a34b3c6c4d2b5c7ef7dfe2 100644 +index b93032cf102faff8b570902de20d69aec0c8ad3b..cae36228828a295d74f04d43fe2ed0aba94f716b 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -5229,7 +5229,7 @@ FrameTree* WebContentsImpl::CreateNewWindow( +@@ -5256,7 +5256,7 @@ FrameTree* WebContentsImpl::CreateNewWindow( : IsGuest(); // While some guest types do not have a guest SiteInstance, the ones that // don't all override WebContents creation above. diff --git a/patches/chromium/chore_patch_out_partition_attribute_dcheck_for_webviews.patch b/patches/chromium/chore_patch_out_partition_attribute_dcheck_for_webviews.patch index 36585ddf5a9b..4c087cefae2b 100644 --- a/patches/chromium/chore_patch_out_partition_attribute_dcheck_for_webviews.patch +++ b/patches/chromium/chore_patch_out_partition_attribute_dcheck_for_webviews.patch @@ -14,10 +14,10 @@ This change patches it out to prevent the DCHECK. It can be removed once/if we see a better solution to the problem. diff --git a/content/browser/site_instance_impl.cc b/content/browser/site_instance_impl.cc -index 1eea1bbf46335cf2cbe0ef07abb4906eb68c2eb7..363ebf5268cb6b513f4b54894939511db97230a5 100644 +index 4645ecf79850bb36b0a5d924d48d073dc867cc21..c6f0daf4ecdee39c362409caa3840bfe9a99d3b2 100644 --- a/content/browser/site_instance_impl.cc +++ b/content/browser/site_instance_impl.cc -@@ -227,7 +227,7 @@ scoped_refptr SiteInstanceImpl::CreateForGuest( +@@ -228,7 +228,7 @@ scoped_refptr SiteInstanceImpl::CreateForGuest( BrowserContext* browser_context, const StoragePartitionConfig& partition_config) { DCHECK(browser_context); diff --git a/patches/chromium/chore_patch_out_profile_methods.patch b/patches/chromium/chore_patch_out_profile_methods.patch index 207510a20b28..a2aeec764da4 100644 --- a/patches/chromium/chore_patch_out_profile_methods.patch +++ b/patches/chromium/chore_patch_out_profile_methods.patch @@ -27,10 +27,10 @@ index e3b9f14a4cf2167064ce6716053e663adffa1542..65f13a4607c8145858fd47d81cb9960c // When the enterprise policy is not set, use finch/feature flag choice. return base::FeatureList::IsEnabled( diff --git a/chrome/browser/pdf/pdf_extension_util.cc b/chrome/browser/pdf/pdf_extension_util.cc -index ecacb93a2eb0765e43ac984498b72a5d0900e669..dc9870130befc742287475cf05b4caa00413d6f3 100644 +index 0af6001acc689428807c21ff471fb8aa303c2dd0..152aeaba8d9d87b711a63f6d651ecb6c32cf3fa5 100644 --- a/chrome/browser/pdf/pdf_extension_util.cc +++ b/chrome/browser/pdf/pdf_extension_util.cc -@@ -245,10 +245,13 @@ bool IsPrintingEnabled(content::BrowserContext* context) { +@@ -248,10 +248,13 @@ bool IsPrintingEnabled(content::BrowserContext* context) { #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(ENABLE_PDF_INK2) bool IsPdfAnnotationsEnabledByPolicy(content::BrowserContext* context) { diff --git a/patches/chromium/chore_provide_iswebcontentscreationoverridden_with_full_params.patch b/patches/chromium/chore_provide_iswebcontentscreationoverridden_with_full_params.patch index 3661d5858ff4..7704d04dc302 100644 --- a/patches/chromium/chore_provide_iswebcontentscreationoverridden_with_full_params.patch +++ b/patches/chromium/chore_provide_iswebcontentscreationoverridden_with_full_params.patch @@ -80,10 +80,10 @@ index b6582b4013d9682d32bd524b4053b443a4df00f8..afcbce72e0f247b4d5a637b27c9f25d9 content::WebContents* source, const content::OpenURLParams& params, diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc -index 348826eb147d7a7bdf8cd6cb5732c6efec379c42..8fef00ce00b11172a8b568b2056f9542df0eeb47 100644 +index 0f0f52e32ab15e3f8544b3b1f521d24a20c38ead..ddc072bb69f5104e711bfcdf9f851fe199087e52 100644 --- a/chrome/browser/ui/browser.cc +++ b/chrome/browser/ui/browser.cc -@@ -2367,8 +2367,7 @@ bool Browser::IsWebContentsCreationOverridden( +@@ -2353,8 +2353,7 @@ bool Browser::IsWebContentsCreationOverridden( content::SiteInstance* source_site_instance, content::mojom::WindowContainerType window_container_type, const GURL& opener_url, @@ -93,7 +93,7 @@ index 348826eb147d7a7bdf8cd6cb5732c6efec379c42..8fef00ce00b11172a8b568b2056f9542 if (IsActorOperatingOnWebContents( profile(), content::WebContents::FromRenderFrameHost(opener))) { // If an ExecutionEngine is acting on the opener, prevent it from creating -@@ -2380,7 +2379,7 @@ bool Browser::IsWebContentsCreationOverridden( +@@ -2366,7 +2365,7 @@ bool Browser::IsWebContentsCreationOverridden( return (window_container_type == content::mojom::WindowContainerType::BACKGROUND && ShouldCreateBackgroundContents(source_site_instance, opener_url, @@ -103,10 +103,10 @@ index 348826eb147d7a7bdf8cd6cb5732c6efec379c42..8fef00ce00b11172a8b568b2056f9542 WebContents* Browser::CreateCustomWebContents( diff --git a/chrome/browser/ui/browser.h b/chrome/browser/ui/browser.h -index e3f82608bf0600205ad957794876c0221fa6bd40..ca70ae9526f64e9c96f0e487a303220054325073 100644 +index faef0cb7ddde2afcf607d5681583d0580dfcb8e6..0343eb2e8dff92c6145d51a9920d88cc24b56be6 100644 --- a/chrome/browser/ui/browser.h +++ b/chrome/browser/ui/browser.h -@@ -943,8 +943,7 @@ class Browser : public TabStripModelObserver, +@@ -938,8 +938,7 @@ class Browser : public TabStripModelObserver, content::SiteInstance* source_site_instance, content::mojom::WindowContainerType window_container_type, const GURL& opener_url, @@ -222,10 +222,10 @@ index b969f1d97b7e3396119b579cfbe61e19ff7d2dd4..b8d6169652da28266a514938b45b39c5 content::WebContents* AddNewContents( content::WebContents* source, diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index 2b7c6f30f8d11461c12c275d03762c62575261c1..6edba4b1fb3c60effb3f42736ec7ff35aebd98e5 100644 +index 2be6dc0dada353a36822794421b30c346a9ec930..315e54d061dea3ce28583c6eb456196dc873a1a6 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -5192,8 +5192,7 @@ FrameTree* WebContentsImpl::CreateNewWindow( +@@ -5219,8 +5219,7 @@ FrameTree* WebContentsImpl::CreateNewWindow( if (delegate_ && delegate_->IsWebContentsCreationOverridden( opener, source_site_instance, params.window_container_type, @@ -384,10 +384,10 @@ index 756d4192271d6a65cfe8e1511737c565b543cb1f..5688f6f745056565c3c01947f741c4d1 int opener_render_process_id, int opener_render_frame_id, diff --git a/headless/lib/browser/headless_web_contents_impl.cc b/headless/lib/browser/headless_web_contents_impl.cc -index ebcf9ddc2c38b6766451f95a9d49e4888a816be5..40fd0f72a0058503efbcba7d37699689b6359a3a 100644 +index cb6c4637aab67a4a51c4afd584733e70d3f1041e..f8ef39e6af24b75daec9392d5932e6eab0c510c6 100644 --- a/headless/lib/browser/headless_web_contents_impl.cc +++ b/headless/lib/browser/headless_web_contents_impl.cc -@@ -208,8 +208,7 @@ class HeadlessWebContentsImpl::Delegate : public content::WebContentsDelegate { +@@ -207,8 +207,7 @@ class HeadlessWebContentsImpl::Delegate : public content::WebContentsDelegate { content::SiteInstance* source_site_instance, content::mojom::WindowContainerType window_container_type, const GURL& opener_url, diff --git a/patches/chromium/chore_remove_check_is_test_on_script_injection_tracker.patch b/patches/chromium/chore_remove_check_is_test_on_script_injection_tracker.patch index 0812a3779145..1fe8521334a1 100644 --- a/patches/chromium/chore_remove_check_is_test_on_script_injection_tracker.patch +++ b/patches/chromium/chore_remove_check_is_test_on_script_injection_tracker.patch @@ -9,7 +9,7 @@ Electron when a session is non persistent we do not initialize the ExtensionSystem, so this check is not relevant for Electron. diff --git a/extensions/browser/script_injection_tracker.cc b/extensions/browser/script_injection_tracker.cc -index a0177450c5603f86eab6da6900733e0657e74eb3..6510d1d25008d63f998925e533b8994c7c818a51 100644 +index 09e5575f67c0a7484663d0ecbee5963be622cb8f..b206eca9426491921e6cacfad3fb764d474e7945 100644 --- a/extensions/browser/script_injection_tracker.cc +++ b/extensions/browser/script_injection_tracker.cc @@ -177,7 +177,6 @@ std::vector GetLoadedDynamicScripts( diff --git a/patches/chromium/custom_protocols_plzserviceworker.patch b/patches/chromium/custom_protocols_plzserviceworker.patch index 653996242f1d..c63a8c19f441 100644 --- a/patches/chromium/custom_protocols_plzserviceworker.patch +++ b/patches/chromium/custom_protocols_plzserviceworker.patch @@ -8,10 +8,10 @@ Allow registering custom protocols to handle service worker main script fetching Refs https://bugs.chromium.org/p/chromium/issues/detail?id=996511 diff --git a/content/browser/service_worker/service_worker_context_wrapper.cc b/content/browser/service_worker/service_worker_context_wrapper.cc -index 66572a7d39d94b00886b013185c62d7fa85321f2..35ec0c6cbbaeeace8cc835599df035f4fe21a53d 100644 +index b0be247c7099353c57e56cac0be50edc657bf8a9..2ef7fc4d733bd3e33415c969bd12b997561e4353 100644 --- a/content/browser/service_worker/service_worker_context_wrapper.cc +++ b/content/browser/service_worker/service_worker_context_wrapper.cc -@@ -1937,6 +1937,26 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest( +@@ -1938,6 +1938,26 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest( loader_factory_bundle_info = context()->loader_factory_bundle_for_update_check()->Clone(); @@ -38,7 +38,7 @@ index 66572a7d39d94b00886b013185c62d7fa85321f2..35ec0c6cbbaeeace8cc835599df035f4 if (auto* config = content::WebUIConfigMap::GetInstance().GetConfig( browser_context(), scope)) { // If this is a Service Worker for a WebUI, the WebUI's URLDataSource -@@ -1956,9 +1976,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest( +@@ -1957,9 +1977,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest( features::kEnableServiceWorkersForChromeScheme) && scope.scheme_piece() == kChromeUIScheme) { config->RegisterURLDataSource(browser_context()); @@ -49,7 +49,7 @@ index 66572a7d39d94b00886b013185c62d7fa85321f2..35ec0c6cbbaeeace8cc835599df035f4 .emplace(kChromeUIScheme, CreateWebUIServiceWorkerLoaderFactory( browser_context(), kChromeUIScheme, base::flat_set())); -@@ -1966,9 +1984,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest( +@@ -1967,9 +1985,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest( features::kEnableServiceWorkersForChromeUntrusted) && scope.scheme_piece() == kChromeUIUntrustedScheme) { config->RegisterURLDataSource(browser_context()); diff --git a/patches/chromium/disable_hidden.patch b/patches/chromium/disable_hidden.patch index 06b8426995a2..e81dc0990d7e 100644 --- a/patches/chromium/disable_hidden.patch +++ b/patches/chromium/disable_hidden.patch @@ -6,10 +6,10 @@ Subject: disable_hidden.patch Electron uses this to disable background throttling for hidden windows. diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc -index 80ccb50098f642f4ce7bd97de20d821decd8fab6..1874493c21087f1cf3a565956bd48ebac6892135 100644 +index 3cd4d698ef5e302bd2913adfcaffedcf46e9dc8e..eac923378ce1e73f51f182f4dadb7e6f98ee0cfd 100644 --- a/content/browser/renderer_host/render_widget_host_impl.cc +++ b/content/browser/renderer_host/render_widget_host_impl.cc -@@ -834,6 +834,10 @@ void RenderWidgetHostImpl::WasHidden() { +@@ -835,6 +835,10 @@ void RenderWidgetHostImpl::WasHidden() { return; } @@ -21,7 +21,7 @@ index 80ccb50098f642f4ce7bd97de20d821decd8fab6..1874493c21087f1cf3a565956bd48eba // Prompts should remain open and functional across tab switches. if (!delegate_ || !delegate_->IsWaitingForPointerLockPrompt(this)) { diff --git a/content/browser/renderer_host/render_widget_host_impl.h b/content/browser/renderer_host/render_widget_host_impl.h -index ad3b28d343c6c7c454bb6deb2459ba807e992ca5..65431096f65d6bb3f4c3efeae7f80617ed596cad 100644 +index 1e5164c3f015711d337f3775eb67381b76126344..062f911a9515285444f9c0abf9220f8d37a68e8f 100644 --- a/content/browser/renderer_host/render_widget_host_impl.h +++ b/content/browser/renderer_host/render_widget_host_impl.h @@ -1020,6 +1020,9 @@ class CONTENT_EXPORT RenderWidgetHostImpl @@ -32,7 +32,7 @@ index ad3b28d343c6c7c454bb6deb2459ba807e992ca5..65431096f65d6bb3f4c3efeae7f80617 + bool disable_hidden_ = false; + protected: - // |routing_id| must not be MSG_ROUTING_NONE. + // |routing_id| must not be IPC::mojom::kRoutingIdNone. // If this object outlives |delegate|, DetachDelegate() must be called when diff --git a/content/browser/renderer_host/render_widget_host_view_aura.cc b/content/browser/renderer_host/render_widget_host_view_aura.cc index 2aa678fde76a0f9db2e2e784d7e00228e61ef4e5..9b0bcaab04af3f13aca061604fe1be4daa159a35 100644 diff --git a/patches/chromium/expose_setuseragent_on_networkcontext.patch b/patches/chromium/expose_setuseragent_on_networkcontext.patch index 2e70e414a234..c77a89ca0f7b 100644 --- a/patches/chromium/expose_setuseragent_on_networkcontext.patch +++ b/patches/chromium/expose_setuseragent_on_networkcontext.patch @@ -33,10 +33,10 @@ index 0ab8187b0db8ae6db46d81738f653a2bc4c566f6..de3d55e85c22317f7f9375eb94d0d5d4 } // namespace net diff --git a/services/network/network_context.cc b/services/network/network_context.cc -index 7bfd9b892a0e9f9fa9cbda53e98d137c7e7e8bba..d7f9c92d62983a7a9f0fcd679d56913078df83a6 100644 +index 4358fcc3dd45e6801b034b21c4ff29144501b719..09f80b28b68a47aec778183d46f1e847649b241b 100644 --- a/services/network/network_context.cc +++ b/services/network/network_context.cc -@@ -1871,6 +1871,13 @@ void NetworkContext::SetNetworkConditions( +@@ -1872,6 +1872,13 @@ void NetworkContext::SetNetworkConditions( std::move(network_conditions)); } diff --git a/patches/chromium/feat_configure_launch_options_for_service_process.patch b/patches/chromium/feat_configure_launch_options_for_service_process.patch index 20b06f106f64..cc158edcffc5 100644 --- a/patches/chromium/feat_configure_launch_options_for_service_process.patch +++ b/patches/chromium/feat_configure_launch_options_for_service_process.patch @@ -187,7 +187,7 @@ index d9c14f91747bde0e76056d7f2f2ada166e67f994..53be16879777a3b9bef58ead5f7e420c UtilityProcessHost::Start(std::move(utility_options), diff --git a/content/browser/service_host/utility_process_host.cc b/content/browser/service_host/utility_process_host.cc -index 41a119a0a8deaad3ede850506f18868facaddf19..4a549fb67f2e2e9a60c46bd84273df6358e9d4c1 100644 +index 11846daf710f7cc272da17f14b8813fea93fe7e6..136fa55e7945f1d6abf5731c9cbaa92148f8117d 100644 --- a/content/browser/service_host/utility_process_host.cc +++ b/content/browser/service_host/utility_process_host.cc @@ -245,13 +245,13 @@ UtilityProcessHost::Options& UtilityProcessHost::Options::WithFileToPreload( @@ -407,10 +407,10 @@ index ff9941f1f46658574e8ac53bc80fdf665f873bc0..51dfb23c8ebba7ec075ecab597bd8473 #if BUILDFLAG(USE_ZYGOTE) ZygoteCommunication* UtilitySandboxedProcessLauncherDelegate::GetZygote() { diff --git a/content/browser/service_host/utility_sandbox_delegate.h b/content/browser/service_host/utility_sandbox_delegate.h -index 9b900ad3d191f97dcaa00015aee5ebd554653948..99c4ec02ebf4485e312c5c4a17a31bf02962f617 100644 +index f2e8c1d62c1cb1677f618b584ed401685b03034b..7c47ec471e4676365cf3e023808983cb3e7a18d0 100644 --- a/content/browser/service_host/utility_sandbox_delegate.h +++ b/content/browser/service_host/utility_sandbox_delegate.h -@@ -35,7 +35,9 @@ class CONTENT_EXPORT UtilitySandboxedProcessLauncherDelegate +@@ -36,7 +36,9 @@ class CONTENT_EXPORT UtilitySandboxedProcessLauncherDelegate public: UtilitySandboxedProcessLauncherDelegate(sandbox::mojom::Sandbox sandbox_type, const base::EnvironmentMap& env, @@ -707,10 +707,10 @@ index b67f4f87d588386409a90cd49e8338272c6e0d51..c34a80ec8db1b868a7f387ea4a11d71d #if BUILDFLAG(IS_MAC) // Whether or not to disclaim TCC responsibility for the process, defaults to diff --git a/sandbox/policy/win/sandbox_win.cc b/sandbox/policy/win/sandbox_win.cc -index 4fb8e2a9d7a6e24aeb7148592659981754d027b3..53b72124ffaa77f740d689fcc1781556bcca4e66 100644 +index bd9c7161d3b12bc6ac1457a777632569e758b318..f3496481a3b7e50a0dbc6a020ea0a13de48fd793 100644 --- a/sandbox/policy/win/sandbox_win.cc +++ b/sandbox/policy/win/sandbox_win.cc -@@ -589,11 +589,9 @@ base::win::ScopedHandle CreateUnsandboxedJob() { +@@ -590,11 +590,9 @@ base::win::ScopedHandle CreateUnsandboxedJob() { // command line flag. ResultCode LaunchWithoutSandbox( const base::CommandLine& cmd_line, @@ -723,7 +723,7 @@ index 4fb8e2a9d7a6e24aeb7148592659981754d027b3..53b72124ffaa77f740d689fcc1781556 options.feedback_cursor_off = true; // Network process runs in a job even when unsandboxed. This is to ensure it // does not outlive the browser, which could happen if there is a lot of I/O -@@ -896,7 +894,7 @@ bool SandboxWin::InitTargetServices(TargetServices* target_services) { +@@ -897,7 +895,7 @@ bool SandboxWin::InitTargetServices(TargetServices* target_services) { // static ResultCode SandboxWin::GeneratePolicyForSandboxedProcess( const base::CommandLine& cmd_line, @@ -732,7 +732,7 @@ index 4fb8e2a9d7a6e24aeb7148592659981754d027b3..53b72124ffaa77f740d689fcc1781556 SandboxDelegate* delegate, TargetPolicy* policy) { const base::CommandLine& launcher_process_command_line = -@@ -910,7 +908,7 @@ ResultCode SandboxWin::GeneratePolicyForSandboxedProcess( +@@ -911,7 +909,7 @@ ResultCode SandboxWin::GeneratePolicyForSandboxedProcess( } // Add any handles to be inherited to the policy. @@ -741,7 +741,7 @@ index 4fb8e2a9d7a6e24aeb7148592659981754d027b3..53b72124ffaa77f740d689fcc1781556 policy->AddHandleToShare(handle); if (!policy->GetConfig()->IsConfigured()) { -@@ -925,6 +923,13 @@ ResultCode SandboxWin::GeneratePolicyForSandboxedProcess( +@@ -926,6 +924,13 @@ ResultCode SandboxWin::GeneratePolicyForSandboxedProcess( // have no effect. These calls can fail with SBOX_ERROR_BAD_PARAMS. policy->SetStdoutHandle(GetStdHandle(STD_OUTPUT_HANDLE)); policy->SetStderrHandle(GetStdHandle(STD_ERROR_HANDLE)); @@ -755,7 +755,7 @@ index 4fb8e2a9d7a6e24aeb7148592659981754d027b3..53b72124ffaa77f740d689fcc1781556 #endif if (!delegate->PreSpawnTarget(policy)) -@@ -936,7 +941,7 @@ ResultCode SandboxWin::GeneratePolicyForSandboxedProcess( +@@ -937,7 +942,7 @@ ResultCode SandboxWin::GeneratePolicyForSandboxedProcess( // static ResultCode SandboxWin::StartSandboxedProcess( const base::CommandLine& cmd_line, @@ -764,7 +764,7 @@ index 4fb8e2a9d7a6e24aeb7148592659981754d027b3..53b72124ffaa77f740d689fcc1781556 SandboxDelegate* delegate, StartSandboxedProcessCallback result_callback) { SandboxLaunchTimer timer; -@@ -946,7 +951,7 @@ ResultCode SandboxWin::StartSandboxedProcess( +@@ -947,7 +952,7 @@ ResultCode SandboxWin::StartSandboxedProcess( *base::CommandLine::ForCurrentProcess())) { base::Process process; ResultCode result = @@ -773,7 +773,7 @@ index 4fb8e2a9d7a6e24aeb7148592659981754d027b3..53b72124ffaa77f740d689fcc1781556 DWORD last_error = GetLastError(); std::move(result_callback).Run(std::move(process), last_error, result); return SBOX_ALL_OK; -@@ -956,7 +961,7 @@ ResultCode SandboxWin::StartSandboxedProcess( +@@ -957,7 +962,7 @@ ResultCode SandboxWin::StartSandboxedProcess( timer.OnPolicyCreated(); ResultCode result = GeneratePolicyForSandboxedProcess( diff --git a/patches/chromium/feat_corner_smoothing_css_rule_and_blink_painting.patch b/patches/chromium/feat_corner_smoothing_css_rule_and_blink_painting.patch index bebf49122034..d3881aab7dfe 100644 --- a/patches/chromium/feat_corner_smoothing_css_rule_and_blink_painting.patch +++ b/patches/chromium/feat_corner_smoothing_css_rule_and_blink_painting.patch @@ -45,7 +45,7 @@ index e189d584f05f2ce6354c03a9b19f56985df8a15e..41b430e8f2416be098494f5c49fb97ca 'internal-forced-visited-'): internal_visited_order = 0 diff --git a/third_party/blink/renderer/core/css/css_properties.json5 b/third_party/blink/renderer/core/css/css_properties.json5 -index b9793d3305e1e8ae0b166b436f6693a3343ed842..941a56fa5f71bec02d9453133616523490c4d170 100644 +index 919f23e8774419a2aeabe39b6cd4d4105046ad54..5e904a2bbb7edf398fdfd737145837c751145036 100644 --- a/third_party/blink/renderer/core/css/css_properties.json5 +++ b/third_party/blink/renderer/core/css/css_properties.json5 @@ -8939,6 +8939,26 @@ @@ -89,10 +89,10 @@ index b3c6edce43c4b894f6e93df2f8356416a626c335..f917ff67620e627af21c7f2e9f0605e1 return a.EmptyCells() == b.EmptyCells(); case CSSPropertyID::kFill: diff --git a/third_party/blink/renderer/core/css/properties/longhands/longhands_custom.cc b/third_party/blink/renderer/core/css/properties/longhands/longhands_custom.cc -index 69c5df1f02fe4135a7c04ccac2c444be60e014ca..eb8d48aacb868ed268d6d87d1191c8c627700400 100644 +index 2f7d7fbb8d95791dd287170b9f99dd420cfa9487..b705afe19cbb3a39a42a869eb994e7aa976ce98e 100644 --- a/third_party/blink/renderer/core/css/properties/longhands/longhands_custom.cc +++ b/third_party/blink/renderer/core/css/properties/longhands/longhands_custom.cc -@@ -12261,5 +12261,36 @@ const CSSValue* InternalEmptyLineHeight::ParseSingleValue( +@@ -12263,5 +12263,36 @@ const CSSValue* InternalEmptyLineHeight::ParseSingleValue( CSSValueID::kNone>(stream); } @@ -130,10 +130,10 @@ index 69c5df1f02fe4135a7c04ccac2c444be60e014ca..eb8d48aacb868ed268d6d87d1191c8c6 } // namespace css_longhand } // namespace blink diff --git a/third_party/blink/renderer/core/css/resolver/style_builder_converter.cc b/third_party/blink/renderer/core/css/resolver/style_builder_converter.cc -index 70cc3bd6906ff1498e97a15404d6c5f0c86585cf..43de5271dd30e113c8b75c57af1b9fa8c7735718 100644 +index 8f3031a26ad1e50d7658319360734ea58e78d6d0..a524bb02db69f5716a37d392e9f63e5a24ad1f73 100644 --- a/third_party/blink/renderer/core/css/resolver/style_builder_converter.cc +++ b/third_party/blink/renderer/core/css/resolver/style_builder_converter.cc -@@ -4009,6 +4009,15 @@ PositionTryFallback StyleBuilderConverter::ConvertSinglePositionTryFallback( +@@ -4013,6 +4013,15 @@ PositionTryFallback StyleBuilderConverter::ConvertSinglePositionTryFallback( return PositionTryFallback(scoped_name, tactic_list); } @@ -150,10 +150,10 @@ index 70cc3bd6906ff1498e97a15404d6c5f0c86585cf..43de5271dd30e113c8b75c57af1b9fa8 const CSSValue& value) { const auto& list = To(value); diff --git a/third_party/blink/renderer/core/css/resolver/style_builder_converter.h b/third_party/blink/renderer/core/css/resolver/style_builder_converter.h -index 41e79c387634205a96c8ade598e141e6b8ca83ba..e51fc9d7027ddf8accc2895800ed07a568513116 100644 +index 047757180c5af2a45296d347b44cec156d74c65d..24a607ac9f49176dac2c14da85f0ca85f87b1189 100644 --- a/third_party/blink/renderer/core/css/resolver/style_builder_converter.h +++ b/third_party/blink/renderer/core/css/resolver/style_builder_converter.h -@@ -432,6 +432,7 @@ class StyleBuilderConverter { +@@ -431,6 +431,7 @@ class StyleBuilderConverter { static PositionTryFallback ConvertSinglePositionTryFallback( StyleResolverState&, const CSSValue&); @@ -201,10 +201,10 @@ index ec80337fdac36fa1636f5142c3827d3bbc81644c..634db12dfb443acabde79e9faf59cb84 return result; } diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/renderer/platform/BUILD.gn -index 4595323e89d35a838b5fa8c1cf982ee16b6619ab..516f619f6d5b0817a607f6b1950f14f3b29e3212 100644 +index d18c54d41d38a6c4d5206ee6b0656aa615be9d8e..c37337b54b0305584903f264b41eacb373e5eb0f 100644 --- a/third_party/blink/renderer/platform/BUILD.gn +++ b/third_party/blink/renderer/platform/BUILD.gn -@@ -1652,6 +1652,8 @@ component("platform") { +@@ -1654,6 +1654,8 @@ component("platform") { "widget/widget_base.h", "widget/widget_base_client.h", "windows_keyboard_codes.h", @@ -312,7 +312,7 @@ index 7e3d46902fbf736b4240eb3fcb89975a7b222197..57fdc89fc265ad70cb0bff8443cc1026 auto DrawAsSinglePath = [&]() { diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 -index 85c3b4180655761089e220efb3f2409677640d77..a65865bb3d3472cb9a34b758438c46839ec3f1cf 100644 +index 4ca6cbc36ce4e183d3291c1a03b89b0a58fc5810..8811ec2ffed7e11c9ee4e25a4491568c55cd95a6 100644 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 @@ -214,6 +214,10 @@ diff --git a/patches/chromium/feat_enable_passing_exit_code_on_service_process_crash.patch b/patches/chromium/feat_enable_passing_exit_code_on_service_process_crash.patch index 7973117b44af..68760147cfea 100644 --- a/patches/chromium/feat_enable_passing_exit_code_on_service_process_crash.patch +++ b/patches/chromium/feat_enable_passing_exit_code_on_service_process_crash.patch @@ -84,7 +84,7 @@ index 2648adb1cf38ab557b66ffd0e3034b26b04d76d6..98eab587f343f6ca472efc3d4e7b31b2 private: const std::string service_interface_name_; diff --git a/content/browser/service_host/utility_process_host.cc b/content/browser/service_host/utility_process_host.cc -index 4a549fb67f2e2e9a60c46bd84273df6358e9d4c1..c522af4f7fb2edd33be0f671e01270d075a56ce0 100644 +index 136fa55e7945f1d6abf5731c9cbaa92148f8117d..ba6dbc588c809c482770d2f78d1cd97e91af3362 100644 --- a/content/browser/service_host/utility_process_host.cc +++ b/content/browser/service_host/utility_process_host.cc @@ -628,7 +628,7 @@ void UtilityProcessHost::OnProcessCrashed(int exit_code) { diff --git a/patches/chromium/feat_expose_raw_response_headers_from_urlloader.patch b/patches/chromium/feat_expose_raw_response_headers_from_urlloader.patch index 5beaa245f12f..f9c967174ae8 100644 --- a/patches/chromium/feat_expose_raw_response_headers_from_urlloader.patch +++ b/patches/chromium/feat_expose_raw_response_headers_from_urlloader.patch @@ -76,7 +76,7 @@ index 39f5dcef5291dfdaf778e27c1b0152313feb77b3..9f1c16e1dfccc8787a9079095687002b enabled_client_hints( const network::ResourceRequest::TrustedParams& trusted_params) { diff --git a/services/network/public/mojom/url_request.mojom b/services/network/public/mojom/url_request.mojom -index fc18883cc2e92bacb88d0d9906f7143607695ed8..dd7d1bd2364528ff12671dee724a4a259a78de70 100644 +index 596b2555b9a8730a3e34019e32bb06c3f459a4a5..0ccc425bf87ef34442f9013d9dfda71ab547752b 100644 --- a/services/network/public/mojom/url_request.mojom +++ b/services/network/public/mojom/url_request.mojom @@ -88,6 +88,9 @@ struct TrustedUrlRequestParams { diff --git a/patches/chromium/fix_crash_loading_non-standard_schemes_in_iframes.patch b/patches/chromium/fix_crash_loading_non-standard_schemes_in_iframes.patch index 0bd99fa2626b..def9e780603d 100644 --- a/patches/chromium/fix_crash_loading_non-standard_schemes_in_iframes.patch +++ b/patches/chromium/fix_crash_loading_non-standard_schemes_in_iframes.patch @@ -28,10 +28,10 @@ The patch should be removed in favor of either: Upstream bug https://bugs.chromium.org/p/chromium/issues/detail?id=1081397. diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc -index a3398d2a7de9cfba7e57428cdedb91002daf1be6..be3743400381107af205cbee639496ae8e8c00d1 100644 +index 5018ddade9e6198ad770949696a80ab14482b7e2..5d63cd4e6b33364a1134d4e23eee26e7311b824d 100644 --- a/content/browser/renderer_host/navigation_request.cc +++ b/content/browser/renderer_host/navigation_request.cc -@@ -11317,6 +11317,11 @@ url::Origin NavigationRequest::GetOriginForURLLoaderFactoryUnchecked() { +@@ -11328,6 +11328,11 @@ url::Origin NavigationRequest::GetOriginForURLLoaderFactoryUnchecked() { target_rph_id); } @@ -44,7 +44,7 @@ index a3398d2a7de9cfba7e57428cdedb91002daf1be6..be3743400381107af205cbee639496ae // origin of |common_params.url| and/or |common_params.initiator_origin|. url::Origin resolved_origin = url::Origin::Resolve( diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_party/blink/renderer/core/loader/document_loader.cc -index 1c94fef40d01cf57e5b91316d3350ab16944245d..314c5ac1624f4e8481f9327e64af3623f7d33b16 100644 +index 7b386c451719f164dd1a44efc8fa7132893c48dd..280c488db15f22f807ee8aeb598e85fa8cdb3340 100644 --- a/third_party/blink/renderer/core/loader/document_loader.cc +++ b/third_party/blink/renderer/core/loader/document_loader.cc @@ -2330,6 +2330,10 @@ Frame* DocumentLoader::CalculateOwnerFrame() { diff --git a/patches/chromium/fix_move_autopipsettingshelper_behind_branding_buildflag.patch b/patches/chromium/fix_move_autopipsettingshelper_behind_branding_buildflag.patch index bd2d334ca8a7..21979a76e2b5 100644 --- a/patches/chromium/fix_move_autopipsettingshelper_behind_branding_buildflag.patch +++ b/patches/chromium/fix_move_autopipsettingshelper_behind_branding_buildflag.patch @@ -83,10 +83,10 @@ index 32f0f62dbc4f0c541440fd99d20e0fc80825f480..bcf7e67eb024a6ec8d2470a338e016c6 PictureInPictureOcclusionTracker* diff --git a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc -index 17a7586c4b3d3723c6d29242264fcbd1a25fb146..85e26f4b08eda967f604b58a0e0c83d53cb16b31 100644 +index 6544da9c4554ca9c2a444f4f9d5896c24b65b358..7cb176ebff4be103701ee1ff588d209f3222b957 100644 --- a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc +++ b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc -@@ -464,11 +464,13 @@ std::unique_ptr VideoOverlayWindowViews::Create( +@@ -470,11 +470,13 @@ std::unique_ptr VideoOverlayWindowViews::Create( #endif // BUILDFLAG(IS_WIN) diff --git a/patches/chromium/fix_on-screen-keyboard_hides_on_input_blur_in_webview.patch b/patches/chromium/fix_on-screen-keyboard_hides_on_input_blur_in_webview.patch index cc8a653c9baa..b0900e3612fe 100644 --- a/patches/chromium/fix_on-screen-keyboard_hides_on_input_blur_in_webview.patch +++ b/patches/chromium/fix_on-screen-keyboard_hides_on_input_blur_in_webview.patch @@ -87,10 +87,10 @@ index 75df43e3cd2721a92c90c18154d53d5c203e2465..ce42c75c8face36d21f53f44c0201ac4 // The view with active text input state, i.e., a focused element. // It will be nullptr if no such view exists. Note that the active view diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index 574a00073861a9edd2f5d7daaab43e763b5a9e37..6a3da81cab89f23d7dbf26bf9e684209313ab889 100644 +index 6979684dc926d28e44b53fe5c9ad87fc5887818e..b93032cf102faff8b570902de20d69aec0c8ad3b 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -10040,7 +10040,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame( +@@ -10067,7 +10067,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame( "WebContentsImpl::OnFocusedElementChangedInFrame", "render_frame_host", frame); RenderWidgetHostViewBase* root_view = diff --git a/patches/chromium/fix_restore_original_resize_performance_on_macos.patch b/patches/chromium/fix_restore_original_resize_performance_on_macos.patch index f7e3b8f59998..cfe7b666d007 100644 --- a/patches/chromium/fix_restore_original_resize_performance_on_macos.patch +++ b/patches/chromium/fix_restore_original_resize_performance_on_macos.patch @@ -11,10 +11,10 @@ This patch should be upstreamed as a conditional revert of the logic in desktop vs mobile runtimes. i.e. restore the old logic only on desktop platforms diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc -index 59768b75a3f304056dcf6b5d665f6e41cdcfafcc..b2ce0f193d8032118d555cd408612a6fd9399cdb 100644 +index c8e0d79667fe725b360f43352578bc523cc25ef7..76289b9f0ebfb02b0bc6f2177e542d14cf00a967 100644 --- a/content/browser/renderer_host/render_widget_host_impl.cc +++ b/content/browser/renderer_host/render_widget_host_impl.cc -@@ -2136,9 +2136,8 @@ RenderWidgetHostImpl::GetWidgetInputHandler() { +@@ -2137,9 +2137,8 @@ RenderWidgetHostImpl::GetWidgetInputHandler() { void RenderWidgetHostImpl::NotifyScreenInfoChanged() { // The resize message (which may not happen immediately) will carry with it // the screen info as well as the new size (if the screen has changed scale diff --git a/patches/chromium/frame_host_manager.patch b/patches/chromium/frame_host_manager.patch index 17dfe5a6d6b6..4a0900f26e34 100644 --- a/patches/chromium/frame_host_manager.patch +++ b/patches/chromium/frame_host_manager.patch @@ -6,10 +6,10 @@ Subject: frame_host_manager.patch Allows embedder to intercept site instances created by chromium. diff --git a/content/browser/renderer_host/render_frame_host_manager.cc b/content/browser/renderer_host/render_frame_host_manager.cc -index 821de7450dd9f3fc92a0f0dbd59c4793d3bf750c..45d89ca0ef1c09e81292c9aaedc83ef074b27c32 100644 +index 7465a2a9e6c46ab8810925ea781088126fbbb44e..dedf0fe2423f743b202d646a49fb8c633645f878 100644 --- a/content/browser/renderer_host/render_frame_host_manager.cc +++ b/content/browser/renderer_host/render_frame_host_manager.cc -@@ -4786,6 +4786,9 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest( +@@ -4787,6 +4787,9 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest( request->ResetStateForSiteInstanceChange(); } @@ -20,7 +20,7 @@ index 821de7450dd9f3fc92a0f0dbd59c4793d3bf750c..45d89ca0ef1c09e81292c9aaedc83ef0 } diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h -index 07ce06a3c38d8aeef996329ce91c3cbcaf80581e..d8e24ea798d61ad3af5548bee2c6bf4932cc2c58 100644 +index 8c4704131677362a240a4456f7a73e34d8632d2b..00c43257b9c8ad716597e166574c239ea9cfde09 100644 --- a/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h @@ -338,6 +338,11 @@ class CONTENT_EXPORT ContentBrowserClient { diff --git a/patches/chromium/gritsettings_resource_ids.patch b/patches/chromium/gritsettings_resource_ids.patch index 63baea640bd0..2a8bc97e46a6 100644 --- a/patches/chromium/gritsettings_resource_ids.patch +++ b/patches/chromium/gritsettings_resource_ids.patch @@ -6,10 +6,10 @@ Subject: gritsettings_resource_ids.patch Add electron resources file to the list of resource ids generation. diff --git a/tools/gritsettings/resource_ids.spec b/tools/gritsettings/resource_ids.spec -index 16d4fa6b1186d896c8d115bb2dfe3c993df054ba..5fecc89af350dcc16c2d29d05c73c950d122f260 100644 +index 7693ff03125e2c4a7a02d19c4a0096b2ee566e48..2417a0e46102202f0e696c47cdd6d84b248dabfd 100644 --- a/tools/gritsettings/resource_ids.spec +++ b/tools/gritsettings/resource_ids.spec -@@ -1535,6 +1535,11 @@ +@@ -1547,6 +1547,11 @@ "structures": [10100], }, diff --git a/patches/chromium/mas_avoid_private_macos_api_usage.patch.patch b/patches/chromium/mas_avoid_private_macos_api_usage.patch.patch index c4340499c1bd..c6a94b1a00d9 100644 --- a/patches/chromium/mas_avoid_private_macos_api_usage.patch.patch +++ b/patches/chromium/mas_avoid_private_macos_api_usage.patch.patch @@ -35,7 +35,7 @@ system font by checking if it's kCTFontPriorityAttribute is set to system priority. diff --git a/base/BUILD.gn b/base/BUILD.gn -index 152f732f17423c2533d0e296f66d724c1766f354..8c54c3d7561de12c436141df93c96d7c28595bbe 100644 +index 7f7c60a6777c72c76eff5a261e0af12c2a244634..d928082d92b96dc0b33cec9c6942baa8830239e1 100644 --- a/base/BUILD.gn +++ b/base/BUILD.gn @@ -1055,6 +1055,7 @@ component("base") { @@ -548,10 +548,10 @@ index 010c713090e5038dc90db131c8f621422d30c03b..20c35e887a0496ee609c077e3b0494bd void ForwardKeyboardEvent(const input::NativeWebKeyboardEvent& key_event, diff --git a/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm b/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm -index 8563eb9aa5b5dca04e45d55a3bdd32a135232f00..587bafc4fa1f73c9ac8403757b21bfed0487424d 100644 +index 2d5cad5d7a4ab9292a5f966123687dee06f4512b..ae798fc8f923a9b590c0d9ed703946a2bf5bd3d4 100644 --- a/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm +++ b/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm -@@ -38,6 +38,7 @@ +@@ -34,6 +34,7 @@ #import "content/public/browser/render_widget_host_view_mac_delegate.h" #include "content/public/browser/scoped_accessibility_mode.h" #include "content/public/common/content_features.h" @@ -559,7 +559,7 @@ index 8563eb9aa5b5dca04e45d55a3bdd32a135232f00..587bafc4fa1f73c9ac8403757b21bfed #include "skia/ext/skia_utils_mac.h" #include "third_party/blink/public/common/features.h" #include "third_party/blink/public/mojom/input/input_handler.mojom.h" -@@ -2090,15 +2091,21 @@ - (NSAccessibilityRole)accessibilityRole { +@@ -2086,15 +2087,21 @@ - (NSAccessibilityRole)accessibilityRole { // Since this implementation doesn't have to wait any IPC calls, this doesn't // make any key-typing jank. --hbono 7/23/09 // @@ -797,10 +797,10 @@ index a1068589ad844518038ee7bc15a3de9bc5cba525..1ff781c49f086ec8015c7d3c44567dbe } // namespace content diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn -index ef3b4b76737cb6161b40475fb4b4c834167045a7..76673e1139fc4953791353e9caccd23b15a358e1 100644 +index a235974eccd4e62e6bc4bf10d37e7057ebc9dd5a..8412aaaae5866994fe2d30c1d5c421ef81343e0d 100644 --- a/content/test/BUILD.gn +++ b/content/test/BUILD.gn -@@ -668,6 +668,7 @@ static_library("test_support") { +@@ -670,6 +670,7 @@ static_library("test_support") { "//url", "//url/mojom:url_mojom_gurl", "//v8", @@ -808,15 +808,16 @@ index ef3b4b76737cb6161b40475fb4b4c834167045a7..76673e1139fc4953791353e9caccd23b ] data_deps = [ -@@ -1110,6 +1111,7 @@ static_library("browsertest_support") { - } - - configs += [ "//v8:external_startup_data" ] +@@ -1120,6 +1121,8 @@ static_library("browsertest_support") { + # TODO(crbug.com/40031409): Fix code that adds exit-time destructors and + # enable the diagnostic by removing this line. + configs += [ "//build/config/compiler:no_exit_time_destructors" ] ++ + deps += ["//electron/build/config:generate_mas_config"] } mojom("content_test_mojo_bindings") { -@@ -1975,6 +1977,7 @@ test("content_browsertests") { +@@ -1988,6 +1991,7 @@ test("content_browsertests") { "//ui/shell_dialogs", "//ui/snapshot", "//ui/webui:test_support", @@ -824,7 +825,7 @@ index ef3b4b76737cb6161b40475fb4b4c834167045a7..76673e1139fc4953791353e9caccd23b ] if (!(is_chromeos && target_cpu == "arm64" && current_cpu == "arm")) { -@@ -3280,6 +3283,7 @@ test("content_unittests") { +@@ -3297,6 +3301,7 @@ test("content_unittests") { "//ui/shell_dialogs:shell_dialogs", "//ui/webui:test_support", "//url", @@ -833,7 +834,7 @@ index ef3b4b76737cb6161b40475fb4b4c834167045a7..76673e1139fc4953791353e9caccd23b if (enable_nocompile_tests) { diff --git a/content/web_test/BUILD.gn b/content/web_test/BUILD.gn -index bfc8f7a2b5bc7c54dbc0157d581bb556b7c7d7a7..888876d7f770588355d9de3c0faf8f8d24243b77 100644 +index ea0d03e4eb473a2eec4164191c02184577de4366..af2d64f0cf19c4325013d5f62da5079f379ef085 100644 --- a/content/web_test/BUILD.gn +++ b/content/web_test/BUILD.gn @@ -229,6 +229,7 @@ static_library("web_test_browser") { @@ -903,10 +904,10 @@ index f300e8d331057e894b43b74944e5052c39206844..4ff5277d550485cd79c5b5316d89c730 base::WeakPtr diff --git a/gpu/ipc/service/BUILD.gn b/gpu/ipc/service/BUILD.gn -index 906b5f43081a8caf02639c4f9f40bc1a45560c17..17e1c453f431100de0cb8504f567bdfc8eabb5d7 100644 +index 77b69bc2a6329c09ecd635bc9e003985ba631360..990df27831c390a2d8801df271006b0fa59752cf 100644 --- a/gpu/ipc/service/BUILD.gn +++ b/gpu/ipc/service/BUILD.gn -@@ -131,6 +131,7 @@ component("service") { +@@ -128,6 +128,7 @@ component("service") { "QuartzCore.framework", ] defines += [ "GL_SILENCE_DEPRECATION" ] @@ -915,7 +916,7 @@ index 906b5f43081a8caf02639c4f9f40bc1a45560c17..17e1c453f431100de0cb8504f567bdfc if (is_ios) { sources += [ "image_transport_surface_ios.mm" ] diff --git a/gpu/ipc/service/image_transport_surface_overlay_mac.h b/gpu/ipc/service/image_transport_surface_overlay_mac.h -index f89dbdfb0c4e8e31d387d1ce2e5304277ac4df26..7b75bfeba59345d63f4ac8115369794144754b97 100644 +index d288ffce5c1265adbdefc571f840851026e7479e..e9a6e8c31401750d270fcc55ef1116b2608b65b5 100644 --- a/gpu/ipc/service/image_transport_surface_overlay_mac.h +++ b/gpu/ipc/service/image_transport_surface_overlay_mac.h @@ -8,6 +8,7 @@ @@ -937,7 +938,7 @@ index f89dbdfb0c4e8e31d387d1ce2e5304277ac4df26..7b75bfeba59345d63f4ac81153697941 namespace ui { diff --git a/media/audio/BUILD.gn b/media/audio/BUILD.gn -index d133d2759f1025d10b47c23a322001a5a7ba3568..8b945958c96bbdb54de2c870b00bd5f73ecc41c8 100644 +index 5064c9e21892333cf91579b49642ba500156c201..673e11336c5f5bb350b4622436c80c7299cfb607 100644 --- a/media/audio/BUILD.gn +++ b/media/audio/BUILD.gn @@ -202,6 +202,7 @@ source_set("audio") { @@ -985,7 +986,7 @@ index 0f7c441ba44fe22b1bf4913ae8e61a8bb7ef7fe7..2311fdbbfa566e76b4709059b707ac4d } // namespace #endif diff --git a/net/dns/BUILD.gn b/net/dns/BUILD.gn -index 618bd3b91278836bb249614b301452b3053051a8..4e53d2d23593de5afaa97a5ad68de78f5c646ffd 100644 +index 2a70752c12245d528629d1f552e1d7bdae7e4cf2..1a84b64614679a0879b4e96ec13385dd0504faf7 100644 --- a/net/dns/BUILD.gn +++ b/net/dns/BUILD.gn @@ -193,6 +193,8 @@ source_set("dns") { @@ -1092,7 +1093,7 @@ index 950cf7cfee4e11766dccf5c0bf3f15a8562f0f1e..a5adaaabdbbd91fedbc4cb679c865bc3 // |error| is strerror(errno) when a P* logging function is called. Pass diff --git a/sandbox/mac/sandbox_serializer.cc b/sandbox/mac/sandbox_serializer.cc -index ea1627bdd872f89056e97e486feb2d44587a894e..26f339e40bcbd8963585765e20e49955f49263aa 100644 +index 0e6e650f88e6aadd46bec96a8b41768c37d7cc6a..a6830e3f886e408c254ccd1c2b1d5c15cd3bcb92 100644 --- a/sandbox/mac/sandbox_serializer.cc +++ b/sandbox/mac/sandbox_serializer.cc @@ -8,6 +8,7 @@ @@ -1103,7 +1104,7 @@ index ea1627bdd872f89056e97e486feb2d44587a894e..26f339e40bcbd8963585765e20e49955 #include "sandbox/mac/sandbox_logging.h" #include "sandbox/mac/seatbelt.h" -@@ -197,6 +198,7 @@ SandboxSerializer::DeserializePolicy(const std::string& serialized_policy, +@@ -193,6 +194,7 @@ SandboxSerializer::DeserializePolicy(const std::string& serialized_policy, // static bool SandboxSerializer::ApplySerializedPolicy( const std::string& serialized_policy) { @@ -1111,7 +1112,7 @@ index ea1627bdd872f89056e97e486feb2d44587a894e..26f339e40bcbd8963585765e20e49955 std::string error; std::optional deserialized_policy = DeserializePolicy(serialized_policy, error); -@@ -227,6 +229,9 @@ bool SandboxSerializer::ApplySerializedPolicy( +@@ -223,6 +225,9 @@ bool SandboxSerializer::ApplySerializedPolicy( break; } return true; @@ -1406,10 +1407,10 @@ index eb81a70e4d5d5cd3e6ae9b45f8cd1c795ea76c51..9921ccb10d3455600eddd85f77f10228 } // namespace sandbox diff --git a/third_party/blink/renderer/core/BUILD.gn b/third_party/blink/renderer/core/BUILD.gn -index 1921e9755d7bd07a527512b98132706c7e29ef58..08b77ee8f06fe9b942831adeb90e9d36040d8cad 100644 +index f70ce69bb932a217759d8c06104ccdae5f67d670..32029a906c0d205ad8d2658b11e5a55495cf95b7 100644 --- a/third_party/blink/renderer/core/BUILD.gn +++ b/third_party/blink/renderer/core/BUILD.gn -@@ -419,6 +419,7 @@ component("core") { +@@ -423,6 +423,7 @@ component("core") { "//ui/gfx/geometry", "//ui/gfx/geometry:geometry_skia", "//ui/strings", @@ -1450,7 +1451,7 @@ index 296d38b10d16c7b17137358fe89bac6a03afce09..9608842b8b0df441dc654bf96b46f052 } diff --git a/ui/accelerated_widget_mac/ca_layer_tree_coordinator.h b/ui/accelerated_widget_mac/ca_layer_tree_coordinator.h -index af13a067beb5fc0d5c6b7eb579b04d1d6dc130de..1a7ddbc3a1f7a989a3f7e0c21d4d9ad7e4b435b9 100644 +index ce6a061b57cce101c103527dbbbe5ed47b2ecaf8..616922c34e1f3bc50584c0417129b78e3ff651d1 100644 --- a/ui/accelerated_widget_mac/ca_layer_tree_coordinator.h +++ b/ui/accelerated_widget_mac/ca_layer_tree_coordinator.h @@ -7,6 +7,7 @@ @@ -1471,7 +1472,7 @@ index af13a067beb5fc0d5c6b7eb579b04d1d6dc130de..1a7ddbc3a1f7a989a3f7e0c21d4d9ad7 @class CALayer; @protocol MTLDevice; -@@ -112,7 +115,9 @@ class ACCELERATED_WIDGET_MAC_EXPORT CALayerTreeCoordinator { +@@ -113,7 +116,9 @@ class ACCELERATED_WIDGET_MAC_EXPORT CALayerTreeCoordinator { // both the current tree and the pending trees. size_t presented_ca_layer_trees_max_length_ = 2; @@ -1482,7 +1483,7 @@ index af13a067beb5fc0d5c6b7eb579b04d1d6dc130de..1a7ddbc3a1f7a989a3f7e0c21d4d9ad7 // The root CALayer to display the current frame. This does not change // over the lifetime of the object. diff --git a/ui/accelerated_widget_mac/ca_layer_tree_coordinator.mm b/ui/accelerated_widget_mac/ca_layer_tree_coordinator.mm -index 9cf72ff8b8593dae415d07796f1bebeeea3e2f76..3e78af6e65085cb978133e49aa4cc164bcc94027 100644 +index 54651172993f7d07f21a395511f773bff40115d8..295d8bef6e9ec966db570d7537abfc049324512d 100644 --- a/ui/accelerated_widget_mac/ca_layer_tree_coordinator.mm +++ b/ui/accelerated_widget_mac/ca_layer_tree_coordinator.mm @@ -10,6 +10,7 @@ @@ -1818,7 +1819,7 @@ index 85d9170ae8de43ec0fa18c033d66c0583c26ec2f..c4f76301818404ce853583adf01af85c // Query the display's refresh rate. double refresh_rate = 1.0 / screen.minimumRefreshInterval; diff --git a/ui/gfx/BUILD.gn b/ui/gfx/BUILD.gn -index 20ec218ead745327e00e95d95b0dd4f3488e97de..b1655a029fbc49e0ec13a9cb875943ab231bd2d3 100644 +index 1a7b1e3fd1e3971306939a9086014179dd492503..3d7ba97d904a6ad8da6bb3d36497ac00d54b44fa 100644 --- a/ui/gfx/BUILD.gn +++ b/ui/gfx/BUILD.gn @@ -339,6 +339,12 @@ component("gfx") { diff --git a/patches/chromium/network_service_allow_remote_certificate_verification_logic.patch b/patches/chromium/network_service_allow_remote_certificate_verification_logic.patch index e1949c844c1f..578ecc7bc5b4 100644 --- a/patches/chromium/network_service_allow_remote_certificate_verification_logic.patch +++ b/patches/chromium/network_service_allow_remote_certificate_verification_logic.patch @@ -7,7 +7,7 @@ This adds a callback from the network service that's used to implement session.setCertificateVerifyCallback. diff --git a/services/network/network_context.cc b/services/network/network_context.cc -index b19bfa46c2ca2a6feecb5471eb48d932665b1863..7bfd9b892a0e9f9fa9cbda53e98d137c7e7e8bba 100644 +index 0715ffeda932d5ef8b5c90008ada8e84efbff765..4358fcc3dd45e6801b034b21c4ff29144501b719 100644 --- a/services/network/network_context.cc +++ b/services/network/network_context.cc @@ -165,6 +165,11 @@ @@ -22,7 +22,7 @@ index b19bfa46c2ca2a6feecb5471eb48d932665b1863..7bfd9b892a0e9f9fa9cbda53e98d137c #if BUILDFLAG(IS_CT_SUPPORTED) // gn check does not account for BUILDFLAG(). So, for iOS builds, it will // complain about a missing dependency on the target exposing this header. Add a -@@ -619,6 +624,111 @@ void RecordHSTSPreconnectUpgradeReason(HSTSRedirectUpgradeReason reason) { +@@ -620,6 +625,111 @@ void RecordHSTSPreconnectUpgradeReason(HSTSRedirectUpgradeReason reason) { } // namespace @@ -134,7 +134,7 @@ index b19bfa46c2ca2a6feecb5471eb48d932665b1863..7bfd9b892a0e9f9fa9cbda53e98d137c constexpr uint32_t NetworkContext::kMaxOutstandingRequestsPerProcess; NetworkContext::NetworkContextHttpAuthPreferences:: -@@ -1022,6 +1132,13 @@ void NetworkContext::SetClient( +@@ -1023,6 +1133,13 @@ void NetworkContext::SetClient( client_.Bind(std::move(client)); } @@ -148,7 +148,7 @@ index b19bfa46c2ca2a6feecb5471eb48d932665b1863..7bfd9b892a0e9f9fa9cbda53e98d137c void NetworkContext::CreateURLLoaderFactory( mojo::PendingReceiver receiver, mojom::URLLoaderFactoryParamsPtr params) { -@@ -2658,6 +2775,10 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext( +@@ -2659,6 +2776,10 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext( cert_verifier = std::make_unique( std::make_unique( std::move(cert_verifier))); diff --git a/patches/chromium/notification_provenance.patch b/patches/chromium/notification_provenance.patch index d05a863fb5cb..2c607b888278 100644 --- a/patches/chromium/notification_provenance.patch +++ b/patches/chromium/notification_provenance.patch @@ -133,10 +133,10 @@ index 5be62a3fb27e37f3c1db6b811172f6dfebe18f61..34349f9832fe4b9a3d48db613a789afb const GURL& document_url, const WeakDocumentPtr& weak_document_ptr, diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc -index fae39035bb3e9fe086768bc4e99f2005b4294b84..7ac22e6466bba21fc57bbb77198f596db287e0ec 100644 +index b2e99ffed0ec8b70c5293e0ff69ea03a7b7eb8a8..25a06d19d7e6b4c79c7ba1caf348ea3732b4e3b8 100644 --- a/content/browser/renderer_host/render_process_host_impl.cc +++ b/content/browser/renderer_host/render_process_host_impl.cc -@@ -2216,7 +2216,7 @@ void RenderProcessHostImpl::CreateNotificationService( +@@ -2217,7 +2217,7 @@ void RenderProcessHostImpl::CreateNotificationService( case RenderProcessHost::NotificationServiceCreatorType::kSharedWorker: case RenderProcessHost::NotificationServiceCreatorType::kDedicatedWorker: { storage_partition_impl_->GetPlatformNotificationContext()->CreateService( @@ -145,7 +145,7 @@ index fae39035bb3e9fe086768bc4e99f2005b4294b84..7ac22e6466bba21fc57bbb77198f596d creator_type, std::move(receiver)); break; } -@@ -2224,7 +2224,7 @@ void RenderProcessHostImpl::CreateNotificationService( +@@ -2225,7 +2225,7 @@ void RenderProcessHostImpl::CreateNotificationService( CHECK(rfh); storage_partition_impl_->GetPlatformNotificationContext()->CreateService( diff --git a/patches/chromium/osr_shared_texture_remove_keyed_mutex_on_win_dxgi.patch b/patches/chromium/osr_shared_texture_remove_keyed_mutex_on_win_dxgi.patch index 1513ce821181..9ed346de4e18 100644 --- a/patches/chromium/osr_shared_texture_remove_keyed_mutex_on_win_dxgi.patch +++ b/patches/chromium/osr_shared_texture_remove_keyed_mutex_on_win_dxgi.patch @@ -36,11 +36,11 @@ index a2c7228ce737e41ac7d4380d903c399aa224ce1c..b499e4f01109f2bc89ea94714f19f835 Microsoft::WRL::ComPtr d3d11_texture; diff --git a/media/video/renderable_gpu_memory_buffer_video_frame_pool.cc b/media/video/renderable_gpu_memory_buffer_video_frame_pool.cc -index 673ccbc445cd05486f0337a3e27190ee90f54e6b..4dba267259e3cbed64aa7828a5eb4e0c70665c64 100644 +index ae574499f3ac6be9d35d40b2debdbc16ca1a4162..fcf8ac3b49485b11b6bcf791a822bf357d16c70b 100644 --- a/media/video/renderable_gpu_memory_buffer_video_frame_pool.cc +++ b/media/video/renderable_gpu_memory_buffer_video_frame_pool.cc -@@ -189,7 +189,7 @@ gfx::Size GetBufferSizeInPixelsForVideoPixelFormat( - bool FrameResources::Initialize() { +@@ -181,7 +181,7 @@ bool FrameResources::Initialize(VideoPixelFormat format, + auto* context = pool_->GetContext(); - constexpr gfx::BufferUsage kBufferUsage = @@ -48,9 +48,9 @@ index 673ccbc445cd05486f0337a3e27190ee90f54e6b..4dba267259e3cbed64aa7828a5eb4e0c #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) gfx::BufferUsage::SCANOUT_VEA_CPU_READ #else -@@ -203,6 +203,23 @@ bool FrameResources::Initialize() { - const gfx::Size buffer_size_in_pixels = - GetBufferSizeInPixelsForVideoPixelFormat(format_, coded_size_); +@@ -192,6 +192,23 @@ bool FrameResources::Initialize(VideoPixelFormat format, + const gfx::Size coded_size = + GetCodedSizeForVideoPixelFormat(format, visible_size_); +#if BUILDFLAG(IS_WIN) + // For CEF OSR feature, currently there's no other place in chromium use RGBA. @@ -58,7 +58,7 @@ index 673ccbc445cd05486f0337a3e27190ee90f54e6b..4dba267259e3cbed64aa7828a5eb4e0c + // once the GMB is returned from CopyRequest. So there will be no race + // condition on that texture. We can request a GMB without a keyed mutex to + // accelerate and probably prevent some driver deadlock. -+ if (format_ == PIXEL_FORMAT_ARGB || format_ == PIXEL_FORMAT_ABGR) { ++ if (format == PIXEL_FORMAT_ARGB || format == PIXEL_FORMAT_ABGR) { + // This value is 'borrowed', SCANOUT_VEA_CPU_READ is probably invalid + // cause there's no real SCANOUT on Windows. We simply use this enum as a + // flag to disable mutex in the GMBFactoryDXGI because this enum is also @@ -72,12 +72,12 @@ index 673ccbc445cd05486f0337a3e27190ee90f54e6b..4dba267259e3cbed64aa7828a5eb4e0c gpu::SharedImageUsageSet usage = #if BUILDFLAG(IS_MAC) gpu::SHARED_IMAGE_USAGE_MACOS_VIDEO_TOOLBOX | -@@ -243,7 +260,7 @@ bool FrameResources::Initialize() { - viz::GetSharedImageFormat(buffer_format); +@@ -229,7 +246,7 @@ bool FrameResources::Initialize(VideoPixelFormat format, + VideoPixelFormatToSharedImageFormat(format).value(); - shared_image_ = -- context->CreateSharedImage(buffer_size_in_pixels, kBufferUsage, si_format, -+ context->CreateSharedImage(buffer_size_in_pixels, buffer_usage, si_format, - color_space_, usage, sync_token_); + shared_image_ = context->CreateSharedImage( +- coded_size, kBufferUsage, si_format, color_space, usage, sync_token_); ++ coded_size, buffer_usage, si_format, color_space, usage, sync_token_); if (!shared_image_) { - DLOG(ERROR) << "Failed to allocate shared image for frame: coded_size=" + DLOG(ERROR) << "Failed to allocate shared image for frame: visible_size=" + << visible_size_.ToString() diff --git a/patches/chromium/picture-in-picture.patch b/patches/chromium/picture-in-picture.patch index f34ea6ab0f3b..ef64eda46f40 100644 --- a/patches/chromium/picture-in-picture.patch +++ b/patches/chromium/picture-in-picture.patch @@ -38,11 +38,16 @@ index 8168b4cfbafd42fa93a5aa9a3691c2552fabfb86..ba49212bd76d209f99c1cee649fc1466 ui::ImageModel::FromVectorIcon(*icon, kColorPipWindowForeground, kCloseButtonIconSize)); diff --git a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc -index 6c5cbed122519e15335fd12eb154ac61249795b3..17a7586c4b3d3723c6d29242264fcbd1a25fb146 100644 +index 6996fd43053f1da7b4e721e9c13cf62127c42ef2..6544da9c4554ca9c2a444f4f9d5896c24b65b358 100644 --- a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc +++ b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc -@@ -20,9 +20,11 @@ +@@ -18,12 +18,16 @@ + #include "base/time/time.h" + #include "base/timer/timer.h" #include "build/build_config.h" ++#if 0 + #include "chrome/browser/media/media_engagement_service.h" ++#endif #include "chrome/browser/picture_in_picture/picture_in_picture_occlusion_tracker.h" #include "chrome/browser/picture_in_picture/picture_in_picture_window_manager.h" +#if 0 @@ -53,7 +58,7 @@ index 6c5cbed122519e15335fd12eb154ac61249795b3..17a7586c4b3d3723c6d29242264fcbd1 #include "chrome/browser/ui/color/chrome_color_id.h" #include "chrome/browser/ui/views/overlay/back_to_tab_button.h" #include "chrome/browser/ui/views/overlay/back_to_tab_label_button.h" -@@ -74,7 +76,7 @@ +@@ -78,7 +82,7 @@ #include "ui/aura/window.h" #endif @@ -62,7 +67,7 @@ index 6c5cbed122519e15335fd12eb154ac61249795b3..17a7586c4b3d3723c6d29242264fcbd1 #include "chrome/browser/shell_integration_win.h" #include "content/public/browser/render_widget_host_view.h" #include "ui/aura/window.h" -@@ -429,7 +431,7 @@ std::unique_ptr VideoOverlayWindowViews::Create( +@@ -433,7 +437,7 @@ std::unique_ptr VideoOverlayWindowViews::Create( overlay_window->Init(std::move(params)); overlay_window->OnRootViewReady(); @@ -71,7 +76,7 @@ index 6c5cbed122519e15335fd12eb154ac61249795b3..17a7586c4b3d3723c6d29242264fcbd1 std::wstring app_user_model_id; Browser* browser = chrome::FindBrowserWithTab(controller->GetWebContents()); if (browser) { -@@ -1195,10 +1197,12 @@ void VideoOverlayWindowViews::SetUpViews() { +@@ -1248,10 +1252,12 @@ void VideoOverlayWindowViews::SetUpViews() { l10n_util::GetStringUTF16( IDS_PICTURE_IN_PICTURE_LIVE_CAPTION_CONTROL_TEXT)); live_caption_button->SetSize(kActionButtonSize); @@ -84,3 +89,20 @@ index 6c5cbed122519e15335fd12eb154ac61249795b3..17a7586c4b3d3723c6d29242264fcbd1 toggle_microphone_button = std::make_unique(base::BindRepeating( [](VideoOverlayWindowViews* overlay) { +@@ -2527,6 +2533,7 @@ gfx::Rect VideoOverlayWindowViews::GetLiveCaptionDialogBounds() { + + bool VideoOverlayWindowViews::HasHighMediaEngagement( + const url::Origin& origin) const { ++#if 0 + MediaEngagementService* service = + MediaEngagementService::Get(Profile::FromBrowserContext( + GetController()->GetWebContents()->GetBrowserContext())); +@@ -2535,6 +2542,8 @@ bool VideoOverlayWindowViews::HasHighMediaEngagement( + } + + return service->HasHighEngagement(origin); ++#endif ++ return true; + } + + bool VideoOverlayWindowViews::IsTrustedForMediaPlayback() const { diff --git a/patches/chromium/port_autofill_colors_to_the_color_pipeline.patch b/patches/chromium/port_autofill_colors_to_the_color_pipeline.patch index ec3bc88c7b73..bc040f92d155 100644 --- a/patches/chromium/port_autofill_colors_to_the_color_pipeline.patch +++ b/patches/chromium/port_autofill_colors_to_the_color_pipeline.patch @@ -8,10 +8,10 @@ needed in chromium but our autofill implementation uses them. This patch can be our autofill implementation to work like Chromium's. diff --git a/ui/color/color_id.h b/ui/color/color_id.h -index 88b3f33d71d9f89eae3b828e793a83341dc9b4cb..424940fb5065eaf1cea0a05f6f8d7e91d74333a8 100644 +index 8308dd53c198e4e3c7fe08fd6115b0ed53cf466c..e3323e4c4ff4f96ce235511a38e4e2d8cbb701c0 100644 --- a/ui/color/color_id.h +++ b/ui/color/color_id.h -@@ -430,6 +430,10 @@ +@@ -431,6 +431,10 @@ E_CPONLY(kColorRadioButtonForegroundUnchecked) \ E_CPONLY(kColorRadioButtonForegroundDisabled) \ E_CPONLY(kColorRadioButtonForegroundChecked) \ @@ -22,7 +22,7 @@ index 88b3f33d71d9f89eae3b828e793a83341dc9b4cb..424940fb5065eaf1cea0a05f6f8d7e91 E_CPONLY(kColorSegmentedButtonBorder) \ E_CPONLY(kColorSegmentedButtonFocus) \ E_CPONLY(kColorSegmentedButtonForegroundChecked) \ -@@ -538,6 +542,7 @@ +@@ -539,6 +543,7 @@ E_CPONLY(kColorTreeNodeForeground) \ E_CPONLY(kColorTreeNodeForegroundSelectedFocused) \ E_CPONLY(kColorTreeNodeForegroundSelectedUnfocused) \ diff --git a/patches/chromium/preconnect_manager.patch b/patches/chromium/preconnect_manager.patch index e43f1a61333d..fb3c8e892fc4 100644 --- a/patches/chromium/preconnect_manager.patch +++ b/patches/chromium/preconnect_manager.patch @@ -5,14 +5,23 @@ Subject: Preconnect manager * Patch disables the profile related changes added in https://chromium-review.googlesource.com/c/chromium/src/+/3928470. -* Also avoids including chrome/browser/predictors/resource_prefetch_predictor.h -in favor of defining PreconnectRequest in this file since we don't build -the header. -diff --git a/chrome/browser/predictors/preconnect_manager.cc b/chrome/browser/predictors/preconnect_manager.cc -index 05c0aa8ca2a480b7477a4b877a34855f8beb997b..46f693e6a7ba906baccf4d4d12bca36e80e7387e 100644 ---- a/chrome/browser/predictors/preconnect_manager.cc -+++ b/chrome/browser/predictors/preconnect_manager.cc +diff --git a/chrome/browser/predictors/preconnect_manager.h b/chrome/browser/predictors/preconnect_manager.h +index 9fe1c93b5cf2a5e7551f070d1d1d01683350675d..6ec8305948c3e2552775a458621c7794f839d09c 100644 +--- a/chrome/browser/predictors/preconnect_manager.h ++++ b/chrome/browser/predictors/preconnect_manager.h +@@ -8,7 +8,6 @@ + #include + + #include "base/memory/weak_ptr.h" +-#include "chrome/browser/predictors/resource_prefetch_predictor.h" + #include "content/public/browser/preconnect_request.h" + #include "content/public/browser/storage_partition_config.h" + #include "mojo/public/cpp/bindings/receiver.h" +diff --git a/chrome/browser/predictors/preconnect_manager_impl.cc b/chrome/browser/predictors/preconnect_manager_impl.cc +index 639247fec01823ee942a1fb56f2511020ab0f228..6a625fcdd0ddcd55591a90126551f174c81889b1 100644 +--- a/chrome/browser/predictors/preconnect_manager_impl.cc ++++ b/chrome/browser/predictors/preconnect_manager_impl.cc @@ -14,9 +14,11 @@ #include "base/types/optional_util.h" #include "chrome/browser/predictors/predictors_features.h" @@ -25,31 +34,10 @@ index 05c0aa8ca2a480b7477a4b877a34855f8beb997b..46f693e6a7ba906baccf4d4d12bca36e #include "content/public/browser/browser_context.h" #include "content/public/browser/browser_task_traits.h" #include "content/public/browser/browser_thread.h" -@@ -29,6 +31,20 @@ namespace predictors { +@@ -105,12 +107,15 @@ PreconnectManagerImpl::PreconnectManagerImpl( + PreconnectManagerImpl::~PreconnectManagerImpl() = default; - const bool kAllowCredentialsOnPreconnectByDefault = true; - -+// NOTE(nornagon): this is copied from -+// //chrome/browser/predictors/resource_prefetch_predictor.cc we don't need -+// anything in that file other than this constructor. -+PreconnectRequest::PreconnectRequest( -+ const url::Origin& origin, -+ int num_sockets, -+ const net::NetworkAnonymizationKey& network_anonymization_key) -+ : origin(origin), -+ num_sockets(num_sockets), -+ network_anonymization_key(network_anonymization_key) { -+ DCHECK_GE(num_sockets, 0); -+ DCHECK(!network_anonymization_key.IsEmpty()); -+} -+ - PreconnectedRequestStats::PreconnectedRequestStats(const url::Origin& origin, - bool was_preconnected) - : origin(origin), was_preconnected(was_preconnected) {} -@@ -103,12 +119,15 @@ PreconnectManager::PreconnectManager(base::WeakPtr delegate, - PreconnectManager::~PreconnectManager() = default; - - bool PreconnectManager::IsEnabled() { + bool PreconnectManagerImpl::IsEnabled() { +#if 0 Profile* profile = Profile::FromBrowserContext(browser_context_); if (!profile) { @@ -61,48 +49,18 @@ index 05c0aa8ca2a480b7477a4b877a34855f8beb997b..46f693e6a7ba906baccf4d4d12bca36e + return true; } - void PreconnectManager::Start(const GURL& url, -diff --git a/chrome/browser/predictors/preconnect_manager.h b/chrome/browser/predictors/preconnect_manager.h -index 666d9fb646cf337cf4c6145358fe3ea822220b0e..591ec08e40541058b61628e50ced35b00ff91b5d 100644 ---- a/chrome/browser/predictors/preconnect_manager.h -+++ b/chrome/browser/predictors/preconnect_manager.h -@@ -17,7 +17,9 @@ - #include "base/time/time.h" + base::WeakPtr PreconnectManagerImpl::GetWeakPtr() { +diff --git a/chrome/browser/predictors/preconnect_manager_impl.h b/chrome/browser/predictors/preconnect_manager_impl.h +index cf28c1c2572cf7c8c555ffdcb0e945b1b3c5d3ce..e057183ba0ec3ddf803302cf6e8418cb44b6b42a 100644 +--- a/chrome/browser/predictors/preconnect_manager_impl.h ++++ b/chrome/browser/predictors/preconnect_manager_impl.h +@@ -18,7 +18,9 @@ + #include "chrome/browser/predictors/preconnect_manager.h" #include "chrome/browser/predictors/proxy_lookup_client_impl.h" #include "chrome/browser/predictors/resolve_host_client_impl.h" +#if 0 #include "chrome/browser/predictors/resource_prefetch_predictor.h" +#endif + #include "content/public/browser/preconnect_request.h" #include "content/public/browser/storage_partition_config.h" #include "net/base/network_anonymization_key.h" - #include "services/network/public/mojom/connection_change_observer_client.mojom.h" -@@ -35,7 +37,28 @@ class NetworkContext; - - namespace predictors { - --struct PreconnectRequest; -+// Stores all values needed to trigger a preconnect/preresolve job to a single -+// origin. -+struct PreconnectRequest { -+ // |network_anonymization_key| specifies the key that network requests for the -+ // preconnected URL are expected to use. If a request is issued with a -+ // different key, it may not use the preconnected socket. It has no effect -+ // when |num_sockets| == 0. -+ PreconnectRequest( -+ const url::Origin& origin, -+ int num_sockets, -+ const net::NetworkAnonymizationKey& network_anonymization_key); -+ PreconnectRequest(const PreconnectRequest&) = default; -+ PreconnectRequest(PreconnectRequest&&) = default; -+ PreconnectRequest& operator=(const PreconnectRequest&) = default; -+ PreconnectRequest& operator=(PreconnectRequest&&) = default; -+ -+ url::Origin origin; -+ // A zero-value means that we need to preresolve a host only. -+ int num_sockets = 0; -+ bool allow_credentials = true; -+ net::NetworkAnonymizationKey network_anonymization_key; -+}; - - struct PreconnectedRequestStats { - PreconnectedRequestStats(const url::Origin& origin, bool was_preconnected); diff --git a/patches/chromium/refactor_expose_cursor_changes_to_the_webcontentsobserver.patch b/patches/chromium/refactor_expose_cursor_changes_to_the_webcontentsobserver.patch index ec048bbf3e43..cd9a36f148aa 100644 --- a/patches/chromium/refactor_expose_cursor_changes_to_the_webcontentsobserver.patch +++ b/patches/chromium/refactor_expose_cursor_changes_to_the_webcontentsobserver.patch @@ -30,10 +30,10 @@ index 18c6ee6657e5edb5e90102dd9a20e5c0efeed843..af763ad4e441e54556854cd40c4cb909 // RenderWidgetHost on the primary main frame, and false otherwise. virtual bool IsWidgetForPrimaryMainFrame(RenderWidgetHostImpl*); diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc -index 1874493c21087f1cf3a565956bd48ebac6892135..59768b75a3f304056dcf6b5d665f6e41cdcfafcc 100644 +index eac923378ce1e73f51f182f4dadb7e6f98ee0cfd..c8e0d79667fe725b360f43352578bc523cc25ef7 100644 --- a/content/browser/renderer_host/render_widget_host_impl.cc +++ b/content/browser/renderer_host/render_widget_host_impl.cc -@@ -2070,6 +2070,9 @@ void RenderWidgetHostImpl::SetCursor(const ui::Cursor& cursor) { +@@ -2071,6 +2071,9 @@ void RenderWidgetHostImpl::SetCursor(const ui::Cursor& cursor) { if (view_) { view_->UpdateCursor(cursor); } @@ -44,10 +44,10 @@ index 1874493c21087f1cf3a565956bd48ebac6892135..59768b75a3f304056dcf6b5d665f6e41 void RenderWidgetHostImpl::ShowContextMenuAtPoint( diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index d2e3f73c11bc88237f901b79b7a6f010195b9e95..2b7c6f30f8d11461c12c275d03762c62575261c1 100644 +index 635ce2fb1a4f1e91b5abd7bd0ae1a6b6ccbdf926..2be6dc0dada353a36822794421b30c346a9ec930 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -6065,6 +6065,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() { +@@ -6092,6 +6092,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() { return text_input_manager_.get(); } @@ -60,7 +60,7 @@ index d2e3f73c11bc88237f901b79b7a6f010195b9e95..2b7c6f30f8d11461c12c275d03762c62 RenderWidgetHostImpl* render_widget_host) { return render_widget_host == GetPrimaryMainFrame()->GetRenderWidgetHost(); diff --git a/content/browser/web_contents/web_contents_impl.h b/content/browser/web_contents/web_contents_impl.h -index 997bbdfc5bbe9aafa4374446d109d744b04e70f1..7dfdde32d2e70bf0e823f39909d603403d86815f 100644 +index 6465a4bdc6bcb205b4198bd6f2c28b3afc04bb99..973ca330ffce0bb743160b5686e88764c9a8ede3 100644 --- a/content/browser/web_contents/web_contents_impl.h +++ b/content/browser/web_contents/web_contents_impl.h @@ -1175,6 +1175,7 @@ class CONTENT_EXPORT WebContentsImpl diff --git a/patches/chromium/refactor_expose_hostimportmoduledynamically_and.patch b/patches/chromium/refactor_expose_hostimportmoduledynamically_and.patch index 7fa21a76ce93..8171434dfdbc 100644 --- a/patches/chromium/refactor_expose_hostimportmoduledynamically_and.patch +++ b/patches/chromium/refactor_expose_hostimportmoduledynamically_and.patch @@ -7,7 +7,7 @@ Subject: refactor: expose HostImportModuleDynamically and This is so that Electron can blend Blink's and Node's implementations of these isolate handlers. diff --git a/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc b/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc -index 5f3ef90d8c8f175455a663c407e574d694bfcf7b..4c7048931200a8cf09a6fba3d99b7347debda3f3 100644 +index 9eb29fcae74cc7618f1d44fd64d63d7940f61260..e8828606e98a61a5d99c9c638e67eda887446f49 100644 --- a/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc +++ b/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc @@ -628,8 +628,9 @@ bool WasmJSPromiseIntegrationEnabledCallback(v8::Local context) { diff --git a/patches/chromium/refactor_unfilter_unresponsive_events.patch b/patches/chromium/refactor_unfilter_unresponsive_events.patch index 52c06c9380c6..b9d3d96d92e9 100644 --- a/patches/chromium/refactor_unfilter_unresponsive_events.patch +++ b/patches/chromium/refactor_unfilter_unresponsive_events.patch @@ -15,10 +15,10 @@ This CL removes these filters so the unresponsive event can still be accessed from our JS event. The filtering is moved into Electron's code. diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index 3490ec3cf591254eb9a34b3c6c4d2b5c7ef7dfe2..47f6e444748fe714300e91555c4b4d7e44749dcd 100644 +index cae36228828a295d74f04d43fe2ed0aba94f716b..5f8b609c82de7a3ad3813a59f06399a2fb44fe06 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -10177,25 +10177,13 @@ void WebContentsImpl::RendererUnresponsive( +@@ -10204,25 +10204,13 @@ void WebContentsImpl::RendererUnresponsive( base::RepeatingClosure hang_monitor_restarter) { OPTIONAL_TRACE_EVENT1("content", "WebContentsImpl::RendererUnresponsive", "render_widget_host", render_widget_host); diff --git a/patches/chromium/render_widget_host_view_mac.patch b/patches/chromium/render_widget_host_view_mac.patch index af66e9e81112..e777c3f9553b 100644 --- a/patches/chromium/render_widget_host_view_mac.patch +++ b/patches/chromium/render_widget_host_view_mac.patch @@ -8,10 +8,10 @@ respond to the first mouse click in their window, which is desirable for some kinds of utility windows. Similarly for `disableAutoHideCursor`. diff --git a/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm b/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm -index 97e95c04030206d244766ee10df2640b32b519aa..8563eb9aa5b5dca04e45d55a3bdd32a135232f00 100644 +index 068f395680bfe54ced74ac3406b56f2b09ebaccc..2d5cad5d7a4ab9292a5f966123687dee06f4512b 100644 --- a/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm +++ b/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm -@@ -171,6 +171,15 @@ void ExtractUnderlines(NSAttributedString* string, +@@ -167,6 +167,15 @@ void ExtractUnderlines(NSAttributedString* string, } // namespace @@ -27,7 +27,7 @@ index 97e95c04030206d244766ee10df2640b32b519aa..8563eb9aa5b5dca04e45d55a3bdd32a1 // RenderWidgetHostViewCocoa --------------------------------------------------- // Private methods: -@@ -785,6 +794,9 @@ - (AcceptMouseEvents)acceptsMouseEventsOption { +@@ -781,6 +790,9 @@ - (AcceptMouseEvents)acceptsMouseEventsOption { } - (BOOL)acceptsFirstMouse:(NSEvent*)theEvent { @@ -37,7 +37,7 @@ index 97e95c04030206d244766ee10df2640b32b519aa..8563eb9aa5b5dca04e45d55a3bdd32a1 // Enable "click-through" if mouse clicks are accepted in inactive windows. return [self acceptsMouseEventsOption] > AcceptMouseEvents::kWhenInActiveWindow; -@@ -937,6 +949,10 @@ - (BOOL)shouldIgnoreMouseEvent:(NSEvent*)theEvent { +@@ -933,6 +945,10 @@ - (BOOL)shouldIgnoreMouseEvent:(NSEvent*)theEvent { // its parent view. BOOL hitSelf = NO; while (view) { @@ -48,7 +48,7 @@ index 97e95c04030206d244766ee10df2640b32b519aa..8563eb9aa5b5dca04e45d55a3bdd32a1 if (view == self) hitSelf = YES; if ([view isKindOfClass:[self class]] && ![view isEqual:self] && -@@ -1271,6 +1287,10 @@ - (void)keyEvent:(NSEvent*)theEvent wasKeyEquivalent:(BOOL)equiv { +@@ -1267,6 +1283,10 @@ - (void)keyEvent:(NSEvent*)theEvent wasKeyEquivalent:(BOOL)equiv { eventType == NSEventTypeKeyDown && !(modifierFlags & NSEventModifierFlagCommand); diff --git a/patches/chromium/revert_code_health_clean_up_stale_macwebcontentsocclusion.patch b/patches/chromium/revert_code_health_clean_up_stale_macwebcontentsocclusion.patch index b9faf4501829..1b5a22ace424 100644 --- a/patches/chromium/revert_code_health_clean_up_stale_macwebcontentsocclusion.patch +++ b/patches/chromium/revert_code_health_clean_up_stale_macwebcontentsocclusion.patch @@ -233,7 +233,7 @@ index d8167e854a3264b19a07544039fd01aba45e27a1..2e5a4ae715529e3b7b5c8fbb7195c7ce } diff --git a/content/common/features.cc b/content/common/features.cc -index 108d23bde976f99d2cae9e8aa6eede4b76871379..f9bdf318654f37f3464efa8bcf69c3c548de80f4 100644 +index c216266f801ad2079984efc198294d16142a7906..b351f23d1044615004c56fd165898ed26f6bb0ea 100644 --- a/content/common/features.cc +++ b/content/common/features.cc @@ -316,6 +316,14 @@ BASE_FEATURE(kIOSurfaceCapturer, @@ -252,7 +252,7 @@ index 108d23bde976f99d2cae9e8aa6eede4b76871379..f9bdf318654f37f3464efa8bcf69c3c5 BASE_FEATURE(kKeepChildProcessAfterIPCReset, "KeepChildProcessAfterIPCReset", diff --git a/content/common/features.h b/content/common/features.h -index 6fb46746410a0b94474762c82613a3c46e99c15c..574339745dc4840cfbb62540769589ec49fd625b 100644 +index 7913d0ee9496d19908018398616e1c806d03ff09..99cfa89ead7cb84047f89f16646a6bfbe14a5d24 100644 --- a/content/common/features.h +++ b/content/common/features.h @@ -101,6 +101,9 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE(kInterestGroupUpdateIfOlderThan); diff --git a/patches/chromium/revert_use_more_binaries_from_clang_toolchain_in_mac_build.patch b/patches/chromium/revert_use_more_binaries_from_clang_toolchain_in_mac_build.patch index 76c8d85bdfa2..1d41e315b6ae 100644 --- a/patches/chromium/revert_use_more_binaries_from_clang_toolchain_in_mac_build.patch +++ b/patches/chromium/revert_use_more_binaries_from_clang_toolchain_in_mac_build.patch @@ -14,7 +14,7 @@ This patch can be removed when both otool and nm are correctly persisted with third-party/llvm-build. diff --git a/DEPS b/DEPS -index d67584f29b7f96a33b43977027db7a2178ce7974..1c3ef94d01f10e687d899ea3fd3420970b7766dd 100644 +index 15a18361c468af57a286895448e39284d6d39bbe..559f7755314dd7dfbf74c89880a99b4a8e48ce74 100644 --- a/DEPS +++ b/DEPS @@ -906,13 +906,6 @@ deps = { diff --git a/patches/chromium/revert_views_remove_desktopwindowtreehostwin_window_enlargement.patch b/patches/chromium/revert_views_remove_desktopwindowtreehostwin_window_enlargement.patch index a025a9ae2c9f..e35e7cc43c7d 100644 --- a/patches/chromium/revert_views_remove_desktopwindowtreehostwin_window_enlargement.patch +++ b/patches/chromium/revert_views_remove_desktopwindowtreehostwin_window_enlargement.patch @@ -10,10 +10,10 @@ on Windows. We should refactor our code so that this patch isn't necessary. diff --git a/testing/variations/fieldtrial_testing_config.json b/testing/variations/fieldtrial_testing_config.json -index 9ab943ceeff29e0befcac90e3c793c7b520b69ce..b89d8e4de4dfbce1402fb83bbcc92201a59e97b3 100644 +index 7f5e8e161f7503c0bffe50304db1c73b987b9a2b..7c2c91b6571264dd02dc2cad8861a26c596f6980 100644 --- a/testing/variations/fieldtrial_testing_config.json +++ b/testing/variations/fieldtrial_testing_config.json -@@ -24771,6 +24771,21 @@ +@@ -24597,6 +24597,21 @@ ] } ], diff --git a/patches/chromium/support_mixed_sandbox_with_zygote.patch b/patches/chromium/support_mixed_sandbox_with_zygote.patch index f6922362230d..76b5a5b46128 100644 --- a/patches/chromium/support_mixed_sandbox_with_zygote.patch +++ b/patches/chromium/support_mixed_sandbox_with_zygote.patch @@ -22,10 +22,10 @@ However, the patch would need to be reviewed by the security team, as it does touch a security-sensitive class. diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc -index 7ac22e6466bba21fc57bbb77198f596db287e0ec..bb067c20f96c065bb2cf9444692ad0dd96955c18 100644 +index 25a06d19d7e6b4c79c7ba1caf348ea3732b4e3b8..5f36b8e547c73000eac7106e97ea7453e2eda5c1 100644 --- a/content/browser/renderer_host/render_process_host_impl.cc +++ b/content/browser/renderer_host/render_process_host_impl.cc -@@ -1831,6 +1831,10 @@ bool RenderProcessHostImpl::Init() { +@@ -1832,6 +1832,10 @@ bool RenderProcessHostImpl::Init() { std::unique_ptr sandbox_delegate = std::make_unique( *cmd_line, IsPdf(), IsJitDisabled()); diff --git a/patches/chromium/web_contents.patch b/patches/chromium/web_contents.patch index 22150c8cccc7..8ccbe4d9b699 100644 --- a/patches/chromium/web_contents.patch +++ b/patches/chromium/web_contents.patch @@ -9,10 +9,10 @@ is needed for OSR. Originally landed in https://github.com/electron/libchromiumcontent/pull/226. diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index 6edba4b1fb3c60effb3f42736ec7ff35aebd98e5..a783afcda81f97504425de4224ed40f711852d18 100644 +index 315e54d061dea3ce28583c6eb456196dc873a1a6..c6981b845253a81f3865ccd71f97bdc73600bbc5 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -4110,6 +4110,13 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, +@@ -4137,6 +4137,13 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, params.main_frame_name, GetOpener(), primary_main_frame_policy, base::UnguessableToken::Create()); @@ -26,7 +26,7 @@ index 6edba4b1fb3c60effb3f42736ec7ff35aebd98e5..a783afcda81f97504425de4224ed40f7 std::unique_ptr delegate = GetContentClient()->browser()->GetWebContentsViewDelegate(this); -@@ -4120,6 +4127,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, +@@ -4147,6 +4154,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, view_ = CreateWebContentsView(this, std::move(delegate), &render_view_host_delegate_view_); } @@ -35,10 +35,10 @@ index 6edba4b1fb3c60effb3f42736ec7ff35aebd98e5..a783afcda81f97504425de4224ed40f7 CHECK(view_.get()); diff --git a/content/public/browser/web_contents.h b/content/public/browser/web_contents.h -index 4a0bc0e58db7054b4d89d227a6c6d3339c6b0add..6939841b8df5da608c6cd7bcdd92bd6ac93c6242 100644 +index 04c72f708b0fc8b2e45c834d8f40753718860f00..42ceaff9c5c8b15645ebe31f610ba779146d4a8c 100644 --- a/content/public/browser/web_contents.h +++ b/content/public/browser/web_contents.h -@@ -126,11 +126,14 @@ class GuestPageHolder; +@@ -127,11 +127,14 @@ class PrerenderHandle; class RenderFrameHost; class RenderViewHost; class RenderWidgetHost; @@ -53,7 +53,7 @@ index 4a0bc0e58db7054b4d89d227a6c6d3339c6b0add..6939841b8df5da608c6cd7bcdd92bd6a class WebUI; struct DropData; struct MHTMLGenerationParams; -@@ -284,6 +287,10 @@ class WebContents : public PageNavigator, public base::SupportsUserData { +@@ -285,6 +288,10 @@ class WebContents : public PageNavigator, public base::SupportsUserData { network::mojom::WebSandboxFlags starting_sandbox_flags = network::mojom::WebSandboxFlags::kNone; diff --git a/patches/chromium/webview_fullscreen.patch b/patches/chromium/webview_fullscreen.patch index c6f58b3609f5..c4d360a792c3 100644 --- a/patches/chromium/webview_fullscreen.patch +++ b/patches/chromium/webview_fullscreen.patch @@ -15,10 +15,10 @@ Note that we also need to manually update embedder's `api::WebContents::IsFullscreenForTabOrPending` value. diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc -index 858650444361a7ad749ef68e5fb91b5609fb7b6e..c6958be31c1dcd0be0cad132db15b2cf7d8fc3cb 100644 +index cf78be9a397d9c4372245b0a2b4ee8fdd58df3e8..197e8cb41fa8abbcb435d82c85ab50254562ac78 100644 --- a/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc -@@ -8884,6 +8884,17 @@ void RenderFrameHostImpl::EnterFullscreen( +@@ -8879,6 +8879,17 @@ void RenderFrameHostImpl::EnterFullscreen( } } @@ -37,10 +37,10 @@ index 858650444361a7ad749ef68e5fb91b5609fb7b6e..c6958be31c1dcd0be0cad132db15b2cf if (had_fullscreen_token && !GetView()->HasFocus()) GetView()->Focus(); diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index a783afcda81f97504425de4224ed40f711852d18..574a00073861a9edd2f5d7daaab43e763b5a9e37 100644 +index c6981b845253a81f3865ccd71f97bdc73600bbc5..6979684dc926d28e44b53fe5c9ad87fc5887818e 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -4399,21 +4399,25 @@ KeyboardEventProcessingResult WebContentsImpl::PreHandleKeyboardEvent( +@@ -4426,21 +4426,25 @@ KeyboardEventProcessingResult WebContentsImpl::PreHandleKeyboardEvent( const input::NativeWebKeyboardEvent& event) { OPTIONAL_TRACE_EVENT0(TRACE_DISABLED_BY_DEFAULT("content.verbose"), "WebContentsImpl::PreHandleKeyboardEvent"); @@ -78,7 +78,7 @@ index a783afcda81f97504425de4224ed40f711852d18..574a00073861a9edd2f5d7daaab43e76 } bool WebContentsImpl::HandleMouseEvent(const blink::WebMouseEvent& event) { -@@ -4572,7 +4576,7 @@ void WebContentsImpl::EnterFullscreenMode( +@@ -4599,7 +4603,7 @@ void WebContentsImpl::EnterFullscreenMode( OPTIONAL_TRACE_EVENT0("content", "WebContentsImpl::EnterFullscreenMode"); DCHECK(CanEnterFullscreenMode(requesting_frame)); DCHECK(requesting_frame->IsActive()); diff --git a/patches/devtools_frontend/chore_expose_ui_to_allow_electron_to_set_dock_side.patch b/patches/devtools_frontend/chore_expose_ui_to_allow_electron_to_set_dock_side.patch index 6015d2cde616..b718aaefa8ca 100644 --- a/patches/devtools_frontend/chore_expose_ui_to_allow_electron_to_set_dock_side.patch +++ b/patches/devtools_frontend/chore_expose_ui_to_allow_electron_to_set_dock_side.patch @@ -10,10 +10,10 @@ to handle this without patching, but this is fairly clean for now and no longer patching legacy devtools code. diff --git a/front_end/entrypoints/main/MainImpl.ts b/front_end/entrypoints/main/MainImpl.ts -index 7f7a2770eb1b075977bb26664ab46aa70e983cb8..bdba48d642f5ed4373ab478fa8c11c4013e7fb10 100644 +index 908271e753368265b2ea7deaeb67c72c3589b7ae..d9a21515b8a20a2fbee8ed3acc50491c9062101b 100644 --- a/front_end/entrypoints/main/MainImpl.ts +++ b/front_end/entrypoints/main/MainImpl.ts -@@ -725,6 +725,8 @@ export class MainImpl { +@@ -732,6 +732,8 @@ export class MainImpl { globalThis.Main = globalThis.Main || {}; // @ts-expect-error Exported for Tests.js globalThis.Main.Main = MainImpl; diff --git a/patches/node/.patches b/patches/node/.patches index 7d215a337a38..7c9640f5fd03 100644 --- a/patches/node/.patches +++ b/patches/node/.patches @@ -49,3 +49,4 @@ fix_expose_readfilesync_override_for_modules.patch chore_remove_protocol_maybe_from_node_string.patch fix_-wmismatched-new-delete_in_debug_utils_cc.patch fix_array_out-of-bounds_read_in_boyer-moore_search.patch +chore_add_missing_include_of_iterator.patch diff --git a/patches/node/chore_add_missing_include_of_iterator.patch b/patches/node/chore_add_missing_include_of_iterator.patch new file mode 100644 index 000000000000..c04928baba59 --- /dev/null +++ b/patches/node/chore_add_missing_include_of_iterator.patch @@ -0,0 +1,35 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: David Sanders +Date: Mon, 21 Jul 2025 16:58:56 -0700 +Subject: chore: add missing include of + +This has been upstreamed at https://github.com/ada-url/ada/pull/982 + +diff --git a/deps/ada/ada.cpp b/deps/ada/ada.cpp +index d7f9b3a92c5330dad1cbd9f6f0bdd96908a4ad13..68fe0701bced5db86834ebd8232d4fe5ae7ed308 100644 +--- a/deps/ada/ada.cpp ++++ b/deps/ada/ada.cpp +@@ -11217,6 +11217,7 @@ ada_warn_unused std::string to_string(ada::state state) { + + #include + #include ++#include + #include + + namespace ada { +@@ -13067,6 +13068,7 @@ template url_aggregator parse_url( + /* end file src/parser.cpp */ + /* begin file src/url_components.cpp */ + ++#include + #include + #include + +@@ -13192,6 +13194,7 @@ namespace ada { + /* end file src/url_components.cpp */ + /* begin file src/url_aggregator.cpp */ + ++#include + #include + #include + diff --git a/shell/browser/api/electron_api_session.cc b/shell/browser/api/electron_api_session.cc index b4522dca8144..e9fdf7d35801 100644 --- a/shell/browser/api/electron_api_session.cc +++ b/shell/browser/api/electron_api_session.cc @@ -39,6 +39,7 @@ #include "content/public/browser/download_item_utils.h" #include "content/public/browser/download_manager_delegate.h" #include "content/public/browser/network_service_instance.h" +#include "content/public/browser/preconnect_request.h" #include "content/public/browser/storage_partition.h" #include "gin/arguments.h" #include "gin/converter.h" @@ -1355,7 +1356,7 @@ static void StartPreconnectOnUI(ElectronBrowserContext* browser_context, const GURL& url, int num_sockets_to_preconnect) { url::Origin origin = url::Origin::Create(url); - std::vector requests = { + std::vector requests = { {url::Origin::Create(url), num_sockets_to_preconnect, net::NetworkAnonymizationKey::CreateSameSite( net::SchemefulSite(origin))}}; diff --git a/shell/browser/electron_browser_context.cc b/shell/browser/electron_browser_context.cc index 9f4d6d5bee79..2d4186dd1942 100644 --- a/shell/browser/electron_browser_context.cc +++ b/shell/browser/electron_browser_context.cc @@ -559,8 +559,7 @@ std::string ElectronBrowserContext::GetUserAgent() const { predictors::PreconnectManager* ElectronBrowserContext::GetPreconnectManager() { if (!preconnect_manager_) { - preconnect_manager_ = - std::make_unique(nullptr, this); + preconnect_manager_ = predictors::PreconnectManager::Create(nullptr, this); } return preconnect_manager_.get(); }