From 1eb19f3078b46227eb773ec417808971de0b478a Mon Sep 17 00:00:00 2001 From: "electron-roller[bot]" <84116207+electron-roller[bot]@users.noreply.github.com> Date: Thu, 22 Jun 2023 10:51:15 +0200 Subject: [PATCH] chore: bump chromium to 116.0.5845.0 (main) (#38827) * chore: bump chromium in DEPS to 116.0.5835.0 * chore: update patches * chore: bump chromium in DEPS to 116.0.5837.0 * chore: bump chromium in DEPS to 116.0.5839.0 * chore: bump chromium in DEPS to 116.0.5841.0 * chore: bump chromium in DEPS to 116.0.5843.0 * Update patches CLs that affected printing.patch: - 4616791: Refactor PrintViewManagerBase::PrintNow() https://chromium-review.googlesource.com/c/chromium/src/+/4616791 - 4602776: Make PrintNodeUnderContextMenu operation go through PrintViewManager https://chromium-review.googlesource.com/c/chromium/src/+/4602776 * 4506614: geolocation: Add LocationProvider::FillDiagnostics https://chromium-review.googlesource.com/c/chromium/src/+/4506614 * chore: bump chromium in DEPS to 116.0.5845.0 * chore: update patches * fixup! 4506614: geolocation: Add LocationProvider::FillDiagnostics https://chromium-review.googlesource.com/c/chromium/src/+/4506614 * 4609704: Remove gnome-keyring https://chromium-review.googlesource.com/c/chromium/src/+/4609704 --------- Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com> Co-authored-by: clavin --- DEPS | 2 +- ...client_precreatemessageloop_callback.patch | 6 +- .../add_didinstallconditionalfeatures.patch | 8 +- patches/chromium/blink_local_frame.patch | 6 +- .../build_add_electron_tracing_category.patch | 2 +- ..._depend_on_packed_resource_integrity.patch | 14 +-- ...ld_config_in_the_required_components.patch | 42 ++++----- patches/chromium/can_create_window.patch | 26 +++--- ...hore_add_electron_deps_to_gitignores.patch | 6 +- ...dle_synthetic_mouse_events_for_touch.patch | 2 +- ..._introduce_blocking_api_for_electron.patch | 6 +- ...tition_attribute_dcheck_for_webviews.patch | 2 +- ...screationoverridden_with_full_params.patch | 8 +- ...e_browser_v8_snapshot_file_name_fuse.patch | 14 +-- .../disable_color_correct_rendering.patch | 4 +- .../disable_compositor_recycling.patch | 2 +- patches/chromium/disable_hidden.patch | 8 +- .../chromium/enable_reset_aspect_ratio.patch | 4 +- ...xpose_setuseragent_on_networkcontext.patch | 2 +- ...dd_set_theme_source_to_allow_apps_to.patch | 4 +- ...screen_rendering_with_viz_compositor.patch | 2 +- ..._raw_response_headers_from_urlloader.patch | 4 +- ...uest_webcontents_to_enter_fullscreen.patch | 4 +- .../fix_aspect_ratio_with_max_size.patch | 2 +- ...ding_non-standard_schemes_in_iframes.patch | 10 +-- ...king_and_message_bubbling_on_windows.patch | 6 +- ...board_hides_on_input_blur_in_webview.patch | 4 +- ...x_remove_caption-removing_style_call.patch | 4 +- ...from_localframe_requestexecutescript.patch | 26 +++--- patches/chromium/frame_host_manager.patch | 6 +- .../gin_enable_disable_v8_platform.patch | 6 +- .../chromium/gritsettings_resource_ids.patch | 2 +- ...tform_electron_can_call_x11_property.patch | 4 +- .../load_v8_snapshot_in_browser_process.patch | 4 +- .../mas-cgdisplayusesforcetogray.patch | 4 +- ...as_avoid_usage_of_private_macos_apis.patch | 2 +- .../mas_disable_remote_accessibility.patch | 14 +-- ...emote_certificate_verification_logic.patch | 2 +- .../chromium/notification_provenance.patch | 4 +- patches/chromium/printing.patch | 85 +++++++++---------- ...r_changes_to_the_webcontentsobserver.patch | 14 +-- .../render_widget_host_view_base.patch | 10 +-- patches/chromium/web_contents.patch | 8 +- patches/chromium/webview_fullscreen.patch | 4 +- patches/v8/build_gn.patch | 6 +- ...export_private_v8_symbols_on_windows.patch | 2 +- shell/browser/electron_browser_main_parts.cc | 2 - shell/browser/fake_location_provider.cc | 16 +++- shell/browser/fake_location_provider.h | 4 + 49 files changed, 220 insertions(+), 209 deletions(-) diff --git a/DEPS b/DEPS index 0e9781b21c17..d9e3a597cbba 100644 --- a/DEPS +++ b/DEPS @@ -2,7 +2,7 @@ gclient_gn_args_from = 'src' vars = { 'chromium_version': - '116.0.5833.0', + '116.0.5845.0', 'node_version': 'v18.16.0', 'nan_version': diff --git a/patches/chromium/add_contentgpuclient_precreatemessageloop_callback.patch b/patches/chromium/add_contentgpuclient_precreatemessageloop_callback.patch index 80b0b74b83d2..12dced20fda6 100644 --- a/patches/chromium/add_contentgpuclient_precreatemessageloop_callback.patch +++ b/patches/chromium/add_contentgpuclient_precreatemessageloop_callback.patch @@ -10,10 +10,10 @@ Allows Electron to restore WER when ELECTRON_DEFAULT_ERROR_MODE is set. This should be upstreamed. diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc -index 16610b7729464949eb78ecaf78c87b2d6df3d973..386fadd8ba7e654707c41e32291c9d3d17e6756a 100644 +index 280c8b9d08a35c7fbe9e352f2f71ed104cbde955..12bbcb8518110a5f4873e4f4a89e43c8920ec7b6 100644 --- a/content/gpu/gpu_main.cc +++ b/content/gpu/gpu_main.cc -@@ -255,6 +255,10 @@ int GpuMain(MainFunctionParams parameters) { +@@ -260,6 +260,10 @@ int GpuMain(MainFunctionParams parameters) { // to the GpuProcessHost once the GpuServiceImpl has started. viz::GpuServiceImpl::InstallPreInitializeLogHandler(); @@ -24,7 +24,7 @@ index 16610b7729464949eb78ecaf78c87b2d6df3d973..386fadd8ba7e654707c41e32291c9d3d // We are experiencing what appear to be memory-stomp issues in the GPU // process. These issues seem to be impacting the task executor and listeners // registered to it. Create the task executor on the heap to guard against -@@ -339,7 +343,6 @@ int GpuMain(MainFunctionParams parameters) { +@@ -344,7 +348,6 @@ int GpuMain(MainFunctionParams parameters) { const_cast(&command_line), gpu_preferences); const bool dead_on_arrival = !init_success; diff --git a/patches/chromium/add_didinstallconditionalfeatures.patch b/patches/chromium/add_didinstallconditionalfeatures.patch index becf3176c3d4..46a5edd74c09 100644 --- a/patches/chromium/add_didinstallconditionalfeatures.patch +++ b/patches/chromium/add_didinstallconditionalfeatures.patch @@ -23,10 +23,10 @@ index 103a9d9fb17e954ecaf0acecaa3eeafc23e39c94..de299316216dba204decba3b0eb57f5c int32_t world_id) {} virtual void DidClearWindowObject() {} diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc -index bbe58fc8970ba61489e3d2e6d0a31b00f768c011..7a26dfa0207573316b6397b13b4a58e4408ae8e1 100644 +index 3829c1b7902c0fbc0bb2fb53e2917ecabdfc8e96..34b02a2d2af10c7f894ed513e82fb92c52c682d1 100644 --- a/content/renderer/render_frame_impl.cc +++ b/content/renderer/render_frame_impl.cc -@@ -4430,6 +4430,12 @@ void RenderFrameImpl::DidCreateScriptContext(v8::Local context, +@@ -4442,6 +4442,12 @@ void RenderFrameImpl::DidCreateScriptContext(v8::Local context, observer.DidCreateScriptContext(context, world_id); } @@ -40,10 +40,10 @@ index bbe58fc8970ba61489e3d2e6d0a31b00f768c011..7a26dfa0207573316b6397b13b4a58e4 int world_id) { for (auto& observer : observers_) diff --git a/content/renderer/render_frame_impl.h b/content/renderer/render_frame_impl.h -index 4ff96217c554e14464605c46c22e380ff73a2d59..a715f724373184546d3320e1d58e85e88975096e 100644 +index 268c6c6f4b22c64ffcbaf715728e8da6f46d3b88..884b315d7fbdc57b20ee1508d352eb1e6825481e 100644 --- a/content/renderer/render_frame_impl.h +++ b/content/renderer/render_frame_impl.h -@@ -610,6 +610,8 @@ class CONTENT_EXPORT RenderFrameImpl +@@ -611,6 +611,8 @@ class CONTENT_EXPORT RenderFrameImpl void DidObserveLayoutShift(double score, bool after_input_or_scroll) override; void DidCreateScriptContext(v8::Local context, int world_id) override; diff --git a/patches/chromium/blink_local_frame.patch b/patches/chromium/blink_local_frame.patch index feb4843016e1..a0e21274e4bb 100644 --- a/patches/chromium/blink_local_frame.patch +++ b/patches/chromium/blink_local_frame.patch @@ -49,10 +49,10 @@ index 22c4d4e9718a503d9c7ca26a40c97149b0f8986a..6bdc2757c96a28022fda9e6f5e3b74a0 // 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 f57d2b2705b456273ff8fc8d8246e012e73d4175..19d253696c57f957e9f564c5f8366f39ef1ae349 100644 +index fa418d01914fdb671055666c72a84351349eaba8..f2b09355ba3f42dd72804fb470e98621c1a153f3 100644 --- a/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc -@@ -664,10 +664,6 @@ bool LocalFrame::DetachImpl(FrameDetachType type) { +@@ -669,10 +669,6 @@ bool LocalFrame::DetachImpl(FrameDetachType type) { } DCHECK(!view_ || !view_->IsAttached()); @@ -63,7 +63,7 @@ index f57d2b2705b456273ff8fc8d8246e012e73d4175..19d253696c57f957e9f564c5f8366f39 if (!Client()) return false; -@@ -715,6 +711,11 @@ bool LocalFrame::DetachImpl(FrameDetachType type) { +@@ -720,6 +716,11 @@ bool LocalFrame::DetachImpl(FrameDetachType type) { DCHECK(!view_->IsAttached()); Client()->WillBeDetached(); diff --git a/patches/chromium/build_add_electron_tracing_category.patch b/patches/chromium/build_add_electron_tracing_category.patch index 00409dc83450..2f4cfdfe4b4d 100644 --- a/patches/chromium/build_add_electron_tracing_category.patch +++ b/patches/chromium/build_add_electron_tracing_category.patch @@ -8,7 +8,7 @@ categories in use are known / declared. This patch is required for us to introduce a new Electron category for Electron-specific tracing. diff --git a/base/trace_event/builtin_categories.h b/base/trace_event/builtin_categories.h -index 32d4063e9cbbc917cd57db41729fc6e15803d01f..fd054d5f8ea223355423918318c437d133f73bf9 100644 +index da966a58b11be318770fccdd14986efd2a92ccf8..2a7ea1edd970a205ec5f16c66b5722282f2bcf59 100644 --- a/base/trace_event/builtin_categories.h +++ b/base/trace_event/builtin_categories.h @@ -80,6 +80,8 @@ 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 f83c008eb9fe..aaad90d8b41f 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 884bccba58c66861b43b3b50a7535cba543302e2..82e7bf534aa6b998cee8df53be3ca7db "//base", "//build:branding_buildflags", diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn -index 924e58a862e82b5940550f1c5bb5ec1940668d9b..014794f47aab13f1eb499e8046a93c89834d67e1 100644 +index c7ff5942d379b068f13c470677c83845b960858a..cd9fd963dc720f7394b656afe6ec032b10136d6b 100644 --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -4597,7 +4597,7 @@ static_library("browser") { +@@ -4606,7 +4606,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 924e58a862e82b5940550f1c5bb5ec1940668d9b..014794f47aab13f1eb499e8046a93c89 sources += [ "certificate_viewer_stub.cc" ] } diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn -index 27943175303121dcd811295a8c8bc7b2c24cb806..669ff48e5291a1601938f7555ac89d9845582046 100644 +index 8d51f9ff0067aab05b4b31b9938575d9e84027be..c0c9d6a1da12d24bc61e4b5a3e26e6be02c4255f 100644 --- a/chrome/test/BUILD.gn +++ b/chrome/test/BUILD.gn -@@ -6559,7 +6559,6 @@ test("unit_tests") { +@@ -6581,7 +6581,6 @@ test("unit_tests") { deps += [ "//chrome:other_version", @@ -57,7 +57,7 @@ index 27943175303121dcd811295a8c8bc7b2c24cb806..669ff48e5291a1601938f7555ac89d98 "//chrome//services/util_win:unit_tests", "//chrome/app:chrome_dll_resources", "//chrome/app:win_unit_tests", -@@ -6585,6 +6584,10 @@ test("unit_tests") { +@@ -6607,6 +6606,10 @@ test("unit_tests") { "//ui/resources", ] @@ -68,7 +68,7 @@ index 27943175303121dcd811295a8c8bc7b2c24cb806..669ff48e5291a1601938f7555ac89d98 ldflags = [ "/DELAYLOAD:api-ms-win-core-winrt-error-l1-1-0.dll", "/DELAYLOAD:api-ms-win-core-winrt-l1-1-0.dll", -@@ -7521,7 +7524,6 @@ test("unit_tests") { +@@ -7531,7 +7534,6 @@ test("unit_tests") { } deps += [ @@ -76,7 +76,7 @@ index 27943175303121dcd811295a8c8bc7b2c24cb806..669ff48e5291a1601938f7555ac89d98 "//chrome/browser/apps:icon_standardizer", "//chrome/browser/apps/app_service", "//chrome/browser/apps/app_service:test_support", -@@ -7607,6 +7609,10 @@ test("unit_tests") { +@@ -7617,6 +7619,10 @@ test("unit_tests") { "//ui/webui/resources/js/browser_command:mojo_bindings", ] diff --git a/patches/chromium/build_only_use_the_mas_build_config_in_the_required_components.patch b/patches/chromium/build_only_use_the_mas_build_config_in_the_required_components.patch index c8fc4565cbc6..c333711867f6 100644 --- a/patches/chromium/build_only_use_the_mas_build_config_in_the_required_components.patch +++ b/patches/chromium/build_only_use_the_mas_build_config_in_the_required_components.patch @@ -6,7 +6,7 @@ Subject: build: only use the mas build config in the required components Before landing this patch should be split into the relevant MAS patches, or at least the patch this one partially reverts diff --git a/base/BUILD.gn b/base/BUILD.gn -index 0ab06651e6f02fe82edd0be862b61dff60e61190..014c196f31fbf760423cddf14551e6963418017d 100644 +index 304223b58a7062e3a6ae466d54b9e877708e5cb3..e9efa7f9d44977982fdf72153623e423753f0386 100644 --- a/base/BUILD.gn +++ b/base/BUILD.gn @@ -228,6 +228,7 @@ if (is_apple) { @@ -38,10 +38,10 @@ index 63b32e52a11af599dbc5154ed353e2bf7250e9d3..fc6ed0cdbe211cb29dd5a1dded36b3b0 if (is_win) { diff --git a/components/os_crypt/sync/BUILD.gn b/components/os_crypt/sync/BUILD.gn -index a20e1b68ebd112d66ad82e5753b756218e457c9e..65c7170d1c2dbe4ecfc75c4fed92d6e7ff8efb27 100644 +index 7ed10085264af6f50b05e51dd93c49e3828d5b3b..d8c77f52376a13af7636e64ff0b5cf58f4fbcf97 100644 --- a/components/os_crypt/sync/BUILD.gn +++ b/components/os_crypt/sync/BUILD.gn -@@ -71,6 +71,8 @@ component("os_crypt") { +@@ -48,6 +48,8 @@ component("os_crypt") { "os_crypt_mac.mm", ] configs += [ "//build/config/compiler:enable_arc" ] @@ -71,10 +71,10 @@ index 3bc799978ea24e2f6e566dcc7f8638789e18d61d..cd8910dbc57813d41cd0fa28bb2ad61a "alert.h", "alert.mm", diff --git a/components/viz/service/BUILD.gn b/components/viz/service/BUILD.gn -index 4793d5bc9de9a3a158f90e0432c32c4818bcef2e..c42793c782c13a62b6205d0ed555ad5abab16197 100644 +index 488abc9ed0d61a4b73f4bec34cbca416abfbf715..7b1b36d6ab787e2c43d7556b1e4bb1d39c279879 100644 --- a/components/viz/service/BUILD.gn +++ b/components/viz/service/BUILD.gn -@@ -332,6 +332,7 @@ viz_component("service") { +@@ -331,6 +331,7 @@ viz_component("service") { "frame_sinks/external_begin_frame_source_mac.h", ] } @@ -82,7 +82,7 @@ index 4793d5bc9de9a3a158f90e0432c32c4818bcef2e..c42793c782c13a62b6205d0ed555ad5a } if (is_android || use_ozone) { -@@ -588,6 +589,8 @@ viz_source_set("unit_tests") { +@@ -587,6 +588,8 @@ viz_source_set("unit_tests") { "display_embedder/software_output_device_mac_unittest.mm", ] frameworks = [ "IOSurface.framework" ] @@ -92,7 +92,7 @@ index 4793d5bc9de9a3a158f90e0432c32c4818bcef2e..c42793c782c13a62b6205d0ed555ad5a if (is_win) { diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn -index e6125b6af20434f3ec3171c044d515b8c120a7b5..1e2ccffbe25e5149a8e5c8174f75119014386f57 100644 +index 7901304acdeb5845f1c1292d6360bda41c0764e0..a3d148324a0d7bc7d5416fd8e6fbdfdd956d9ccf 100644 --- a/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn @@ -56,6 +56,7 @@ source_set("browser") { @@ -104,10 +104,10 @@ index e6125b6af20434f3ec3171c044d515b8c120a7b5..1e2ccffbe25e5149a8e5c8174f751190 libs = [] frameworks = [] diff --git a/content/common/BUILD.gn b/content/common/BUILD.gn -index 9e9a06ef58e9aeff8193df7b198ee69939c2dd8f..fcf5e3f5403c6dfe7fcd6da243695d378e0d21fb 100644 +index aa1ae523aee045fb1db412a42af8aadb97e9ee2a..e5fe6c0212721a67d67b17ee8871eb92e339f845 100644 --- a/content/common/BUILD.gn +++ b/content/common/BUILD.gn -@@ -172,6 +172,7 @@ source_set("common") { +@@ -174,6 +174,7 @@ source_set("common") { "//content:content_implementation", "//build/config:precompiled_headers", ] @@ -116,7 +116,7 @@ index 9e9a06ef58e9aeff8193df7b198ee69939c2dd8f..fcf5e3f5403c6dfe7fcd6da243695d37 public_deps = [ ":mojo_bindings", diff --git a/content/renderer/BUILD.gn b/content/renderer/BUILD.gn -index abf8aa4dcf498f9684c10fbbe85547040029401a..6a3897cb80071cf9cdd0ee035a7ade263e798478 100644 +index 65714a5dca013794527640645d8eb2ce36049ac6..b2df50b4cd64816ddf9c5b7e222c47b60304f01e 100644 --- a/content/renderer/BUILD.gn +++ b/content/renderer/BUILD.gn @@ -228,6 +228,7 @@ target(link_target_type, "renderer") { @@ -128,10 +128,10 @@ index abf8aa4dcf498f9684c10fbbe85547040029401a..6a3897cb80071cf9cdd0ee035a7ade26 public_deps = [ diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn -index dea6e42fd43d95c92b6f066194527c0b015ec1e8..52d49c966735fbcf3326da0039dd3dd2b99142b1 100644 +index e4ad1503753b46cf9488eec9c41c122a0b2b8d68..3c71c505a49e9abd2ccfcb840d296fc270615dea 100644 --- a/content/test/BUILD.gn +++ b/content/test/BUILD.gn -@@ -477,6 +477,7 @@ static_library("test_support") { +@@ -475,6 +475,7 @@ static_library("test_support") { configs += [ "//build/config:precompiled_headers", "//v8:external_startup_data", @@ -177,10 +177,10 @@ index ed977f540a2920858a05292f823bf49c669aa6d2..9acd66a086654d77f2a2f84b91779519 if (is_ios) { sources += [ diff --git a/media/audio/BUILD.gn b/media/audio/BUILD.gn -index 93cf87a37792691f41d7c611104a378d9af45195..2d3a0f923f4991be41534e7f951fe5dfcceda5c9 100644 +index fbed855d14713ec3507b62d86d37b7be9969581e..b08bdea30ad4e5caf26f59c66c34fd63cd6207e4 100644 --- a/media/audio/BUILD.gn +++ b/media/audio/BUILD.gn -@@ -199,6 +199,7 @@ source_set("audio") { +@@ -203,6 +203,7 @@ source_set("audio") { "mac/coreaudio_dispatch_override.h", ] frameworks += [ "AudioUnit.framework" ] @@ -230,7 +230,7 @@ index 5e9fc18352d1bf0939f8366d2282b49aeb307994..69dcc2cafa27b3d8bdf3fe8d0a22a980 source_set("sandbox_unittests") { diff --git a/third_party/blink/renderer/core/BUILD.gn b/third_party/blink/renderer/core/BUILD.gn -index ea98141f7cf3c4fcacfd82061963129b5d66bfa4..7ec5889a61e5575936a31196270333d39dcb6154 100644 +index d1ab6d45d519dd131a854b01b90295b5e7316d71..7086774c980636b160f5152ac2c3c6b737217dd1 100644 --- a/third_party/blink/renderer/core/BUILD.gn +++ b/third_party/blink/renderer/core/BUILD.gn @@ -308,6 +308,7 @@ component("core") { @@ -279,7 +279,7 @@ index e6a0ca42d0fa2446b300714372986da7e2013f16..fd651028ead9103dabcbb3686e412c12 if (is_apple) { diff --git a/ui/display/BUILD.gn b/ui/display/BUILD.gn -index 082c6bc2bfbc546a80f4a21253ef9294cd4c6e14..2b1f97a1177dc39a8ea6026ae4add83c14380e84 100644 +index e7e52516cec15d41abb9f9c9458c5f3420de7dc0..2e13ca6442c616944577b3374fae082554e585c0 100644 --- a/ui/display/BUILD.gn +++ b/ui/display/BUILD.gn @@ -67,6 +67,10 @@ component("display") { @@ -294,10 +294,10 @@ index 082c6bc2bfbc546a80f4a21253ef9294cd4c6e14..2b1f97a1177dc39a8ea6026ae4add83c if (is_win) { diff --git a/ui/gfx/BUILD.gn b/ui/gfx/BUILD.gn -index ac1875a96d3d877a81b0f26c6a18036e0674c590..d4d74d3bee9be3735ca3245c8a9b0d06c8f82eca 100644 +index f5038c6478eeccc17e061681dbee0f384dac4911..bf23c3576bb7b2d10a840e6eb2a420b739b4f4d7 100644 --- a/ui/gfx/BUILD.gn +++ b/ui/gfx/BUILD.gn -@@ -192,6 +192,7 @@ component("gfx") { +@@ -193,6 +193,7 @@ component("gfx") { "scoped_ns_graphics_context_save_gstate_mac.h", "scoped_ns_graphics_context_save_gstate_mac.mm", ] @@ -306,10 +306,10 @@ index ac1875a96d3d877a81b0f26c6a18036e0674c590..d4d74d3bee9be3735ca3245c8a9b0d06 if (is_win) { sources += [ diff --git a/ui/views/BUILD.gn b/ui/views/BUILD.gn -index f4d38afeb09d013fd5c92296d782d53d29dbcd49..ff239357bc70c98d77d731a2e17606721511dde3 100644 +index 2feb32f83513e4fe6f395ef4d0149af4fb74023e..045ad4c53a8670df70eedbd98ca5dc4763c711a1 100644 --- a/ui/views/BUILD.gn +++ b/ui/views/BUILD.gn -@@ -682,6 +682,7 @@ component("views") { +@@ -684,6 +684,7 @@ component("views") { "IOSurface.framework", "QuartzCore.framework", ] @@ -317,7 +317,7 @@ index f4d38afeb09d013fd5c92296d782d53d29dbcd49..ff239357bc70c98d77d731a2e1760672 } if (is_win) { -@@ -1098,6 +1099,8 @@ source_set("test_support") { +@@ -1100,6 +1101,8 @@ source_set("test_support") { "//testing/gtest", ] diff --git a/patches/chromium/can_create_window.patch b/patches/chromium/can_create_window.patch index 11042e3d4beb..3b5e5d669ff3 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 bef2d089de9efbc0e6921ec7806c725944de0841..c243e589938089b2c5cf56a0ec75fd161a4d7e76 100644 +index 8bd1e3c02b5851d9178cc0e2573b5000847902ec..b40f3b4bcd7adf0d1341cbf0752e48d8abe1ce2c 100644 --- a/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc -@@ -7841,6 +7841,7 @@ void RenderFrameHostImpl::CreateNewWindow( +@@ -7843,6 +7843,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 bef2d089de9efbc0e6921ec7806c725944de0841..c243e589938089b2c5cf56a0ec75fd16 &no_javascript_access); diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index 7d7a63537601d6b5cb1a952cc6404c40c59da527..75d6d7b62778fc00bb9b131e11eaef0431abcb29 100644 +index 4efa2e72fdc340624ce888e93ffd4359e20c0973..5018e17e0f56efd54529ef3e9ae1de5e223aed68 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -4216,6 +4216,12 @@ FrameTree* WebContentsImpl::CreateNewWindow( +@@ -4206,6 +4206,12 @@ FrameTree* WebContentsImpl::CreateNewWindow( auto* new_contents_impl = new_contents.get(); @@ -37,7 +37,7 @@ index 7d7a63537601d6b5cb1a952cc6404c40c59da527..75d6d7b62778fc00bb9b131e11eaef04 // 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 -@@ -4257,12 +4263,6 @@ FrameTree* WebContentsImpl::CreateNewWindow( +@@ -4247,12 +4253,6 @@ FrameTree* WebContentsImpl::CreateNewWindow( AddWebContentsDestructionObserver(new_contents_impl); } @@ -51,10 +51,10 @@ index 7d7a63537601d6b5cb1a952cc6404c40c59da527..75d6d7b62778fc00bb9b131e11eaef04 new_contents_impl, opener, params.target_url, params.referrer.To(), params.disposition, diff --git a/content/common/frame.mojom b/content/common/frame.mojom -index 033780b477965e6915fc808cb468598f55050f2b..51da4e464c5768d979188bb46c11565cab5a494e 100644 +index 455703114d540328fafccdec7c9caafa838fdbee..5e37edd4295b501b21d5fe1cad31c9930e96a9f9 100644 --- a/content/common/frame.mojom +++ b/content/common/frame.mojom -@@ -597,6 +597,10 @@ struct CreateNewWindowParams { +@@ -605,6 +605,10 @@ struct CreateNewWindowParams { // The navigation initiator's user activation and ad status. blink.mojom.NavigationInitiatorActivationAndAdStatus initiator_activation_and_ad_status; @@ -66,7 +66,7 @@ index 033780b477965e6915fc808cb468598f55050f2b..51da4e464c5768d979188bb46c11565c // 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 0d13c497fc6032f9a1ddc7f6a693412ec7caa9fd..05303e632953657176ddfb41add3189a3097eae2 100644 +index d9b45cc4c827738e2d958fc85eed0d2ffc10bf74..b9a817079ec336ff70a529a050caedc555ae1ba9 100644 --- a/content/public/browser/content_browser_client.cc +++ b/content/public/browser/content_browser_client.cc @@ -658,6 +658,8 @@ bool ContentBrowserClient::CanCreateWindow( @@ -79,7 +79,7 @@ index 0d13c497fc6032f9a1ddc7f6a693412ec7caa9fd..05303e632953657176ddfb41add3189a 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 659035715218eccc18d19c6fea2a282d8f71c489..cfb536c2642b21e4edf60e677bce96a506189bb5 100644 +index f750767092895262d2ac9432b6288d0d261caaa1..106d02d39b46ccec96d84577e0cdd720b8869465 100644 --- a/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h @@ -168,6 +168,7 @@ class NetworkService; @@ -122,7 +122,7 @@ index 0e348f7ca57e3004c1f85435ecd0c66896c5a8fb..8019a5c687a87a4257f9f7c058178109 const OpenURLParams& params) { return nullptr; diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h -index 5da6f93293bc5ddae88c17ac2dd8d7037ba8e8f3..76d699790fb7d92587293b14332f696dc5460322 100644 +index c5bda327264c330345baf7b44b4ba5c478e58952..989778079d5dc91127989e43f3ce6b25a9df56d4 100644 --- a/content/public/browser/web_contents_delegate.h +++ b/content/public/browser/web_contents_delegate.h @@ -16,6 +16,7 @@ @@ -148,10 +148,10 @@ index 5da6f93293bc5ddae88c17ac2dd8d7037ba8e8f3..76d699790fb7d92587293b14332f696d // 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 c493bb95b63d2d0810bfe50747e75dbbb0e4319c..bbe58fc8970ba61489e3d2e6d0a31b00f768c011 100644 +index b441530bf7da62ddac5a6f17b6b5c76363efea55..3829c1b7902c0fbc0bb2fb53e2917ecabdfc8e96 100644 --- a/content/renderer/render_frame_impl.cc +++ b/content/renderer/render_frame_impl.cc -@@ -6308,6 +6308,10 @@ WebView* RenderFrameImpl::CreateNewWindow( +@@ -6320,6 +6320,10 @@ WebView* RenderFrameImpl::CreateNewWindow( blink::GetNavigationInitiatorActivationAndAdStatus( request.HasUserGesture(), GetWebFrame()->IsAdScriptInStack()); @@ -210,7 +210,7 @@ index bef5a989bac50c177f15f52fe87ac3790d553e85..65dcd2e3b51929400c8bfb6a98a4fb59 } // namespace blink diff --git a/third_party/blink/renderer/core/frame/local_dom_window.cc b/third_party/blink/renderer/core/frame/local_dom_window.cc -index fb5fe0882a0e5afb8772c18a09566432fb1085d6..ec4ef8956e59e129e983a43ed286fb224a88898d 100644 +index 8b66b0254a673c95f1823321d942ea6caed8d7e5..6ed13e56f489da39b7dff90ed02eedc8c231715f 100644 --- a/third_party/blink/renderer/core/frame/local_dom_window.cc +++ b/third_party/blink/renderer/core/frame/local_dom_window.cc @@ -2195,6 +2195,8 @@ DOMWindow* LocalDOMWindow::open(v8::Isolate* isolate, diff --git a/patches/chromium/chore_add_electron_deps_to_gitignores.patch b/patches/chromium/chore_add_electron_deps_to_gitignores.patch index d294b0616324..a1f4c5439edd 100644 --- a/patches/chromium/chore_add_electron_deps_to_gitignores.patch +++ b/patches/chromium/chore_add_electron_deps_to_gitignores.patch @@ -18,7 +18,7 @@ index 7141c8b3de3bc419d536499ce775d98b619a7bdb..d316050668a44ccfd033a56cd1de4901 /google_apis/internal /googleurl diff --git a/third_party/.gitignore b/third_party/.gitignore -index bca69adc4f735f1b142d90f37c1602069a2e9396..70fb31d3b3706e61bf37f1102f48a6fcccb35eea 100644 +index 971a366f4db719ac6893bac6d6bf27cc5c8c458f..f6044f9457967fb8dd77038d9b14b0e24c1d96ad 100644 --- a/third_party/.gitignore +++ b/third_party/.gitignore @@ -94,6 +94,7 @@ @@ -29,7 +29,7 @@ index bca69adc4f735f1b142d90f37c1602069a2e9396..70fb31d3b3706e61bf37f1102f48a6fc /elfutils/src /emoji-metadata/src /emoji-segmenter/src -@@ -202,6 +203,7 @@ +@@ -203,6 +204,7 @@ /mocha /mockito/src /nacl_sdk_binaries/ @@ -37,7 +37,7 @@ index bca69adc4f735f1b142d90f37c1602069a2e9396..70fb31d3b3706e61bf37f1102f48a6fc /nasm /nearby/src /neon_2_sse/src -@@ -269,6 +271,7 @@ +@@ -270,6 +272,7 @@ /speex /sqlite/src /sqlite4java/lib/ diff --git a/patches/chromium/chore_allow_chromium_to_handle_synthetic_mouse_events_for_touch.patch b/patches/chromium/chore_allow_chromium_to_handle_synthetic_mouse_events_for_touch.patch index a473f67d3015..d17db4d30f43 100644 --- a/patches/chromium/chore_allow_chromium_to_handle_synthetic_mouse_events_for_touch.patch +++ b/patches/chromium/chore_allow_chromium_to_handle_synthetic_mouse_events_for_touch.patch @@ -34,7 +34,7 @@ index 2e4bacce52a45b5d9d7829c1f88f82aa0bb1b4bb..f3537e89191bd2c6d9b06c9b741a1680 Widget* GetWidget(); const Widget* GetWidget() const; diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc -index 1956bad91ae8b3f19908f5e0c5ac84bd8a5fffbd..a14b20dd969226d04634ea123601b61a8379c448 100644 +index 49d95d6d67eb5e9bf5ae2f1d64aaafe21e18bf5b..bffa2e1e41f6e61135c6ec3627268d2fbd8783b9 100644 --- a/ui/views/win/hwnd_message_handler.cc +++ b/ui/views/win/hwnd_message_handler.cc @@ -3243,15 +3243,19 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message, diff --git a/patches/chromium/chore_introduce_blocking_api_for_electron.patch b/patches/chromium/chore_introduce_blocking_api_for_electron.patch index 7e6fc41483f4..08a9508bc451 100644 --- a/patches/chromium/chore_introduce_blocking_api_for_electron.patch +++ b/patches/chromium/chore_introduce_blocking_api_for_electron.patch @@ -7,7 +7,7 @@ This patch comes after Chromium removed the ScopedAllowIO API in favor of explicitly adding ScopedAllowBlocking calls as friends. diff --git a/base/threading/thread_restrictions.h b/base/threading/thread_restrictions.h -index 536ee9714219fd373567b80071f453cee896060f..28764535cf3724028bd76edf036e02045c8f02c3 100644 +index 385b540b5a4291070eff5e1e6a407223de097cdb..32fec685bc3b6631594ca3ee5922c5f49da83e45 100644 --- a/base/threading/thread_restrictions.h +++ b/base/threading/thread_restrictions.h @@ -133,6 +133,7 @@ class FirefoxProfileLock; @@ -28,7 +28,7 @@ index 536ee9714219fd373567b80071f453cee896060f..28764535cf3724028bd76edf036e0204 namespace enterprise_connectors { class LinuxKeyRotationCommand; } // namespace enterprise_connectors -@@ -580,6 +584,7 @@ class BASE_EXPORT [[maybe_unused, nodiscard]] ScopedAllowBlocking { +@@ -582,6 +586,7 @@ class BASE_EXPORT [[maybe_unused, nodiscard]] ScopedAllowBlocking { friend class ::DesktopNotificationBalloon; friend class ::FirefoxProfileLock; friend class ::GaiaConfig; @@ -36,7 +36,7 @@ index 536ee9714219fd373567b80071f453cee896060f..28764535cf3724028bd76edf036e0204 friend class ::ProfileImpl; friend class ::ScopedAllowBlockingForProfile; friend class ::StartupTabProviderImpl; -@@ -617,6 +622,7 @@ class BASE_EXPORT [[maybe_unused, nodiscard]] ScopedAllowBlocking { +@@ -619,6 +624,7 @@ class BASE_EXPORT [[maybe_unused, nodiscard]] ScopedAllowBlocking { friend class crosapi::LacrosThreadTypeDelegate; friend class crypto::ScopedAllowBlockingForNSS; // http://crbug.com/59847 friend class drive::FakeDriveService; diff --git a/patches/chromium/chore_patch_out_partition_attribute_dcheck_for_webviews.patch b/patches/chromium/chore_patch_out_partition_attribute_dcheck_for_webviews.patch index d227ef93be45..94c9f7fb2c14 100644 --- a/patches/chromium/chore_patch_out_partition_attribute_dcheck_for_webviews.patch +++ b/patches/chromium/chore_patch_out_partition_attribute_dcheck_for_webviews.patch @@ -14,7 +14,7 @@ This change patches it out to prevent the DCHECK. It can be removed once/if we see a better solution to the problem. diff --git a/content/browser/site_instance_impl.cc b/content/browser/site_instance_impl.cc -index 3a292071a755c420060f6553bb6ce36d0ca0b253..ac5b564c54d15410facff3754508e9163230f15e 100644 +index 6eeaf96f4f056eebe73555c46cf15436b1dcf184..cb91f11d38cca8b87b35b04fb39162b3d77acfd4 100644 --- a/content/browser/site_instance_impl.cc +++ b/content/browser/site_instance_impl.cc @@ -205,7 +205,7 @@ scoped_refptr SiteInstanceImpl::CreateForGuest( diff --git a/patches/chromium/chore_provide_iswebcontentscreationoverridden_with_full_params.patch b/patches/chromium/chore_provide_iswebcontentscreationoverridden_with_full_params.patch index e9f150b6decc..ae16b5f2d91b 100644 --- a/patches/chromium/chore_provide_iswebcontentscreationoverridden_with_full_params.patch +++ b/patches/chromium/chore_provide_iswebcontentscreationoverridden_with_full_params.patch @@ -218,10 +218,10 @@ index 4e32d708ecf4afd3913d86ec1602ef2dc9a60998..1dd2f50fba1387b5eeb554dd540957d7 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 0b9b22ed11db2aaa5cb4290370aa38bf739e415d..5a8b34ea90f32e12bd75c6b5318c743096e9694c 100644 +index 865414f0994a4e29f297532538486f780edd51d3..3a60a59497571a33bba8efa7654a32403ab99978 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -4123,8 +4123,7 @@ FrameTree* WebContentsImpl::CreateNewWindow( +@@ -4113,8 +4113,7 @@ FrameTree* WebContentsImpl::CreateNewWindow( if (delegate_ && delegate_->IsWebContentsCreationOverridden( source_site_instance, params.window_container_type, @@ -246,7 +246,7 @@ index 8019a5c687a87a4257f9f7c0581781095fc20043..d7ccb0f7a7b15fb19640b1b0491750b1 } diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h -index 76d699790fb7d92587293b14332f696dc5460322..2b15ee95474fab528fd710b52d3a1d9e6a60b871 100644 +index 989778079d5dc91127989e43f3ce6b25a9df56d4..71b5a7c30f6546e3172ea31f9b0572c0e6a9f660 100644 --- a/content/public/browser/web_contents_delegate.h +++ b/content/public/browser/web_contents_delegate.h @@ -322,8 +322,7 @@ class CONTENT_EXPORT WebContentsDelegate { @@ -358,7 +358,7 @@ index 60acb83c8d76f71db689f9d188bb6e8f64a74ffb..aa6cee708d1e451b443bc26528b56cc8 ->options() ->block_new_web_contents(); diff --git a/ui/views/controls/webview/web_dialog_view.cc b/ui/views/controls/webview/web_dialog_view.cc -index d7f5236840939989ffea27b67fe1ae0a35315bdf..9ce1696415228ac05dc745a6e0c79c3cd69d3828 100644 +index aa3148852ff61323cb9bf20817c6677cffe34ded..82790630067f11da8c4eac785b242d5cd131d3e3 100644 --- a/ui/views/controls/webview/web_dialog_view.cc +++ b/ui/views/controls/webview/web_dialog_view.cc @@ -428,8 +428,7 @@ bool WebDialogView::IsWebContentsCreationOverridden( 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 af5e5f089495..b2efcc59b01d 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 62e4947ec2974c1ef2152e78d05b2100f49e5616..2d99eb72f7b27f0e8f79c875e54ffa5cf115b533 100644 +index 336705c28ca960d8e7d9af82bb56b009e49bc733..af5406b48c11ea859805a46b1167f475825cacca 100644 --- a/content/app/content_main_runner_impl.cc +++ b/content/app/content_main_runner_impl.cc @@ -39,6 +39,7 @@ @@ -18,7 +18,7 @@ index 62e4947ec2974c1ef2152e78d05b2100f49e5616..2d99eb72f7b27f0e8f79c875e54ffa5c #include "base/strings/string_number_conversions.h" #include "base/strings/string_util.h" #include "base/task/single_thread_task_runner.h" -@@ -253,8 +254,13 @@ std::string GetSnapshotDataDescriptor(const base::CommandLine& command_line) { +@@ -252,8 +253,13 @@ std::string GetSnapshotDataDescriptor(const base::CommandLine& command_line) { #endif @@ -33,7 +33,7 @@ index 62e4947ec2974c1ef2152e78d05b2100f49e5616..2d99eb72f7b27f0e8f79c875e54ffa5c #if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) base::FileDescriptorStore& file_descriptor_store = base::FileDescriptorStore::GetInstance(); -@@ -283,11 +289,12 @@ bool ShouldLoadV8Snapshot(const base::CommandLine& command_line, +@@ -282,11 +288,12 @@ bool ShouldLoadV8Snapshot(const base::CommandLine& command_line, #endif // V8_USE_EXTERNAL_STARTUP_DATA @@ -48,7 +48,7 @@ index 62e4947ec2974c1ef2152e78d05b2100f49e5616..2d99eb72f7b27f0e8f79c875e54ffa5c #endif // V8_USE_EXTERNAL_STARTUP_DATA } -@@ -945,7 +952,7 @@ int ContentMainRunnerImpl::Initialize(ContentMainParams params) { +@@ -944,7 +951,7 @@ int ContentMainRunnerImpl::Initialize(ContentMainParams params) { return TerminateForFatalInitializationError(); #endif // BUILDFLAG(IS_ANDROID) && (ICU_UTIL_DATA_IMPL == ICU_UTIL_DATA_FILE) @@ -102,10 +102,10 @@ index d4bb0e9a017a833b403916e1d6e64fb058f40f86..35ba35a95e39700824d6e0b480b99bc3 friend class ContentClientCreator; friend class ContentClientInitializer; diff --git a/gin/v8_initializer.cc b/gin/v8_initializer.cc -index badac7434528c16159fecf8443d5553eb33934fa..d4828d70b6570215e6a29e464a55625fd4634b9b 100644 +index 4c2a4783f894c2dc62d87dfc51e2ebb8a0b51b2e..603fab0ef4b7f15a94805f897369d0940eeb1042 100644 --- a/gin/v8_initializer.cc +++ b/gin/v8_initializer.cc -@@ -528,8 +528,7 @@ void V8Initializer::GetV8ExternalSnapshotData(const char** snapshot_data_out, +@@ -532,8 +532,7 @@ void V8Initializer::GetV8ExternalSnapshotData(const char** snapshot_data_out, #if defined(V8_USE_EXTERNAL_STARTUP_DATA) @@ -115,7 +115,7 @@ index badac7434528c16159fecf8443d5553eb33934fa..d4828d70b6570215e6a29e464a55625f if (g_mapped_snapshot) { // TODO(crbug.com/802962): Confirm not loading different type of snapshot // files in a process. -@@ -538,10 +537,17 @@ void V8Initializer::LoadV8Snapshot(V8SnapshotFileType snapshot_file_type) { +@@ -542,10 +541,17 @@ void V8Initializer::LoadV8Snapshot(V8SnapshotFileType snapshot_file_type) { base::MemoryMappedFile::Region file_region; base::File file = diff --git a/patches/chromium/disable_color_correct_rendering.patch b/patches/chromium/disable_color_correct_rendering.patch index 085950d8d0d2..a5005628c1d7 100644 --- a/patches/chromium/disable_color_correct_rendering.patch +++ b/patches/chromium/disable_color_correct_rendering.patch @@ -20,10 +20,10 @@ to deal with color spaces. That is being tracked at https://crbug.com/634542 and https://crbug.com/711107. diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc -index 36a155409de18e410dbd99f1985fcebb9a5849fa..583757474cab9f87abaa8a09f74765da4f03aea2 100644 +index 256f599f8ad93578a7b56697070b1d0630b04897..3c1723ed20ab6a673df7e0ebf0119c2150b472bf 100644 --- a/cc/trees/layer_tree_host_impl.cc +++ b/cc/trees/layer_tree_host_impl.cc -@@ -1895,6 +1895,10 @@ void LayerTreeHostImpl::SetIsLikelyToRequireADraw( +@@ -1868,6 +1868,10 @@ void LayerTreeHostImpl::SetIsLikelyToRequireADraw( TargetColorParams LayerTreeHostImpl::GetTargetColorParams( gfx::ContentColorUsage content_color_usage) const { TargetColorParams params; diff --git a/patches/chromium/disable_compositor_recycling.patch b/patches/chromium/disable_compositor_recycling.patch index 1a91625396af..0190883fc846 100644 --- a/patches/chromium/disable_compositor_recycling.patch +++ b/patches/chromium/disable_compositor_recycling.patch @@ -6,7 +6,7 @@ Subject: fix: disabling compositor recycling Compositor recycling is useful for Chrome because there can be many tabs and spinning up a compositor for each one would be costly. In practice, Chrome uses the parent compositor code path of browser_compositor_view_mac.mm; the NSView of each tab is detached when it's hidden and attached when it's shown. For Electron, there is no parent compositor, so we're forced into the "own compositor" code path, which seems to be non-optimal and pretty ruthless in terms of the release of resources. Electron has no real concept of multiple tabs per window, so it should be okay to disable this ruthless recycling altogether in Electron. diff --git a/content/browser/renderer_host/render_widget_host_view_mac.mm b/content/browser/renderer_host/render_widget_host_view_mac.mm -index e15e6b3e145aecfddd1ce20fdd6c844bfda6e31b..64d4e4ba8d8ab1414abb65a904e23b94352e40b9 100644 +index 4dce73888703a5db8fe7ae2a0e0745ee813ab9b0..e995e9b652397a67ca0b89e107975ab04bae7725 100644 --- a/content/browser/renderer_host/render_widget_host_view_mac.mm +++ b/content/browser/renderer_host/render_widget_host_view_mac.mm @@ -528,7 +528,11 @@ diff --git a/patches/chromium/disable_hidden.patch b/patches/chromium/disable_hidden.patch index 01d198680009..c704bc4fa3c7 100644 --- a/patches/chromium/disable_hidden.patch +++ b/patches/chromium/disable_hidden.patch @@ -6,10 +6,10 @@ Subject: disable_hidden.patch Electron uses this to disable background throttling for hidden windows. diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc -index 48e6fa3d8447e87ab2a729aa950cc5029c875673..90c6a5b6999571819ef71f859767cccf635ea883 100644 +index 95d27f99acc0e59c8660054eea9e2b221af0e0f3..2d705b183b1014a6f8dc89672b327d619ac52b1a 100644 --- a/content/browser/renderer_host/render_widget_host_impl.cc +++ b/content/browser/renderer_host/render_widget_host_impl.cc -@@ -812,6 +812,9 @@ void RenderWidgetHostImpl::WasHidden() { +@@ -800,6 +800,9 @@ void RenderWidgetHostImpl::WasHidden() { return; } @@ -20,10 +20,10 @@ index 48e6fa3d8447e87ab2a729aa950cc5029c875673..90c6a5b6999571819ef71f859767cccf blink::mojom::PointerLockResult::kWrongDocument); diff --git a/content/browser/renderer_host/render_widget_host_impl.h b/content/browser/renderer_host/render_widget_host_impl.h -index e987d9316f9b5335a9c94a2dfe1f84498d9f704b..b0eb03c065753fe3bc8756d565fc17fbdaa5ad2b 100644 +index e74883df0950b2e462a7ebdde8a476259cf0f231..3033d9d9efd3302fba1698a8b8f549c4c00ab82e 100644 --- a/content/browser/renderer_host/render_widget_host_impl.h +++ b/content/browser/renderer_host/render_widget_host_impl.h -@@ -900,6 +900,8 @@ class CONTENT_EXPORT RenderWidgetHostImpl +@@ -899,6 +899,8 @@ class CONTENT_EXPORT RenderWidgetHostImpl void UpdateBrowserControlsState(cc::BrowserControlsState constraints, cc::BrowserControlsState current, bool animate); diff --git a/patches/chromium/enable_reset_aspect_ratio.patch b/patches/chromium/enable_reset_aspect_ratio.patch index a2d4d35070e3..5c9ea177b85a 100644 --- a/patches/chromium/enable_reset_aspect_ratio.patch +++ b/patches/chromium/enable_reset_aspect_ratio.patch @@ -19,10 +19,10 @@ index 3d22d934c39f50760d1c519d665ddc3cb1908541..06fd4d3962b8aa0767d295deeba2e949 excluded_margin); } diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc -index 8a7a96ab4bcbff767b7d5fa44b87f1c5eb8f301d..2d8cb452448b7baa352aacb54a3544bc8afb1ad3 100644 +index 60e4436e29b8eaa36cea939edc53d3752e395eef..14a6ad7a22c809a1cd59f5e12d04752b6e7940ed 100644 --- a/ui/views/win/hwnd_message_handler.cc +++ b/ui/views/win/hwnd_message_handler.cc -@@ -1140,8 +1140,11 @@ void HWNDMessageHandler::SetFullscreen(bool fullscreen, +@@ -1141,8 +1141,11 @@ void HWNDMessageHandler::SetFullscreen(bool fullscreen, void HWNDMessageHandler::SetAspectRatio(float aspect_ratio, const gfx::Size& excluded_margin) { diff --git a/patches/chromium/expose_setuseragent_on_networkcontext.patch b/patches/chromium/expose_setuseragent_on_networkcontext.patch index 45271a560bd9..f3c2b5bfd038 100644 --- a/patches/chromium/expose_setuseragent_on_networkcontext.patch +++ b/patches/chromium/expose_setuseragent_on_networkcontext.patch @@ -51,7 +51,7 @@ index 0ffa0ec042bd59de5d28fad53dee2b6321d64b18..a6570cb144952a1bb7eca124bb4cbb33 // This may only be called on NetworkContexts created with the constructor // that calls MakeURLRequestContext(). diff --git a/services/network/network_context.h b/services/network/network_context.h -index f3a89933fef78c62e4c67fcfd521c8413c32e38f..8497ad66f2344b0379b8033d26ca2b87fa134294 100644 +index f10414f382b48ecc162b22d9638d948e3e719733..47d13dbe9efd501efabe096607e53cb80744cd42 100644 --- a/services/network/network_context.h +++ b/services/network/network_context.h @@ -316,6 +316,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext diff --git a/patches/chromium/feat_add_set_theme_source_to_allow_apps_to.patch b/patches/chromium/feat_add_set_theme_source_to_allow_apps_to.patch index 0cea6eda784e..516f8d4044f3 100644 --- a/patches/chromium/feat_add_set_theme_source_to_allow_apps_to.patch +++ b/patches/chromium/feat_add_set_theme_source_to_allow_apps_to.patch @@ -13,10 +13,10 @@ uses internally for things like menus and devtools. We can remove this patch once it has in some shape been upstreamed. diff --git a/ui/native_theme/native_theme.cc b/ui/native_theme/native_theme.cc -index 4c60eb7caf5eddbdb71b753c710c7053476bee04..88dd58492d84c6da4f179a5ef651923ab17a76b1 100644 +index 8f13ff7194c8420038583b9c82ccb8b586d86aac..222f2983d85c2c57017e751919919a03d886c0e5 100644 --- a/ui/native_theme/native_theme.cc +++ b/ui/native_theme/native_theme.cc -@@ -144,6 +144,8 @@ NativeTheme::NativeTheme(bool should_use_dark_colors, +@@ -145,6 +145,8 @@ NativeTheme::NativeTheme(bool should_use_dark_colors, NativeTheme::~NativeTheme() = default; bool NativeTheme::ShouldUseDarkColors() const { 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 6f2125cdc9b1..c127c9c03eb8 100644 --- a/patches/chromium/feat_enable_offscreen_rendering_with_viz_compositor.patch +++ b/patches/chromium/feat_enable_offscreen_rendering_with_viz_compositor.patch @@ -87,7 +87,7 @@ index 8af69cac78b7488d28f1f05ccb174793fe5148cd..9f74e511c263d147b5fbe81fe100d217 private: const HWND hwnd_; diff --git a/components/viz/service/BUILD.gn b/components/viz/service/BUILD.gn -index 5c86cab93c22d54648e70d56db850a0a939403b4..4793d5bc9de9a3a158f90e0432c32c4818bcef2e 100644 +index ef3c8ba80dd3438277a2b96903baec12783381fc..488abc9ed0d61a4b73f4bec34cbca416abfbf715 100644 --- a/components/viz/service/BUILD.gn +++ b/components/viz/service/BUILD.gn @@ -141,6 +141,8 @@ viz_component("service") { 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 59d2ef4dbeac..b06862f4d65b 100644 --- a/patches/chromium/feat_expose_raw_response_headers_from_urlloader.patch +++ b/patches/chromium/feat_expose_raw_response_headers_from_urlloader.patch @@ -153,10 +153,10 @@ index 73955b10b858243f95576b197e4bede26f9a827f..3b71d6f9f2edeb83bd9d360cc7581cbe // Parse and remove the Trust Tokens response headers, if any are expected, diff --git a/services/network/url_loader.h b/services/network/url_loader.h -index e0f480869bc0f0ab9f51be205a141cd6f59e2c0c..c1d7fde7a4a1c1555b0c1ff337885dbf6419c458 100644 +index 471d196dc4f5ccd8c0fdf6d25a13629cdd0ae808..c1b52c9394f2471a584e9a6cc0ebdfc0b6ef04ef 100644 --- a/services/network/url_loader.h +++ b/services/network/url_loader.h -@@ -554,6 +554,8 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) URLLoader +@@ -555,6 +555,8 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) URLLoader std::unique_ptr resource_scheduler_request_handle_; diff --git a/patches/chromium/fix_allow_guest_webcontents_to_enter_fullscreen.patch b/patches/chromium/fix_allow_guest_webcontents_to_enter_fullscreen.patch index d42c145e11d5..170ecd3333af 100644 --- a/patches/chromium/fix_allow_guest_webcontents_to_enter_fullscreen.patch +++ b/patches/chromium/fix_allow_guest_webcontents_to_enter_fullscreen.patch @@ -6,10 +6,10 @@ Subject: fix: allow guest webcontents to enter fullscreen This can be upstreamed, a guest webcontents can't technically become the focused webContents. This DCHECK should allow all guest webContents to request fullscreen entrance. diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index e1c1c39119d5b0fde1cc0d3649810309f2517ea2..05374c40064a61da0bf3a77abc3bf66cc0479b27 100644 +index 0582143a5466afb3ba618e848ff23ffa23e5ca70..7a7f74778d0d9118d01a2dc8b916fada56a8dfaa 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -3643,7 +3643,7 @@ void WebContentsImpl::EnterFullscreenMode( +@@ -3633,7 +3633,7 @@ void WebContentsImpl::EnterFullscreenMode( OPTIONAL_TRACE_EVENT0("content", "WebContentsImpl::EnterFullscreenMode"); DCHECK(CanEnterFullscreenMode(requesting_frame, options)); DCHECK(requesting_frame->IsActive()); diff --git a/patches/chromium/fix_aspect_ratio_with_max_size.patch b/patches/chromium/fix_aspect_ratio_with_max_size.patch index 3acc79c63984..bbf18f546339 100644 --- a/patches/chromium/fix_aspect_ratio_with_max_size.patch +++ b/patches/chromium/fix_aspect_ratio_with_max_size.patch @@ -11,7 +11,7 @@ enlarge window above dimensions set during creation of the BrowserWindow. diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc -index 2d8cb452448b7baa352aacb54a3544bc8afb1ad3..1956bad91ae8b3f19908f5e0c5ac84bd8a5fffbd 100644 +index 14a6ad7a22c809a1cd59f5e12d04752b6e7940ed..49d95d6d67eb5e9bf5ae2f1d64aaafe21e18bf5b 100644 --- a/ui/views/win/hwnd_message_handler.cc +++ b/ui/views/win/hwnd_message_handler.cc @@ -3818,14 +3818,29 @@ void HWNDMessageHandler::SizeWindowToAspectRatio(UINT param, 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 25a0681f7fdf..8514e69ef703 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 @@ -17,10 +17,10 @@ policy->CanCommitOriginAndUrl. 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 d7636277342f2ab015ecd22ffd470967b48cfc26..0a7c7005cd5d127ce293e89e639cda648de2a081 100644 +index 948ee821dfea0dc84a5cc9e93b9dc178fade4892..cf32d9032556d550b0dc3f799458d71cb4484dc5 100644 --- a/content/browser/renderer_host/navigation_request.cc +++ b/content/browser/renderer_host/navigation_request.cc -@@ -7332,10 +7332,11 @@ NavigationRequest::GetOriginForURLLoaderFactoryAfterResponseWithDebugInfo() { +@@ -7334,10 +7334,11 @@ NavigationRequest::GetOriginForURLLoaderFactoryAfterResponseWithDebugInfo() { if (IsForMhtmlSubframe()) return origin_with_debug_info; @@ -37,10 +37,10 @@ index d7636277342f2ab015ecd22ffd470967b48cfc26..0a7c7005cd5d127ce293e89e639cda64 } diff --git a/content/browser/renderer_host/render_frame_host_impl.h b/content/browser/renderer_host/render_frame_host_impl.h -index 2a287fb5dd411574305d5d0d14de78cca03e0bab..62f4f9bc96d134f63bbad33da3ae40b4f8f5f403 100644 +index 8e0a631735dedc27898727fbe2a16f3a8ed4e784..5ae6ac7672a7bda8bb147a1fa0d623f3dce7efc2 100644 --- a/content/browser/renderer_host/render_frame_host_impl.h +++ b/content/browser/renderer_host/render_frame_host_impl.h -@@ -2921,6 +2921,17 @@ class CONTENT_EXPORT RenderFrameHostImpl +@@ -2933,6 +2933,17 @@ class CONTENT_EXPORT RenderFrameHostImpl // last committed document. CookieChangeListener::CookieChangeInfo GetCookieChangeInfo(); @@ -58,7 +58,7 @@ index 2a287fb5dd411574305d5d0d14de78cca03e0bab..62f4f9bc96d134f63bbad33da3ae40b4 // Sets a ResourceCache in the renderer. `this` must be active and there must // be no pending navigation. `remote` must have the same and process // isolation policy. -@@ -3294,17 +3305,6 @@ class CONTENT_EXPORT RenderFrameHostImpl +@@ -3315,17 +3326,6 @@ class CONTENT_EXPORT RenderFrameHostImpl // relevant. void ResetWaitingState(); diff --git a/patches/chromium/fix_non-client_mouse_tracking_and_message_bubbling_on_windows.patch b/patches/chromium/fix_non-client_mouse_tracking_and_message_bubbling_on_windows.patch index 8ec6f0c1ed61..b3ce6f5dc6a6 100644 --- a/patches/chromium/fix_non-client_mouse_tracking_and_message_bubbling_on_windows.patch +++ b/patches/chromium/fix_non-client_mouse_tracking_and_message_bubbling_on_windows.patch @@ -13,10 +13,10 @@ messages in the legacy window handle layer. These conditions are regularly hit with WCO-enabled windows on Windows. diff --git a/content/browser/renderer_host/legacy_render_widget_host_win.cc b/content/browser/renderer_host/legacy_render_widget_host_win.cc -index c7bc52f1b54249e497a7f60e0bf7106d345b5ef6..bea43ee34da9869aec30dec4dc08ffd9d8af25a8 100644 +index e8636eea56835a3936765f7b1d5a1a88b20288e1..a7829f409a90a871f42c9d0d5fa65bf8f65045f0 100644 --- a/content/browser/renderer_host/legacy_render_widget_host_win.cc +++ b/content/browser/renderer_host/legacy_render_widget_host_win.cc -@@ -318,12 +318,12 @@ LRESULT LegacyRenderWidgetHostHWND::OnMouseRange(UINT message, +@@ -317,12 +317,12 @@ LRESULT LegacyRenderWidgetHostHWND::OnMouseRange(UINT message, WPARAM w_param, LPARAM l_param, BOOL& handled) { @@ -31,7 +31,7 @@ index c7bc52f1b54249e497a7f60e0bf7106d345b5ef6..bea43ee34da9869aec30dec4dc08ffd9 tme.hwndTrack = hwnd(); tme.dwHoverTime = 0; TrackMouseEvent(&tme); -@@ -354,7 +354,10 @@ LRESULT LegacyRenderWidgetHostHWND::OnMouseRange(UINT message, +@@ -353,7 +353,10 @@ LRESULT LegacyRenderWidgetHostHWND::OnMouseRange(UINT message, // out of the picture. if (!handled && (message >= WM_NCMOUSEMOVE && message <= WM_NCXBUTTONDBLCLK)) { 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 8cd31fec12d1..069e54fb09f5 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 @@ -15,7 +15,7 @@ node does not change in this case. chromium-bug: https://crbug.com/1369605 diff --git a/content/browser/renderer_host/render_widget_host_view_child_frame.cc b/content/browser/renderer_host/render_widget_host_view_child_frame.cc -index 5084fb89d155f35caace1e1c70ed86994206ba2c..64244821d7430faaa29842414d9bbfe8364f2e68 100644 +index f509de422c2eb340b706afa364370e64107a4c84..76fa4ef05837a44632e9a05afea90da7e79d86d2 100644 --- a/content/browser/renderer_host/render_widget_host_view_child_frame.cc +++ b/content/browser/renderer_host/render_widget_host_view_child_frame.cc @@ -996,6 +996,12 @@ RenderWidgetHostViewChildFrame::DidUpdateVisualProperties( @@ -45,7 +45,7 @@ index ed0641b888c6421b1791c086466bd9c158e9109d..3760b3823d5af3325017bb53f5b1d38e // RenderFrameMetadataProvider::Observer implementation. void OnRenderFrameMetadataChangedBeforeActivation( diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index 05374c40064a61da0bf3a77abc3bf66cc0479b27..d78c91a21dc0044a2f92dfcd04f3bbf0c1f68d0f 100644 +index 7a7f74778d0d9118d01a2dc8b916fada56a8dfaa..96bd0573473d9f401791125cd18cb24e76fab0db 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc @@ -8163,7 +8163,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame( diff --git a/patches/chromium/fix_remove_caption-removing_style_call.patch b/patches/chromium/fix_remove_caption-removing_style_call.patch index 135c8c1bd804..c1baf77bb9b1 100644 --- a/patches/chromium/fix_remove_caption-removing_style_call.patch +++ b/patches/chromium/fix_remove_caption-removing_style_call.patch @@ -18,10 +18,10 @@ or resizing, but Electron does not seem to run into that issue for opaque frameless windows even with that block commented out. diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc -index a14b20dd969226d04634ea123601b61a8379c448..1b8be7cda1faadd1cd9db1535337a39e73f329fc 100644 +index bffa2e1e41f6e61135c6ec3627268d2fbd8783b9..90dd6487fdf438a61672a81f08b545742045944a 100644 --- a/ui/views/win/hwnd_message_handler.cc +++ b/ui/views/win/hwnd_message_handler.cc -@@ -1873,7 +1873,23 @@ LRESULT HWNDMessageHandler::OnCreate(CREATESTRUCT* create_struct) { +@@ -1874,7 +1874,23 @@ LRESULT HWNDMessageHandler::OnCreate(CREATESTRUCT* create_struct) { SendMessage(hwnd(), WM_CHANGEUISTATE, MAKELPARAM(UIS_CLEAR, UISF_HIDEFOCUS), 0); 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 9092b305fade..2d7acb42c847 100644 --- a/patches/chromium/fix_return_v8_value_from_localframe_requestexecutescript.patch +++ b/patches/chromium/fix_return_v8_value_from_localframe_requestexecutescript.patch @@ -20,10 +20,10 @@ index 34777e89362b14587979cef76d8cd71b634cca8c..3d5e44883bab30eebdfaba70f3933435 injector_->ExpectsResults(), injector_->ShouldWaitForPromise()); } diff --git a/third_party/blink/public/web/web_local_frame.h b/third_party/blink/public/web/web_local_frame.h -index 0fb81902e569ed974c98b33e980546d210765e83..d27cf6d13b26ce8a828e62e3ddf15d082c5874e1 100644 +index 1a7e70ad767cc6d196ae0e376e57d92319d22a4c..6ad1f142113966776685c95094a1e2fd65595928 100644 --- a/third_party/blink/public/web/web_local_frame.h +++ b/third_party/blink/public/web/web_local_frame.h -@@ -436,6 +436,7 @@ class BLINK_EXPORT WebLocalFrame : public WebFrame { +@@ -444,6 +444,7 @@ class BLINK_EXPORT WebLocalFrame : public WebFrame { mojom::EvaluationTiming, mojom::LoadEventBlockingOption, WebScriptExecutionCallback, @@ -64,10 +64,10 @@ index 4cd668a127a50e5462e3878c3f1dcb7384926768..dfbec49249404df8f8ebdbd26e6e865c #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 19d253696c57f957e9f564c5f8366f39ef1ae349..26cea0bbf8ca0bacc414ac92d6b83a73d9ae7a69 100644 +index f2b09355ba3f42dd72804fb470e98621c1a153f3..c5ede938b3a05f2bf71aec9246c6deb630ae30a5 100644 --- a/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc -@@ -2744,6 +2744,7 @@ void LocalFrame::RequestExecuteScript( +@@ -2778,6 +2778,7 @@ void LocalFrame::RequestExecuteScript( mojom::blink::EvaluationTiming evaluation_timing, mojom::blink::LoadEventBlockingOption blocking_option, WebScriptExecutionCallback callback, @@ -75,7 +75,7 @@ index 19d253696c57f957e9f564c5f8366f39ef1ae349..26cea0bbf8ca0bacc414ac92d6b83a73 BackForwardCacheAware back_forward_cache_aware, mojom::blink::WantResultOption want_result_option, mojom::blink::PromiseResultOption promise_behavior) { -@@ -2774,7 +2775,8 @@ void LocalFrame::RequestExecuteScript( +@@ -2808,7 +2809,8 @@ void LocalFrame::RequestExecuteScript( PausableScriptExecutor::CreateAndRun( ToScriptState(DomWindow(), *world), std::move(script_sources), execute_script_policy, user_gesture, evaluation_timing, blocking_option, @@ -86,10 +86,10 @@ index 19d253696c57f957e9f564c5f8366f39ef1ae349..26cea0bbf8ca0bacc414ac92d6b83a73 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 8a3d0eedf7fbbc7e7d415f2d7e35914c9d1d4b07..9a38c0eb3087412e1e1b30e3f05542329b5d6fd8 100644 +index 3b648c0c3212a886ee5714a8ccc414e3f649b75c..4abf6372264bba9f1234b39918fb2064393ba487 100644 --- a/third_party/blink/renderer/core/frame/local_frame.h +++ b/third_party/blink/renderer/core/frame/local_frame.h -@@ -789,6 +789,7 @@ class CORE_EXPORT LocalFrame final +@@ -806,6 +806,7 @@ class CORE_EXPORT LocalFrame final mojom::blink::EvaluationTiming, mojom::blink::LoadEventBlockingOption, WebScriptExecutionCallback, @@ -98,10 +98,10 @@ index 8a3d0eedf7fbbc7e7d415f2d7e35914c9d1d4b07..9a38c0eb3087412e1e1b30e3f0554232 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 2c07c1efc6d25a96f05805dbe5242c45f5d3d97e..198a4a5b0a7619fbcb7a30b368edcec025616aca 100644 +index 4a40473c167290328b6c2c0e9029c3d7c073fe44..f91e9eaab57aef9c202be8342281fa7d65fcbb8b 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 -@@ -954,6 +954,7 @@ void LocalFrameMojoHandler::JavaScriptExecuteRequestInIsolatedWorld( +@@ -935,6 +935,7 @@ void LocalFrameMojoHandler::JavaScriptExecuteRequestInIsolatedWorld( std::move(callback).Run(value ? std::move(*value) : base::Value()); }, std::move(callback)), @@ -205,10 +205,10 @@ index 1e4d9e098463d61dcab787afcc46fea63b27e012..3f1ebf493ddd7d1c209acee2fb1255a0 const mojom::blink::UserActivationOption user_activation_option_; const mojom::blink::LoadEventBlockingOption blocking_option_; diff --git a/third_party/blink/renderer/core/frame/web_local_frame_impl.cc b/third_party/blink/renderer/core/frame/web_local_frame_impl.cc -index 63cb39adfb346bdfe6ff06ccbf69dd0ba09adabc..1dc1397dd3e82c72dfa4f5b6deef4ca66f5fa9ce 100644 +index 59c1dff78aa1e8069d9c7ee0cf26c8291a78b483..4010ae2efe1eeb885864435eb40818a6f3ee7ec3 100644 --- a/third_party/blink/renderer/core/frame/web_local_frame_impl.cc +++ b/third_party/blink/renderer/core/frame/web_local_frame_impl.cc -@@ -1131,14 +1131,15 @@ void WebLocalFrameImpl::RequestExecuteScript( +@@ -1132,14 +1132,15 @@ void WebLocalFrameImpl::RequestExecuteScript( mojom::blink::EvaluationTiming evaluation_timing, mojom::blink::LoadEventBlockingOption blocking_option, WebScriptExecutionCallback callback, @@ -227,10 +227,10 @@ index 63cb39adfb346bdfe6ff06ccbf69dd0ba09adabc..1dc1397dd3e82c72dfa4f5b6deef4ca6 v8::MaybeLocal WebLocalFrameImpl::CallFunctionEvenIfScriptDisabled( diff --git a/third_party/blink/renderer/core/frame/web_local_frame_impl.h b/third_party/blink/renderer/core/frame/web_local_frame_impl.h -index 56f09dfb61b3331120dbb150c71d09b613a3a43f..a8699af3b32aa4779b549b854d82e11483a47301 100644 +index 7cc5a466904a9763c50c2add02f50c9d15643faf..452496056c528bf9c0d7216e8dfa0d94f358c1ca 100644 --- a/third_party/blink/renderer/core/frame/web_local_frame_impl.h +++ b/third_party/blink/renderer/core/frame/web_local_frame_impl.h -@@ -195,6 +195,7 @@ class CORE_EXPORT WebLocalFrameImpl final +@@ -196,6 +196,7 @@ class CORE_EXPORT WebLocalFrameImpl final mojom::blink::EvaluationTiming, mojom::blink::LoadEventBlockingOption, WebScriptExecutionCallback, diff --git a/patches/chromium/frame_host_manager.patch b/patches/chromium/frame_host_manager.patch index e0724cd23168..efb388ecd757 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 7e7179d7bf818a961ab60e16f168621f2f45d8d0..8d05ce8e9ffb13dc9ee2daef548ab25ba8ba9679 100644 +index 02c8f132c266a599c335f83474b3322700a0e5d1..19f731476a2a2beacef7c4493a586c4a6cd69dd0 100644 --- a/content/browser/renderer_host/render_frame_host_manager.cc +++ b/content/browser/renderer_host/render_frame_host_manager.cc -@@ -3979,6 +3979,9 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest( +@@ -3984,6 +3984,9 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest( request->ResetStateForSiteInstanceChange(); } @@ -20,7 +20,7 @@ index 7e7179d7bf818a961ab60e16f168621f2f45d8d0..8d05ce8e9ffb13dc9ee2daef548ab25b } diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h -index cfb536c2642b21e4edf60e677bce96a506189bb5..2f22c5e2b33a125dbbef3fe524f522bc06e882be 100644 +index 106d02d39b46ccec96d84577e0cdd720b8869465..84ae879b787e3bd4b117f9717355957a84bf3b0c 100644 --- a/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h @@ -304,6 +304,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 46627579867f..43fbf5e4f74e 100644 --- a/patches/chromium/gin_enable_disable_v8_platform.patch +++ b/patches/chromium/gin_enable_disable_v8_platform.patch @@ -38,10 +38,10 @@ index 10caab6d9ef3345332c163a55dcef991248ab4ea..c9bc6e5dd7e1cf8d198afcd21cbb2497 // 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 c71893cb22e1a8cae65b798fa2995bcd8d41d7b0..badac7434528c16159fecf8443d5553eb33934fa 100644 +index 45da70dd0d164bd5be17ef4e3731f2a3c597571f..4c2a4783f894c2dc62d87dfc51e2ebb8a0b51b2e 100644 --- a/gin/v8_initializer.cc +++ b/gin/v8_initializer.cc -@@ -416,7 +416,8 @@ void SetFlags(IsolateHolder::ScriptMode mode, +@@ -420,7 +420,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 c71893cb22e1a8cae65b798fa2995bcd8d41d7b0..badac7434528c16159fecf8443d5553e static bool v8_is_initialized = false; if (v8_is_initialized) return; -@@ -426,7 +427,8 @@ void V8Initializer::Initialize(IsolateHolder::ScriptMode mode, +@@ -430,7 +431,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 fc5d6946c72b..ebcb09bf9a32 100644 --- a/patches/chromium/gritsettings_resource_ids.patch +++ b/patches/chromium/gritsettings_resource_ids.patch @@ -6,7 +6,7 @@ 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 bcc7aa7afbd8637a16b4f74a2149d7dc773b9d39..264773b0a47d888045ccb2b205bbfb8393b1c559 100644 +index 887146425378c061fedb49b9c1dfe009d8e25a83..1d51c7b6c26c6e7c72e4fb6d87af4533240f789e 100644 --- a/tools/gritsettings/resource_ids.spec +++ b/tools/gritsettings/resource_ids.spec @@ -1185,6 +1185,11 @@ diff --git a/patches/chromium/introduce_ozoneplatform_electron_can_call_x11_property.patch b/patches/chromium/introduce_ozoneplatform_electron_can_call_x11_property.patch index ed5016fbf1e0..a2bc6690c117 100644 --- a/patches/chromium/introduce_ozoneplatform_electron_can_call_x11_property.patch +++ b/patches/chromium/introduce_ozoneplatform_electron_can_call_x11_property.patch @@ -9,10 +9,10 @@ at rutime. It would be best if eventually all usages of this property were replaced with clean ozone native implementations. diff --git a/ui/ozone/platform/x11/ozone_platform_x11.cc b/ui/ozone/platform/x11/ozone_platform_x11.cc -index 464421d46a5d764971bc010af6032e743147aa72..6815d2748a4ae70d107b14f8b65f07788ddb8330 100644 +index bf0365da219530780ec232e477f13ed216e6d5b9..84b137b0bff80f63db58b08d6c97ed5228294e0a 100644 --- a/ui/ozone/platform/x11/ozone_platform_x11.cc +++ b/ui/ozone/platform/x11/ozone_platform_x11.cc -@@ -192,6 +192,7 @@ class OzonePlatformX11 : public OzonePlatform, +@@ -193,6 +193,7 @@ class OzonePlatformX11 : public OzonePlatform, base::MessagePumpType::UI; properties->supports_vulkan_swap_chain = true; properties->skia_can_fall_back_to_x11 = true; diff --git a/patches/chromium/load_v8_snapshot_in_browser_process.patch b/patches/chromium/load_v8_snapshot_in_browser_process.patch index 2fe2f612e400..e842bf8082f6 100644 --- a/patches/chromium/load_v8_snapshot_in_browser_process.patch +++ b/patches/chromium/load_v8_snapshot_in_browser_process.patch @@ -9,10 +9,10 @@ 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 cd3ba8776da4ebd0bf39687c1c87ae59b96d59a7..62e4947ec2974c1ef2152e78d05b2100f49e5616 100644 +index ab6bc68812e36afba65248d56bd1b7e9e453850a..336705c28ca960d8e7d9af82bb56b009e49bc733 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) { +@@ -273,11 +273,8 @@ void LoadV8SnapshotFile(const base::CommandLine& command_line) { bool ShouldLoadV8Snapshot(const base::CommandLine& command_line, const std::string& process_type) { diff --git a/patches/chromium/mas-cgdisplayusesforcetogray.patch b/patches/chromium/mas-cgdisplayusesforcetogray.patch index 36149c33e03e..dad0459a3b48 100644 --- a/patches/chromium/mas-cgdisplayusesforcetogray.patch +++ b/patches/chromium/mas-cgdisplayusesforcetogray.patch @@ -6,7 +6,7 @@ Subject: mas: avoid usage of CGDisplayUsesForceToGray Removes usage of the CGDisplayUsesForceToGray private API. diff --git a/ui/display/mac/screen_mac.mm b/ui/display/mac/screen_mac.mm -index 4a7d465c5f5690709eca8aa4ac90e905ab7d199e..30f72b9655e790d864fc7e28983b6a37074448a5 100644 +index eac90f20353e52ee676302b39ae5cb204c0a9dcb..1c3eb1dbd4417c675d4592cad126a7fe75cd1e3c 100644 --- a/ui/display/mac/screen_mac.mm +++ b/ui/display/mac/screen_mac.mm @@ -268,7 +268,17 @@ DisplayMac BuildDisplayForScreen(NSScreen* screen) { @@ -25,5 +25,5 @@ index 4a7d465c5f5690709eca8aa4ac90e905ab7d199e..30f72b9655e790d864fc7e28983b6a37 display.set_is_monochrome(CGDisplayUsesForceToGray()); +#endif - // Query the display's referesh rate. + // Query the display's refresh rate. { diff --git a/patches/chromium/mas_avoid_usage_of_private_macos_apis.patch b/patches/chromium/mas_avoid_usage_of_private_macos_apis.patch index e84811bcdd6a..83320bbe8479 100644 --- a/patches/chromium/mas_avoid_usage_of_private_macos_apis.patch +++ b/patches/chromium/mas_avoid_usage_of_private_macos_apis.patch @@ -137,7 +137,7 @@ index de77363ffcb89e0b8c7b7033d973b89eb0dd28ae..fc02c33ccd023c366c73a21b87711a61 if (__builtin_available(macOS 10.14, *)) { DPSXCHECK(responsibility_spawnattrs_setdisclaim(attr.get(), 1)); diff --git a/media/audio/mac/audio_low_latency_input_mac.cc b/media/audio/mac/audio_low_latency_input_mac.cc -index 0b52fe6bd877347ac79a780aefc3c5c4b382f80e..5313bf169fdd6f86433db0fefe704f52011da861 100644 +index 6e73be2bd964aa8cf743c1ae01ce8e188dbcac8e..58a7eb1e982a90d6197579ffdb9545340356a65c 100644 --- a/media/audio/mac/audio_low_latency_input_mac.cc +++ b/media/audio/mac/audio_low_latency_input_mac.cc @@ -31,19 +31,23 @@ diff --git a/patches/chromium/mas_disable_remote_accessibility.patch b/patches/chromium/mas_disable_remote_accessibility.patch index f6a16cfaea5a..47f854208323 100644 --- a/patches/chromium/mas_disable_remote_accessibility.patch +++ b/patches/chromium/mas_disable_remote_accessibility.patch @@ -133,7 +133,7 @@ index 3a81bbe5542f39c82f6ccf6643f491cb73ecb2aa..6b156ac4c514855f73fedc85fb9b0080 return false; } diff --git a/content/browser/renderer_host/render_widget_host_view_mac.h b/content/browser/renderer_host/render_widget_host_view_mac.h -index efca18c2a229b5d5afdcf5ac9c3057e0294bedd3..7a589e826f5c221259ac82ddfeba5985feb39d00 100644 +index 5fb7f2af49a3bd505840d2c118dfee9abf808c24..3f86c68811a90890255c7ac88bb251da60b40fdb 100644 --- a/content/browser/renderer_host/render_widget_host_view_mac.h +++ b/content/browser/renderer_host/render_widget_host_view_mac.h @@ -51,7 +51,9 @@ class ScopedPasswordInputEnabler; @@ -146,7 +146,7 @@ index efca18c2a229b5d5afdcf5ac9c3057e0294bedd3..7a589e826f5c221259ac82ddfeba5985 @class RenderWidgetHostViewCocoa; namespace content { -@@ -664,10 +666,12 @@ class CONTENT_EXPORT RenderWidgetHostViewMac +@@ -666,10 +668,12 @@ class CONTENT_EXPORT RenderWidgetHostViewMac // EnsureSurfaceSynchronizedForWebTest(). uint32_t latest_capture_sequence_number_ = 0u; @@ -160,7 +160,7 @@ index efca18c2a229b5d5afdcf5ac9c3057e0294bedd3..7a589e826f5c221259ac82ddfeba5985 // Used to force the NSApplication's focused accessibility element to be the // content::BrowserAccessibilityCocoa accessibility tree when the NSView for diff --git a/content/browser/renderer_host/render_widget_host_view_mac.mm b/content/browser/renderer_host/render_widget_host_view_mac.mm -index 1ae5b54369158da65d552f3c848e0f3c805b0f5c..e15e6b3e145aecfddd1ce20fdd6c844bfda6e31b 100644 +index b436ccf7a4ee0271d6f15226b9f195b5ffb6b24b..4dce73888703a5db8fe7ae2a0e0745ee813ab9b0 100644 --- a/content/browser/renderer_host/render_widget_host_view_mac.mm +++ b/content/browser/renderer_host/render_widget_host_view_mac.mm @@ -255,8 +255,10 @@ @@ -174,7 +174,7 @@ index 1ae5b54369158da65d552f3c848e0f3c805b0f5c..e15e6b3e145aecfddd1ce20fdd6c844b // Reset `ns_view_` before resetting `remote_ns_view_` to avoid dangling // pointers. `ns_view_` gets reinitialized later in this method. -@@ -1568,8 +1570,10 @@ void CombineTextNodesAndMakeCallback(SpeechCallback callback, +@@ -1572,8 +1574,10 @@ void CombineTextNodesAndMakeCallback(SpeechCallback callback, gfx::NativeViewAccessible RenderWidgetHostViewMac::AccessibilityGetNativeViewAccessibleForWindow() { @@ -185,7 +185,7 @@ index 1ae5b54369158da65d552f3c848e0f3c805b0f5c..e15e6b3e145aecfddd1ce20fdd6c844b return [GetInProcessNSView() window]; } -@@ -1613,9 +1617,11 @@ void CombineTextNodesAndMakeCallback(SpeechCallback callback, +@@ -1617,9 +1621,11 @@ void CombineTextNodesAndMakeCallback(SpeechCallback callback, } void RenderWidgetHostViewMac::SetAccessibilityWindow(NSWindow* window) { @@ -197,7 +197,7 @@ index 1ae5b54369158da65d552f3c848e0f3c805b0f5c..e15e6b3e145aecfddd1ce20fdd6c844b } bool RenderWidgetHostViewMac::SyncIsWidgetForMainFrame( -@@ -2117,6 +2123,7 @@ void CombineTextNodesAndMakeCallback(SpeechCallback callback, +@@ -2121,6 +2127,7 @@ void CombineTextNodesAndMakeCallback(SpeechCallback callback, void RenderWidgetHostViewMac::SetRemoteAccessibilityWindowToken( const std::vector& window_token) { @@ -205,7 +205,7 @@ index 1ae5b54369158da65d552f3c848e0f3c805b0f5c..e15e6b3e145aecfddd1ce20fdd6c844b if (window_token.empty()) { remote_window_accessible_.reset(); } else { -@@ -2124,6 +2131,7 @@ void CombineTextNodesAndMakeCallback(SpeechCallback callback, +@@ -2128,6 +2135,7 @@ void CombineTextNodesAndMakeCallback(SpeechCallback callback, ui::RemoteAccessibility::GetRemoteElementFromToken(window_token), base::scoped_policy::RETAIN); } diff --git a/patches/chromium/network_service_allow_remote_certificate_verification_logic.patch b/patches/chromium/network_service_allow_remote_certificate_verification_logic.patch index 7baeca61e5de..4fbaf38b833d 100644 --- a/patches/chromium/network_service_allow_remote_certificate_verification_logic.patch +++ b/patches/chromium/network_service_allow_remote_certificate_verification_logic.patch @@ -147,7 +147,7 @@ index d553d31e90ca7f3ea9a540d0eda7aaa6801f007b..0ffa0ec042bd59de5d28fad53dee2b63 builder.SetCertVerifier(IgnoreErrorsCertVerifier::MaybeWrapCertVerifier( diff --git a/services/network/network_context.h b/services/network/network_context.h -index a2b8eaf4db85b2969a09cba5f12cbc642b677213..f3a89933fef78c62e4c67fcfd521c8413c32e38f 100644 +index 9cac607573e5411c6dd8c2a6309ae78c2a1784f4..f10414f382b48ecc162b22d9638d948e3e719733 100644 --- a/services/network/network_context.h +++ b/services/network/network_context.h @@ -114,6 +114,7 @@ class URLMatcher; diff --git a/patches/chromium/notification_provenance.patch b/patches/chromium/notification_provenance.patch index 5a21a0cc7e49..eaf0aa19a463 100644 --- a/patches/chromium/notification_provenance.patch +++ b/patches/chromium/notification_provenance.patch @@ -7,10 +7,10 @@ Pass RenderFrameHost through to PlatformNotificationService so Electron can identify which renderer a notification came from. diff --git a/chrome/browser/notifications/platform_notification_service_impl.cc b/chrome/browser/notifications/platform_notification_service_impl.cc -index aa9ce8fa016317d543752462f356ccdef6b931eb..71fc184b94286803300c396fe4845e5f17911f55 100644 +index f2ef4881ffacd2f76bffdcca774de614ad1fc593..c78571b85e7d76f8d0e9258cf1a5f1eb0474632e 100644 --- a/chrome/browser/notifications/platform_notification_service_impl.cc +++ b/chrome/browser/notifications/platform_notification_service_impl.cc -@@ -200,6 +200,7 @@ bool PlatformNotificationServiceImpl::WasClosedProgrammatically( +@@ -201,6 +201,7 @@ bool PlatformNotificationServiceImpl::WasClosedProgrammatically( // TODO(awdf): Rename to DisplayNonPersistentNotification (Similar for Close) void PlatformNotificationServiceImpl::DisplayNotification( diff --git a/patches/chromium/printing.patch b/patches/chromium/printing.patch index 7da49c4b0f73..41649b76762a 100644 --- a/patches/chromium/printing.patch +++ b/patches/chromium/printing.patch @@ -11,7 +11,7 @@ majority of changes originally come from these PRs: This patch also fixes callback for manual user cancellation and success. diff --git a/BUILD.gn b/BUILD.gn -index b512618d4ffefa76c50cf5c5cccd5f6516b99c28..c0e30639a7f36b1a7f6dcb040220ac79b64a7293 100644 +index 9298bc0945ff258f295bb08849091036d15cadf1..67adb3fe09844e5dcaa8bbd1a9071d13366357ec 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -971,7 +971,6 @@ if (is_win) { @@ -91,7 +91,7 @@ index 3a66a52b8d3c6da9cd8d7e9afdc8d59f528ec3d5..facaa6fbca8ee7c04f83607e62b81b95 : PdfRenderSettings::Mode::POSTSCRIPT_LEVEL3; } diff --git a/chrome/browser/printing/print_view_manager_base.cc b/chrome/browser/printing/print_view_manager_base.cc -index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e33f2e7f6 100644 +index c976fb2a814e4ff09650982034371e40d1ab77bc..c9115c7bbead588f3099bb194eb293b0e78ad211 100644 --- a/chrome/browser/printing/print_view_manager_base.cc +++ b/chrome/browser/printing/print_view_manager_base.cc @@ -23,7 +23,9 @@ @@ -187,7 +187,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e } PrintViewManagerBase::~PrintViewManagerBase() { -@@ -199,7 +222,10 @@ void PrintViewManagerBase::DisableThirdPartyBlocking() { +@@ -199,12 +222,20 @@ void PrintViewManagerBase::DisableThirdPartyBlocking() { } #endif // BUILDFLAG(IS_WIN) && BUILDFLAG(GOOGLE_CHROME_BRANDING) @@ -196,13 +196,10 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e + bool silent, + base::Value::Dict settings, + CompletionCallback callback) { - // Remember the ID for `rfh`, to enable checking that the `RenderFrameHost` - // is still valid after a possible inner message loop runs in - // `DisconnectFromCurrentPrintJob()`. -@@ -227,7 +253,12 @@ bool PrintViewManagerBase::PrintNow(content::RenderFrameHost* rfh) { - #endif + if (!StartPrintCommon(rfh)) { + return false; + } - SetPrintingRFH(rfh); +#if 0 CompletePrintNow(rfh); +#endif @@ -212,7 +209,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e return true; } -@@ -323,12 +354,13 @@ void PrintViewManagerBase::OnDidUpdatePrintableArea( +@@ -313,12 +344,13 @@ void PrintViewManagerBase::OnDidUpdatePrintableArea( } PRINTER_LOG(EVENT) << "Paper printable area updated for vendor id " << print_settings->requested_media().vendor_id; @@ -227,7 +224,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e base::Value::Dict job_settings, std::unique_ptr print_settings, UpdatePrintSettingsCallback callback) { -@@ -336,7 +368,8 @@ void PrintViewManagerBase::CompleteUpdatePrintSettings( +@@ -326,7 +358,8 @@ void PrintViewManagerBase::CompleteUpdatePrintSettings( settings->pages = GetPageRangesFromJobSettings(job_settings); settings->params = mojom::PrintParams::New(); RenderParamsFromPrintSettings(*print_settings, settings->params.get()); @@ -237,7 +234,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e if (!PrintMsgPrintParamsIsValid(*settings->params)) { mojom::PrinterType printer_type = static_cast( *job_settings.FindInt(kSettingPrinterType)); -@@ -348,6 +381,10 @@ void PrintViewManagerBase::CompleteUpdatePrintSettings( +@@ -338,6 +371,10 @@ void PrintViewManagerBase::CompleteUpdatePrintSettings( return; } @@ -248,7 +245,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e set_cookie(settings->params->document_cookie); std::move(callback).Run(std::move(settings)); } -@@ -451,7 +488,8 @@ void PrintViewManagerBase::GetDefaultPrintSettingsReply( +@@ -441,7 +478,8 @@ void PrintViewManagerBase::GetDefaultPrintSettingsReply( void PrintViewManagerBase::ScriptedPrintReply( ScriptedPrintCallback callback, int process_id, @@ -258,7 +255,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e DCHECK_CURRENTLY_ON(content::BrowserThread::UI); #if BUILDFLAG(ENABLE_OOP_PRINTING) -@@ -466,12 +504,15 @@ void PrintViewManagerBase::ScriptedPrintReply( +@@ -456,12 +494,15 @@ void PrintViewManagerBase::ScriptedPrintReply( return; } @@ -276,7 +273,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e } } -@@ -608,10 +649,12 @@ void PrintViewManagerBase::DidPrintDocument( +@@ -598,10 +639,12 @@ void PrintViewManagerBase::DidPrintDocument( void PrintViewManagerBase::GetDefaultPrintSettings( GetDefaultPrintSettingsCallback callback) { DCHECK_CURRENTLY_ON(content::BrowserThread::UI); @@ -289,7 +286,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e #if BUILDFLAG(ENABLE_OOP_PRINTING) if (printing::features::kEnableOopPrintDriversJobPrint.Get() && #if BUILDFLAG(ENABLE_PRINT_CONTENT_ANALYSIS) -@@ -662,10 +705,12 @@ void PrintViewManagerBase::UpdatePrintSettings( +@@ -652,10 +695,12 @@ void PrintViewManagerBase::UpdatePrintSettings( base::Value::Dict job_settings, UpdatePrintSettingsCallback callback) { DCHECK_CURRENTLY_ON(content::BrowserThread::UI); @@ -302,7 +299,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e absl::optional printer_type_value = job_settings.FindInt(kSettingPrinterType); -@@ -676,6 +721,7 @@ void PrintViewManagerBase::UpdatePrintSettings( +@@ -666,6 +711,7 @@ void PrintViewManagerBase::UpdatePrintSettings( mojom::PrinterType printer_type = static_cast(*printer_type_value); @@ -310,7 +307,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e if (printer_type != mojom::PrinterType::kExtension && printer_type != mojom::PrinterType::kPdf && printer_type != mojom::PrinterType::kLocal) { -@@ -695,6 +741,7 @@ void PrintViewManagerBase::UpdatePrintSettings( +@@ -685,6 +731,7 @@ void PrintViewManagerBase::UpdatePrintSettings( if (value > 0) job_settings.Set(kSettingRasterizePdfDpi, value); } @@ -318,7 +315,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e std::unique_ptr print_settings = PrintSettingsFromJobSettings(job_settings); -@@ -714,6 +761,16 @@ void PrintViewManagerBase::UpdatePrintSettings( +@@ -704,6 +751,16 @@ void PrintViewManagerBase::UpdatePrintSettings( } } @@ -335,7 +332,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e #if BUILDFLAG(IS_WIN) // TODO(crbug.com/1424368): Remove this if the printable areas can be made // fully available from `PrintBackend::GetPrinterSemanticCapsAndDefaults()` -@@ -736,15 +793,13 @@ void PrintViewManagerBase::UpdatePrintSettings( +@@ -726,15 +783,13 @@ void PrintViewManagerBase::UpdatePrintSettings( } #endif @@ -352,7 +349,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e } void PrintViewManagerBase::ScriptedPrint(mojom::ScriptedPrintParamsPtr params, -@@ -760,14 +815,14 @@ void PrintViewManagerBase::ScriptedPrint(mojom::ScriptedPrintParamsPtr params, +@@ -750,14 +805,14 @@ void PrintViewManagerBase::ScriptedPrint(mojom::ScriptedPrintParamsPtr params, // didn't happen for some reason. bad_message::ReceivedBadMessage( render_process_host, bad_message::PVMB_SCRIPTED_PRINT_FENCED_FRAME); @@ -369,7 +366,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e return; } #endif -@@ -802,6 +857,7 @@ void PrintViewManagerBase::PrintingFailed(int32_t cookie, +@@ -792,6 +847,7 @@ void PrintViewManagerBase::PrintingFailed(int32_t cookie, PrintManager::PrintingFailed(cookie, reason); @@ -377,7 +374,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e // `PrintingFailed()` can occur because asynchronous compositing results // don't complete until after a print job has already failed and been // destroyed. In such cases the error notification to the user will -@@ -811,7 +867,7 @@ void PrintViewManagerBase::PrintingFailed(int32_t cookie, +@@ -801,7 +857,7 @@ void PrintViewManagerBase::PrintingFailed(int32_t cookie, print_job_->document()->cookie() == cookie) { ShowPrintErrorDialogForGenericError(); } @@ -386,7 +383,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e ReleasePrinterQuery(); } -@@ -823,15 +879,24 @@ void PrintViewManagerBase::RemoveTestObserver(TestObserver& observer) { +@@ -813,15 +869,24 @@ void PrintViewManagerBase::RemoveTestObserver(TestObserver& observer) { test_observers_.RemoveObserver(&observer); } @@ -411,7 +408,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e } void PrintViewManagerBase::RenderFrameDeleted( -@@ -883,7 +948,12 @@ void PrintViewManagerBase::OnJobDone() { +@@ -873,7 +938,12 @@ void PrintViewManagerBase::OnJobDone() { // Printing is done, we don't need it anymore. // print_job_->is_job_pending() may still be true, depending on the order // of object registration. @@ -425,7 +422,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e ReleasePrintJob(); } -@@ -892,9 +962,10 @@ void PrintViewManagerBase::OnCanceling() { +@@ -882,9 +952,10 @@ void PrintViewManagerBase::OnCanceling() { } void PrintViewManagerBase::OnFailed() { @@ -437,7 +434,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e TerminatePrintJob(true); } -@@ -904,7 +975,7 @@ bool PrintViewManagerBase::RenderAllMissingPagesNow() { +@@ -894,7 +965,7 @@ bool PrintViewManagerBase::RenderAllMissingPagesNow() { // Is the document already complete? if (print_job_->document() && print_job_->document()->IsComplete()) { @@ -446,7 +443,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e return true; } -@@ -952,7 +1023,10 @@ bool PrintViewManagerBase::CreateNewPrintJob( +@@ -942,7 +1013,10 @@ bool PrintViewManagerBase::CreateNewPrintJob( // Disconnect the current `print_job_`. auto weak_this = weak_ptr_factory_.GetWeakPtr(); @@ -458,7 +455,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e if (!weak_this) return false; -@@ -973,7 +1047,7 @@ bool PrintViewManagerBase::CreateNewPrintJob( +@@ -963,7 +1037,7 @@ bool PrintViewManagerBase::CreateNewPrintJob( #endif print_job_->AddObserver(*this); @@ -467,7 +464,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e return true; } -@@ -1041,6 +1115,11 @@ void PrintViewManagerBase::ReleasePrintJob() { +@@ -1031,6 +1105,11 @@ void PrintViewManagerBase::ReleasePrintJob() { } #endif @@ -479,7 +476,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e if (!print_job_) return; -@@ -1048,7 +1127,7 @@ void PrintViewManagerBase::ReleasePrintJob() { +@@ -1038,7 +1117,7 @@ void PrintViewManagerBase::ReleasePrintJob() { // printing_rfh_ should only ever point to a RenderFrameHost with a live // RenderFrame. DCHECK(rfh->IsRenderFrameLive()); @@ -488,7 +485,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e } print_job_->RemoveObserver(*this); -@@ -1090,7 +1169,7 @@ bool PrintViewManagerBase::RunInnerMessageLoop() { +@@ -1080,7 +1159,7 @@ bool PrintViewManagerBase::RunInnerMessageLoop() { } bool PrintViewManagerBase::OpportunisticallyCreatePrintJob(int cookie) { @@ -497,7 +494,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e return true; if (!cookie) { -@@ -1199,7 +1278,7 @@ void PrintViewManagerBase::ReleasePrinterQuery() { +@@ -1224,7 +1303,7 @@ void PrintViewManagerBase::ReleasePrinterQuery() { } void PrintViewManagerBase::CompletePrintNow(content::RenderFrameHost* rfh) { @@ -506,7 +503,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e for (auto& observer : GetTestObservers()) { observer.OnPrintNow(rfh); -@@ -1249,7 +1328,7 @@ void PrintViewManagerBase::CompleteScriptedPrintAfterContentAnalysis( +@@ -1274,7 +1353,7 @@ void PrintViewManagerBase::CompleteScriptedPrintAfterContentAnalysis( set_analyzing_content(/*analyzing*/ false); if (!allowed || !printing_rfh_ || IsCrashed() || !printing_rfh_->IsRenderFrameLive()) { @@ -516,7 +513,7 @@ index 2bb42383d753ac39953adf5dccf1cbc02f100b88..2ff3f9391cb60082e2e72af8d9d82c9e } CompleteScriptedPrint(printing_rfh_, std::move(params), std::move(callback)); diff --git a/chrome/browser/printing/print_view_manager_base.h b/chrome/browser/printing/print_view_manager_base.h -index 8af22e511701a595b77bea31da096caedc2e47ce..3136fac6935c998de10e36474b85521dba18012a 100644 +index 4ae11ba1c9cabb659910271c1ef20ff08a67df67..bbc77212abe5e73b58605058d7a3c49cfa1c003f 100644 --- a/chrome/browser/printing/print_view_manager_base.h +++ b/chrome/browser/printing/print_view_manager_base.h @@ -47,6 +47,8 @@ namespace printing { @@ -538,9 +535,9 @@ index 8af22e511701a595b77bea31da096caedc2e47ce..3136fac6935c998de10e36474b85521d + base::Value::Dict settings = {}, + CompletionCallback callback = {}); - #if BUILDFLAG(ENABLE_PRINT_PREVIEW) - // Prints the document in `print_data` with settings specified in -@@ -132,8 +137,10 @@ class PrintViewManagerBase : public PrintManager, public PrintJob::Observer { + // Like PrintNow(), but for the node under the context menu, instead of the + // entire frame. +@@ -136,8 +141,10 @@ class PrintViewManagerBase : public PrintManager, public PrintJob::Observer { void IsPrintingEnabled(IsPrintingEnabledCallback callback) override; void ScriptedPrint(mojom::ScriptedPrintParamsPtr params, ScriptedPrintCallback callback) override; @@ -551,7 +548,7 @@ index 8af22e511701a595b77bea31da096caedc2e47ce..3136fac6935c998de10e36474b85521d // Adds and removes observers for `PrintViewManagerBase` events. The order in // which notifications are sent to observers is undefined. Observers must be -@@ -141,6 +148,14 @@ class PrintViewManagerBase : public PrintManager, public PrintJob::Observer { +@@ -145,6 +152,14 @@ class PrintViewManagerBase : public PrintManager, public PrintJob::Observer { void AddTestObserver(TestObserver& observer); void RemoveTestObserver(TestObserver& observer); @@ -566,7 +563,7 @@ index 8af22e511701a595b77bea31da096caedc2e47ce..3136fac6935c998de10e36474b85521d protected: explicit PrintViewManagerBase(content::WebContents* web_contents); -@@ -264,6 +279,7 @@ class PrintViewManagerBase : public PrintManager, public PrintJob::Observer { +@@ -272,6 +287,7 @@ class PrintViewManagerBase : public PrintManager, public PrintJob::Observer { bool success); #endif void CompleteUpdatePrintSettings( @@ -574,7 +571,7 @@ index 8af22e511701a595b77bea31da096caedc2e47ce..3136fac6935c998de10e36474b85521d base::Value::Dict job_settings, std::unique_ptr print_settings, UpdatePrintSettingsCallback callback); -@@ -293,7 +309,8 @@ class PrintViewManagerBase : public PrintManager, public PrintJob::Observer { +@@ -301,7 +317,8 @@ class PrintViewManagerBase : public PrintManager, public PrintJob::Observer { // Runs `callback` with `params` to reply to ScriptedPrint(). void ScriptedPrintReply(ScriptedPrintCallback callback, int process_id, @@ -584,7 +581,7 @@ index 8af22e511701a595b77bea31da096caedc2e47ce..3136fac6935c998de10e36474b85521d // Requests the RenderView to render all the missing pages for the print job. // No-op if no print job is pending. Returns true if at least one page has -@@ -363,8 +380,11 @@ class PrintViewManagerBase : public PrintManager, public PrintJob::Observer { +@@ -371,8 +388,11 @@ class PrintViewManagerBase : public PrintManager, public PrintJob::Observer { // The current RFH that is printing with a system printing dialog. raw_ptr printing_rfh_ = nullptr; @@ -916,10 +913,10 @@ index d971e446859507456da153a9d59f3ed4857b66cb..9ab75731a941e7065dfaa481508cfa47 #if BUILDFLAG(ENABLE_PRINT_PREVIEW) // Set options for print preset from source PDF document. diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn -index cc47fb1a2a3d6a6fe15448ebdba25c29b4b88aa0..e6125b6af20434f3ec3171c044d515b8c120a7b5 100644 +index f57b2e228134e72e6b1f1766faf6e119fc15a4aa..7901304acdeb5845f1c1292d6360bda41c0764e0 100644 --- a/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn -@@ -2901,8 +2901,9 @@ source_set("browser") { +@@ -2899,8 +2899,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 ac2d43e3bd4a..e621a3e7e8f3 100644 --- a/patches/chromium/refactor_expose_cursor_changes_to_the_webcontentsobserver.patch +++ b/patches/chromium/refactor_expose_cursor_changes_to_the_webcontentsobserver.patch @@ -30,10 +30,10 @@ index fe010b1f001130fbdeaf4ef9ce7798e4baf958b5..28f1305f439be7f669e482ac0e4804c0 // 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 90c6a5b6999571819ef71f859767cccf635ea883..d08149b8cb57ca357a2304fc9a8b8be4524b18f9 100644 +index 2d705b183b1014a6f8dc89672b327d619ac52b1a..7107c17a8f36688d245b4cad5ee92dfcedd2485e 100644 --- a/content/browser/renderer_host/render_widget_host_impl.cc +++ b/content/browser/renderer_host/render_widget_host_impl.cc -@@ -2130,6 +2130,9 @@ void RenderWidgetHostImpl::SetCursor(const ui::Cursor& cursor) { +@@ -2118,6 +2118,9 @@ void RenderWidgetHostImpl::SetCursor(const ui::Cursor& cursor) { if (view_) { view_->UpdateCursor(cursor); } @@ -44,10 +44,10 @@ index 90c6a5b6999571819ef71f859767cccf635ea883..d08149b8cb57ca357a2304fc9a8b8be4 void RenderWidgetHostImpl::ShowContextMenuAtPoint( diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index 75d6d7b62778fc00bb9b131e11eaef0431abcb29..0b9b22ed11db2aaa5cb4290370aa38bf739e415d 100644 +index 5018e17e0f56efd54529ef3e9ae1de5e223aed68..865414f0994a4e29f297532538486f780edd51d3 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -4808,6 +4808,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() { +@@ -4798,6 +4798,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() { return text_input_manager_.get(); } @@ -60,10 +60,10 @@ index 75d6d7b62778fc00bb9b131e11eaef0431abcb29..0b9b22ed11db2aaa5cb4290370aa38bf 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 3f156cadaff7ad24e65afe5dbb4592cd55b57ff5..6d1f349130fbb97ed1436b2b792d5f540f323433 100644 +index 742fd02e00dca4056cde074f6fa85dd76814cfd8..b6ef149aed6641de2ca1ea8bf3d7bcc86768dd53 100644 --- a/content/browser/web_contents/web_contents_impl.h +++ b/content/browser/web_contents/web_contents_impl.h -@@ -978,6 +978,7 @@ class CONTENT_EXPORT WebContentsImpl : public WebContents, +@@ -976,6 +976,7 @@ class CONTENT_EXPORT WebContentsImpl : public WebContents, void SendScreenRects() override; void SendActiveState(bool active) override; TextInputManager* GetTextInputManager() override; @@ -72,7 +72,7 @@ index 3f156cadaff7ad24e65afe5dbb4592cd55b57ff5..6d1f349130fbb97ed1436b2b792d5f54 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 977cd925f574c6960f4d801540f37e2a13396504..fcc16b4dff08b781be4e3494ae20481ca85dcd16 100644 +index 9694d1854873eaea76807ee761c43f21137f0bd2..fc70e75b3b6edcddd95a9960219ffc9b5ec798cc 100644 --- a/content/public/browser/web_contents_observer.h +++ b/content/public/browser/web_contents_observer.h @@ -30,6 +30,7 @@ diff --git a/patches/chromium/render_widget_host_view_base.patch b/patches/chromium/render_widget_host_view_base.patch index 7d8ff40b1d40..34acd5ea7951 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 f522bf1f20a44973e35e57a7b94ecb33a75a68e4..dc0775b72c469c57510336842ca0dc807cbc9535 100644 +index d7ff9f7303d80635de3add7477cd8611b6aa0afc..4650d3074a9ae3b8936ba37a1204b748e464c64e 100644 --- a/content/browser/renderer_host/render_widget_host_view_base.cc +++ b/content/browser/renderer_host/render_widget_host_view_base.cc -@@ -679,6 +679,13 @@ bool RenderWidgetHostViewBase::ScreenRectIsUnstableFor( +@@ -683,6 +683,13 @@ bool RenderWidgetHostViewBase::ScreenRectIsUnstableFor( return false; } @@ -24,7 +24,7 @@ index f522bf1f20a44973e35e57a7b94ecb33a75a68e4..dc0775b72c469c57510336842ca0dc80 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 b299651c61e4e3fef4d9dcc4ce3a8e82372d309a..e7fcd137e296ca3c9529c5aa12cce18780160c9d 100644 +index aed9a4aaa7c9fd320cc9527e5afa85676025ea60..af24500c65b7ecae80fd33c580d22b07876ab12b 100644 --- a/content/browser/renderer_host/render_widget_host_view_base.h +++ b/content/browser/renderer_host/render_widget_host_view_base.h @@ -25,8 +25,11 @@ @@ -60,7 +60,7 @@ index b299651c61e4e3fef4d9dcc4ce3a8e82372d309a..e7fcd137e296ca3c9529c5aa12cce187 class WebContentsAccessibility; class DelegatedFrameHost; -@@ -141,6 +146,9 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView { +@@ -142,6 +147,9 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView { const gfx::Rect& keyboard_rect) override {} bool IsHTMLFormPopup() const override; @@ -70,7 +70,7 @@ index b299651c61e4e3fef4d9dcc4ce3a8e82372d309a..e7fcd137e296ca3c9529c5aa12cce187 // This only needs to be overridden by RenderWidgetHostViewBase subclasses // that handle content embedded within other RenderWidgetHostViews. gfx::PointF TransformPointToRootCoordSpaceF( -@@ -309,6 +317,11 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView { +@@ -310,6 +318,11 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView { virtual void ProcessGestureEvent(const blink::WebGestureEvent& event, const ui::LatencyInfo& latency); diff --git a/patches/chromium/web_contents.patch b/patches/chromium/web_contents.patch index 582aaa7894b7..949b7ca62fad 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 5a8b34ea90f32e12bd75c6b5318c743096e9694c..e1c1c39119d5b0fde1cc0d3649810309f2517ea2 100644 +index 3a60a59497571a33bba8efa7654a32403ab99978..0582143a5466afb3ba618e848ff23ffa23e5ca70 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -3252,6 +3252,13 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, +@@ -3242,6 +3242,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 5a8b34ea90f32e12bd75c6b5318c743096e9694c..e1c1c39119d5b0fde1cc0d3649810309 std::unique_ptr delegate = GetContentClient()->browser()->GetWebContentsViewDelegate(this); -@@ -3262,6 +3269,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, +@@ -3252,6 +3259,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, view_ = CreateWebContentsView(this, std::move(delegate), &render_view_host_delegate_view_); } @@ -35,7 +35,7 @@ index 5a8b34ea90f32e12bd75c6b5318c743096e9694c..e1c1c39119d5b0fde1cc0d3649810309 CHECK(view_.get()); diff --git a/content/public/browser/web_contents.h b/content/public/browser/web_contents.h -index 1c02ef782a296fe401396d1c078d658ee477db91..6fd5d339cef8e33dc6b60b46c6d152277e3cebfa 100644 +index ea1643f689885617bc4a4e1809ce3f64b80764ee..d4c85155fd7c1fc1031655ec7b3a803c5c5c49db 100644 --- a/content/public/browser/web_contents.h +++ b/content/public/browser/web_contents.h @@ -97,10 +97,13 @@ class BrowserContext; diff --git a/patches/chromium/webview_fullscreen.patch b/patches/chromium/webview_fullscreen.patch index b21b0f7e495f..89711b6132d0 100644 --- a/patches/chromium/webview_fullscreen.patch +++ b/patches/chromium/webview_fullscreen.patch @@ -14,10 +14,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 c243e589938089b2c5cf56a0ec75fd161a4d7e76..b6d401f3d3f8292eb5c1b90600823a922d5af609 100644 +index b40f3b4bcd7adf0d1341cbf0752e48d8abe1ce2c..4faa6e471eecce952b30618f09f8a6c7086bc98a 100644 --- a/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc -@@ -7062,6 +7062,17 @@ void RenderFrameHostImpl::EnterFullscreen( +@@ -7060,6 +7060,17 @@ void RenderFrameHostImpl::EnterFullscreen( } } diff --git a/patches/v8/build_gn.patch b/patches/v8/build_gn.patch index 9fac4d1b4681..32c9dd9385d9 100644 --- a/patches/v8/build_gn.patch +++ b/patches/v8/build_gn.patch @@ -9,7 +9,7 @@ necessary for native modules to load. Also change visibility on mksnapshot in order to target mksnapshot for mksnapshot zip. diff --git a/BUILD.gn b/BUILD.gn -index ac6227caf90fd1db380269f3bfbaaa4a81e97dd0..1e26045dc9bb0460ee3f007750e1cac443139511 100644 +index c13cf053a80d212b836a9be3ec6e76b11627a19d..ca07c3ef538388f3efa982abf526e763c8b66cab 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -715,7 +715,7 @@ config("internal_config") { @@ -21,7 +21,7 @@ index ac6227caf90fd1db380269f3bfbaaa4a81e97dd0..1e26045dc9bb0460ee3f007750e1cac4 defines += [ "BUILDING_V8_SHARED" ] } -@@ -6540,7 +6540,7 @@ if (current_toolchain == v8_generator_toolchain) { +@@ -6546,7 +6546,7 @@ if (current_toolchain == v8_generator_toolchain) { "src/interpreter/bytecodes.h", ] @@ -30,7 +30,7 @@ index ac6227caf90fd1db380269f3bfbaaa4a81e97dd0..1e26045dc9bb0460ee3f007750e1cac4 deps = [ ":v8_libbase", -@@ -6552,7 +6552,6 @@ if (current_toolchain == v8_generator_toolchain) { +@@ -6558,7 +6558,6 @@ if (current_toolchain == v8_generator_toolchain) { if (current_toolchain == v8_snapshot_toolchain) { v8_executable("mksnapshot") { diff --git a/patches/v8/do_not_export_private_v8_symbols_on_windows.patch b/patches/v8/do_not_export_private_v8_symbols_on_windows.patch index e415141ab605..87618e6e6e78 100644 --- a/patches/v8/do_not_export_private_v8_symbols_on_windows.patch +++ b/patches/v8/do_not_export_private_v8_symbols_on_windows.patch @@ -12,7 +12,7 @@ This patch can be safely removed if, when it is removed, `node.lib` does not contain any standard C++ library exports (e.g. `std::ostringstream`). diff --git a/BUILD.gn b/BUILD.gn -index 1e26045dc9bb0460ee3f007750e1cac443139511..120372ec9127da16c60e40c2c596988c01b5e187 100644 +index ca07c3ef538388f3efa982abf526e763c8b66cab..80987309d40bd6ec564b9644a66068eb3e5755a8 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -715,6 +715,10 @@ config("internal_config") { diff --git a/shell/browser/electron_browser_main_parts.cc b/shell/browser/electron_browser_main_parts.cc index ae820127614a..af31c6eff253 100644 --- a/shell/browser/electron_browser_main_parts.cc +++ b/shell/browser/electron_browser_main_parts.cc @@ -572,8 +572,6 @@ void ElectronBrowserMainParts::PostCreateMainMessageLoop() { config->store = command_line.GetSwitchValueASCII(::switches::kPasswordStore); config->product_name = app_name; config->application_name = app_name; - config->main_thread_runner = - base::SingleThreadTaskRunner::GetCurrentDefault(); // c.f. // https://source.chromium.org/chromium/chromium/src/+/main:chrome/common/chrome_switches.cc;l=689;drc=9d82515060b9b75fa941986f5db7390299669ef1 config->should_use_preference = diff --git a/shell/browser/fake_location_provider.cc b/shell/browser/fake_location_provider.cc index b3cbd69f92ec..eaeb075d5708 100644 --- a/shell/browser/fake_location_provider.cc +++ b/shell/browser/fake_location_provider.cc @@ -20,14 +20,26 @@ FakeLocationProvider::FakeLocationProvider() { FakeLocationProvider::~FakeLocationProvider() = default; +void FakeLocationProvider::FillDiagnostics( + device::mojom::GeolocationDiagnostics& diagnostics) { + diagnostics.provider_state = state_; +} + void FakeLocationProvider::SetUpdateCallback( const LocationProviderUpdateCallback& callback) { callback_ = callback; } -void FakeLocationProvider::StartProvider(bool high_accuracy) {} +void FakeLocationProvider::StartProvider(bool high_accuracy) { + state_ = + high_accuracy + ? device::mojom::GeolocationDiagnostics::ProviderState::kHighAccuracy + : device::mojom::GeolocationDiagnostics::ProviderState::kLowAccuracy; +} -void FakeLocationProvider::StopProvider() {} +void FakeLocationProvider::StopProvider() { + state_ = device::mojom::GeolocationDiagnostics::ProviderState::kStopped; +} const device::mojom::GeopositionResult* FakeLocationProvider::GetPosition() { return result_.get(); diff --git a/shell/browser/fake_location_provider.h b/shell/browser/fake_location_provider.h index dde3ec2dda56..7bb8248ced32 100644 --- a/shell/browser/fake_location_provider.h +++ b/shell/browser/fake_location_provider.h @@ -20,6 +20,8 @@ class FakeLocationProvider : public device::LocationProvider { FakeLocationProvider& operator=(const FakeLocationProvider&) = delete; // LocationProvider Implementation: + void FillDiagnostics( + device::mojom::GeolocationDiagnostics& diagnostics) override; void SetUpdateCallback( const LocationProviderUpdateCallback& callback) override; void StartProvider(bool high_accuracy) override; @@ -28,6 +30,8 @@ class FakeLocationProvider : public device::LocationProvider { void OnPermissionGranted() override; private: + device::mojom::GeolocationDiagnostics::ProviderState state_ = + device::mojom::GeolocationDiagnostics::ProviderState::kStopped; device::mojom::GeopositionResultPtr result_; LocationProviderUpdateCallback callback_; };