From a47b724c99654d15a2f2b8a8e072ece18a4df26d Mon Sep 17 00:00:00 2001 From: "trop[bot]" <37223003+trop[bot]@users.noreply.github.com> Date: Fri, 15 Mar 2024 18:13:55 -0400 Subject: [PATCH] chore: bump chromium to 124.0.6359.0 (30-x-y) (#41606) * chore: bump chromium in DEPS to 124.0.6355.0 Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> * 5341411: view-transition: Ensure resources are cleaned up in all cases. https://chromium-review.googlesource.com/c/chromium/src/+/5341411 Co-authored-by: Shelley Vohr * chore: fixup patch indices Co-authored-by: Shelley Vohr * 5354013: Return nullopt on error from ProcessMetrics CPU measurements https://chromium-review.googlesource.com/c/chromium/src/+/5354013 Co-authored-by: Shelley Vohr * chore: bump chromium in DEPS to 124.0.6357.0 Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> * chore: update patches Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com> * 5368769: Reland "[mojo] Use large worker for mojom_parser action" https://chromium-review.googlesource.com/c/chromium/src/+/5368769 Co-authored-by: John Kleinschmidt * 5336171: [Extensions] Introduce a CoreExtensionsRendererAPIProvider https://chromium-review.googlesource.com/c/chromium/src/+/5336171 Co-authored-by: John Kleinschmidt * 5367334: [FS Shortcut] Refactor ExclusiveAccessManager https://chromium-review.googlesource.com/c/chromium/src/+/5367334 Co-authored-by: John Kleinschmidt * 5354161: Rename GeolocationManager to GeolocationSystemPermissionManager https://chromium-review.googlesource.com/c/chromium/src/+/5354161 Co-authored-by: John Kleinschmidt * fixup: [Extensions] Introduce a CoreExtensionsRendererAPIProvider Co-authored-by: John Kleinschmidt * chore: bump chromium in DEPS to 124.0.6359.0 Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> * chore: update patches Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com> * 5371370: [Extensions] Move core NativeHandler registration https://chromium-review.googlesource.com/c/chromium/src/+/5371370 Co-authored-by: John Kleinschmidt * 5370702: [Extensions] Introduce ShellExtensionsRendererAPIProvider https://chromium-review.googlesource.com/c/chromium/src/+/5370702 Co-authored-by: John Kleinschmidt --------- 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: Shelley Vohr Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com> Co-authored-by: John Kleinschmidt --- DEPS | 2 +- ...ack_ssl_error_zero_return_explicitly.patch | 6 +- patches/chromium/.patches | 1 - .../add_didinstallconditionalfeatures.patch | 16 ++--- patches/chromium/blink_local_frame.patch | 6 +- ..._depend_on_packed_resource_integrity.patch | 12 ++-- patches/chromium/build_gn.patch | 2 +- patches/chromium/can_create_window.patch | 26 +++---- ...screationoverridden_with_full_params.patch | 18 ++--- ...e_browser_v8_snapshot_file_name_fuse.patch | 8 +-- patches/chromium/disable_hidden.patch | 2 +- ...t_allow_code_cache_in_custom_schemes.patch | 8 +-- ...screen_rendering_with_viz_compositor.patch | 8 +-- ..._raw_response_headers_from_urlloader.patch | 2 +- ...rfetto_flow_and_trace_event_includes.patch | 72 ------------------- ...ding_non-standard_schemes_in_iframes.patch | 4 +- ..._background_throttling_in_compositor.patch | 4 +- ...board_hides_on_input_blur_in_webview.patch | 4 +- ...out_profile_refs_in_accessibility_ui.patch | 26 +++---- ...original_resize_performance_on_macos.patch | 2 +- ...from_localframe_requestexecutescript.patch | 12 ++-- patches/chromium/frame_host_manager.patch | 6 +- .../gin_enable_disable_v8_platform.patch | 6 +- .../chromium/gritsettings_resource_ids.patch | 4 +- .../load_v8_snapshot_in_browser_process.patch | 2 +- ..._avoid_private_macos_api_usage.patch.patch | 30 ++++---- .../chromium/notification_provenance.patch | 6 +- patches/chromium/printing.patch | 6 +- ...r_changes_to_the_webcontentsobserver.patch | 12 ++-- .../render_widget_host_view_base.patch | 22 ++---- patches/chromium/scroll_bounce_flag.patch | 2 +- .../support_mixed_sandbox_with_zygote.patch | 4 +- patches/chromium/web_contents.patch | 12 ++-- patches/chromium/webview_fullscreen.patch | 10 +-- .../worker_context_will_destroy.patch | 4 +- ...feat_add_hook_to_notify_script_ready.patch | 4 +- ...i_to_allow_electron_to_set_dock_side.patch | 4 +- patches/reclient-configs/.patches | 1 + ...large_worker_for_mojom_parser_action.patch | 28 ++++++++ shell/browser/api/electron_api_app.cc | 7 +- .../browser/api/electron_api_web_contents.cc | 3 +- shell/browser/browser_process_impl.cc | 2 +- shell/browser/electron_browser_client.cc | 7 +- shell/browser/electron_browser_client.h | 3 +- .../electron_browser_main_parts_mac.mm | 9 +-- shell/common/api/electron_bindings.cc | 4 +- ...electron_extensions_dispatcher_delegate.cc | 3 - .../electron_extensions_dispatcher_delegate.h | 1 - ...ectron_extensions_renderer_api_provider.cc | 1 + ...lectron_extensions_renderer_api_provider.h | 1 + .../electron_extensions_renderer_client.h | 3 +- shell/renderer/renderer_client_base.cc | 3 + 52 files changed, 201 insertions(+), 250 deletions(-) delete mode 100644 patches/chromium/fix_add_missing_perfetto_flow_and_trace_event_includes.patch create mode 100644 patches/reclient-configs/reland_mojo_use_large_worker_for_mojom_parser_action.patch diff --git a/DEPS b/DEPS index 5c0e1aadcfde5..1731a50db57ba 100644 --- a/DEPS +++ b/DEPS @@ -2,7 +2,7 @@ gclient_gn_args_from = 'src' vars = { 'chromium_version': - '124.0.6353.0', + '124.0.6359.0', 'node_version': 'v20.11.1', 'nan_version': diff --git a/patches/boringssl/revert_track_ssl_error_zero_return_explicitly.patch b/patches/boringssl/revert_track_ssl_error_zero_return_explicitly.patch index 202f24008dcb2..5b52635c552ee 100644 --- a/patches/boringssl/revert_track_ssl_error_zero_return_explicitly.patch +++ b/patches/boringssl/revert_track_ssl_error_zero_return_explicitly.patch @@ -20,10 +20,10 @@ index 2ca14efae5ea478f43794a81883b00dfdb1a37b0..d73055fbf39334925ef4b4804bbaca57 case ssl_open_record_error: diff --git a/ssl/ssl_lib.cc b/ssl/ssl_lib.cc -index 81a98071315214e3cf446b340fa9186f760bf370..e6a020fcab39391e7b014e324208b454e2fee95d 100644 +index 98f97ebb28a06dfde00082922a1aff24f8aa154c..8ec11f0e839760ace90bd88e096ffbd17508e224 100644 --- a/ssl/ssl_lib.cc +++ b/ssl/ssl_lib.cc -@@ -1331,7 +1331,7 @@ int SSL_get_error(const SSL *ssl, int ret_code) { +@@ -1334,7 +1334,7 @@ int SSL_get_error(const SSL *ssl, int ret_code) { } if (ret_code == 0) { @@ -32,7 +32,7 @@ index 81a98071315214e3cf446b340fa9186f760bf370..e6a020fcab39391e7b014e324208b454 return SSL_ERROR_ZERO_RETURN; } // An EOF was observed which violates the protocol, and the underlying -@@ -2687,13 +2687,7 @@ void *SSL_CTX_get_ex_data(const SSL_CTX *ctx, int idx) { +@@ -2701,13 +2701,7 @@ void *SSL_CTX_get_ex_data(const SSL_CTX *ctx, int idx) { return CRYPTO_get_ex_data(&ctx->ex_data, idx); } diff --git a/patches/chromium/.patches b/patches/chromium/.patches index 6d7b1ef80d5d1..ee985721f7f7f 100644 --- a/patches/chromium/.patches +++ b/patches/chromium/.patches @@ -129,4 +129,3 @@ build_run_reclient_cfg_generator_after_chrome.patch fix_suppress_clang_-wimplicit-const-int-float-conversion_in.patch fix_getcursorscreenpoint_wrongly_returns_0_0.patch fix_add_support_for_skipping_first_2_no-op_refreshes_in_thumb_cap.patch -fix_add_missing_perfetto_flow_and_trace_event_includes.patch diff --git a/patches/chromium/add_didinstallconditionalfeatures.patch b/patches/chromium/add_didinstallconditionalfeatures.patch index d585960ab960e..919a6957d0263 100644 --- a/patches/chromium/add_didinstallconditionalfeatures.patch +++ b/patches/chromium/add_didinstallconditionalfeatures.patch @@ -23,10 +23,10 @@ index 289a8c25f14cad42b9178ce94b11f67870be7434..5b91eadb698eeb5a87c9d0b2edf7e5cc int32_t world_id) {} virtual void DidClearWindowObject() {} diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc -index 9012fbd732b8e134609b187f3718652888c31af4..0ecde1e5a5e6bdd5f1fe1601901d8ee084b8a0a2 100644 +index 0eed4c5645d4e119393e9e0fbd770847eaf01030..95eb5224b90268937c1d24190c1234a5f42cb235 100644 --- a/content/renderer/render_frame_impl.cc +++ b/content/renderer/render_frame_impl.cc -@@ -4683,6 +4683,12 @@ void RenderFrameImpl::DidCreateScriptContext(v8::Local context, +@@ -4684,6 +4684,12 @@ void RenderFrameImpl::DidCreateScriptContext(v8::Local context, observer.DidCreateScriptContext(context, world_id); } @@ -40,10 +40,10 @@ index 9012fbd732b8e134609b187f3718652888c31af4..0ecde1e5a5e6bdd5f1fe1601901d8ee0 int world_id) { for (auto& observer : observers_) diff --git a/content/renderer/render_frame_impl.h b/content/renderer/render_frame_impl.h -index 9e0c4a2d908a50723827cd86bdedb20119fb8f47..db408d515739f331dea4a33b27b0cf75437e6c30 100644 +index e3350ff445fcffca7efb2b11eba66f4c84e05f14..46f2142ac5bb840f20f244d96384024431ea11c6 100644 --- a/content/renderer/render_frame_impl.h +++ b/content/renderer/render_frame_impl.h -@@ -639,6 +639,8 @@ class CONTENT_EXPORT RenderFrameImpl +@@ -640,6 +640,8 @@ class CONTENT_EXPORT RenderFrameImpl void DidObserveLayoutShift(double score, bool after_input_or_scroll) override; void DidCreateScriptContext(v8::Local context, int world_id) override; @@ -53,10 +53,10 @@ index 9e0c4a2d908a50723827cd86bdedb20119fb8f47..db408d515739f331dea4a33b27b0cf75 int world_id) override; void DidChangeScrollOffset() override; diff --git a/third_party/blink/public/web/web_local_frame_client.h b/third_party/blink/public/web/web_local_frame_client.h -index 4f33fd08886890ebe8c853760f9ab506834006e1..25e7c24542505eea06afb0a85131c23ef6467375 100644 +index ace1251d03266e3c5ae75c2059ba8c575725222d..37e0a30d87529e5de27fef40d8e7de0f7c27f0cd 100644 --- a/third_party/blink/public/web/web_local_frame_client.h +++ b/third_party/blink/public/web/web_local_frame_client.h -@@ -637,6 +637,9 @@ class BLINK_EXPORT WebLocalFrameClient { +@@ -638,6 +638,9 @@ class BLINK_EXPORT WebLocalFrameClient { virtual void DidCreateScriptContext(v8::Local, int32_t world_id) {} @@ -92,10 +92,10 @@ index 7a5d4721f7bd3012351f17053e188505f26f1979..4c415c2464fee49581efa307070ffad9 int32_t world_id) = 0; virtual bool AllowScriptExtensions() = 0; diff --git a/third_party/blink/renderer/core/frame/local_frame_client_impl.cc b/third_party/blink/renderer/core/frame/local_frame_client_impl.cc -index af0dbbfa237511d91c6fd2df4d2aceec6f94fae8..b3ff4e56ba203fb381635f5cc7fe6011d2faa778 100644 +index 015daaa60e46a106bf2f36a2bd967c892bc299da..c07e4bc3b7dd937ef14a72506cd6f2299bc511f4 100644 --- a/third_party/blink/renderer/core/frame/local_frame_client_impl.cc +++ b/third_party/blink/renderer/core/frame/local_frame_client_impl.cc -@@ -291,6 +291,13 @@ void LocalFrameClientImpl::DidCreateScriptContext( +@@ -292,6 +292,13 @@ void LocalFrameClientImpl::DidCreateScriptContext( web_frame_->Client()->DidCreateScriptContext(context, world_id); } diff --git a/patches/chromium/blink_local_frame.patch b/patches/chromium/blink_local_frame.patch index 3f94b49914bd4..ee3ff7ca30d22 100644 --- a/patches/chromium/blink_local_frame.patch +++ b/patches/chromium/blink_local_frame.patch @@ -49,10 +49,10 @@ index 0a742bbbd5e8e1eb3610cc32f785f779e8907e75..26967019244d409dadf4533405d4d5d2 // its owning reference back to our owning LocalFrame. client_->Detached(type); diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc -index cd0dec9dca7ec98e97ef90c43378460c843956d4..e84ae764c9d47bfb78d01aa20695e03b07787136 100644 +index 81e90b80d4ff25c7003e4e98f071848be98280d6..92cfe0001933cd18ecb7384ead1dda26f563e62b 100644 --- a/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc -@@ -682,10 +682,6 @@ bool LocalFrame::DetachImpl(FrameDetachType type) { +@@ -684,10 +684,6 @@ bool LocalFrame::DetachImpl(FrameDetachType type) { } DCHECK(!view_ || !view_->IsAttached()); @@ -63,7 +63,7 @@ index cd0dec9dca7ec98e97ef90c43378460c843956d4..e84ae764c9d47bfb78d01aa20695e03b if (!Client()) return false; -@@ -733,6 +729,11 @@ bool LocalFrame::DetachImpl(FrameDetachType type) { +@@ -738,6 +734,11 @@ bool LocalFrame::DetachImpl(FrameDetachType type) { DCHECK(!view_->IsAttached()); Client()->WillBeDetached(); 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 3ef4dfefb75a8..d9d4e590a1c5c 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 4af5b8d5da1c0ae4c5603f49e3a1dbfec422f55e..d21e450d1ee387a72bbe601412856260 "//base", "//build:branding_buildflags", diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn -index 55cf82494dcdb97adda4816c349e224eb33213ed..731f56fcabacf4280bab9a7f7fae14ae96277add 100644 +index 34cdca093a7fb4cf849c2964e6542558966bf3b1..e0ac5b6c7412a017077c342ef2f3d13cc0123008 100644 --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -4791,7 +4791,7 @@ static_library("browser") { +@@ -4793,7 +4793,7 @@ static_library("browser") { # On Windows, the hashes are embedded in //chrome:chrome_initial rather # than here in :chrome_dll. @@ -46,10 +46,10 @@ index 55cf82494dcdb97adda4816c349e224eb33213ed..731f56fcabacf4280bab9a7f7fae14ae sources += [ "certificate_viewer_stub.cc" ] } diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn -index 07795d851c5a8d55f94d17dac471c287837e0863..5bebaf9fe6a845b1df8364a332857bf5dc49ee70 100644 +index bfb0033d1536941b52592a834b0c64d15cc1ed2c..2313065706e3c4531dfa8179a8b0ff26266aa7d9 100644 --- a/chrome/test/BUILD.gn +++ b/chrome/test/BUILD.gn -@@ -7179,9 +7179,12 @@ test("unit_tests") { +@@ -7195,9 +7195,12 @@ test("unit_tests") { "//chrome/browser/safe_browsing/incident_reporting/verifier_test:verifier_test_dll_2", ] @@ -63,7 +63,7 @@ index 07795d851c5a8d55f94d17dac471c287837e0863..5bebaf9fe6a845b1df8364a332857bf5 "//chrome//services/util_win:unit_tests", "//chrome/app:chrome_dll_resources", "//chrome/app:win_unit_tests", -@@ -8160,6 +8163,10 @@ test("unit_tests") { +@@ -8176,6 +8179,10 @@ test("unit_tests") { "../browser/performance_manager/policies/background_tab_loading_policy_unittest.cc", ] @@ -74,7 +74,7 @@ index 07795d851c5a8d55f94d17dac471c287837e0863..5bebaf9fe6a845b1df8364a332857bf5 sources += [ # The importer code is not used on Android. "../common/importer/firefox_importer_utils_unittest.cc", -@@ -8229,7 +8236,6 @@ test("unit_tests") { +@@ -8245,7 +8252,6 @@ test("unit_tests") { } deps += [ diff --git a/patches/chromium/build_gn.patch b/patches/chromium/build_gn.patch index b8afa46b37b90..399f53483fce9 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 1ed842b7790ff1415157c75a9debaac4a8b2f73c..d5ddc210503f091b3563ce738b70f2fa0ac88c95 100644 +index 26a23e459a62ddb6adff2748a70882aaa091a40a..237827d7a88ace74ec28208b0f879ae8354d7623 100644 --- a/build/config/BUILDCONFIG.gn +++ b/build/config/BUILDCONFIG.gn @@ -123,6 +123,9 @@ if (current_os == "") { diff --git a/patches/chromium/can_create_window.patch b/patches/chromium/can_create_window.patch index f32244ecfeaff..f4b0a168b5d28 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 441cf9208e50ed4fab3e6392996bdbb511b0ad76..39b46b4f5bb3adb18d903c0ca4c65f212138590b 100644 +index 06360bebe3baaa7571c412c7182ccd1fd1078fda..c36367b28a627f7e6e77bcf3fc10f907b131523b 100644 --- a/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc -@@ -8383,6 +8383,7 @@ void RenderFrameHostImpl::CreateNewWindow( +@@ -8389,6 +8389,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 441cf9208e50ed4fab3e6392996bdbb511b0ad76..39b46b4f5bb3adb18d903c0ca4c65f21 &no_javascript_access); diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index 275988bd9d0dbbe3360b081078149e3304d891ae..b2866d3d050b57f5b3f6483634dbe3facaee83dd 100644 +index bfb696d17099ce153366f031a56b6ac74ce28d38..6475b9fd000fb83c4562f7d91a30c80e5dddf35e 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -4580,6 +4580,12 @@ FrameTree* WebContentsImpl::CreateNewWindow( +@@ -4585,6 +4585,12 @@ FrameTree* WebContentsImpl::CreateNewWindow( auto* new_contents_impl = new_contents.get(); @@ -37,7 +37,7 @@ index 275988bd9d0dbbe3360b081078149e3304d891ae..b2866d3d050b57f5b3f6483634dbe3fa // 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 -@@ -4621,12 +4627,6 @@ FrameTree* WebContentsImpl::CreateNewWindow( +@@ -4626,12 +4632,6 @@ FrameTree* WebContentsImpl::CreateNewWindow( AddWebContentsDestructionObserver(new_contents_impl); } @@ -66,7 +66,7 @@ index 268f150c1cc987ea020192a86ab886ed206a0064..05856b853112072a18ec16589f2b442f // Operation result when the renderer asks the browser to create a new window. diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc -index 97be51019b36fef0b95b4812f682ff41544cbfe3..f013173e680898584561734942364755d3676363 100644 +index 05d036b9262689f2103a3df1ee30b7ec16c96a34..952356fa426c6cb7df85b837ccdff3661fa90531 100644 --- a/content/public/browser/content_browser_client.cc +++ b/content/public/browser/content_browser_client.cc @@ -725,6 +725,8 @@ bool ContentBrowserClient::CanCreateWindow( @@ -79,7 +79,7 @@ index 97be51019b36fef0b95b4812f682ff41544cbfe3..f013173e680898584561734942364755 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 ac3754651b1569a07b666d8a101a08386393137c..25641beab08c2f575494f23850b1e22f1958569b 100644 +index 48e6a6c74004650b5b07ce24f6476d7c9a306236..b777041ec1111444d690d1d188dd622ce4677d4c 100644 --- a/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h @@ -183,6 +183,7 @@ class NetworkService; @@ -90,7 +90,7 @@ index ac3754651b1569a07b666d8a101a08386393137c..25641beab08c2f575494f23850b1e22f } // namespace network namespace sandbox { -@@ -1219,6 +1220,8 @@ class CONTENT_EXPORT ContentBrowserClient { +@@ -1221,6 +1222,8 @@ class CONTENT_EXPORT ContentBrowserClient { const std::string& frame_name, WindowOpenDisposition disposition, const blink::mojom::WindowFeatures& features, @@ -100,7 +100,7 @@ index ac3754651b1569a07b666d8a101a08386393137c..25641beab08c2f575494f23850b1e22f bool opener_suppressed, bool* no_javascript_access); diff --git a/content/public/browser/web_contents_delegate.cc b/content/public/browser/web_contents_delegate.cc -index 3f445d481b7b1931eba7870f90ba8bc5e1206a8f..8930b2f6c532418a5de97813645783bc2bbad1ba 100644 +index a354e100b04423b9793bc17473711fab9ca91c7e..2b03b5b0152678a4f2fa64cabab0dc511cea0f79 100644 --- a/content/public/browser/web_contents_delegate.cc +++ b/content/public/browser/web_contents_delegate.cc @@ -30,6 +30,17 @@ namespace content { @@ -122,7 +122,7 @@ index 3f445d481b7b1931eba7870f90ba8bc5e1206a8f..8930b2f6c532418a5de97813645783bc const OpenURLParams& params) { return nullptr; diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h -index 6e73009a7a4263f8d910071be1b64ce0c6e1b7cc..db2a1bc02f7a90fba1eda99b444c64576df859a8 100644 +index c44ef9991cbb07ab2895a28a890466ce1bc8235f..1384a322617b4be4b4ffbda5c44b41ac05bc8977 100644 --- a/content/public/browser/web_contents_delegate.h +++ b/content/public/browser/web_contents_delegate.h @@ -17,6 +17,7 @@ @@ -133,7 +133,7 @@ index 6e73009a7a4263f8d910071be1b64ce0c6e1b7cc..db2a1bc02f7a90fba1eda99b444c6457 #include "content/public/browser/eye_dropper.h" #include "content/public/browser/fullscreen_types.h" #include "content/public/browser/invalidate_type.h" -@@ -349,6 +350,13 @@ class CONTENT_EXPORT WebContentsDelegate { +@@ -347,6 +348,13 @@ class CONTENT_EXPORT WebContentsDelegate { const StoragePartitionConfig& partition_config, SessionStorageNamespace* session_storage_namespace); @@ -148,10 +148,10 @@ index 6e73009a7a4263f8d910071be1b64ce0c6e1b7cc..db2a1bc02f7a90fba1eda99b444c6457 // 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 115a9e0e74969e224acb15f4b37d0d280b129f32..9012fbd732b8e134609b187f3718652888c31af4 100644 +index e131d7d256bad0ce6080e9817f196e60ca6c883c..0eed4c5645d4e119393e9e0fbd770847eaf01030 100644 --- a/content/renderer/render_frame_impl.cc +++ b/content/renderer/render_frame_impl.cc -@@ -6685,6 +6685,10 @@ WebView* RenderFrameImpl::CreateNewWindow( +@@ -6686,6 +6686,10 @@ WebView* RenderFrameImpl::CreateNewWindow( request.HasUserGesture(), GetWebFrame()->IsAdFrame(), GetWebFrame()->IsAdScriptInStack()); diff --git a/patches/chromium/chore_provide_iswebcontentscreationoverridden_with_full_params.patch b/patches/chromium/chore_provide_iswebcontentscreationoverridden_with_full_params.patch index 2b096fddf9087..f6954eac5c5a7 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 aaaa61d5c3a1d5ade2fd355e38a3985ef5cc4e7d..b45746ba0f38a381a2ee5ca17f3a1685 } diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc -index a3855799f5e896861726b599dcd48c8fa13a5e09..30750a8b03300e84dccc38c2e48dcde618016962 100644 +index 3d985470f60d1c8f63d6794ad2bcf5954defe8db..cf96fc1321da45bcf1efa8e0b1655bbc924d7d41 100644 --- a/chrome/browser/ui/browser.cc +++ b/chrome/browser/ui/browser.cc -@@ -1937,12 +1937,11 @@ bool Browser::IsWebContentsCreationOverridden( +@@ -1933,12 +1933,11 @@ bool Browser::IsWebContentsCreationOverridden( content::SiteInstance* source_site_instance, content::mojom::WindowContainerType window_container_type, const GURL& opener_url, @@ -99,10 +99,10 @@ index a3855799f5e896861726b599dcd48c8fa13a5e09..30750a8b03300e84dccc38c2e48dcde6 WebContents* Browser::CreateCustomWebContents( diff --git a/chrome/browser/ui/browser.h b/chrome/browser/ui/browser.h -index 36ae82017f790810f58eb85b478c5d26acd20e05..42bbd163d82e99054435ec0459282c0c5fb61cbd 100644 +index 4f393fa78e991fbaf5eed7a5a21414c0399753d6..5fe424e119fd843ba9245354a2cf409532252b49 100644 --- a/chrome/browser/ui/browser.h +++ b/chrome/browser/ui/browser.h -@@ -924,8 +924,7 @@ class Browser : public TabStripModelObserver, +@@ -923,8 +923,7 @@ class Browser : public TabStripModelObserver, content::SiteInstance* source_site_instance, content::mojom::WindowContainerType window_container_type, const GURL& opener_url, @@ -218,10 +218,10 @@ index c5b0d3b23b8da318ae55fcac2515a1187f261469..16ed1f46c9afde0ff25750128b4fcff6 void AddNewContents(content::WebContents* source, std::unique_ptr new_contents, diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index 73df439b9efd501aee94fd7b19e834ad82a5b39c..11ed98cbe928b4c1efe1b34feec1a79cbe06a00a 100644 +index 94cdebc2ae552106bdeb7d3619dc9281c4fb4063..257b9f8ae014f577a9e2de35a3b251efda451fbe 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -4486,8 +4486,7 @@ FrameTree* WebContentsImpl::CreateNewWindow( +@@ -4491,8 +4491,7 @@ FrameTree* WebContentsImpl::CreateNewWindow( if (delegate_ && delegate_->IsWebContentsCreationOverridden( source_site_instance, params.window_container_type, @@ -232,7 +232,7 @@ index 73df439b9efd501aee94fd7b19e834ad82a5b39c..11ed98cbe928b4c1efe1b34feec1a79c static_cast(delegate_->CreateCustomWebContents( opener, source_site_instance, is_new_browsing_instance, diff --git a/content/public/browser/web_contents_delegate.cc b/content/public/browser/web_contents_delegate.cc -index 8930b2f6c532418a5de97813645783bc2bbad1ba..cfa7dc3805897a7e7b09bcf3fa4ebde05092c510 100644 +index 2b03b5b0152678a4f2fa64cabab0dc511cea0f79..35fbc8503bb5a153e9b640e3a68dfab6e0f046f2 100644 --- a/content/public/browser/web_contents_delegate.cc +++ b/content/public/browser/web_contents_delegate.cc @@ -138,8 +138,7 @@ bool WebContentsDelegate::IsWebContentsCreationOverridden( @@ -246,10 +246,10 @@ index 8930b2f6c532418a5de97813645783bc2bbad1ba..cfa7dc3805897a7e7b09bcf3fa4ebde0 } diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h -index db2a1bc02f7a90fba1eda99b444c64576df859a8..8685c010eadbf4896ed19bdc61b415beea8cbd94 100644 +index 1384a322617b4be4b4ffbda5c44b41ac05bc8977..dc586cd35ec336d5843447320520e433404e169d 100644 --- a/content/public/browser/web_contents_delegate.h +++ b/content/public/browser/web_contents_delegate.h -@@ -328,8 +328,7 @@ class CONTENT_EXPORT WebContentsDelegate { +@@ -326,8 +326,7 @@ class CONTENT_EXPORT WebContentsDelegate { SiteInstance* source_site_instance, mojom::WindowContainerType window_container_type, const GURL& opener_url, diff --git a/patches/chromium/create_browser_v8_snapshot_file_name_fuse.patch b/patches/chromium/create_browser_v8_snapshot_file_name_fuse.patch index 3cf8d73fd2f68..85c76dd5ba387 100644 --- a/patches/chromium/create_browser_v8_snapshot_file_name_fuse.patch +++ b/patches/chromium/create_browser_v8_snapshot_file_name_fuse.patch @@ -7,7 +7,7 @@ By default, chromium sets up one v8 snapshot to be used in all v8 contexts. This to have a dedicated browser process v8 snapshot defined by the file `browser_v8_context_snapshot.bin`. diff --git a/content/app/content_main_runner_impl.cc b/content/app/content_main_runner_impl.cc -index 1db5e8e422b62d6d92b50d600b1490bc5ac6042e..00aac10693e51c5e296bacc4fda9d801f803af73 100644 +index 48d3c60ac1b5691da1b5ae28aed9fd4085f71325..1213080cce1a3d456bc2ee08024b175b2c517e30 100644 --- a/content/app/content_main_runner_impl.cc +++ b/content/app/content_main_runner_impl.cc @@ -39,6 +39,7 @@ @@ -102,10 +102,10 @@ index 2b0919b9a56bd37a398109777dfd199d777a9f74..823f44ab0303ccd6c7502ec65560ddb5 friend class ContentClientCreator; friend class ContentClientInitializer; diff --git a/gin/v8_initializer.cc b/gin/v8_initializer.cc -index 0b8e6108b3ae445ddecc5d9dc1fcb03cf16c6619..18eb32143645730afdf823a2ea8c6ee1aa8b3179 100644 +index bf101d76e22d80fe909d0eebe1f5c2c399cb09b9..3f8ca1e015e88a5d50d80903ecd0526778af0d58 100644 --- a/gin/v8_initializer.cc +++ b/gin/v8_initializer.cc -@@ -570,8 +570,7 @@ void V8Initializer::GetV8ExternalSnapshotData(const char** snapshot_data_out, +@@ -575,8 +575,7 @@ void V8Initializer::GetV8ExternalSnapshotData(const char** snapshot_data_out, #if defined(V8_USE_EXTERNAL_STARTUP_DATA) @@ -115,7 +115,7 @@ index 0b8e6108b3ae445ddecc5d9dc1fcb03cf16c6619..18eb32143645730afdf823a2ea8c6ee1 if (g_mapped_snapshot) { // TODO(crbug.com/802962): Confirm not loading different type of snapshot // files in a process. -@@ -580,10 +579,17 @@ void V8Initializer::LoadV8Snapshot(V8SnapshotFileType snapshot_file_type) { +@@ -585,10 +584,17 @@ void V8Initializer::LoadV8Snapshot(V8SnapshotFileType snapshot_file_type) { base::MemoryMappedFile::Region file_region; base::File file = diff --git a/patches/chromium/disable_hidden.patch b/patches/chromium/disable_hidden.patch index 6db95171ce6b1..30474965e28a0 100644 --- a/patches/chromium/disable_hidden.patch +++ b/patches/chromium/disable_hidden.patch @@ -6,7 +6,7 @@ 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 7696ac81e79206c09fd74566c416cec0f337747c..f74ee0d5239ea8d27174e334408a82c42fe78421 100644 +index 7f63e954dc68a82699e06b5e611c590faf342a6b..df4a7d191281af4602517ecc7300235ceb4e6799 100644 --- a/content/browser/renderer_host/render_widget_host_impl.cc +++ b/content/browser/renderer_host/render_widget_host_impl.cc @@ -749,6 +749,9 @@ void RenderWidgetHostImpl::WasHidden() { diff --git a/patches/chromium/feat_allow_code_cache_in_custom_schemes.patch b/patches/chromium/feat_allow_code_cache_in_custom_schemes.patch index 992f279d1d730..876124e5b4897 100644 --- a/patches/chromium/feat_allow_code_cache_in_custom_schemes.patch +++ b/patches/chromium/feat_allow_code_cache_in_custom_schemes.patch @@ -393,10 +393,10 @@ index ce9644d33fe83379127b01bf9a2b1c4badc3bc7c..fd486d4637ae4766ed78571dee7f9ceb if (schemes.allow_non_standard_schemes_in_origins) url::EnableNonStandardSchemesForAndroidWebView(); diff --git a/content/public/common/content_client.h b/content/public/common/content_client.h -index 5d1484651fb8c3e03337665d3d5342ba51df3154..d4432a660d6c5a5e937dedabb7e4b71b87c9504b 100644 +index 2387517cfddbd9277739265ae648ba6a2a4ebb50..eb64b73515b0f4d925157ad769df283168983e31 100644 --- a/content/public/common/content_client.h +++ b/content/public/common/content_client.h -@@ -139,6 +139,9 @@ class CONTENT_EXPORT ContentClient { +@@ -142,6 +142,9 @@ class CONTENT_EXPORT ContentClient { // Registers a URL scheme as strictly empty documents, allowing them to // commit synchronously. std::vector empty_document_schemes; @@ -407,7 +407,7 @@ index 5d1484651fb8c3e03337665d3d5342ba51df3154..d4432a660d6c5a5e937dedabb7e4b71b std::vector extension_schemes; // Registers a URL scheme with a predefined default custom handler. diff --git a/url/url_util.cc b/url/url_util.cc -index 16875957448d2c10c889bb406a5e749cfae41ddc..038037d558ad4deedcbfc5c7c8264a8eab93c0d7 100644 +index 82b27b8f596843b4b7e8e9a07909ccecb7ada6b3..c5e07f7875152ed638b59c286919296335c785e0 100644 --- a/url/url_util.cc +++ b/url/url_util.cc @@ -115,6 +115,9 @@ struct SchemeRegistry { @@ -437,7 +437,7 @@ index 16875957448d2c10c889bb406a5e749cfae41ddc..038037d558ad4deedcbfc5c7c8264a8e DoAddSchemeWithHandler( new_scheme, handler, diff --git a/url/url_util.h b/url/url_util.h -index 8c94c7a4f6d5f653d326199e5b43452f969911d4..518ea53a033233ca88b411200e008beb7bbd75ef 100644 +index b044801738627c36c136459dc605c5b6e58b8423..cfce25d7e2729b5d3c86353d8df8b0c864238247 100644 --- a/url/url_util.h +++ b/url/url_util.h @@ -115,6 +115,15 @@ COMPONENT_EXPORT(URL) const std::vector& GetCSPBypassingSchemes(); diff --git a/patches/chromium/feat_enable_offscreen_rendering_with_viz_compositor.patch b/patches/chromium/feat_enable_offscreen_rendering_with_viz_compositor.patch index 8e625f5f3207b..157db45236772 100644 --- a/patches/chromium/feat_enable_offscreen_rendering_with_viz_compositor.patch +++ b/patches/chromium/feat_enable_offscreen_rendering_with_viz_compositor.patch @@ -520,7 +520,7 @@ index 796ae2688436eb07f19909641d1620dd02f10cdb..c9e0eee0b329caf46669b419b1cd10cf waiting_on_draw_ack_ = true; diff --git a/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc b/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc -index c11057917af819fc1e4f343ba28d01db464d00eb..425394c38ddd8aa01e64d4f77c704370d1f6299a 100644 +index f8e148cb3b61f398db71fbb2933f9f264567508a..b9fd9314a2c27bd08c341171d6abef0bfb1d946c 100644 --- a/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc +++ b/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc @@ -100,7 +100,8 @@ RootCompositorFrameSinkImpl::Create( @@ -595,10 +595,10 @@ index d7deccb6e6ec63592cd840a05403f402238e645e..4c4356b8def15ed3156db38d0a593b83 // Sends the created child window to the browser process so that it can be diff --git a/services/viz/privileged/mojom/compositing/frame_sink_manager.mojom b/services/viz/privileged/mojom/compositing/frame_sink_manager.mojom -index fe4b73a47c9fa1bce506cf3159c38dce1ae1b51e..1ab474693850cd710d33ee7f3410e8263653efe7 100644 +index b8792901aeb7d1f8ee459bab05c3cc592f38aaa1..04a8c6f55e2308e0ee545072f2fe5c53641a8607 100644 --- a/services/viz/privileged/mojom/compositing/frame_sink_manager.mojom +++ b/services/viz/privileged/mojom/compositing/frame_sink_manager.mojom -@@ -30,6 +30,7 @@ struct RootCompositorFrameSinkParams { +@@ -31,6 +31,7 @@ struct RootCompositorFrameSinkParams { bool send_swap_size_notifications = false; // Disables begin frame rate limiting for the display compositor. bool disable_frame_rate_limit = false; @@ -618,7 +618,7 @@ index 2f462f0deb5fc8a637457243fb5d5849fc214d14..695869b83cefaa24af93a2e11b39de05 + Draw(gfx.mojom.Rect damage_rect) => (); }; diff --git a/ui/compositor/compositor.h b/ui/compositor/compositor.h -index 3d486e85cbb1cd10b73b981824eebcbe3299f7ac..29e8cbde697ca4815275d87e04ee1311d14f1ecb 100644 +index 5d3dbdb5016a266aa59df2a2954608ed377bb0a8..579b7f45fabdbf326995e3a20b5e509c859f178f 100644 --- a/ui/compositor/compositor.h +++ b/ui/compositor/compositor.h @@ -89,6 +89,7 @@ namespace mojom { 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 22b123a6e7cff..e1d914135f05f 100644 --- a/patches/chromium/feat_expose_raw_response_headers_from_urlloader.patch +++ b/patches/chromium/feat_expose_raw_response_headers_from_urlloader.patch @@ -112,7 +112,7 @@ index e1fb008d12ae863df30dbffb07c7ec53f29f1333..3f5074bde0de54dc3fd57da756982634 string mime_type; diff --git a/services/network/url_loader.cc b/services/network/url_loader.cc -index 82b5b7332864bc317d867d17a6a112d24cc12ceb..7dd4325014a19b7ffe43c45d42c38530c3c6bdc1 100644 +index f1be4c7bd7a72846ac31463b422b615010253722..cecce7ffc5970c2869d80d78d90e5074ab2ac402 100644 --- a/services/network/url_loader.cc +++ b/services/network/url_loader.cc @@ -692,6 +692,7 @@ URLLoader::URLLoader( diff --git a/patches/chromium/fix_add_missing_perfetto_flow_and_trace_event_includes.patch b/patches/chromium/fix_add_missing_perfetto_flow_and_trace_event_includes.patch deleted file mode 100644 index 20f6acc75a953..0000000000000 --- a/patches/chromium/fix_add_missing_perfetto_flow_and_trace_event_includes.patch +++ /dev/null @@ -1,72 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Shelley Vohr -Date: Tue, 12 Mar 2024 12:18:24 +0100 -Subject: fix: add missing perfetto::Flow and TRACE_EVENT includes - -Refs https://chromium-review.googlesource.com/c/chromium/src/+/5022285 - -Fixes the following build errors: - -../../third_party/blink/renderer/core/workers/worker_global_scope.cc:581:19: error: no member named 'Flow' in namespace 'perfetto' - 581 | perfetto::Flow::Global(message_event->GetTraceId())); - | ~~~~~~~~~~^ - -../../third_party/blink/renderer/core/workers/dedicated_worker_messaging_proxy.cc:245:19: error: no member named 'Flow' in namespace 'perfetto' - 245 | perfetto::Flow::Global(event->GetTraceId())); - | ~~~~~~~~~~^ - -../../third_party/blink/renderer/core/workers/worker_global_scope.cc:576:5: error: use of undeclared identifier 'TRACE_EVENT' - 576 | TRACE_EVENT( - | ^ - -../../third_party/blink/renderer/core/workers/dedicated_worker_messaging_proxy.cc:240:5: error: use of undeclared identifier 'TRACE_EVENT' - 240 | TRACE_EVENT( - | ^ - -resultant of missing includes for: - -- base/trace_event/typed_macros.h -- third_party/perfetto/include/perfetto/tracing/track_event_args.h - -Upstreamed at https://chromium-review.googlesource.com/c/chromium/src/+/5365462. - -diff --git a/third_party/blink/renderer/core/workers/dedicated_worker_messaging_proxy.cc b/third_party/blink/renderer/core/workers/dedicated_worker_messaging_proxy.cc -index c45d61a923ab391933bf3852add770fc18942bf5..c4af39b8b29dcf8f59214bb2054c74b9988253ff 100644 ---- a/third_party/blink/renderer/core/workers/dedicated_worker_messaging_proxy.cc -+++ b/third_party/blink/renderer/core/workers/dedicated_worker_messaging_proxy.cc -@@ -6,6 +6,7 @@ - - #include - #include "base/feature_list.h" -+#include "base/trace_event/typed_macros.h" - #include "services/network/public/mojom/fetch_api.mojom-blink.h" - #include "third_party/blink/public/common/features.h" - #include "third_party/blink/public/common/tokens/tokens.h" -@@ -33,6 +34,7 @@ - #include "third_party/blink/renderer/platform/scheduler/public/post_cross_thread_task.h" - #include "third_party/blink/renderer/platform/wtf/cross_thread_functional.h" - #include "third_party/blink/renderer/platform/wtf/wtf.h" -+#include "third_party/perfetto/include/perfetto/tracing/track_event_args.h" - - namespace blink { - -diff --git a/third_party/blink/renderer/core/workers/worker_global_scope.cc b/third_party/blink/renderer/core/workers/worker_global_scope.cc -index 996e5b563ee486f50aada96aaa9f25ac392e6424..3422670a53aeb8cd55174cc1af482aef086005e1 100644 ---- a/third_party/blink/renderer/core/workers/worker_global_scope.cc -+++ b/third_party/blink/renderer/core/workers/worker_global_scope.cc -@@ -28,6 +28,7 @@ - #include "third_party/blink/renderer/core/workers/worker_global_scope.h" - - #include "base/memory/scoped_refptr.h" -+#include "base/trace_event/typed_macros.h" - #include "mojo/public/cpp/bindings/pending_remote.h" - #include "services/metrics/public/cpp/mojo_ukm_recorder.h" - #include "third_party/blink/public/common/privacy_budget/identifiability_study_settings.h" -@@ -88,6 +89,7 @@ - #include "third_party/blink/renderer/platform/weborigin/security_origin.h" - #include "third_party/blink/renderer/platform/weborigin/security_policy.h" - #include "third_party/blink/renderer/platform/wtf/cross_thread_functional.h" -+#include "third_party/perfetto/include/perfetto/tracing/track_event_args.h" - - namespace blink { - namespace { 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 05b22e8dc6e5c..605c5f733be47 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 @@ -23,10 +23,10 @@ Upstream bug https://bugs.chromium.org/p/chromium/issues/detail?id=1081397. Upstreamed at https://chromium-review.googlesource.com/c/chromium/src/+/3856266. diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc -index 43f45a17a2d2556a12941fb431708ea9e0ce3ada..b5b143415450f02660901cf48c7ea2968ed67206 100644 +index 1ca5ce3110edea41fde30db79b384489d0297977..072d02f2130294d59176e510caafade29feca96f 100644 --- a/content/browser/renderer_host/navigation_request.cc +++ b/content/browser/renderer_host/navigation_request.cc -@@ -10374,6 +10374,12 @@ NavigationRequest::GetOriginForURLLoaderFactoryUncheckedWithDebugInfo() { +@@ -10420,6 +10420,12 @@ NavigationRequest::GetOriginForURLLoaderFactoryUncheckedWithDebugInfo() { return std::make_pair(parent->GetLastCommittedOrigin(), "about_srcdoc"); } diff --git a/patches/chromium/fix_disabling_background_throttling_in_compositor.patch b/patches/chromium/fix_disabling_background_throttling_in_compositor.patch index aff0847017ea6..276f460fcc274 100644 --- a/patches/chromium/fix_disabling_background_throttling_in_compositor.patch +++ b/patches/chromium/fix_disabling_background_throttling_in_compositor.patch @@ -12,7 +12,7 @@ invisible state of the `viz::DisplayScheduler` owned by the `ui::Compositor`. diff --git a/ui/compositor/compositor.cc b/ui/compositor/compositor.cc -index 3bb35f0d0686df1718cc62c6d4ab42817477dd26..43a53e4b91747b3224ee8ac8002a4c8a9ed8a092 100644 +index 58c898eae10ecca9741d89e5a211b7c25c6d5a0b..ddd00f284e3e1efb810bf0202eb3b7838ac4d7e6 100644 --- a/ui/compositor/compositor.cc +++ b/ui/compositor/compositor.cc @@ -339,7 +339,8 @@ void Compositor::SetLayerTreeFrameSink( @@ -54,7 +54,7 @@ index 3bb35f0d0686df1718cc62c6d4ab42817477dd26..43a53e4b91747b3224ee8ac8002a4c8a + } // namespace ui diff --git a/ui/compositor/compositor.h b/ui/compositor/compositor.h -index 29e8cbde697ca4815275d87e04ee1311d14f1ecb..ecc0de0ecb32f7bfd5624b017588f75bb88ab7f3 100644 +index 579b7f45fabdbf326995e3a20b5e509c859f178f..c6b9846574afdf6d6badaca8263221894b4763f8 100644 --- a/ui/compositor/compositor.h +++ b/ui/compositor/compositor.h @@ -508,6 +508,10 @@ class COMPOSITOR_EXPORT Compositor : public base::PowerSuspendObserver, 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 3c4d05cf6ee7e..0f6376b219cfa 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 0c7d5b2c1d3e97420913bd643bb2a524a76fc286..653793fa480f035ce11e079b370bf5ed // 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 459d9057d4155f83f6c184d654930f10f2a3241a..7f061765a05ca246e942e38f312e780000978ced 100644 +index d9646348e5b21618e013e04c5ec43868163c1d5b..9614ffb57e2d9b9d70f8affcefbed03f05c30f1f 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -8837,7 +8837,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame( +@@ -8870,7 +8870,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame( "WebContentsImpl::OnFocusedElementChangedInFrame", "render_frame_host", frame); RenderWidgetHostViewBase* root_view = diff --git a/patches/chromium/fix_patch_out_profile_refs_in_accessibility_ui.patch b/patches/chromium/fix_patch_out_profile_refs_in_accessibility_ui.patch index 761a443ee6929..00e576dbd365b 100644 --- a/patches/chromium/fix_patch_out_profile_refs_in_accessibility_ui.patch +++ b/patches/chromium/fix_patch_out_profile_refs_in_accessibility_ui.patch @@ -7,7 +7,7 @@ This tweaks Chrome's Accessibility support at chrome://accessibility to make it usable from Electron by removing Profile references. diff --git a/chrome/browser/ui/webui/accessibility/accessibility_ui.cc b/chrome/browser/ui/webui/accessibility/accessibility_ui.cc -index a2c6fc542c041d0878dfd62f7641820a9e3bfbc6..6f0cab0eb2dabe23feb1c2ff4850b39cb428faf1 100644 +index 180e18a01f82542b55fc9d7b8615b1731ff31d75..f9289b0103d85083c936788ed0c165b661a91cb9 100644 --- a/chrome/browser/ui/webui/accessibility/accessibility_ui.cc +++ b/chrome/browser/ui/webui/accessibility/accessibility_ui.cc @@ -22,7 +22,10 @@ @@ -41,7 +41,7 @@ index a2c6fc542c041d0878dfd62f7641820a9e3bfbc6..6f0cab0eb2dabe23feb1c2ff4850b39c #include "ui/views/accessibility/widget_ax_tree_id_map.h" #include "ui/views/widget/widget.h" #include "ui/views/widget/widget_delegate.h" -@@ -164,7 +170,7 @@ base::Value::Dict BuildTargetDescriptor(content::RenderViewHost* rvh) { +@@ -165,7 +171,7 @@ base::Value::Dict BuildTargetDescriptor(content::RenderViewHost* rvh) { accessibility_mode); } @@ -50,7 +50,7 @@ index a2c6fc542c041d0878dfd62f7641820a9e3bfbc6..6f0cab0eb2dabe23feb1c2ff4850b39c base::Value::Dict BuildTargetDescriptor(Browser* browser) { base::Value::Dict target_data; target_data.Set(kSessionIdField, browser->session_id().id()); -@@ -198,7 +204,9 @@ void HandleAccessibilityRequestCallback( +@@ -199,7 +205,9 @@ void HandleAccessibilityRequestCallback( DCHECK(ShouldHandleAccessibilityRequestCallback(path)); base::Value::Dict data; @@ -60,7 +60,7 @@ index a2c6fc542c041d0878dfd62f7641820a9e3bfbc6..6f0cab0eb2dabe23feb1c2ff4850b39c ui::AXMode mode = content::BrowserAccessibilityState::GetInstance()->GetAccessibilityMode(); bool is_native_enabled = content::BrowserAccessibilityState::GetInstance() -@@ -230,7 +238,7 @@ void HandleAccessibilityRequestCallback( +@@ -231,7 +239,7 @@ void HandleAccessibilityRequestCallback( // enabled. data.Set(kViewsAccessibility, features::IsAccessibilityTreeForViewsEnabled()); @@ -68,8 +68,8 @@ index a2c6fc542c041d0878dfd62f7641820a9e3bfbc6..6f0cab0eb2dabe23feb1c2ff4850b39c + bool show_internal = true; data.Set(kInternal, show_internal ? kOn : kOff); - base::Value::List page_list; -@@ -273,11 +281,11 @@ void HandleAccessibilityRequestCallback( + bool is_mode_locked = !content::BrowserAccessibilityState::GetInstance() +@@ -278,11 +286,11 @@ void HandleAccessibilityRequestCallback( data.Set(kPagesField, std::move(page_list)); base::Value::List browser_list; @@ -83,7 +83,7 @@ index a2c6fc542c041d0878dfd62f7641820a9e3bfbc6..6f0cab0eb2dabe23feb1c2ff4850b39c data.Set(kBrowsersField, std::move(browser_list)); base::Value::List widgets_list; -@@ -549,8 +557,10 @@ void AccessibilityUIMessageHandler::SetGlobalFlag( +@@ -554,8 +562,10 @@ void AccessibilityUIMessageHandler::SetGlobalFlag( AllowJavascript(); if (flag_name_str == kInternal) { @@ -92,9 +92,9 @@ index a2c6fc542c041d0878dfd62f7641820a9e3bfbc6..6f0cab0eb2dabe23feb1c2ff4850b39c pref->SetBoolean(prefs::kShowInternalAccessibilityTree, enabled); +#endif return; - } - -@@ -660,8 +670,12 @@ void AccessibilityUIMessageHandler::RequestWebContentsTree( + } else if (flag_name_str == kLocked) { + content::BrowserAccessibilityState::GetInstance()->SetAXModeChangeAllowed( +@@ -669,8 +679,12 @@ void AccessibilityUIMessageHandler::RequestWebContentsTree( AXPropertyFilter::ALLOW_EMPTY); AddPropertyFilters(property_filters, deny, AXPropertyFilter::DENY); @@ -107,7 +107,7 @@ index a2c6fc542c041d0878dfd62f7641820a9e3bfbc6..6f0cab0eb2dabe23feb1c2ff4850b39c std::string accessibility_contents = web_contents->DumpAccessibilityTree(internal, property_filters); result.Set(kTreeField, accessibility_contents); -@@ -686,6 +700,7 @@ void AccessibilityUIMessageHandler::RequestNativeUITree( +@@ -695,6 +709,7 @@ void AccessibilityUIMessageHandler::RequestNativeUITree( AXPropertyFilter::ALLOW_EMPTY); AddPropertyFilters(property_filters, deny, AXPropertyFilter::DENY); @@ -115,7 +115,7 @@ index a2c6fc542c041d0878dfd62f7641820a9e3bfbc6..6f0cab0eb2dabe23feb1c2ff4850b39c for (Browser* browser : *BrowserList::GetInstance()) { if (browser->session_id().id() == session_id) { base::Value::Dict result = BuildTargetDescriptor(browser); -@@ -698,6 +713,7 @@ void AccessibilityUIMessageHandler::RequestNativeUITree( +@@ -707,6 +722,7 @@ void AccessibilityUIMessageHandler::RequestNativeUITree( return; } } @@ -123,7 +123,7 @@ index a2c6fc542c041d0878dfd62f7641820a9e3bfbc6..6f0cab0eb2dabe23feb1c2ff4850b39c #endif // !BUILDFLAG(IS_ANDROID) // No browser with the specified |session_id| was found. base::Value::Dict result; -@@ -810,5 +826,7 @@ void AccessibilityUIMessageHandler::RequestAccessibilityEvents( +@@ -819,5 +835,7 @@ void AccessibilityUIMessageHandler::RequestAccessibilityEvents( // static void AccessibilityUIMessageHandler::RegisterProfilePrefs( user_prefs::PrefRegistrySyncable* registry) { 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 62d49e280f1b0..ae2c57a2c6a9d 100644 --- a/patches/chromium/fix_restore_original_resize_performance_on_macos.patch +++ b/patches/chromium/fix_restore_original_resize_performance_on_macos.patch @@ -11,7 +11,7 @@ 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 e993e7541de716377959aeb71a784a2cab53289b..b226b7ca8a5cdde4581ddbf452e691c0e699829b 100644 +index 8718ad62ca50b8426814af3a41553263921cf069..be19b35393a23aee40f93baf8bdb4b876649a0e6 100644 --- a/content/browser/renderer_host/render_widget_host_impl.cc +++ b/content/browser/renderer_host/render_widget_host_impl.cc @@ -2140,9 +2140,8 @@ RenderWidgetHostImpl::GetWidgetInputHandler() { diff --git a/patches/chromium/fix_return_v8_value_from_localframe_requestexecutescript.patch b/patches/chromium/fix_return_v8_value_from_localframe_requestexecutescript.patch index 35835a5f5d14e..f3a7524beb5fe 100644 --- a/patches/chromium/fix_return_v8_value_from_localframe_requestexecutescript.patch +++ b/patches/chromium/fix_return_v8_value_from_localframe_requestexecutescript.patch @@ -64,10 +64,10 @@ index cba373664bec3a32abad6fe0396bd67b53b7e67f..7a985067b1371604644d48159f2f5aa7 #endif // THIRD_PARTY_BLINK_PUBLIC_WEB_WEB_SCRIPT_EXECUTION_CALLBACK_H_ diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc -index e84ae764c9d47bfb78d01aa20695e03b07787136..6edb6bd6d8de5fdbd12473673262e05b218cd805 100644 +index 92cfe0001933cd18ecb7384ead1dda26f563e62b..0e90800b13e3d0fd18e4c8c32f0a90d64bcff4b9 100644 --- a/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc -@@ -2966,6 +2966,7 @@ void LocalFrame::RequestExecuteScript( +@@ -2982,6 +2982,7 @@ void LocalFrame::RequestExecuteScript( mojom::blink::EvaluationTiming evaluation_timing, mojom::blink::LoadEventBlockingOption blocking_option, WebScriptExecutionCallback callback, @@ -75,7 +75,7 @@ index e84ae764c9d47bfb78d01aa20695e03b07787136..6edb6bd6d8de5fdbd12473673262e05b BackForwardCacheAware back_forward_cache_aware, mojom::blink::WantResultOption want_result_option, mojom::blink::PromiseResultOption promise_behavior) { -@@ -2999,7 +3000,7 @@ void LocalFrame::RequestExecuteScript( +@@ -3015,7 +3016,7 @@ void LocalFrame::RequestExecuteScript( PausableScriptExecutor::CreateAndRun( script_state, std::move(script_sources), execute_script_policy, user_gesture, evaluation_timing, blocking_option, want_result_option, @@ -85,10 +85,10 @@ index e84ae764c9d47bfb78d01aa20695e03b07787136..6edb6bd6d8de5fdbd12473673262e05b void LocalFrame::SetEvictCachedSessionStorageOnFreezeOrUnload() { diff --git a/third_party/blink/renderer/core/frame/local_frame.h b/third_party/blink/renderer/core/frame/local_frame.h -index 366f0d69c113b966686572f85c8a482e5b522f5b..e223af5aebd2f62947f5392ca7a622ec4e469417 100644 +index b05cbf16c6917c646684774829493ad6c908d465..38c9e6c423144fa1f15dc8bc0d76109428b888cb 100644 --- a/third_party/blink/renderer/core/frame/local_frame.h +++ b/third_party/blink/renderer/core/frame/local_frame.h -@@ -821,6 +821,7 @@ class CORE_EXPORT LocalFrame final +@@ -825,6 +825,7 @@ class CORE_EXPORT LocalFrame final mojom::blink::EvaluationTiming, mojom::blink::LoadEventBlockingOption, WebScriptExecutionCallback, @@ -97,7 +97,7 @@ index 366f0d69c113b966686572f85c8a482e5b522f5b..e223af5aebd2f62947f5392ca7a622ec mojom::blink::WantResultOption, mojom::blink::PromiseResultOption); diff --git a/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc b/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc -index 999f3f7ecbb9e4ffda99b7cd930bf324eaf1851f..0c74f1071781cffb34103368380268865a633f45 100644 +index 1e7c9c5e99d33b1153cdf3af41a5abc58cbcbafb..d07c5b65c70236c5739186b6d3b32882b1bf330e 100644 --- a/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc +++ b/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc @@ -969,6 +969,7 @@ void LocalFrameMojoHandler::JavaScriptExecuteRequestInIsolatedWorld( diff --git a/patches/chromium/frame_host_manager.patch b/patches/chromium/frame_host_manager.patch index 73498ddb39473..38fb2d4f3ceaf 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 7ab2528ebaae494ee276929b11b8782b36999189..9a9f49aac1250ad3095311e1528ba77b8d4f3d4c 100644 +index 91521d844841ba42cc98b98ec646e0a36f2cc393..62a069836bc680bd82559eaa1eb5a7f14d3597c1 100644 --- a/content/browser/renderer_host/render_frame_host_manager.cc +++ b/content/browser/renderer_host/render_frame_host_manager.cc -@@ -4272,6 +4272,9 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest( +@@ -4290,6 +4290,9 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest( request->ResetStateForSiteInstanceChange(); } @@ -20,7 +20,7 @@ index 7ab2528ebaae494ee276929b11b8782b36999189..9a9f49aac1250ad3095311e1528ba77b } diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h -index 25641beab08c2f575494f23850b1e22f1958569b..6d6ffe35bb63ecb673d46297780b134ecb1da42b 100644 +index b777041ec1111444d690d1d188dd622ce4677d4c..7541c01f350b41e5b69a6d91f6ab10409615f2a8 100644 --- a/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h @@ -308,6 +308,11 @@ class CONTENT_EXPORT ContentBrowserClient { diff --git a/patches/chromium/gin_enable_disable_v8_platform.patch b/patches/chromium/gin_enable_disable_v8_platform.patch index 4bd38dd8f6fd7..453abf3608420 100644 --- a/patches/chromium/gin_enable_disable_v8_platform.patch +++ b/patches/chromium/gin_enable_disable_v8_platform.patch @@ -38,10 +38,10 @@ index c19eb72e8d37fe8145b813d07875addf793e12dc..a5db8841773618814ac90f740201d4d7 // Returns whether `Initialize` has already been invoked in the process. // Initialization is a one-way operation (i.e., this method cannot return diff --git a/gin/v8_initializer.cc b/gin/v8_initializer.cc -index 7da26b994191cba6b8f6bdb7ee36989ba3fc7558..0b8e6108b3ae445ddecc5d9dc1fcb03cf16c6619 100644 +index 87a32462a37a1226dfc14b47bf73b9f21f9eb898..bf101d76e22d80fe909d0eebe1f5c2c399cb09b9 100644 --- a/gin/v8_initializer.cc +++ b/gin/v8_initializer.cc -@@ -458,7 +458,8 @@ void SetFlags(IsolateHolder::ScriptMode mode, +@@ -463,7 +463,8 @@ void SetFlags(IsolateHolder::ScriptMode mode, // static void V8Initializer::Initialize(IsolateHolder::ScriptMode mode, const std::string js_command_line_flags, @@ -51,7 +51,7 @@ index 7da26b994191cba6b8f6bdb7ee36989ba3fc7558..0b8e6108b3ae445ddecc5d9dc1fcb03c static bool v8_is_initialized = false; if (v8_is_initialized) return; -@@ -468,7 +469,8 @@ void V8Initializer::Initialize(IsolateHolder::ScriptMode mode, +@@ -473,7 +474,8 @@ void V8Initializer::Initialize(IsolateHolder::ScriptMode mode, // See https://crbug.com/v8/11043 SetFlags(mode, js_command_line_flags); diff --git a/patches/chromium/gritsettings_resource_ids.patch b/patches/chromium/gritsettings_resource_ids.patch index cc1571386707a..7aa0ffdbcad6f 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 fb51337be0c37b18e20dbdbc01f5382a02266e1b..0b88ffda8399ec6a6fbdc4e8db97c427362bd746 100644 +index af3d2926f558788796ba09b3adc0960c24096a2a..2b4b2e54ef1a7424bb675ff6d2f98b976a747fea 100644 --- a/tools/gritsettings/resource_ids.spec +++ b/tools/gritsettings/resource_ids.spec -@@ -1279,6 +1279,11 @@ +@@ -1283,6 +1283,11 @@ "includes": [8440], }, diff --git a/patches/chromium/load_v8_snapshot_in_browser_process.patch b/patches/chromium/load_v8_snapshot_in_browser_process.patch index 5a413c5fc1cd1..d9d13affed03c 100644 --- a/patches/chromium/load_v8_snapshot_in_browser_process.patch +++ b/patches/chromium/load_v8_snapshot_in_browser_process.patch @@ -9,7 +9,7 @@ but due to the nature of electron, we need to load the v8 snapshot in the browser process. diff --git a/content/app/content_main_runner_impl.cc b/content/app/content_main_runner_impl.cc -index f39a56eefbaa70f3abb9b36fe02a25b60ae20c90..1db5e8e422b62d6d92b50d600b1490bc5ac6042e 100644 +index 824026e6e2bd6a7469c106fad6709282d0f19a94..48d3c60ac1b5691da1b5ae28aed9fd4085f71325 100644 --- a/content/app/content_main_runner_impl.cc +++ b/content/app/content_main_runner_impl.cc @@ -274,11 +274,8 @@ void LoadV8SnapshotFile(const base::CommandLine& command_line) { 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 bbde29e58b22a..02429a6d9df71 100644 --- a/patches/chromium/mas_avoid_private_macos_api_usage.patch.patch +++ b/patches/chromium/mas_avoid_private_macos_api_usage.patch.patch @@ -35,10 +35,10 @@ system font by checking if it's kCTFontPriorityAttribute is set to system priority. diff --git a/base/BUILD.gn b/base/BUILD.gn -index c9f0292cae20a3aa206092a44220d336cb511070..3330a093fb229b823c394440c40405ee628f28e9 100644 +index 353b3e7c6a519570af5a4842135388a8cc01e130..a836d7380a396813ec0a7a294c91ae0d09cc889f 100644 --- a/base/BUILD.gn +++ b/base/BUILD.gn -@@ -1048,6 +1048,7 @@ component("base") { +@@ -1050,6 +1050,7 @@ component("base") { "//build/config/compiler:prevent_unsafe_narrowing", "//build/config/compiler:wexit_time_destructors", "//build/config/compiler:wglobal_constructors", @@ -459,7 +459,7 @@ index d520acc21839a63f5e1167c5ec3f119d89d43713..8b2f3c6cfa2615452fd43b7accd26ce8 return kAttributes; } diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn -index 53801ccd1e8b2eadbe19d3eaf6b03186b2620a1c..c58175e595b98ed5a5e8c369e4c05f229edf5d2d 100644 +index 7c53d9b2015c6c57f19c23c52c1aab3ffeea15ea..f6b7ba2f3512dcd2528323bb6853452cc9eab1a6 100644 --- a/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn @@ -54,6 +54,7 @@ source_set("browser") { @@ -471,7 +471,7 @@ index 53801ccd1e8b2eadbe19d3eaf6b03186b2620a1c..c58175e595b98ed5a5e8c369e4c05f22 libs = [] frameworks = [] diff --git a/content/browser/accessibility/browser_accessibility_manager_mac.mm b/content/browser/accessibility/browser_accessibility_manager_mac.mm -index 4655ac4756f8655a5a21ef21a1a7286b2c5f0e46..ec631b1f0925928546e855faa5e968f5aec2b225 100644 +index abdf8a8d28639dc3735d3dc5bd309c237917f087..c08c84c3b243a6bafd358a34cbb391a6d6a9262a 100644 --- a/content/browser/accessibility/browser_accessibility_manager_mac.mm +++ b/content/browser/accessibility/browser_accessibility_manager_mac.mm @@ -21,7 +21,9 @@ @@ -500,7 +500,7 @@ index 4655ac4756f8655a5a21ef21a1a7286b2c5f0e46..ec631b1f0925928546e855faa5e968f5 // Use native VoiceOver support for live regions. BrowserAccessibilityCocoa* retained_node = native_node; -@@ -620,6 +624,7 @@ void PostAnnouncementNotification(NSString* announcement, +@@ -621,6 +625,7 @@ void PostAnnouncementNotification(NSString* announcement, return window == [NSApp accessibilityFocusedWindow]; } @@ -508,7 +508,7 @@ index 4655ac4756f8655a5a21ef21a1a7286b2c5f0e46..ec631b1f0925928546e855faa5e968f5 // TODO(accessibility): We need a solution to the problem described below. // If the window is NSAccessibilityRemoteUIElement, there are some challenges: // 1. NSApp is the browser which spawned the PWA, and what it considers the -@@ -648,6 +653,7 @@ void PostAnnouncementNotification(NSString* announcement, +@@ -649,6 +654,7 @@ void PostAnnouncementNotification(NSString* announcement, if ([window isKindOfClass:[NSAccessibilityRemoteUIElement class]]) { return true; } @@ -700,7 +700,7 @@ index a119b4439bfb9218c7aaf09dca8e78527da7f20d..faa813b003940280c6eeb87e70173019 } // namespace content diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn -index ec5c896baa6c7ad16f4d43dcb86683dba465f8f4..113aa2da812903a46487092372084b89a710a5c2 100644 +index f8b1c7ebd90d032411b1885a183403162ec3ff0c..ec30a59330641562d0e3597a4fe12368408dadde 100644 --- a/content/test/BUILD.gn +++ b/content/test/BUILD.gn @@ -488,6 +488,7 @@ static_library("test_support") { @@ -719,7 +719,7 @@ index ec5c896baa6c7ad16f4d43dcb86683dba465f8f4..113aa2da812903a46487092372084b89 } mojom("content_test_mojo_bindings") { -@@ -1702,6 +1704,7 @@ test("content_browsertests") { +@@ -1703,6 +1705,7 @@ test("content_browsertests") { defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ] configs += [ "//build/config:precompiled_headers" ] @@ -727,7 +727,7 @@ index ec5c896baa6c7ad16f4d43dcb86683dba465f8f4..113aa2da812903a46487092372084b89 public_deps = [ ":test_interfaces", -@@ -2928,6 +2931,7 @@ test("content_unittests") { +@@ -2930,6 +2933,7 @@ test("content_unittests") { } configs += [ "//build/config:precompiled_headers" ] @@ -817,7 +817,7 @@ index ea3578a727bdccfff74a4112529af9ac052165f2..a0f8573a4401922e4bc9de9b0faf1195 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 b994079339dc0aebd86dac807645f81c2974fb96..b05e35c8eabccfd3147030d03453d78e76cdc5d2 100644 +index 88bac8b417b0618fdb3c14ec4eb3c5006edd58d9..16106d3122cfc18f32285e4f475b01a56095d3d5 100644 --- a/gpu/ipc/service/image_transport_surface_overlay_mac.h +++ b/gpu/ipc/service/image_transport_surface_overlay_mac.h @@ -23,7 +23,9 @@ @@ -830,7 +830,7 @@ index b994079339dc0aebd86dac807645f81c2974fb96..b05e35c8eabccfd3147030d03453d78e @class CALayer; namespace ui { -@@ -76,8 +78,10 @@ class ImageTransportSurfaceOverlayMacEGL : public gl::Presenter { +@@ -78,8 +80,10 @@ class ImageTransportSurfaceOverlayMacEGL : public gl::Presenter { const gfx::PresentationFeedback& feedback); void PopulateCALayerParameters(); @@ -842,7 +842,7 @@ index b994079339dc0aebd86dac807645f81c2974fb96..b05e35c8eabccfd3147030d03453d78e gfx::Size pixel_size_; diff --git a/gpu/ipc/service/image_transport_surface_overlay_mac.mm b/gpu/ipc/service/image_transport_surface_overlay_mac.mm -index 59413520a9e2d601a80c90072089bed228460730..2ad023d3f9a2eb557a8f65c1727bf032a1aadbfd 100644 +index 9599d5f3351942d9d71d4c019ecefa35370e8327..268e05efbf68fc556763d18d54934ee711fa1d45 100644 --- a/gpu/ipc/service/image_transport_surface_overlay_mac.mm +++ b/gpu/ipc/service/image_transport_surface_overlay_mac.mm @@ -75,12 +75,16 @@ @@ -942,10 +942,10 @@ index 0c0243c2bb9e72c6eba6f9af554b99e2d5514a5d..f5f0e0ec951ccc8278b773c852134e4e } diff --git a/net/dns/BUILD.gn b/net/dns/BUILD.gn -index ebee73a859854299c1237b1190f4882bdd1c5121..67a818beb62a76a82a68313f3a27ab4e2ad780b5 100644 +index 9c10bfed595d0f6ac1a633594da791845cff2196..ff4d40d2e2589a40830cb51cee3d8216744ad87e 100644 --- a/net/dns/BUILD.gn +++ b/net/dns/BUILD.gn -@@ -183,6 +183,8 @@ source_set("dns") { +@@ -185,6 +185,8 @@ source_set("dns") { ":host_resolver_manager", ":mdns_client", ] @@ -1318,7 +1318,7 @@ index eb81a70e4d5d5cd3e6ae9b45f8cd1c795ea76c51..dc30306f2c5d20503399fc3a8860773a } // namespace sandbox diff --git a/third_party/blink/renderer/core/BUILD.gn b/third_party/blink/renderer/core/BUILD.gn -index c6a38a54eee355342fad2918cb5f7992415df2ce..bdebe67853c8509357889fd4ab977c553307ff89 100644 +index 45f575dead4a033161fa6f585fa83cd79663899f..627c68574176af4931a5e5e1c6fcaf673d5ffba5 100644 --- a/third_party/blink/renderer/core/BUILD.gn +++ b/third_party/blink/renderer/core/BUILD.gn @@ -311,6 +311,7 @@ component("core") { diff --git a/patches/chromium/notification_provenance.patch b/patches/chromium/notification_provenance.patch index 4e43291b569ba..eb06fbe04a5b0 100644 --- a/patches/chromium/notification_provenance.patch +++ b/patches/chromium/notification_provenance.patch @@ -133,10 +133,10 @@ index 38c8cf36fdf9366121c7ada96c167a4c9664952e..03b37fb62655a355e104870a088e4222 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 823b7e020bc931b64418c0a874539454e491d843..c299ed667915660edb4bdd70eda947f7420e8734 100644 +index ddeef4098ed4228cbb2d15ea9a05fda4ec3dca28..11662788156dca940a4d90f959fd511bcefbb07b 100644 --- a/content/browser/renderer_host/render_process_host_impl.cc +++ b/content/browser/renderer_host/render_process_host_impl.cc -@@ -2044,7 +2044,7 @@ void RenderProcessHostImpl::CreateNotificationService( +@@ -2045,7 +2045,7 @@ void RenderProcessHostImpl::CreateNotificationService( case RenderProcessHost::NotificationServiceCreatorType::kSharedWorker: case RenderProcessHost::NotificationServiceCreatorType::kDedicatedWorker: { storage_partition_impl_->GetPlatformNotificationContext()->CreateService( @@ -145,7 +145,7 @@ index 823b7e020bc931b64418c0a874539454e491d843..c299ed667915660edb4bdd70eda947f7 creator_type, std::move(receiver)); break; } -@@ -2052,7 +2052,7 @@ void RenderProcessHostImpl::CreateNotificationService( +@@ -2053,7 +2053,7 @@ void RenderProcessHostImpl::CreateNotificationService( CHECK(rfh); storage_partition_impl_->GetPlatformNotificationContext()->CreateService( diff --git a/patches/chromium/printing.patch b/patches/chromium/printing.patch index 61b380aa46ac4..895d586b98027 100644 --- a/patches/chromium/printing.patch +++ b/patches/chromium/printing.patch @@ -640,7 +640,7 @@ index 4ecdb28904fac480cf102fffdff24ae008ac88cf..e8150c95fafd83d7e2fe1f472a35acec PrintingFailed(int32 cookie, PrintFailureReason reason); diff --git a/components/printing/renderer/print_render_frame_helper.cc b/components/printing/renderer/print_render_frame_helper.cc -index 6ba4d1584f12bb3b064e1cfe17ceaacfde8b4c16..cf263d8e7d3ce07fa57d4259f8d33b36e93d1f9b 100644 +index a0ec654b13f82d9c5ff4eb838585485a59c45924..e24f2e209e547685daf18570c0a8a95306c72e2d 100644 --- a/components/printing/renderer/print_render_frame_helper.cc +++ b/components/printing/renderer/print_render_frame_helper.cc @@ -47,6 +47,7 @@ @@ -830,10 +830,10 @@ index b0ac94751454bd16b4e9bfdc071e2623813133ec..271bd9949a802a370b3619340f3364df // Calculate number of pages in source document. uint32_t CalculateNumberOfPages(blink::WebLocalFrame* frame, diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn -index c58175e595b98ed5a5e8c369e4c05f229edf5d2d..f2c0fd0aadbc34b400f91e230dc994c7eb9ab8e8 100644 +index f6b7ba2f3512dcd2528323bb6853452cc9eab1a6..288d9219efa0ea8683fe86c5b339bbf9b829d712 100644 --- a/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn -@@ -2930,8 +2930,9 @@ source_set("browser") { +@@ -2933,8 +2933,9 @@ source_set("browser") { "//ppapi/shared_impl", ] 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 4469043442596..18a95a59691cb 100644 --- a/patches/chromium/refactor_expose_cursor_changes_to_the_webcontentsobserver.patch +++ b/patches/chromium/refactor_expose_cursor_changes_to_the_webcontentsobserver.patch @@ -30,7 +30,7 @@ index a1dcd0c0eab747f144188b8faea21fb1cf2b1558..20cc65ba206a8b3d988b51f9459de157 // 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 f74ee0d5239ea8d27174e334408a82c42fe78421..e993e7541de716377959aeb71a784a2cab53289b 100644 +index df4a7d191281af4602517ecc7300235ceb4e6799..8718ad62ca50b8426814af3a41553263921cf069 100644 --- a/content/browser/renderer_host/render_widget_host_impl.cc +++ b/content/browser/renderer_host/render_widget_host_impl.cc @@ -2074,6 +2074,9 @@ void RenderWidgetHostImpl::SetCursor(const ui::Cursor& cursor) { @@ -44,10 +44,10 @@ index f74ee0d5239ea8d27174e334408a82c42fe78421..e993e7541de716377959aeb71a784a2c void RenderWidgetHostImpl::ShowContextMenuAtPoint( diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index b2866d3d050b57f5b3f6483634dbe3facaee83dd..73df439b9efd501aee94fd7b19e834ad82a5b39c 100644 +index 6475b9fd000fb83c4562f7d91a30c80e5dddf35e..94cdebc2ae552106bdeb7d3619dc9281c4fb4063 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -5246,6 +5246,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() { +@@ -5268,6 +5268,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() { return text_input_manager_.get(); } @@ -60,10 +60,10 @@ index b2866d3d050b57f5b3f6483634dbe3facaee83dd..73df439b9efd501aee94fd7b19e834ad 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 f581af6fa5f0a45c1a93605b56a47f0b36482677..37897c7d0475eb929e7ed826a38094b65a82120f 100644 +index 4cb27cbd808dafde72c82f3e907c6b45654813e7..6612ecd6d98dc071cf598dffc64d5593911925b8 100644 --- a/content/browser/web_contents/web_contents_impl.h +++ b/content/browser/web_contents/web_contents_impl.h -@@ -1036,6 +1036,7 @@ class CONTENT_EXPORT WebContentsImpl : public WebContents, +@@ -1044,6 +1044,7 @@ class CONTENT_EXPORT WebContentsImpl : public WebContents, void SendScreenRects() override; void SendActiveState(bool active) override; TextInputManager* GetTextInputManager() override; @@ -72,7 +72,7 @@ index f581af6fa5f0a45c1a93605b56a47f0b36482677..37897c7d0475eb929e7ed826a38094b6 RenderWidgetHostImpl* render_widget_host) override; bool IsShowingContextMenuOnPage() const override; diff --git a/content/public/browser/web_contents_observer.h b/content/public/browser/web_contents_observer.h -index 67a814a07af1e7294134eaa90893318e8c202730..c863f0dd1d90dfe3035b65ce1b00920679b78615 100644 +index ede7dc05810649698b30efe7b0889420225a0f2b..e9cd2da6c1343aa03ef97a0c42d3393a8c74dc20 100644 --- a/content/public/browser/web_contents_observer.h +++ b/content/public/browser/web_contents_observer.h @@ -33,6 +33,7 @@ diff --git a/patches/chromium/render_widget_host_view_base.patch b/patches/chromium/render_widget_host_view_base.patch index e106584e3b1ed..d6f030df7081e 100644 --- a/patches/chromium/render_widget_host_view_base.patch +++ b/patches/chromium/render_widget_host_view_base.patch @@ -6,10 +6,10 @@ Subject: render_widget_host_view_base.patch ... something to do with OSR? and maybe as well? terrifying. diff --git a/content/browser/renderer_host/render_widget_host_view_base.cc b/content/browser/renderer_host/render_widget_host_view_base.cc -index a6f1863cc5c8ad3cfcb32650544e6421675ac996..55da111ec29044c1e0a0b6284039e574718b0c68 100644 +index 577d2ad516dc748ff067f1bdcae35317bff602d1..252c754aa1f0145879d95a971af486512fc14fa0 100644 --- a/content/browser/renderer_host/render_widget_host_view_base.cc +++ b/content/browser/renderer_host/render_widget_host_view_base.cc -@@ -717,6 +717,13 @@ bool RenderWidgetHostViewBase::ScreenRectIsUnstableForIOv2For( +@@ -718,6 +718,13 @@ bool RenderWidgetHostViewBase::ScreenRectIsUnstableForIOv2For( return false; } @@ -24,7 +24,7 @@ index a6f1863cc5c8ad3cfcb32650544e6421675ac996..55da111ec29044c1e0a0b6284039e574 const blink::WebMouseEvent& event, const ui::LatencyInfo& latency) { diff --git a/content/browser/renderer_host/render_widget_host_view_base.h b/content/browser/renderer_host/render_widget_host_view_base.h -index 03d6711927bd78f37c4bc4c168b003e277d4724a..05cffa3fb7bf4f0a6cfdcbdb9c757b1deaa4383a 100644 +index 6f246e3c59620d2c4f98c73ca1833817938fb86f..547d7108a1e984d71eb8f1e74b875d391bd42725 100644 --- a/content/browser/renderer_host/render_widget_host_view_base.h +++ b/content/browser/renderer_host/render_widget_host_view_base.h @@ -25,10 +25,13 @@ @@ -41,20 +41,12 @@ index 03d6711927bd78f37c4bc4c168b003e277d4724a..05cffa3fb7bf4f0a6cfdcbdb9c757b1d #include "content/public/browser/render_widget_host_view.h" #include "content/public/common/page_visibility_state.h" #include "content/public/common/widget_type.h" -@@ -54,7 +57,7 @@ - namespace blink { - class WebMouseEvent; - class WebMouseWheelEvent; --} -+} // namespace blink - - namespace ui { - class Compositor; -@@ -72,9 +75,11 @@ class DevicePosturePlatformProvider; +@@ -72,10 +75,12 @@ class DevicePosturePlatformProvider; class MouseWheelPhaseHandler; class RenderWidgetHostImpl; class RenderWidgetHostViewBaseObserver; +class RenderWidgetHostViewGuest; + class ScopedViewTransitionResources; class SyntheticGestureTarget; class TextInputManager; class TouchSelectionControllerClientManager; @@ -62,7 +54,7 @@ index 03d6711927bd78f37c4bc4c168b003e277d4724a..05cffa3fb7bf4f0a6cfdcbdb9c757b1d class WebContentsAccessibility; class DelegatedFrameHost; -@@ -159,6 +164,9 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView, +@@ -160,6 +165,9 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView, const gfx::Rect& keyboard_rect) override {} bool IsHTMLFormPopup() const override; @@ -72,7 +64,7 @@ index 03d6711927bd78f37c4bc4c168b003e277d4724a..05cffa3fb7bf4f0a6cfdcbdb9c757b1d // This only needs to be overridden by RenderWidgetHostViewBase subclasses // that handle content embedded within other RenderWidgetHostViews. gfx::PointF TransformPointToRootCoordSpaceF( -@@ -336,6 +344,11 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView, +@@ -337,6 +345,11 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView, virtual void ProcessGestureEvent(const blink::WebGestureEvent& event, const ui::LatencyInfo& latency); diff --git a/patches/chromium/scroll_bounce_flag.patch b/patches/chromium/scroll_bounce_flag.patch index b20a23a59a77e..01bf419adab4a 100644 --- a/patches/chromium/scroll_bounce_flag.patch +++ b/patches/chromium/scroll_bounce_flag.patch @@ -6,7 +6,7 @@ Subject: scroll_bounce_flag.patch Patch to make scrollBounce option work. diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc -index f46edeebd1c5e3350dea2f0549ed2a24cfad7a75..77b700e48c976375129eec5f7927fe68efb0e396 100644 +index 1952b5018f8e5bed87b7dc9d8012c8f2fac00c96..ecef0e83520cbf1015ba1d639be39791ec0cfbb5 100644 --- a/content/renderer/render_thread_impl.cc +++ b/content/renderer/render_thread_impl.cc @@ -1263,7 +1263,7 @@ bool RenderThreadImpl::IsLcdTextEnabled() { diff --git a/patches/chromium/support_mixed_sandbox_with_zygote.patch b/patches/chromium/support_mixed_sandbox_with_zygote.patch index 9e02b8bfb0e0d..1b140e8bb1bec 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 c299ed667915660edb4bdd70eda947f7420e8734..d2dd405a2ee5be716588834a1c5d07118070b7e0 100644 +index 11662788156dca940a4d90f959fd511bcefbb07b..5f2c6c97eda8e543c48784e8bac6795646a9ea24 100644 --- a/content/browser/renderer_host/render_process_host_impl.cc +++ b/content/browser/renderer_host/render_process_host_impl.cc -@@ -1725,9 +1725,15 @@ bool RenderProcessHostImpl::Init() { +@@ -1726,9 +1726,15 @@ bool RenderProcessHostImpl::Init() { std::unique_ptr sandbox_delegate = std::make_unique( *cmd_line, IsPdf(), /*is_jit_disabled=*/IsPdf()); diff --git a/patches/chromium/web_contents.patch b/patches/chromium/web_contents.patch index 6c25d1d17ce0e..4d0cb9a5abc0b 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 11ed98cbe928b4c1efe1b34feec1a79cbe06a00a..9ec976ec797838e4a4e3e30524f82948c884dc96 100644 +index 257b9f8ae014f577a9e2de35a3b251efda451fbe..74b8b5bd0d22555f9e11bf326dc212634078f441 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -3516,6 +3516,13 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, +@@ -3521,6 +3521,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 11ed98cbe928b4c1efe1b34feec1a79cbe06a00a..9ec976ec797838e4a4e3e30524f82948 std::unique_ptr delegate = GetContentClient()->browser()->GetWebContentsViewDelegate(this); -@@ -3526,6 +3533,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, +@@ -3531,6 +3538,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, view_ = CreateWebContentsView(this, std::move(delegate), &render_view_host_delegate_view_); } @@ -35,10 +35,10 @@ index 11ed98cbe928b4c1efe1b34feec1a79cbe06a00a..9ec976ec797838e4a4e3e30524f82948 CHECK(view_.get()); diff --git a/content/public/browser/web_contents.h b/content/public/browser/web_contents.h -index 11504e08e61ecc1fe2747b60818b3e3f520655f7..30362796b3f3a9c3a955fe6f38af63bdb3a4ff80 100644 +index 663230421212be4a77032357d2143b5990ae3dde..675e23583cb8abb5e1bebdb2a9804dd37b834b30 100644 --- a/content/public/browser/web_contents.h +++ b/content/public/browser/web_contents.h -@@ -103,10 +103,13 @@ class BrowserContext; +@@ -104,10 +104,13 @@ class BrowserContext; class BrowserPluginGuestDelegate; class RenderFrameHost; class RenderViewHost; @@ -52,7 +52,7 @@ index 11504e08e61ecc1fe2747b60818b3e3f520655f7..30362796b3f3a9c3a955fe6f38af63bd class WebUI; struct DropData; struct MHTMLGenerationParams; -@@ -253,6 +256,10 @@ class WebContents : public PageNavigator, +@@ -254,6 +257,10 @@ class WebContents : public PageNavigator, 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 ca00e046eada1..7b7e020193b5a 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 39b46b4f5bb3adb18d903c0ca4c65f212138590b..bc6a81da3832608b12f67dc241e8711ca09e9215 100644 +index c36367b28a627f7e6e77bcf3fc10f907b131523b..ed7e48a9b2313eedae4a733e15286a2c28a42a74 100644 --- a/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc -@@ -7542,6 +7542,17 @@ void RenderFrameHostImpl::EnterFullscreen( +@@ -7548,6 +7548,17 @@ void RenderFrameHostImpl::EnterFullscreen( } } @@ -37,10 +37,10 @@ index 39b46b4f5bb3adb18d903c0ca4c65f212138590b..bc6a81da3832608b12f67dc241e8711c 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 9ec976ec797838e4a4e3e30524f82948c884dc96..459d9057d4155f83f6c184d654930f10f2a3241a 100644 +index 74b8b5bd0d22555f9e11bf326dc212634078f441..d9646348e5b21618e013e04c5ec43868163c1d5b 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -3770,21 +3770,25 @@ KeyboardEventProcessingResult WebContentsImpl::PreHandleKeyboardEvent( +@@ -3775,21 +3775,25 @@ KeyboardEventProcessingResult WebContentsImpl::PreHandleKeyboardEvent( const NativeWebKeyboardEvent& event) { OPTIONAL_TRACE_EVENT0(TRACE_DISABLED_BY_DEFAULT("content.verbose"), "WebContentsImpl::PreHandleKeyboardEvent"); @@ -78,7 +78,7 @@ index 9ec976ec797838e4a4e3e30524f82948c884dc96..459d9057d4155f83f6c184d654930f10 } bool WebContentsImpl::HandleMouseEvent(const blink::WebMouseEvent& event) { -@@ -3920,7 +3924,7 @@ void WebContentsImpl::EnterFullscreenMode( +@@ -3925,7 +3929,7 @@ void WebContentsImpl::EnterFullscreenMode( OPTIONAL_TRACE_EVENT0("content", "WebContentsImpl::EnterFullscreenMode"); DCHECK(CanEnterFullscreenMode(requesting_frame, options)); DCHECK(requesting_frame->IsActive()); diff --git a/patches/chromium/worker_context_will_destroy.patch b/patches/chromium/worker_context_will_destroy.patch index a4825ed1d87aa..2650f58811b3a 100644 --- a/patches/chromium/worker_context_will_destroy.patch +++ b/patches/chromium/worker_context_will_destroy.patch @@ -10,10 +10,10 @@ An attempt to upstream this was made, but rejected: https://chromium-review.googlesource.com/c/chromium/src/+/1954347 diff --git a/content/public/renderer/content_renderer_client.h b/content/public/renderer/content_renderer_client.h -index 05d469f572ba488bdbfbbfb0b4e6b0b298550ab5..c0bd110f078801a62f49a6c5e52db56daba085de 100644 +index 4399fe2564a03527f5172519d0542967803c8635..1b0e7abf7db8cb2c4df4955f6f5547c63902f14e 100644 --- a/content/public/renderer/content_renderer_client.h +++ b/content/public/renderer/content_renderer_client.h -@@ -384,6 +384,11 @@ class CONTENT_EXPORT ContentRendererClient { +@@ -385,6 +385,11 @@ class CONTENT_EXPORT ContentRendererClient { virtual void DidInitializeWorkerContextOnWorkerThread( v8::Local context) {} diff --git a/patches/chromium/worker_feat_add_hook_to_notify_script_ready.patch b/patches/chromium/worker_feat_add_hook_to_notify_script_ready.patch index e534657a09617..b288662d673fa 100644 --- a/patches/chromium/worker_feat_add_hook_to_notify_script_ready.patch +++ b/patches/chromium/worker_feat_add_hook_to_notify_script_ready.patch @@ -19,10 +19,10 @@ that clearly establishes the worker script is ready for evaluation with the scop initialized. diff --git a/content/public/renderer/content_renderer_client.h b/content/public/renderer/content_renderer_client.h -index c0bd110f078801a62f49a6c5e52db56daba085de..a8210f00f4c00ad16a21a0c3f0a82c6f198828f2 100644 +index 1b0e7abf7db8cb2c4df4955f6f5547c63902f14e..ee60a9cbc78858528f3d77e035e0bc11b7e7a57f 100644 --- a/content/public/renderer/content_renderer_client.h +++ b/content/public/renderer/content_renderer_client.h -@@ -384,6 +384,11 @@ class CONTENT_EXPORT ContentRendererClient { +@@ -385,6 +385,11 @@ class CONTENT_EXPORT ContentRendererClient { virtual void DidInitializeWorkerContextOnWorkerThread( v8::Local context) {} 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 b78223d1bfbf0..47abb56362494 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 826885af511a21e31874fed1ff4f056feb0ddb7a..345066348c761ed79ae4463d6bf64688da825a40 100644 +index be3b1dd1fe8950d7b4fd276e44f5e0552988e8ad..31daf42856d62bfd05a55aab3244605b9d8073f3 100644 --- a/front_end/entrypoints/main/MainImpl.ts +++ b/front_end/entrypoints/main/MainImpl.ts -@@ -718,6 +718,8 @@ export class MainImpl { +@@ -734,6 +734,8 @@ export class MainImpl { globalThis.Main = globalThis.Main || {}; // @ts-ignore Exported for Tests.js globalThis.Main.Main = MainImpl; diff --git a/patches/reclient-configs/.patches b/patches/reclient-configs/.patches index f6075d38310d4..ce3b27026a19a 100644 --- a/patches/reclient-configs/.patches +++ b/patches/reclient-configs/.patches @@ -2,3 +2,4 @@ fix_disable_compression_threshold.patch fix_add_python_remote_wrapper.patch build_on_windows_provide_clang_wrapper_as_toolchain_input.patch fix_temporarily_use_toolchain_inputs_exclusively_instead_of_inputs.patch +reland_mojo_use_large_worker_for_mojom_parser_action.patch diff --git a/patches/reclient-configs/reland_mojo_use_large_worker_for_mojom_parser_action.patch b/patches/reclient-configs/reland_mojo_use_large_worker_for_mojom_parser_action.patch new file mode 100644 index 0000000000000..608e02c13ec4b --- /dev/null +++ b/patches/reclient-configs/reland_mojo_use_large_worker_for_mojom_parser_action.patch @@ -0,0 +1,28 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: John Kleinschmidt +Date: Thu, 14 Mar 2024 11:11:36 -0400 +Subject: Reland "[mojo] Use large worker for mojom_parser action" + +https://chromium-review.googlesource.com/c/chromium/src/+/5368769 +requires a "large" worker + +https://chromium-review.googlesource.com/c/chromium/src/+/5364000 +adds a copy of buildtools/reclient_cfgs/linux_chroot/python/rewrapper_linux_cfg +so we will use that approach as we do not have differently sized workers + +diff --git a/configure_reclient.py b/configure_reclient.py +index a157ceeb155987f6ab9b11d3cef8c2c9894e0436..34136aab6cbb46c265b9f8298e9411349b1526c2 100755 +--- a/configure_reclient.py ++++ b/configure_reclient.py +@@ -297,6 +297,11 @@ class ReclientConfigurator: + f'{Paths.reclient_cfgs_dir}/{tool}/rewrapper_{host_os}.cfg', + rewrapper_cfg, source_cfg_paths) + ++ # Write "large" configs to the expected location. ++ ReclientCfg.write_to_file( ++ f'{Paths.reclient_cfgs_dir}/{tool}/rewrapper_{host_os}_large.cfg', ++ rewrapper_cfg, source_cfg_paths) ++ + + class Paths: + script_dir = '' diff --git a/shell/browser/api/electron_api_app.cc b/shell/browser/api/electron_api_app.cc index 71b968bc0bd97..32cd2bbc388e3 100644 --- a/shell/browser/api/electron_api_app.cc +++ b/shell/browser/api/electron_api_app.cc @@ -1352,10 +1352,9 @@ std::vector App::GetAppMetrics(v8::Isolate* isolate) { auto pid_dict = gin_helper::Dictionary::CreateEmpty(isolate); auto cpu_dict = gin_helper::Dictionary::CreateEmpty(isolate); - cpu_dict.Set( - "percentCPUUsage", - process_metric.second->metrics->GetPlatformIndependentCPUUsage() / - processor_count); + std::optional usage = + process_metric.second->metrics->GetPlatformIndependentCPUUsage(); + cpu_dict.Set("percentCPUUsage", usage.value_or(0) / processor_count); #if !BUILDFLAG(IS_WIN) cpu_dict.Set("idleWakeupsPerSecond", diff --git a/shell/browser/api/electron_api_web_contents.cc b/shell/browser/api/electron_api_web_contents.cc index 4bebe511fb9cd..754e7a3fb9a9f 100644 --- a/shell/browser/api/electron_api_web_contents.cc +++ b/shell/browser/api/electron_api_web_contents.cc @@ -1537,7 +1537,8 @@ void WebContents::RequestPointerLock(content::WebContents* web_contents, } void WebContents::LostPointerLock() { - exclusive_access_manager_.pointer_lock_controller()->LostPointerLock(); + exclusive_access_manager_.pointer_lock_controller() + ->ExitExclusiveAccessToPreviousState(); } void WebContents::OnRequestKeyboardLock(content::WebContents* web_contents, diff --git a/shell/browser/browser_process_impl.cc b/shell/browser/browser_process_impl.cc index b80dd44cc8670..e14dd2332b171 100644 --- a/shell/browser/browser_process_impl.cc +++ b/shell/browser/browser_process_impl.cc @@ -35,7 +35,7 @@ #include "net/proxy_resolution/proxy_config.h" #include "net/proxy_resolution/proxy_config_service.h" #include "net/proxy_resolution/proxy_config_with_annotation.h" -#include "services/device/public/cpp/geolocation/geolocation_manager.h" +#include "services/device/public/cpp/geolocation/geolocation_system_permission_manager.h" #include "services/network/public/cpp/network_switches.h" #include "shell/browser/net/resolve_proxy_helper.h" #include "shell/common/electron_paths.h" diff --git a/shell/browser/electron_browser_client.cc b/shell/browser/electron_browser_client.cc index 2c8f29a14ec2e..2c2ccadcb838a 100644 --- a/shell/browser/electron_browser_client.cc +++ b/shell/browser/electron_browser_client.cc @@ -64,7 +64,7 @@ #include "ppapi/buildflags/buildflags.h" #include "ppapi/host/ppapi_host.h" #include "printing/buildflags/buildflags.h" -#include "services/device/public/cpp/geolocation/geolocation_manager.h" +#include "services/device/public/cpp/geolocation/geolocation_system_permission_manager.h" #include "services/device/public/cpp/geolocation/location_provider.h" #include "services/network/public/cpp/features.h" #include "services/network/public/cpp/is_potentially_trustworthy.h" @@ -1721,8 +1721,9 @@ void ElectronBrowserClient::RegisterBrowserInterfaceBindersForServiceWorker( } #if BUILDFLAG(IS_MAC) -device::GeolocationManager* ElectronBrowserClient::GetGeolocationManager() { - return device::GeolocationManager::GetInstance(); +device::GeolocationSystemPermissionManager* +ElectronBrowserClient::GetGeolocationSystemPermissionManager() { + return device::GeolocationSystemPermissionManager::GetInstance(); } #endif diff --git a/shell/browser/electron_browser_client.h b/shell/browser/electron_browser_client.h index 38a5f419fd4cd..3203354144db2 100644 --- a/shell/browser/electron_browser_client.h +++ b/shell/browser/electron_browser_client.h @@ -109,7 +109,8 @@ class ElectronBrowserClient : public content::ContentBrowserClient, content::WebAuthenticationDelegate* GetWebAuthenticationDelegate() override; #if BUILDFLAG(IS_MAC) - device::GeolocationManager* GetGeolocationManager() override; + device::GeolocationSystemPermissionManager* + GetGeolocationSystemPermissionManager() override; #endif content::PlatformNotificationService* GetPlatformNotificationService(); diff --git a/shell/browser/electron_browser_main_parts_mac.mm b/shell/browser/electron_browser_main_parts_mac.mm index f616bee8d64d4..cad9f860c0fc5 100644 --- a/shell/browser/electron_browser_main_parts_mac.mm +++ b/shell/browser/electron_browser_main_parts_mac.mm @@ -9,7 +9,7 @@ #include "base/apple/bundle_locations.h" #include "base/apple/foundation_util.h" #include "base/path_service.h" -#include "services/device/public/cpp/geolocation/geolocation_manager.h" +#include "services/device/public/cpp/geolocation/geolocation_system_permission_manager.h" #include "services/device/public/cpp/geolocation/system_geolocation_source_mac.h" #include "shell/browser/browser_process_impl.h" #include "shell/browser/mac/electron_application.h" @@ -34,9 +34,10 @@ setObject:@"NO" forKey:@"NSTreatUnknownArgumentsAsOpen"]; - if (!device::GeolocationManager::GetInstance()) { - device::GeolocationManager::SetInstance( - device::SystemGeolocationSourceMac::CreateGeolocationManagerOnMac()); + if (!device::GeolocationSystemPermissionManager::GetInstance()) { + device::GeolocationSystemPermissionManager::SetInstance( + device::SystemGeolocationSourceMac:: + CreateGeolocationSystemPermissionManagerOnMac()); } } diff --git a/shell/common/api/electron_bindings.cc b/shell/common/api/electron_bindings.cc index 793c243caa45e..d0ae770b73272 100644 --- a/shell/common/api/electron_bindings.cc +++ b/shell/common/api/electron_bindings.cc @@ -277,8 +277,8 @@ v8::Local ElectronBindings::GetCPUUsage( v8::Isolate* isolate) { auto dict = gin_helper::Dictionary::CreateEmpty(isolate); int processor_count = base::SysInfo::NumberOfProcessors(); - dict.Set("percentCPUUsage", - metrics->GetPlatformIndependentCPUUsage() / processor_count); + std::optional usage = metrics->GetPlatformIndependentCPUUsage(); + dict.Set("percentCPUUsage", usage.value_or(0) / processor_count); // NB: This will throw NOTIMPLEMENTED() on Windows // For backwards compatibility, we'll return 0 diff --git a/shell/renderer/extensions/electron_extensions_dispatcher_delegate.cc b/shell/renderer/extensions/electron_extensions_dispatcher_delegate.cc index 0374c6ce24c46..0ae080cd500b0 100644 --- a/shell/renderer/extensions/electron_extensions_dispatcher_delegate.cc +++ b/shell/renderer/extensions/electron_extensions_dispatcher_delegate.cc @@ -10,8 +10,5 @@ ElectronExtensionsDispatcherDelegate::ElectronExtensionsDispatcherDelegate() = ElectronExtensionsDispatcherDelegate::~ElectronExtensionsDispatcherDelegate() = default; -void ElectronExtensionsDispatcherDelegate::RequireWebViewModules( - extensions::ScriptContext* context) {} - void ElectronExtensionsDispatcherDelegate::OnActiveExtensionsUpdated( const std::set& extension_ids) {} diff --git a/shell/renderer/extensions/electron_extensions_dispatcher_delegate.h b/shell/renderer/extensions/electron_extensions_dispatcher_delegate.h index 2e394f0d2aa07..f32e850fa8e8c 100644 --- a/shell/renderer/extensions/electron_extensions_dispatcher_delegate.h +++ b/shell/renderer/extensions/electron_extensions_dispatcher_delegate.h @@ -24,7 +24,6 @@ class ElectronExtensionsDispatcherDelegate private: // extensions::DispatcherDelegate implementation. - void RequireWebViewModules(extensions::ScriptContext* context) override; void OnActiveExtensionsUpdated( const std::set& extension_ids) override; }; diff --git a/shell/renderer/extensions/electron_extensions_renderer_api_provider.cc b/shell/renderer/extensions/electron_extensions_renderer_api_provider.cc index 36e54148b1338..73ed41306d2aa 100644 --- a/shell/renderer/extensions/electron_extensions_renderer_api_provider.cc +++ b/shell/renderer/extensions/electron_extensions_renderer_api_provider.cc @@ -20,6 +20,7 @@ namespace electron { void ElectronExtensionsRendererAPIProvider::RegisterNativeHandlers( extensions::ModuleSystem* module_system, extensions::NativeExtensionBindingsSystem* bindings_system, + extensions::V8SchemaRegistry* v8_schema_registry, extensions::ScriptContext* context) const { module_system->RegisterNativeHandler( "lazy_background_page", diff --git a/shell/renderer/extensions/electron_extensions_renderer_api_provider.h b/shell/renderer/extensions/electron_extensions_renderer_api_provider.h index faabcf4e972e8..f4b4e4e2e6c57 100644 --- a/shell/renderer/extensions/electron_extensions_renderer_api_provider.h +++ b/shell/renderer/extensions/electron_extensions_renderer_api_provider.h @@ -25,6 +25,7 @@ class ElectronExtensionsRendererAPIProvider void RegisterNativeHandlers( extensions::ModuleSystem* module_system, extensions::NativeExtensionBindingsSystem* bindings_system, + extensions::V8SchemaRegistry* v8_schema_registry, extensions::ScriptContext* context) const override; void AddBindingsSystemHooks(extensions::Dispatcher* dispatcher, extensions::NativeExtensionBindingsSystem* diff --git a/shell/renderer/extensions/electron_extensions_renderer_client.h b/shell/renderer/extensions/electron_extensions_renderer_client.h index 435004f3ae8d4..c5fd853ebf101 100644 --- a/shell/renderer/extensions/electron_extensions_renderer_client.h +++ b/shell/renderer/extensions/electron_extensions_renderer_client.h @@ -31,9 +31,8 @@ class ElectronExtensionsRendererClient ElectronExtensionsRendererClient& operator=( const ElectronExtensionsRendererClient&) = delete; - void RenderThreadStarted(); - // ExtensionsRendererClient implementation. + void RenderThreadStarted() override; bool IsIncognitoProcess() const override; int GetLowestIsolatedWorldId() const override; extensions::Dispatcher* GetDispatcher() override; diff --git a/shell/renderer/renderer_client_base.cc b/shell/renderer/renderer_client_base.cc index 485b5a14123a5..19da3a14e459f 100644 --- a/shell/renderer/renderer_client_base.cc +++ b/shell/renderer/renderer_client_base.cc @@ -90,6 +90,7 @@ #include "content/public/common/webplugininfo.h" #include "extensions/common/constants.h" #include "extensions/common/extensions_client.h" +#include "extensions/renderer/api/core_extensions_renderer_api_provider.h" #include "extensions/renderer/dispatcher.h" #include "extensions/renderer/extension_frame_helper.h" #include "extensions/renderer/extension_web_view_helper.h" @@ -243,6 +244,8 @@ void RendererClientBase::RenderThreadStarted() { extensions_renderer_client_ = std::make_unique(); + extensions_renderer_client_->AddAPIProvider( + std::make_unique()); extensions_renderer_client_->AddAPIProvider( std::make_unique()); extensions_renderer_client_->RenderThreadStarted();