diff --git a/.github/actions/install-build-tools/action.yml b/.github/actions/install-build-tools/action.yml index 12cffbc83551..54aa56a42a05 100644 --- a/.github/actions/install-build-tools/action.yml +++ b/.github/actions/install-build-tools/action.yml @@ -13,7 +13,7 @@ runs: git config --global core.fscache true git config --global core.preloadindex true fi - export BUILD_TOOLS_SHA=6e8526315ea3b4828882497e532b8340e64e053c + export BUILD_TOOLS_SHA=f2a960b4d82e6b5c9dbbd437378a39489f399c50 npm i -g @electron/build-tools # Update depot_tools to ensure python e d update_depot_tools diff --git a/DEPS b/DEPS index 0b63a1984fa2..153ee4542aae 100644 --- a/DEPS +++ b/DEPS @@ -2,7 +2,7 @@ gclient_gn_args_from = 'src' vars = { 'chromium_version': - '138.0.7190.0', + '138.0.7204.15', 'node_version': 'v22.16.0', 'nan_version': diff --git a/patches/boringssl/expose_ripemd160.patch b/patches/boringssl/expose_ripemd160.patch index 5b3b1da23064..8ab7be04680b 100644 --- a/patches/boringssl/expose_ripemd160.patch +++ b/patches/boringssl/expose_ripemd160.patch @@ -82,7 +82,7 @@ index e04b80cd6a1a215fc87f8fd8d750c3d258c3974f..8fdf1c624794f568bfc77b7b6b0c510b void EVP_MD_do_all(void (*callback)(const EVP_MD *cipher, const char *name, diff --git a/include/openssl/digest.h b/include/openssl/digest.h -index 6abab7693ef2cf418e64d4bf5d53e7e0821cb731..ecbf81be6888cf2e95008da054cf4d3d7df6ad49 100644 +index b5f76c34efea47fb52f1642c8ca7e8a78c1ae678..b2420a9614453de35e1918d65d42ff95fbf9cf9e 100644 --- a/include/openssl/digest.h +++ b/include/openssl/digest.h @@ -48,6 +48,9 @@ OPENSSL_EXPORT const EVP_MD *EVP_blake2b256(void); diff --git a/patches/chromium/.patches b/patches/chromium/.patches index 51c1748e4895..e49e542bf3ca 100644 --- a/patches/chromium/.patches +++ b/patches/chromium/.patches @@ -143,5 +143,3 @@ fix_enable_wrap_iter_in_string_view_and_array.patch fix_linter_error.patch chore_grandfather_in_electron_views_and_delegates.patch refactor_patch_electron_permissiontypes_into_blink.patch -revert_webgl_add_stub_webgl_2_renderingcontextwebgpu.patch -cherry-pick-f1e6422a355c.patch diff --git a/patches/chromium/add_contentgpuclient_precreatemessageloop_callback.patch b/patches/chromium/add_contentgpuclient_precreatemessageloop_callback.patch index 6ce5197ed360..2db23d70e9ca 100644 --- a/patches/chromium/add_contentgpuclient_precreatemessageloop_callback.patch +++ b/patches/chromium/add_contentgpuclient_precreatemessageloop_callback.patch @@ -10,12 +10,12 @@ 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 73be6273b320574c22fd12e07b93dc3cffaa1be9..58a34cc5b583a7111decf14b755afbb82ba94765 100644 +index 5cf9e02f97e1378b0b1a55feb007b7d664fc4a84..d1fdf00a1b65fe0f5510608c165df93cf6c13e38 100644 --- a/content/gpu/gpu_main.cc +++ b/content/gpu/gpu_main.cc -@@ -268,6 +268,10 @@ int GpuMain(MainFunctionParams parameters) { +@@ -269,6 +269,10 @@ int GpuMain(MainFunctionParams parameters) { // to the GpuProcessHost once the GpuServiceImpl has started. - viz::GpuServiceImpl::InstallPreInitializeLogHandler(); + viz::GpuLogMessageManager::GetInstance()->InstallPreInitializeLogHandler(); + auto* client = GetContentClient()->gpu(); + if (client) @@ -24,7 +24,7 @@ index 73be6273b320574c22fd12e07b93dc3cffaa1be9..58a34cc5b583a7111decf14b755afbb8 // 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 -@@ -377,7 +381,6 @@ int GpuMain(MainFunctionParams parameters) { +@@ -378,7 +382,6 @@ int GpuMain(MainFunctionParams parameters) { #endif const bool dead_on_arrival = !init_success; diff --git a/patches/chromium/add_didinstallconditionalfeatures.patch b/patches/chromium/add_didinstallconditionalfeatures.patch index 33795783b824..881b932e203e 100644 --- a/patches/chromium/add_didinstallconditionalfeatures.patch +++ b/patches/chromium/add_didinstallconditionalfeatures.patch @@ -23,7 +23,7 @@ index db655a7b52eacb74f2a8637db36abd87f6b86792..8014cb08e2090a12ea8b9e92cb8f93c9 int32_t world_id) {} virtual void DidClearWindowObject() {} diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc -index 3fa43adedd6ff0258edd195bde1e68977cff3a7c..7fe443aad2ad6207aa46daddea46baa3eb998bc3 100644 +index 5c8ffb1462a21f5d798656efc872ba09d6c0de99..2129c419a3ac4d989f2316484779debaebf90d7c 100644 --- a/content/renderer/render_frame_impl.cc +++ b/content/renderer/render_frame_impl.cc @@ -4808,6 +4808,12 @@ void RenderFrameImpl::DidCreateScriptContext(v8::Local context, 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 ee0adbbb894c..dc137c6f1c0f 100644 --- a/patches/chromium/allow_disabling_blink_scheduler_throttling_per_renderview.patch +++ b/patches/chromium/allow_disabling_blink_scheduler_throttling_per_renderview.patch @@ -6,7 +6,7 @@ Subject: allow disabling blink scheduler throttling per RenderView This allows us to disable throttling for hidden windows. diff --git a/content/browser/renderer_host/navigation_controller_impl_unittest.cc b/content/browser/renderer_host/navigation_controller_impl_unittest.cc -index b9e7ef002a8d7842b4e97dbcaa59aa289ba652a1..81bd39f47d8411da53824d47e053b39f8fa24721 100644 +index 74e94044c3e18f513eb2ffa051039270f9bd56a1..f824ec4005b6640bdd3d35382f4dddf975893ea9 100644 --- a/content/browser/renderer_host/navigation_controller_impl_unittest.cc +++ b/content/browser/renderer_host/navigation_controller_impl_unittest.cc @@ -167,6 +167,12 @@ class MockPageBroadcast : public blink::mojom::PageBroadcast { @@ -23,10 +23,10 @@ index b9e7ef002a8d7842b4e97dbcaa59aa289ba652a1..81bd39f47d8411da53824d47e053b39f return receiver_.BindNewEndpointAndPassDedicatedRemote(); } diff --git a/content/browser/renderer_host/render_view_host_impl.cc b/content/browser/renderer_host/render_view_host_impl.cc -index 1654ffbb2184cc1db6c0b862cc745ba2e467b740..567f5279d943a58e451a78fb506606cf17a0ef79 100644 +index a0335fef252b46976ea2caf95e1bf3ef7d52585d..0a97013b60fcfeb8fac55d686b107b1175c9be04 100644 --- a/content/browser/renderer_host/render_view_host_impl.cc +++ b/content/browser/renderer_host/render_view_host_impl.cc -@@ -761,6 +761,11 @@ void RenderViewHostImpl::SetBackgroundOpaque(bool opaque) { +@@ -760,6 +760,11 @@ void RenderViewHostImpl::SetBackgroundOpaque(bool opaque) { GetWidget()->GetAssociatedFrameWidget()->SetBackgroundOpaque(opaque); } @@ -116,10 +116,10 @@ index 7c1eb9baabfb9e0f3645421b5cbe467862252638..00d2cd41d795cb550e16fb80944b2382 // Visibility ----------------------------------------------------------- diff --git a/third_party/blink/renderer/core/exported/web_view_impl.cc b/third_party/blink/renderer/core/exported/web_view_impl.cc -index feba9635b40664b1db83ab727798a34b98e5e0b8..f6a248b1de8b313658453dd380529ec7c2e40033 100644 +index 97141017fa2ca72746d5269d6da2e08201e85972..2390395a3df10aca3510a619e91dab674de60e67 100644 --- a/third_party/blink/renderer/core/exported/web_view_impl.cc +++ b/third_party/blink/renderer/core/exported/web_view_impl.cc -@@ -2467,6 +2467,10 @@ void WebViewImpl::SetPageLifecycleStateInternal( +@@ -2469,6 +2469,10 @@ void WebViewImpl::SetPageLifecycleStateInternal( TRACE_EVENT2("navigation", "WebViewImpl::SetPageLifecycleStateInternal", "old_state", old_state, "new_state", new_state); @@ -130,7 +130,7 @@ index feba9635b40664b1db83ab727798a34b98e5e0b8..f6a248b1de8b313658453dd380529ec7 bool storing_in_bfcache = new_state->is_in_back_forward_cache && !old_state->is_in_back_forward_cache; bool restoring_from_bfcache = !new_state->is_in_back_forward_cache && -@@ -3990,10 +3994,23 @@ PageScheduler* WebViewImpl::Scheduler() const { +@@ -3992,10 +3996,23 @@ PageScheduler* WebViewImpl::Scheduler() const { return GetPage()->GetPageScheduler(); } diff --git a/patches/chromium/allow_in-process_windows_to_have_different_web_prefs.patch b/patches/chromium/allow_in-process_windows_to_have_different_web_prefs.patch index 912663a41858..ac07bb47cf4e 100644 --- a/patches/chromium/allow_in-process_windows_to_have_different_web_prefs.patch +++ b/patches/chromium/allow_in-process_windows_to_have_different_web_prefs.patch @@ -8,10 +8,10 @@ WebPreferences of in-process child windows, rather than relying on process-level command line switches, as before. diff --git a/third_party/blink/common/web_preferences/web_preferences_mojom_traits.cc b/third_party/blink/common/web_preferences/web_preferences_mojom_traits.cc -index b3e72c9d198a350a164d4abc37fcb19024f43c57..909ac417f24c0e104cba286b6420d8c820784d31 100644 +index 96bb1f2205a4f81b78626f8c277c0b82a048895b..881e6fa91b25758a3b3523119360bd92b5fc5802 100644 --- a/third_party/blink/common/web_preferences/web_preferences_mojom_traits.cc +++ b/third_party/blink/common/web_preferences/web_preferences_mojom_traits.cc -@@ -149,6 +149,19 @@ bool StructTraitsv8_cache_options = data.v8_cache_options(); out->record_whole_document = data.record_whole_document(); out->stylus_handwriting_enabled = data.stylus_handwriting_enabled(); @@ -32,7 +32,7 @@ index b3e72c9d198a350a164d4abc37fcb19024f43c57..909ac417f24c0e104cba286b6420d8c8 out->accelerated_video_decode_enabled = data.accelerated_video_decode_enabled(); diff --git a/third_party/blink/public/common/web_preferences/web_preferences.h b/third_party/blink/public/common/web_preferences/web_preferences.h -index 1ee685e777e27a56da50d38ae7710abb240699a1..7f0ed7e9b0c4c0077eaa733e81ebc421f0ddd02a 100644 +index 5c29a554f51023e63948bb7b28fcfdfa02089d66..ce0a19a2a848ac7c3543651a2b4de99dcfc66475 100644 --- a/third_party/blink/public/common/web_preferences/web_preferences.h +++ b/third_party/blink/public/common/web_preferences/web_preferences.h @@ -9,6 +9,7 @@ @@ -43,7 +43,7 @@ index 1ee685e777e27a56da50d38ae7710abb240699a1..7f0ed7e9b0c4c0077eaa733e81ebc421 #include "build/build_config.h" #include "net/nqe/effective_connection_type.h" #include "third_party/blink/public/common/common_export.h" -@@ -450,6 +451,20 @@ struct BLINK_COMMON_EXPORT WebPreferences { +@@ -452,6 +453,20 @@ struct BLINK_COMMON_EXPORT WebPreferences { // WebView and by `kWebPayments` feature flag everywhere. bool payment_request_enabled = false; @@ -65,7 +65,7 @@ index 1ee685e777e27a56da50d38ae7710abb240699a1..7f0ed7e9b0c4c0077eaa733e81ebc421 // chrome, except for the cases where it would require lots of extra work for // the embedder to use the same default value. diff --git a/third_party/blink/public/common/web_preferences/web_preferences_mojom_traits.h b/third_party/blink/public/common/web_preferences/web_preferences_mojom_traits.h -index 36a5fb0b42be57e9602c0709b6abb55385f48666..306838bbf7c6d5cddd95e09d703e41d1deac21ab 100644 +index ce4074d601eca1d9ca6b30a8b5904366a47d0595..08cd7f1858a63d0d33fee5d345fefce19d2add93 100644 --- a/third_party/blink/public/common/web_preferences/web_preferences_mojom_traits.h +++ b/third_party/blink/public/common/web_preferences/web_preferences_mojom_traits.h @@ -8,6 +8,7 @@ @@ -76,7 +76,7 @@ index 36a5fb0b42be57e9602c0709b6abb55385f48666..306838bbf7c6d5cddd95e09d703e41d1 #include "mojo/public/cpp/bindings/struct_traits.h" #include "net/nqe/effective_connection_type.h" #include "third_party/blink/public/common/common_export.h" -@@ -438,6 +439,52 @@ struct BLINK_COMMON_EXPORT StructTraitsDetached(type); diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc -index 6a80292d0c9d7130c762a0a84ca77f62c4c75168..574f947602f8cf9d5abebf6180dc3fb67dc85496 100644 +index 43759ed40b3356a838e30772b815d51d20136707..afa8d181e836739f4136cf51ae323f29b0b25ebe 100644 --- a/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc @@ -727,10 +727,6 @@ bool LocalFrame::DetachImpl(FrameDetachType type) { diff --git a/patches/chromium/build_add_electron_tracing_category.patch b/patches/chromium/build_add_electron_tracing_category.patch index 374dbbf156f7..8e7377c76c24 100644 --- a/patches/chromium/build_add_electron_tracing_category.patch +++ b/patches/chromium/build_add_electron_tracing_category.patch @@ -8,10 +8,10 @@ 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 e149fca0c6c38eb3898735cb38e41443af61b6d8..24ab0a9b37299e62176167507215351ecc54092b 100644 +index 31c41cb8e8cc0d0c43811ce7e97a03f4feb38feb..8adb5a1d415e3424f41d87b19100eedcb55c9e61 100644 --- a/base/trace_event/builtin_categories.h +++ b/base/trace_event/builtin_categories.h -@@ -102,6 +102,7 @@ PERFETTO_DEFINE_CATEGORIES_IN_NAMESPACE_WITH_ATTRS( +@@ -118,6 +118,7 @@ PERFETTO_DEFINE_CATEGORIES_IN_NAMESPACE_WITH_ATTRS( perfetto::Category("drm"), perfetto::Category("drmcursor"), perfetto::Category("dwrite"), 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 000d9a91df9f..b32f98bb1dd3 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 @@ -11,7 +11,7 @@ if we ever align our .pak file generation with Chrome we can remove this patch. diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn -index 84fab7fcdb1a7ded880c0ff4867e09c740e7a5d2..f03f0e67c083880dc13f8f90d9375ff62717ba00 100644 +index 72c637f9f3ba48bb7ab06678fe833f33d2cfddc8..e9c8ae3cdb7ba400c59cc469a1a80b5063738ffa 100644 --- a/chrome/BUILD.gn +++ b/chrome/BUILD.gn @@ -197,11 +197,16 @@ if (!is_android && !is_mac) { @@ -33,10 +33,10 @@ index 84fab7fcdb1a7ded880c0ff4867e09c740e7a5d2..f03f0e67c083880dc13f8f90d9375ff6 "//base", "//build:branding_buildflags", diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn -index 74d78554a4816e76cbf800762386444520c32906..c89251393bdd9439aa768e3d516516dfc4b18824 100644 +index efb9b948aca15ae8b4d6257fa685e758d2e3acc1..0e14d0eb15bfcd86831599678eb0f76fe0a803cc 100644 --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -4681,7 +4681,7 @@ static_library("browser") { +@@ -4716,7 +4716,7 @@ static_library("browser") { [ "//chrome/browser/ui/webui/signin:profile_impl" ] } @@ -46,10 +46,10 @@ index 74d78554a4816e76cbf800762386444520c32906..c89251393bdd9439aa768e3d516516df # than here in :chrome_dll. deps += [ "//chrome:packed_resources_integrity_header" ] diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn -index 9dc89f62b8cc049955d8faa4dcbd4904776580ee..cd3b00e4c2a22819e8bd4844cfa5048403f9a70a 100644 +index 0f493aeb49901e2917009b942f9b1e14e3fcf758..349079dc25f91fd426d523345ba66271c42ea084 100644 --- a/chrome/test/BUILD.gn +++ b/chrome/test/BUILD.gn -@@ -7216,9 +7216,12 @@ test("unit_tests") { +@@ -7243,9 +7243,12 @@ test("unit_tests") { "//chrome/notification_helper", ] @@ -63,7 +63,7 @@ index 9dc89f62b8cc049955d8faa4dcbd4904776580ee..cd3b00e4c2a22819e8bd4844cfa50484 "//chrome//services/util_win:unit_tests", "//chrome/app:chrome_dll_resources", "//chrome/app:win_unit_tests", -@@ -8182,6 +8185,10 @@ test("unit_tests") { +@@ -8209,6 +8212,10 @@ test("unit_tests") { "../browser/performance_manager/policies/background_tab_loading_policy_unittest.cc", ] @@ -74,7 +74,7 @@ index 9dc89f62b8cc049955d8faa4dcbd4904776580ee..cd3b00e4c2a22819e8bd4844cfa50484 sources += [ # The importer code is not used on Android. "../common/importer/firefox_importer_utils_unittest.cc", -@@ -8239,7 +8246,6 @@ test("unit_tests") { +@@ -8266,7 +8273,6 @@ test("unit_tests") { # TODO(crbug.com/417513088): Maybe merge with the non-android `deps` declaration above? deps += [ "../browser/screen_ai:screen_ai_install_state", diff --git a/patches/chromium/build_gn.patch b/patches/chromium/build_gn.patch index fd519adbff7a..79b783911965 100644 --- a/patches/chromium/build_gn.patch +++ b/patches/chromium/build_gn.patch @@ -7,7 +7,7 @@ These are variables we add to the root BUILDCONFIG so that they're available everywhere, without having to import("//electron/.../flags.gni"). diff --git a/build/config/BUILDCONFIG.gn b/build/config/BUILDCONFIG.gn -index 32cbfa5cfee7f9a2f2d9e696fb54ee753dda4f6c..cc9d083a598aa1e07bf60bc961c5ddcd730921bf 100644 +index 706f0f32fe3d5b43692167ce8013699575fbf7b7..40ea2de7a32d7b720ebaa21f6bea4c46a9a20697 100644 --- a/build/config/BUILDCONFIG.gn +++ b/build/config/BUILDCONFIG.gn @@ -123,6 +123,9 @@ if (current_os == "") { diff --git a/patches/chromium/build_libc_as_static_library.patch b/patches/chromium/build_libc_as_static_library.patch index 1851ebc6154c..86890329e546 100644 --- a/patches/chromium/build_libc_as_static_library.patch +++ b/patches/chromium/build_libc_as_static_library.patch @@ -7,10 +7,10 @@ Build libc++ as static library to compile and pass nan tests diff --git a/buildtools/third_party/libc++/BUILD.gn b/buildtools/third_party/libc++/BUILD.gn -index 73c197f3cecd7ff34e97326cbf615e7c78919a54..1e93e7ce444cd5c31ddeac86fb1549c648a9a5c0 100644 +index 78e270c731f1d40adb231fd16877f83ce1e34e31..cf15334412329f8e0dbdf11e744a425d6d571c7f 100644 --- a/buildtools/third_party/libc++/BUILD.gn +++ b/buildtools/third_party/libc++/BUILD.gn -@@ -298,6 +298,7 @@ target(libcxx_target_type, "libc++") { +@@ -423,6 +423,7 @@ target(libcxx_target_type, "libc++") { # need to explicitly depend on libc++. visibility = [ "//build/config:common_deps", diff --git a/patches/chromium/can_create_window.patch b/patches/chromium/can_create_window.patch index 97d4048b611d..f68c789132d3 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 4c1785b8b7dcc2e0543b12bc4c765c8f0c833451..be73611db5328c76982ecca3caf5eccc30aac45e 100644 +index 23cd457563d7d534e924428ac6da2b475e579326..d8698f9f37eefa50bf4e29a164b2cc302c32ecdf 100644 --- a/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc -@@ -9718,6 +9718,7 @@ void RenderFrameHostImpl::CreateNewWindow( +@@ -9725,6 +9725,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 4c1785b8b7dcc2e0543b12bc4c765c8f0c833451..be73611db5328c76982ecca3caf5eccc &no_javascript_access); diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index 8bd0e1d60f6f1af48b106f25d8e8951423eb05ed..c0ef22f3872e96be15867428aff1006b8a14a1df 100644 +index e57951543e9f2b0be5164dde3d4b629b081457cc..811d137c4b77d3347dc8de5bb6207646c952f23b 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -5308,6 +5308,12 @@ FrameTree* WebContentsImpl::CreateNewWindow( +@@ -5317,6 +5317,12 @@ FrameTree* WebContentsImpl::CreateNewWindow( // Sets the newly created WebContents WindowOpenDisposition. new_contents_impl->original_window_open_disposition_ = params.disposition; @@ -37,7 +37,7 @@ index 8bd0e1d60f6f1af48b106f25d8e8951423eb05ed..c0ef22f3872e96be15867428aff1006b // 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 -@@ -5349,12 +5355,6 @@ FrameTree* WebContentsImpl::CreateNewWindow( +@@ -5358,12 +5364,6 @@ FrameTree* WebContentsImpl::CreateNewWindow( AddWebContentsDestructionObserver(new_contents_impl); } @@ -66,10 +66,10 @@ index 09f1899c9b044a05b2e40c291f17fdf1f9f2fcac..89643bf7059d4fc0d6de6116ffe0fdac // 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 eb036b92b42d794cabd71f4c6314962df8988bbb..0ec4e4f41d261f60cb8e963ca1d715b765e7c47d 100644 +index 4a377944faaf947ef478e2d858444b5d3a000c47..f8fffc6d41d26d15ff1f563005d58039099d069e 100644 --- a/content/public/browser/content_browser_client.cc +++ b/content/public/browser/content_browser_client.cc -@@ -842,6 +842,8 @@ bool ContentBrowserClient::CanCreateWindow( +@@ -848,6 +848,8 @@ bool ContentBrowserClient::CanCreateWindow( const std::string& frame_name, WindowOpenDisposition disposition, const blink::mojom::WindowFeatures& features, @@ -79,7 +79,7 @@ index eb036b92b42d794cabd71f4c6314962df8988bbb..0ec4e4f41d261f60cb8e963ca1d715b7 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 8c53f1aab26cf78ae0526ae51c1738019f1c0b90..0a74c5a3bee425c5c1af33ef27791a6d852baa6e 100644 +index 0d0d957b353e0b147efce4380c445f664741d6f4..08b098fa486c77294250563edbc5d2421fda3d69 100644 --- a/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h @@ -200,6 +200,7 @@ class NetworkService; @@ -90,7 +90,7 @@ index 8c53f1aab26cf78ae0526ae51c1738019f1c0b90..0a74c5a3bee425c5c1af33ef27791a6d } // namespace network namespace sandbox { -@@ -1403,6 +1404,8 @@ class CONTENT_EXPORT ContentBrowserClient { +@@ -1409,6 +1410,8 @@ class CONTENT_EXPORT ContentBrowserClient { const std::string& frame_name, WindowOpenDisposition disposition, const blink::mojom::WindowFeatures& features, @@ -148,7 +148,7 @@ index d33274984bf6523beeb3ab5ee586499d224bff3c..83bdd195339eb7d61ac88e2994fd8dab // 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 b6da726a70555c2074077a2105b078e1850824d9..3fa43adedd6ff0258edd195bde1e68977cff3a7c 100644 +index d83b79b725d28b22903e3f6227e982a2ed5573f5..5c8ffb1462a21f5d798656efc872ba09d6c0de99 100644 --- a/content/renderer/render_frame_impl.cc +++ b/content/renderer/render_frame_impl.cc @@ -6937,6 +6937,10 @@ WebView* RenderFrameImpl::CreateNewWindow( @@ -210,10 +210,10 @@ index 82e9d3dfb5f7da76d89fe15ae61d379fa46e177d..fd035512099a54dff6cc951a2226c23a } // 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 382daacf9b2ea77c4d8814fa375ecbbd830cce50..4728a4b7c064fc902317115637b6e64f068b25a8 100644 +index 23e8b0820df2546e0097d667758c818ef725a2e7..ef692c6d82dee347bc8956cb2337fa7a35f0c50d 100644 --- a/third_party/blink/renderer/core/frame/local_dom_window.cc +++ b/third_party/blink/renderer/core/frame/local_dom_window.cc -@@ -2293,6 +2293,8 @@ DOMWindow* LocalDOMWindow::open(v8::Isolate* isolate, +@@ -2318,6 +2318,8 @@ DOMWindow* LocalDOMWindow::open(v8::Isolate* isolate, WebWindowFeatures window_features = GetWindowFeaturesFromString(features, entered_window); diff --git a/patches/chromium/cherry-pick-f1e6422a355c.patch b/patches/chromium/cherry-pick-f1e6422a355c.patch deleted file mode 100644 index 5dcafde54570..000000000000 --- a/patches/chromium/cherry-pick-f1e6422a355c.patch +++ /dev/null @@ -1,273 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Yoshisato Yanagisawa -Date: Wed, 21 May 2025 23:25:12 -0700 -Subject: Enforce SharedWorker::Terminate() procedure order - -During the investigation of crbug.com/409059706, we observed that -PerformShutdownOnWorkerThread() is called during the status is -running. - -I suppose the root cause is race condition between `Terminate()` -procedure and a child process termination procedure in different -thread. WorkerThread can be terminated if two conditions are met; -`Terminate()` is called and all child worker threads have been -terminated. Both `Terminate()` and the child process termination -procedure may call `PerformShutdownOnWorkerThread()`, and former -is executed regardless of two conditions are met. The latter -is called if `Terminate()` is called and no child processes. -To be clear, "`Terminate()` is called" does not mean -`PrepareForShutdownOnWorkerThread()` is executed. `Terminate()` -queues it after the flag to tell `Terminate()` call. And, when -the issue happen, I am quite sure the flag is set but, -`PrepareForShutdownOnWorkerThread()` won't be executed yet. - -The fix is that: -1. The "Terminate() is called" flag to be multi staged. - The flag is used for two purpose; a. avoid re-enter of - `Terminate()`, and b. `PrepareForShutdownOnWorkerThread()` is - in flight. The CL changed the flag to enum to represent - the stage properly. -2. `PerformShutdownOnWorkerThread()` is queued even if it is - called within the child process termination procedure. - It avoid the execution order flip between - `PrepareForShutdownOnWorkerThread()` and - `PerformShutdownOnWorkerThread()`. - -In addition, this change ensures `PerformShutdownOnWorkerThread()` -is called once. While `PerformShutdownOnWorkerThread()` touches -fields inside, the fields must not be touched at some point within -the function, the function is actually not re-entrant when it reaches -to the end. Upon mikt@ suggestion, I made -`PerformShutdownOnWorkerThread()` is called only when two conditions -are fulfilled. i.e. `Terminate()` is called and the number of child -threads is 0. Also, the CL uses the enum to show -`PerformShutdownOnWorkerThread()` is in-flight to avoid re-entrance -in this level. - -Bug: 409059706 -Change-Id: I81a1c3b1a34e827fa75ec2d1a9b37023965dbe27 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6543412 -Reviewed-by: Hiroki Nakagawa -Commit-Queue: Yoshisato Yanagisawa -Cr-Commit-Position: refs/heads/main@{#1463892} - -diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc -index 58caf0050b649f8c43e30b6e59eab968b0bb7334..7863bf237a9a5c273120c8de29e71db589367b3d 100644 ---- a/third_party/blink/common/features.cc -+++ b/third_party/blink/common/features.cc -@@ -2845,6 +2845,13 @@ BASE_FEATURE(kWebviewAccelerateSmallCanvases, - "WebviewAccelerateSmallCanvases", - base::FEATURE_DISABLED_BY_DEFAULT); - -+// WorkerThread termination procedure (prepare and shutdown) runs sequentially -+// in the same task without calling another cross thread post task. -+// Kill switch for crbug.com/409059706. -+BASE_FEATURE(kWorkerThreadSequentialShutdown, -+ "WorkerThreadSequentialShutdown", -+ base::FEATURE_ENABLED_BY_DEFAULT); -+ - BASE_FEATURE(kNoReferrerForPreloadFromSubresource, - "NoReferrerForPreloadFromSubresource", - base::FEATURE_ENABLED_BY_DEFAULT); -diff --git a/third_party/blink/public/common/features.h b/third_party/blink/public/common/features.h -index 2d3ffda8afe1772c817517d1542dbd3aa8bccbce..340ea360177c00424f0eb3461e65c6ba011e43c5 100644 ---- a/third_party/blink/public/common/features.h -+++ b/third_party/blink/public/common/features.h -@@ -1841,6 +1841,8 @@ BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kWebUSBTransferSizeLimit); - - BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kWebviewAccelerateSmallCanvases); - -+BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kWorkerThreadSequentialShutdown); -+ - // Kill switch for https://crbug.com/415810136. - BLINK_COMMON_EXPORT BASE_DECLARE_FEATURE(kNoReferrerForPreloadFromSubresource); - -diff --git a/third_party/blink/renderer/core/workers/worker_thread.cc b/third_party/blink/renderer/core/workers/worker_thread.cc -index 7d13d80a7f09e47d9f3c6da860e8d3373d5b8afd..6e95eba151e3a002b66d55d1ee538e9cd88cd4bb 100644 ---- a/third_party/blink/renderer/core/workers/worker_thread.cc -+++ b/third_party/blink/renderer/core/workers/worker_thread.cc -@@ -263,9 +263,10 @@ void WorkerThread::Terminate() { - DCHECK_CALLED_ON_VALID_THREAD(parent_thread_checker_); - { - base::AutoLock locker(lock_); -- if (requested_to_terminate_) -+ if (termination_progress_ != TerminationProgress::kNotRequested) { - return; -- requested_to_terminate_ = true; -+ } -+ termination_progress_ = TerminationProgress::kRequested; - } - - // Schedule a task to forcibly terminate the script execution in case that the -@@ -281,10 +282,33 @@ void WorkerThread::Terminate() { - *task_runner, FROM_HERE, - CrossThreadBindOnce(&WorkerThread::PrepareForShutdownOnWorkerThread, - CrossThreadUnretained(this))); -- PostCrossThreadTask( -- *task_runner, FROM_HERE, -- CrossThreadBindOnce(&WorkerThread::PerformShutdownOnWorkerThread, -- CrossThreadUnretained(this))); -+ -+ if (!base::FeatureList::IsEnabled( -+ blink::features::kWorkerThreadSequentialShutdown)) { -+ PostCrossThreadTask( -+ *task_runner, FROM_HERE, -+ CrossThreadBindOnce(&WorkerThread::PerformShutdownOnWorkerThread, -+ CrossThreadUnretained(this))); -+ return; -+ } -+ -+ bool perform_shutdown = false; -+ { -+ base::AutoLock locker(lock_); -+ CHECK_EQ(TerminationProgress::kRequested, termination_progress_); -+ termination_progress_ = TerminationProgress::kPrepared; -+ if (num_child_threads_ == 0) { -+ termination_progress_ = TerminationProgress::kPerforming; -+ perform_shutdown = true; -+ } -+ } -+ -+ if (perform_shutdown) { -+ PostCrossThreadTask( -+ *task_runner, FROM_HERE, -+ CrossThreadBindOnce(&WorkerThread::PerformShutdownOnWorkerThread, -+ CrossThreadUnretained(this))); -+ } - } - - void WorkerThread::TerminateForTesting() { -@@ -421,20 +445,48 @@ scoped_refptr WorkerThread::GetTaskRunner( - - void WorkerThread::ChildThreadStartedOnWorkerThread(WorkerThread* child) { - DCHECK(IsCurrentThread()); --#if DCHECK_IS_ON() -+ child_threads_.insert(child); - { - base::AutoLock locker(lock_); - DCHECK_EQ(ThreadState::kRunning, thread_state_); -+ CHECK_EQ(TerminationProgress::kNotRequested, termination_progress_); -+ if (base::FeatureList::IsEnabled( -+ blink::features::kWorkerThreadSequentialShutdown)) { -+ ++num_child_threads_; -+ CHECK_EQ(child_threads_.size(), num_child_threads_); -+ } - } --#endif -- child_threads_.insert(child); - } - - void WorkerThread::ChildThreadTerminatedOnWorkerThread(WorkerThread* child) { - DCHECK(IsCurrentThread()); - child_threads_.erase(child); -- if (child_threads_.empty() && CheckRequestedToTerminate()) -- PerformShutdownOnWorkerThread(); -+ if (!base::FeatureList::IsEnabled( -+ blink::features::kWorkerThreadSequentialShutdown)) { -+ if (child_threads_.empty() && CheckRequestedToTerminate()) { -+ PerformShutdownOnWorkerThread(); -+ } -+ return; -+ } -+ -+ bool perform_shutdown = false; -+ { -+ base::AutoLock locker(lock_); -+ --num_child_threads_; -+ CHECK_EQ(child_threads_.size(), num_child_threads_); -+ if (num_child_threads_ == 0 && -+ termination_progress_ == TerminationProgress::kPrepared) { -+ termination_progress_ = TerminationProgress::kPerforming; -+ perform_shutdown = true; -+ } -+ } -+ if (perform_shutdown) { -+ scoped_refptr task_runner = -+ GetWorkerBackingThread().BackingThread().GetTaskRunner(); -+ GetWorkerBackingThread().BackingThread().GetTaskRunner()->PostTask( -+ FROM_HERE, WTF::BindOnce(&WorkerThread::PerformShutdownOnWorkerThread, -+ WTF::Unretained(this))); -+ } - } - - WorkerThread::WorkerThread(WorkerReportingProxy& worker_reporting_proxy) -@@ -778,18 +830,32 @@ void WorkerThread::PerformShutdownOnWorkerThread() { - DCHECK(IsCurrentThread()); - { - base::AutoLock locker(lock_); -- DCHECK(requested_to_terminate_); -+ if (!base::FeatureList::IsEnabled( -+ blink::features::kWorkerThreadSequentialShutdown)) { -+ DCHECK_NE(TerminationProgress::kNotRequested, termination_progress_); -+ } else { -+ DCHECK_EQ(TerminationProgress::kPerforming, termination_progress_); -+ } - DCHECK_EQ(ThreadState::kReadyToShutdown, thread_state_); - if (exit_code_ == ExitCode::kNotTerminated) - SetExitCode(ExitCode::kGracefullyTerminated); - } - -- // When child workers are present, wait for them to shutdown before shutting -- // down this thread. ChildThreadTerminatedOnWorkerThread() is responsible -- // for completing shutdown on the worker thread after the last child shuts -- // down. -- if (!child_threads_.empty()) -- return; -+ if (!base::FeatureList::IsEnabled( -+ blink::features::kWorkerThreadSequentialShutdown)) { -+ // When child workers are present, wait for them to shutdown before shutting -+ // down this thread. ChildThreadTerminatedOnWorkerThread() is responsible -+ // for completing shutdown on the worker thread after the last child shuts -+ // down. -+ if (!child_threads_.empty()) { -+ return; -+ } -+ } else { -+ // Child workers must not exist when `PerformShutdownOnWorkerThread()` -+ // is called because it has already been checked before calling the -+ // function. -+ CHECK(child_threads_.empty()); -+ } - - inspector_task_runner_->Dispose(); - if (worker_inspector_controller_) { -@@ -845,7 +911,7 @@ void WorkerThread::SetExitCode(ExitCode exit_code) { - - bool WorkerThread::CheckRequestedToTerminate() { - base::AutoLock locker(lock_); -- return requested_to_terminate_; -+ return termination_progress_ != TerminationProgress::kNotRequested; - } - - void WorkerThread::PauseOrFreeze(mojom::blink::FrameLifecycleState state, -diff --git a/third_party/blink/renderer/core/workers/worker_thread.h b/third_party/blink/renderer/core/workers/worker_thread.h -index 49a7ac5868844465c8c863186958e5e590ffef29..f48f05b795ac2490851e23282be3172ddbe3516c 100644 ---- a/third_party/blink/renderer/core/workers/worker_thread.h -+++ b/third_party/blink/renderer/core/workers/worker_thread.h -@@ -319,6 +319,13 @@ class CORE_EXPORT WorkerThread : public Thread::TaskObserver { - kTerminationUnnecessary, - }; - -+ enum class TerminationProgress { -+ kNotRequested, -+ kRequested, -+ kPrepared, -+ kPerforming, -+ }; -+ - // Returns true if we should synchronously terminate the script execution so - // that a shutdown task can be handled by the thread event loop. - TerminationState ShouldTerminateScriptExecution() -@@ -419,8 +426,10 @@ class CORE_EXPORT WorkerThread : public Thread::TaskObserver { - // A unique identifier among all WorkerThreads. - const int worker_thread_id_; - -- // Set on the parent thread. -- bool requested_to_terminate_ GUARDED_BY(lock_) = false; -+ // Represents progress after the Terminate() call. -+ TerminationProgress termination_progress_ GUARDED_BY(lock_) = -+ TerminationProgress::kNotRequested; -+ size_t num_child_threads_ GUARDED_BY(lock_) = 0; - - ThreadState thread_state_ GUARDED_BY(lock_) = ThreadState::kNotStarted; - ExitCode exit_code_ GUARDED_BY(lock_) = ExitCode::kNotTerminated; diff --git a/patches/chromium/chore_add_electron_deps_to_gitignores.patch b/patches/chromium/chore_add_electron_deps_to_gitignores.patch index 495a6c703fff..b32cf080e12d 100644 --- a/patches/chromium/chore_add_electron_deps_to_gitignores.patch +++ b/patches/chromium/chore_add_electron_deps_to_gitignores.patch @@ -6,10 +6,10 @@ Subject: chore: add electron deps to gitignores Makes things like "git status" quicker when developing electron locally diff --git a/.gitignore b/.gitignore -index 469572522566fa57f04bc66ade675eea2048b0df..852d842df3801564cfe8dd7c4ffb84a7b3af8fc1 100644 +index d69c2f1ff69789512d89eed5982da803e0fcd813..0d4ba5c34634785d297340a8168f7ea18448f8e2 100644 --- a/.gitignore +++ b/.gitignore -@@ -220,6 +220,7 @@ vs-chromium-project.txt +@@ -222,6 +222,7 @@ vs-chromium-project.txt /data /delegate_execute /device/serial/device_serial_mojo.xml diff --git a/patches/chromium/chore_grandfather_in_electron_views_and_delegates.patch b/patches/chromium/chore_grandfather_in_electron_views_and_delegates.patch index 598f8cdb6a2f..99cd086881e3 100644 --- a/patches/chromium/chore_grandfather_in_electron_views_and_delegates.patch +++ b/patches/chromium/chore_grandfather_in_electron_views_and_delegates.patch @@ -49,7 +49,7 @@ index 0dbbd7979ad79a7a74681222fcf36a315f0634ce..b04e77440c1273c5b866ea329e62ac07 // These existing cases are "grandfathered in", but there shouldn't be more. // See comments atop class. diff --git a/ui/views/widget/widget_delegate.h b/ui/views/widget/widget_delegate.h -index 89de188e6a0139a236a824b189f1048613d6f457..c438376c34cac4ec7ac7a03d852685c18b10068e 100644 +index d2011a5c04973980e245f498ad4e6e1f65e6cc4b..f1aecd776878a368cc7debccfd5db6bd098c7ec4 100644 --- a/ui/views/widget/widget_delegate.h +++ b/ui/views/widget/widget_delegate.h @@ -165,6 +165,12 @@ namespace crostini { @@ -63,9 +63,9 @@ index 89de188e6a0139a236a824b189f1048613d6f457..c438376c34cac4ec7ac7a03d852685c1 +} + namespace enterprise_connectors { - class ContentAnalysisDialog; + class ContentAnalysisDialogController; class ContentAnalysisDialogBehaviorBrowserTest; -@@ -367,6 +373,7 @@ class VIEWS_EXPORT WidgetDelegate { +@@ -374,6 +380,7 @@ class VIEWS_EXPORT WidgetDelegate { class OwnedByWidgetPassKey { private: @@ -73,7 +73,7 @@ index 89de188e6a0139a236a824b189f1048613d6f457..c438376c34cac4ec7ac7a03d852685c1 // DO NOT ADD TO THIS LIST! // These existing cases are "grandfathered in", but there shouldn't be more. // See comments atop `SetOwnedByWidget()`. -@@ -463,6 +470,7 @@ class VIEWS_EXPORT WidgetDelegate { +@@ -470,6 +477,7 @@ class VIEWS_EXPORT WidgetDelegate { }; class RegisterDeleteCallbackPassKey { private: @@ -81,7 +81,7 @@ index 89de188e6a0139a236a824b189f1048613d6f457..c438376c34cac4ec7ac7a03d852685c1 // DO NOT ADD TO THIS LIST! // These existing cases are "grandfathered in", but there shouldn't be more. // See comments atop `RegisterDeleteDelegateCallback()`. -@@ -913,6 +921,7 @@ class VIEWS_EXPORT WidgetDelegateView : public WidgetDelegate, public View { +@@ -927,6 +935,7 @@ class VIEWS_EXPORT WidgetDelegateView : public WidgetDelegate, public View { View* GetContentsView() override; private: diff --git a/patches/chromium/chore_introduce_blocking_api_for_electron.patch b/patches/chromium/chore_introduce_blocking_api_for_electron.patch index cb012a2a811b..0fbdb80214b0 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 20d867b5d56cd6d961004b19bd3e69ee306dd816..07db0c05df4ce028017e70e6f593235516aa556e 100644 +index b1abcfaab58df4555d3a26481915d64ef5458e17..f2f43454c1c124da9983998564837ebf3589aefd 100644 --- a/base/threading/thread_restrictions.h +++ b/base/threading/thread_restrictions.h @@ -132,6 +132,7 @@ class KeyStorageLinux; @@ -28,7 +28,7 @@ index 20d867b5d56cd6d961004b19bd3e69ee306dd816..07db0c05df4ce028017e70e6f5932355 namespace enterprise_connectors { class LinuxKeyRotationCommand; } // namespace enterprise_connectors -@@ -578,6 +582,7 @@ class BASE_EXPORT ScopedAllowBlocking { +@@ -577,6 +581,7 @@ class BASE_EXPORT ScopedAllowBlocking { friend class ::DesktopNotificationBalloon; friend class ::FirefoxProfileLock; friend class ::GaiaConfig; @@ -36,7 +36,7 @@ index 20d867b5d56cd6d961004b19bd3e69ee306dd816..07db0c05df4ce028017e70e6f5932355 friend class ::ProfileImpl; friend class ::ScopedAllowBlockingForProfile; friend class ::StartupTabProviderImpl; -@@ -616,6 +621,7 @@ class BASE_EXPORT ScopedAllowBlocking { +@@ -615,6 +620,7 @@ class BASE_EXPORT ScopedAllowBlocking { friend class cronet::CronetPrefsManager; friend class crypto::ScopedAllowBlockingForNSS; // http://crbug.com/59847 friend class drive::FakeDriveService; diff --git a/patches/chromium/chore_modify_chromium_handling_of_mouse_events.patch b/patches/chromium/chore_modify_chromium_handling_of_mouse_events.patch index 8dc23c774a1d..3f578c108f41 100644 --- a/patches/chromium/chore_modify_chromium_handling_of_mouse_events.patch +++ b/patches/chromium/chore_modify_chromium_handling_of_mouse_events.patch @@ -34,10 +34,10 @@ index 39b5a8fdd165efd74b00256552b51b5413107958..bfc4ef4f50efff4a77f2aef64335bb7e class ScrollEvent; diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc -index 3c273b08e3a0cb1a249334b06244bb6b89fde27f..20fcbe09d9fe9104cbe791e03b02f8e2e5064c2d 100644 +index b687c8505f1afc918fc4994dd6fbb8b6520e3e8a..d8168622ee2e0d42f8d4486d8f9391b4508aff54 100644 --- a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc +++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc -@@ -1382,6 +1382,10 @@ void DesktopWindowTreeHostWin::HandleHeadlessWindowBoundsChanged( +@@ -1360,6 +1360,10 @@ void DesktopWindowTreeHostWin::HandleHeadlessWindowBoundsChanged( window()->SetProperty(aura::client::kHeadlessBoundsKey, bounds); } @@ -49,7 +49,7 @@ index 3c273b08e3a0cb1a249334b06244bb6b89fde27f..20fcbe09d9fe9104cbe791e03b02f8e2 DesktopWindowTreeHostWin::GetSingletonDesktopNativeCursorManager() { return new DesktopNativeCursorManagerWin(); diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.h b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.h -index dab595aacaeca4f6f735fd04004c27a4949278d2..177134d439866db9dbbde657ff358a761ad7f39d 100644 +index 28cbd63261275e252381d88c13c1a3b4067d197f..45e47bae0e8b3369072c6e179206aa6d222e0ec5 100644 --- a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.h +++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.h @@ -272,6 +272,7 @@ class VIEWS_EXPORT DesktopWindowTreeHostWin diff --git a/patches/chromium/chore_partial_revert_of.patch b/patches/chromium/chore_partial_revert_of.patch index 290f57a3ca58..065bc7cdf934 100644 --- a/patches/chromium/chore_partial_revert_of.patch +++ b/patches/chromium/chore_partial_revert_of.patch @@ -14,10 +14,10 @@ track down the source of this problem & figure out if we can fix it by changing something in Electron. diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index 29185fc4c426652d192870c8a11aaa981a08ebf8..de2e8163c6ae5a1a01a79413d3d44b7c11ede311 100644 +index fbe6b5d24185c0b0e664db05c7801434737d4d8d..51798b8ceb81cf9d374cf594aa6afbcb366f4732 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -5224,7 +5224,7 @@ FrameTree* WebContentsImpl::CreateNewWindow( +@@ -5233,7 +5233,7 @@ FrameTree* WebContentsImpl::CreateNewWindow( : IsGuest(); // While some guest types do not have a guest SiteInstance, the ones that // don't all override WebContents creation above. diff --git a/patches/chromium/chore_patch_out_partition_attribute_dcheck_for_webviews.patch b/patches/chromium/chore_patch_out_partition_attribute_dcheck_for_webviews.patch index a383798ee333..31a680bd7d01 100644 --- a/patches/chromium/chore_patch_out_partition_attribute_dcheck_for_webviews.patch +++ b/patches/chromium/chore_patch_out_partition_attribute_dcheck_for_webviews.patch @@ -14,10 +14,10 @@ This change patches it out to prevent the DCHECK. It can be removed once/if we see a better solution to the problem. diff --git a/content/browser/site_instance_impl.cc b/content/browser/site_instance_impl.cc -index 8db7e1a1ac6947a630cdf6993bf9cef772252cd9..4a4f5bb2fa0e26b921b2e40fade705e83c0bc573 100644 +index c88f60749ed5c1371a4b85540f515c2124043f53..cea6f1123dcff9b7531783fb6d50c43e9e1cd5fb 100644 --- a/content/browser/site_instance_impl.cc +++ b/content/browser/site_instance_impl.cc -@@ -226,7 +226,7 @@ scoped_refptr SiteInstanceImpl::CreateForGuest( +@@ -227,7 +227,7 @@ scoped_refptr SiteInstanceImpl::CreateForGuest( BrowserContext* browser_context, const StoragePartitionConfig& partition_config) { DCHECK(browser_context); diff --git a/patches/chromium/chore_patch_out_profile_methods_in_chrome_browser_pdf.patch b/patches/chromium/chore_patch_out_profile_methods_in_chrome_browser_pdf.patch index 4a93ef5d2886..5992bc3b2cf6 100644 --- a/patches/chromium/chore_patch_out_profile_methods_in_chrome_browser_pdf.patch +++ b/patches/chromium/chore_patch_out_profile_methods_in_chrome_browser_pdf.patch @@ -28,3 +28,21 @@ index e3b9f14a4cf2167064ce6716053e663adffa1542..65f13a4607c8145858fd47d81cb9960c // When the enterprise policy is not set, use finch/feature flag choice. return base::FeatureList::IsEnabled( +diff --git a/chrome/browser/pdf/pdf_extension_util.cc b/chrome/browser/pdf/pdf_extension_util.cc +index 8967bad0bc644d7a1541fdf86fa9d65c0b2c5dd0..25f75dd808e56dbcb3f6a4e284f7485427507e7e 100644 +--- a/chrome/browser/pdf/pdf_extension_util.cc ++++ b/chrome/browser/pdf/pdf_extension_util.cc +@@ -245,10 +245,13 @@ bool IsPrintingEnabled(content::BrowserContext* context) { + + #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(ENABLE_PDF_INK2) + bool IsPdfAnnotationsEnabledByPolicy(content::BrowserContext* context) { ++# if 0 + PrefService* prefs = + context ? Profile::FromBrowserContext(context)->GetPrefs() : nullptr; + return !prefs || !prefs->IsManagedPreference(prefs::kPdfAnnotationsEnabled) || + prefs->GetBoolean(prefs::kPdfAnnotationsEnabled); ++#endif ++ return true; + } + #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(ENABLE_PDF_INK2) + diff --git a/patches/chromium/chore_provide_iswebcontentscreationoverridden_with_full_params.patch b/patches/chromium/chore_provide_iswebcontentscreationoverridden_with_full_params.patch index 2014d114c179..82a9de6faac0 100644 --- a/patches/chromium/chore_provide_iswebcontentscreationoverridden_with_full_params.patch +++ b/patches/chromium/chore_provide_iswebcontentscreationoverridden_with_full_params.patch @@ -80,7 +80,7 @@ index b6582b4013d9682d32bd524b4053b443a4df00f8..afcbce72e0f247b4d5a637b27c9f25d9 content::WebContents* source, const content::OpenURLParams& params, diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc -index 875c7a37c48ce50b5439a51df5e505e1bbcd5155..035432c70a6b65a2520f130e0db8a91f20e92770 100644 +index 8c5e577eb89cf1ee85e76fea6385f7a18a60143b..2ae70471cfa301570d696662182773e868054143 100644 --- a/chrome/browser/ui/browser.cc +++ b/chrome/browser/ui/browser.cc @@ -2392,8 +2392,7 @@ bool Browser::IsWebContentsCreationOverridden( @@ -103,10 +103,10 @@ index 875c7a37c48ce50b5439a51df5e505e1bbcd5155..035432c70a6b65a2520f130e0db8a91f WebContents* Browser::CreateCustomWebContents( diff --git a/chrome/browser/ui/browser.h b/chrome/browser/ui/browser.h -index 9dfba94b0aaa3f27f363bd50b489cae9e0e3cda6..3867e5d5741103ee0b65533dae4b80906b393f59 100644 +index 1de7f9596b2f8f545ad5da7db51a35e5e0fc8592..0db8f52ef8375970f966fe8a2e3e06a8b2eeac02 100644 --- a/chrome/browser/ui/browser.h +++ b/chrome/browser/ui/browser.h -@@ -1037,8 +1037,7 @@ class Browser : public TabStripModelObserver, +@@ -1026,8 +1026,7 @@ class Browser : public TabStripModelObserver, content::SiteInstance* source_site_instance, content::mojom::WindowContainerType window_container_type, const GURL& opener_url, @@ -222,10 +222,10 @@ index b969f1d97b7e3396119b579cfbe61e19ff7d2dd4..b8d6169652da28266a514938b45b39c5 content::WebContents* AddNewContents( content::WebContents* source, diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index 6eaa7d566058fdcc9ebfa10f0420c3a234cb0483..bbbc07e36e6de11169f8317c64558b8c4d1699d5 100644 +index 33abfcd326148f32eff2266a4545345e4a561a4e..4bb69438947fff73a6905a1ecc1b711986a89124 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -5187,8 +5187,7 @@ FrameTree* WebContentsImpl::CreateNewWindow( +@@ -5196,8 +5196,7 @@ FrameTree* WebContentsImpl::CreateNewWindow( if (delegate_ && delegate_->IsWebContentsCreationOverridden( opener, source_site_instance, params.window_container_type, diff --git a/patches/chromium/command-ismediakey.patch b/patches/chromium/command-ismediakey.patch index 50e25fcbe5e7..c8a7504f742f 100644 --- a/patches/chromium/command-ismediakey.patch +++ b/patches/chromium/command-ismediakey.patch @@ -95,10 +95,10 @@ index 9e63dd9d33abc89a7bbef75992925356470ebb26..9071afc9bb01db832164909a202effaf bool is_listening_ = false; diff --git a/ui/base/accelerators/global_accelerator_listener/global_accelerator_listener_win.cc b/ui/base/accelerators/global_accelerator_listener/global_accelerator_listener_win.cc -index 034ccea0cda4265abbfc889178f4cba4f3bd7eb8..384f0968aca07cde1fe6434a318e5334f6ecbe9e 100644 +index d3838460df1f61dbcee1cc6586632cb218fec97a..4351cfeea03b8adc5da8500db1faf6d8b8811454 100644 --- a/ui/base/accelerators/global_accelerator_listener/global_accelerator_listener_win.cc +++ b/ui/base/accelerators/global_accelerator_listener/global_accelerator_listener_win.cc -@@ -67,6 +67,8 @@ void GlobalAcceleratorListenerWin::OnWndProc(HWND hwnd, +@@ -66,6 +66,8 @@ void GlobalAcceleratorListenerWin::OnWndProc(HWND hwnd, modifiers |= (LOWORD(lparam) & MOD_SHIFT) ? ui::EF_SHIFT_DOWN : 0; modifiers |= (LOWORD(lparam) & MOD_ALT) ? ui::EF_ALT_DOWN : 0; modifiers |= (LOWORD(lparam) & MOD_CONTROL) ? ui::EF_CONTROL_DOWN : 0; @@ -107,7 +107,7 @@ index 034ccea0cda4265abbfc889178f4cba4f3bd7eb8..384f0968aca07cde1fe6434a318e5334 ui::Accelerator accelerator(ui::KeyboardCodeForWindowsKeyCode(key_code), modifiers); -@@ -97,6 +99,7 @@ bool GlobalAcceleratorListenerWin::StartListeningForAccelerator( +@@ -96,6 +98,7 @@ bool GlobalAcceleratorListenerWin::StartListeningForAccelerator( modifiers |= accelerator.IsShiftDown() ? MOD_SHIFT : 0; modifiers |= accelerator.IsCtrlDown() ? MOD_CONTROL : 0; modifiers |= accelerator.IsAltDown() ? MOD_ALT : 0; 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 0e39852cbd01..2d663454a8eb 100644 --- a/patches/chromium/create_browser_v8_snapshot_file_name_fuse.patch +++ b/patches/chromium/create_browser_v8_snapshot_file_name_fuse.patch @@ -94,7 +94,7 @@ index db611d99a6c0f18f39967b38791822fda7d175b5..cc150475de655d5ef20a107ae3ef80c0 friend class ContentClientCreator; friend class ContentClientInitializer; diff --git a/gin/v8_initializer.cc b/gin/v8_initializer.cc -index 11cafc3e1588cce52b76cc2f09f66b3e451fb087..e07bdaeccecc8015462e35d5cf4606335e2e962c 100644 +index c79f996e2cbfe3e71f7de29424329dfc0d39a726..03c9bc18566794a668981bba6235b226e07eff74 100644 --- a/gin/v8_initializer.cc +++ b/gin/v8_initializer.cc @@ -660,8 +660,7 @@ void V8Initializer::GetV8ExternalSnapshotData(const char** snapshot_data_out, diff --git a/patches/chromium/disable_hidden.patch b/patches/chromium/disable_hidden.patch index 7c6ef540c4a1..72a1a92bcdd9 100644 --- a/patches/chromium/disable_hidden.patch +++ b/patches/chromium/disable_hidden.patch @@ -6,7 +6,7 @@ Subject: disable_hidden.patch Electron uses this to disable background throttling for hidden windows. diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc -index 8173547224997a68c2878d6dfb26b1cb436353c6..6a60a4b0275e1832216b092c29bc867f4727ca22 100644 +index 52f772876a8878a7dbc95bb8f243d1442d30977f..cdfdd322ffb2e61d5480ac7c88dba35a1cc1b5b9 100644 --- a/content/browser/renderer_host/render_widget_host_impl.cc +++ b/content/browser/renderer_host/render_widget_host_impl.cc @@ -833,6 +833,10 @@ void RenderWidgetHostImpl::WasHidden() { diff --git a/patches/chromium/disable_unload_metrics.patch b/patches/chromium/disable_unload_metrics.patch index 7e147685b035..81b7a88680cd 100644 --- a/patches/chromium/disable_unload_metrics.patch +++ b/patches/chromium/disable_unload_metrics.patch @@ -24,10 +24,10 @@ This patch temporarily disables the metrics so we can have green CI, and we should continue seeking for a real fix. diff --git a/content/browser/renderer_host/navigator.cc b/content/browser/renderer_host/navigator.cc -index d976c082529a62bcef7352531ced808e5970027e..31e95005359f6e8e4e18ebd75324940f4fdd11eb 100644 +index 3c736de224325fec247308ea8adef3c1186029f9..8b5fd128120b2a4db387bf42b632c9e2e94f7cd4 100644 --- a/content/browser/renderer_host/navigator.cc +++ b/content/browser/renderer_host/navigator.cc -@@ -1476,6 +1476,7 @@ void Navigator::RecordNavigationMetrics( +@@ -1478,6 +1478,7 @@ void Navigator::RecordNavigationMetrics( .InMilliseconds()); } @@ -35,7 +35,7 @@ index d976c082529a62bcef7352531ced808e5970027e..31e95005359f6e8e4e18ebd75324940f // If this is a same-process navigation and we have timestamps for unload // durations, fill those metrics out as well. if (params.unload_start && params.unload_end && -@@ -1525,6 +1526,7 @@ void Navigator::RecordNavigationMetrics( +@@ -1527,6 +1528,7 @@ void Navigator::RecordNavigationMetrics( first_before_unload_start_time) .InMilliseconds()); } diff --git a/patches/chromium/enable_reset_aspect_ratio.patch b/patches/chromium/enable_reset_aspect_ratio.patch index e62d786bec98..fc663286cd21 100644 --- a/patches/chromium/enable_reset_aspect_ratio.patch +++ b/patches/chromium/enable_reset_aspect_ratio.patch @@ -6,10 +6,10 @@ Subject: feat: enable setting aspect ratio to 0 Make SetAspectRatio accept 0 as valid input, which would reset to null. diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc -index f754ca0c3bc3ba9e7ff2f3f883b29c15be2b410a..3c273b08e3a0cb1a249334b06244bb6b89fde27f 100644 +index 18cd413e8780161d2c1d1993e12e8d87eb12a33f..b687c8505f1afc918fc4994dd6fbb8b6520e3e8a 100644 --- a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc +++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc -@@ -631,7 +631,7 @@ void DesktopWindowTreeHostWin::SetOpacity(float opacity) { +@@ -609,7 +609,7 @@ void DesktopWindowTreeHostWin::SetOpacity(float opacity) { void DesktopWindowTreeHostWin::SetAspectRatio( const gfx::SizeF& 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 d0e5af5f5477..fc017e88aa02 100644 --- a/patches/chromium/expose_setuseragent_on_networkcontext.patch +++ b/patches/chromium/expose_setuseragent_on_networkcontext.patch @@ -33,10 +33,10 @@ index 0ab8187b0db8ae6db46d81738f653a2bc4c566f6..de3d55e85c22317f7f9375eb94d0d5d4 } // namespace net diff --git a/services/network/network_context.cc b/services/network/network_context.cc -index 02853bf6552d49986b782785d3ab5a61ec0d3734..5934676556e25e51d580e063aeb0afde2a3f2a97 100644 +index b91e9da008c121d2afbc5fd4c3c9ea401a6191a8..0b3d0538bd10c0364aa4b1a928f135893ddc7864 100644 --- a/services/network/network_context.cc +++ b/services/network/network_context.cc -@@ -1837,6 +1837,13 @@ void NetworkContext::SetNetworkConditions( +@@ -1842,6 +1842,13 @@ void NetworkContext::SetNetworkConditions( std::move(network_conditions)); } @@ -51,7 +51,7 @@ index 02853bf6552d49986b782785d3ab5a61ec0d3734..5934676556e25e51d580e063aeb0afde // 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 5b5d8eccb9c84965e996cd8d2a8c7d962df7852a..66da9008486d58ad4835b3ba58a6b0aefb53ab2f 100644 +index fcddda19a4d37052312748a6dd4e5ffdee1d240b..259d97bb314273600ad0541260043ea0ff02e015 100644 --- a/services/network/network_context.h +++ b/services/network/network_context.h @@ -326,6 +326,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext @@ -63,10 +63,10 @@ index 5b5d8eccb9c84965e996cd8d2a8c7d962df7852a..66da9008486d58ad4835b3ba58a6b0ae void SetEnableReferrers(bool enable_referrers) override; #if BUILDFLAG(IS_CT_SUPPORTED) diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom -index f510b5c5c79161f32a08219aa7f6cd7a722eed85..6bc2f6221fe61e861ece518381c697e4cf4727a1 100644 +index de945e5f2cb5398c37617fce5e00834b481d3875..0ca66dd8038a0410c4949d9a00f43c156c3b46c5 100644 --- a/services/network/public/mojom/network_context.mojom +++ b/services/network/public/mojom/network_context.mojom -@@ -1278,6 +1278,9 @@ interface NetworkContext { +@@ -1282,6 +1282,9 @@ interface NetworkContext { SetNetworkConditions(mojo_base.mojom.UnguessableToken throttling_profile_id, NetworkConditions? conditions); @@ -77,7 +77,7 @@ index f510b5c5c79161f32a08219aa7f6cd7a722eed85..6bc2f6221fe61e861ece518381c697e4 SetAcceptLanguage(string new_accept_language); diff --git a/services/network/test/test_network_context.h b/services/network/test/test_network_context.h -index 81930f3b5ca760d4db9c65aeb36162ddea68a872..5d67e45515480b769ed6555f6e0c18f25fde1e6c 100644 +index c57dcce278f96c9bd3157fd5d2ce0f9d0ecbef53..5a86df4d57aa255b63e503050d31320e80124700 100644 --- a/services/network/test/test_network_context.h +++ b/services/network/test/test_network_context.h @@ -159,6 +159,7 @@ class TestNetworkContext : public mojom::NetworkContext { diff --git a/patches/chromium/extend_apply_webpreferences.patch b/patches/chromium/extend_apply_webpreferences.patch index 1eb141332647..36729a582cf2 100644 --- a/patches/chromium/extend_apply_webpreferences.patch +++ b/patches/chromium/extend_apply_webpreferences.patch @@ -12,7 +12,7 @@ Ideally we could add an embedder observer pattern here but that can be done in future work. diff --git a/third_party/blink/renderer/core/exported/web_view_impl.cc b/third_party/blink/renderer/core/exported/web_view_impl.cc -index f6a248b1de8b313658453dd380529ec7c2e40033..15a6b41cacb7b66d95e6dc2cff8148c3d6c8c28b 100644 +index 2390395a3df10aca3510a619e91dab674de60e67..f8fae134e122a223440530bd696db899dce2fe56 100644 --- a/third_party/blink/renderer/core/exported/web_view_impl.cc +++ b/third_party/blink/renderer/core/exported/web_view_impl.cc @@ -172,6 +172,7 @@ @@ -23,7 +23,7 @@ index f6a248b1de8b313658453dd380529ec7c2e40033..15a6b41cacb7b66d95e6dc2cff8148c3 #include "third_party/blink/renderer/platform/graphics/image.h" #include "third_party/blink/renderer/platform/graphics/paint/cull_rect.h" #include "third_party/blink/renderer/platform/graphics/paint/paint_record_builder.h" -@@ -1862,6 +1863,7 @@ void WebView::ApplyWebPreferences(const web_pref::WebPreferences& prefs, +@@ -1864,6 +1865,7 @@ void WebView::ApplyWebPreferences(const web_pref::WebPreferences& prefs, #if BUILDFLAG(IS_MAC) web_view_impl->SetMaximumLegibleScale( prefs.default_maximum_page_scale_factor); diff --git a/patches/chromium/feat_add_support_for_missing_dialog_features_to_shell_dialogs.patch b/patches/chromium/feat_add_support_for_missing_dialog_features_to_shell_dialogs.patch index 0b06a833dd5b..e5639a92858a 100644 --- a/patches/chromium/feat_add_support_for_missing_dialog_features_to_shell_dialogs.patch +++ b/patches/chromium/feat_add_support_for_missing_dialog_features_to_shell_dialogs.patch @@ -262,10 +262,10 @@ index 61683d0eddb04c494ca5e650e7d556b44968ec49..5492456a9138b250e97a5479838bb443 } // namespace ui diff --git a/ui/shell_dialogs/select_file_dialog_linux_portal.cc b/ui/shell_dialogs/select_file_dialog_linux_portal.cc -index b23d357d4e21f10be82f0ea37b1ec3e959fc2c0b..e768afc05b42d4d026c88f1516d4e9db84e8dff6 100644 +index 8dafba0690d9cde3506b60a21ba36c49394d9125..03fdd2d86e776d4be60c52790dcb2946e9341954 100644 --- a/ui/shell_dialogs/select_file_dialog_linux_portal.cc +++ b/ui/shell_dialogs/select_file_dialog_linux_portal.cc -@@ -28,6 +28,7 @@ +@@ -29,6 +29,7 @@ #include "dbus/message.h" #include "dbus/object_path.h" #include "dbus/object_proxy.h" @@ -273,7 +273,7 @@ index b23d357d4e21f10be82f0ea37b1ec3e959fc2c0b..e768afc05b42d4d026c88f1516d4e9db #include "ui/aura/window_tree_host.h" #include "ui/base/l10n/l10n_util.h" #include "ui/gfx/native_widget_types.h" -@@ -99,7 +100,7 @@ void OnGetPropertyReply(dbus::Response* response) { +@@ -100,7 +101,7 @@ void OnGetPropertyReply(dbus::Response* response) { : ServiceAvailability::kNotAvailable; } @@ -282,7 +282,7 @@ index b23d357d4e21f10be82f0ea37b1ec3e959fc2c0b..e768afc05b42d4d026c88f1516d4e9db if (!service_started.value_or(false)) { g_service_availability = ServiceAvailability::kNotAvailable; return; -@@ -166,18 +167,24 @@ void SelectFileDialogLinuxPortal::StartAvailabilityTestInBackground() { +@@ -167,18 +168,24 @@ void SelectFileDialogLinuxPortal::StartAvailabilityTestInBackground() { GetMainTaskRunner() = base::SequencedTaskRunner::GetCurrentDefault(); @@ -307,7 +307,7 @@ index b23d357d4e21f10be82f0ea37b1ec3e959fc2c0b..e768afc05b42d4d026c88f1516d4e9db } bool SelectFileDialogLinuxPortal::IsRunning( -@@ -382,11 +389,14 @@ DbusDictionary SelectFileDialogLinuxPortal::BuildOptionsDictionary( +@@ -383,11 +390,14 @@ DbusDictionary SelectFileDialogLinuxPortal::BuildOptionsDictionary( const PortalFilterSet& filter_set) { DbusDictionary dict; @@ -325,7 +325,7 @@ index b23d357d4e21f10be82f0ea37b1ec3e959fc2c0b..e768afc05b42d4d026c88f1516d4e9db [[fallthrough]]; case SelectFileDialog::SELECT_FOLDER: case SelectFileDialog::Type::SELECT_EXISTING_FOLDER: -@@ -399,6 +409,10 @@ DbusDictionary SelectFileDialogLinuxPortal::BuildOptionsDictionary( +@@ -400,6 +410,10 @@ DbusDictionary SelectFileDialogLinuxPortal::BuildOptionsDictionary( break; } @@ -333,6 +333,6 @@ index b23d357d4e21f10be82f0ea37b1ec3e959fc2c0b..e768afc05b42d4d026c88f1516d4e9db + dict.PutAs(kFileChooserOptionAcceptLabel, DbusString(accept_label)); + } + - if (!default_path.empty()) { + if (!default_path.empty() && base::IsStringUTF8(default_path.value())) { if (default_path_exists) { // If this is an existing directory, navigate to that directory, with no diff --git a/patches/chromium/feat_allow_code_cache_in_custom_schemes.patch b/patches/chromium/feat_allow_code_cache_in_custom_schemes.patch index e798bf875ad4..d50324a2cdee 100644 --- a/patches/chromium/feat_allow_code_cache_in_custom_schemes.patch +++ b/patches/chromium/feat_allow_code_cache_in_custom_schemes.patch @@ -9,7 +9,7 @@ embedders to make custom schemes allow V8 code cache. Chromium CL: https://chromium-review.googlesource.com/c/chromium/src/+/5019665 diff --git a/content/browser/code_cache/generated_code_cache.cc b/content/browser/code_cache/generated_code_cache.cc -index d6ddb79521290790aeb8fbd997117cf3c6157c75..52a9536f4187418327f980fd3dd68211d8103374 100644 +index 1673dd4966365f31f1073a4c90743e6fe73880b6..cb3d3da5bc9da99c950521d18f28aa438467fdf4 100644 --- a/content/browser/code_cache/generated_code_cache.cc +++ b/content/browser/code_cache/generated_code_cache.cc @@ -8,6 +8,7 @@ @@ -20,7 +20,7 @@ index d6ddb79521290790aeb8fbd997117cf3c6157c75..52a9536f4187418327f980fd3dd68211 #include "base/feature_list.h" #include "base/functional/bind.h" #include "base/functional/callback_helpers.h" -@@ -32,6 +33,7 @@ +@@ -31,6 +32,7 @@ #include "net/http/http_cache.h" #include "third_party/blink/public/common/scheme_registry.h" #include "url/gurl.h" @@ -28,7 +28,7 @@ index d6ddb79521290790aeb8fbd997117cf3c6157c75..52a9536f4187418327f980fd3dd68211 using storage::BigIOBuffer; -@@ -44,7 +46,7 @@ constexpr char kSeparator[] = " \n"; +@@ -43,7 +45,7 @@ constexpr char kSeparator[] = " \n"; // We always expect to receive valid URLs that can be used as keys to the code // cache. The relevant checks (for ex: resource_url is valid, origin_lock is @@ -37,7 +37,7 @@ index d6ddb79521290790aeb8fbd997117cf3c6157c75..52a9536f4187418327f980fd3dd68211 // // This function doesn't enforce anything in the production code. It is here // to make the assumptions explicit and to catch any errors when DCHECKs are -@@ -54,33 +56,55 @@ void CheckValidKeys(const GURL& resource_url, +@@ -53,33 +55,55 @@ void CheckValidKeys(const GURL& resource_url, GeneratedCodeCache::CodeCacheType cache_type) { // If the resource url is invalid don't cache the code. DCHECK(resource_url.is_valid()); @@ -117,10 +117,10 @@ index d6ddb79521290790aeb8fbd997117cf3c6157c75..52a9536f4187418327f980fd3dd68211 // Generates the cache key for the given |resource_url|, |origin_lock| and diff --git a/content/browser/code_cache/generated_code_cache.h b/content/browser/code_cache/generated_code_cache.h -index c5fb0546fb8724a6ba34b55d8d52b2f70ad5bc0c..883c4022aa58e5eb5345ec4e8815a1374160d96c 100644 +index 94602e2319d3f7ed557da98e0598c9f96d986260..0a9a856d8bd9d702eb49e45a54c141a39f5ec622 100644 --- a/content/browser/code_cache/generated_code_cache.h +++ b/content/browser/code_cache/generated_code_cache.h -@@ -52,12 +52,14 @@ class CONTENT_EXPORT GeneratedCodeCache { +@@ -51,12 +51,14 @@ class CONTENT_EXPORT GeneratedCodeCache { // Cache type. Used for collecting statistics for JS and Wasm in separate // buckets. enum CodeCacheType { @@ -140,10 +140,10 @@ index c5fb0546fb8724a6ba34b55d8d52b2f70ad5bc0c..883c4022aa58e5eb5345ec4e8815a137 // JavaScript from chrome and chrome-untrusted pages. The resource URLs are diff --git a/content/browser/code_cache/generated_code_cache_browsertest.cc b/content/browser/code_cache/generated_code_cache_browsertest.cc -index c810c580efea05ba9b3b41a90b289224220bb203..55864eed550b09ba41732c706a81a122594949d6 100644 +index 8faec12f8a618d587964c1ffaf868dc104fa7311..6294358f6d28864e761d31a1497f96f8cc454788 100644 --- a/content/browser/code_cache/generated_code_cache_browsertest.cc +++ b/content/browser/code_cache/generated_code_cache_browsertest.cc -@@ -11,17 +11,22 @@ +@@ -12,17 +12,22 @@ #include "base/time/time.h" #include "content/browser/code_cache/generated_code_cache_context.h" #include "content/browser/renderer_host/code_cache_host_impl.h" @@ -166,7 +166,7 @@ index c810c580efea05ba9b3b41a90b289224220bb203..55864eed550b09ba41732c706a81a122 #include "net/base/features.h" #include "net/dns/mock_host_resolver.h" #include "third_party/blink/public/common/features.h" -@@ -31,6 +36,8 @@ namespace content { +@@ -32,6 +37,8 @@ namespace content { namespace { @@ -175,7 +175,7 @@ index c810c580efea05ba9b3b41a90b289224220bb203..55864eed550b09ba41732c706a81a122 bool SupportsSharedWorker() { #if BUILDFLAG(IS_ANDROID) // SharedWorkers are not enabled on Android. https://crbug.com/154571 -@@ -875,4 +882,82 @@ IN_PROC_BROWSER_TEST_F(LocalCompileHintsBrowserTest, LocalCompileHints) { +@@ -955,4 +962,82 @@ IN_PROC_BROWSER_TEST_F(LocalCompileHintsBrowserTest, LocalCompileHints) { } } diff --git a/patches/chromium/feat_configure_launch_options_for_service_process.patch b/patches/chromium/feat_configure_launch_options_for_service_process.patch index a5c061551451..602ccf3bc497 100644 --- a/patches/chromium/feat_configure_launch_options_for_service_process.patch +++ b/patches/chromium/feat_configure_launch_options_for_service_process.patch @@ -165,111 +165,118 @@ index 0791b5317fc6846389f65f93734ae5e816d04623..48948b409d6da58ade72c60ed848df49 FinishStartSandboxedProcessOnLauncherThread, this)); diff --git a/content/browser/service_host/service_process_host_impl.cc b/content/browser/service_host/service_process_host_impl.cc -index 96c9563aac5847e742de5d9c9236f78bcb6cfd9c..73c9d585579ad5bdc407687b8becd0b7f2d704af 100644 +index d9c14f91747bde0e76056d7f2f2ada166e67f994..53be16879777a3b9bef58ead5f7e420c1bf6acbe 100644 --- a/content/browser/service_host/service_process_host_impl.cc +++ b/content/browser/service_host/service_process_host_impl.cc -@@ -66,6 +66,17 @@ void LaunchServiceProcess(mojo::GenericPendingReceiver receiver, - options.allow_gpu_client.value()) { - host->SetAllowGpuClient(); +@@ -69,6 +69,17 @@ void LaunchServiceProcess(mojo::GenericPendingReceiver receiver, + utility_options.WithGpuClientAllowed(); } -+ + +#if BUILDFLAG(IS_WIN) -+ host->SetStdioHandles(std::move(options.stdout_handle), std::move(options.stderr_handle)); -+ host->SetFeedbackCursorOff(options.feedback_cursor_off); ++ utility_options.WithStdioHandles(std::move(service_options.stdout_handle), ++ std::move(service_options.stderr_handle)); ++ utility_options.WithFeedbackCursorOff(service_options.feedback_cursor_off); +#elif BUILDFLAG(IS_POSIX) -+ host->SetAdditionalFds(std::move(options.fds_to_remap)); ++ utility_options.WithAdditionalFds(std::move(service_options.fds_to_remap)); +#endif -+ host->SetCurrentDirectory(options.current_directory); -+ host->SetEnv(options.environment); -+ if (options.clear_environment) -+ host->ClearEnvironment(); - host->Start(); - host->GetChildProcess()->BindServiceInterface(std::move(receiver)); - } ++ utility_options.WithCurrentDirectory(service_options.current_directory); ++ utility_options.WithEnvironment(service_options.environment, ++ service_options.clear_environment); ++ + utility_options.WithBoundServiceInterfaceOnChildProcess(std::move(receiver)); + + UtilityProcessHost::Start(std::move(utility_options), diff --git a/content/browser/service_host/utility_process_host.cc b/content/browser/service_host/utility_process_host.cc -index e2c72b43f75b57ef1f49b82d3ecdfb425f8596de..51f8ff9b8424d098979a24c2e8628cdf7c4b758d 100644 +index 7db71d28fa05458bf88f468e67446ccde8a4b964..9d6c67c66576058723a6fb0a5abb279f05f15f4f 100644 --- a/content/browser/service_host/utility_process_host.cc +++ b/content/browser/service_host/utility_process_host.cc -@@ -190,11 +190,13 @@ const ChildProcessData& UtilityProcessHost::GetData() { - return process_->GetData(); +@@ -244,13 +244,13 @@ UtilityProcessHost::Options& UtilityProcessHost::Options::WithFileToPreload( } + #endif // BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_POSIX) - void UtilityProcessHost::SetEnv(const base::EnvironmentMap& env) { + UtilityProcessHost::Options& UtilityProcessHost::Options::WithEnvironment( +- const base::EnvironmentMap& env) { ++ const base::EnvironmentMap& env, ++ bool new_environment) { env_ = env; ++ inherit_environment_ = !new_environment; + return *this; } -#endif -+ -+void UtilityProcessHost::ClearEnvironment() { -+ inherit_environment_ = false; -+} - bool UtilityProcessHost::Start() { - return StartProcess(); -@@ -241,6 +243,30 @@ void UtilityProcessHost::SetZygoteForTesting(ZygoteCommunication* handle) { + #if BUILDFLAG(USE_ZYGOTE) + UtilityProcessHost::Options& UtilityProcessHost::Options::WithZygoteForTesting( +@@ -260,6 +260,36 @@ UtilityProcessHost::Options& UtilityProcessHost::Options::WithZygoteForTesting( } #endif // BUILDFLAG(USE_ZYGOTE) +#if BUILDFLAG(IS_WIN) -+void UtilityProcessHost::SetStdioHandles( ++UtilityProcessHost::Options& UtilityProcessHost::Options::WithStdioHandles( + base::win::ScopedHandle stdout_handle, + base::win::ScopedHandle stderr_handle) { + stdout_handle_ = std::move(stdout_handle); + stderr_handle_ = std::move(stderr_handle); ++ return *this; +} +#elif BUILDFLAG(IS_POSIX) -+void UtilityProcessHost::SetAdditionalFds(base::FileHandleMappingVector mapping) { ++UtilityProcessHost::Options& UtilityProcessHost::Options::WithAdditionalFds( ++ base::FileHandleMappingVector mapping) { + fds_to_remap_ = std::move(mapping); ++ return *this; +} +#endif + -+void UtilityProcessHost::SetCurrentDirectory( ++UtilityProcessHost::Options& UtilityProcessHost::Options::WithCurrentDirectory( + const base::FilePath& cwd) { + current_directory_ = cwd; ++ return *this; +} + +#if BUILDFLAG(IS_WIN) -+void UtilityProcessHost::SetFeedbackCursorOff(bool feedback_cursor_off) { ++UtilityProcessHost::Options& UtilityProcessHost::Options::WithFeedbackCursorOff( ++ bool feedback_cursor_off) { + feedback_cursor_off_ = feedback_cursor_off; ++ return *this; +} +#endif // BUILDFLAG(IS_WIN) + - mojom::ChildProcess* UtilityProcessHost::GetChildProcess() { - return static_cast(process_->GetHost()) - ->child_process(); -@@ -456,9 +482,26 @@ bool UtilityProcessHost::StartProcess() { - } + UtilityProcessHost::Options& + UtilityProcessHost::Options::WithBoundReceiverOnChildProcessForTesting( + mojo::GenericPendingReceiver receiver) { +@@ -521,9 +551,26 @@ bool UtilityProcessHost::StartProcess() { + } #endif // BUILDFLAG(ENABLE_GPU_CHANNEL_MEDIA_CAPTURE) && !BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_WIN) -+ file_data_->stdout_handle = std::move(stdout_handle_); -+ file_data_->stderr_handle = std::move(stderr_handle_); ++ options_.file_data_->stdout_handle = std::move(options_.stdout_handle_); ++ options_.file_data_->stderr_handle = std::move(options_.stderr_handle_); +#elif BUILDFLAG(IS_POSIX) -+ if (!fds_to_remap_.empty()) { -+ for (const auto& remapped_fd : fds_to_remap_) { -+ file_data_->additional_remapped_fds.emplace( -+ remapped_fd.second, remapped_fd.first); -+ } ++ if (!options_.fds_to_remap_.empty()) { ++ for (const auto& remapped_fd : options_.fds_to_remap_) { ++ options_.file_data_->additional_remapped_fds.emplace(remapped_fd.second, ++ remapped_fd.first); + } ++ } +#endif + - std::unique_ptr delegate = - std::make_unique( -- sandbox_type_, env_, *cmd_line); -+ sandbox_type_, env_, current_directory_, *cmd_line, -+ inherit_environment_); + std::unique_ptr delegate = + std::make_unique( +- options_.sandbox_type_, options_.env_, *cmd_line); ++ options_.sandbox_type_, options_.env_, options_.current_directory_, ++ *cmd_line, options_.inherit_environment_); + +#if BUILDFLAG(IS_WIN) -+ delegate->SetFeedbackCursorOff(feedback_cursor_off_); ++ delegate->SetFeedbackCursorOff(options_.feedback_cursor_off_); +#endif // BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_WIN) - if (!preload_libraries_.empty()) { + if (!options_.preload_libraries_.empty()) { diff --git a/content/browser/service_host/utility_process_host.h b/content/browser/service_host/utility_process_host.h -index d13e6db4857242480591bff040709532d16f513d..1164da12ee71a8575c17bf1b84a505e8a32b96b3 100644 +index 4335d7ff718c3d7de92320ba11c39c3957303788..55379fbe9233ba96f6e4729e2b7d534c0c6884a0 100644 --- a/content/browser/service_host/utility_process_host.h +++ b/content/browser/service_host/utility_process_host.h -@@ -30,6 +30,10 @@ +@@ -29,6 +29,10 @@ #include "content/public/common/zygote/zygote_handle.h" #endif // BUILDFLAG(USE_ZYGOTE) @@ -280,72 +287,69 @@ index d13e6db4857242480591bff040709532d16f513d..1164da12ee71a8575c17bf1b84a505e8 namespace base { class Thread; } // namespace base -@@ -99,9 +103,13 @@ class CONTENT_EXPORT UtilityProcessHost +@@ -111,14 +115,31 @@ class CONTENT_EXPORT UtilityProcessHost + std::variant file); + #endif - // Returns information about the utility child process. - const ChildProcessData& GetData(); -#if BUILDFLAG(IS_POSIX) -+ -+ // Set/Unset environment variables. - void SetEnv(const base::EnvironmentMap& env); +- Options& WithEnvironment(const base::EnvironmentMap& env); -#endif -+ -+ // Clear the environment for the new process before processing -+ // changes from SetEnv. -+ void ClearEnvironment(); ++ // Specifies the environment that should be applied to the process. ++ // |new_environment| controls whether the process should inherit ++ // environment from the parent process. ++ Options& WithEnvironment(const base::EnvironmentMap& env, ++ bool new_environment); - // Starts the utility process. - bool Start(); -@@ -139,6 +147,21 @@ class CONTENT_EXPORT UtilityProcessHost - void SetZygoteForTesting(ZygoteCommunication* handle); + #if BUILDFLAG(USE_ZYGOTE) + Options& WithZygoteForTesting(ZygoteCommunication* handle); #endif // BUILDFLAG(USE_ZYGOTE) +#if BUILDFLAG(IS_WIN) -+ void SetStdioHandles(base::win::ScopedHandle stdout_handle, -+ base::win::ScopedHandle stderr_handle); ++ Options& WithStdioHandles(base::win::ScopedHandle stdout_handle, ++ base::win::ScopedHandle stderr_handle); +#elif BUILDFLAG(IS_POSIX) -+ void SetAdditionalFds(base::FileHandleMappingVector mapping); ++ Options& WithAdditionalFds(base::FileHandleMappingVector mapping); +#endif + -+ // Sets the working directory of the process. -+ void SetCurrentDirectory(const base::FilePath& cwd); ++ // Sets the working directory of the process. ++ Options& WithCurrentDirectory(const base::FilePath& cwd); + +#if BUILDFLAG(IS_WIN) -+ // Specifies if the process should trigger mouse cursor feedback. -+ void SetFeedbackCursorOff(bool feedback_cursor_off); ++ // Specifies if the process should trigger mouse cursor feedback. ++ Options& WithFeedbackCursorOff(bool feedback_cursor_off); +#endif // BUILDFLAG(IS_WIN) + - // Returns a control interface for the running child process. - mojom::ChildProcess* GetChildProcess(); - -@@ -192,6 +215,27 @@ class CONTENT_EXPORT UtilityProcessHost - std::optional> zygote_for_testing_; + // Requests that the process bind a receiving pipe targeting the interface + // named by `receiver`. Calls to this method generally end up in + // `ChildThreadImpl::OnBindReceiver()` and the option is used for testing +@@ -162,6 +183,27 @@ class CONTENT_EXPORT UtilityProcessHost + std::optional> zygote_for_testing_; #endif // BUILDFLAG(USE_ZYGOTE) +#if BUILDFLAG(IS_WIN) -+ // Specifies the handles for redirection of stdout and stderr. -+ base::win::ScopedHandle stdout_handle_; -+ base::win::ScopedHandle stderr_handle_; ++ // Specifies the handles for redirection of stdout and stderr. ++ base::win::ScopedHandle stdout_handle_; ++ base::win::ScopedHandle stderr_handle_; +#elif BUILDFLAG(IS_POSIX) -+ // Specifies file descriptors to propagate into the child process -+ // based on the mapping. -+ base::FileHandleMappingVector fds_to_remap_; ++ // Specifies file descriptors to propagate into the child process ++ // based on the mapping. ++ base::FileHandleMappingVector fds_to_remap_; +#endif + -+ // If not empty, change to this directory before executing the new process. -+ base::FilePath current_directory_; ++ // If not empty, change to this directory before executing the new process. ++ base::FilePath current_directory_; + -+ // Inherit enviroment from parent process. -+ bool inherit_environment_ = true; ++ // Inherit enviroment from parent process. ++ bool inherit_environment_ = true; + +#if BUILDFLAG(IS_WIN) -+ // Specifies if the process should trigger mouse cursor feedback. -+ bool feedback_cursor_off_ = false; ++ // Specifies if the process should trigger mouse cursor feedback. ++ bool feedback_cursor_off_ = false; +#endif // BUILDFLAG(IS_WIN) + - // Indicates whether the process has been successfully launched yet, or if - // launch failed. - enum class LaunchState { + #if BUILDFLAG(ENABLE_GPU_CHANNEL_MEDIA_CAPTURE) + // Whether or not to bind viz::mojom::Gpu to the utility process. + bool allowed_gpu_; diff --git a/content/browser/service_host/utility_sandbox_delegate.cc b/content/browser/service_host/utility_sandbox_delegate.cc index 5ff3c5dcb972eb635107557ea7c26eb1f3331d22..5b1939226dcb84a61b09eefe69ab24a5ad595e1b 100644 --- a/content/browser/service_host/utility_sandbox_delegate.cc diff --git a/patches/chromium/feat_corner_smoothing_css_rule_and_blink_painting.patch b/patches/chromium/feat_corner_smoothing_css_rule_and_blink_painting.patch index e51dc822db4b..448182b8d3b8 100644 --- a/patches/chromium/feat_corner_smoothing_css_rule_and_blink_painting.patch +++ b/patches/chromium/feat_corner_smoothing_css_rule_and_blink_painting.patch @@ -75,7 +75,7 @@ index f8361faf6151210d65a597562c533aaa0a5235df..328238c34a9381fbbeb5970af3de721c // used for canvas noising. uint64 canvas_noise_token = 0; diff --git a/third_party/blink/public/mojom/use_counter/metrics/css_property_id.mojom b/third_party/blink/public/mojom/use_counter/metrics/css_property_id.mojom -index 8e1737f9d205c511ae8e4103278a2650166f3915..ced3d02fdf338e3e2a07e93a4d22b2f9398c2267 100644 +index a96527c653d2108de572d1e94c3ce703b45f2830..f8eb2af2c97f888307f2be588c336d4209f6cb3e 100644 --- a/third_party/blink/public/mojom/use_counter/metrics/css_property_id.mojom +++ b/third_party/blink/public/mojom/use_counter/metrics/css_property_id.mojom @@ -48,6 +48,7 @@ enum CSSSampleId { @@ -87,10 +87,10 @@ index 8e1737f9d205c511ae8e4103278a2650166f3915..ced3d02fdf338e3e2a07e93a4d22b2f9 // This CSSSampleId represents page load for CSS histograms. It is recorded once // per page visit for each CSS histogram being logged on the blink side and the diff --git a/third_party/blink/public/web/web_settings.h b/third_party/blink/public/web/web_settings.h -index a53b4901dde0dc83dce6c9b56616eef0d02d94a5..b419672af985f673f375fbb63b4d2b2c419e3e03 100644 +index c37f784a1309da14354881d48a5a76a965930926..bffd221d2b3f3701710025103fa564c233e203d1 100644 --- a/third_party/blink/public/web/web_settings.h +++ b/third_party/blink/public/web/web_settings.h -@@ -285,6 +285,7 @@ class WebSettings { +@@ -287,6 +287,7 @@ class WebSettings { virtual void SetRequireTransientActivationAndAuthorizationForSubAppsAPIs( bool) = 0; virtual void SetRootScrollbarThemeColor(std::optional) = 0; @@ -112,10 +112,10 @@ index 6e991652d242795e292cea4c94cff59aaea078fa..b6834c78575520bb6e584dd2ce3333ac 'internal-forced-visited-'): internal_visited_order = 0 diff --git a/third_party/blink/renderer/core/css/css_properties.json5 b/third_party/blink/renderer/core/css/css_properties.json5 -index 63fff5e26a00d65818e5a05ae4f3285162521574..23cbe424b6c9de4f66cf1c2ce91682bf706d6f90 100644 +index 5619eae5a36f63627df605eeff049866ea846477..50bad85a916e5bb097d687cbc4d1721ecefa6c39 100644 --- a/third_party/blink/renderer/core/css/css_properties.json5 +++ b/third_party/blink/renderer/core/css/css_properties.json5 -@@ -8824,6 +8824,24 @@ +@@ -8866,6 +8866,24 @@ property_methods: ["ParseShorthand", "CSSValueFromComputedStyleInternal"], }, @@ -141,7 +141,7 @@ index 63fff5e26a00d65818e5a05ae4f3285162521574..23cbe424b6c9de4f66cf1c2ce91682bf { name: "-internal-visited-color", diff --git a/third_party/blink/renderer/core/css/css_property_equality.cc b/third_party/blink/renderer/core/css/css_property_equality.cc -index 11c153b01a111efed101ae53d2148b7f523a66f5..7a3547a2aa70ef7699bf9022a15199d499e8a802 100644 +index 9ec4976d64834bd4c09f3740edcd28334dd4ec50..e47da0a85670e800e74da957d6441d70d1c7ddd8 100644 --- a/third_party/blink/renderer/core/css/css_property_equality.cc +++ b/third_party/blink/renderer/core/css/css_property_equality.cc @@ -348,6 +348,8 @@ bool CSSPropertyEquality::PropertiesEqual(const PropertyHandle& property, @@ -154,10 +154,10 @@ index 11c153b01a111efed101ae53d2148b7f523a66f5..7a3547a2aa70ef7699bf9022a15199d4 return a.EmptyCells() == b.EmptyCells(); case CSSPropertyID::kFill: diff --git a/third_party/blink/renderer/core/css/properties/longhands/longhands_custom.cc b/third_party/blink/renderer/core/css/properties/longhands/longhands_custom.cc -index db463eb084f96e661a271be0646d6dbc84913ee2..336564df6f1266d6f186a56efd1836cfba951c72 100644 +index e519e13fea11950cc619e384f774b61a6e2385c0..8289ca0a41da1532692673a3e426e8688d93b32e 100644 --- a/third_party/blink/renderer/core/css/properties/longhands/longhands_custom.cc +++ b/third_party/blink/renderer/core/css/properties/longhands/longhands_custom.cc -@@ -12143,5 +12143,25 @@ const CSSValue* InternalEmptyLineHeight::ParseSingleValue( +@@ -12175,5 +12175,25 @@ const CSSValue* InternalEmptyLineHeight::ParseSingleValue( CSSValueID::kNone>(stream); } @@ -184,11 +184,11 @@ index db463eb084f96e661a271be0646d6dbc84913ee2..336564df6f1266d6f186a56efd1836cf } // namespace css_longhand } // namespace blink diff --git a/third_party/blink/renderer/core/css/resolver/style_builder_converter.cc b/third_party/blink/renderer/core/css/resolver/style_builder_converter.cc -index ae5470212b28d47f8b79799d1ef52757fcd5cbae..667ba05f2595048bcadab0b394c52540f8bceaf1 100644 +index 5618121a0b5621290a19f147bfbe9bf316fb3f27..bb1bd90371ce847d48ff9a228b098a26d28f5c6d 100644 --- a/third_party/blink/renderer/core/css/resolver/style_builder_converter.cc +++ b/third_party/blink/renderer/core/css/resolver/style_builder_converter.cc -@@ -3913,4 +3913,12 @@ PositionArea StyleBuilderConverter::ConvertPositionArea( - return PositionArea(span[0], span[1], span[2], span[3]); +@@ -3962,4 +3962,12 @@ FitText StyleBuilderConverter::ConvertFitText(StyleResolverState& state, + return FitText(target, method, size_limit); } +Length StyleBuilderConverter::ConvertCornerSmoothing(StyleResolverState& state, const CSSValue& value) { @@ -201,23 +201,23 @@ index ae5470212b28d47f8b79799d1ef52757fcd5cbae..667ba05f2595048bcadab0b394c52540 + } // namespace blink diff --git a/third_party/blink/renderer/core/css/resolver/style_builder_converter.h b/third_party/blink/renderer/core/css/resolver/style_builder_converter.h -index d761af01cc6b4ef01304dfe384c3aa92f414b8a2..de0f1c09f41b4f348a7163967f6d90d98fe7c06c 100644 +index 7104b5866a9bac0cdd26518eddcf80322280ad92..692b186f302130155fbb1b163bb195c0253276af 100644 --- a/third_party/blink/renderer/core/css/resolver/style_builder_converter.h +++ b/third_party/blink/renderer/core/css/resolver/style_builder_converter.h -@@ -421,6 +421,8 @@ class StyleBuilderConverter { - const CSSValue&); +@@ -422,6 +422,8 @@ class StyleBuilderConverter { static PositionArea ConvertPositionArea(StyleResolverState&, const CSSValue&); + static FitText ConvertFitText(StyleResolverState&, const CSSValue&); + + static Length ConvertCornerSmoothing(StyleResolverState&, const CSSValue&); }; template diff --git a/third_party/blink/renderer/core/exported/web_settings_impl.cc b/third_party/blink/renderer/core/exported/web_settings_impl.cc -index 4a29a2200eaab5084078e928a68c862296c6ff91..fcd879deec0e68b3b6988402d19570cf0065daa2 100644 +index 90692da7bddd9e26e58cb26d8b29dbddf958fbca..6bcd9d736edab85572e405ab74d57adc0fcce921 100644 --- a/third_party/blink/renderer/core/exported/web_settings_impl.cc +++ b/third_party/blink/renderer/core/exported/web_settings_impl.cc -@@ -816,4 +816,8 @@ void WebSettingsImpl::SetRootScrollbarThemeColor( +@@ -820,4 +820,8 @@ void WebSettingsImpl::SetRootScrollbarThemeColor( settings_->SetRootScrollbarThemeColor(theme_color); } @@ -227,10 +227,10 @@ index 4a29a2200eaab5084078e928a68c862296c6ff91..fcd879deec0e68b3b6988402d19570cf + } // namespace blink diff --git a/third_party/blink/renderer/core/exported/web_settings_impl.h b/third_party/blink/renderer/core/exported/web_settings_impl.h -index 5e8d2bfbccd0625c2598544a9cba3d71373eded2..e68a97ee75754fc7196f11cf5c731550b5a12276 100644 +index aa8b248b94ea7f6c0e04dc66e976dc7923ff3a98..868630ed2adb8f40fb7f002d45b260c0881ef10f 100644 --- a/third_party/blink/renderer/core/exported/web_settings_impl.h +++ b/third_party/blink/renderer/core/exported/web_settings_impl.h -@@ -237,6 +237,7 @@ class CORE_EXPORT WebSettingsImpl final : public WebSettings { +@@ -238,6 +238,7 @@ class CORE_EXPORT WebSettingsImpl final : public WebSettings { void SetRequireTransientActivationAndAuthorizationForSubAppsAPIs( bool) override; void SetRootScrollbarThemeColor(std::optional) override; @@ -239,10 +239,10 @@ index 5e8d2bfbccd0625c2598544a9cba3d71373eded2..e68a97ee75754fc7196f11cf5c731550 bool RenderVSyncNotificationEnabled() const { return render_v_sync_notification_enabled_; diff --git a/third_party/blink/renderer/core/exported/web_view_impl.cc b/third_party/blink/renderer/core/exported/web_view_impl.cc -index 15a6b41cacb7b66d95e6dc2cff8148c3d6c8c28b..88bb3d17a4ca0784f1f28fde14b9fa58e15b5c44 100644 +index f8fae134e122a223440530bd696db899dce2fe56..cec68a428fbf63932066ceb296c3db3eb9e34166 100644 --- a/third_party/blink/renderer/core/exported/web_view_impl.cc +++ b/third_party/blink/renderer/core/exported/web_view_impl.cc -@@ -3577,6 +3577,9 @@ void WebViewImpl::UpdateRendererPreferences( +@@ -3579,6 +3579,9 @@ void WebViewImpl::UpdateRendererPreferences( renderer_preferences_.view_source_line_wrap_enabled); MaybePreloadSystemFonts(GetPage()); @@ -253,10 +253,10 @@ index 15a6b41cacb7b66d95e6dc2cff8148c3d6c8c28b..88bb3d17a4ca0784f1f28fde14b9fa58 void WebViewImpl::SetHistoryIndexAndLength(int32_t history_index, diff --git a/third_party/blink/renderer/core/frame/settings.json5 b/third_party/blink/renderer/core/frame/settings.json5 -index f4cdee12ea4352067f5de3e074e43d51ef56d2e5..6377e4b1ea8aa46b0bf69f8420b6c439bea70dba 100644 +index c96100f7d26c14b8be1329cdb4d8a007b14d9c00..8b2429d5ac958f9a2c7aae546b44da903def8e69 100644 --- a/third_party/blink/renderer/core/frame/settings.json5 +++ b/third_party/blink/renderer/core/frame/settings.json5 -@@ -1261,5 +1261,10 @@ +@@ -1265,5 +1265,10 @@ initial: false, type: "bool" }, @@ -307,10 +307,10 @@ index 2c2f4f405074e5baa4a26f255283404f86b40e21..ebeb7d6988ee9e6a4e78cb82fc01fdad ContouredRect PixelSnappedContouredBorderInternal( diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/renderer/platform/BUILD.gn -index b63dfc16103a6882ffb4dd81a20408092aaed3ab..d56e6f0a527ddc8adccb5fec3adb66fd2f5c99bd 100644 +index e8db5553065fd9a8ea03ec9d6cee136a8ea666dc..05eafec9e86846469e1877fe2a84b75a0dfe23ee 100644 --- a/third_party/blink/renderer/platform/BUILD.gn +++ b/third_party/blink/renderer/platform/BUILD.gn -@@ -1658,6 +1658,8 @@ component("platform") { +@@ -1652,6 +1652,8 @@ component("platform") { "widget/widget_base.h", "widget/widget_base_client.h", "windows_keyboard_codes.h", @@ -320,7 +320,7 @@ index b63dfc16103a6882ffb4dd81a20408092aaed3ab..d56e6f0a527ddc8adccb5fec3adb66fd sources -= blink_platform_avx_files diff --git a/third_party/blink/renderer/platform/geometry/contoured_rect.h b/third_party/blink/renderer/platform/geometry/contoured_rect.h -index 54d3ae85eaed0699714728bcb8ff0c817f6b5e86..3014d286ecbef8b9a90f007527cce5141110eaf6 100644 +index 0dbfffdfbea2cb75f7f3ea94ead20cc8bbe08bb3..021b9cdebb023941e7a78afbc1c3c939f3b9cfa0 100644 --- a/third_party/blink/renderer/platform/geometry/contoured_rect.h +++ b/third_party/blink/renderer/platform/geometry/contoured_rect.h @@ -47,19 +47,29 @@ class PLATFORM_EXPORT ContouredRect { @@ -355,8 +355,8 @@ index 54d3ae85eaed0699714728bcb8ff0c817f6b5e86..3014d286ecbef8b9a90f007527cce514 + return (top_left_ == kRound) && IsUniform() && !IsSmooth(); } - constexpr bool IsUniform() const { -@@ -71,6 +81,7 @@ class PLATFORM_EXPORT ContouredRect { + constexpr bool IsConvex() const { +@@ -76,6 +86,7 @@ class PLATFORM_EXPORT ContouredRect { constexpr float TopRight() const { return top_right_; } constexpr float BottomRight() const { return bottom_right_; } constexpr float BottomLeft() const { return bottom_left_; } @@ -364,7 +364,7 @@ index 54d3ae85eaed0699714728bcb8ff0c817f6b5e86..3014d286ecbef8b9a90f007527cce514 constexpr bool operator==(const CornerCurvature&) const = default; -@@ -81,6 +92,7 @@ class PLATFORM_EXPORT ContouredRect { +@@ -86,6 +97,7 @@ class PLATFORM_EXPORT ContouredRect { float top_right_ = kRound; float bottom_right_ = kRound; float bottom_left_ = kRound; @@ -373,7 +373,7 @@ index 54d3ae85eaed0699714728bcb8ff0c817f6b5e86..3014d286ecbef8b9a90f007527cce514 // A Corner is a axis-aligned quad, with the points ordered (start, outer, diff --git a/third_party/blink/renderer/platform/geometry/path_builder.cc b/third_party/blink/renderer/platform/geometry/path_builder.cc -index 414b73e219a7f4e499414cf120c5b8ebd0ae3a63..2093364a27e89fa10fe9a6921453d2d8285e445e 100644 +index 171cb3dd87609f5ecab79a25fe0978cd6e4b04f4..7e7deae45bfb66c3a3702f30092a23fb5b79bf4b 100644 --- a/third_party/blink/renderer/platform/geometry/path_builder.cc +++ b/third_party/blink/renderer/platform/geometry/path_builder.cc @@ -4,6 +4,7 @@ @@ -384,7 +384,7 @@ index 414b73e219a7f4e499414cf120c5b8ebd0ae3a63..2093364a27e89fa10fe9a6921453d2d8 #include "third_party/blink/renderer/platform/geometry/contoured_rect.h" #include "third_party/blink/renderer/platform/geometry/infinite_int_rect.h" #include "third_party/blink/renderer/platform/geometry/path.h" -@@ -241,6 +242,26 @@ PathBuilder& PathBuilder::AddContouredRect( +@@ -247,6 +248,26 @@ PathBuilder& PathBuilder::AddContouredRect( AddRoundedRect(target_rect); return *this; } 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 107aa4007339..2f1b81e55862 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 3c43af49c5d6d5f604c71e9a9dc1f7afe9aaf0f7..857e422776e7ec33eaf4c9983d42d6433b7723cc 100644 +index 7f53771dbebb480e5d10fd6926e86120f020b1ee..1ce3faf14e3770c18a67717bcd0a8d07d7720045 100644 --- a/components/viz/service/BUILD.gn +++ b/components/viz/service/BUILD.gn @@ -178,6 +178,8 @@ viz_component("service") { @@ -522,7 +522,7 @@ index f0aca972c4a81c3dfb536e14244daafae21ee716..a15afbc1a3519e657121b4952444d2f4 waiting_on_draw_ack_ = true; diff --git a/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc b/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc -index 391004b202e6f20ad06eb6a53a6d55f5e8981c75..acb849f4e737de45e7aa4640b6866791424f010b 100644 +index 671923d06e450edc191e5717537d74b91678872d..6bae1cc6634256e449b02e92a4e7899573926109 100644 --- a/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc +++ b/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc @@ -130,7 +130,8 @@ RootCompositorFrameSinkImpl::Create( @@ -585,10 +585,10 @@ index 130067b91baa360a7234fecfe6342c8239d587b5..d701328102f9a53e12b1b2e2a8626591 compositor_data.display_client->GetBoundRemote(resize_task_runner_); mojo::AssociatedRemote diff --git a/services/viz/privileged/mojom/compositing/display_private.mojom b/services/viz/privileged/mojom/compositing/display_private.mojom -index afdda5292ce89d6dac6eaa1e3476fdfd0e9e7f08..8147e4bf6173699df6ab9492898989c68ffbb2b8 100644 +index e063835e87f08e6a2359886a96d7b78954e3d5b2..34bcf67726f64466d11a56d7a315ce7e05a0cb3d 100644 --- a/services/viz/privileged/mojom/compositing/display_private.mojom +++ b/services/viz/privileged/mojom/compositing/display_private.mojom -@@ -123,7 +123,6 @@ interface DisplayClient { +@@ -119,7 +119,6 @@ interface DisplayClient { // Creates a LayeredWindowUpdater implementation to draw into a layered // window. diff --git a/patches/chromium/feat_enable_passing_exit_code_on_service_process_crash.patch b/patches/chromium/feat_enable_passing_exit_code_on_service_process_crash.patch index 0c133fce1881..a8016618c0d9 100644 --- a/patches/chromium/feat_enable_passing_exit_code_on_service_process_crash.patch +++ b/patches/chromium/feat_enable_passing_exit_code_on_service_process_crash.patch @@ -11,7 +11,7 @@ ServiceProcessHost::Observer functions, but we need to pass the exit code to the observer. diff --git a/content/browser/service_host/service_process_tracker.cc b/content/browser/service_host/service_process_tracker.cc -index 594629e45acd6cac9deba2d02c682a523c80e2fb..61be7804bbf370df3d2925880804866a631d35fa 100644 +index e900841900325dd090b04f85151dc7b2f04a6613..e402bcf07aa0704c113ce472db547ffcfb04a4bf 100644 --- a/content/browser/service_host/service_process_tracker.cc +++ b/content/browser/service_host/service_process_tracker.cc @@ -48,12 +48,14 @@ void ServiceProcessTracker::NotifyTerminated(ServiceProcessId id) { @@ -22,7 +22,7 @@ index 594629e45acd6cac9deba2d02c682a523c80e2fb..61be7804bbf370df3d2925880804866a +void ServiceProcessTracker::NotifyCrashed(ServiceProcessId id, int exit_code) { DCHECK_CURRENTLY_ON(BrowserThread::UI); auto iter = processes_.find(id); - CHECK(iter != processes_.end(), base::NotFatalUntil::M130); + CHECK(iter != processes_.end()); for (auto& observer : observers_) { - observer.OnServiceProcessCrashed(iter->second.Duplicate()); + auto params = iter->second.Duplicate(); @@ -80,10 +80,10 @@ index 801db538979ba62facdcf3a472dade56723ca639..7abac9a5b13b393713534ae51664c2e5 private: const std::string service_interface_name_; diff --git a/content/browser/service_host/utility_process_host.cc b/content/browser/service_host/utility_process_host.cc -index 51f8ff9b8424d098979a24c2e8628cdf7c4b758d..19d8ed89211402e93632c4d83dbf452d4194a14c 100644 +index 9d6c67c66576058723a6fb0a5abb279f05f15f4f..d692bc5929bce7801d0a91cb99ab9c5f07ba5d7b 100644 --- a/content/browser/service_host/utility_process_host.cc +++ b/content/browser/service_host/utility_process_host.cc -@@ -541,7 +541,7 @@ void UtilityProcessHost::OnProcessCrashed(int exit_code) { +@@ -609,7 +609,7 @@ void UtilityProcessHost::OnProcessCrashed(int exit_code) { // Take ownership of |client_| so the destructor doesn't notify it of // termination. auto client = std::move(client_); @@ -93,10 +93,10 @@ index 51f8ff9b8424d098979a24c2e8628cdf7c4b758d..19d8ed89211402e93632c4d83dbf452d std::optional UtilityProcessHost::GetServiceName() { diff --git a/content/browser/service_host/utility_process_host.h b/content/browser/service_host/utility_process_host.h -index 1164da12ee71a8575c17bf1b84a505e8a32b96b3..4cbc30fc4b57440d06a0a0f642cc44c5c755e7f9 100644 +index 55379fbe9233ba96f6e4729e2b7d534c0c6884a0..850592294efd2c0a0fdc253b7b3fb6441b91d730 100644 --- a/content/browser/service_host/utility_process_host.h +++ b/content/browser/service_host/utility_process_host.h -@@ -79,7 +79,7 @@ class CONTENT_EXPORT UtilityProcessHost +@@ -68,7 +68,7 @@ class CONTENT_EXPORT UtilityProcessHost virtual void OnProcessLaunched(const base::Process& process) {} virtual void OnProcessTerminatedNormally() {} @@ -104,7 +104,7 @@ index 1164da12ee71a8575c17bf1b84a505e8a32b96b3..4cbc30fc4b57440d06a0a0f642cc44c5 + virtual void OnProcessCrashed(int exit_code) {} }; - // This class is self-owned. It must be instantiated using new, and shouldn't + struct CONTENT_EXPORT Options { diff --git a/content/public/browser/service_process_info.h b/content/public/browser/service_process_info.h index 1a8656aef341cd3b23af588fb00569b79d6cd100..6af523eb27a8c1e5529721c029e5b3ba0708b9fc 100644 --- a/content/public/browser/service_process_info.h diff --git a/patches/chromium/feat_expose_documentloader_setdefersloading_on_webdocumentloader.patch b/patches/chromium/feat_expose_documentloader_setdefersloading_on_webdocumentloader.patch index db2bb3935c13..8b11c3ad7ee1 100644 --- a/patches/chromium/feat_expose_documentloader_setdefersloading_on_webdocumentloader.patch +++ b/patches/chromium/feat_expose_documentloader_setdefersloading_on_webdocumentloader.patch @@ -28,7 +28,7 @@ index 33e23680b927d417b0882c7572fe32dc2d2b90c3..9413492f8e0fd6c5371c66329e1ad6d4 // Returns the http referrer of original request which initited this load. diff --git a/third_party/blink/renderer/core/loader/document_loader.h b/third_party/blink/renderer/core/loader/document_loader.h -index 01b97e569a69fb1395e63492ac75432d648bb71f..6e58d859e2afd3bd8b9b17c53ba9ccc6dbdcd458 100644 +index bcf51f743caa1e7da6cb80f2e219661cde0efab6..ddb36c1757ec7e0a3a1f19a2687a1f3e3d590b6e 100644 --- a/third_party/blink/renderer/core/loader/document_loader.h +++ b/third_party/blink/renderer/core/loader/document_loader.h @@ -325,7 +325,7 @@ class CORE_EXPORT DocumentLoader : public GarbageCollected, 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 47c34fd73b1d..5d06ea2e3467 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 99bf736ebe303d46ab1ced924ba929a0cd258909..e10c8782d2704ff9cff8062d201a4339 string mime_type; diff --git a/services/network/url_loader.cc b/services/network/url_loader.cc -index 77569bb055bf2dde5370b05c814ff793f1cf4b19..bc361afc2b2fb5045f43fc49471cfc7f51b4cd74 100644 +index b4e32dd34c6d5f826da777dce7502da7ff75e76a..dcc180c6eab0c145721c4a06f74a3feef859b363 100644 --- a/services/network/url_loader.cc +++ b/services/network/url_loader.cc @@ -388,6 +388,9 @@ URLLoader::URLLoader( diff --git a/patches/chromium/feat_separate_content_settings_callback_for_sync_and_async_clipboard.patch b/patches/chromium/feat_separate_content_settings_callback_for_sync_and_async_clipboard.patch index d929dd7d0054..1ca7c8439822 100644 --- a/patches/chromium/feat_separate_content_settings_callback_for_sync_and_async_clipboard.patch +++ b/patches/chromium/feat_separate_content_settings_callback_for_sync_and_async_clipboard.patch @@ -20,10 +20,10 @@ This patch will be removed when the deprecated sync api support is removed. diff --git a/components/permissions/permission_util.cc b/components/permissions/permission_util.cc -index f134056b6b255935250721d6fbd417b1d658c87c..f69c10c32011c9da5c235a5199abce44e64982da 100644 +index b379cc24f772260ea360779b26ca0836d21c89c4..bface283d508d1c1a3f9fd297d92e048bdd423af 100644 --- a/components/permissions/permission_util.cc +++ b/components/permissions/permission_util.cc -@@ -502,6 +502,7 @@ ContentSettingsType PermissionUtil::PermissionTypeToContentSettingsTypeSafe( +@@ -520,6 +520,7 @@ ContentSettingsType PermissionUtil::PermissionTypeToContentSettingsTypeSafe( return ContentSettingsType::WEB_APP_INSTALLATION; case PermissionType::LOCAL_NETWORK_ACCESS: return ContentSettingsType::LOCAL_NETWORK_ACCESS; diff --git a/patches/chromium/fix_adjust_headless_mode_handling_in_native_widget.patch b/patches/chromium/fix_adjust_headless_mode_handling_in_native_widget.patch index 88353892f985..b5a2354bdd43 100644 --- a/patches/chromium/fix_adjust_headless_mode_handling_in_native_widget.patch +++ b/patches/chromium/fix_adjust_headless_mode_handling_in_native_widget.patch @@ -31,10 +31,10 @@ index b51482ecbb8eaed649ae0ea9dd9c7c71125b51a2..0180a182a8b55df4e515d77f696fa442 // Register the CGWindowID (used to identify this window for video capture) diff --git a/ui/views/widget/widget.h b/ui/views/widget/widget.h -index 65154f18c7ce737ea1b48ebd9308896d8a13f622..ec821403356d2d45c9c12831a89704be10ee05f7 100644 +index dfe785f5d0a540086884a925d7340cbf5f48cd92..5023f7f738b4ca227690411a270a58a0faae01b2 100644 --- a/ui/views/widget/widget.h +++ b/ui/views/widget/widget.h -@@ -1238,6 +1238,8 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate, +@@ -1242,6 +1242,8 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate, // True if widget was created in headless mode. bool is_headless() const { return is_headless_; } 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 e9594ef50b2e..64d6bd9e0582 100644 --- a/patches/chromium/fix_crash_loading_non-standard_schemes_in_iframes.patch +++ b/patches/chromium/fix_crash_loading_non-standard_schemes_in_iframes.patch @@ -28,10 +28,10 @@ The patch should be removed in favor of either: Upstream bug https://bugs.chromium.org/p/chromium/issues/detail?id=1081397. diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc -index deb3de267fb5e6a326985fa7943e5a66217888f8..ad53374b86efe1db1e2c2e06056cd3b50696ad9b 100644 +index 17bf91944a4b3c09a17bf91153e360bb5e151f87..0803c64ac92a08f7bb9239e775479a025ca512be 100644 --- a/content/browser/renderer_host/navigation_request.cc +++ b/content/browser/renderer_host/navigation_request.cc -@@ -11158,6 +11158,11 @@ url::Origin NavigationRequest::GetOriginForURLLoaderFactoryUnchecked() { +@@ -11194,6 +11194,11 @@ url::Origin NavigationRequest::GetOriginForURLLoaderFactoryUnchecked() { target_rph_id); } @@ -44,7 +44,7 @@ index deb3de267fb5e6a326985fa7943e5a66217888f8..ad53374b86efe1db1e2c2e06056cd3b5 // origin of |common_params.url| and/or |common_params.initiator_origin|. url::Origin resolved_origin = url::Origin::Resolve( diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_party/blink/renderer/core/loader/document_loader.cc -index 094f7359e5d3b701676daa6c26fa6f8dee9d4a29..ac23e8b6e5b16670e942bf4801d97296176e2a00 100644 +index b021464bc5ceca1bc33fcd6f9de39590c08a6cb0..90bf26b987cd1ab63dfd9dede640acc40588fccc 100644 --- a/third_party/blink/renderer/core/loader/document_loader.cc +++ b/third_party/blink/renderer/core/loader/document_loader.cc @@ -2332,6 +2332,10 @@ Frame* DocumentLoader::CalculateOwnerFrame() { diff --git a/patches/chromium/fix_disabling_background_throttling_in_compositor.patch b/patches/chromium/fix_disabling_background_throttling_in_compositor.patch index 9687ea68c7cf..c9bb0cf3d92d 100644 --- a/patches/chromium/fix_disabling_background_throttling_in_compositor.patch +++ b/patches/chromium/fix_disabling_background_throttling_in_compositor.patch @@ -12,10 +12,10 @@ invisible state of the `viz::DisplayScheduler` owned by the `ui::Compositor`. diff --git a/ui/compositor/compositor.cc b/ui/compositor/compositor.cc -index d770a26ca3e49c0aced95dc362802187d7d81269..788afc7ff05bf622d9e495988034ab9ca2207bfb 100644 +index a63fea66e8fa675fb23b0cc2cb2bf63a18a11f94..76be1ae3f1f9981acc8062b831e6bb2b89f0234b 100644 --- a/ui/compositor/compositor.cc +++ b/ui/compositor/compositor.cc -@@ -359,7 +359,8 @@ void Compositor::SetLayerTreeFrameSink( +@@ -358,7 +358,8 @@ void Compositor::SetLayerTreeFrameSink( if (display_private_) { disabled_swap_until_resize_ = false; display_private_->Resize(size()); @@ -25,7 +25,7 @@ index d770a26ca3e49c0aced95dc362802187d7d81269..788afc7ff05bf622d9e495988034ab9c display_private_->SetDisplayColorSpaces(display_color_spaces_); display_private_->SetDisplayColorMatrix( gfx::SkM44ToTransform(display_color_matrix_)); -@@ -610,7 +611,9 @@ void Compositor::SetVisible(bool visible) { +@@ -609,7 +610,9 @@ void Compositor::SetVisible(bool visible) { // updated then. We need to call this even if the visibility hasn't changed, // for the same reason. if (display_private_) @@ -36,7 +36,7 @@ index d770a26ca3e49c0aced95dc362802187d7d81269..788afc7ff05bf622d9e495988034ab9c if (changed) { observer_list_.Notify(&CompositorObserver::OnCompositorVisibilityChanged, -@@ -1074,6 +1077,15 @@ void Compositor::MaybeUpdateObserveBeginFrame() { +@@ -1073,6 +1076,15 @@ void Compositor::MaybeUpdateObserveBeginFrame() { host_begin_frame_observer_->GetBoundRemote()); } diff --git a/patches/chromium/fix_getcursorscreenpoint_wrongly_returns_0_0.patch b/patches/chromium/fix_getcursorscreenpoint_wrongly_returns_0_0.patch index 9888b25d5a34..5a934c972e95 100644 --- a/patches/chromium/fix_getcursorscreenpoint_wrongly_returns_0_0.patch +++ b/patches/chromium/fix_getcursorscreenpoint_wrongly_returns_0_0.patch @@ -10,10 +10,10 @@ This patch should be backported to e29, upstreamed to Chromium, and then removed if it lands upstream. diff --git a/ui/events/x/events_x_utils.cc b/ui/events/x/events_x_utils.cc -index 0fcb43d631eb638ad6879539dee8ad8a21da945b..86f8756f038a68bae29072318d874e23e4d00707 100644 +index f7b051baad322919837bcd3c2516d1d838f8b2f8..303f5512cfff9e04dfd83dd25f2331d9ca0b5ace 100644 --- a/ui/events/x/events_x_utils.cc +++ b/ui/events/x/events_x_utils.cc -@@ -594,6 +594,9 @@ gfx::Point EventLocationFromXEvent(const x11::Event& xev) { +@@ -596,6 +596,9 @@ gfx::Point EventLocationFromXEvent(const x11::Event& xev) { gfx::Point EventSystemLocationFromXEvent(const x11::Event& xev) { if (auto* crossing = xev.As()) return gfx::Point(crossing->root_x, crossing->root_y); diff --git a/patches/chromium/fix_media_key_usage_with_globalshortcuts.patch b/patches/chromium/fix_media_key_usage_with_globalshortcuts.patch index 7fa99a886469..5e9f5aa43a9a 100644 --- a/patches/chromium/fix_media_key_usage_with_globalshortcuts.patch +++ b/patches/chromium/fix_media_key_usage_with_globalshortcuts.patch @@ -49,10 +49,10 @@ index 42e37564e585987d367921568f0f1d2b7507f953..9baf89efbade01e8b60c579255f10799 } diff --git a/ui/base/accelerators/global_accelerator_listener/global_accelerator_listener.cc b/ui/base/accelerators/global_accelerator_listener/global_accelerator_listener.cc -index cdf35a5bcec7b30f1b75e77cc29a9b7bb591cfd6..b6dfeee587faa742beb4f1d871db4c4f76bf46ab 100644 +index 16b11c6115cc5504dbd15d58c4b9786633e90e96..7c0a2308d437a2d9cec433c6ab0fd6a9d0c08845 100644 --- a/ui/base/accelerators/global_accelerator_listener/global_accelerator_listener.cc +++ b/ui/base/accelerators/global_accelerator_listener/global_accelerator_listener.cc -@@ -65,6 +65,22 @@ void GlobalAcceleratorListener::UnregisterAccelerator( +@@ -64,6 +64,22 @@ void GlobalAcceleratorListener::UnregisterAccelerator( } } 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 0a09c111672c..1a74119031b3 100644 --- a/patches/chromium/fix_on-screen-keyboard_hides_on_input_blur_in_webview.patch +++ b/patches/chromium/fix_on-screen-keyboard_hides_on_input_blur_in_webview.patch @@ -87,10 +87,10 @@ index 75df43e3cd2721a92c90c18154d53d5c203e2465..ce42c75c8face36d21f53f44c0201ac4 // The view with active text input state, i.e., a focused element. // It will be nullptr if no such view exists. Note that the active view diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index 97df851aa73d1bf8d8c8001646b63cbb43cd9a92..29185fc4c426652d192870c8a11aaa981a08ebf8 100644 +index eefecd6b3b9c940c3ae3e9ef40075c4a109878ef..fbe6b5d24185c0b0e664db05c7801434737d4d8d 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -10162,7 +10162,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame( +@@ -10171,7 +10171,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame( "WebContentsImpl::OnFocusedElementChangedInFrame", "render_frame_host", frame); RenderWidgetHostViewBase* root_view = diff --git a/patches/chromium/fix_restore_original_resize_performance_on_macos.patch b/patches/chromium/fix_restore_original_resize_performance_on_macos.patch index 280c1093565a..7dbf4bee8203 100644 --- a/patches/chromium/fix_restore_original_resize_performance_on_macos.patch +++ b/patches/chromium/fix_restore_original_resize_performance_on_macos.patch @@ -11,7 +11,7 @@ This patch should be upstreamed as a conditional revert of the logic in desktop vs mobile runtimes. i.e. restore the old logic only on desktop platforms diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc -index 6a939edf24643207b26c9cc155ccca661b06f937..c33beb8be5535ad0951013ef0617fb881fe9fac4 100644 +index a3cbb6cb369c2f250c702a0117e36e9aee04068c..05afca0c5560297b3fc4b993e872b6f296971615 100644 --- a/content/browser/renderer_host/render_widget_host_impl.cc +++ b/content/browser/renderer_host/render_widget_host_impl.cc @@ -2134,9 +2134,8 @@ RenderWidgetHostImpl::GetWidgetInputHandler() { diff --git a/patches/chromium/fix_return_v8_value_from_localframe_requestexecutescript.patch b/patches/chromium/fix_return_v8_value_from_localframe_requestexecutescript.patch index 25a3c6fd18ae..d53e5cfaffff 100644 --- a/patches/chromium/fix_return_v8_value_from_localframe_requestexecutescript.patch +++ b/patches/chromium/fix_return_v8_value_from_localframe_requestexecutescript.patch @@ -59,7 +59,7 @@ index cba373664bec3a32abad6fe0396bd67b53b7e67f..a54f1b3351efd2d8f324436f7f35cd43 #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 574f947602f8cf9d5abebf6180dc3fb67dc85496..235742d9ac2787c290c123403160d095609e8c16 100644 +index afa8d181e836739f4136cf51ae323f29b0b25ebe..2d28356c755c9bec18a73937b506c1885358378f 100644 --- a/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc @@ -3085,6 +3085,7 @@ void LocalFrame::RequestExecuteScript( @@ -80,10 +80,10 @@ index 574f947602f8cf9d5abebf6180dc3fb67dc85496..235742d9ac2787c290c123403160d095 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 a65d5821a23a965ad715377ab15ca9df20ade075..63be18b05aa31ca48202e2809b235348fec61b0e 100644 +index ba0caf0b5791c09cd51adcdcbd733ebb23d5eae1..eb74e44ee93e2a5f2f53e0f8584e2a7a37890ed5 100644 --- a/third_party/blink/renderer/core/frame/local_frame.h +++ b/third_party/blink/renderer/core/frame/local_frame.h -@@ -834,6 +834,7 @@ class CORE_EXPORT LocalFrame final +@@ -831,6 +831,7 @@ class CORE_EXPORT LocalFrame 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 1fb5372d7564..f8fdb435df23 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 39eae72b5f9f05fc9dda3b6b3a51b4d1d2bf7fcf..cd95bbd34218cb3181b887832a84893cd90c67a5 100644 +index a194fbb2bebaa2ea5797d138e13f3c4e1bbf049e..a77307e94c5479a77085b51a1b31ab382090da53 100644 --- a/content/browser/renderer_host/render_frame_host_manager.cc +++ b/content/browser/renderer_host/render_frame_host_manager.cc -@@ -4752,6 +4752,9 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest( +@@ -4768,6 +4768,9 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest( request->ResetStateForSiteInstanceChange(); } @@ -20,7 +20,7 @@ index 39eae72b5f9f05fc9dda3b6b3a51b4d1d2bf7fcf..cd95bbd34218cb3181b887832a84893c } diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h -index 0a74c5a3bee425c5c1af33ef27791a6d852baa6e..2a657027c39370d7ea839576afe547ad6da6c5a7 100644 +index 08b098fa486c77294250563edbc5d2421fda3d69..8747d3fedd8d0b51c1479ed6b3424bf596ddd0ef 100644 --- a/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h @@ -341,6 +341,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 b0ac9ec5498b..7efc1ecc9e73 100644 --- a/patches/chromium/gin_enable_disable_v8_platform.patch +++ b/patches/chromium/gin_enable_disable_v8_platform.patch @@ -41,7 +41,7 @@ index ff42cfbb6a228e902317c7e3ab035d8437d5dd62..e27f177ce27e177abf6cee84cd466e7a // 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 69ab1ef4d2a386126009036d4517c69dcaf9a33a..11cafc3e1588cce52b76cc2f09f66b3e451fb087 100644 +index 4e4b552aabc2f0cef91737e45652835c4de501bc..c79f996e2cbfe3e71f7de29424329dfc0d39a726 100644 --- a/gin/v8_initializer.cc +++ b/gin/v8_initializer.cc @@ -543,7 +543,8 @@ void SetFeatureFlags() { diff --git a/patches/chromium/gritsettings_resource_ids.patch b/patches/chromium/gritsettings_resource_ids.patch index 6e31d7bb7ed7..6018fbbb748a 100644 --- a/patches/chromium/gritsettings_resource_ids.patch +++ b/patches/chromium/gritsettings_resource_ids.patch @@ -6,10 +6,10 @@ Subject: gritsettings_resource_ids.patch Add electron resources file to the list of resource ids generation. diff --git a/tools/gritsettings/resource_ids.spec b/tools/gritsettings/resource_ids.spec -index 6d02cc4f84fc2de0404f006f6895919f6aa21cb4..92882f52b2ba1898608b2eb38702f37dd8cfb8cd 100644 +index 2f4ab49cbe968ec8a47d72a08fefbbc938fb41c8..b664e697dbbf747eb3823587461c34c595f0e4a0 100644 --- a/tools/gritsettings/resource_ids.spec +++ b/tools/gritsettings/resource_ids.spec -@@ -1524,6 +1524,11 @@ +@@ -1532,6 +1532,11 @@ "third_party/search_engines_data/resources/search_engines_scaled_resources.grd": { "structures": [10100], diff --git a/patches/chromium/hack_plugin_response_interceptor_to_point_to_electron.patch b/patches/chromium/hack_plugin_response_interceptor_to_point_to_electron.patch index 88ccc9c5347e..c6ab38061726 100644 --- a/patches/chromium/hack_plugin_response_interceptor_to_point_to_electron.patch +++ b/patches/chromium/hack_plugin_response_interceptor_to_point_to_electron.patch @@ -8,7 +8,7 @@ require a largeish patch to get working, so just redirect it to our implementation instead. diff --git a/chrome/browser/plugins/plugin_response_interceptor_url_loader_throttle.cc b/chrome/browser/plugins/plugin_response_interceptor_url_loader_throttle.cc -index 9562a4c81714b98df30d2180689eff29f0beca31..5506740f0bfcc1b0692ac014bc628e1208ab3fe0 100644 +index 18fb39fba6e1a6245d22120ba129abf4e5b42b96..62e79cba8161f2acc3ff9e9e20953179ded4ef4e 100644 --- a/chrome/browser/plugins/plugin_response_interceptor_url_loader_throttle.cc +++ b/chrome/browser/plugins/plugin_response_interceptor_url_loader_throttle.cc @@ -12,8 +12,8 @@ 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 7e3094d85141..b4988630544a 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 275f4e0ece8c5bd8cee239c61fdb965eef524650..4726c37e6fc70133af5e2152ec4d0774f2ddfcaa 100644 +index 5b41b3d8052c439d22b4ceada50d2acaa8c57e4a..a5c4e643b8244b83ac71d08c6aef76c80393769b 100644 --- a/base/BUILD.gn +++ b/base/BUILD.gn @@ -1048,6 +1048,7 @@ component("base") { @@ -477,10 +477,10 @@ index ff96d22a11051391423f4a49c7b1478b8176baf8..c7e640e968f8ef183d48a226d43cdac8 // 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 15297546aa2641af1a249ff99bcf51764b107dbd..3c43af49c5d6d5f604c71e9a9dc1f7afe9aaf0f7 100644 +index ccee45644b385f40a5c7dcbac1d92ba74e72c647..7f53771dbebb480e5d10fd6926e86120f020b1ee 100644 --- a/components/viz/service/BUILD.gn +++ b/components/viz/service/BUILD.gn -@@ -385,6 +385,7 @@ viz_component("service") { +@@ -387,6 +387,7 @@ viz_component("service") { "frame_sinks/external_begin_frame_source_mac.h", ] } @@ -488,7 +488,7 @@ index 15297546aa2641af1a249ff99bcf51764b107dbd..3c43af49c5d6d5f604c71e9a9dc1f7af } if (is_ios) { -@@ -699,6 +700,7 @@ viz_source_set("unit_tests") { +@@ -701,6 +702,7 @@ viz_source_set("unit_tests") { "display_embedder/software_output_device_mac_unittest.mm", ] frameworks = [ "IOSurface.framework" ] @@ -582,7 +582,7 @@ index d83f420d25e2c108ad400ebecae02b1ac327c058..77852c5c315ac09dddb7227adf3b840e return kAttributes; } diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn -index 3f6fb6a8653f1d087cf28396361fc77d98668db9..0603b350939376c6e3499de7f19980b7cd274735 100644 +index 933abcca124aed9d1d621ff02533b2f7cc71c7d7..1f77801262614d36b7803837ce43ef2a499a7a97 100644 --- a/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn @@ -342,6 +342,7 @@ source_set("browser") { @@ -797,10 +797,10 @@ index a1068589ad844518038ee7bc15a3de9bc5cba525..1ff781c49f086ec8015c7d3c44567dbe } // namespace content diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn -index 1403a31f878228d835772bffd9b37eea3b742599..5a013396c0990cb3f49a659d4398e9cbe64e0283 100644 +index d7cea6b7efd840d942b4a858e8db3af94a458507..16a7f545d83646ce142825b28a5bdb63ae4dc64a 100644 --- a/content/test/BUILD.gn +++ b/content/test/BUILD.gn -@@ -665,6 +665,7 @@ static_library("test_support") { +@@ -668,6 +668,7 @@ static_library("test_support") { "//url", "//url/mojom:url_mojom_gurl", "//v8", @@ -808,7 +808,7 @@ index 1403a31f878228d835772bffd9b37eea3b742599..5a013396c0990cb3f49a659d4398e9cb ] data_deps = [ -@@ -1121,6 +1122,7 @@ static_library("browsertest_support") { +@@ -1124,6 +1125,7 @@ static_library("browsertest_support") { } configs += [ "//v8:external_startup_data" ] @@ -816,7 +816,7 @@ index 1403a31f878228d835772bffd9b37eea3b742599..5a013396c0990cb3f49a659d4398e9cb } mojom("content_test_mojo_bindings") { -@@ -1964,6 +1966,7 @@ test("content_browsertests") { +@@ -1967,6 +1969,7 @@ test("content_browsertests") { "//ui/shell_dialogs", "//ui/snapshot", "//ui/webui:test_support", @@ -824,7 +824,7 @@ index 1403a31f878228d835772bffd9b37eea3b742599..5a013396c0990cb3f49a659d4398e9cb ] if (!(is_chromeos && target_cpu == "arm64" && current_cpu == "arm")) { -@@ -3297,6 +3300,7 @@ test("content_unittests") { +@@ -3300,6 +3303,7 @@ test("content_unittests") { "//ui/shell_dialogs:shell_dialogs", "//ui/webui:test_support", "//url", @@ -1028,7 +1028,7 @@ index 70d5665ad7b9ef62370497636af919ede2508ad4..f4dc3e2b8053cdb3e8c439ab1a1d6369 } diff --git a/sandbox/mac/BUILD.gn b/sandbox/mac/BUILD.gn -index 453e2185fc85fcb29fa7af3f94cce5bda8118b0c..1c383675bb9113b5b1df9280b8ee994123794dfc 100644 +index 7a69c5d3732cdf14173286c92dc2f7655a791ccf..d4e63015ddc1614179f85a5d9d86d5d5523724fa 100644 --- a/sandbox/mac/BUILD.gn +++ b/sandbox/mac/BUILD.gn @@ -25,6 +25,7 @@ component("seatbelt") { @@ -1092,10 +1092,10 @@ index 950cf7cfee4e11766dccf5c0bf3f15a8562f0f1e..a5adaaabdbbd91fedbc4cb679c865bc3 // |error| is strerror(errno) when a P* logging function is called. Pass diff --git a/sandbox/mac/sandbox_serializer.cc b/sandbox/mac/sandbox_serializer.cc -index 899f231e9bc8e1c76682972dd3f41d4cc38f4868..1da42104cc82cbabfd0c14fdd7025d6963aa50d6 100644 +index ea1627bdd872f89056e97e486feb2d44587a894e..2ed0e03b5253b6ab4fa064abfaf64c60d29cae32 100644 --- a/sandbox/mac/sandbox_serializer.cc +++ b/sandbox/mac/sandbox_serializer.cc -@@ -7,6 +7,7 @@ +@@ -8,6 +8,7 @@ #include #include @@ -1103,7 +1103,7 @@ index 899f231e9bc8e1c76682972dd3f41d4cc38f4868..1da42104cc82cbabfd0c14fdd7025d69 #include "sandbox/mac/sandbox_logging.h" #include "sandbox/mac/seatbelt.h" -@@ -31,6 +32,7 @@ void EncodeVarInt(uint64_t from, std::string* into) { +@@ -32,6 +33,7 @@ void EncodeVarInt(uint64_t from, std::string* into) { } while (from); } @@ -1111,7 +1111,7 @@ index 899f231e9bc8e1c76682972dd3f41d4cc38f4868..1da42104cc82cbabfd0c14fdd7025d69 bool DecodeVarInt(std::string_view* from, uint64_t* into) { std::string_view::const_iterator it = from->begin(); int shift = 0; -@@ -49,12 +51,12 @@ bool DecodeVarInt(std::string_view* from, uint64_t* into) { +@@ -50,12 +52,12 @@ bool DecodeVarInt(std::string_view* from, uint64_t* into) { from->remove_prefix(it - from->begin()); return true; } @@ -1126,7 +1126,7 @@ index 899f231e9bc8e1c76682972dd3f41d4cc38f4868..1da42104cc82cbabfd0c14fdd7025d69 bool DecodeString(std::string_view* slice, std::string* value) { uint64_t length; if (!DecodeVarInt(slice, &length) || length < 0) { -@@ -69,7 +71,7 @@ bool DecodeString(std::string_view* slice, std::string* value) { +@@ -70,7 +72,7 @@ bool DecodeString(std::string_view* slice, std::string* value) { slice->remove_prefix(size); return true; } @@ -1135,17 +1135,33 @@ index 899f231e9bc8e1c76682972dd3f41d4cc38f4868..1da42104cc82cbabfd0c14fdd7025d69 } // namespace SandboxSerializer::SandboxSerializer(Target mode) : mode_(mode) { -@@ -140,6 +142,7 @@ bool SandboxSerializer::SerializePolicy(std::string& serialized_policy, +@@ -147,6 +149,7 @@ bool SandboxSerializer::SerializePolicy(std::string& serialized_policy, + std::optional + SandboxSerializer::DeserializePolicy(const std::string& serialized_policy, + std::string& error) { ++#if !IS_MAS_BUILD() + std::string_view remaining_serialized_policy = serialized_policy; + uint64_t mode; + if (!DecodeVarInt(&remaining_serialized_policy, &mode)) { +@@ -192,11 +195,15 @@ SandboxSerializer::DeserializePolicy(const std::string& serialized_policy, + break; + } + return deserialized_policy; ++#else ++ return std::nullopt; ++#endif + } + // static bool SandboxSerializer::ApplySerializedPolicy( const std::string& serialized_policy) { +#if !IS_MAS_BUILD() - std::string_view policy = serialized_policy; - uint64_t mode; - if (!DecodeVarInt(&policy, &mode)) { -@@ -201,6 +204,9 @@ bool SandboxSerializer::ApplySerializedPolicy( + std::string error; + std::optional deserialized_policy = + DeserializePolicy(serialized_policy, error); +@@ -227,6 +234,9 @@ bool SandboxSerializer::ApplySerializedPolicy( + break; } - return true; +#else + return true; @@ -1448,10 +1464,10 @@ index bae0728aa1b2d8416e815862fd5d4aceb165ee44..a1a653bb5ec345f07027d19110717925 if (is_mac) { diff --git a/third_party/blink/renderer/core/editing/build.gni b/third_party/blink/renderer/core/editing/build.gni -index 8e0ca95409bf8d350658effa26c53453e2d434a0..373e3b8f9522be27ab78448557139054e98ad589 100644 +index c771cee7be34f36521de34ef893ee578b648a8c8..b0bd447b848bfdb7a9ff9cd98ba95574cb846cc2 100644 --- a/third_party/blink/renderer/core/editing/build.gni +++ b/third_party/blink/renderer/core/editing/build.gni -@@ -364,10 +364,14 @@ blink_core_sources_editing = [ +@@ -362,10 +362,14 @@ blink_core_sources_editing = [ if (is_mac) { blink_core_sources_editing += [ "commands/smart_replace_cf.cc", @@ -1678,10 +1694,10 @@ index 6846060ef9622d8fc8d1d6c8da16e2f1b785e6bd..05c22db87e882b246bd7034e027cf149 // Accessible object if (AXElementWrapper::IsValidElement(value)) { diff --git a/ui/base/BUILD.gn b/ui/base/BUILD.gn -index b5456d6483b35efd929aa772be65b68bc03aabc4..2d1bd535d66c2fab0209e5adc957d827d9182737 100644 +index eb8a8d2a275c4499d2f6097651a6a6d90ff63cb0..844ff9140783a95d91cdb9fbdaea304347439525 100644 --- a/ui/base/BUILD.gn +++ b/ui/base/BUILD.gn -@@ -365,6 +365,13 @@ component("base") { +@@ -367,6 +367,13 @@ component("base") { ] } @@ -1695,7 +1711,7 @@ index b5456d6483b35efd929aa772be65b68bc03aabc4..2d1bd535d66c2fab0209e5adc957d827 if (is_ios) { sources += [ "device_form_factor_ios.mm", -@@ -511,6 +518,12 @@ component("base") { +@@ -513,6 +520,12 @@ component("base") { "//url", ] @@ -1848,10 +1864,10 @@ index 033ebc0036bcd373b011ca829d255e8c83701a6d..ad06707f31872c58217d2d034f050c55 // Query the display's refresh rate. if (@available(macos 12.0, *)) { diff --git a/ui/gfx/BUILD.gn b/ui/gfx/BUILD.gn -index 073269d426f55591e2daeff32782d957624d11d4..c6fe49958fd3e0b556352fda5cc35b9455792002 100644 +index 66307a0b27577865f95b37c80dccf2e02bd46029..f8cd4adc73a29610b5a92e276117484d0f580d4b 100644 --- a/ui/gfx/BUILD.gn +++ b/ui/gfx/BUILD.gn -@@ -337,6 +337,12 @@ component("gfx") { +@@ -338,6 +338,12 @@ component("gfx") { "//ui/base:ui_data_pack", ] 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 0bf84dae055e..55e4062472a4 100644 --- a/patches/chromium/network_service_allow_remote_certificate_verification_logic.patch +++ b/patches/chromium/network_service_allow_remote_certificate_verification_logic.patch @@ -7,10 +7,10 @@ This adds a callback from the network service that's used to implement session.setCertificateVerifyCallback. diff --git a/services/network/network_context.cc b/services/network/network_context.cc -index 0339a3733272095428d5717c6df9fce8d16062c3..02853bf6552d49986b782785d3ab5a61ec0d3734 100644 +index e9d152aa78f7c58a0071cf5f9eac48427518612d..b91e9da008c121d2afbc5fd4c3c9ea401a6191a8 100644 --- a/services/network/network_context.cc +++ b/services/network/network_context.cc -@@ -164,6 +164,11 @@ +@@ -163,6 +163,11 @@ #include "services/network/web_transport.h" #include "url/gurl.h" @@ -22,7 +22,7 @@ index 0339a3733272095428d5717c6df9fce8d16062c3..02853bf6552d49986b782785d3ab5a61 #if BUILDFLAG(IS_CT_SUPPORTED) // gn check does not account for BUILDFLAG(). So, for iOS builds, it will // complain about a missing dependency on the target exposing this header. Add a -@@ -603,6 +608,99 @@ void RecordHSTSPreconnectUpgradeReason(HSTSRedirectUpgradeReason reason) { +@@ -602,6 +607,99 @@ void RecordHSTSPreconnectUpgradeReason(HSTSRedirectUpgradeReason reason) { } // namespace @@ -122,7 +122,7 @@ index 0339a3733272095428d5717c6df9fce8d16062c3..02853bf6552d49986b782785d3ab5a61 constexpr uint32_t NetworkContext::kMaxOutstandingRequestsPerProcess; NetworkContext::NetworkContextHttpAuthPreferences:: -@@ -1006,6 +1104,13 @@ void NetworkContext::SetClient( +@@ -1005,6 +1103,13 @@ void NetworkContext::SetClient( client_.Bind(std::move(client)); } @@ -136,7 +136,7 @@ index 0339a3733272095428d5717c6df9fce8d16062c3..02853bf6552d49986b782785d3ab5a61 void NetworkContext::CreateURLLoaderFactory( mojo::PendingReceiver receiver, mojom::URLLoaderFactoryParamsPtr params) { -@@ -2611,6 +2716,10 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext( +@@ -2617,6 +2722,10 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext( cert_verifier = std::make_unique( std::make_unique( std::move(cert_verifier))); @@ -148,7 +148,7 @@ index 0339a3733272095428d5717c6df9fce8d16062c3..02853bf6552d49986b782785d3ab5a61 builder.SetCertVerifier(IgnoreErrorsCertVerifier::MaybeWrapCertVerifier( diff --git a/services/network/network_context.h b/services/network/network_context.h -index 867d3002dc9dada51319c5ed15f5746f58f19fd1..5b5d8eccb9c84965e996cd8d2a8c7d962df7852a 100644 +index 1378785d8b2cdf02d9588327f6cb32b341fb0b12..fcddda19a4d37052312748a6dd4e5ffdee1d240b 100644 --- a/services/network/network_context.h +++ b/services/network/network_context.h @@ -115,6 +115,7 @@ class URLMatcher; @@ -168,7 +168,7 @@ index 867d3002dc9dada51319c5ed15f5746f58f19fd1..5b5d8eccb9c84965e996cd8d2a8c7d96 void ResetURLLoaderFactories() override; void GetViaObliviousHttp( mojom::ObliviousHttpRequestPtr request, -@@ -961,6 +964,8 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext +@@ -963,6 +966,8 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext std::vector dismount_closures_; #endif // BUILDFLAG(IS_DIRECTORY_TRANSFER_REQUIRED) @@ -178,7 +178,7 @@ index 867d3002dc9dada51319c5ed15f5746f58f19fd1..5b5d8eccb9c84965e996cd8d2a8c7d96 std::unique_ptr internal_host_resolver_; std::set, base::UniquePtrComparator> diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom -index 4ea464b2b6c00301ff0f1938fe584292723fafaa..f510b5c5c79161f32a08219aa7f6cd7a722eed85 100644 +index 444379292d06db40203d0f9c8ec93f64d4b1edc6..de945e5f2cb5398c37617fce5e00834b481d3875 100644 --- a/services/network/public/mojom/network_context.mojom +++ b/services/network/public/mojom/network_context.mojom @@ -309,6 +309,17 @@ struct SocketBrokerRemotes { @@ -199,7 +199,7 @@ index 4ea464b2b6c00301ff0f1938fe584292723fafaa..f510b5c5c79161f32a08219aa7f6cd7a // Parameters for constructing a network context. struct NetworkContextParams { // The user agent string. -@@ -957,6 +968,9 @@ interface NetworkContext { +@@ -961,6 +972,9 @@ interface NetworkContext { // Sets a client for this network context. SetClient(pending_remote client); @@ -210,7 +210,7 @@ index 4ea464b2b6c00301ff0f1938fe584292723fafaa..f510b5c5c79161f32a08219aa7f6cd7a CreateURLLoaderFactory( pending_receiver url_loader_factory, diff --git a/services/network/test/test_network_context.h b/services/network/test/test_network_context.h -index 84bdf5143a6ab9cb9f89cd8ae12ea8e68c1608aa..81930f3b5ca760d4db9c65aeb36162ddea68a872 100644 +index 7628357ca82c1c19741a9348212dfa559a203fd2..c57dcce278f96c9bd3157fd5d2ce0f9d0ecbef53 100644 --- a/services/network/test/test_network_context.h +++ b/services/network/test/test_network_context.h @@ -64,6 +64,8 @@ class TestNetworkContext : public mojom::NetworkContext { diff --git a/patches/chromium/notification_provenance.patch b/patches/chromium/notification_provenance.patch index 726648131114..95a7e448103c 100644 --- a/patches/chromium/notification_provenance.patch +++ b/patches/chromium/notification_provenance.patch @@ -133,10 +133,10 @@ index 5be62a3fb27e37f3c1db6b811172f6dfebe18f61..34349f9832fe4b9a3d48db613a789afb const GURL& document_url, const WeakDocumentPtr& weak_document_ptr, diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc -index 9fd362b58903930c3fcb053d561cf8d8c815ce15..c97471d75ab2d11cfe71f34d8d11b27edb5c0fce 100644 +index 67cdf0f30f2295330065550995c81ea0439f7cb7..524191a9a4973c55dc527841f3ea1238877919ac 100644 --- a/content/browser/renderer_host/render_process_host_impl.cc +++ b/content/browser/renderer_host/render_process_host_impl.cc -@@ -2225,7 +2225,7 @@ void RenderProcessHostImpl::CreateNotificationService( +@@ -2236,7 +2236,7 @@ void RenderProcessHostImpl::CreateNotificationService( case RenderProcessHost::NotificationServiceCreatorType::kSharedWorker: case RenderProcessHost::NotificationServiceCreatorType::kDedicatedWorker: { storage_partition_impl_->GetPlatformNotificationContext()->CreateService( @@ -145,7 +145,7 @@ index 9fd362b58903930c3fcb053d561cf8d8c815ce15..c97471d75ab2d11cfe71f34d8d11b27e creator_type, std::move(receiver)); break; } -@@ -2233,7 +2233,7 @@ void RenderProcessHostImpl::CreateNotificationService( +@@ -2244,7 +2244,7 @@ void RenderProcessHostImpl::CreateNotificationService( CHECK(rfh); storage_partition_impl_->GetPlatformNotificationContext()->CreateService( diff --git a/patches/chromium/preconnect_manager.patch b/patches/chromium/preconnect_manager.patch index f3967b3f57bf..e43f1a61333d 100644 --- a/patches/chromium/preconnect_manager.patch +++ b/patches/chromium/preconnect_manager.patch @@ -10,10 +10,10 @@ in favor of defining PreconnectRequest in this file since we don't build the header. diff --git a/chrome/browser/predictors/preconnect_manager.cc b/chrome/browser/predictors/preconnect_manager.cc -index 037b624807fbf34843c450876aae70529df5f7da..a8208563f7d339d486d973caf7b29aba40c91ad0 100644 +index 05c0aa8ca2a480b7477a4b877a34855f8beb997b..46f693e6a7ba906baccf4d4d12bca36e80e7387e 100644 --- a/chrome/browser/predictors/preconnect_manager.cc +++ b/chrome/browser/predictors/preconnect_manager.cc -@@ -15,9 +15,11 @@ +@@ -14,9 +14,11 @@ #include "base/types/optional_util.h" #include "chrome/browser/predictors/predictors_features.h" #include "chrome/browser/predictors/predictors_traffic_annotations.h" @@ -25,7 +25,7 @@ index 037b624807fbf34843c450876aae70529df5f7da..a8208563f7d339d486d973caf7b29aba #include "content/public/browser/browser_context.h" #include "content/public/browser/browser_task_traits.h" #include "content/public/browser/browser_thread.h" -@@ -30,6 +32,20 @@ namespace predictors { +@@ -29,6 +31,20 @@ namespace predictors { const bool kAllowCredentialsOnPreconnectByDefault = true; @@ -63,7 +63,7 @@ index 037b624807fbf34843c450876aae70529df5f7da..a8208563f7d339d486d973caf7b29aba void PreconnectManager::Start(const GURL& url, diff --git a/chrome/browser/predictors/preconnect_manager.h b/chrome/browser/predictors/preconnect_manager.h -index 7ffcb5226bed84e0ecf23d0562a0b61db9a0b835..e2314d0328c265353f7cb6fdb9bfd3b937f25444 100644 +index 666d9fb646cf337cf4c6145358fe3ea822220b0e..591ec08e40541058b61628e50ced35b00ff91b5d 100644 --- a/chrome/browser/predictors/preconnect_manager.h +++ b/chrome/browser/predictors/preconnect_manager.h @@ -17,7 +17,9 @@ @@ -75,7 +75,7 @@ index 7ffcb5226bed84e0ecf23d0562a0b61db9a0b835..e2314d0328c265353f7cb6fdb9bfd3b9 +#endif #include "content/public/browser/storage_partition_config.h" #include "net/base/network_anonymization_key.h" - #include "services/network/public/mojom/reconnect_event_observer.mojom.h" + #include "services/network/public/mojom/connection_change_observer_client.mojom.h" @@ -35,7 +37,28 @@ class NetworkContext; namespace predictors { diff --git a/patches/chromium/printing.patch b/patches/chromium/printing.patch index e92e0e63fb6c..ea054be3fcf1 100644 --- a/patches/chromium/printing.patch +++ b/patches/chromium/printing.patch @@ -887,10 +887,10 @@ index 97cb6458bc9eec767db89b56abfc5f4b4136ff7b..d9a0b343158b8464b5c9aa8e0e655c0b ScriptingThrottler scripting_throttler_; diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn -index 0603b350939376c6e3499de7f19980b7cd274735..4adc2b7d4a244d60c9523feb9e4b24f7c0e634a7 100644 +index 1f77801262614d36b7803837ce43ef2a499a7a97..de5e27c2960ffd7253aa1dfae46dbc51ca57d2ce 100644 --- a/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn -@@ -3167,8 +3167,9 @@ source_set("browser") { +@@ -3171,8 +3171,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 5136b1de11cc..2b3ac237b255 100644 --- a/patches/chromium/refactor_expose_cursor_changes_to_the_webcontentsobserver.patch +++ b/patches/chromium/refactor_expose_cursor_changes_to_the_webcontentsobserver.patch @@ -30,7 +30,7 @@ index a54a0dedf8ef1cfffa4e80a4707debed0e83d277..e66e71fdbabb40a5307b12cd8965e773 // 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 6a60a4b0275e1832216b092c29bc867f4727ca22..6a939edf24643207b26c9cc155ccca661b06f937 100644 +index cdfdd322ffb2e61d5480ac7c88dba35a1cc1b5b9..a3cbb6cb369c2f250c702a0117e36e9aee04068c 100644 --- a/content/browser/renderer_host/render_widget_host_impl.cc +++ b/content/browser/renderer_host/render_widget_host_impl.cc @@ -2068,6 +2068,9 @@ void RenderWidgetHostImpl::SetCursor(const ui::Cursor& cursor) { @@ -44,10 +44,10 @@ index 6a60a4b0275e1832216b092c29bc867f4727ca22..6a939edf24643207b26c9cc155ccca66 void RenderWidgetHostImpl::ShowContextMenuAtPoint( diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index c0ef22f3872e96be15867428aff1006b8a14a1df..6eaa7d566058fdcc9ebfa10f0420c3a234cb0483 100644 +index 811d137c4b77d3347dc8de5bb6207646c952f23b..33abfcd326148f32eff2266a4545345e4a561a4e 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -6060,6 +6060,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() { +@@ -6069,6 +6069,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() { return text_input_manager_.get(); } @@ -60,10 +60,10 @@ index c0ef22f3872e96be15867428aff1006b8a14a1df..6eaa7d566058fdcc9ebfa10f0420c3a2 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 bb00cc84d8880911c1b170a0b7084a8d9cd4bbdb..e8db4afa0c4f1061fe1609745cbac815f52b4a28 100644 +index 478c9dfd9019e7acfa2ad63219a268aa5879670e..54c2a41b7ee21f1e6f022c5818e56e24a52ccbef 100644 --- a/content/browser/web_contents/web_contents_impl.h +++ b/content/browser/web_contents/web_contents_impl.h -@@ -1189,6 +1189,7 @@ class CONTENT_EXPORT WebContentsImpl +@@ -1193,6 +1193,7 @@ class CONTENT_EXPORT WebContentsImpl void SendScreenRects() override; void SendActiveState(bool active) override; TextInputManager* GetTextInputManager() override; diff --git a/patches/chromium/refactor_patch_electron_permissiontypes_into_blink.patch b/patches/chromium/refactor_patch_electron_permissiontypes_into_blink.patch index d776be1c11dd..436743a64fdc 100644 --- a/patches/chromium/refactor_patch_electron_permissiontypes_into_blink.patch +++ b/patches/chromium/refactor_patch_electron_permissiontypes_into_blink.patch @@ -6,10 +6,10 @@ Subject: refactor: patch electron PermissionTypes into blink 6387077: [PermissionOptions] Generalize PermissionRequestDescription | https://chromium-review.googlesource.com/c/chromium/src/+/6387077 diff --git a/components/permissions/permission_util.cc b/components/permissions/permission_util.cc -index f69c10c32011c9da5c235a5199abce44e64982da..3b166dd8f571538102772a9bcd5bbe55015742f3 100644 +index bface283d508d1c1a3f9fd297d92e048bdd423af..5b6451a5ac484a23a20906b8c3c9b998f7b31a33 100644 --- a/components/permissions/permission_util.cc +++ b/components/permissions/permission_util.cc -@@ -502,7 +502,17 @@ ContentSettingsType PermissionUtil::PermissionTypeToContentSettingsTypeSafe( +@@ -520,7 +520,17 @@ ContentSettingsType PermissionUtil::PermissionTypeToContentSettingsTypeSafe( return ContentSettingsType::WEB_APP_INSTALLATION; case PermissionType::LOCAL_NETWORK_ACCESS: return ContentSettingsType::LOCAL_NETWORK_ACCESS; diff --git a/patches/chromium/refactor_unfilter_unresponsive_events.patch b/patches/chromium/refactor_unfilter_unresponsive_events.patch index e9dd22401d93..7525fb4b186a 100644 --- a/patches/chromium/refactor_unfilter_unresponsive_events.patch +++ b/patches/chromium/refactor_unfilter_unresponsive_events.patch @@ -15,10 +15,10 @@ This CL removes these filters so the unresponsive event can still be accessed from our JS event. The filtering is moved into Electron's code. diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index de2e8163c6ae5a1a01a79413d3d44b7c11ede311..e1692192bfa25f9949dd3f2fa2b61fc5dcef2e26 100644 +index 51798b8ceb81cf9d374cf594aa6afbcb366f4732..bacfca5b2f54e2db7700bb871fff4f66712f5c32 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -10299,25 +10299,13 @@ void WebContentsImpl::RendererUnresponsive( +@@ -10308,25 +10308,13 @@ void WebContentsImpl::RendererUnresponsive( base::RepeatingClosure hang_monitor_restarter) { OPTIONAL_TRACE_EVENT1("content", "WebContentsImpl::RendererUnresponsive", "render_widget_host", render_widget_host); diff --git a/patches/chromium/resource_file_conflict.patch b/patches/chromium/resource_file_conflict.patch index 19e08c4342b0..5571fa0701b2 100644 --- a/patches/chromium/resource_file_conflict.patch +++ b/patches/chromium/resource_file_conflict.patch @@ -52,10 +52,10 @@ Some alternatives to this patch: None of these options seems like a substantial maintainability win over this patch to me (@nornagon). diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn -index f47270687b9a12fb74be2e90cc1e9f25e2e2d34e..84fab7fcdb1a7ded880c0ff4867e09c740e7a5d2 100644 +index 86007c8b041c44c14257245376326bc94ca050a9..72c637f9f3ba48bb7ab06678fe833f33d2cfddc8 100644 --- a/chrome/BUILD.gn +++ b/chrome/BUILD.gn -@@ -1551,7 +1551,7 @@ if (is_chrome_branded && !is_android) { +@@ -1572,7 +1572,7 @@ if (is_chrome_branded && !is_android) { } } @@ -64,7 +64,7 @@ index f47270687b9a12fb74be2e90cc1e9f25e2e2d34e..84fab7fcdb1a7ded880c0ff4867e09c7 chrome_paks("packed_resources") { if (is_mac) { output_dir = "$root_gen_dir/repack" -@@ -1597,6 +1597,12 @@ repack("browser_tests_pak") { +@@ -1618,6 +1618,12 @@ repack("browser_tests_pak") { deps = [ "//chrome/test/data/webui:resources" ] } diff --git a/patches/chromium/revert_code_health_clean_up_stale_macwebcontentsocclusion.patch b/patches/chromium/revert_code_health_clean_up_stale_macwebcontentsocclusion.patch index e0e67b527d25..deaf7a7525b3 100644 --- a/patches/chromium/revert_code_health_clean_up_stale_macwebcontentsocclusion.patch +++ b/patches/chromium/revert_code_health_clean_up_stale_macwebcontentsocclusion.patch @@ -233,12 +233,12 @@ index 7c99a9512e6f65713fe8483cef7b7c9b494b4491..8fb6cf252961c9773d1a6a09d47bec6a } diff --git a/content/common/features.cc b/content/common/features.cc -index 8c02eee693930e68cc734bbaba9a1fdb403cf8c1..aa3084feb5aa8c6a771016b38f0adcfa39bed9b2 100644 +index e5fec5227be7aa05b9fb5ec9f77f66129b8a9639..d639895ba47a66d3b689094d32b4b9572c7aa9ff 100644 --- a/content/common/features.cc +++ b/content/common/features.cc -@@ -315,6 +315,14 @@ BASE_FEATURE(kIOSurfaceCapturer, - base::FEATURE_ENABLED_BY_DEFAULT); - #endif +@@ -319,6 +319,14 @@ BASE_FEATURE_PARAM(size_t, + 42u); + #endif // BUILDFLAG(IS_ANDROID) +// Feature that controls whether WebContentsOcclusionChecker should handle +// occlusion notifications. @@ -252,12 +252,12 @@ index 8c02eee693930e68cc734bbaba9a1fdb403cf8c1..aa3084feb5aa8c6a771016b38f0adcfa // invalidated upon notifications sent by base::SystemMonitor. If disabled, the // cache is considered invalid on every enumeration request. diff --git a/content/common/features.h b/content/common/features.h -index 032df239241bb73a19f1f3e1c0683764c40e96eb..56d00c458e0702de4830d849aa0639336823112a 100644 +index ccc1ab3f83c6c0e2e8e2d993705bb72a60981ba8..9c52d679c17f690abf1a38f04432a0c14a28af4f 100644 --- a/content/common/features.h +++ b/content/common/features.h -@@ -102,6 +102,9 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE(kInterestGroupUpdateIfOlderThan); - #if BUILDFLAG(IS_MAC) - CONTENT_EXPORT BASE_DECLARE_FEATURE(kIOSurfaceCapturer); +@@ -105,6 +105,9 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE(kRendererProcessLimitOnAndroid); + CONTENT_EXPORT BASE_DECLARE_FEATURE_PARAM(size_t, + kRendererProcessLimitOnAndroidCount); #endif +#if BUILDFLAG(IS_MAC) +CONTENT_EXPORT BASE_DECLARE_FEATURE(kMacWebContentsOcclusion); diff --git a/patches/chromium/revert_webgl_add_stub_webgl_2_renderingcontextwebgpu.patch b/patches/chromium/revert_webgl_add_stub_webgl_2_renderingcontextwebgpu.patch deleted file mode 100644 index 965070769efd..000000000000 --- a/patches/chromium/revert_webgl_add_stub_webgl_2_renderingcontextwebgpu.patch +++ /dev/null @@ -1,4219 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Colin Blundell -Date: Mon, 19 May 2025 23:49:13 -0700 -Subject: Revert "[webgl] Add stub WebGL[2]RenderingContextWebGPU" - -This reverts commit e530c1578622adea59ae2ac3a586ae090681422b. - -Reason for revert: Multiple eng reporting that this is causing build failures due to too-long pathnames, with no immediate feasible workaround - -Bug: 414506479 -Original change's description: -> [webgl] Add stub WebGL[2]RenderingContextWebGPU -> -> These implementations of the WebGL IDL are meant to be implemented with -> ANGLE running on top of the WebGPU using dawn::wire, the same way that -> WebGPU's JS bindings are implemented. If successful, this would allow -> reducing the GPU process attack surface as it wouldn't need to support -> the GLES command buffer anymore. -> -> Binary-Size: Required initial increase to add WebGLOnWebGPU. -> Fuchsia-Binary-Size: Increase is temporary, will be more than compensated by linking ANGLE statically (-400kb). -> Bug: 414506479 -> Change-Id: I63d88a06d0d91e9842b48414d335df99522bba8d -> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6494836 -> Reviewed-by: Brandon Jones -> Commit-Queue: Corentin Wallez -> Reviewed-by: Colin Blundell -> Cr-Commit-Position: refs/heads/main@{#1462154} - -Bug: 414506479 -No-Presubmit: true -No-Tree-Checks: true -No-Try: true -Change-Id: I0d4f94e9ceabd770250390d6f4ffe844a4ad00cb -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6565622 -Auto-Submit: Colin Blundell -Commit-Queue: Rubber Stamper -Bot-Commit: Rubber Stamper -Cr-Commit-Position: refs/heads/main@{#1462590} - -diff --git a/third_party/blink/renderer/bindings/generated_in_modules.gni b/third_party/blink/renderer/bindings/generated_in_modules.gni -index b42efe786712f81b5b86ff90f62a7ee486c16c9a..c8177157631aeb7a0d8c65c57ac6da5b74da8b1f 100644 ---- a/third_party/blink/renderer/bindings/generated_in_modules.gni -+++ b/third_party/blink/renderer/bindings/generated_in_modules.gni -@@ -2986,8 +2986,6 @@ generated_interface_sources_in_modules = [ - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_web_transport_error.h", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_webgl2_rendering_context.cc", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_webgl2_rendering_context.h", -- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_webgl2_rendering_context_webgpu.cc", -- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_webgl2_rendering_context_webgpu.h", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_webgl_active_info.cc", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_webgl_active_info.h", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_webgl_blend_func_extended.cc", -@@ -3046,8 +3044,6 @@ generated_interface_sources_in_modules = [ - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_webgl_renderbuffer.h", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_webgl_rendering_context.cc", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_webgl_rendering_context.h", -- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_webgl_rendering_context_webgpu.cc", -- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_webgl_rendering_context_webgpu.h", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_webgl_sampler.cc", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_webgl_sampler.h", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_webgl_shader.cc", -@@ -3282,8 +3278,8 @@ generated_union_sources_in_modules = [ - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_boolean_mediatrackconstraints.h", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_canvasfilter_string.cc", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_canvasfilter_string.h", -- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_canvasrenderingcontext2d_gpucanvascontext_imagebitmaprenderingcontext_webgl2renderingcontext_webgl2renderingcontextwebgpu_webglrenderingcontext_webglrenderingcontextwebgpu.cc", -- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_canvasrenderingcontext2d_gpucanvascontext_imagebitmaprenderingcontext_webgl2renderingcontext_webgl2renderingcontextwebgpu_webglrenderingcontext_webglrenderingcontextwebgpu.h", -+ "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_canvasrenderingcontext2d_gpucanvascontext_imagebitmaprenderingcontext_webgl2renderingcontext_webglrenderingcontext.cc", -+ "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_canvasrenderingcontext2d_gpucanvascontext_imagebitmaprenderingcontext_webgl2renderingcontext_webglrenderingcontext.h", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_client_messageport_serviceworker.cc", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_client_messageport_serviceworker.h", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_constraindomstringparameters_string_stringsequence.cc", -@@ -3310,8 +3306,8 @@ generated_union_sources_in_modules = [ - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_gpuautolayoutmode_gpupipelinelayout.h", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_gpubufferbinding_gpuexternaltexture_gpusampler_gputextureview.cc", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_gpubufferbinding_gpuexternaltexture_gpusampler_gputextureview.h", -- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_gpucanvascontext_imagebitmaprenderingcontext_offscreencanvasrenderingcontext2d_webgl2renderingcontext_webgl2renderingcontextwebgpu_webglrenderingcontext_webglrenderingcontextwebgpu.cc", -- "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_gpucanvascontext_imagebitmaprenderingcontext_offscreencanvasrenderingcontext2d_webgl2renderingcontext_webgl2renderingcontextwebgpu_webglrenderingcontext_webglrenderingcontextwebgpu.h", -+ "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_gpucanvascontext_imagebitmaprenderingcontext_offscreencanvasrenderingcontext2d_webgl2renderingcontext_webglrenderingcontext.cc", -+ "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_gpucanvascontext_imagebitmaprenderingcontext_offscreencanvasrenderingcontext2d_webgl2renderingcontext_webglrenderingcontext.h", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_gpuextent3ddict_unsignedlongenforcerangesequence.cc", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_gpuextent3ddict_unsignedlongenforcerangesequence.h", - "$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_union_gpuorigin2ddict_unsignedlongenforcerangesequence.cc", -diff --git a/third_party/blink/renderer/bindings/idl_in_modules.gni b/third_party/blink/renderer/bindings/idl_in_modules.gni -index e48d158c150ab1a0bc9ed309310171e12c6de22e..e378f59cd4a6a7d3482fbb7b43e207d9f14ffb45 100644 ---- a/third_party/blink/renderer/bindings/idl_in_modules.gni -+++ b/third_party/blink/renderer/bindings/idl_in_modules.gni -@@ -997,7 +997,6 @@ static_idl_files_in_modules = [ - "//third_party/blink/renderer/modules/webgl/ovr_multiview_2.idl", - "//third_party/blink/renderer/modules/webgl/webgl2_rendering_context.idl", - "//third_party/blink/renderer/modules/webgl/webgl2_rendering_context_base.idl", -- "//third_party/blink/renderer/modules/webgl/webgl2_rendering_context_webgpu.idl", - "//third_party/blink/renderer/modules/webgl/webgl_active_info.idl", - "//third_party/blink/renderer/modules/webgl/webgl_blend_func_extended.idl", - "//third_party/blink/renderer/modules/webgl/webgl_buffer.idl", -@@ -1030,7 +1029,6 @@ static_idl_files_in_modules = [ - "//third_party/blink/renderer/modules/webgl/webgl_renderbuffer.idl", - "//third_party/blink/renderer/modules/webgl/webgl_rendering_context.idl", - "//third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.idl", -- "//third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu.idl", - "//third_party/blink/renderer/modules/webgl/webgl_sampler.idl", - "//third_party/blink/renderer/modules/webgl/webgl_shader.idl", - "//third_party/blink/renderer/modules/webgl/webgl_shader_pixel_local_storage.idl", -diff --git a/third_party/blink/renderer/core/html/canvas/canvas_rendering_context.h b/third_party/blink/renderer/core/html/canvas/canvas_rendering_context.h -index 23dea4bb35b90c20dc6d7de9cc5c8356cbcde2f2..392b7a1c1574045d5118be10fd50068cc419afb3 100644 ---- a/third_party/blink/renderer/core/html/canvas/canvas_rendering_context.h -+++ b/third_party/blink/renderer/core/html/canvas/canvas_rendering_context.h -@@ -80,9 +80,9 @@ class ImageBitmap; - class ScriptState; - class StaticBitmapImage; - using V8RenderingContext = class -- V8UnionCanvasRenderingContext2DOrGPUCanvasContextOrImageBitmapRenderingContextOrWebGL2RenderingContextOrWebGL2RenderingContextWebGPUOrWebGLRenderingContextOrWebGLRenderingContextWebGPU; -+ V8UnionCanvasRenderingContext2DOrGPUCanvasContextOrImageBitmapRenderingContextOrWebGL2RenderingContextOrWebGLRenderingContext; - using V8OffscreenRenderingContext = class -- V8UnionGPUCanvasContextOrImageBitmapRenderingContextOrOffscreenCanvasRenderingContext2DOrWebGL2RenderingContextOrWebGL2RenderingContextWebGPUOrWebGLRenderingContextOrWebGLRenderingContextWebGPU; -+ V8UnionGPUCanvasContextOrImageBitmapRenderingContextOrOffscreenCanvasRenderingContext2DOrWebGL2RenderingContextOrWebGLRenderingContext; - class WebGraphicsContext3DVideoFramePool; - - class CORE_EXPORT CanvasRenderingContext -diff --git a/third_party/blink/renderer/modules/canvas/htmlcanvas/html_canvas_element_module.idl b/third_party/blink/renderer/modules/canvas/htmlcanvas/html_canvas_element_module.idl -index 261e9ad46901da85ea2d72c8f6b8e12b23641b94..70d0c26f00fc947af54d8ac8388a68c15d3b43dd 100644 ---- a/third_party/blink/renderer/modules/canvas/htmlcanvas/html_canvas_element_module.idl -+++ b/third_party/blink/renderer/modules/canvas/htmlcanvas/html_canvas_element_module.idl -@@ -7,8 +7,6 @@ - typedef (CanvasRenderingContext2D or - WebGLRenderingContext or - WebGL2RenderingContext or -- WebGLRenderingContextWebGPU or -- WebGL2RenderingContextWebGPU or - ImageBitmapRenderingContext or - GPUCanvasContext) RenderingContext; - -diff --git a/third_party/blink/renderer/modules/canvas/htmlcanvas/v8_rendering_context.h b/third_party/blink/renderer/modules/canvas/htmlcanvas/v8_rendering_context.h -index aa7114367cfefe7871fcf6eb69bc1ac96739bf37..cfa8ac671aa20c8631c2524bd970da21bdf57c06 100644 ---- a/third_party/blink/renderer/modules/canvas/htmlcanvas/v8_rendering_context.h -+++ b/third_party/blink/renderer/modules/canvas/htmlcanvas/v8_rendering_context.h -@@ -8,6 +8,6 @@ - // This is just a forwarding header to avoid including an enormous filename in - // each file that needs the declaration of the union that is used for - // RenderingContext. --#include "third_party/blink/renderer/bindings/modules/v8/v8_union_canvasrenderingcontext2d_gpucanvascontext_imagebitmaprenderingcontext_webgl2renderingcontext_webgl2renderingcontextwebgpu_webglrenderingcontext_webglrenderingcontextwebgpu.h" -+#include "third_party/blink/renderer/bindings/modules/v8/v8_union_canvasrenderingcontext2d_gpucanvascontext_imagebitmaprenderingcontext_webgl2renderingcontext_webglrenderingcontext.h" - - #endif // THIRD_PARTY_BLINK_RENDERER_MODULES_CANVAS_HTMLCANVAS_V8_RENDERING_CONTEXT_H_ -diff --git a/third_party/blink/renderer/modules/canvas/offscreencanvas/offscreen_canvas_module.idl b/third_party/blink/renderer/modules/canvas/offscreencanvas/offscreen_canvas_module.idl -index a15d8d671f7504c9e771e607485413728479423b..f88b06ce555b0a49ac40a93ce52cb49a5bf8c6e6 100644 ---- a/third_party/blink/renderer/modules/canvas/offscreencanvas/offscreen_canvas_module.idl -+++ b/third_party/blink/renderer/modules/canvas/offscreencanvas/offscreen_canvas_module.idl -@@ -7,8 +7,6 @@ - typedef (OffscreenCanvasRenderingContext2D or - WebGLRenderingContext or - WebGL2RenderingContext or -- WebGLRenderingContextWebGPU or -- WebGL2RenderingContextWebGPU or - ImageBitmapRenderingContext or - GPUCanvasContext) OffscreenRenderingContext; - enum OffscreenRenderingContextType { "2d", "webgl", "webgl2", "bitmaprenderer", "webgpu" }; -diff --git a/third_party/blink/renderer/modules/canvas/offscreencanvas/v8_offscreen_rendering_context.h b/third_party/blink/renderer/modules/canvas/offscreencanvas/v8_offscreen_rendering_context.h -index 3742d1e586615165f3bfdddbbd054e13a45e244d..b44bacfe4240240b0f65bdafd1ae8bc37182bdc7 100644 ---- a/third_party/blink/renderer/modules/canvas/offscreencanvas/v8_offscreen_rendering_context.h -+++ b/third_party/blink/renderer/modules/canvas/offscreencanvas/v8_offscreen_rendering_context.h -@@ -8,6 +8,6 @@ - // This is just a forwarding header to avoid including an enormous filename in - // each file that needs the declaration of the union that is used for - // OffscreenRenderingContext. --#include "third_party/blink/renderer/bindings/modules/v8/v8_union_gpucanvascontext_imagebitmaprenderingcontext_offscreencanvasrenderingcontext2d_webgl2renderingcontext_webgl2renderingcontextwebgpu_webglrenderingcontext_webglrenderingcontextwebgpu.h" -+#include "third_party/blink/renderer/bindings/modules/v8/v8_union_gpucanvascontext_imagebitmaprenderingcontext_offscreencanvasrenderingcontext2d_webgl2renderingcontext_webglrenderingcontext.h" - - #endif // THIRD_PARTY_BLINK_RENDERER_MODULES_CANVAS_OFFSCREENCANVAS_V8_OFFSCREEN_RENDERING_CONTEXT_H_ -diff --git a/third_party/blink/renderer/modules/webgl/BUILD.gn b/third_party/blink/renderer/modules/webgl/BUILD.gn -index 5c1ff9afbfea45aba7b1fa68234fc1c35914aa95..08d7b3f52c5c2cd6d1199396b2ce1775f2289798 100644 ---- a/third_party/blink/renderer/modules/webgl/BUILD.gn -+++ b/third_party/blink/renderer/modules/webgl/BUILD.gn -@@ -79,8 +79,6 @@ blink_modules_sources("webgl") { - "webgl2_rendering_context.h", - "webgl2_rendering_context_base.cc", - "webgl2_rendering_context_base.h", -- "webgl2_rendering_context_webgpu.cc", -- "webgl2_rendering_context_webgpu.h", - "webgl_active_info.h", - "webgl_blend_func_extended.cc", - "webgl_blend_func_extended.h", -@@ -153,10 +151,6 @@ blink_modules_sources("webgl") { - "webgl_rendering_context.h", - "webgl_rendering_context_base.cc", - "webgl_rendering_context_base.h", -- "webgl_rendering_context_webgpu.cc", -- "webgl_rendering_context_webgpu.h", -- "webgl_rendering_context_webgpu_base.cc", -- "webgl_rendering_context_webgpu_base.h", - "webgl_sampler.cc", - "webgl_sampler.h", - "webgl_shader.cc", -diff --git a/third_party/blink/renderer/modules/webgl/DEPS b/third_party/blink/renderer/modules/webgl/DEPS -index b0efa5dd316811a166016c144c048e15130586a3..ec20717bde034b51a30a949efee2e24db9bac499 100644 ---- a/third_party/blink/renderer/modules/webgl/DEPS -+++ b/third_party/blink/renderer/modules/webgl/DEPS -@@ -1,5 +1,4 @@ - include_rules = [ -- "+base/notimplemented.h", - "+device/vr/buildflags/buildflags.h", - "+device/vr/public/mojom/vr_service.mojom-blink.h", - "+device/vr/public/mojom/vr_service.mojom-blink-forward.h", -diff --git a/third_party/blink/renderer/modules/webgl/webgl2_rendering_context_webgpu.cc b/third_party/blink/renderer/modules/webgl/webgl2_rendering_context_webgpu.cc -deleted file mode 100644 -index 290b5d688cbe44bb17ea73e388393f618c9e42c4..0000000000000000000000000000000000000000 ---- a/third_party/blink/renderer/modules/webgl/webgl2_rendering_context_webgpu.cc -+++ /dev/null -@@ -1,29 +0,0 @@ --// Copyright 2025 The Chromium Authors --// Use of this source code is governed by a BSD-style license that can be --// found in the LICENSE file. -- --#include "third_party/blink/renderer/modules/webgl/webgl2_rendering_context_webgpu.h" -- --#include "base/notimplemented.h" --#include "third_party/blink/renderer/modules/canvas/htmlcanvas/v8_rendering_context.h" --#include "third_party/blink/renderer/modules/canvas/offscreencanvas/v8_offscreen_rendering_context.h" -- --namespace blink { -- --WebGL2RenderingContextWebGPU::WebGL2RenderingContextWebGPU( -- CanvasRenderingContextHost* host, -- const CanvasContextCreationAttributesCore& requested_attributes) -- : WebGLRenderingContextWebGPUBase(host, -- requested_attributes, -- CanvasRenderingAPI::kWebgl2) {} -- --V8RenderingContext* WebGL2RenderingContextWebGPU::AsV8RenderingContext() { -- return MakeGarbageCollected(this); --} -- --V8OffscreenRenderingContext* --WebGL2RenderingContextWebGPU::AsV8OffscreenRenderingContext() { -- return MakeGarbageCollected(this); --} -- --} // namespace blink -diff --git a/third_party/blink/renderer/modules/webgl/webgl2_rendering_context_webgpu.h b/third_party/blink/renderer/modules/webgl/webgl2_rendering_context_webgpu.h -deleted file mode 100644 -index db83b4ac9d3138dc82a2522adc22ded58f7d1627..0000000000000000000000000000000000000000 ---- a/third_party/blink/renderer/modules/webgl/webgl2_rendering_context_webgpu.h -+++ /dev/null -@@ -1,28 +0,0 @@ --// Copyright 2025 The Chromium Authors --// Use of this source code is governed by a BSD-style license that can be --// found in the LICENSE file. -- --#ifndef THIRD_PARTY_BLINK_RENDERER_MODULES_WEBGL_WEBGL2_RENDERING_CONTEXT_WEBGPU_H_ --#define THIRD_PARTY_BLINK_RENDERER_MODULES_WEBGL_WEBGL2_RENDERING_CONTEXT_WEBGPU_H_ -- --#include "third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu_base.h" -- --namespace blink { -- --class WebGL2RenderingContextWebGPU final -- : public WebGLRenderingContextWebGPUBase { -- DEFINE_WRAPPERTYPEINFO(); -- -- public: -- WebGL2RenderingContextWebGPU( -- CanvasRenderingContextHost* host, -- const CanvasContextCreationAttributesCore& requested_attributes); -- -- // CanvasRenderingContext implementation -- V8RenderingContext* AsV8RenderingContext() final; -- V8OffscreenRenderingContext* AsV8OffscreenRenderingContext() final; --}; -- --} // namespace blink -- --#endif // THIRD_PARTY_BLINK_RENDERER_MODULES_WEBGL_WEBGL2_RENDERING_CONTEXT_WEBGPU_H_ -diff --git a/third_party/blink/renderer/modules/webgl/webgl2_rendering_context_webgpu.idl b/third_party/blink/renderer/modules/webgl/webgl2_rendering_context_webgpu.idl -deleted file mode 100644 -index ac76ded5b53871030a6b7496fa3b24d79f27b56d..0000000000000000000000000000000000000000 ---- a/third_party/blink/renderer/modules/webgl/webgl2_rendering_context_webgpu.idl -+++ /dev/null -@@ -1,13 +0,0 @@ --// Copyright 2025 The Chromium Authors --// Use of this source code is governed by a BSD-style license that can be --// found in the LICENSE file. -- --// https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7 -- --[ -- ActiveScriptWrappable, -- Exposed=(Window,Worker), -- RuntimeEnabled=WebGLOnWebGPU --] interface WebGL2RenderingContextWebGPU { }; --WebGL2RenderingContextWebGPU includes WebGLRenderingContextBase; --WebGL2RenderingContextWebGPU includes WebGL2RenderingContextBase; -diff --git a/third_party/blink/renderer/modules/webgl/webgl_context_factory.cc b/third_party/blink/renderer/modules/webgl/webgl_context_factory.cc -index 8a983f1720d94391f641be229c8fcac0fb07d148..048feec570e2bcdac3c57ac14094ba28635b112f 100644 ---- a/third_party/blink/renderer/modules/webgl/webgl_context_factory.cc -+++ b/third_party/blink/renderer/modules/webgl/webgl_context_factory.cc -@@ -4,15 +4,11 @@ - - #include "third_party/blink/renderer/modules/webgl/webgl_context_factory.h" - --#include "base/notimplemented.h" - #include "third_party/blink/renderer/core/html/canvas/canvas_context_creation_attributes_core.h" - #include "third_party/blink/renderer/core/html/canvas/html_canvas_element.h" - #include "third_party/blink/renderer/modules/webgl/webgl2_rendering_context.h" --#include "third_party/blink/renderer/modules/webgl/webgl2_rendering_context_webgpu.h" - #include "third_party/blink/renderer/modules/webgl/webgl_context_event.h" - #include "third_party/blink/renderer/modules/webgl/webgl_rendering_context.h" --#include "third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu.h" --#include "third_party/blink/renderer/platform/runtime_enabled_features.h" - - namespace blink { - -@@ -32,11 +28,7 @@ WebGLContextFactory::WebGLContextFactory(bool is_webgl2) - CanvasRenderingContext* WebGLContextFactory::Create( - CanvasRenderingContextHost* host, - const CanvasContextCreationAttributesCore& attrs) { -- if (RuntimeEnabledFeatures::WebGLOnWebGPUEnabled()) { -- return CreateInternalWebGPU(host, attrs); -- } else { -- return CreateInternal(host, attrs); -- } -+ return CreateInternal(host, attrs); - } - - CanvasRenderingContext* WebGLContextFactory::CreateInternal( -@@ -106,16 +98,6 @@ CanvasRenderingContext* WebGLContextFactory::CreateInternal( - } - } - --CanvasRenderingContext* WebGLContextFactory::CreateInternalWebGPU( -- CanvasRenderingContextHost* host, -- const CanvasContextCreationAttributesCore& attrs) { -- if (is_webgl2_) { -- return MakeGarbageCollected(host, attrs); -- } else { -- return MakeGarbageCollected(host, attrs); -- } --} -- - CanvasRenderingContext::CanvasRenderingAPI - WebGLContextFactory::GetRenderingAPI() const { - if (is_webgl2_) { -diff --git a/third_party/blink/renderer/modules/webgl/webgl_context_factory.h b/third_party/blink/renderer/modules/webgl/webgl_context_factory.h -index e58bbe3f6eec6e64a89d08e7e83d63d9b0841a04..df24c7085def9fc934a835635c10ebf7382ba528 100644 ---- a/third_party/blink/renderer/modules/webgl/webgl_context_factory.h -+++ b/third_party/blink/renderer/modules/webgl/webgl_context_factory.h -@@ -39,9 +39,6 @@ class WebGLContextFactory : public CanvasRenderingContextFactory { - CanvasRenderingContext* CreateInternal( - CanvasRenderingContextHost*, - const CanvasContextCreationAttributesCore&); -- CanvasRenderingContext* CreateInternalWebGPU( -- CanvasRenderingContextHost*, -- const CanvasContextCreationAttributesCore&); - - const char* GetContextName() const; - Platform::ContextType GetContextType() const; -diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu.cc b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu.cc -deleted file mode 100644 -index ead39056f29ff7080c66d983489b090ad4b1ce8d..0000000000000000000000000000000000000000 ---- a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu.cc -+++ /dev/null -@@ -1,29 +0,0 @@ --// Copyright 2025 The Chromium Authors --// Use of this source code is governed by a BSD-style license that can be --// found in the LICENSE file. -- --#include "third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu.h" -- --#include "base/notimplemented.h" --#include "third_party/blink/renderer/modules/canvas/htmlcanvas/v8_rendering_context.h" --#include "third_party/blink/renderer/modules/canvas/offscreencanvas/v8_offscreen_rendering_context.h" -- --namespace blink { -- --WebGLRenderingContextWebGPU::WebGLRenderingContextWebGPU( -- CanvasRenderingContextHost* host, -- const CanvasContextCreationAttributesCore& requested_attributes) -- : WebGLRenderingContextWebGPUBase(host, -- requested_attributes, -- CanvasRenderingAPI::kWebgl) {} -- --V8RenderingContext* WebGLRenderingContextWebGPU::AsV8RenderingContext() { -- return MakeGarbageCollected(this); --} -- --V8OffscreenRenderingContext* --WebGLRenderingContextWebGPU::AsV8OffscreenRenderingContext() { -- return MakeGarbageCollected(this); --} -- --} // namespace blink -diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu.h b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu.h -deleted file mode 100644 -index d0f3d1c34212165549eacf89b8d62ad611c0e168..0000000000000000000000000000000000000000 ---- a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu.h -+++ /dev/null -@@ -1,28 +0,0 @@ --// Copyright 2025 The Chromium Authors --// Use of this source code is governed by a BSD-style license that can be --// found in the LICENSE file. -- --#ifndef THIRD_PARTY_BLINK_RENDERER_MODULES_WEBGL_WEBGL_RENDERING_CONTEXT_WEBGPU_H_ --#define THIRD_PARTY_BLINK_RENDERER_MODULES_WEBGL_WEBGL_RENDERING_CONTEXT_WEBGPU_H_ -- --#include "third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu_base.h" -- --namespace blink { -- --class WebGLRenderingContextWebGPU final -- : public WebGLRenderingContextWebGPUBase { -- DEFINE_WRAPPERTYPEINFO(); -- -- public: -- WebGLRenderingContextWebGPU( -- CanvasRenderingContextHost* host, -- const CanvasContextCreationAttributesCore& requested_attributes); -- -- // CanvasRenderingContext implementation -- V8RenderingContext* AsV8RenderingContext() final; -- V8OffscreenRenderingContext* AsV8OffscreenRenderingContext() final; --}; -- --} // namespace blink -- --#endif // THIRD_PARTY_BLINK_RENDERER_MODULES_WEBGL_WEBGL_RENDERING_CONTEXT_WEBGPU_H_ -diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu.idl b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu.idl -deleted file mode 100644 -index 2f4c23c68dc658cd8f91a72948b78f1f39c92578..0000000000000000000000000000000000000000 ---- a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu.idl -+++ /dev/null -@@ -1,16 +0,0 @@ --// Copyright 2025 The Chromium Authors --// Use of this source code is governed by a BSD-style license that can be --// found in the LICENSE file. -- --// https://www.khronos.org/registry/webgl/specs/latest/1.0/#WebGLRenderingContext -- --[ -- ActiveScriptWrappable, -- Exposed=(Window,Worker), -- RuntimeEnabled=WebGLOnWebGPU --] interface WebGLRenderingContextWebGPU { -- -- [RuntimeEnabled=WebGLDrawingBufferStorage] const GLenum RGB8 = 0x8051; -- [RuntimeEnabled=WebGLDrawingBufferStorage] const GLenum RGBA8 = 0x8058; --}; --WebGLRenderingContextWebGPU includes WebGLRenderingContextBase; -diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu_base.cc b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu_base.cc -deleted file mode 100644 -index 18d26cfe4faea0937d6f6c0c35424b29acc43786..0000000000000000000000000000000000000000 ---- a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu_base.cc -+++ /dev/null -@@ -1,2475 +0,0 @@ --// Copyright 2025 The Chromium Authors --// Use of this source code is governed by a BSD-style license that can be --// found in the LICENSE file. -- --#include "third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu_base.h" -- --#include "base/notimplemented.h" -- --namespace blink { -- --WebGLRenderingContextWebGPUBase::WebGLRenderingContextWebGPUBase( -- CanvasRenderingContextHost* host, -- const CanvasContextCreationAttributesCore& requested_attributes, -- CanvasRenderingAPI api) -- : WebGLContextObjectSupport( -- host->GetTopExecutionContext()->GetTaskRunner(TaskType::kWebGL), -- /* is_webgl2 */ api == CanvasRenderingAPI::kWebgl2), -- CanvasRenderingContext(host, requested_attributes, api) {} -- --WebGLRenderingContextWebGPUBase::~WebGLRenderingContextWebGPUBase() {} -- --// **************************************************************************** --// Start of WebGLRenderingContextBase's IDL methods --// **************************************************************************** -- --V8UnionHTMLCanvasElementOrOffscreenCanvas* --WebGLRenderingContextWebGPUBase::getHTMLOrOffscreenCanvas() const { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --int WebGLRenderingContextWebGPUBase::drawingBufferWidth() const { -- NOTIMPLEMENTED(); -- return 0; --} -- --int WebGLRenderingContextWebGPUBase::drawingBufferHeight() const { -- NOTIMPLEMENTED(); -- return 0; --} -- --GLenum WebGLRenderingContextWebGPUBase::drawingBufferFormat() const { -- NOTIMPLEMENTED(); -- return 0; --} -- --V8PredefinedColorSpace --WebGLRenderingContextWebGPUBase::drawingBufferColorSpace() const { -- NOTIMPLEMENTED(); -- return V8PredefinedColorSpace(V8PredefinedColorSpace::Enum::kSRGB); --} -- --void WebGLRenderingContextWebGPUBase::setDrawingBufferColorSpace( -- const V8PredefinedColorSpace& color_space, -- ExceptionState&) { -- NOTIMPLEMENTED(); --} -- --V8PredefinedColorSpace WebGLRenderingContextWebGPUBase::unpackColorSpace() -- const { -- NOTIMPLEMENTED(); -- return V8PredefinedColorSpace(V8PredefinedColorSpace::Enum::kSRGB); --} -- --void WebGLRenderingContextWebGPUBase::setUnpackColorSpace( -- const V8PredefinedColorSpace& color_space, -- ExceptionState&) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::activeTexture(GLenum texture) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::attachShader(WebGLProgram*, -- WebGLShader*) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::bindAttribLocation(WebGLProgram*, -- GLuint index, -- const String& name) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::bindBuffer(GLenum target, -- WebGLBuffer* buffer) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::bindFramebuffer(GLenum target, -- WebGLFramebuffer*) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::bindRenderbuffer(GLenum target, -- WebGLRenderbuffer*) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::bindTexture(GLenum target, -- WebGLTexture*) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::blendColor(GLfloat red, -- GLfloat green, -- GLfloat blue, -- GLfloat alpha) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::blendEquation(GLenum mode) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::blendEquationSeparate(GLenum mode_rgb, -- GLenum mode_alpha) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::blendFunc(GLenum sfactor, -- GLenum dfactor) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::blendFuncSeparate(GLenum src_rgb, -- GLenum dst_rgb, -- GLenum src_alpha, -- GLenum dst_alpha) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::bufferData(GLenum target, -- int64_t size, -- GLenum usage) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::bufferData(GLenum target, -- DOMArrayBufferBase* data, -- GLenum usage) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::bufferData( -- GLenum target, -- MaybeShared data, -- GLenum usage) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::bufferSubData( -- GLenum target, -- int64_t offset, -- base::span data) { -- NOTIMPLEMENTED(); --} -- --GLenum WebGLRenderingContextWebGPUBase::checkFramebufferStatus(GLenum target) { -- NOTIMPLEMENTED(); -- return 0; --} -- --void WebGLRenderingContextWebGPUBase::clear(GLbitfield mask) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::clearColor(GLfloat red, -- GLfloat green, -- GLfloat blue, -- GLfloat alpha) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::clearDepth(GLfloat) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::clearStencil(GLint) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::colorMask(GLboolean red, -- GLboolean green, -- GLboolean blue, -- GLboolean alpha) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::compileShader(WebGLShader*) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::compressedTexImage2D( -- GLenum target, -- GLint level, -- GLenum internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- MaybeShared data) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::compressedTexSubImage2D( -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- MaybeShared data) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::copyTexImage2D(GLenum target, -- GLint level, -- GLenum internalformat, -- GLint x, -- GLint y, -- GLsizei width, -- GLsizei height, -- GLint border) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::copyTexSubImage2D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint x, -- GLint y, -- GLsizei width, -- GLsizei height) { -- NOTIMPLEMENTED(); --} -- --WebGLBuffer* WebGLRenderingContextWebGPUBase::createBuffer() { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --WebGLFramebuffer* WebGLRenderingContextWebGPUBase::createFramebuffer() { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --WebGLProgram* WebGLRenderingContextWebGPUBase::createProgram() { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --WebGLRenderbuffer* WebGLRenderingContextWebGPUBase::createRenderbuffer() { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --WebGLShader* WebGLRenderingContextWebGPUBase::createShader(GLenum type) { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --WebGLTexture* WebGLRenderingContextWebGPUBase::createTexture() { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --void WebGLRenderingContextWebGPUBase::cullFace(GLenum mode) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::deleteBuffer(WebGLBuffer*) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::deleteFramebuffer(WebGLFramebuffer*) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::deleteProgram(WebGLProgram*) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::deleteRenderbuffer(WebGLRenderbuffer*) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::deleteShader(WebGLShader*) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::deleteTexture(WebGLTexture*) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::depthFunc(GLenum) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::depthMask(GLboolean) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::depthRange(GLfloat z_near, -- GLfloat z_far) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::detachShader(WebGLProgram*, -- WebGLShader*) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::disable(GLenum cap) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::disableVertexAttribArray(GLuint index) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::drawArrays(GLenum mode, -- GLint first, -- GLsizei count) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::drawElements(GLenum mode, -- GLsizei count, -- GLenum type, -- int64_t offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::enable(GLenum cap) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::enableVertexAttribArray(GLuint index) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::finish() { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::flush() { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::framebufferRenderbuffer( -- GLenum target, -- GLenum attachment, -- GLenum renderbuffertarget, -- WebGLRenderbuffer*) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::framebufferTexture2D(GLenum target, -- GLenum attachment, -- GLenum textarget, -- WebGLTexture*, -- GLint level) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::frontFace(GLenum mode) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::generateMipmap(GLenum target) { -- NOTIMPLEMENTED(); --} -- --WebGLActiveInfo* WebGLRenderingContextWebGPUBase::getActiveAttrib( -- WebGLProgram*, -- GLuint index) { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --WebGLActiveInfo* WebGLRenderingContextWebGPUBase::getActiveUniform( -- WebGLProgram*, -- GLuint index) { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --std::optional>> --WebGLRenderingContextWebGPUBase::getAttachedShaders(WebGLProgram*) { -- NOTIMPLEMENTED(); -- return {}; --} -- --GLint WebGLRenderingContextWebGPUBase::getAttribLocation(WebGLProgram*, -- const String& name) { -- NOTIMPLEMENTED(); -- return 0; --} -- --ScriptValue WebGLRenderingContextWebGPUBase::getBufferParameter(ScriptState*, -- GLenum target, -- GLenum pname) { -- NOTIMPLEMENTED(); -- return {}; --} -- --WebGLContextAttributes* WebGLRenderingContextWebGPUBase::getContextAttributes() -- const { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --GLenum WebGLRenderingContextWebGPUBase::getError() { -- NOTIMPLEMENTED(); -- return 0; --} -- --ScriptObject WebGLRenderingContextWebGPUBase::getExtension(ScriptState*, -- const String& name) { -- NOTIMPLEMENTED(); -- return {}; --} -- --ScriptValue WebGLRenderingContextWebGPUBase::getFramebufferAttachmentParameter( -- ScriptState*, -- GLenum target, -- GLenum attachment, -- GLenum pname) { -- NOTIMPLEMENTED(); -- return {}; --} -- --ScriptValue WebGLRenderingContextWebGPUBase::getParameter(ScriptState*, -- GLenum pname) { -- NOTIMPLEMENTED(); -- return {}; --} -- --ScriptValue WebGLRenderingContextWebGPUBase::getProgramParameter(ScriptState*, -- WebGLProgram*, -- GLenum pname) { -- NOTIMPLEMENTED(); -- return {}; --} -- --String WebGLRenderingContextWebGPUBase::getProgramInfoLog(WebGLProgram*) { -- NOTIMPLEMENTED(); -- return {}; --} -- --ScriptValue WebGLRenderingContextWebGPUBase::getRenderbufferParameter( -- ScriptState*, -- GLenum target, -- GLenum pname) { -- NOTIMPLEMENTED(); -- return {}; --} -- --ScriptValue WebGLRenderingContextWebGPUBase::getShaderParameter(ScriptState*, -- WebGLShader*, -- GLenum pname) { -- NOTIMPLEMENTED(); -- return {}; --} -- --String WebGLRenderingContextWebGPUBase::getShaderInfoLog(WebGLShader*) { -- NOTIMPLEMENTED(); -- return {}; --} -- --WebGLShaderPrecisionFormat* --WebGLRenderingContextWebGPUBase::getShaderPrecisionFormat( -- GLenum shader_type, -- GLenum precision_type) { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --String WebGLRenderingContextWebGPUBase::getShaderSource(WebGLShader*) { -- NOTIMPLEMENTED(); -- return {}; --} -- --std::optional> --WebGLRenderingContextWebGPUBase::getSupportedExtensions() { -- NOTIMPLEMENTED(); -- return {}; --} -- --ScriptValue WebGLRenderingContextWebGPUBase::getTexParameter(ScriptState*, -- GLenum target, -- GLenum pname) { -- NOTIMPLEMENTED(); -- return {}; --} -- --ScriptValue WebGLRenderingContextWebGPUBase::getUniform( -- ScriptState*, -- WebGLProgram*, -- const WebGLUniformLocation*) { -- NOTIMPLEMENTED(); -- return {}; --} -- --WebGLUniformLocation* WebGLRenderingContextWebGPUBase::getUniformLocation( -- WebGLProgram*, -- const String&) { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --ScriptValue WebGLRenderingContextWebGPUBase::getVertexAttrib(ScriptState*, -- GLuint index, -- GLenum pname) { -- NOTIMPLEMENTED(); -- return {}; --} -- --int64_t WebGLRenderingContextWebGPUBase::getVertexAttribOffset(GLuint index, -- GLenum pname) { -- NOTIMPLEMENTED(); -- return 0; --} -- --void WebGLRenderingContextWebGPUBase::hint(GLenum target, GLenum mode) { -- NOTIMPLEMENTED(); --} -- --bool WebGLRenderingContextWebGPUBase::isBuffer(WebGLBuffer*) { -- NOTIMPLEMENTED(); -- return false; --} -- --bool WebGLRenderingContextWebGPUBase::isEnabled(GLenum cap) { -- NOTIMPLEMENTED(); -- return false; --} -- --bool WebGLRenderingContextWebGPUBase::isFramebuffer(WebGLFramebuffer*) { -- NOTIMPLEMENTED(); -- return false; --} -- --bool WebGLRenderingContextWebGPUBase::isProgram(WebGLProgram*) { -- NOTIMPLEMENTED(); -- return false; --} -- --bool WebGLRenderingContextWebGPUBase::isRenderbuffer(WebGLRenderbuffer*) { -- NOTIMPLEMENTED(); -- return false; --} -- --bool WebGLRenderingContextWebGPUBase::isShader(WebGLShader*) { -- NOTIMPLEMENTED(); -- return false; --} -- --bool WebGLRenderingContextWebGPUBase::isTexture(WebGLTexture*) { -- NOTIMPLEMENTED(); -- return false; --} -- --void WebGLRenderingContextWebGPUBase::lineWidth(GLfloat) { -- NOTIMPLEMENTED(); --} --void WebGLRenderingContextWebGPUBase::linkProgram(WebGLProgram*) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::pixelStorei(GLenum pname, GLint param) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::polygonOffset(GLfloat factor, -- GLfloat units) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::readPixels( -- GLint x, -- GLint y, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- MaybeShared pixels) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::renderbufferStorage(GLenum target, -- GLenum internalformat, -- GLsizei width, -- GLsizei height) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::sampleCoverage(GLfloat value, -- GLboolean invert) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::scissor(GLint x, -- GLint y, -- GLsizei width, -- GLsizei height) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::shaderSource(WebGLShader*, -- const String&) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::stencilFunc(GLenum func, -- GLint ref, -- GLuint mask) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::stencilFuncSeparate(GLenum face, -- GLenum func, -- GLint ref, -- GLuint mask) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::stencilMask(GLuint) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::stencilMaskSeparate(GLenum face, -- GLuint mask) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::stencilOp(GLenum fail, -- GLenum zfail, -- GLenum zpass) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::stencilOpSeparate(GLenum face, -- GLenum fail, -- GLenum zfail, -- GLenum zpass) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texParameterf(GLenum target, -- GLenum pname, -- GLfloat param) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texParameteri(GLenum target, -- GLenum pname, -- GLint param) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage2D( -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLenum format, -- GLenum type, -- MaybeShared) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage2D(GLenum target, -- GLint level, -- GLint internalformat, -- GLenum format, -- GLenum type, -- ImageData*) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage2D(ScriptState*, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLenum format, -- GLenum type, -- HTMLImageElement*, -- ExceptionState&) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage2D(ScriptState*, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLenum format, -- GLenum type, -- CanvasRenderingContextHost*, -- ExceptionState&) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage2D(ScriptState*, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLenum format, -- GLenum type, -- HTMLVideoElement*, -- ExceptionState&) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage2D(ScriptState*, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLenum format, -- GLenum type, -- VideoFrame*, -- ExceptionState&) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage2D(GLenum target, -- GLint level, -- GLint internalformat, -- GLenum format, -- GLenum type, -- ImageBitmap*, -- ExceptionState&) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage2D( -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- MaybeShared) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage2D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLenum format, -- GLenum type, -- ImageData*) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage2D(ScriptState*, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLenum format, -- GLenum type, -- HTMLImageElement*, -- ExceptionState&) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage2D(ScriptState*, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLenum format, -- GLenum type, -- CanvasRenderingContextHost*, -- ExceptionState&) { -- NOTIMPLEMENTED(); --} --void WebGLRenderingContextWebGPUBase::texSubImage2D(ScriptState*, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLenum format, -- GLenum type, -- HTMLVideoElement*, -- ExceptionState&) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage2D(ScriptState*, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLenum format, -- GLenum type, -- VideoFrame*, -- ExceptionState&) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage2D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLenum format, -- GLenum type, -- ImageBitmap*, -- ExceptionState&) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform1f(const WebGLUniformLocation*, -- GLfloat x) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform1fv(const WebGLUniformLocation*, -- base::span) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform1i(const WebGLUniformLocation*, -- GLint x) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform1iv(const WebGLUniformLocation*, -- base::span) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform2f(const WebGLUniformLocation*, -- GLfloat x, -- GLfloat y) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform2fv(const WebGLUniformLocation*, -- base::span) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform2i(const WebGLUniformLocation*, -- GLint x, -- GLint y) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform2iv(const WebGLUniformLocation*, -- base::span) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform3f(const WebGLUniformLocation*, -- GLfloat x, -- GLfloat y, -- GLfloat z) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform3fv(const WebGLUniformLocation*, -- base::span) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform3i(const WebGLUniformLocation*, -- GLint x, -- GLint y, -- GLint z) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform3iv(const WebGLUniformLocation*, -- base::span) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform4f(const WebGLUniformLocation*, -- GLfloat x, -- GLfloat y, -- GLfloat z, -- GLfloat w) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform4fv(const WebGLUniformLocation*, -- base::span) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform4i(const WebGLUniformLocation*, -- GLint x, -- GLint y, -- GLint z, -- GLint w) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform4iv(const WebGLUniformLocation*, -- base::span) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniformMatrix2fv( -- const WebGLUniformLocation*, -- GLboolean transpose, -- base::span value) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniformMatrix3fv( -- const WebGLUniformLocation*, -- GLboolean transpose, -- base::span value) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniformMatrix4fv( -- const WebGLUniformLocation*, -- GLboolean transpose, -- base::span value) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::useProgram(WebGLProgram*) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::validateProgram(WebGLProgram*) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::vertexAttrib1f(GLuint index, GLfloat x) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::vertexAttrib1fv( -- GLuint index, -- base::span values) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::vertexAttrib2f(GLuint index, -- GLfloat x, -- GLfloat y) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::vertexAttrib2fv( -- GLuint index, -- base::span values) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::vertexAttrib3f(GLuint index, -- GLfloat x, -- GLfloat y, -- GLfloat z) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::vertexAttrib3fv( -- GLuint index, -- base::span values) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::vertexAttrib4f(GLuint index, -- GLfloat x, -- GLfloat y, -- GLfloat z, -- GLfloat w) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::vertexAttrib4fv( -- GLuint index, -- base::span values) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::vertexAttribPointer(GLuint index, -- GLint size, -- GLenum type, -- GLboolean normalized, -- GLsizei stride, -- int64_t offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::viewport(GLint x, -- GLint y, -- GLsizei width, -- GLsizei height) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::drawingBufferStorage(GLenum sizedformat, -- GLsizei width, -- GLsizei height) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::commit() { -- NOTIMPLEMENTED(); --} -- --ScriptPromise WebGLRenderingContextWebGPUBase::makeXRCompatible( -- ScriptState*, -- ExceptionState&) { -- NOTIMPLEMENTED(); -- return {}; --} -- --// **************************************************************************** --// End of WebGLRenderingContextBase's IDL methods --// **************************************************************************** -- --// ************************************************************************** --// Start of WebGL2RenderingContextBase's IDL methods --// ************************************************************************** -- --void WebGLRenderingContextWebGPUBase::bufferData( -- GLenum target, -- MaybeShared srcData, -- GLenum usage, -- int64_t srcOffset, -- GLuint length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::bufferSubData( -- GLenum target, -- int64_t offset, -- MaybeShared srcData, -- int64_t srcOffset, -- GLuint length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::copyBufferSubData(GLenum readTarget, -- GLenum writeTarget, -- int64_t readOffset, -- int64_t writeOffset, -- int64_t size) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::getBufferSubData( -- GLenum target, -- int64_t srcByteOffset, -- MaybeShared dstData, -- int64_t dstOffset, -- GLuint length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::blitFramebuffer(GLint src_x0, -- GLint src_y0, -- GLint src_x1, -- GLint src_y1, -- GLint dst_x0, -- GLint dst_y0, -- GLint dst_x1, -- GLint dst_y1, -- GLbitfield mask, -- GLenum filter) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::framebufferTextureLayer( -- GLenum target, -- GLenum attachment, -- WebGLTexture* texture, -- GLint level, -- GLint layer) { -- NOTIMPLEMENTED(); --} -- --ScriptValue WebGLRenderingContextWebGPUBase::getInternalformatParameter( -- ScriptState* script_state, -- GLenum target, -- GLenum internalformat, -- GLenum pname) { -- NOTIMPLEMENTED(); -- return {}; --} -- --void WebGLRenderingContextWebGPUBase::invalidateFramebuffer( -- GLenum target, -- const Vector& attachments) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::invalidateSubFramebuffer( -- GLenum target, -- const Vector& attachments, -- GLint x, -- GLint y, -- GLsizei width, -- GLsizei height) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::readBuffer(GLenum mode) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::renderbufferStorageMultisample( -- GLenum target, -- GLsizei samples, -- GLenum internalformat, -- GLsizei width, -- GLsizei height) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage2D(GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLenum format, -- GLenum type, -- int64_t offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage2D(GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLenum format, -- GLenum type, -- ImageData* pixels) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage2D( -- ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLenum format, -- GLenum type, -- HTMLImageElement* image, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage2D( -- ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLenum format, -- GLenum type, -- CanvasRenderingContextHost* canvas, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage2D( -- ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLenum format, -- GLenum type, -- HTMLVideoElement* video, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage2D( -- ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLenum format, -- GLenum type, -- VideoFrame* frame, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage2D( -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLenum format, -- GLenum type, -- ImageBitmap* bitmap, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage2D( -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLenum format, -- GLenum type, -- MaybeShared data, -- int64_t src_offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texElement2D( -- ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLenum format, -- GLenum type, -- Element* element, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage2D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- int64_t offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage2D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- ImageData* pixels) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage2D( -- ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- HTMLImageElement* image, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage2D( -- ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- CanvasRenderingContextHost* canvas, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage2D( -- ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- HTMLVideoElement* video, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage2D( -- ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- VideoFrame* frame, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage2D( -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- ImageBitmap* bitmap, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage2D( -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- MaybeShared pixels, -- int64_t src_offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texStorage2D(GLenum target, -- GLsizei levels, -- GLenum internalformat, -- GLsizei width, -- GLsizei height) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texStorage3D(GLenum target, -- GLsizei levels, -- GLenum internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage3D(GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLenum format, -- GLenum type, -- int64_t offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage3D(GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLenum format, -- GLenum type, -- ImageData* pixels) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage3D( -- ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLenum format, -- GLenum type, -- HTMLImageElement* image, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage3D( -- ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLenum format, -- GLenum type, -- CanvasRenderingContextHost* canvas, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage3D( -- ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLenum format, -- GLenum type, -- HTMLVideoElement* video, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage3D( -- ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLenum format, -- GLenum type, -- VideoFrame* frame, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage3D( -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLenum format, -- GLenum type, -- ImageBitmap* bitmap, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage3D( -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLenum format, -- GLenum type, -- MaybeShared pixels) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texImage3D( -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLenum format, -- GLenum type, -- MaybeShared pixels, -- GLuint src_offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage3D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLenum type, -- int64_t offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage3D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLenum type, -- ImageData* pixels) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage3D( -- ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLenum type, -- HTMLImageElement* image, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage3D( -- ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLenum type, -- CanvasRenderingContextHost* context_host, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage3D( -- ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLenum type, -- HTMLVideoElement* video, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage3D( -- ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLenum type, -- VideoFrame* frame, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage3D( -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLenum type, -- ImageBitmap* bitmap, -- ExceptionState& exception_state) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage3D( -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLenum type, -- MaybeShared pixels) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::texSubImage3D( -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLenum type, -- MaybeShared pixels, -- GLuint src_offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::copyTexSubImage3D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLint x, -- GLint y, -- GLsizei width, -- GLsizei height) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::compressedTexImage2D( -- GLenum target, -- GLint level, -- GLenum internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- MaybeShared data, -- GLuint src_offset, -- GLuint src_length_override) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::compressedTexSubImage2D( -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- MaybeShared data, -- GLuint src_offset, -- GLuint src_length_override) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::compressedTexImage3D( -- GLenum target, -- GLint level, -- GLenum internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- MaybeShared data, -- GLuint src_offset, -- GLuint src_length_override) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::compressedTexSubImage3D( -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- MaybeShared data, -- GLuint src_offset, -- GLuint src_length_override) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::compressedTexImage2D( -- GLenum target, -- GLint level, -- GLenum internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLsizei image_size, -- int64_t offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::compressedTexSubImage2D( -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLsizei image_size, -- int64_t offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::compressedTexImage3D( -- GLenum target, -- GLint level, -- GLenum internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLsizei image_size, -- int64_t offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::compressedTexSubImage3D( -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLsizei image_size, -- int64_t offset) { -- NOTIMPLEMENTED(); --} -- --GLint WebGLRenderingContextWebGPUBase::getFragDataLocation( -- WebGLProgram* program, -- const String& name) { -- NOTIMPLEMENTED(); -- return 0; --} -- --void WebGLRenderingContextWebGPUBase::uniform1ui( -- const WebGLUniformLocation* location, -- GLuint v0) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform2ui( -- const WebGLUniformLocation* location, -- GLuint v0, -- GLuint v1) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform3ui( -- const WebGLUniformLocation* location, -- GLuint v0, -- GLuint v1, -- GLuint v2) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform4ui( -- const WebGLUniformLocation* location, -- GLuint v0, -- GLuint v1, -- GLuint v2, -- GLuint v3) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform1fv( -- const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform2fv( -- const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform3fv( -- const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform4fv( -- const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform1iv( -- const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform2iv( -- const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform3iv( -- const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform4iv( -- const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform1uiv( -- const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform2uiv( -- const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform3uiv( -- const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniform4uiv( -- const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniformMatrix2fv( -- const WebGLUniformLocation* location, -- GLboolean transpose, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniformMatrix3fv( -- const WebGLUniformLocation* location, -- GLboolean transpose, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniformMatrix4fv( -- const WebGLUniformLocation* location, -- GLboolean transpose, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniformMatrix2x3fv( -- const WebGLUniformLocation* location, -- GLboolean transpose, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniformMatrix3x2fv( -- const WebGLUniformLocation* location, -- GLboolean transpose, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniformMatrix2x4fv( -- const WebGLUniformLocation* location, -- GLboolean transpose, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniformMatrix4x2fv( -- const WebGLUniformLocation* location, -- GLboolean transpose, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniformMatrix3x4fv( -- const WebGLUniformLocation* location, -- GLboolean transpose, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::uniformMatrix4x3fv( -- const WebGLUniformLocation* location, -- GLboolean transpose, -- base::span v, -- GLuint src_offset, -- GLuint src_length) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::vertexAttribI4i(GLuint index, -- GLint x, -- GLint y, -- GLint z, -- GLint w) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::vertexAttribI4iv( -- GLuint index, -- base::span v) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::vertexAttribI4ui(GLuint index, -- GLuint x, -- GLuint y, -- GLuint z, -- GLuint w) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::vertexAttribI4uiv( -- GLuint index, -- base::span v) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::vertexAttribIPointer(GLuint index, -- GLint size, -- GLenum type, -- GLsizei stride, -- int64_t offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::vertexAttribDivisor(GLuint index, -- GLuint divisor) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::drawArraysInstanced( -- GLenum mode, -- GLint first, -- GLsizei count, -- GLsizei instance_count) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::drawElementsInstanced( -- GLenum mode, -- GLsizei count, -- GLenum type, -- int64_t offset, -- GLsizei instance_count) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::drawRangeElements(GLenum mode, -- GLuint start, -- GLuint end, -- GLsizei count, -- GLenum type, -- int64_t offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::drawBuffers( -- const Vector& buffers) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::clearBufferiv( -- GLenum buffer, -- GLint drawbuffer, -- base::span value, -- GLuint src_offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::clearBufferuiv( -- GLenum buffer, -- GLint drawbuffer, -- base::span value, -- GLuint src_offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::clearBufferfv( -- GLenum buffer, -- GLint drawbuffer, -- base::span value, -- GLuint src_offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::clearBufferfi(GLenum buffer, -- GLint drawbuffer, -- GLfloat depth, -- GLint stencil) { -- NOTIMPLEMENTED(); --} -- --WebGLQuery* WebGLRenderingContextWebGPUBase::createQuery() { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --void WebGLRenderingContextWebGPUBase::deleteQuery(WebGLQuery* query) { -- NOTIMPLEMENTED(); --} -- --bool WebGLRenderingContextWebGPUBase::isQuery(WebGLQuery* query) { -- NOTIMPLEMENTED(); -- return false; --} -- --void WebGLRenderingContextWebGPUBase::beginQuery(GLenum target, -- WebGLQuery* query) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::endQuery(GLenum target) { -- NOTIMPLEMENTED(); --} -- --ScriptValue WebGLRenderingContextWebGPUBase::getQuery(ScriptState* script_state, -- GLenum target, -- GLenum pname) { -- NOTIMPLEMENTED(); -- return {}; --} -- --ScriptValue WebGLRenderingContextWebGPUBase::getQueryParameter( -- ScriptState* script_state, -- WebGLQuery* query, -- GLenum pname) { -- NOTIMPLEMENTED(); -- return {}; --} -- --WebGLSampler* WebGLRenderingContextWebGPUBase::createSampler() { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --void WebGLRenderingContextWebGPUBase::deleteSampler(WebGLSampler* sampler) { -- NOTIMPLEMENTED(); --} -- --bool WebGLRenderingContextWebGPUBase::isSampler(WebGLSampler* sampler) { -- NOTIMPLEMENTED(); -- return false; --} -- --void WebGLRenderingContextWebGPUBase::bindSampler(GLuint unit, -- WebGLSampler* sampler) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::samplerParameteri(WebGLSampler* sampler, -- GLenum pname, -- GLint param) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::samplerParameterf(WebGLSampler* sampler, -- GLenum pname, -- GLfloat param) { -- NOTIMPLEMENTED(); --} -- --ScriptValue WebGLRenderingContextWebGPUBase::getSamplerParameter( -- ScriptState* script_state, -- WebGLSampler* sampler, -- GLenum pname) { -- NOTIMPLEMENTED(); -- return {}; --} -- --WebGLSync* WebGLRenderingContextWebGPUBase::fenceSync(GLenum condition, -- GLbitfield flags) { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --bool WebGLRenderingContextWebGPUBase::isSync(WebGLSync* sync) { -- NOTIMPLEMENTED(); -- return false; --} -- --void WebGLRenderingContextWebGPUBase::deleteSync(WebGLSync* sync) { -- NOTIMPLEMENTED(); --} -- --GLenum WebGLRenderingContextWebGPUBase::clientWaitSync(WebGLSync* sync, -- GLbitfield flags, -- GLuint64 timeout) { -- NOTIMPLEMENTED(); -- return 0; --} -- --void WebGLRenderingContextWebGPUBase::waitSync(WebGLSync* sync, -- GLbitfield flags, -- GLint64 timeout) { -- NOTIMPLEMENTED(); --} -- --ScriptValue WebGLRenderingContextWebGPUBase::getSyncParameter( -- ScriptState* script_state, -- WebGLSync* sync, -- GLenum pname) { -- NOTIMPLEMENTED(); -- return {}; --} -- --WebGLTransformFeedback* --WebGLRenderingContextWebGPUBase::createTransformFeedback() { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --void WebGLRenderingContextWebGPUBase::deleteTransformFeedback( -- WebGLTransformFeedback* feedback) { -- NOTIMPLEMENTED(); --} -- --bool WebGLRenderingContextWebGPUBase::isTransformFeedback( -- WebGLTransformFeedback* feedback) { -- NOTIMPLEMENTED(); -- return false; --} -- --void WebGLRenderingContextWebGPUBase::bindTransformFeedback( -- GLenum target, -- WebGLTransformFeedback* feedback) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::beginTransformFeedback( -- GLenum primitive_mode) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::endTransformFeedback() { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::transformFeedbackVaryings( -- WebGLProgram* program, -- const Vector& varyings, -- GLenum buffer_mode) { -- NOTIMPLEMENTED(); --} -- --WebGLActiveInfo* WebGLRenderingContextWebGPUBase::getTransformFeedbackVarying( -- WebGLProgram* program, -- GLuint index) { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --void WebGLRenderingContextWebGPUBase::pauseTransformFeedback() { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::resumeTransformFeedback() { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::bindBufferBase(GLenum target, -- GLuint index, -- WebGLBuffer* buffer) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::bindBufferRange(GLenum target, -- GLuint index, -- WebGLBuffer* buffer, -- int64_t offset, -- int64_t size) { -- NOTIMPLEMENTED(); --} -- --ScriptValue WebGLRenderingContextWebGPUBase::getIndexedParameter( -- ScriptState* script_state, -- GLenum target, -- GLuint index) { -- NOTIMPLEMENTED(); -- return {}; --} -- --std::optional> --WebGLRenderingContextWebGPUBase::getUniformIndices( -- WebGLProgram* program, -- const Vector& uniform_names) { -- NOTIMPLEMENTED(); -- return {}; --} -- --ScriptValue WebGLRenderingContextWebGPUBase::getActiveUniforms( -- ScriptState* script_state, -- WebGLProgram* program, -- const Vector& uniform_indices, -- GLenum pname) { -- NOTIMPLEMENTED(); -- return {}; --} -- --GLuint WebGLRenderingContextWebGPUBase::getUniformBlockIndex( -- WebGLProgram* program, -- const String& uniform_block_name) { -- NOTIMPLEMENTED(); -- return 0; --} -- --ScriptValue WebGLRenderingContextWebGPUBase::getActiveUniformBlockParameter( -- ScriptState* script_state, -- WebGLProgram* program, -- GLuint uniform_block_index, -- GLenum pname) { -- NOTIMPLEMENTED(); -- return {}; --} -- --String WebGLRenderingContextWebGPUBase::getActiveUniformBlockName( -- WebGLProgram* program, -- GLuint uniform_block_index) { -- NOTIMPLEMENTED(); -- return {}; --} -- --void WebGLRenderingContextWebGPUBase::uniformBlockBinding( -- WebGLProgram* program, -- GLuint uniform_block_index, -- GLuint uniform_block_binding) { -- NOTIMPLEMENTED(); --} -- --WebGLVertexArrayObject* WebGLRenderingContextWebGPUBase::createVertexArray() { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --void WebGLRenderingContextWebGPUBase::deleteVertexArray( -- WebGLVertexArrayObject* vertex_array) { -- NOTIMPLEMENTED(); --} -- --bool WebGLRenderingContextWebGPUBase::isVertexArray( -- WebGLVertexArrayObject* vertex_array) { -- NOTIMPLEMENTED(); -- return false; --} -- --void WebGLRenderingContextWebGPUBase::bindVertexArray( -- WebGLVertexArrayObject* vertex_array) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::readPixels(GLint x, -- GLint y, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- int64_t offset) { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::readPixels( -- GLint x, -- GLint y, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- MaybeShared pixels, -- int64_t offset) { -- NOTIMPLEMENTED(); --} -- --// ************************************************************************** --// End of WebGL2RenderingContextBase's IDL methods --// ************************************************************************** -- --// **************************************************************************** --// Start of CanvasRenderingContext implementation --// **************************************************************************** --SkAlphaType WebGLRenderingContextWebGPUBase::GetAlphaType() const { -- NOTIMPLEMENTED(); -- return SkAlphaType::kUnknown_SkAlphaType; --} -- --viz::SharedImageFormat WebGLRenderingContextWebGPUBase::GetSharedImageFormat() -- const { -- NOTIMPLEMENTED(); -- return {}; --} -- --gfx::ColorSpace WebGLRenderingContextWebGPUBase::GetColorSpace() const { -- NOTIMPLEMENTED(); -- return {}; --} -- --bool WebGLRenderingContextWebGPUBase::isContextLost() const { -- NOTIMPLEMENTED(); -- return false; --} -- --scoped_refptr WebGLRenderingContextWebGPUBase::GetImage( -- FlushReason) { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --void WebGLRenderingContextWebGPUBase::SetHdrMetadata( -- const gfx::HDRMetadata& hdr_metadata) { -- NOTIMPLEMENTED(); --} -- --bool WebGLRenderingContextWebGPUBase::IsComposited() const { -- NOTIMPLEMENTED(); -- return false; --} -- --bool WebGLRenderingContextWebGPUBase::IsPaintable() const { -- NOTIMPLEMENTED(); -- return false; --} -- --bool WebGLRenderingContextWebGPUBase::UsingSwapChain() const { -- NOTIMPLEMENTED(); -- return false; --} -- --void WebGLRenderingContextWebGPUBase::PageVisibilityChanged() { -- NOTIMPLEMENTED(); --} -- --bool WebGLRenderingContextWebGPUBase::PaintRenderingResultsToCanvas( -- SourceDrawingBuffer) { -- NOTIMPLEMENTED(); -- return false; --} -- --bool WebGLRenderingContextWebGPUBase::CopyRenderingResultsToVideoFrame( -- WebGraphicsContext3DVideoFramePool*, -- SourceDrawingBuffer, -- const gfx::ColorSpace&, -- VideoFrameCopyCompletedCallback) { -- NOTIMPLEMENTED(); -- return false; --} -- --cc::Layer* WebGLRenderingContextWebGPUBase::CcLayer() const { -- NOTIMPLEMENTED(); -- return nullptr; --} -- --void WebGLRenderingContextWebGPUBase::Stop() { -- NOTIMPLEMENTED(); --} -- --void WebGLRenderingContextWebGPUBase::FinalizeFrame(FlushReason) { -- NOTIMPLEMENTED(); --} -- --bool WebGLRenderingContextWebGPUBase::PushFrame() { -- NOTIMPLEMENTED(); -- return false; --} -- --// **************************************************************************** --// End of CanvasRenderingContext implementation --// **************************************************************************** -- --void WebGLRenderingContextWebGPUBase::Trace(Visitor* visitor) const { -- WebGLContextObjectSupport::Trace(visitor); -- CanvasRenderingContext::Trace(visitor); --} --} // namespace blink -diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu_base.h b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu_base.h -deleted file mode 100644 -index 10df703f34e8357a08f3d891e4b7291e247e3adc..0000000000000000000000000000000000000000 ---- a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_webgpu_base.h -+++ /dev/null -@@ -1,1285 +0,0 @@ --// Copyright 2025 The Chromium Authors --// Use of this source code is governed by a BSD-style license that can be --// found in the LICENSE file. -- --#ifndef THIRD_PARTY_BLINK_RENDERER_MODULES_WEBGL_WEBGL_RENDERING_CONTEXT_WEBGPU_BASE_H_ --#define THIRD_PARTY_BLINK_RENDERER_MODULES_WEBGL_WEBGL_RENDERING_CONTEXT_WEBGPU_BASE_H_ -- --#include "third_party/blink/renderer/bindings/core/v8/script_promise_resolver.h" --#include "third_party/blink/renderer/bindings/core/v8/script_value.h" --#include "third_party/blink/renderer/bindings/core/v8/v8_predefined_color_space.h" --#include "third_party/blink/renderer/bindings/modules/v8/v8_webgl_context_attributes.h" --#include "third_party/blink/renderer/core/html/canvas/canvas_rendering_context.h" --#include "third_party/blink/renderer/modules/webgl/webgl_context_object_support.h" --#include "third_party/blink/renderer/platform/bindings/script_wrappable.h" --#include "third_party/blink/renderer/platform/wtf/text/wtf_string.h" -- --namespace blink { -- --class ExceptionState; --class HTMLImageElement; --class HTMLVideoElement; --class ImageBitmap; --class ImageData; --class ScriptState; --class V8PredefinedColorSpace; --class V8UnionHTMLCanvasElementOrOffscreenCanvas; --class VideoFrame; --class WebGLActiveInfo; --class WebGLBuffer; --class WebGLFramebuffer; --class WebGLProgram; --class WebGLQuery; --class WebGLRenderbuffer; --class WebGLSampler; --class WebGLShader; --class WebGLShaderPrecisionFormat; --class WebGLSync; --class WebGLTexture; --class WebGLTransformFeedback; --class WebGLUniformLocation; --class WebGLVertexArrayObject; -- --class MODULES_EXPORT WebGLRenderingContextWebGPUBase -- : public WebGLContextObjectSupport, -- public CanvasRenderingContext { -- public: -- WebGLRenderingContextWebGPUBase( -- CanvasRenderingContextHost* host, -- const CanvasContextCreationAttributesCore& requested_attributes, -- CanvasRenderingAPI api); -- ~WebGLRenderingContextWebGPUBase() override; -- -- WebGLRenderingContextWebGPUBase(const WebGLRenderingContextWebGPUBase&) = -- delete; -- WebGLRenderingContextWebGPUBase& operator=( -- const WebGLRenderingContextWebGPUBase&) = delete; -- -- // ************************************************************************** -- // Start of WebGLRenderingContextBase's IDL methods -- // ************************************************************************** -- V8UnionHTMLCanvasElementOrOffscreenCanvas* getHTMLOrOffscreenCanvas() const; -- -- int drawingBufferWidth() const; -- int drawingBufferHeight() const; -- GLenum drawingBufferFormat() const; -- V8PredefinedColorSpace drawingBufferColorSpace() const; -- void setDrawingBufferColorSpace(const V8PredefinedColorSpace& color_space, -- ExceptionState&); -- V8PredefinedColorSpace unpackColorSpace() const; -- void setUnpackColorSpace(const V8PredefinedColorSpace& color_space, -- ExceptionState&); -- -- void activeTexture(GLenum texture); -- void attachShader(WebGLProgram*, WebGLShader*); -- -- void bindAttribLocation(WebGLProgram*, GLuint index, const String& name); -- void bindBuffer(GLenum target, WebGLBuffer* buffer); -- void bindFramebuffer(GLenum target, WebGLFramebuffer*); -- void bindRenderbuffer(GLenum target, WebGLRenderbuffer*); -- void bindTexture(GLenum target, WebGLTexture*); -- void blendColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); -- void blendEquation(GLenum mode); -- void blendEquationSeparate(GLenum mode_rgb, GLenum mode_alpha); -- void blendFunc(GLenum sfactor, GLenum dfactor); -- void blendFuncSeparate(GLenum src_rgb, -- GLenum dst_rgb, -- GLenum src_alpha, -- GLenum dst_alpha); -- -- void bufferData(GLenum target, int64_t size, GLenum usage); -- void bufferData(GLenum target, DOMArrayBufferBase* data, GLenum usage); -- void bufferData(GLenum target, -- MaybeShared data, -- GLenum usage); -- void bufferSubData(GLenum target, -- int64_t offset, -- base::span data); -- -- GLenum checkFramebufferStatus(GLenum target); -- void clear(GLbitfield mask); -- void clearColor(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); -- void clearDepth(GLfloat); -- void clearStencil(GLint); -- void colorMask(GLboolean red, -- GLboolean green, -- GLboolean blue, -- GLboolean alpha); -- void compileShader(WebGLShader*); -- -- void compressedTexImage2D(GLenum target, -- GLint level, -- GLenum internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- MaybeShared data); -- void compressedTexSubImage2D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- MaybeShared data); -- void copyTexImage2D(GLenum target, -- GLint level, -- GLenum internalformat, -- GLint x, -- GLint y, -- GLsizei width, -- GLsizei height, -- GLint border); -- void copyTexSubImage2D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint x, -- GLint y, -- GLsizei width, -- GLsizei height); -- -- WebGLBuffer* createBuffer(); -- WebGLFramebuffer* createFramebuffer(); -- WebGLProgram* createProgram(); -- WebGLRenderbuffer* createRenderbuffer(); -- WebGLShader* createShader(GLenum type); -- WebGLTexture* createTexture(); -- -- void cullFace(GLenum mode); -- -- void deleteBuffer(WebGLBuffer*); -- void deleteFramebuffer(WebGLFramebuffer*); -- void deleteProgram(WebGLProgram*); -- void deleteRenderbuffer(WebGLRenderbuffer*); -- void deleteShader(WebGLShader*); -- void deleteTexture(WebGLTexture*); -- -- void depthFunc(GLenum); -- void depthMask(GLboolean); -- void depthRange(GLfloat z_near, GLfloat z_far); -- void detachShader(WebGLProgram*, WebGLShader*); -- void disable(GLenum cap); -- void disableVertexAttribArray(GLuint index); -- void drawArrays(GLenum mode, GLint first, GLsizei count); -- void drawElements(GLenum mode, GLsizei count, GLenum type, int64_t offset); -- -- void enable(GLenum cap); -- void enableVertexAttribArray(GLuint index); -- void finish(); -- void flush(); -- void framebufferRenderbuffer(GLenum target, -- GLenum attachment, -- GLenum renderbuffertarget, -- WebGLRenderbuffer*); -- void framebufferTexture2D(GLenum target, -- GLenum attachment, -- GLenum textarget, -- WebGLTexture*, -- GLint level); -- void frontFace(GLenum mode); -- void generateMipmap(GLenum target); -- -- WebGLActiveInfo* getActiveAttrib(WebGLProgram*, GLuint index); -- WebGLActiveInfo* getActiveUniform(WebGLProgram*, GLuint index); -- std::optional>> getAttachedShaders( -- WebGLProgram*); -- GLint getAttribLocation(WebGLProgram*, const String& name); -- ScriptValue getBufferParameter(ScriptState*, GLenum target, GLenum pname); -- WebGLContextAttributes* getContextAttributes() const; -- GLenum getError(); -- ScriptObject getExtension(ScriptState*, const String& name); -- ScriptValue getFramebufferAttachmentParameter(ScriptState*, -- GLenum target, -- GLenum attachment, -- GLenum pname); -- ScriptValue getParameter(ScriptState*, GLenum pname); -- ScriptValue getProgramParameter(ScriptState*, WebGLProgram*, GLenum pname); -- String getProgramInfoLog(WebGLProgram*); -- ScriptValue getRenderbufferParameter(ScriptState*, -- GLenum target, -- GLenum pname); -- ScriptValue getShaderParameter(ScriptState*, WebGLShader*, GLenum pname); -- String getShaderInfoLog(WebGLShader*); -- WebGLShaderPrecisionFormat* getShaderPrecisionFormat(GLenum shader_type, -- GLenum precision_type); -- String getShaderSource(WebGLShader*); -- std::optional> getSupportedExtensions(); -- ScriptValue getTexParameter(ScriptState*, GLenum target, GLenum pname); -- ScriptValue getUniform(ScriptState*, -- WebGLProgram*, -- const WebGLUniformLocation*); -- WebGLUniformLocation* getUniformLocation(WebGLProgram*, const String&); -- ScriptValue getVertexAttrib(ScriptState*, GLuint index, GLenum pname); -- int64_t getVertexAttribOffset(GLuint index, GLenum pname); -- -- void hint(GLenum target, GLenum mode); -- bool isBuffer(WebGLBuffer*); -- bool isEnabled(GLenum cap); -- bool isFramebuffer(WebGLFramebuffer*); -- bool isProgram(WebGLProgram*); -- bool isRenderbuffer(WebGLRenderbuffer*); -- bool isShader(WebGLShader*); -- bool isTexture(WebGLTexture*); -- -- void lineWidth(GLfloat); -- void linkProgram(WebGLProgram*); -- void pixelStorei(GLenum pname, GLint param); -- void polygonOffset(GLfloat factor, GLfloat units); -- -- void readPixels(GLint x, -- GLint y, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- MaybeShared pixels); -- -- void renderbufferStorage(GLenum target, -- GLenum internalformat, -- GLsizei width, -- GLsizei height); -- -- void sampleCoverage(GLfloat value, GLboolean invert); -- void scissor(GLint x, GLint y, GLsizei width, GLsizei height); -- void shaderSource(WebGLShader*, const String&); -- void stencilFunc(GLenum func, GLint ref, GLuint mask); -- void stencilFuncSeparate(GLenum face, GLenum func, GLint ref, GLuint mask); -- void stencilMask(GLuint); -- void stencilMaskSeparate(GLenum face, GLuint mask); -- void stencilOp(GLenum fail, GLenum zfail, GLenum zpass); -- void stencilOpSeparate(GLenum face, GLenum fail, GLenum zfail, GLenum zpass); -- -- void texParameterf(GLenum target, GLenum pname, GLfloat param); -- void texParameteri(GLenum target, GLenum pname, GLint param); -- -- void texImage2D(GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLenum format, -- GLenum type, -- MaybeShared); -- void texImage2D(GLenum target, -- GLint level, -- GLint internalformat, -- GLenum format, -- GLenum type, -- ImageData*); -- void texImage2D(ScriptState*, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLenum format, -- GLenum type, -- HTMLImageElement*, -- ExceptionState&); -- void texImage2D(ScriptState*, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLenum format, -- GLenum type, -- CanvasRenderingContextHost*, -- ExceptionState&); -- void texImage2D(ScriptState*, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLenum format, -- GLenum type, -- HTMLVideoElement*, -- ExceptionState&); -- void texImage2D(ScriptState*, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLenum format, -- GLenum type, -- VideoFrame*, -- ExceptionState&); -- void texImage2D(GLenum target, -- GLint level, -- GLint internalformat, -- GLenum format, -- GLenum type, -- ImageBitmap*, -- ExceptionState&); -- -- void texSubImage2D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- MaybeShared); -- void texSubImage2D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLenum format, -- GLenum type, -- ImageData*); -- void texSubImage2D(ScriptState*, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLenum format, -- GLenum type, -- HTMLImageElement*, -- ExceptionState&); -- void texSubImage2D(ScriptState*, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLenum format, -- GLenum type, -- CanvasRenderingContextHost*, -- ExceptionState&); -- void texSubImage2D(ScriptState*, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLenum format, -- GLenum type, -- HTMLVideoElement*, -- ExceptionState&); -- void texSubImage2D(ScriptState*, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLenum format, -- GLenum type, -- VideoFrame*, -- ExceptionState&); -- void texSubImage2D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLenum format, -- GLenum type, -- ImageBitmap*, -- ExceptionState&); -- -- void uniform1f(const WebGLUniformLocation*, GLfloat x); -- void uniform1fv(const WebGLUniformLocation*, base::span); -- void uniform1i(const WebGLUniformLocation*, GLint x); -- void uniform1iv(const WebGLUniformLocation*, base::span); -- void uniform2f(const WebGLUniformLocation*, GLfloat x, GLfloat y); -- void uniform2fv(const WebGLUniformLocation*, base::span); -- void uniform2i(const WebGLUniformLocation*, GLint x, GLint y); -- void uniform2iv(const WebGLUniformLocation*, base::span); -- void uniform3f(const WebGLUniformLocation*, GLfloat x, GLfloat y, GLfloat z); -- void uniform3fv(const WebGLUniformLocation*, base::span); -- void uniform3i(const WebGLUniformLocation*, GLint x, GLint y, GLint z); -- void uniform3iv(const WebGLUniformLocation*, base::span); -- void uniform4f(const WebGLUniformLocation*, -- GLfloat x, -- GLfloat y, -- GLfloat z, -- GLfloat w); -- void uniform4fv(const WebGLUniformLocation*, base::span); -- void uniform4i(const WebGLUniformLocation*, -- GLint x, -- GLint y, -- GLint z, -- GLint w); -- void uniform4iv(const WebGLUniformLocation*, base::span); -- -- void uniformMatrix2fv(const WebGLUniformLocation*, -- GLboolean transpose, -- base::span value); -- void uniformMatrix3fv(const WebGLUniformLocation*, -- GLboolean transpose, -- base::span value); -- void uniformMatrix4fv(const WebGLUniformLocation*, -- GLboolean transpose, -- base::span value); -- -- void useProgram(WebGLProgram*); -- void validateProgram(WebGLProgram*); -- -- void vertexAttrib1f(GLuint index, GLfloat x); -- void vertexAttrib1fv(GLuint index, base::span values); -- void vertexAttrib2f(GLuint index, GLfloat x, GLfloat y); -- void vertexAttrib2fv(GLuint index, base::span values); -- void vertexAttrib3f(GLuint index, GLfloat x, GLfloat y, GLfloat z); -- void vertexAttrib3fv(GLuint index, base::span values); -- void vertexAttrib4f(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -- void vertexAttrib4fv(GLuint index, base::span values); -- void vertexAttribPointer(GLuint index, -- GLint size, -- GLenum type, -- GLboolean normalized, -- GLsizei stride, -- int64_t offset); -- -- void viewport(GLint x, GLint y, GLsizei width, GLsizei height); -- -- void drawingBufferStorage(GLenum sizedformat, GLsizei width, GLsizei height); -- -- void commit(); -- -- ScriptPromise makeXRCompatible(ScriptState*, ExceptionState&); -- // ************************************************************************** -- // End of WebGLRenderingContextBase's IDL methods -- // ************************************************************************** -- -- // ************************************************************************** -- // Start of WebGL2RenderingContextBase's IDL methods -- // ************************************************************************** -- -- /* Buffer objects */ -- void bufferData(GLenum target, -- MaybeShared srcData, -- GLenum usage, -- int64_t srcOffset, -- GLuint length); -- void bufferSubData(GLenum target, -- int64_t offset, -- MaybeShared srcData, -- int64_t srcOffset, -- GLuint length); -- void copyBufferSubData(GLenum readTarget, -- GLenum writeTarget, -- int64_t readOffset, -- int64_t writeOffset, -- int64_t size); -- void getBufferSubData(GLenum target, -- int64_t srcByteOffset, -- MaybeShared dstData, -- int64_t dstOffset, -- GLuint length); -- -- /* Framebuffer objects */ -- void blitFramebuffer(GLint src_x0, -- GLint src_y0, -- GLint src_x1, -- GLint src_y1, -- GLint dst_x0, -- GLint dst_y0, -- GLint dst_x1, -- GLint dst_y1, -- GLbitfield mask, -- GLenum filter); -- void framebufferTextureLayer(GLenum target, -- GLenum attachment, -- WebGLTexture* texture, -- GLint level, -- GLint layer); -- ScriptValue getInternalformatParameter(ScriptState* script_state, -- GLenum target, -- GLenum internalformat, -- GLenum pname); -- void invalidateFramebuffer(GLenum target, const Vector& attachments); -- void invalidateSubFramebuffer(GLenum target, -- const Vector& attachments, -- GLint x, -- GLint y, -- GLsizei width, -- GLsizei height); -- void readBuffer(GLenum mode); -- -- /* Renderbuffer objects */ -- void renderbufferStorageMultisample(GLenum target, -- GLsizei samples, -- GLenum internalformat, -- GLsizei width, -- GLsizei height); -- -- /* Texture objects */ -- void texImage2D(GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLenum format, -- GLenum type, -- int64_t offset); -- void texImage2D(GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLenum format, -- GLenum type, -- ImageData* pixels); -- void texImage2D(ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLenum format, -- GLenum type, -- HTMLImageElement* image, -- ExceptionState& exception_state); -- // Handles both OffscreenCanvas and HTMLCanvasElement -- void texImage2D(ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLenum format, -- GLenum type, -- CanvasRenderingContextHost* canvas, -- ExceptionState& exception_state); -- void texImage2D(ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLenum format, -- GLenum type, -- HTMLVideoElement* video, -- ExceptionState& exception_state); -- void texImage2D(ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLenum format, -- GLenum type, -- VideoFrame* frame, -- ExceptionState& exception_state); -- void texImage2D(GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLenum format, -- GLenum type, -- ImageBitmap* bitmap, -- ExceptionState& exception_state); -- void texImage2D(GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLenum format, -- GLenum type, -- MaybeShared data, -- int64_t src_offset); -- -- void texElement2D(ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLenum format, -- GLenum type, -- Element* element, -- ExceptionState& exception_state); -- -- void texSubImage2D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- int64_t offset); -- void texSubImage2D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- ImageData* pixels); -- void texSubImage2D(ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- HTMLImageElement* image, -- ExceptionState& exception_state); -- // Handles both OffscreenCanvas and HTMLCanvasElement -- void texSubImage2D(ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- CanvasRenderingContextHost* canvas, -- ExceptionState& exception_state); -- void texSubImage2D(ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- HTMLVideoElement* video, -- ExceptionState& exception_state); -- void texSubImage2D(ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- VideoFrame* frame, -- ExceptionState& exception_state); -- void texSubImage2D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- ImageBitmap* bitmap, -- ExceptionState& exception_state); -- void texSubImage2D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- MaybeShared pixels, -- int64_t src_offset); -- -- void texStorage2D(GLenum target, -- GLsizei levels, -- GLenum internalformat, -- GLsizei width, -- GLsizei height); -- void texStorage3D(GLenum target, -- GLsizei levels, -- GLenum internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth); -- void texImage3D(GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLenum format, -- GLenum type, -- int64_t offset); -- void texImage3D(GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLenum format, -- GLenum type, -- ImageData* pixels); -- void texImage3D(ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLenum format, -- GLenum type, -- HTMLImageElement* image, -- ExceptionState& exception_state); -- // Handles both OffscreenCanvas and HTMLCanvasElement -- void texImage3D(ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLenum format, -- GLenum type, -- CanvasRenderingContextHost* canvas, -- ExceptionState& exception_state); -- void texImage3D(ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLenum format, -- GLenum type, -- HTMLVideoElement* video, -- ExceptionState& exception_state); -- void texImage3D(ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLenum format, -- GLenum type, -- VideoFrame* frame, -- ExceptionState& exception_state); -- void texImage3D(GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLenum format, -- GLenum type, -- ImageBitmap* bitmap, -- ExceptionState& exception_state); -- void texImage3D(GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLenum format, -- GLenum type, -- MaybeShared pixels); -- void texImage3D(GLenum target, -- GLint level, -- GLint internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLenum format, -- GLenum type, -- MaybeShared pixels, -- GLuint src_offset); -- void texSubImage3D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLenum type, -- int64_t offset); -- void texSubImage3D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLenum type, -- ImageData* pixels); -- void texSubImage3D(ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLenum type, -- HTMLImageElement* image, -- ExceptionState& exception_state); -- // Handles both OffscreenCanvas and HTMLCanvasElement -- void texSubImage3D(ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLenum type, -- CanvasRenderingContextHost* context_host, -- ExceptionState& exception_state); -- void texSubImage3D(ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLenum type, -- HTMLVideoElement* video, -- ExceptionState& exception_state); -- void texSubImage3D(ScriptState* script_state, -- GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLenum type, -- VideoFrame* frame, -- ExceptionState& exception_state); -- void texSubImage3D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLenum type, -- ImageBitmap* bitmap, -- ExceptionState& exception_state); -- void texSubImage3D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLenum type, -- MaybeShared pixels); -- void texSubImage3D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLenum type, -- MaybeShared pixels, -- GLuint src_offset); -- -- void copyTexSubImage3D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLint x, -- GLint y, -- GLsizei width, -- GLsizei height); -- -- void compressedTexImage2D(GLenum target, -- GLint level, -- GLenum internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- MaybeShared data, -- GLuint src_offset, -- GLuint src_length_override); -- void compressedTexSubImage2D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- MaybeShared data, -- GLuint src_offset, -- GLuint src_length_override); -- void compressedTexImage3D(GLenum target, -- GLint level, -- GLenum internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- MaybeShared data, -- GLuint src_offset, -- GLuint src_length_override); -- void compressedTexSubImage3D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- MaybeShared data, -- GLuint src_offset, -- GLuint src_length_override); -- void compressedTexImage2D(GLenum target, -- GLint level, -- GLenum internalformat, -- GLsizei width, -- GLsizei height, -- GLint border, -- GLsizei image_size, -- int64_t offset); -- void compressedTexSubImage2D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLsizei image_size, -- int64_t offset); -- void compressedTexImage3D(GLenum target, -- GLint level, -- GLenum internalformat, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLint border, -- GLsizei image_size, -- int64_t offset); -- void compressedTexSubImage3D(GLenum target, -- GLint level, -- GLint xoffset, -- GLint yoffset, -- GLint zoffset, -- GLsizei width, -- GLsizei height, -- GLsizei depth, -- GLenum format, -- GLsizei image_size, -- int64_t offset); -- -- /* Programs and shaders */ -- GLint getFragDataLocation(WebGLProgram* program, const String& name); -- -- /* Uniforms and attributes */ -- void uniform1ui(const WebGLUniformLocation* location, GLuint v0); -- void uniform2ui(const WebGLUniformLocation* location, GLuint v0, GLuint v1); -- void uniform3ui(const WebGLUniformLocation* location, -- GLuint v0, -- GLuint v1, -- GLuint v2); -- void uniform4ui(const WebGLUniformLocation* location, -- GLuint v0, -- GLuint v1, -- GLuint v2, -- GLuint v3); -- void uniform1fv(const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniform2fv(const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniform3fv(const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniform4fv(const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniform1iv(const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniform2iv(const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniform3iv(const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniform4iv(const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniform1uiv(const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniform2uiv(const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniform3uiv(const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniform4uiv(const WebGLUniformLocation* location, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniformMatrix2fv(const WebGLUniformLocation* location, -- GLboolean transpose, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniformMatrix3fv(const WebGLUniformLocation* location, -- GLboolean transpose, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniformMatrix4fv(const WebGLUniformLocation* location, -- GLboolean transpose, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniformMatrix2x3fv(const WebGLUniformLocation* location, -- GLboolean transpose, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniformMatrix3x2fv(const WebGLUniformLocation* location, -- GLboolean transpose, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniformMatrix2x4fv(const WebGLUniformLocation* location, -- GLboolean transpose, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniformMatrix4x2fv(const WebGLUniformLocation* location, -- GLboolean transpose, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniformMatrix3x4fv(const WebGLUniformLocation* location, -- GLboolean transpose, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- void uniformMatrix4x3fv(const WebGLUniformLocation* location, -- GLboolean transpose, -- base::span v, -- GLuint src_offset, -- GLuint src_length); -- -- void vertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w); -- void vertexAttribI4iv(GLuint index, base::span v); -- void vertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); -- void vertexAttribI4uiv(GLuint index, base::span v); -- void vertexAttribIPointer(GLuint index, -- GLint size, -- GLenum type, -- GLsizei stride, -- int64_t offset); -- -- /* Writing to the drawing buffer */ -- void vertexAttribDivisor(GLuint index, GLuint divisor); -- void drawArraysInstanced(GLenum mode, -- GLint first, -- GLsizei count, -- GLsizei instance_count); -- void drawElementsInstanced(GLenum mode, -- GLsizei count, -- GLenum type, -- int64_t offset, -- GLsizei instance_count); -- void drawRangeElements(GLenum mode, -- GLuint start, -- GLuint end, -- GLsizei count, -- GLenum type, -- int64_t offset); -- -- /* Multiple Render Targets */ -- void drawBuffers(const Vector& buffers); -- void clearBufferiv(GLenum buffer, -- GLint drawbuffer, -- base::span value, -- GLuint src_offset); -- void clearBufferuiv(GLenum buffer, -- GLint drawbuffer, -- base::span value, -- GLuint src_offset); -- void clearBufferfv(GLenum buffer, -- GLint drawbuffer, -- base::span value, -- GLuint src_offset); -- void clearBufferfi(GLenum buffer, -- GLint drawbuffer, -- GLfloat depth, -- GLint stencil); -- -- /* Query Objects */ -- WebGLQuery* createQuery(); -- void deleteQuery(WebGLQuery* query); -- bool isQuery(WebGLQuery* query); -- void beginQuery(GLenum target, WebGLQuery* query); -- void endQuery(GLenum target); -- ScriptValue getQuery(ScriptState* script_state, GLenum target, GLenum pname); -- ScriptValue getQueryParameter(ScriptState* script_state, -- WebGLQuery* query, -- GLenum pname); -- -- /* Sampler Objects */ -- WebGLSampler* createSampler(); -- void deleteSampler(WebGLSampler* sampler); -- bool isSampler(WebGLSampler* sampler); -- void bindSampler(GLuint unit, WebGLSampler* sampler); -- void samplerParameteri(WebGLSampler* sampler, GLenum pname, GLint param); -- void samplerParameterf(WebGLSampler* sampler, GLenum pname, GLfloat param); -- ScriptValue getSamplerParameter(ScriptState* script_state, -- WebGLSampler* sampler, -- GLenum pname); -- -- /* Sync objects */ -- WebGLSync* fenceSync(GLenum condition, GLbitfield flags); -- bool isSync(WebGLSync* sync); -- void deleteSync(WebGLSync* sync); -- GLenum clientWaitSync(WebGLSync* sync, GLbitfield flags, GLuint64 timeout); -- void waitSync(WebGLSync* sync, GLbitfield flags, GLint64 timeout); -- -- ScriptValue getSyncParameter(ScriptState* script_state, -- WebGLSync* sync, -- GLenum pname); -- -- /* Transform Feedback */ -- WebGLTransformFeedback* createTransformFeedback(); -- void deleteTransformFeedback(WebGLTransformFeedback* feedback); -- bool isTransformFeedback(WebGLTransformFeedback* feedback); -- void bindTransformFeedback(GLenum target, WebGLTransformFeedback* feedback); -- void beginTransformFeedback(GLenum primitive_mode); -- void endTransformFeedback(); -- void transformFeedbackVaryings(WebGLProgram* program, -- const Vector& varyings, -- GLenum buffer_mode); -- WebGLActiveInfo* getTransformFeedbackVarying(WebGLProgram* program, -- GLuint index); -- void pauseTransformFeedback(); -- void resumeTransformFeedback(); -- -- /* Uniform Buffer Objects and Transform Feedback Buffers */ -- void bindBufferBase(GLenum target, GLuint index, WebGLBuffer* buffer); -- void bindBufferRange(GLenum target, -- GLuint index, -- WebGLBuffer* buffer, -- int64_t offset, -- int64_t size); -- ScriptValue getIndexedParameter(ScriptState* script_state, -- GLenum target, -- GLuint index); -- std::optional> getUniformIndices( -- WebGLProgram* program, -- const Vector& uniform_names); -- ScriptValue getActiveUniforms(ScriptState* script_state, -- WebGLProgram* program, -- const Vector& uniform_indices, -- GLenum pname); -- GLuint getUniformBlockIndex(WebGLProgram* program, -- const String& uniform_block_name); -- ScriptValue getActiveUniformBlockParameter(ScriptState* script_state, -- WebGLProgram* program, -- GLuint uniform_block_index, -- GLenum pname); -- String getActiveUniformBlockName(WebGLProgram* program, -- GLuint uniform_block_index); -- void uniformBlockBinding(WebGLProgram* program, -- GLuint uniform_block_index, -- GLuint uniform_block_binding); -- -- /* Vertex Array Objects */ -- WebGLVertexArrayObject* createVertexArray(); -- void deleteVertexArray(WebGLVertexArrayObject* vertex_array); -- bool isVertexArray(WebGLVertexArrayObject* vertex_array); -- void bindVertexArray(WebGLVertexArrayObject* vertex_array); -- -- /* Reading */ -- void readPixels(GLint x, -- GLint y, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- int64_t offset); -- void readPixels(GLint x, -- GLint y, -- GLsizei width, -- GLsizei height, -- GLenum format, -- GLenum type, -- MaybeShared pixels, -- int64_t offset); -- -- // ************************************************************************** -- // End of WebGL2RenderingContextBase's IDL methods -- // ************************************************************************** -- -- // ************************************************************************** -- // Start of CanvasRenderingContext implementation -- // ************************************************************************** -- SkAlphaType GetAlphaType() const override; -- viz::SharedImageFormat GetSharedImageFormat() const override; -- gfx::ColorSpace GetColorSpace() const override; -- bool isContextLost() const override; -- scoped_refptr GetImage(FlushReason) override; -- void SetHdrMetadata(const gfx::HDRMetadata& hdr_metadata) override; -- -- bool IsComposited() const override; -- bool IsPaintable() const override; -- bool UsingSwapChain() const override; -- void PageVisibilityChanged() override; -- bool PaintRenderingResultsToCanvas(SourceDrawingBuffer) override; -- bool CopyRenderingResultsToVideoFrame( -- WebGraphicsContext3DVideoFramePool*, -- SourceDrawingBuffer, -- const gfx::ColorSpace&, -- VideoFrameCopyCompletedCallback) override; -- -- cc::Layer* CcLayer() const override; -- void Stop() override; -- void FinalizeFrame(FlushReason) override; -- bool PushFrame() override; -- -- // ************************************************************************** -- // End of CanvasRenderingContext implementation -- // ************************************************************************** -- -- void Trace(Visitor*) const override; -- -- private: --}; -- --} // namespace blink -- --#endif // THIRD_PARTY_BLINK_RENDERER_MODULES_WEBGL_WEBGL_RENDERING_CONTEXT_WEBGPU_BASE_H_ diff --git a/patches/chromium/support_mixed_sandbox_with_zygote.patch b/patches/chromium/support_mixed_sandbox_with_zygote.patch index 27d086b643d5..23ae72364078 100644 --- a/patches/chromium/support_mixed_sandbox_with_zygote.patch +++ b/patches/chromium/support_mixed_sandbox_with_zygote.patch @@ -22,10 +22,10 @@ However, the patch would need to be reviewed by the security team, as it does touch a security-sensitive class. diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc -index c97471d75ab2d11cfe71f34d8d11b27edb5c0fce..44a8635ba28722b30e34695c130f7b271978391a 100644 +index 524191a9a4973c55dc527841f3ea1238877919ac..48d3325f5f20e20b73d248e27bb5dd06cc30302d 100644 --- a/content/browser/renderer_host/render_process_host_impl.cc +++ b/content/browser/renderer_host/render_process_host_impl.cc -@@ -1833,6 +1833,10 @@ bool RenderProcessHostImpl::Init() { +@@ -1844,6 +1844,10 @@ bool RenderProcessHostImpl::Init() { std::unique_ptr sandbox_delegate = std::make_unique( *cmd_line, IsPdf(), IsJitDisabled()); diff --git a/patches/chromium/web_contents.patch b/patches/chromium/web_contents.patch index a388d8779012..c5101982d3ff 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 bbbc07e36e6de11169f8317c64558b8c4d1699d5..0cf259360950a7063c4f9d6dc71b004706330f37 100644 +index 4bb69438947fff73a6905a1ecc1b711986a89124..e745a26a4e877ace994be80c2134147500205d0b 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -4094,6 +4094,13 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, +@@ -4103,6 +4103,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 bbbc07e36e6de11169f8317c64558b8c4d1699d5..0cf259360950a7063c4f9d6dc71b0047 std::unique_ptr delegate = GetContentClient()->browser()->GetWebContentsViewDelegate(this); -@@ -4104,6 +4111,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, +@@ -4113,6 +4120,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, view_ = CreateWebContentsView(this, std::move(delegate), &render_view_host_delegate_view_); } @@ -35,10 +35,10 @@ index bbbc07e36e6de11169f8317c64558b8c4d1699d5..0cf259360950a7063c4f9d6dc71b0047 CHECK(view_.get()); diff --git a/content/public/browser/web_contents.h b/content/public/browser/web_contents.h -index 37061d761f18ea143a8095393c42c4cf5c9eca0e..e70f25a52dbe66bf1a9bbbcb6bf56f072b23eb34 100644 +index ab2df2fac23584574ca75a30084b3a47c626a1a1..754d083e1c8500092e60f484e4e9d97679704431 100644 --- a/content/public/browser/web_contents.h +++ b/content/public/browser/web_contents.h -@@ -121,10 +121,13 @@ class BrowserPluginGuestDelegate; +@@ -121,11 +121,14 @@ class BrowserPluginGuestDelegate; class GuestPageHolder; class RenderFrameHost; class RenderViewHost; @@ -47,12 +47,13 @@ index 37061d761f18ea143a8095393c42c4cf5c9eca0e..e70f25a52dbe66bf1a9bbbcb6bf56f07 +class RenderWidgetHostViewBase; class ScreenOrientationDelegate; class SiteInstance; + class UnownedInnerWebContentsClient; class WebContentsDelegate; +class WebContentsView; class WebUI; struct DropData; struct MHTMLGenerationParams; -@@ -278,6 +281,10 @@ class WebContents : public PageNavigator, public base::SupportsUserData { +@@ -279,6 +282,10 @@ class WebContents : public PageNavigator, public base::SupportsUserData { network::mojom::WebSandboxFlags starting_sandbox_flags = network::mojom::WebSandboxFlags::kNone; diff --git a/patches/chromium/webview_fullscreen.patch b/patches/chromium/webview_fullscreen.patch index 6b2997ef9515..c0b5efc77afb 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 be73611db5328c76982ecca3caf5eccc30aac45e..0c4d801b3705fb609a40b8c58d2ee7f9b690461f 100644 +index d8698f9f37eefa50bf4e29a164b2cc302c32ecdf..3a8dc82b882aa00e9a5430bc8b7ba40985e17ff1 100644 --- a/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc -@@ -8824,6 +8824,17 @@ void RenderFrameHostImpl::EnterFullscreen( +@@ -8831,6 +8831,17 @@ void RenderFrameHostImpl::EnterFullscreen( } } @@ -37,10 +37,10 @@ index be73611db5328c76982ecca3caf5eccc30aac45e..0c4d801b3705fb609a40b8c58d2ee7f9 if (had_fullscreen_token && !GetView()->HasFocus()) GetView()->Focus(); diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc -index 0cf259360950a7063c4f9d6dc71b004706330f37..97df851aa73d1bf8d8c8001646b63cbb43cd9a92 100644 +index e745a26a4e877ace994be80c2134147500205d0b..eefecd6b3b9c940c3ae3e9ef40075c4a109878ef 100644 --- a/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc -@@ -4384,21 +4384,25 @@ KeyboardEventProcessingResult WebContentsImpl::PreHandleKeyboardEvent( +@@ -4393,21 +4393,25 @@ KeyboardEventProcessingResult WebContentsImpl::PreHandleKeyboardEvent( const input::NativeWebKeyboardEvent& event) { OPTIONAL_TRACE_EVENT0(TRACE_DISABLED_BY_DEFAULT("content.verbose"), "WebContentsImpl::PreHandleKeyboardEvent"); @@ -78,7 +78,7 @@ index 0cf259360950a7063c4f9d6dc71b004706330f37..97df851aa73d1bf8d8c8001646b63cbb } bool WebContentsImpl::HandleMouseEvent(const blink::WebMouseEvent& event) { -@@ -4557,7 +4561,7 @@ void WebContentsImpl::EnterFullscreenMode( +@@ -4566,7 +4570,7 @@ void WebContentsImpl::EnterFullscreenMode( OPTIONAL_TRACE_EVENT0("content", "WebContentsImpl::EnterFullscreenMode"); DCHECK(CanEnterFullscreenMode(requesting_frame)); DCHECK(requesting_frame->IsActive()); diff --git a/patches/chromium/worker_context_will_destroy.patch b/patches/chromium/worker_context_will_destroy.patch index 1e7ac8573892..1a9be8a261b2 100644 --- a/patches/chromium/worker_context_will_destroy.patch +++ b/patches/chromium/worker_context_will_destroy.patch @@ -67,10 +67,10 @@ index 54e25fb12f680eb4bbe0d51f162e227610065345..3648f1be362dc4c13071e73fed478454 const WebSecurityOrigin& script_origin) { return false; diff --git a/third_party/blink/renderer/core/workers/worker_thread.cc b/third_party/blink/renderer/core/workers/worker_thread.cc -index e4d70bc0f577809cf6b9876044fe78192a098ec6..7d13d80a7f09e47d9f3c6da860e8d3373d5b8afd 100644 +index ce448895f52bcd17c093ff12b9eb4e1703882278..1c1858ce54f2c27666b3aed92fcb545a13e7bf2b 100644 --- a/third_party/blink/renderer/core/workers/worker_thread.cc +++ b/third_party/blink/renderer/core/workers/worker_thread.cc -@@ -748,6 +748,12 @@ void WorkerThread::PrepareForShutdownOnWorkerThread() { +@@ -821,6 +821,12 @@ void WorkerThread::PrepareForShutdownOnWorkerThread() { } pause_handle_.reset(); diff --git a/patches/devtools_frontend/chore_expose_ui_to_allow_electron_to_set_dock_side.patch b/patches/devtools_frontend/chore_expose_ui_to_allow_electron_to_set_dock_side.patch index d291daafbaee..1d579670210d 100644 --- a/patches/devtools_frontend/chore_expose_ui_to_allow_electron_to_set_dock_side.patch +++ b/patches/devtools_frontend/chore_expose_ui_to_allow_electron_to_set_dock_side.patch @@ -10,7 +10,7 @@ to handle this without patching, but this is fairly clean for now and no longer patching legacy devtools code. diff --git a/front_end/entrypoints/main/MainImpl.ts b/front_end/entrypoints/main/MainImpl.ts -index 2be25257dfc26d280733f6b55fa13da5e316ba3c..263bfe5be5becb18c73b0fc27ab1a41d455a5508 100644 +index e4ac33c985627cc80be3262c335535ecd42f1c67..8a4c8cbcfbf23ff5a56fdcf9e582efb6291d6ef5 100644 --- a/front_end/entrypoints/main/MainImpl.ts +++ b/front_end/entrypoints/main/MainImpl.ts @@ -721,6 +721,8 @@ export class MainImpl { diff --git a/patches/v8/.patches b/patches/v8/.patches index 21da17ba0f4b..dc98544242e8 100644 --- a/patches/v8/.patches +++ b/patches/v8/.patches @@ -1,3 +1 @@ chore_allow_customizing_microtask_policy_per_context.patch -cherry-pick-7bc0a67ebfbf.patch -cherry-pick-45eb42cd398e.patch diff --git a/patches/v8/cherry-pick-45eb42cd398e.patch b/patches/v8/cherry-pick-45eb42cd398e.patch deleted file mode 100644 index c1fa3426717e..000000000000 --- a/patches/v8/cherry-pick-45eb42cd398e.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Igor Sheludko -Date: Tue, 27 May 2025 21:34:45 +0200 -Subject: Convert Smi to Word64 using zero extension - -... when a known type range contains only positive values. - -Bug: 420637585 -Change-Id: I8d9bb3f2fe2e5268e1659bb4ea7bbf97bfb52288 -Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6594731 -Reviewed-by: Nico Hartmann -Commit-Queue: Igor Sheludko -Cr-Commit-Position: refs/heads/main@{#100538} - -diff --git a/src/compiler/representation-change.cc b/src/compiler/representation-change.cc -index a05b47e602e9707c17ba0ddcc9cfc071b95db168..116dcb6ce9a10e8fd3c681292ceaa2894db55052 100644 ---- a/src/compiler/representation-change.cc -+++ b/src/compiler/representation-change.cc -@@ -1394,7 +1394,12 @@ Node* RepresentationChanger::GetWord64RepresentationFor( - } - } else if (output_rep == MachineRepresentation::kTaggedSigned) { - if (output_type.Is(Type::SignedSmall())) { -- op = simplified()->ChangeTaggedSignedToInt64(); -+ if (output_type.IsRange() && output_type.AsRange()->Min() >= 0) { -+ node = InsertChangeTaggedSignedToInt32(node); -+ op = machine()->ChangeUint32ToUint64(); -+ } else { -+ op = simplified()->ChangeTaggedSignedToInt64(); -+ } - } else { - return TypeError(node, output_rep, output_type, - MachineRepresentation::kWord64); diff --git a/patches/v8/cherry-pick-7bc0a67ebfbf.patch b/patches/v8/cherry-pick-7bc0a67ebfbf.patch deleted file mode 100644 index ff5e0b4f2980..000000000000 --- a/patches/v8/cherry-pick-7bc0a67ebfbf.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Leszek Swirski -Date: Tue, 27 May 2025 20:33:19 +0200 -Subject: Weaken alias analysis in store-store elimination - -Bug: 420636529 -Change-Id: I7c5a8f47960708cecbb27d811eedc7f754933deb -Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6594051 -Reviewed-by: Shu-yu Guo -Auto-Submit: Leszek Swirski -Commit-Queue: Leszek Swirski -Cr-Commit-Position: refs/heads/main@{#100530} - -diff --git a/src/compiler/turboshaft/store-store-elimination-reducer-inl.h b/src/compiler/turboshaft/store-store-elimination-reducer-inl.h -index 45654a022fbaa67634d68d7d6e9dab7a5a50cb28..e058a41f23e29bbe4f5098608b340ccfef50bf98 100644 ---- a/src/compiler/turboshaft/store-store-elimination-reducer-inl.h -+++ b/src/compiler/turboshaft/store-store-elimination-reducer-inl.h -@@ -325,10 +325,11 @@ class RedundantStoreAnalysis { - // TODO(nicohartmann@): Use the new effect flags to distinguish heap - // access once available. - const bool is_on_heap_store = store.kind.tagged_base; -- const bool is_field_store = !store.index().valid(); -+ const bool is_fixed_offset_store = !store.index().valid(); - const uint8_t size = store.stored_rep.SizeInBytes(); -- // For now we consider only stores of fields of objects on the heap. -- if (is_on_heap_store && is_field_store) { -+ // For now we consider only stores of fixed offsets of objects on the -+ // heap. -+ if (is_on_heap_store && is_fixed_offset_store) { - bool is_eliminable_store = false; - switch (table_.GetObservability(store.base(), store.offset, size)) { - case StoreObservability::kUnobservable: -@@ -415,11 +416,16 @@ class RedundantStoreAnalysis { - // TODO(nicohartmann@): Use the new effect flags to distinguish heap - // access once available. - const bool is_on_heap_load = load.kind.tagged_base; -- const bool is_field_load = !load.index().valid(); -+ const bool is_fixed_offset_load = !load.index().valid(); - // For now we consider only loads of fields of objects on the heap. -- if (is_on_heap_load && is_field_load) { -- table_.MarkPotentiallyAliasingStoresAsObservable(load.base(), -- load.offset); -+ if (is_on_heap_load) { -+ if (is_fixed_offset_load) { -+ table_.MarkPotentiallyAliasingStoresAsObservable(load.base(), -+ load.offset); -+ } else { -+ // A dynamically indexed load might alias any fixed offset. -+ table_.MarkAllStoresAsObservable(); -+ } - } - break; - } diff --git a/patches/webrtc/fix_handle_pipewire_capturer_initialization_and_management.patch b/patches/webrtc/fix_handle_pipewire_capturer_initialization_and_management.patch index 88dcd771ca4e..c1101aa79510 100644 --- a/patches/webrtc/fix_handle_pipewire_capturer_initialization_and_management.patch +++ b/patches/webrtc/fix_handle_pipewire_capturer_initialization_and_management.patch @@ -49,10 +49,10 @@ index 94605f409cd1523036f3e7d167a8d1f3c030e586..fae73654c84a7a8185ddf7255b49a86f options, CaptureType::kAnyScreenContent); } diff --git a/modules/desktop_capture/linux/wayland/base_capturer_pipewire.cc b/modules/desktop_capture/linux/wayland/base_capturer_pipewire.cc -index 722806340163be3371f29263e56bcc808b6846c6..6453101606e2088de640e70a730817803d0a1a09 100644 +index 76340ced4101d3c04a853dacd522365ae70bc5b4..309804a88c19b1e1d5c8592d8b0a5addc74ad844 100644 --- a/modules/desktop_capture/linux/wayland/base_capturer_pipewire.cc +++ b/modules/desktop_capture/linux/wayland/base_capturer_pipewire.cc -@@ -111,6 +111,7 @@ void BaseCapturerPipeWire::OnScreenCastRequestResult(RequestResponse result, +@@ -112,6 +112,7 @@ void BaseCapturerPipeWire::OnScreenCastRequestResult(RequestResponse result, void BaseCapturerPipeWire::OnScreenCastSessionClosed() { if (!capturer_failed_) { options_.screencast_stream()->StopScreenCastStream(); diff --git a/shell/browser/serial/serial_chooser_controller.cc b/shell/browser/serial/serial_chooser_controller.cc index 217f495fd02a..66a98fde224b 100644 --- a/shell/browser/serial/serial_chooser_controller.cc +++ b/shell/browser/serial/serial_chooser_controller.cc @@ -11,6 +11,7 @@ #include "base/containers/contains.h" #include "base/functional/bind.h" #include "base/strings/string_number_conversions.h" +#include "base/strings/stringprintf.h" #include "chrome/browser/serial/serial_blocklist.h" #include "content/public/browser/console_message.h" #include "content/public/browser/web_contents.h" diff --git a/shell/browser/ui/inspectable_web_contents.h b/shell/browser/ui/inspectable_web_contents.h index 87fe41aaad7f..3a003747daa7 100644 --- a/shell/browser/ui/inspectable_web_contents.h +++ b/shell/browser/ui/inspectable_web_contents.h @@ -182,6 +182,7 @@ class InspectableWebContents void RecordChange(const ChangeEvent& event) override {} void RecordKeyDown(const KeyDownEvent& event) override {} void RecordSettingAccess(const SettingAccessEvent& event) override {} + void RecordFunctionCall(const FunctionCallEvent& event) override {} void ShowSurvey(DispatchCallback callback, const std::string& trigger) override {} void CanShowSurvey(DispatchCallback callback,