diff --git a/DEPS b/DEPS index ec3a83196c..07ba2b17b6 100644 --- a/DEPS +++ b/DEPS @@ -2,7 +2,7 @@ gclient_gn_args_from = 'src' vars = { 'chromium_version': - '132.0.6783.0', + '132.0.6787.0', 'node_version': 'v20.18.0', 'nan_version': diff --git a/patches/chromium/add_didinstallconditionalfeatures.patch b/patches/chromium/add_didinstallconditionalfeatures.patch index 95b29c5381..52e4ede72e 100644 --- a/patches/chromium/add_didinstallconditionalfeatures.patch +++ b/patches/chromium/add_didinstallconditionalfeatures.patch @@ -23,10 +23,10 @@ index ad0092ef2e13853e4bb8b923481559a043b00ab7..1c2dfd23f18733e21312992877ae1499 int32_t world_id) {} virtual void DidClearWindowObject() {} diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc -index f83572bbe5811a1cb537ec70bf12695ad8cb9cad..b68f9b7160a923f0804b7111635db47ade7294bd 100644 +index 6e8b3fbcc9c553a725bbd8e5a710be6be239a88b..ba7cb724f30582b51fd53cad99271b0651eff08c 100644 --- a/content/renderer/render_frame_impl.cc +++ b/content/renderer/render_frame_impl.cc -@@ -4782,6 +4782,12 @@ void RenderFrameImpl::DidCreateScriptContext(v8::Local context, +@@ -4781,6 +4781,12 @@ void RenderFrameImpl::DidCreateScriptContext(v8::Local context, observer.DidCreateScriptContext(context, world_id); } @@ -40,10 +40,10 @@ index f83572bbe5811a1cb537ec70bf12695ad8cb9cad..b68f9b7160a923f0804b7111635db47a int world_id) { for (auto& observer : observers_) diff --git a/content/renderer/render_frame_impl.h b/content/renderer/render_frame_impl.h -index 304664f5fb73974faf082809ad5211209d762d4c..ff33ffded912b9282bbdae697ea88f36f90f5176 100644 +index 764763cb6967cb365882083fc4c0572869cc962a..85d682d3233bd10fbe54a050280649e3a82f9a00 100644 --- a/content/renderer/render_frame_impl.h +++ b/content/renderer/render_frame_impl.h -@@ -652,6 +652,8 @@ class CONTENT_EXPORT RenderFrameImpl +@@ -651,6 +651,8 @@ class CONTENT_EXPORT RenderFrameImpl void DidObserveLayoutShift(double score, bool after_input_or_scroll) override; void DidCreateScriptContext(v8::Local context, int world_id) override; @@ -53,10 +53,10 @@ index 304664f5fb73974faf082809ad5211209d762d4c..ff33ffded912b9282bbdae697ea88f36 int world_id) override; void DidChangeScrollOffset() override; diff --git a/third_party/blink/public/web/web_local_frame_client.h b/third_party/blink/public/web/web_local_frame_client.h -index 26c92021ceb5dc5cead46f9dcb8c73dc502bcc8b..9a6984cffc8ff24e9c5caf9dae2b1b65595edb94 100644 +index 8ebdaf39d5cc0539b24b843d82937adbe12a51d1..201d2bfaf21a92274d475d9a790ca9334ffbdd92 100644 --- a/third_party/blink/public/web/web_local_frame_client.h +++ b/third_party/blink/public/web/web_local_frame_client.h -@@ -665,6 +665,9 @@ class BLINK_EXPORT WebLocalFrameClient { +@@ -664,6 +664,9 @@ class BLINK_EXPORT WebLocalFrameClient { virtual void DidCreateScriptContext(v8::Local, int32_t world_id) {} diff --git a/patches/chromium/add_ui_scopedcliboardwriter_writeunsaferawdata.patch b/patches/chromium/add_ui_scopedcliboardwriter_writeunsaferawdata.patch index d5ce66fcfe..acb9e21a24 100644 --- a/patches/chromium/add_ui_scopedcliboardwriter_writeunsaferawdata.patch +++ b/patches/chromium/add_ui_scopedcliboardwriter_writeunsaferawdata.patch @@ -8,12 +8,12 @@ was removed as part of the Raw Clipboard API scrubbing. https://bugs.chromium.org/p/chromium/issues/detail?id=1217643 diff --git a/ui/base/clipboard/scoped_clipboard_writer.cc b/ui/base/clipboard/scoped_clipboard_writer.cc -index 28df49366e87d17c831b8f941e30faa19cf36626..d68c58edeb6abec865f6ad051e5da2c0bdc7981d 100644 +index bbdd3598894f5455f890ffde1d3cf8076b9a9176..7b2724f8c2baa2461645e85c07b6487b93540251 100644 --- a/ui/base/clipboard/scoped_clipboard_writer.cc +++ b/ui/base/clipboard/scoped_clipboard_writer.cc -@@ -237,6 +237,16 @@ void ScopedClipboardWriter::WriteEncodedDataTransferEndpointForTesting( +@@ -227,6 +227,16 @@ void ScopedClipboardWriter::WriteData(const std::u16string& format, + } } - #endif // BUILDFLAG(IS_CHROMEOS_ASH) +void ScopedClipboardWriter::WriteUnsafeRawData(const std::u16string& format, + mojo_base::BigBuffer data) { @@ -29,10 +29,10 @@ index 28df49366e87d17c831b8f941e30faa19cf36626..d68c58edeb6abec865f6ad051e5da2c0 objects_.clear(); platform_representations_.clear(); diff --git a/ui/base/clipboard/scoped_clipboard_writer.h b/ui/base/clipboard/scoped_clipboard_writer.h -index 96ba9abb9b7efab79adbf299c6bd3b4f7a4501e1..0916b81ec5b3cb123185b7cff332120ee498fb57 100644 +index af932ade8d50f304be850dc1ff4f77b618c12c1f..a907fdebfa901938abded0eae203c093d8387f5b 100644 --- a/ui/base/clipboard/scoped_clipboard_writer.h +++ b/ui/base/clipboard/scoped_clipboard_writer.h -@@ -89,6 +89,10 @@ class COMPONENT_EXPORT(UI_BASE_CLIPBOARD) ScopedClipboardWriter { +@@ -88,6 +88,10 @@ class COMPONENT_EXPORT(UI_BASE_CLIPBOARD) ScopedClipboardWriter { // This is only used to write custom format data. void WriteData(const std::u16string& format, mojo_base::BigBuffer data); @@ -42,4 +42,4 @@ index 96ba9abb9b7efab79adbf299c6bd3b4f7a4501e1..0916b81ec5b3cb123185b7cff332120e + void WriteImage(const SkBitmap& bitmap); - #if BUILDFLAG(IS_CHROMEOS_LACROS) + // Mark the data to be written as confidential. diff --git a/patches/chromium/allow_disabling_blink_scheduler_throttling_per_renderview.patch b/patches/chromium/allow_disabling_blink_scheduler_throttling_per_renderview.patch index 7e46587b0b..32611a6cdf 100644 --- a/patches/chromium/allow_disabling_blink_scheduler_throttling_per_renderview.patch +++ b/patches/chromium/allow_disabling_blink_scheduler_throttling_per_renderview.patch @@ -155,7 +155,7 @@ index b5281ba47164159d10ca16b7641cfdc8a4bfbbef..734c055e1828d790f2abb80243bc10fa // Do not throttle if the page should be painting. bool is_visible = diff --git a/third_party/blink/renderer/core/exported/web_view_impl.h b/third_party/blink/renderer/core/exported/web_view_impl.h -index e85443e4492d31f043b50e4d6e51b1b36ee2c11e..cadc45e27f3d45fbf7a2edc713e1e1f5a714d01e 100644 +index bd7c22360193d52e1acf5a8dc82e3da34285ea37..78aabb76e02b7713d47242c28b0b7a3818faf6e9 100644 --- a/third_party/blink/renderer/core/exported/web_view_impl.h +++ b/third_party/blink/renderer/core/exported/web_view_impl.h @@ -448,6 +448,7 @@ class CORE_EXPORT WebViewImpl final : public WebView, diff --git a/patches/chromium/allow_setting_secondary_label_via_simplemenumodel.patch b/patches/chromium/allow_setting_secondary_label_via_simplemenumodel.patch index 2c5be44b11..092919951b 100644 --- a/patches/chromium/allow_setting_secondary_label_via_simplemenumodel.patch +++ b/patches/chromium/allow_setting_secondary_label_via_simplemenumodel.patch @@ -5,11 +5,11 @@ Subject: Allow setting secondary label via SimpleMenuModel Builds on https://chromium-review.googlesource.com/c/chromium/src/+/2208976 -diff --git a/ui/base/models/simple_menu_model.cc b/ui/base/models/simple_menu_model.cc -index fbf6043fc4322561438de7d09dfd9a4ec541af8a..e85a4a16e9090435e742fb127c0bc607c644b51b 100644 ---- a/ui/base/models/simple_menu_model.cc -+++ b/ui/base/models/simple_menu_model.cc -@@ -53,6 +53,11 @@ std::u16string SimpleMenuModel::Delegate::GetLabelForCommandId( +diff --git a/ui/menus/simple_menu_model.cc b/ui/menus/simple_menu_model.cc +index d30328dcd753afc86e642f8a9de409097795da92..9378991a4c21c4ed42df6d3a7396a9b8c55faf17 100644 +--- a/ui/menus/simple_menu_model.cc ++++ b/ui/menus/simple_menu_model.cc +@@ -54,6 +54,11 @@ std::u16string SimpleMenuModel::Delegate::GetLabelForCommandId( return std::u16string(); } @@ -21,7 +21,7 @@ index fbf6043fc4322561438de7d09dfd9a4ec541af8a..e85a4a16e9090435e742fb127c0bc607 ImageModel SimpleMenuModel::Delegate::GetIconForCommandId( int command_id) const { return ImageModel(); -@@ -338,6 +343,11 @@ void SimpleMenuModel::SetLabel(size_t index, const std::u16string& label) { +@@ -341,6 +346,11 @@ void SimpleMenuModel::SetLabel(size_t index, const std::u16string& label) { MenuItemsChanged(); } @@ -33,7 +33,7 @@ index fbf6043fc4322561438de7d09dfd9a4ec541af8a..e85a4a16e9090435e742fb127c0bc607 void SimpleMenuModel::SetMinorText(size_t index, const std::u16string& minor_text) { items_[ValidateItemIndex(index)].minor_text = minor_text; -@@ -433,6 +443,12 @@ std::u16string SimpleMenuModel::GetLabelAt(size_t index) const { +@@ -440,6 +450,12 @@ std::u16string SimpleMenuModel::GetLabelAt(size_t index) const { return items_[ValidateItemIndex(index)].label; } @@ -46,11 +46,11 @@ index fbf6043fc4322561438de7d09dfd9a4ec541af8a..e85a4a16e9090435e742fb127c0bc607 std::u16string SimpleMenuModel::GetMinorTextAt(size_t index) const { return items_[ValidateItemIndex(index)].minor_text; } -diff --git a/ui/base/models/simple_menu_model.h b/ui/base/models/simple_menu_model.h -index e7d5811973ab8e81c0a4c8e93ef8653e0aebded8..d43bcbc19564c49c87e10951f7d6a2ed4a027586 100644 ---- a/ui/base/models/simple_menu_model.h -+++ b/ui/base/models/simple_menu_model.h -@@ -99,6 +99,7 @@ class COMPONENT_EXPORT(UI_BASE) SimpleMenuModel : public MenuModel { +diff --git a/ui/menus/simple_menu_model.h b/ui/menus/simple_menu_model.h +index 7f327f34e7f5d1c8760c3a14b550b835457d8362..0b7fe12964aa0dadfc79427df1f4738c5a06ae65 100644 +--- a/ui/menus/simple_menu_model.h ++++ b/ui/menus/simple_menu_model.h +@@ -99,6 +99,7 @@ class COMPONENT_EXPORT(UI_MENUS) SimpleMenuModel : public MenuModel { // Some command ids have labels and icons that change over time. virtual bool IsItemForCommandIdDynamic(int command_id) const; virtual std::u16string GetLabelForCommandId(int command_id) const; @@ -58,7 +58,7 @@ index e7d5811973ab8e81c0a4c8e93ef8653e0aebded8..d43bcbc19564c49c87e10951f7d6a2ed // Gets the icon for the item with the specified id. virtual ImageModel GetIconForCommandId(int command_id) const; -@@ -218,6 +219,9 @@ class COMPONENT_EXPORT(UI_BASE) SimpleMenuModel : public MenuModel { +@@ -218,6 +219,9 @@ class COMPONENT_EXPORT(UI_MENUS) SimpleMenuModel : public MenuModel { // Sets the label for the item at |index|. void SetLabel(size_t index, const std::u16string& label); @@ -68,7 +68,7 @@ index e7d5811973ab8e81c0a4c8e93ef8653e0aebded8..d43bcbc19564c49c87e10951f7d6a2ed // Sets the minor text for the item at |index|. void SetMinorText(size_t index, const std::u16string& minor_text); -@@ -261,6 +265,7 @@ class COMPONENT_EXPORT(UI_BASE) SimpleMenuModel : public MenuModel { +@@ -261,6 +265,7 @@ class COMPONENT_EXPORT(UI_MENUS) SimpleMenuModel : public MenuModel { ui::MenuSeparatorType GetSeparatorTypeAt(size_t index) const override; int GetCommandIdAt(size_t index) const override; std::u16string GetLabelAt(size_t index) const override; @@ -76,7 +76,7 @@ index e7d5811973ab8e81c0a4c8e93ef8653e0aebded8..d43bcbc19564c49c87e10951f7d6a2ed std::u16string GetMinorTextAt(size_t index) const override; ImageModel GetMinorIconAt(size_t index) const override; bool IsItemDynamicAt(size_t index) const override; -@@ -300,6 +305,7 @@ class COMPONENT_EXPORT(UI_BASE) SimpleMenuModel : public MenuModel { +@@ -300,6 +305,7 @@ class COMPONENT_EXPORT(UI_MENUS) SimpleMenuModel : public MenuModel { int command_id = 0; ItemType type = TYPE_COMMAND; std::u16string label; diff --git a/patches/chromium/blink_local_frame.patch b/patches/chromium/blink_local_frame.patch index 7eb8e8dbaf..82ae364ebd 100644 --- a/patches/chromium/blink_local_frame.patch +++ b/patches/chromium/blink_local_frame.patch @@ -49,7 +49,7 @@ index 2f33ec660a975522c473ecd50e633b5edaca707f..65221a51927d9f44bd6adbad88fa1144 // 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 e3c85632cffc85a228082432dc25cb49ee184890..0778fbf495f43257b1ea218e18776c1893589f3e 100644 +index 6b64f27fb8f6dccfa20caea63407edb3adc5d045..0614c5e043fd0b88397863e02fd23feee2c19016 100644 --- a/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc @@ -746,10 +746,6 @@ bool LocalFrame::DetachImpl(FrameDetachType type) { 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 a5eb7302a8..044d019667 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 f40c70d840845fdb6171ab6ba4cdcf92dbfd9965..7d762b40f44d8dc3cd1cb63c56a188f9 "//base", "//build:branding_buildflags", diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn -index d3564c952db123a9c97627b443b94bc75f8d8013..c45a8a6cc011384dd21094ed69d0c942ca151b70 100644 +index 246010af5d09afcdd46188c70f74e24fc093a4b6..7b154ad07b3740e6e5f48bc8b5eafec0ab8be5c2 100644 --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -4533,7 +4533,7 @@ static_library("browser") { +@@ -4518,7 +4518,7 @@ static_library("browser") { ] } @@ -46,10 +46,10 @@ index d3564c952db123a9c97627b443b94bc75f8d8013..c45a8a6cc011384dd21094ed69d0c942 # than here in :chrome_dll. deps += [ "//chrome:packed_resources_integrity_header" ] diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn -index be11ed1b12bc31716c02b92393089ce876dd2c50..80266e8723ba40e244df5adf095f2cfc80cda192 100644 +index f577f0e77c26b246718ad3c792332472ecd04792..93fb0b75912ae1bd862a2f3afb07014d157e0ec2 100644 --- a/chrome/test/BUILD.gn +++ b/chrome/test/BUILD.gn -@@ -6734,9 +6734,12 @@ test("unit_tests") { +@@ -6753,9 +6753,12 @@ test("unit_tests") { "//chrome/notification_helper", ] @@ -63,7 +63,7 @@ index be11ed1b12bc31716c02b92393089ce876dd2c50..80266e8723ba40e244df5adf095f2cfc "//chrome//services/util_win:unit_tests", "//chrome/app:chrome_dll_resources", "//chrome/app:win_unit_tests", -@@ -7682,6 +7685,10 @@ test("unit_tests") { +@@ -7696,6 +7699,10 @@ test("unit_tests") { "../browser/performance_manager/policies/background_tab_loading_policy_unittest.cc", ] @@ -74,7 +74,7 @@ index be11ed1b12bc31716c02b92393089ce876dd2c50..80266e8723ba40e244df5adf095f2cfc sources += [ # The importer code is not used on Android. "../common/importer/firefox_importer_utils_unittest.cc", -@@ -7734,7 +7741,6 @@ test("unit_tests") { +@@ -7748,7 +7755,6 @@ test("unit_tests") { # Non-android deps for "unit_tests" target. deps += [ "../browser/screen_ai:screen_ai_install_state", diff --git a/patches/chromium/build_expose_webplugininfo_interface_to_electron.patch b/patches/chromium/build_expose_webplugininfo_interface_to_electron.patch index 0b643d1e0e..2731cd7ad1 100644 --- a/patches/chromium/build_expose_webplugininfo_interface_to_electron.patch +++ b/patches/chromium/build_expose_webplugininfo_interface_to_electron.patch @@ -7,10 +7,10 @@ Allows implementing electron::mojom::ElectronPluginInfoHost interface which provides plugin details between browser<->renderer. diff --git a/content/public/common/BUILD.gn b/content/public/common/BUILD.gn -index 0b7e43edf99ce901141ca9271f7130658525fd23..88dbc54c6b7d857cc0c572eb831d457348af236c 100644 +index 4695de42ecfa44f2339957b6ca8e3420b39b8a42..ac694247d243ddbb61f884646d4d3006e30ec367 100644 --- a/content/public/common/BUILD.gn +++ b/content/public/common/BUILD.gn -@@ -370,6 +370,7 @@ mojom("interfaces") { +@@ -376,6 +376,7 @@ mojom("interfaces") { "//content/common/*", "//extensions/common:mojom", "//extensions/common:mojom_blink", diff --git a/patches/chromium/can_create_window.patch b/patches/chromium/can_create_window.patch index 03fc5a1777..070f45cd7a 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 bae7704ee1aaeeaafc7a3f2e0006f33ece8a4fa7..ec3fc7ab9e3ea915bcfe672f19a31ebf72b7e0cc 100644 +index 4babd9f35aa9b7bb4cc23b190671d2adc509942e..9f530a1a768d27070f10fc40c6af51f56f42f0ca 100644 --- a/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc -@@ -9115,6 +9115,7 @@ void RenderFrameHostImpl::CreateNewWindow( +@@ -9123,6 +9123,7 @@ void RenderFrameHostImpl::CreateNewWindow( last_committed_origin_, params->window_container_type, params->target_url, params->referrer.To(), params->frame_name, params->disposition, *params->features, @@ -66,10 +66,10 @@ index 8e571dc1371cf2aa7c8354f0b4e492e0d030b485..c878169e7838849cbc23df2ed94ca65d // 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 122e289519e1ddd2d20cbe0a0e9dbdf5c18f22fd..c5f3e3b56fc6c4407a4205894a7ab2a8d7cfa5c4 100644 +index 225e8ebcd6ffc5396268c002c53307b81680be09..981c5a6919201e7c0557330833d6756aea08c8d6 100644 --- a/content/public/browser/content_browser_client.cc +++ b/content/public/browser/content_browser_client.cc -@@ -766,6 +766,8 @@ bool ContentBrowserClient::CanCreateWindow( +@@ -774,6 +774,8 @@ bool ContentBrowserClient::CanCreateWindow( const std::string& frame_name, WindowOpenDisposition disposition, const blink::mojom::WindowFeatures& features, @@ -79,7 +79,7 @@ index 122e289519e1ddd2d20cbe0a0e9dbdf5c18f22fd..c5f3e3b56fc6c4407a4205894a7ab2a8 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 9bcf9d3a329a13a870bf3770def8c509fd105a76..c79526fab82974825c7500d927a02db8700aac6e 100644 +index a521f0fc8b3acc45e93996997a26e05771b56a03..47efdce8d0aacf331d7b54ca787dc0afd1595029 100644 --- a/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h @@ -196,6 +196,7 @@ class NetworkService; @@ -90,7 +90,7 @@ index 9bcf9d3a329a13a870bf3770def8c509fd105a76..c79526fab82974825c7500d927a02db8 } // namespace network namespace sandbox { -@@ -1331,6 +1332,8 @@ class CONTENT_EXPORT ContentBrowserClient { +@@ -1339,6 +1340,8 @@ class CONTENT_EXPORT ContentBrowserClient { const std::string& frame_name, WindowOpenDisposition disposition, const blink::mojom::WindowFeatures& features, @@ -148,10 +148,10 @@ index 19dff7ea3f62e5095ee03335978dac5d58cc1465..cbec82fe1fbc43c188ac9c0cf318ee49 // 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 a3dbef2ff75b44e0b0b431d3a9e32ea6eb1d0208..f83572bbe5811a1cb537ec70bf12695ad8cb9cad 100644 +index 0cbe72d5fb0d564243e596e5b6eea8cb9f181fc1..6e8b3fbcc9c553a725bbd8e5a710be6be239a88b 100644 --- a/content/renderer/render_frame_impl.cc +++ b/content/renderer/render_frame_impl.cc -@@ -6855,6 +6855,10 @@ WebView* RenderFrameImpl::CreateNewWindow( +@@ -6848,6 +6848,10 @@ WebView* RenderFrameImpl::CreateNewWindow( request.HasUserGesture(), GetWebFrame()->IsAdFrame(), GetWebFrame()->IsAdScriptInStack()); diff --git a/patches/chromium/disable_compositor_recycling.patch b/patches/chromium/disable_compositor_recycling.patch index afdd0f085b..e30e626e64 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 a11678b06a83132b91fed2f6728829ec12588acb..7449ac09048931b56be0649fde640812c104a405 100644 +index e305d25a8f2a34ac90f4d503a9c74dcc6c553cdf..17625e389a23b8620853e66b8e0edd69d561d9a2 100644 --- a/content/browser/renderer_host/render_widget_host_view_mac.mm +++ b/content/browser/renderer_host/render_widget_host_view_mac.mm @@ -559,7 +559,11 @@ 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 4642fdeca3..d7f4e0d3ac 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 09aeff0a2303ab5e3629677585c8bbb9313acc1f..c28593e409784e8de770eec4cb9b4e30e6de0dbf 100644 +index 358225da145e73aedaab16f4dad3199411715c04..9c0a211ae8d5b4238e0dc663d4a3048367a80e34 100644 --- a/ui/native_theme/native_theme.cc +++ b/ui/native_theme/native_theme.cc -@@ -208,6 +208,8 @@ NativeTheme::NativeTheme(bool should_use_dark_colors, +@@ -211,6 +211,8 @@ NativeTheme::NativeTheme(bool should_use_dark_colors, NativeTheme::~NativeTheme() = default; bool NativeTheme::ShouldUseDarkColors() const { @@ -26,7 +26,7 @@ index 09aeff0a2303ab5e3629677585c8bbb9313acc1f..c28593e409784e8de770eec4cb9b4e30 } diff --git a/ui/native_theme/native_theme.h b/ui/native_theme/native_theme.h -index c8e200ba27bd5e9307469ea8fb4e3f8e8466877d..7add0446eaa276bbfbbb7bf4eb90f8b6684da61d 100644 +index c49860df0c20ca3b34a10a3d522b8b5e6930d46d..f3e6e07037d474c5fdc9078e52096f51ae4bdea6 100644 --- a/ui/native_theme/native_theme.h +++ b/ui/native_theme/native_theme.h @@ -445,6 +445,23 @@ class NATIVE_THEME_EXPORT NativeTheme { @@ -53,14 +53,14 @@ index c8e200ba27bd5e9307469ea8fb4e3f8e8466877d..7add0446eaa276bbfbbb7bf4eb90f8b6 // Returns a shared instance of the native theme that should be used for web // rendering. Do not use it in a normal application context (i.e. browser). // The returned object should not be deleted by the caller. This function is -@@ -673,6 +690,7 @@ class NATIVE_THEME_EXPORT NativeTheme { +@@ -689,6 +706,7 @@ class NATIVE_THEME_EXPORT NativeTheme { PreferredColorScheme preferred_color_scheme_ = PreferredColorScheme::kLight; PreferredContrast preferred_contrast_ = PreferredContrast::kNoPreference; std::optional caret_blink_interval_; + ThemeSource theme_source_ = ThemeSource::kSystem; - SEQUENCE_CHECKER(sequence_checker_); - }; + // Obtaining the PrefersAlwaysShowScrollbar system setting can be expensive, + // so it is cached in this boolean. diff --git a/ui/native_theme/native_theme_win.cc b/ui/native_theme/native_theme_win.cc index c1523bbdbf16e1df1bf158b7b053dce09116f2fc..06831ec767f6ba81e76f52322fc2d81a45c2c275 100644 --- a/ui/native_theme/native_theme_win.cc diff --git a/patches/chromium/feat_allow_usage_of_sccontentsharingpicker_on_supported_platforms.patch b/patches/chromium/feat_allow_usage_of_sccontentsharingpicker_on_supported_platforms.patch index a995a73da9..a97c5a7023 100644 --- a/patches/chromium/feat_allow_usage_of_sccontentsharingpicker_on_supported_platforms.patch +++ b/patches/chromium/feat_allow_usage_of_sccontentsharingpicker_on_supported_platforms.patch @@ -311,7 +311,7 @@ index 128bca8bb64113418551a20164f67ef5e5a88253..93f86ec79364db1f46c5d2eb015a11cf // Although ScreenCaptureKit is available in 12.3 there were some bugs that diff --git a/content/browser/renderer_host/media/in_process_video_capture_device_launcher.cc b/content/browser/renderer_host/media/in_process_video_capture_device_launcher.cc -index 5b76ef79789414fd1f18b0629873e7722c9fbd1c..fff10d51944ba27556b97abc3222308e440645cd 100644 +index abd86442bb1cd2ce77f9dd1f24d22b356517a67f..4195075121859047fd1d3c6fdf45fe35f742a3e1 100644 --- a/content/browser/renderer_host/media/in_process_video_capture_device_launcher.cc +++ b/content/browser/renderer_host/media/in_process_video_capture_device_launcher.cc @@ -329,8 +329,16 @@ void InProcessVideoCaptureDeviceLauncher::LaunchDeviceAsync( 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 0568fa9320..e2a11873ec 100644 --- a/patches/chromium/feat_enable_offscreen_rendering_with_viz_compositor.patch +++ b/patches/chromium/feat_enable_offscreen_rendering_with_viz_compositor.patch @@ -90,7 +90,7 @@ index 8af69cac78b7488d28f1f05ccb174793fe5148cd..9f74e511c263d147b5fbe81fe100d217 private: const HWND hwnd_; diff --git a/components/viz/service/BUILD.gn b/components/viz/service/BUILD.gn -index c72cff69afab53000392220abc7decde1236e178..a94783f6dee223294d1ac0d332067b490303bc98 100644 +index 964dc5c3aa8440fd3076f2198b2c89e9b8b82816..cbfdf25e7f4881fb9b6b3c7425702ea0b22e51af 100644 --- a/components/viz/service/BUILD.gn +++ b/components/viz/service/BUILD.gn @@ -172,6 +172,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 0f34e6c21c..c4f3a72e93 100644 --- a/patches/chromium/feat_expose_raw_response_headers_from_urlloader.patch +++ b/patches/chromium/feat_expose_raw_response_headers_from_urlloader.patch @@ -112,7 +112,7 @@ index 3450c15835d8b792f37764f6edc4a4560be435ef..b1034aa141d6121f8e1524fb34a28a04 string mime_type; diff --git a/services/network/url_loader.cc b/services/network/url_loader.cc -index 07142dacbb70d8610604d80328a1176efc1cf2c0..aa1bd9c89083c20a7455a97dd5b2d6e5ce1dc123 100644 +index 9e9b917e3f2aa9a56d4db931211828a913ed7f40..05d82fa5dd20acf84d33ca92bddedb9c6132ac36 100644 --- a/services/network/url_loader.cc +++ b/services/network/url_loader.cc @@ -598,6 +598,9 @@ URLLoader::URLLoader( 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 212dccbc0d..d3f640b4bd 100644 --- a/patches/chromium/fix_return_v8_value_from_localframe_requestexecutescript.patch +++ b/patches/chromium/fix_return_v8_value_from_localframe_requestexecutescript.patch @@ -64,7 +64,7 @@ index cba373664bec3a32abad6fe0396bd67b53b7e67f..7a985067b1371604644d48159f2f5aa7 #endif // THIRD_PARTY_BLINK_PUBLIC_WEB_WEB_SCRIPT_EXECUTION_CALLBACK_H_ diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc -index 0778fbf495f43257b1ea218e18776c1893589f3e..61914f3d8f580bcd5b67b6fce9e967da472b33d8 100644 +index 0614c5e043fd0b88397863e02fd23feee2c19016..8549807e503c70c4d080b726e89972b71c60f3d3 100644 --- a/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc @@ -3131,6 +3131,7 @@ void LocalFrame::RequestExecuteScript( @@ -85,10 +85,10 @@ index 0778fbf495f43257b1ea218e18776c1893589f3e..61914f3d8f580bcd5b67b6fce9e967da 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 72722ddbecb7a006ec407b374c8d75c5054f9574..cb4c93a8356f35e5766e843006161143e539666f 100644 +index acbb40738b38a5c029ca89473927b53ad9a43e16..d9fa5bb2cfff5a08d884358c4b4e4ffbac80e7ea 100644 --- a/third_party/blink/renderer/core/frame/local_frame.h +++ b/third_party/blink/renderer/core/frame/local_frame.h -@@ -818,6 +818,7 @@ class CORE_EXPORT LocalFrame final +@@ -824,6 +824,7 @@ class CORE_EXPORT LocalFrame final mojom::blink::EvaluationTiming, mojom::blink::LoadEventBlockingOption, WebScriptExecutionCallback, @@ -97,7 +97,7 @@ index 72722ddbecb7a006ec407b374c8d75c5054f9574..cb4c93a8356f35e5766e843006161143 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 b719b08633f5b705aa76283440a9f4d09d7ee472..44e5535f3117ef267f0bddcc34598c4214cdff7e 100644 +index e169f07a251ae3d00058e5831b104cff2b1d412c..a85f0ae8a0536efa5f6d4c56d65d414a7be8ec40 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 @@ -968,6 +968,7 @@ void LocalFrameMojoHandler::JavaScriptExecuteRequestInIsolatedWorld( diff --git a/patches/chromium/fix_select_the_first_menu_item_when_opened_via_keyboard.patch b/patches/chromium/fix_select_the_first_menu_item_when_opened_via_keyboard.patch index 74697c3710..97f1efb217 100644 --- a/patches/chromium/fix_select_the_first_menu_item_when_opened_via_keyboard.patch +++ b/patches/chromium/fix_select_the_first_menu_item_when_opened_via_keyboard.patch @@ -182,7 +182,7 @@ index b0d033493973054d3fb140c63da77eda46d60dce..da3f1732e79802b164f019455a61990c std::optional corners, std::optional show_menu_host_duration_histogram) override; diff --git a/ui/views/controls/menu/menu_runner_impl_cocoa.mm b/ui/views/controls/menu/menu_runner_impl_cocoa.mm -index c585f056973e2f8b299e7af81c384b67ad74958b..2e0c2d1e5cfa1ca7306e5687b5fda93f0705c477 100644 +index d9ee2469c6f5e2e9eb674013740a97c9fd201a7c..8602f6cd6afd77c8c77561207f994b217023e537 100644 --- a/ui/views/controls/menu/menu_runner_impl_cocoa.mm +++ b/ui/views/controls/menu/menu_runner_impl_cocoa.mm @@ -69,6 +69,7 @@ diff --git a/patches/chromium/frame_host_manager.patch b/patches/chromium/frame_host_manager.patch index 41650f102c..1e70aa5fe1 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 c3c1885922c1b1c51ca251e931d5efd1e1e40933..a67c4d90a11bac96daea52fd20d656692d438217 100644 +index cc0f32c6f27a32a41290bdc23447f809770482aa..e51f29ec59a86950c2fb74292ecb4db669719478 100644 --- a/content/browser/renderer_host/render_frame_host_manager.cc +++ b/content/browser/renderer_host/render_frame_host_manager.cc -@@ -4504,6 +4504,9 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest( +@@ -4515,6 +4515,9 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest( request->ResetStateForSiteInstanceChange(); } @@ -20,7 +20,7 @@ index c3c1885922c1b1c51ca251e931d5efd1e1e40933..a67c4d90a11bac96daea52fd20d65669 } diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h -index c79526fab82974825c7500d927a02db8700aac6e..e8943d4955aab91793fef8d43347dcd00933d7b8 100644 +index 47efdce8d0aacf331d7b54ca787dc0afd1595029..c1a6d33d248255eb2b6f391062816f6a3fd38590 100644 --- a/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h @@ -337,6 +337,11 @@ class CONTENT_EXPORT ContentBrowserClient { diff --git a/patches/chromium/hack_to_allow_gclient_sync_with_host_os_mac_on_linux_in_ci.patch b/patches/chromium/hack_to_allow_gclient_sync_with_host_os_mac_on_linux_in_ci.patch index cac0434086..f15822c086 100644 --- a/patches/chromium/hack_to_allow_gclient_sync_with_host_os_mac_on_linux_in_ci.patch +++ b/patches/chromium/hack_to_allow_gclient_sync_with_host_os_mac_on_linux_in_ci.patch @@ -11,7 +11,7 @@ If removing this patch causes no sync failures, it's safe to delete :+1: Ref https://chromium-review.googlesource.com/c/chromium/src/+/2953903 diff --git a/tools/clang/scripts/update.py b/tools/clang/scripts/update.py -index 78a91eaa8150d92c2a5481ece8174082fc10f5b2..b94dfcf8b56115c82cb1194feb7c791b5a31b895 100755 +index a07f3fff802db2eb1fcc496ab33e76d24ef1dbab..a157fc3ae1f637d3fc4b2748e0e65b251d8164a6 100755 --- a/tools/clang/scripts/update.py +++ b/tools/clang/scripts/update.py @@ -304,6 +304,8 @@ def GetDefaultHostOs(): diff --git a/patches/chromium/mas_avoid_private_macos_api_usage.patch.patch b/patches/chromium/mas_avoid_private_macos_api_usage.patch.patch index d6f44648f0..bd64f1773d 100644 --- a/patches/chromium/mas_avoid_private_macos_api_usage.patch.patch +++ b/patches/chromium/mas_avoid_private_macos_api_usage.patch.patch @@ -35,7 +35,7 @@ system font by checking if it's kCTFontPriorityAttribute is set to system priority. diff --git a/base/BUILD.gn b/base/BUILD.gn -index 00bf31f3b8fd7a144281406177f694f3afb42d91..273ebd2260f278c7a7f279d59aea8684a0d5eaeb 100644 +index de197a0826f550f39c2438b5bcd53e7f1d463f1b..71d826841792ba99f1d2afca152332e7ff65ee1a 100644 --- a/base/BUILD.gn +++ b/base/BUILD.gn @@ -1040,6 +1040,7 @@ component("base") { @@ -198,17 +198,17 @@ index e7a65e97b51d93bff864889813317fb7c6ffc846..bb1fc0c99164ae4bdaaaa78e87c30e88 using crypto::AppleKeychain; diff --git a/components/remote_cocoa/app_shim/BUILD.gn b/components/remote_cocoa/app_shim/BUILD.gn -index 1458e7d8edcf2fe17b0ab09b8552bdd817b700f9..f5ebc83573ef3fe7e50910cb8ff1ae33fbb7c35b 100644 +index da8b246916811fbee1e63d0aa95be9fa3ae12bfb..3bcd78507a15bb12ffe71a5f67e756000ca2633a 100644 --- a/components/remote_cocoa/app_shim/BUILD.gn +++ b/components/remote_cocoa/app_shim/BUILD.gn -@@ -86,6 +86,7 @@ component("app_shim") { - "//ui/gfx", - "//ui/gfx/geometry", - "//ui/strings:ui_strings_grit", +@@ -75,6 +75,7 @@ component("app_shim") { + "//components/crash/core/common", + "//components/remote_cocoa/common:mojo", + "//components/system_media_controls", + "//electron/build/config:generate_mas_config", - ] - frameworks = [ - "Cocoa.framework", + "//mojo/public/cpp/bindings", + "//net", + "//ui/accelerated_widget_mac", diff --git a/components/remote_cocoa/app_shim/application_bridge.mm b/components/remote_cocoa/app_shim/application_bridge.mm index e9f4e5131238b9fb5f1b4b3e90a0cb84a7fc15b4..8b5f4cae3123ac5480ad73f0c873fca0d62f7c9f 100644 --- a/components/remote_cocoa/app_shim/application_bridge.mm @@ -453,7 +453,7 @@ index f71ea08f64ab5cd36f6bd1e2d3d2908d4de80ba6..4b3450b3bd44a35964bd935453861101 // Beware: This view was briefly removed (in favor of a bare CALayer) in // https://crrev.com/c/1236675. The ordering of unassociated layers relative diff --git a/components/viz/service/BUILD.gn b/components/viz/service/BUILD.gn -index 050ff22c63d6aba75ef1b41e5ffe3869e016a5a7..c72cff69afab53000392220abc7decde1236e178 100644 +index d1a60edcb29d5d2484badf6cb2853871c1e7bcec..964dc5c3aa8440fd3076f2198b2c89e9b8b82816 100644 --- a/components/viz/service/BUILD.gn +++ b/components/viz/service/BUILD.gn @@ -376,6 +376,7 @@ viz_component("service") { @@ -464,7 +464,7 @@ index 050ff22c63d6aba75ef1b41e5ffe3869e016a5a7..c72cff69afab53000392220abc7decde } if (is_android || use_ozone) { -@@ -650,6 +651,7 @@ viz_source_set("unit_tests") { +@@ -656,6 +657,7 @@ viz_source_set("unit_tests") { "display_embedder/software_output_device_mac_unittest.mm", ] frameworks = [ "IOSurface.framework" ] @@ -558,10 +558,10 @@ index 13c3fe06c417a2565e6af4552930a56c44a01fb3..ef67191f5d010451cde2b084d6165c7d return kAttributes; } diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn -index 0242fd89a8856c7a122c51fead876c76f637f963..88aab428d5fe1daf747216545e8d176a2be90842 100644 +index cb085a13580106f0218285dc5ad51912d60735d2..f51437492310908f582d3d68cf460c1f8892436c 100644 --- a/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn -@@ -320,6 +320,7 @@ source_set("browser") { +@@ -323,6 +323,7 @@ source_set("browser") { "//ui/strings:ax_strings", "//ui/touch_selection", "//v8:v8_version", @@ -604,7 +604,7 @@ index 2285564db47ef15eb9a83affd1e481b5671c3940..cf5e79a5540d8208c34579d7e8b5a571 // 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 5e4a6756da36b544a419319acb1a2ced383fa0bf..a11678b06a83132b91fed2f6728829ec12588acb 100644 +index 34fb29866785ef07c6dca4cfc85966df1c479b5f..e305d25a8f2a34ac90f4d503a9c74dcc6c553cdf 100644 --- a/content/browser/renderer_host/render_widget_host_view_mac.mm +++ b/content/browser/renderer_host/render_widget_host_view_mac.mm @@ -48,6 +48,7 @@ @@ -677,10 +677,10 @@ index 5e4a6756da36b544a419319acb1a2ced383fa0bf..a11678b06a83132b91fed2f6728829ec /////////////////////////////////////////////////////////////////////////////// diff --git a/content/common/BUILD.gn b/content/common/BUILD.gn -index ead12a24cc3045ba0a732dac08b6ee4c3b70a521..853162df29df5f5deb87d7d607753831c0a5ebb7 100644 +index 357c5a754f6b3f2992646dda4955aa5b53e0b84f..faf49fec0f54dfb258945e59bc7ee3d15a8a21e7 100644 --- a/content/common/BUILD.gn +++ b/content/common/BUILD.gn -@@ -285,6 +285,7 @@ source_set("common") { +@@ -284,6 +284,7 @@ source_set("common") { "//ui/shell_dialogs", "//url", "//url/ipc:url_ipc", @@ -689,10 +689,10 @@ index ead12a24cc3045ba0a732dac08b6ee4c3b70a521..853162df29df5f5deb87d7d607753831 defines = [] diff --git a/content/renderer/BUILD.gn b/content/renderer/BUILD.gn -index 27ab1bc3f30877a498ce5061babe6005e6d4678c..d6a03a5725d2f1eb7d4d3e4f8ce2b42ff0725a24 100644 +index 55a3baeeec34e9e89b75e93cd17486baef6e550e..cdd5750c7a84e38501e4b6d24e6a2c365b9ce5f1 100644 --- a/content/renderer/BUILD.gn +++ b/content/renderer/BUILD.gn -@@ -336,6 +336,7 @@ target(link_target_type, "renderer") { +@@ -334,6 +334,7 @@ target(link_target_type, "renderer") { "//ui/surface", "//url", "//v8", @@ -771,10 +771,10 @@ index a1068589ad844518038ee7bc15a3de9bc5cba525..1ff781c49f086ec8015c7d3c44567dbe } // namespace content diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn -index e774b57280006d8e63452fd32d50c387ac298a87..bc41731579964449b678689184bc734724948827 100644 +index f5130062e82601932c346b348cfbbddc218fcca0..8c0998257db56d02ceeab8543cc74fa1018f053b 100644 --- a/content/test/BUILD.gn +++ b/content/test/BUILD.gn -@@ -639,6 +639,7 @@ static_library("test_support") { +@@ -640,6 +640,7 @@ static_library("test_support") { "//url", "//url/mojom:url_mojom_gurl", "//v8", @@ -782,7 +782,7 @@ index e774b57280006d8e63452fd32d50c387ac298a87..bc41731579964449b678689184bc7347 ] data_deps = [ -@@ -1108,6 +1109,7 @@ static_library("browsertest_support") { +@@ -1109,6 +1110,7 @@ static_library("browsertest_support") { } configs += [ "//v8:external_startup_data" ] @@ -1612,10 +1612,10 @@ index c8171f0527fe5194f0ea73b57c4444d4c630fbc4..c2ac4da580e3e7f749a0a4de1e859af6 // Accessible object if (AXElementWrapper::IsValidElement(value)) { diff --git a/ui/base/BUILD.gn b/ui/base/BUILD.gn -index 8ce9bc840e32fde0f058733376e74e1238a69a7f..cdf34bc28085df368e14fe11df28df019370a69d 100644 +index d7541d80aab34a06348359fbcdb41c7d45579b6a..b72f3f34cbe5059940025c2dd89dfa89960436d1 100644 --- a/ui/base/BUILD.gn +++ b/ui/base/BUILD.gn -@@ -386,6 +386,13 @@ component("base") { +@@ -380,6 +380,13 @@ component("base") { sources += [ "resource/resource_bundle_lacros.cc" ] } @@ -1629,7 +1629,7 @@ index 8ce9bc840e32fde0f058733376e74e1238a69a7f..cdf34bc28085df368e14fe11df28df01 if (is_ios) { sources += [ "device_form_factor_ios.mm", -@@ -537,6 +544,12 @@ component("base") { +@@ -530,6 +537,12 @@ component("base") { "//url", ] @@ -1782,7 +1782,7 @@ index 29ae2da6a8a2c2a612dfb92f7f9c03ca5fa306b1..440c139a32a0c205e77b657d4aab6468 // Query the display's refresh rate. if (@available(macos 12.0, *)) { diff --git a/ui/gfx/BUILD.gn b/ui/gfx/BUILD.gn -index 3fe00beafd7b6b4bb05c2da94dbb0d7c0076fa87..0b5460349192b7f2b8dc628a81213690f99d8f94 100644 +index 762ffff0e4a7ffc40e85dc82f5f0f243a447a85d..db4fbc65fded3beb58e6c336e1d4c4d33d3b2c25 100644 --- a/ui/gfx/BUILD.gn +++ b/ui/gfx/BUILD.gn @@ -335,6 +335,12 @@ component("gfx") { @@ -1837,10 +1837,10 @@ index fe3f85073e31de487a08e57d7f9b07aa4eccf8f3..cf5b07203c8bd559a404600cc98cc8ec // enough. return PlatformFontMac::SystemFontType::kGeneral; diff --git a/ui/views/BUILD.gn b/ui/views/BUILD.gn -index ce482dc38f27ac1452df13d8c4152a092fb2a3bc..d4b5fffcf178523ace8db2867ae38d7900c7997d 100644 +index b0032a1d1d23acb43b702295ac7a5e3445610fbe..a1568062e4657f787fb28d04d1ffecc9d77d1376 100644 --- a/ui/views/BUILD.gn +++ b/ui/views/BUILD.gn -@@ -722,6 +722,8 @@ component("views") { +@@ -723,6 +723,8 @@ component("views") { "IOSurface.framework", "QuartzCore.framework", ] @@ -1849,7 +1849,7 @@ index ce482dc38f27ac1452df13d8c4152a092fb2a3bc..d4b5fffcf178523ace8db2867ae38d79 } if (is_win) { -@@ -1155,6 +1157,8 @@ source_set("test_support") { +@@ -1157,6 +1159,8 @@ source_set("test_support") { "//ui/base/mojom:ui_base_types", ] diff --git a/patches/chromium/notification_provenance.patch b/patches/chromium/notification_provenance.patch index 8f840728df..08190d7a64 100644 --- a/patches/chromium/notification_provenance.patch +++ b/patches/chromium/notification_provenance.patch @@ -7,7 +7,7 @@ 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 412e1fb55f901c573455fbea722f5f371e0c0566..725b67ea1ab00bc3a834221a77e2b722b8720032 100644 +index ff536e07810d0360d4125587bcc90a2bd3f3ff12..2f632906947fc9b02eaf8547dce5e2b5a9ca46a3 100644 --- a/chrome/browser/notifications/platform_notification_service_impl.cc +++ b/chrome/browser/notifications/platform_notification_service_impl.cc @@ -218,6 +218,7 @@ bool PlatformNotificationServiceImpl::WasClosedProgrammatically( diff --git a/patches/chromium/osr_shared_texture_remove_keyed_mutex_on_win_dxgi.patch b/patches/chromium/osr_shared_texture_remove_keyed_mutex_on_win_dxgi.patch index 0f41344830..4c29350c5c 100644 --- a/patches/chromium/osr_shared_texture_remove_keyed_mutex_on_win_dxgi.patch +++ b/patches/chromium/osr_shared_texture_remove_keyed_mutex_on_win_dxgi.patch @@ -36,7 +36,7 @@ index 2096591596a26464ab8f71a399ccb16a04edfd59..9eb966b3ddc3551d6beeff123071b2c9 Microsoft::WRL::ComPtr d3d11_texture; diff --git a/media/video/renderable_gpu_memory_buffer_video_frame_pool.cc b/media/video/renderable_gpu_memory_buffer_video_frame_pool.cc -index 9c2335c7c96b037cf45882fb0fadb7eeacc14745..7a0a3259975161efceea9a338cea52875890bacf 100644 +index b27bcf13d3a5f7c8e85a677766718f4362467022..df1b2d697f7cce028d0d6d86190b3218b8f662a5 100644 --- a/media/video/renderable_gpu_memory_buffer_video_frame_pool.cc +++ b/media/video/renderable_gpu_memory_buffer_video_frame_pool.cc @@ -193,7 +193,7 @@ gfx::Size GetBufferSizeInPixelsForVideoPixelFormat( diff --git a/patches/chromium/partially_revert_is_newly_created_to_allow_for_browser_initiated.patch b/patches/chromium/partially_revert_is_newly_created_to_allow_for_browser_initiated.patch index 3db1c8adbf..910bb1dd37 100644 --- a/patches/chromium/partially_revert_is_newly_created_to_allow_for_browser_initiated.patch +++ b/patches/chromium/partially_revert_is_newly_created_to_allow_for_browser_initiated.patch @@ -10,10 +10,10 @@ an about:blank check to this area. Ref: https://chromium-review.googlesource.com/c/chromium/src/+/5403876 diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc -index 5a206236d3912853419c88d4fb4aaedf0764005b..176537ad2afd0a171a34c785a137f7da7c0db3df 100644 +index b03f7c5517681454caf3a0abf527088f63cfea94..61a6856c84c808b4b01c5f3643e7745f21aff357 100644 --- a/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc -@@ -783,8 +783,8 @@ void VerifyThatBrowserAndRendererCalculatedOriginsToCommitMatch( +@@ -784,8 +784,8 @@ void VerifyThatBrowserAndRendererCalculatedOriginsToCommitMatch( // TODO(crbug.com/40092527): Consider adding a separate boolean that // tracks this instead of piggybacking `origin_calculation_debug_info`. if (renderer_side_origin.opaque() && diff --git a/patches/chromium/printing.patch b/patches/chromium/printing.patch index 39a6150a2f..749e4088bb 100644 --- a/patches/chromium/printing.patch +++ b/patches/chromium/printing.patch @@ -860,10 +860,10 @@ index 9c91fdf50b38ad437279eaada4359a7a95911d07..8eed4887949d0c30f067d86aaa971ee5 ScriptingThrottler scripting_throttler_; diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn -index 88aab428d5fe1daf747216545e8d176a2be90842..edd5a0c6d690d8e9aa9d649b3c130722c2779e7c 100644 +index f51437492310908f582d3d68cf460c1f8892436c..dbff945f9e54a5c947c23efff4d11d57d07b8a4e 100644 --- a/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn -@@ -2998,8 +2998,9 @@ source_set("browser") { +@@ -3001,8 +3001,9 @@ source_set("browser") { "//ppapi/shared_impl", ] diff --git a/patches/chromium/refactor_expose_file_system_access_blocklist.patch b/patches/chromium/refactor_expose_file_system_access_blocklist.patch index 96cd6b909d..7eed3b16ef 100644 --- a/patches/chromium/refactor_expose_file_system_access_blocklist.patch +++ b/patches/chromium/refactor_expose_file_system_access_blocklist.patch @@ -8,7 +8,7 @@ it in Electron and prevent drift from Chrome's blocklist. We should look for a w to upstream this change to Chrome. diff --git a/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc b/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc -index 8d310a8b983cc784f9fe9d61818ed6090bd5a923..2d63be89170cf824b3b3b5673621868ed41c1076 100644 +index 83c679ab4b6a7eb128402406441e503a951b1c79..3cfa97bea3eeadf01ff5bc090a9f59e61e932309 100644 --- a/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc +++ b/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc @@ -46,7 +46,6 @@ diff --git a/patches/chromium/webview_fullscreen.patch b/patches/chromium/webview_fullscreen.patch index 32684d268d..1e67d0b584 100644 --- a/patches/chromium/webview_fullscreen.patch +++ b/patches/chromium/webview_fullscreen.patch @@ -15,10 +15,10 @@ Note that we also need to manually update embedder's `api::WebContents::IsFullscreenForTabOrPending` value. diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc -index ec3fc7ab9e3ea915bcfe672f19a31ebf72b7e0cc..5a206236d3912853419c88d4fb4aaedf0764005b 100644 +index 9f530a1a768d27070f10fc40c6af51f56f42f0ca..b03f7c5517681454caf3a0abf527088f63cfea94 100644 --- a/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc -@@ -8230,6 +8230,17 @@ void RenderFrameHostImpl::EnterFullscreen( +@@ -8238,6 +8238,17 @@ void RenderFrameHostImpl::EnterFullscreen( } } diff --git a/patches/v8/deps_add_v8_object_setinternalfieldfornodecore.patch b/patches/v8/deps_add_v8_object_setinternalfieldfornodecore.patch index de39d63112..45bc89904c 100644 --- a/patches/v8/deps_add_v8_object_setinternalfieldfornodecore.patch +++ b/patches/v8/deps_add_v8_object_setinternalfieldfornodecore.patch @@ -46,7 +46,7 @@ index 3e57ae8efe33f326ef0e5d609c311d4be5b8afd6..dc521d39c2280dfc3217e97c1e413b2b V8_INLINE static void* GetAlignedPointerFromInternalField( const BasicTracedReference& object, int index) { diff --git a/src/api/api.cc b/src/api/api.cc -index 76ec16080fb4e4134081f84f4afcab58d3342782..52f89886a5ff06c7112e4c263d5868de1a105e7a 100644 +index 6fb8d2c72d7bd895ef3157b6fb9a53522a06c983..9ba0614f13b5ab372674dbbacb5b0b705b317fdc 100644 --- a/src/api/api.cc +++ b/src/api/api.cc @@ -6407,14 +6407,33 @@ Local v8::Object::SlowGetInternalField(int index) { diff --git a/shell/browser/ui/electron_menu_model.h b/shell/browser/ui/electron_menu_model.h index db168d2df9..5d7749d43f 100644 --- a/shell/browser/ui/electron_menu_model.h +++ b/shell/browser/ui/electron_menu_model.h @@ -15,7 +15,7 @@ #include "base/memory/weak_ptr.h" #include "base/observer_list.h" #include "base/observer_list_types.h" -#include "ui/base/models/simple_menu_model.h" +#include "ui/menus/simple_menu_model.h" #include "url/gurl.h" namespace electron {