chore: bump chromium to 136.0.7095.0 (main) (#46118)

* chore: bump chromium in DEPS to 136.0.7076.0

* chore: bump chromium in DEPS to 136.0.7077.0

* 6368856: Migrate absl variant.h and utility.h in content (part 2/2) | 6368856

* 6356528: Clean up LegacyRenderWidgetHostHWND code | 6356528

* chore: export patches

* 6339113: [Viewport Segments] Add CDP commands to override Viewport Segments without overriding other device properties. | 6339113

* 6352169: [DevTools][MultiInstance] Support new tab in another window on Android | 6352169

* 6368856: Migrate absl variant.h and utility.h in content (part 2/2) | 6368856

* 6360858:Clickiness: Wire response from URLLoader to DB, add e2e tests| 6360858

* chore: bump chromium in DEPS to 136.0.7079.0

* chore: export patches

* chore: bump chromium in DEPS to 136.0.7081.0

* chore: export patches

* chore: bump chromium in DEPS to 136.0.7083.0

* 6361987: Remove double-declaration with gfx::NativeView and gfx::NativeWindow | 6361987

* chore: export patches

* chore: bump chromium in DEPS to 136.0.7087.0

* chore: export patches

* fix: include node patch for missing AtomicsWaitEvent
6385540

* build: add depot_tools python to path

* fix: cppgc init and unregistering v8 isolate

6333562

CppGc is now initialized earlier so Node can skip reinitializing it.

Additionally, gin::IsolateHandle was attempting to destruct an already destructed
v8::Isolate upon electron::JavaScriptEnvironment destruction. By removing the call
to NodePlatform::UnregisterIsolate, this fixes the crash on app shutdown.

* fix: unregister isolate after destruction

See code comment.

* chore: bump chromium in DEPS to 136.0.7095.0

* chore: sync patches

* fix: add script_parsing::ContentScriptType parameter
6298395

* fix: migrate content::BrowserAccessibilityState methods
6401437
6383275

* feat: enableHappyEyeballs option for host resolver
6332599

* fix: add new cookie exclusion reason
6343479

* fix: add new url loader method
6337340

* fix: add new cppgc header file for electron_node headers
6348644

* fix: disable CREL on Linux ARM64
https://chromium-review.googlesource.com/q/I3a62f02f564f07be63173b0773b4ecaffbe939b9

* fixup! fix: add new cppgc header file for electron_node headers 6348644

* chore: update corner smoothing patch

* fixup! chore: update corner smoothing patch

* chore: disable NAN weak tests

These two tests are incompatible with a V8 change that disallows running JS code from a weak finalizer callback.

Ref: 4733273

* test: fix task starvation in node test

A V8 change makes these contexts get collected in a task that is posted
and run asynchronously. The tests were synchronously GC'ing in an
infinite loop, preventing the task loop from running the task that would
GC these contexts.

This change should be upstreamed in some way.

Ref: 4733273

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: alice <alice@makenotion.com>
Co-authored-by: Samuel Maddock <smaddock@slack-corp.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
Co-authored-by: clavin <clavin@electronjs.org>
This commit is contained in:
electron-roller[bot] 2025-04-03 19:02:49 -05:00 committed by GitHub
parent 0a5da83a1b
commit 9c019b6147
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
110 changed files with 1645 additions and 589 deletions

View file

@ -20,3 +20,4 @@ runs:
cp "C:\Python311\python.exe" "C:\Python311\python3.exe" cp "C:\Python311\python.exe" "C:\Python311\python3.exe"
fi fi
echo "$HOME/.electron_build_tools/third_party/depot_tools" >> $GITHUB_PATH echo "$HOME/.electron_build_tools/third_party/depot_tools" >> $GITHUB_PATH
echo "$HOME/.electron_build_tools/third_party/depot_tools/python-bin" >> $GITHUB_PATH

2
DEPS
View file

@ -2,7 +2,7 @@ gclient_gn_args_from = 'src'
vars = { vars = {
'chromium_version': 'chromium_version':
'136.0.7067.0', '136.0.7095.0',
'node_version': 'node_version':
'v22.14.0', 'v22.14.0',
'nan_version': 'nan_version':

View file

@ -1110,6 +1110,11 @@ indicates success while any other value indicates failure according to Chromium
resolver will attempt to use the system's DNS settings to do DNS lookups resolver will attempt to use the system's DNS settings to do DNS lookups
itself. Enabled by default on macOS, disabled by default on Windows and itself. Enabled by default on macOS, disabled by default on Windows and
Linux. Linux.
* `enableHappyEyeballs` boolean (optional) - Whether the
[Happy Eyeballs V3][happy-eyeballs-v3] algorithm should be used in creating
network connections. When enabled, hostnames resolving to multiple IP
addresses will be attempted in parallel to have a chance at establishing a
connection more quickly.
* `secureDnsMode` string (optional) - Can be 'off', 'automatic' or 'secure'. * `secureDnsMode` string (optional) - Can be 'off', 'automatic' or 'secure'.
Configures the DNS-over-HTTP mode. When 'off', no DoH lookups will be Configures the DNS-over-HTTP mode. When 'off', no DoH lookups will be
performed. When 'automatic', DoH lookups will be performed first if DoH is performed. When 'automatic', DoH lookups will be performed first if DoH is
@ -1579,6 +1584,7 @@ A `boolean` property that returns `true` if the app is packaged, `false` otherw
[Squirrel-Windows]: https://github.com/Squirrel/Squirrel.Windows [Squirrel-Windows]: https://github.com/Squirrel/Squirrel.Windows
[JumpListBeginListMSDN]: https://learn.microsoft.com/en-us/windows/win32/api/shobjidl_core/nf-shobjidl_core-icustomdestinationlist-beginlist [JumpListBeginListMSDN]: https://learn.microsoft.com/en-us/windows/win32/api/shobjidl_core/nf-shobjidl_core-icustomdestinationlist-beginlist
[about-panel-options]: https://developer.apple.com/reference/appkit/nsapplication/1428479-orderfrontstandardaboutpanelwith?language=objc [about-panel-options]: https://developer.apple.com/reference/appkit/nsapplication/1428479-orderfrontstandardaboutpanelwith?language=objc
[happy-eyeballs-v3]: https://datatracker.ietf.org/doc/draft-pauly-happy-happyeyeballs-v3/
### `app.name` ### `app.name`

View file

@ -82,7 +82,7 @@ index e04b80cd6a1a215fc87f8fd8d750c3d258c3974f..8fdf1c624794f568bfc77b7b6b0c510b
void EVP_MD_do_all(void (*callback)(const EVP_MD *cipher, const char *name, 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 diff --git a/include/openssl/digest.h b/include/openssl/digest.h
index 5ddc2d3b4cfb8a87eb22fb707230f56dcb7ccb3e..dea3c5b3adf49e1b4aab197e822744c80964afac 100644 index b36c5885a31ff3242ac3104e6d875a008c7c39e4..8fe32508a00263295313e77992e2c208459ca42c 100644
--- a/include/openssl/digest.h --- a/include/openssl/digest.h
+++ b/include/openssl/digest.h +++ b/include/openssl/digest.h
@@ -48,6 +48,9 @@ OPENSSL_EXPORT const EVP_MD *EVP_blake2b256(void); @@ -48,6 +48,9 @@ OPENSSL_EXPORT const EVP_MD *EVP_blake2b256(void);

View file

@ -118,7 +118,7 @@ index 8fdf1c624794f568bfc77b7b6b0c510b23905a4d..2e40c031e8c681fe921331b26dbf63f4
callback(EVP_des_ede3_cbc(), "des-ede3-cbc", NULL, arg); callback(EVP_des_ede3_cbc(), "des-ede3-cbc", NULL, arg);
callback(EVP_rc2_cbc(), "rc2-cbc", NULL, arg); callback(EVP_rc2_cbc(), "rc2-cbc", NULL, arg);
diff --git a/include/openssl/cipher.h b/include/openssl/cipher.h diff --git a/include/openssl/cipher.h b/include/openssl/cipher.h
index 6bb135801326bc1cbe2b93f02e561e38c90abeca..06bcba4451456c72b168266859482343af76a931 100644 index 13e68ad20ac08a462bb577d7f99e2c6f167579fa..4960d0eeb8f31bec4347ed2a1b63beba530de700 100644
--- a/include/openssl/cipher.h --- a/include/openssl/cipher.h
+++ b/include/openssl/cipher.h +++ b/include/openssl/cipher.h
@@ -448,6 +448,7 @@ OPENSSL_EXPORT const EVP_CIPHER *EVP_des_ede3_ecb(void); @@ -448,6 +448,7 @@ OPENSSL_EXPORT const EVP_CIPHER *EVP_des_ede3_ecb(void);

View file

@ -20,10 +20,10 @@ index 2cdcbc346175eeee69402ecee7f169e61c655199..f7226fe711e4214b216ea2c5173a0212
case ssl_open_record_error: case ssl_open_record_error:
diff --git a/ssl/ssl_lib.cc b/ssl/ssl_lib.cc diff --git a/ssl/ssl_lib.cc b/ssl/ssl_lib.cc
index 10b062abf8304df32652c57f377d57209bb47ed1..4eefe928daaf959d0cb1f0820e01ee05754bb4d5 100644 index d228b1c3b517e21fb8022c1927b0bc522f46bf78..4a94410d0ea4daabde1397c78c5e5de113398ddf 100644
--- a/ssl/ssl_lib.cc --- a/ssl/ssl_lib.cc
+++ b/ssl/ssl_lib.cc +++ b/ssl/ssl_lib.cc
@@ -1206,7 +1206,7 @@ int SSL_get_error(const SSL *ssl, int ret_code) { @@ -1205,7 +1205,7 @@ int SSL_get_error(const SSL *ssl, int ret_code) {
} }
if (ret_code == 0) { if (ret_code == 0) {
@ -32,7 +32,7 @@ index 10b062abf8304df32652c57f377d57209bb47ed1..4eefe928daaf959d0cb1f0820e01ee05
return SSL_ERROR_ZERO_RETURN; return SSL_ERROR_ZERO_RETURN;
} }
// An EOF was observed which violates the protocol, and the underlying // An EOF was observed which violates the protocol, and the underlying
@@ -2573,13 +2573,7 @@ void *SSL_CTX_get_ex_data(const SSL_CTX *ctx, int idx) { @@ -2572,13 +2572,7 @@ void *SSL_CTX_get_ex_data(const SSL_CTX *ctx, int idx) {
return CRYPTO_get_ex_data(&ctx->ex_data, idx); return CRYPTO_get_ex_data(&ctx->ex_data, idx);
} }

View file

@ -144,4 +144,4 @@ feat_separate_content_settings_callback_for_sync_and_async_clipboard.patch
fix_win32_synchronous_spellcheck.patch fix_win32_synchronous_spellcheck.patch
fix_enable_wrap_iter_in_string_view_and_array.patch fix_enable_wrap_iter_in_string_view_and_array.patch
fix_linter_error.patch fix_linter_error.patch
fix_take_snapped_status_into_account_when_showing_a_window.patch revert_enable_crel_for_arm32_targets.patch

View file

@ -23,7 +23,7 @@ index 44da0544b778d6ff4c14b6f4e8463cb8260d2f0d..8ae8939af4141a684b7a6d50a43e1abb
int32_t world_id) {} int32_t world_id) {}
virtual void DidClearWindowObject() {} virtual void DidClearWindowObject() {}
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
index 0fb92081a1bbfb14c0ddd74dfe91f94bb2be1d2a..886f677564084d8b6af15b03403cfa56aeddd3c9 100644 index 4185aa3e07df8f2a3061d18e87f39cd5d79baead..81261373a194210d97c723ed525cb75a2bbeafad 100644
--- a/content/renderer/render_frame_impl.cc --- a/content/renderer/render_frame_impl.cc
+++ b/content/renderer/render_frame_impl.cc +++ b/content/renderer/render_frame_impl.cc
@@ -4802,6 +4802,12 @@ void RenderFrameImpl::DidCreateScriptContext(v8::Local<v8::Context> context, @@ -4802,6 +4802,12 @@ void RenderFrameImpl::DidCreateScriptContext(v8::Local<v8::Context> context,
@ -40,7 +40,7 @@ index 0fb92081a1bbfb14c0ddd74dfe91f94bb2be1d2a..886f677564084d8b6af15b03403cfa56
int world_id) { int world_id) {
for (auto& observer : observers_) for (auto& observer : observers_)
diff --git a/content/renderer/render_frame_impl.h b/content/renderer/render_frame_impl.h diff --git a/content/renderer/render_frame_impl.h b/content/renderer/render_frame_impl.h
index bf073c9180d47243f09fdd052a43dfe7e34aa4aa..d1642b675e474568c302553a288253b639ed1efd 100644 index a072319de5d16d8004cb33792b2275320627fe6a..f52aa0470ca53c9997961c398d2c79d25967562e 100644
--- a/content/renderer/render_frame_impl.h --- a/content/renderer/render_frame_impl.h
+++ b/content/renderer/render_frame_impl.h +++ b/content/renderer/render_frame_impl.h
@@ -653,6 +653,8 @@ class CONTENT_EXPORT RenderFrameImpl @@ -653,6 +653,8 @@ class CONTENT_EXPORT RenderFrameImpl
@ -53,7 +53,7 @@ index bf073c9180d47243f09fdd052a43dfe7e34aa4aa..d1642b675e474568c302553a288253b6
int world_id) override; int world_id) override;
void DidChangeScrollOffset() override; void DidChangeScrollOffset() override;
diff --git a/third_party/blink/public/web/web_local_frame_client.h b/third_party/blink/public/web/web_local_frame_client.h diff --git a/third_party/blink/public/web/web_local_frame_client.h b/third_party/blink/public/web/web_local_frame_client.h
index 038c13c1e697d4f21160e0329f659b609802ecc1..60fd9aa69a86c32abf79ef8737e810b0017e1083 100644 index fade7618e12889da5a1c3cbe465dec0869634407..53aaf91fe5e68465c9ec8b181e33b5ee95a5a5aa 100644
--- a/third_party/blink/public/web/web_local_frame_client.h --- a/third_party/blink/public/web/web_local_frame_client.h
+++ b/third_party/blink/public/web/web_local_frame_client.h +++ b/third_party/blink/public/web/web_local_frame_client.h
@@ -664,6 +664,9 @@ class BLINK_EXPORT WebLocalFrameClient { @@ -664,6 +664,9 @@ class BLINK_EXPORT WebLocalFrameClient {
@ -123,10 +123,10 @@ index 4c7375a27a22f04694e14fecc17d633734d4cccc..ea2a32b151aaf07b5704e463d01714eb
int32_t world_id) override; int32_t world_id) override;
diff --git a/third_party/blink/renderer/core/loader/empty_clients.h b/third_party/blink/renderer/core/loader/empty_clients.h diff --git a/third_party/blink/renderer/core/loader/empty_clients.h b/third_party/blink/renderer/core/loader/empty_clients.h
index 8ca461c8fc3f2e508be5783406b570062ccf5de0..3c67d214ecd2b3b2f3e8955836e8ef7c0f0a525d 100644 index 286d95397da7b90ba28b4c4faaae26d6ab71a496..23fd67571152897b3bc93fde8e98e1d554cce275 100644
--- a/third_party/blink/renderer/core/loader/empty_clients.h --- a/third_party/blink/renderer/core/loader/empty_clients.h
+++ b/third_party/blink/renderer/core/loader/empty_clients.h +++ b/third_party/blink/renderer/core/loader/empty_clients.h
@@ -416,6 +416,8 @@ class CORE_EXPORT EmptyLocalFrameClient : public LocalFrameClient { @@ -417,6 +417,8 @@ class CORE_EXPORT EmptyLocalFrameClient : public LocalFrameClient {
void DidCreateScriptContext(v8::Local<v8::Context>, void DidCreateScriptContext(v8::Local<v8::Context>,
int32_t world_id) override {} int32_t world_id) override {}

View file

@ -7,10 +7,10 @@ Ensure that licenses for the dependencies introduced by Electron
are included in `LICENSES.chromium.html` are included in `LICENSES.chromium.html`
diff --git a/tools/licenses/licenses.py b/tools/licenses/licenses.py diff --git a/tools/licenses/licenses.py b/tools/licenses/licenses.py
index 12ad657f5df3ff4af2bdbd8b9fb7959131db2970..f2b03596dd5ff96236272b6348336515df85eef0 100755 index 7b948007755d306babea73498c17031c437ae6dc..adcfad8931c314f86d26347ccda438af452b8167 100755
--- a/tools/licenses/licenses.py --- a/tools/licenses/licenses.py
+++ b/tools/licenses/licenses.py +++ b/tools/licenses/licenses.py
@@ -336,6 +336,31 @@ SPECIAL_CASES = { @@ -337,6 +337,31 @@ SPECIAL_CASES = {
"License": "Apache 2.0", "License": "Apache 2.0",
"License File": ["//third_party/dawn/third_party/khronos/LICENSE"], "License File": ["//third_party/dawn/third_party/khronos/LICENSE"],
}, },

View file

@ -8,10 +8,10 @@ was removed as part of the Raw Clipboard API scrubbing.
https://bugs.chromium.org/p/chromium/issues/detail?id=1217643 https://bugs.chromium.org/p/chromium/issues/detail?id=1217643
diff --git a/ui/base/clipboard/scoped_clipboard_writer.cc b/ui/base/clipboard/scoped_clipboard_writer.cc diff --git a/ui/base/clipboard/scoped_clipboard_writer.cc b/ui/base/clipboard/scoped_clipboard_writer.cc
index fd162a607424bd4d0b324ccc7270522eb3b6a991..df1d5564a52ef67b447bbc222ceb1f864eb3dd81 100644 index 8064a2c27d747d4862503526496a65987df7dc35..c92596713c6d3884be3f63bf78d9117b7ad3ec90 100644
--- a/ui/base/clipboard/scoped_clipboard_writer.cc --- a/ui/base/clipboard/scoped_clipboard_writer.cc
+++ b/ui/base/clipboard/scoped_clipboard_writer.cc +++ b/ui/base/clipboard/scoped_clipboard_writer.cc
@@ -230,6 +230,16 @@ void ScopedClipboardWriter::WriteData(std::u16string_view format, @@ -237,6 +237,16 @@ void ScopedClipboardWriter::WriteData(std::u16string_view format,
} }
} }
@ -29,7 +29,7 @@ index fd162a607424bd4d0b324ccc7270522eb3b6a991..df1d5564a52ef67b447bbc222ceb1f86
objects_.clear(); objects_.clear();
raw_objects_.clear(); raw_objects_.clear();
diff --git a/ui/base/clipboard/scoped_clipboard_writer.h b/ui/base/clipboard/scoped_clipboard_writer.h diff --git a/ui/base/clipboard/scoped_clipboard_writer.h b/ui/base/clipboard/scoped_clipboard_writer.h
index d8fd611e88c22f2c1319da769dcd14cc218f9c90..f17304e1e9fd202dc4e1b7724031dc4c333a4baf 100644 index 939a99b2a086d5373f82fe96da73dabe02f6f9d8..fccc200b1b11076c8fcffde071a53598ffba9a12 100644
--- a/ui/base/clipboard/scoped_clipboard_writer.h --- a/ui/base/clipboard/scoped_clipboard_writer.h
+++ b/ui/base/clipboard/scoped_clipboard_writer.h +++ b/ui/base/clipboard/scoped_clipboard_writer.h
@@ -87,6 +87,10 @@ class COMPONENT_EXPORT(UI_BASE_CLIPBOARD) ScopedClipboardWriter { @@ -87,6 +87,10 @@ class COMPONENT_EXPORT(UI_BASE_CLIPBOARD) ScopedClipboardWriter {

View file

@ -10,7 +10,7 @@ usage of BrowserList and Browser as we subclass related methods and use our
WindowList. WindowList.
diff --git a/chrome/browser/ui/webui/accessibility/accessibility_ui.cc b/chrome/browser/ui/webui/accessibility/accessibility_ui.cc diff --git a/chrome/browser/ui/webui/accessibility/accessibility_ui.cc b/chrome/browser/ui/webui/accessibility/accessibility_ui.cc
index 230c9cb619498f315fc0913da54837b725fc9024..0fa1120ab952864e53085e7746608bb491ec14b2 100644 index 628fe5557f963c52cbe0c5b24c6e06aaa81f9677..868f5eb60c35dfaa0a4e33e7f175743848e0cc2e 100644
--- a/chrome/browser/ui/webui/accessibility/accessibility_ui.cc --- a/chrome/browser/ui/webui/accessibility/accessibility_ui.cc
+++ b/chrome/browser/ui/webui/accessibility/accessibility_ui.cc +++ b/chrome/browser/ui/webui/accessibility/accessibility_ui.cc
@@ -48,6 +48,7 @@ @@ -48,6 +48,7 @@
@ -38,7 +38,7 @@ index 230c9cb619498f315fc0913da54837b725fc9024..0fa1120ab952864e53085e7746608bb4
+ PrefService* pref = static_cast<electron::ElectronBrowserContext*>(current_context)->prefs(); + PrefService* pref = static_cast<electron::ElectronBrowserContext*>(current_context)->prefs();
ui::AXMode mode = ui::AXMode mode =
content::BrowserAccessibilityState::GetInstance()->GetAccessibilityMode(); content::BrowserAccessibilityState::GetInstance()->GetAccessibilityMode();
bool is_native_enabled = content::BrowserAccessibilityState::GetInstance() bool is_a11y_allowed = content::BrowserAccessibilityState::GetInstance()
@@ -221,7 +222,7 @@ void HandleAccessibilityRequestCallback( @@ -221,7 +222,7 @@ void HandleAccessibilityRequestCallback(
data.Set(kPDFPrinting, pdf_printing ? kOn : kOff); data.Set(kPDFPrinting, pdf_printing ? kOn : kOff);

View file

@ -51,7 +51,7 @@ index 56e52f079d1ad7c7a22764b976f0c8b2cc48dff2..1231fe522ad103e94d3c30ad7d5e5d23
void SendRendererPreferencesToRenderer( void SendRendererPreferencesToRenderer(
const blink::RendererPreferences& preferences); const blink::RendererPreferences& preferences);
diff --git a/content/browser/renderer_host/render_widget_host_view_aura.cc b/content/browser/renderer_host/render_widget_host_view_aura.cc diff --git a/content/browser/renderer_host/render_widget_host_view_aura.cc b/content/browser/renderer_host/render_widget_host_view_aura.cc
index 19d2df47b0c929558ac8cfc208742dfef463a68b..7e9f2e71f08c1324a805462064d4fa485041c19f 100644 index d719b546b8c3c59003698b26dead065da7d76341..95a52f1cc2024e4a9cd694429d5304a5860a1c1e 100644
--- a/content/browser/renderer_host/render_widget_host_view_aura.cc --- a/content/browser/renderer_host/render_widget_host_view_aura.cc
+++ b/content/browser/renderer_host/render_widget_host_view_aura.cc +++ b/content/browser/renderer_host/render_widget_host_view_aura.cc
@@ -579,8 +579,8 @@ void RenderWidgetHostViewAura::ShowImpl(PageVisibilityState page_visibility) { @@ -579,8 +579,8 @@ void RenderWidgetHostViewAura::ShowImpl(PageVisibilityState page_visibility) {
@ -116,10 +116,10 @@ index b1689844282d6917b9750fbc6a875848ddf84b70..f1cc159b7c3448a33a6d9e213f8fbd3b
// Visibility ----------------------------------------------------------- // 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 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 3de7e34536eceb241de943908875a9c3e5e99f7e..10c3795839969bde6a747da67d5cc7caa44a7179 100644 index c1af09d0a80ffba9b1265e59cf3d066ad2a5bfa0..fbfc0af8a6f29da9ee2d5fd6ae5a02958a7e3a81 100644
--- a/third_party/blink/renderer/core/exported/web_view_impl.cc --- a/third_party/blink/renderer/core/exported/web_view_impl.cc
+++ b/third_party/blink/renderer/core/exported/web_view_impl.cc +++ b/third_party/blink/renderer/core/exported/web_view_impl.cc
@@ -2461,6 +2461,10 @@ void WebViewImpl::SetPageLifecycleStateInternal( @@ -2465,6 +2465,10 @@ void WebViewImpl::SetPageLifecycleStateInternal(
TRACE_EVENT2("navigation", "WebViewImpl::SetPageLifecycleStateInternal", TRACE_EVENT2("navigation", "WebViewImpl::SetPageLifecycleStateInternal",
"old_state", old_state, "new_state", new_state); "old_state", old_state, "new_state", new_state);
@ -130,7 +130,7 @@ index 3de7e34536eceb241de943908875a9c3e5e99f7e..10c3795839969bde6a747da67d5cc7ca
bool storing_in_bfcache = new_state->is_in_back_forward_cache && bool storing_in_bfcache = new_state->is_in_back_forward_cache &&
!old_state->is_in_back_forward_cache; !old_state->is_in_back_forward_cache;
bool restoring_from_bfcache = !new_state->is_in_back_forward_cache && bool restoring_from_bfcache = !new_state->is_in_back_forward_cache &&
@@ -3987,10 +3991,23 @@ PageScheduler* WebViewImpl::Scheduler() const { @@ -3988,10 +3992,23 @@ PageScheduler* WebViewImpl::Scheduler() const {
return GetPage()->GetPageScheduler(); return GetPage()->GetPageScheduler();
} }

View file

@ -8,7 +8,7 @@ WebPreferences of in-process child windows, rather than relying on
process-level command line switches, as before. 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 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 2494aeb1cd363c07e1b662743b1453da646fe17d..927dce4724263b45ff27b046ef024ae2a04706a9 100644 index 2612e54a2b0d3c71bd8efe9340bc58c795500140..e590387effc958ba7215e75ea1e2a8173f624d02 100644
--- a/third_party/blink/common/web_preferences/web_preferences_mojom_traits.cc --- a/third_party/blink/common/web_preferences/web_preferences_mojom_traits.cc
+++ b/third_party/blink/common/web_preferences/web_preferences_mojom_traits.cc +++ b/third_party/blink/common/web_preferences/web_preferences_mojom_traits.cc
@@ -148,6 +148,19 @@ bool StructTraits<blink::mojom::WebPreferencesDataView, @@ -148,6 +148,19 @@ bool StructTraits<blink::mojom::WebPreferencesDataView,
@ -32,7 +32,7 @@ index 2494aeb1cd363c07e1b662743b1453da646fe17d..927dce4724263b45ff27b046ef024ae2
out->accelerated_video_decode_enabled = out->accelerated_video_decode_enabled =
data.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 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 b7b817c01fcec0bf60bd88544ec66b53248a1ed8..82a03a14e19840924c90cb768a3bbd715fdf82d4 100644 index 85f312a9ea1eca0ff7ba4c679fabb3156aabbc0b..a9dc007a93003610d68e3118b4a47a86d4e16f6e 100644
--- a/third_party/blink/public/common/web_preferences/web_preferences.h --- a/third_party/blink/public/common/web_preferences/web_preferences.h
+++ b/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 @@ @@ -9,6 +9,7 @@
@ -43,9 +43,9 @@ index b7b817c01fcec0bf60bd88544ec66b53248a1ed8..82a03a14e19840924c90cb768a3bbd71
#include "build/build_config.h" #include "build/build_config.h"
#include "net/nqe/effective_connection_type.h" #include "net/nqe/effective_connection_type.h"
#include "third_party/blink/public/common/common_export.h" #include "third_party/blink/public/common/common_export.h"
@@ -447,6 +448,20 @@ struct BLINK_COMMON_EXPORT WebPreferences { @@ -451,6 +452,20 @@ struct BLINK_COMMON_EXPORT WebPreferences {
// when feature DynamicSafeAreaInsets is enabled. // WebView and by `kWebPayments` feature flag everywhere.
bool dynamic_safe_area_insets_enabled = false; bool payment_request_enabled = false;
+ // Begin Electron-specific WebPreferences. + // Begin Electron-specific WebPreferences.
+ bool context_isolation = false; + bool context_isolation = false;
@ -65,7 +65,7 @@ index b7b817c01fcec0bf60bd88544ec66b53248a1ed8..82a03a14e19840924c90cb768a3bbd71
// chrome, except for the cases where it would require lots of extra work for // chrome, except for the cases where it would require lots of extra work for
// the embedder to use the same default value. // 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 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 d686fc396ce4d53c209be5cbb4d4ddfecc4cca1b..cd1110adc4131404ba32595ea5533b220554b0c4 100644 index 9b7bc55a0e61de85688b2370012e14f8b47c43ab..63b035046ac3d565e5ee1f3a3c559da88d81f059 100644
--- a/third_party/blink/public/common/web_preferences/web_preferences_mojom_traits.h --- 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 +++ b/third_party/blink/public/common/web_preferences/web_preferences_mojom_traits.h
@@ -8,6 +8,7 @@ @@ -8,6 +8,7 @@
@ -130,7 +130,7 @@ index d686fc396ce4d53c209be5cbb4d4ddfecc4cca1b..cd1110adc4131404ba32595ea5533b22
return r.cookie_enabled; return r.cookie_enabled;
} }
diff --git a/third_party/blink/public/mojom/webpreferences/web_preferences.mojom b/third_party/blink/public/mojom/webpreferences/web_preferences.mojom diff --git a/third_party/blink/public/mojom/webpreferences/web_preferences.mojom b/third_party/blink/public/mojom/webpreferences/web_preferences.mojom
index 6678fc10d72e6c49ba729d5f44626f9a29934a3b..57f8c71bd0e3b1e09510184888636004a949c192 100644 index e7c3bc263844c0ddeb9011440e2c0fd8f848ca27..142dae3834fe96f120727ef9ffe1250607bcadec 100644
--- a/third_party/blink/public/mojom/webpreferences/web_preferences.mojom --- a/third_party/blink/public/mojom/webpreferences/web_preferences.mojom
+++ b/third_party/blink/public/mojom/webpreferences/web_preferences.mojom +++ b/third_party/blink/public/mojom/webpreferences/web_preferences.mojom
@@ -8,9 +8,11 @@ import "third_party/blink/public/mojom/css/preferred_color_scheme.mojom"; @@ -8,9 +8,11 @@ import "third_party/blink/public/mojom/css/preferred_color_scheme.mojom";

View file

@ -49,7 +49,7 @@ index 9dc450bc20744463c8898bc822a558be38486493..576421cb9600625ad8b9eda25cb99954
// its owning reference back to our owning LocalFrame. // its owning reference back to our owning LocalFrame.
client_->Detached(type); client_->Detached(type);
diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc
index ba6aac34b4838efa86c01926759871a31a3b2257..99ae1320be10ac19d204edfe1c1cf4f52c62eb76 100644 index 1a032c3a8eec55e98da745e7f82b311b1e0bd8ba..19efdf1f30eb5409f9d8a64f008891a2f4bda47c 100644
--- a/third_party/blink/renderer/core/frame/local_frame.cc --- a/third_party/blink/renderer/core/frame/local_frame.cc
+++ b/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc
@@ -748,10 +748,6 @@ bool LocalFrame::DetachImpl(FrameDetachType type) { @@ -748,10 +748,6 @@ bool LocalFrame::DetachImpl(FrameDetachType type) {

View file

@ -6,7 +6,7 @@ Subject: boringssl BUILD.gn
Build BoringSSL with some extra functions that nodejs needs. Build BoringSSL with some extra functions that nodejs needs.
diff --git a/third_party/boringssl/BUILD.gn b/third_party/boringssl/BUILD.gn diff --git a/third_party/boringssl/BUILD.gn b/third_party/boringssl/BUILD.gn
index 12b2fb63dd3ff8c3d29d915a7d0f84a9d26c6e0a..c9fd2c069473b1c21ca8610afb246337c412e0be 100644 index b962901a7db8e6e50155dabbb1371124b12f9b26..b01e197ae2e411a376ffa28b9058d62a16abf23b 100644
--- a/third_party/boringssl/BUILD.gn --- a/third_party/boringssl/BUILD.gn
+++ b/third_party/boringssl/BUILD.gn +++ b/third_party/boringssl/BUILD.gn
@@ -48,6 +48,21 @@ all_sources = bcm_internal_headers + bcm_sources + crypto_internal_headers + @@ -48,6 +48,21 @@ all_sources = bcm_internal_headers + bcm_sources + crypto_internal_headers +

View file

@ -6,10 +6,10 @@ Subject: build: allow electron to use exec_script
This is similar to the //build usecase so we're OK adding ourselves here This is similar to the //build usecase so we're OK adding ourselves here
diff --git a/.gn b/.gn diff --git a/.gn b/.gn
index 3f6571828197301361ebde2e19e8e3138597c276..9effa81a564c3d2afae3eb2bb7438635e45f124a 100644 index 54d2631ec203207f44038a36439613709fec1669..c8b8f604f9e9d960e8144a93d958ab125aae96c5 100644
--- a/.gn --- a/.gn
+++ b/.gn +++ b/.gn
@@ -172,4 +172,26 @@ exec_script_allowlist = @@ -173,4 +173,26 @@ exec_script_allowlist =
"//tools/grit/grit_rule.gni", "//tools/grit/grit_rule.gni",
"//tools/gritsettings/BUILD.gn", "//tools/gritsettings/BUILD.gn",

View file

@ -11,10 +11,10 @@ if we ever align our .pak file generation with Chrome we can remove this
patch. patch.
diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn
index b38442f018b218944c7b85c9f8bd8b8eb6137b9e..dd15f6cf5dc40f2d54134c833d35508f2e22967b 100644 index 95c73dcb082999d0a85d82f1fe330d27c88055ca..64cd976eba849435779b280b2941f9150b5d1d36 100644
--- a/chrome/BUILD.gn --- a/chrome/BUILD.gn
+++ b/chrome/BUILD.gn +++ b/chrome/BUILD.gn
@@ -199,11 +199,16 @@ if (!is_android && !is_mac) { @@ -200,11 +200,16 @@ if (!is_android && !is_mac) {
"common/crash_keys.h", "common/crash_keys.h",
] ]
@ -33,10 +33,10 @@ index b38442f018b218944c7b85c9f8bd8b8eb6137b9e..dd15f6cf5dc40f2d54134c833d35508f
"//base", "//base",
"//build:branding_buildflags", "//build:branding_buildflags",
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
index 0ad542897fa8e45003a7945d9393f84844f993d3..0fb8770c97c2a3c2ffebb558cd81081821747b2a 100644 index fd02559a88b339ebd70e08d11d294975f1ef3148..c304e3d04364b071465a513a7953b3d1f0d3a38e 100644
--- a/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn
@@ -4567,7 +4567,7 @@ static_library("browser") { @@ -4591,7 +4591,7 @@ static_library("browser") {
[ "//chrome/browser/ui/webui/signin:profile_impl" ] [ "//chrome/browser/ui/webui/signin:profile_impl" ]
} }
@ -46,10 +46,10 @@ index 0ad542897fa8e45003a7945d9393f84844f993d3..0fb8770c97c2a3c2ffebb558cd810818
# than here in :chrome_dll. # than here in :chrome_dll.
deps += [ "//chrome:packed_resources_integrity_header" ] deps += [ "//chrome:packed_resources_integrity_header" ]
diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
index 1cc7b3905eae8d1c3025ae3454482ea8418a5217..bf71a7514f337cc6447e27a8ebd3a2c299840121 100644 index 48488b2b31ff39e3fe822aa388e1c89578eb2575..9ba26245243d37683f3161c89411cacdcfaeceb7 100644
--- a/chrome/test/BUILD.gn --- a/chrome/test/BUILD.gn
+++ b/chrome/test/BUILD.gn +++ b/chrome/test/BUILD.gn
@@ -7031,9 +7031,12 @@ test("unit_tests") { @@ -7086,9 +7086,12 @@ test("unit_tests") {
"//chrome/notification_helper", "//chrome/notification_helper",
] ]
@ -63,7 +63,7 @@ index 1cc7b3905eae8d1c3025ae3454482ea8418a5217..bf71a7514f337cc6447e27a8ebd3a2c2
"//chrome//services/util_win:unit_tests", "//chrome//services/util_win:unit_tests",
"//chrome/app:chrome_dll_resources", "//chrome/app:chrome_dll_resources",
"//chrome/app:win_unit_tests", "//chrome/app:win_unit_tests",
@@ -7996,6 +7999,10 @@ test("unit_tests") { @@ -8054,6 +8057,10 @@ test("unit_tests") {
"../browser/performance_manager/policies/background_tab_loading_policy_unittest.cc", "../browser/performance_manager/policies/background_tab_loading_policy_unittest.cc",
] ]
@ -74,7 +74,7 @@ index 1cc7b3905eae8d1c3025ae3454482ea8418a5217..bf71a7514f337cc6447e27a8ebd3a2c2
sources += [ sources += [
# The importer code is not used on Android. # The importer code is not used on Android.
"../common/importer/firefox_importer_utils_unittest.cc", "../common/importer/firefox_importer_utils_unittest.cc",
@@ -8051,7 +8058,6 @@ test("unit_tests") { @@ -8109,7 +8116,6 @@ test("unit_tests") {
# Non-android deps for "unit_tests" target. # Non-android deps for "unit_tests" target.
deps += [ deps += [
"../browser/screen_ai:screen_ai_install_state", "../browser/screen_ai:screen_ai_install_state",

View file

@ -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"). everywhere, without having to import("//electron/.../flags.gni").
diff --git a/build/config/BUILDCONFIG.gn b/build/config/BUILDCONFIG.gn diff --git a/build/config/BUILDCONFIG.gn b/build/config/BUILDCONFIG.gn
index bdf8b13631a3cdf698078f70c435e9316cf0bfc3..53df468e94bdd2cdf049604e29e55863efdd3a8d 100644 index a9d2caeb1c92e102daa9a8bd5bdc5a55af418cf4..efb5bf91722d4b18ae704ebf7355a13f253bef20 100644
--- a/build/config/BUILDCONFIG.gn --- a/build/config/BUILDCONFIG.gn
+++ b/build/config/BUILDCONFIG.gn +++ b/build/config/BUILDCONFIG.gn
@@ -123,6 +123,9 @@ if (current_os == "") { @@ -123,6 +123,9 @@ if (current_os == "") {

View file

@ -7,10 +7,10 @@ Build libc++ as static library to compile and pass
nan tests nan tests
diff --git a/buildtools/third_party/libc++/BUILD.gn b/buildtools/third_party/libc++/BUILD.gn diff --git a/buildtools/third_party/libc++/BUILD.gn b/buildtools/third_party/libc++/BUILD.gn
index 3f437d2b9c193285bdc200c2781b13de75ba993d..d9493066ddc7d7198acc76f345c726be021d8fce 100644 index fd41146966f8cd559e99eb58c0831acdce9fbc6a..acc60f67732179ac6ed7161478686b6e3778731c 100644
--- a/buildtools/third_party/libc++/BUILD.gn --- a/buildtools/third_party/libc++/BUILD.gn
+++ b/buildtools/third_party/libc++/BUILD.gn +++ b/buildtools/third_party/libc++/BUILD.gn
@@ -204,7 +204,11 @@ libcxx_modules("std_wctype_h") { @@ -265,7 +265,11 @@ libcxx_modules("std_wctype_h") {
if (libcxx_is_shared) { if (libcxx_is_shared) {
_libcxx_target_type = "shared_library" _libcxx_target_type = "shared_library"
} else { } else {
@ -23,7 +23,7 @@ index 3f437d2b9c193285bdc200c2781b13de75ba993d..d9493066ddc7d7198acc76f345c726be
} }
target(_libcxx_target_type, "libc++") { target(_libcxx_target_type, "libc++") {
@@ -213,6 +217,7 @@ target(_libcxx_target_type, "libc++") { @@ -274,6 +278,7 @@ target(_libcxx_target_type, "libc++") {
# need to explicitly depend on libc++. # need to explicitly depend on libc++.
visibility = [ visibility = [
"//build/config:common_deps", "//build/config:common_deps",

View file

@ -9,10 +9,10 @@ potentially prevent a window from being created.
TODO(loc): this patch is currently broken. 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 diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc
index 447c0ae162f45eb157008e62cbc756d6f23e4920..27db5dbfd05106788feda9daab9d1aaaf1ae920f 100644 index 9e95917b0808ddcb6e0b1359fb5a86a516e4a071..ea6ba910234659d1213b1f3f624da0f49b851725 100644
--- a/content/browser/renderer_host/render_frame_host_impl.cc --- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -9635,6 +9635,7 @@ void RenderFrameHostImpl::CreateNewWindow( @@ -9638,6 +9638,7 @@ void RenderFrameHostImpl::CreateNewWindow(
last_committed_origin_, params->window_container_type, last_committed_origin_, params->window_container_type,
params->target_url, params->referrer.To<Referrer>(), params->target_url, params->referrer.To<Referrer>(),
params->frame_name, params->disposition, *params->features, params->frame_name, params->disposition, *params->features,
@ -21,10 +21,10 @@ index 447c0ae162f45eb157008e62cbc756d6f23e4920..27db5dbfd05106788feda9daab9d1aaa
&no_javascript_access); &no_javascript_access);
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index c53ab4b96a16b7326dfde14452b20d2170aecf04..e500fe77f55836b3e5832536f98cf9581984b8c1 100644 index 9c0ef713978f40d8ddda6772004fc81f37eafb6f..d7bf74c206cedc628d0b92fff25c29393f6c9d95 100644
--- a/content/browser/web_contents/web_contents_impl.cc --- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc
@@ -5061,6 +5061,12 @@ FrameTree* WebContentsImpl::CreateNewWindow( @@ -5087,6 +5087,12 @@ FrameTree* WebContentsImpl::CreateNewWindow(
SetPartitionedPopinOpenerOnNewWindowIfNeeded(new_contents_impl, params, SetPartitionedPopinOpenerOnNewWindowIfNeeded(new_contents_impl, params,
opener); opener);
@ -37,7 +37,7 @@ index c53ab4b96a16b7326dfde14452b20d2170aecf04..e500fe77f55836b3e5832536f98cf958
// If the new frame has a name, make sure any SiteInstances that can find // 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 // this named frame have proxies for it. Must be called after
// SetSessionStorageNamespace, since this calls CreateRenderView, which uses // SetSessionStorageNamespace, since this calls CreateRenderView, which uses
@@ -5102,12 +5108,6 @@ FrameTree* WebContentsImpl::CreateNewWindow( @@ -5128,12 +5134,6 @@ FrameTree* WebContentsImpl::CreateNewWindow(
AddWebContentsDestructionObserver(new_contents_impl); AddWebContentsDestructionObserver(new_contents_impl);
} }
@ -51,10 +51,10 @@ index c53ab4b96a16b7326dfde14452b20d2170aecf04..e500fe77f55836b3e5832536f98cf958
new_contents_impl, opener, params.target_url, new_contents_impl, opener, params.target_url,
params.referrer.To<Referrer>(), params.disposition, params.referrer.To<Referrer>(), params.disposition,
diff --git a/content/common/frame.mojom b/content/common/frame.mojom diff --git a/content/common/frame.mojom b/content/common/frame.mojom
index 8f8f79733c956fed2469e51993bad29689c11d8a..17e953f46d479f431fa06d28857901cb844ff4ea 100644 index 55bb4ae3bab4cdf20b3e1dde9450a5c0e4e62b37..fe444c7fa140166a1b65c7a8a2676e2de7c4e0fc 100644
--- a/content/common/frame.mojom --- a/content/common/frame.mojom
+++ b/content/common/frame.mojom +++ b/content/common/frame.mojom
@@ -642,6 +642,10 @@ struct CreateNewWindowParams { @@ -646,6 +646,10 @@ struct CreateNewWindowParams {
pending_associated_remote<blink.mojom.Widget> widget; pending_associated_remote<blink.mojom.Widget> widget;
pending_associated_receiver<blink.mojom.FrameWidgetHost> frame_widget_host; pending_associated_receiver<blink.mojom.FrameWidgetHost> frame_widget_host;
pending_associated_remote<blink.mojom.FrameWidget> frame_widget; pending_associated_remote<blink.mojom.FrameWidget> frame_widget;
@ -66,10 +66,10 @@ index 8f8f79733c956fed2469e51993bad29689c11d8a..17e953f46d479f431fa06d28857901cb
// Operation result when the renderer asks the browser to create a new window. // 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 diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc
index f5b028759f86f382230867e6abf72a82051c02c3..f1110385258f057be3b456198b46e4d2c54ca718 100644 index c5b548159e64ef3b8d27e1d7e8147289064f6e8a..1c4dd9d0c16751f34d59088e68e23317b8d25437 100644
--- a/content/public/browser/content_browser_client.cc --- a/content/public/browser/content_browser_client.cc
+++ b/content/public/browser/content_browser_client.cc +++ b/content/public/browser/content_browser_client.cc
@@ -815,6 +815,8 @@ bool ContentBrowserClient::CanCreateWindow( @@ -820,6 +820,8 @@ bool ContentBrowserClient::CanCreateWindow(
const std::string& frame_name, const std::string& frame_name,
WindowOpenDisposition disposition, WindowOpenDisposition disposition,
const blink::mojom::WindowFeatures& features, const blink::mojom::WindowFeatures& features,
@ -79,7 +79,7 @@ index f5b028759f86f382230867e6abf72a82051c02c3..f1110385258f057be3b456198b46e4d2
bool opener_suppressed, bool opener_suppressed,
bool* no_javascript_access) { bool* no_javascript_access) {
diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h
index 1c7e6dc3b867c0e598f8517591ffb9aa8007bfea..7459b083156d1f6bc01198690c4c9ec02d88d862 100644 index 921a6a8f7ecbdd2e3fa8a9888e4a34f1b0cf7e09..7cfc3331a004fd52d9863a097271f4d892480933 100644
--- a/content/public/browser/content_browser_client.h --- a/content/public/browser/content_browser_client.h
+++ b/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h
@@ -198,6 +198,7 @@ class NetworkService; @@ -198,6 +198,7 @@ class NetworkService;
@ -90,7 +90,7 @@ index 1c7e6dc3b867c0e598f8517591ffb9aa8007bfea..7459b083156d1f6bc01198690c4c9ec0
} // namespace network } // namespace network
namespace sandbox { namespace sandbox {
@@ -1368,6 +1369,8 @@ class CONTENT_EXPORT ContentBrowserClient { @@ -1372,6 +1373,8 @@ class CONTENT_EXPORT ContentBrowserClient {
const std::string& frame_name, const std::string& frame_name,
WindowOpenDisposition disposition, WindowOpenDisposition disposition,
const blink::mojom::WindowFeatures& features, const blink::mojom::WindowFeatures& features,
@ -100,7 +100,7 @@ index 1c7e6dc3b867c0e598f8517591ffb9aa8007bfea..7459b083156d1f6bc01198690c4c9ec0
bool opener_suppressed, bool opener_suppressed,
bool* no_javascript_access); bool* no_javascript_access);
diff --git a/content/public/browser/web_contents_delegate.cc b/content/public/browser/web_contents_delegate.cc diff --git a/content/public/browser/web_contents_delegate.cc b/content/public/browser/web_contents_delegate.cc
index ac4deeb6acebf79987591756320e2406d74d7a1e..f688e6d1e6c11f0dd80f498e6361fa822e8c2eb8 100644 index b390356721fa226c348923f33601c4a1a2d9702d..97a3ea6f292563a41fd41f812ac72526a96d8471 100644
--- a/content/public/browser/web_contents_delegate.cc --- a/content/public/browser/web_contents_delegate.cc
+++ b/content/public/browser/web_contents_delegate.cc +++ b/content/public/browser/web_contents_delegate.cc
@@ -32,6 +32,17 @@ namespace content { @@ -32,6 +32,17 @@ namespace content {
@ -122,7 +122,7 @@ index ac4deeb6acebf79987591756320e2406d74d7a1e..f688e6d1e6c11f0dd80f498e6361fa82
WebContents* source, WebContents* source,
const OpenURLParams& params, const OpenURLParams& params,
diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h
index ac2e7cdceb13ce07966a908fab3ff8feff969484..96cb58b1a88499cf8f78d748dc5a1cc1c6b6a128 100644 index da319cb20733150366d85bee95609f0f2d9def7f..8a18958035cc1dd26be558349f64f7727570c4ba 100644
--- a/content/public/browser/web_contents_delegate.h --- a/content/public/browser/web_contents_delegate.h
+++ b/content/public/browser/web_contents_delegate.h +++ b/content/public/browser/web_contents_delegate.h
@@ -18,6 +18,7 @@ @@ -18,6 +18,7 @@
@ -133,7 +133,7 @@ index ac2e7cdceb13ce07966a908fab3ff8feff969484..96cb58b1a88499cf8f78d748dc5a1cc1
#include "content/public/browser/eye_dropper.h" #include "content/public/browser/eye_dropper.h"
#include "content/public/browser/fullscreen_types.h" #include "content/public/browser/fullscreen_types.h"
#include "content/public/browser/invalidate_type.h" #include "content/public/browser/invalidate_type.h"
@@ -375,6 +376,13 @@ class CONTENT_EXPORT WebContentsDelegate { @@ -376,6 +377,13 @@ class CONTENT_EXPORT WebContentsDelegate {
const StoragePartitionConfig& partition_config, const StoragePartitionConfig& partition_config,
SessionStorageNamespace* session_storage_namespace); SessionStorageNamespace* session_storage_namespace);
@ -148,10 +148,10 @@ index ac2e7cdceb13ce07966a908fab3ff8feff969484..96cb58b1a88499cf8f78d748dc5a1cc1
// typically happens when popups are created. // typically happens when popups are created.
virtual void WebContentsCreated(WebContents* source_contents, virtual void WebContentsCreated(WebContents* source_contents,
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
index 0e2524de1159d7e2628c66d188002c6a417bfa52..0fb92081a1bbfb14c0ddd74dfe91f94bb2be1d2a 100644 index 0755a49ee7558ee0c5e76f602c514bb8a7c3a019..4185aa3e07df8f2a3061d18e87f39cd5d79baead 100644
--- a/content/renderer/render_frame_impl.cc --- a/content/renderer/render_frame_impl.cc
+++ b/content/renderer/render_frame_impl.cc +++ b/content/renderer/render_frame_impl.cc
@@ -6924,6 +6924,10 @@ WebView* RenderFrameImpl::CreateNewWindow( @@ -6927,6 +6927,10 @@ WebView* RenderFrameImpl::CreateNewWindow(
request.HasUserGesture(), GetWebFrame()->IsAdFrame(), request.HasUserGesture(), GetWebFrame()->IsAdFrame(),
GetWebFrame()->IsAdScriptInStack()); GetWebFrame()->IsAdScriptInStack());
@ -210,10 +210,10 @@ index 82e9d3dfb5f7da76d89fe15ae61d379fa46e177d..fd035512099a54dff6cc951a2226c23a
} // namespace blink } // 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 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 70d107d7c99056e790d75755855b804ed1961a90..a0ed0e7cd27532dcf2c327874ae4573c70290ecd 100644 index f4a1ed78679c5efaea6494a4aa8b22fff31cba1b..afa637807b0a5bdef126031f219115ecee8d478d 100644
--- a/third_party/blink/renderer/core/frame/local_dom_window.cc --- a/third_party/blink/renderer/core/frame/local_dom_window.cc
+++ b/third_party/blink/renderer/core/frame/local_dom_window.cc +++ b/third_party/blink/renderer/core/frame/local_dom_window.cc
@@ -2270,6 +2270,8 @@ DOMWindow* LocalDOMWindow::open(v8::Isolate* isolate, @@ -2272,6 +2272,8 @@ DOMWindow* LocalDOMWindow::open(v8::Isolate* isolate,
WebWindowFeatures window_features = WebWindowFeatures window_features =
GetWindowFeaturesFromString(features, entered_window); GetWindowFeaturesFromString(features, entered_window);

View file

@ -7,7 +7,7 @@ This patch comes after Chromium removed the ScopedAllowIO API in favor
of explicitly adding ScopedAllowBlocking calls as friends. of explicitly adding ScopedAllowBlocking calls as friends.
diff --git a/base/threading/thread_restrictions.h b/base/threading/thread_restrictions.h diff --git a/base/threading/thread_restrictions.h b/base/threading/thread_restrictions.h
index 075e8173bcf1cfe420b87afe216bb06459a0d8bc..a300ed1e8c226f43fbfe6d82f72f9fb741fa342e 100644 index d97240a7b0dcf63737808850b6ef83852155b794..4a58b1f3e8c2bee32084be82977239e911598077 100644
--- a/base/threading/thread_restrictions.h --- a/base/threading/thread_restrictions.h
+++ b/base/threading/thread_restrictions.h +++ b/base/threading/thread_restrictions.h
@@ -132,6 +132,7 @@ class KeyStorageLinux; @@ -132,6 +132,7 @@ class KeyStorageLinux;
@ -28,7 +28,7 @@ index 075e8173bcf1cfe420b87afe216bb06459a0d8bc..a300ed1e8c226f43fbfe6d82f72f9fb7
namespace enterprise_connectors { namespace enterprise_connectors {
class LinuxKeyRotationCommand; class LinuxKeyRotationCommand;
} // namespace enterprise_connectors } // namespace enterprise_connectors
@@ -574,6 +578,7 @@ class BASE_EXPORT ScopedAllowBlocking { @@ -575,6 +579,7 @@ class BASE_EXPORT ScopedAllowBlocking {
friend class ::DesktopNotificationBalloon; friend class ::DesktopNotificationBalloon;
friend class ::FirefoxProfileLock; friend class ::FirefoxProfileLock;
friend class ::GaiaConfig; friend class ::GaiaConfig;
@ -36,7 +36,7 @@ index 075e8173bcf1cfe420b87afe216bb06459a0d8bc..a300ed1e8c226f43fbfe6d82f72f9fb7
friend class ::ProfileImpl; friend class ::ProfileImpl;
friend class ::ScopedAllowBlockingForProfile; friend class ::ScopedAllowBlockingForProfile;
friend class ::StartupTabProviderImpl; friend class ::StartupTabProviderImpl;
@@ -613,6 +618,7 @@ class BASE_EXPORT ScopedAllowBlocking { @@ -614,6 +619,7 @@ class BASE_EXPORT ScopedAllowBlocking {
friend class crypto::ScopedAllowBlockingForNSS; // http://crbug.com/59847 friend class crypto::ScopedAllowBlockingForNSS; // http://crbug.com/59847
friend class drive::FakeDriveService; friend class drive::FakeDriveService;
friend class extensions::DesktopAndroidExtensionSystem; friend class extensions::DesktopAndroidExtensionSystem;

View file

@ -34,10 +34,10 @@ index 39b5a8fdd165efd74b00256552b51b5413107958..bfc4ef4f50efff4a77f2aef64335bb7e
class ScrollEvent; 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 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 55c426aee12da4d4d1f62dc7d489133e8d21dc49..40c88bf14d2d4fe841e29b32414361688ae438e5 100644 index 19826b92b39c812a3170bfa470a08192b2a712bc..d97262cc28622de335bfe5a82c26779e9dccd586 100644
--- a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc --- a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
+++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc +++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
@@ -1362,6 +1362,10 @@ void DesktopWindowTreeHostWin::HandleHeadlessWindowBoundsChanged( @@ -1387,6 +1387,10 @@ void DesktopWindowTreeHostWin::HandleHeadlessWindowBoundsChanged(
window()->SetProperty(aura::client::kHeadlessBoundsKey, bounds); window()->SetProperty(aura::client::kHeadlessBoundsKey, bounds);
} }
@ -49,10 +49,10 @@ index 55c426aee12da4d4d1f62dc7d489133e8d21dc49..40c88bf14d2d4fe841e29b3241436168
DesktopWindowTreeHostWin::GetSingletonDesktopNativeCursorManager() { DesktopWindowTreeHostWin::GetSingletonDesktopNativeCursorManager() {
return new DesktopNativeCursorManagerWin(); 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 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 4865d79c95c34d8cead96d3bb8063a0e2bd6076b..ebfa09ed15dca98b75a013e3dcbb566ce84d7cb7 100644 index 2ee5e4b4673f4f18880dddecc48118c89823fd3f..37109b8d3d439073b5c9e2ea3597c36f32de5704 100644
--- a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.h --- a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.h
+++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.h +++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.h
@@ -267,6 +267,7 @@ class VIEWS_EXPORT DesktopWindowTreeHostWin : public DesktopWindowTreeHost, @@ -268,6 +268,7 @@ class VIEWS_EXPORT DesktopWindowTreeHostWin : public DesktopWindowTreeHost,
void HandleWindowSizeUnchanged() override; void HandleWindowSizeUnchanged() override;
void HandleWindowScaleFactorChanged(float window_scale_factor) override; void HandleWindowScaleFactorChanged(float window_scale_factor) override;
void HandleHeadlessWindowBoundsChanged(const gfx::Rect& bounds) override; void HandleHeadlessWindowBoundsChanged(const gfx::Rect& bounds) override;
@ -61,10 +61,10 @@ index 4865d79c95c34d8cead96d3bb8063a0e2bd6076b..ebfa09ed15dca98b75a013e3dcbb566c
// Overridden from WidgetObserver. // Overridden from WidgetObserver.
void OnWidgetThemeChanged(Widget* widget) override; void OnWidgetThemeChanged(Widget* widget) override;
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc
index 3a60e310d1c4048f0e37e085c97b8dfc093aefda..8fe48c9bef144218e34434d563883b15733d03bc 100644 index 1cf98eadc8cbc1ada481c709a873dc1dd443de66..cec234006cbcacff953ce9ff4175006b057aa341 100644
--- a/ui/views/win/hwnd_message_handler.cc --- a/ui/views/win/hwnd_message_handler.cc
+++ b/ui/views/win/hwnd_message_handler.cc +++ b/ui/views/win/hwnd_message_handler.cc
@@ -3156,15 +3156,19 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message, @@ -3177,15 +3177,19 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message,
} }
// We must let Windows handle the caption buttons if it's drawing them, or // We must let Windows handle the caption buttons if it's drawing them, or
// they won't work. // they won't work.
@ -86,7 +86,7 @@ index 3a60e310d1c4048f0e37e085c97b8dfc093aefda..8fe48c9bef144218e34434d563883b15
return 0; return 0;
} }
} }
@@ -3187,6 +3191,7 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message, @@ -3208,6 +3212,7 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message,
// handle alt-space, or in the frame itself. // handle alt-space, or in the frame itself.
is_right_mouse_pressed_on_caption_ = false; is_right_mouse_pressed_on_caption_ = false;
ReleaseCapture(); ReleaseCapture();
@ -94,7 +94,7 @@ index 3a60e310d1c4048f0e37e085c97b8dfc093aefda..8fe48c9bef144218e34434d563883b15
// |point| is in window coordinates, but WM_NCHITTEST and TrackPopupMenu() // |point| is in window coordinates, but WM_NCHITTEST and TrackPopupMenu()
// expect screen coordinates. // expect screen coordinates.
POINT screen_point = CR_POINT_INITIALIZER_FROM_LPARAM(l_param); POINT screen_point = CR_POINT_INITIALIZER_FROM_LPARAM(l_param);
@@ -3194,7 +3199,17 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message, @@ -3215,7 +3220,17 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message,
w_param = static_cast<WPARAM>(SendMessage( w_param = static_cast<WPARAM>(SendMessage(
hwnd(), WM_NCHITTEST, 0, MAKELPARAM(screen_point.x, screen_point.y))); hwnd(), WM_NCHITTEST, 0, MAKELPARAM(screen_point.x, screen_point.y)));
if (w_param == HTCAPTION || w_param == HTSYSMENU) { if (w_param == HTCAPTION || w_param == HTSYSMENU) {
@ -114,7 +114,7 @@ index 3a60e310d1c4048f0e37e085c97b8dfc093aefda..8fe48c9bef144218e34434d563883b15
} }
} else if (message == WM_NCLBUTTONDOWN && } else if (message == WM_NCLBUTTONDOWN &&
diff --git a/ui/views/win/hwnd_message_handler_delegate.h b/ui/views/win/hwnd_message_handler_delegate.h diff --git a/ui/views/win/hwnd_message_handler_delegate.h b/ui/views/win/hwnd_message_handler_delegate.h
index de8fd5657e6885f74a5970bdd49647a6f1616387..4af87792edc7a147468077b834582510550e35e6 100644 index 83c26bf2b4bc11c0e3d839093eea56eed1bf581b..075e456e851bbde2b0174ca0cc34428cc32b6966 100644
--- a/ui/views/win/hwnd_message_handler_delegate.h --- a/ui/views/win/hwnd_message_handler_delegate.h
+++ b/ui/views/win/hwnd_message_handler_delegate.h +++ b/ui/views/win/hwnd_message_handler_delegate.h
@@ -255,6 +255,10 @@ class VIEWS_EXPORT HWNDMessageHandlerDelegate { @@ -255,6 +255,10 @@ class VIEWS_EXPORT HWNDMessageHandlerDelegate {

View file

@ -14,10 +14,10 @@ track down the source of this problem & figure out if we can fix it
by changing something in Electron. 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 diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 6010d9f9fc9bfeffb3e5a64de7352b52a202cbf7..4325cdfd256ae7a1008e073d42da995b82df5bba 100644 index 51355738262d80afaf1f319b5d90c8a74d435ffd..2a17aa6a3f687d60a7ca0e839e59f637819a9376 100644
--- a/content/browser/web_contents/web_contents_impl.cc --- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc
@@ -4980,7 +4980,7 @@ FrameTree* WebContentsImpl::CreateNewWindow( @@ -5006,7 +5006,7 @@ FrameTree* WebContentsImpl::CreateNewWindow(
: IsGuest(); : IsGuest();
// While some guest types do not have a guest SiteInstance, the ones that // While some guest types do not have a guest SiteInstance, the ones that
// don't all override WebContents creation above. // don't all override WebContents creation above.

View file

@ -9,7 +9,7 @@ Electron does not support Profiles, so this Profile::FromBrowserContext()
call is not needed and will not link. This change patches it out. call is not needed and will not link. This change patches it out.
diff --git a/chrome/browser/pdf/chrome_pdf_stream_delegate.cc b/chrome/browser/pdf/chrome_pdf_stream_delegate.cc diff --git a/chrome/browser/pdf/chrome_pdf_stream_delegate.cc b/chrome/browser/pdf/chrome_pdf_stream_delegate.cc
index 9774ed3e55c0d78f21bb0cb0b2607cc07eaf78e0..f58c3946130fa469f2775d8bae773e5bbfc71a96 100644 index e3b9f14a4cf2167064ce6716053e663adffa1542..65f13a4607c8145858fd47d81cb9960c44272d79 100644
--- a/chrome/browser/pdf/chrome_pdf_stream_delegate.cc --- a/chrome/browser/pdf/chrome_pdf_stream_delegate.cc
+++ b/chrome/browser/pdf/chrome_pdf_stream_delegate.cc +++ b/chrome/browser/pdf/chrome_pdf_stream_delegate.cc
@@ -45,6 +45,7 @@ namespace { @@ -45,6 +45,7 @@ namespace {

View file

@ -80,10 +80,10 @@ index 4fd8dff1089cd6afa6a66dc185734d7671657281..0a1f4268ea771a3d5d4a2668928c6e5d
content::WebContents* source, content::WebContents* source,
const content::OpenURLParams& params, const content::OpenURLParams& params,
diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc
index 8232c0081baaeb3df9f2f6224f8fe31a2dcb1d5b..081c01bc00dfdef66c23a9ef640ed159f4f7557b 100644 index 9ccf763fcbc717480c4dfce735f273dfdbf5cd4a..381cda59465f34a46f55d03ef6ccd53fadec6e6e 100644
--- a/chrome/browser/ui/browser.cc --- a/chrome/browser/ui/browser.cc
+++ b/chrome/browser/ui/browser.cc +++ b/chrome/browser/ui/browser.cc
@@ -2264,12 +2264,11 @@ bool Browser::IsWebContentsCreationOverridden( @@ -2267,12 +2267,11 @@ bool Browser::IsWebContentsCreationOverridden(
content::SiteInstance* source_site_instance, content::SiteInstance* source_site_instance,
content::mojom::WindowContainerType window_container_type, content::mojom::WindowContainerType window_container_type,
const GURL& opener_url, const GURL& opener_url,
@ -99,10 +99,10 @@ index 8232c0081baaeb3df9f2f6224f8fe31a2dcb1d5b..081c01bc00dfdef66c23a9ef640ed159
WebContents* Browser::CreateCustomWebContents( WebContents* Browser::CreateCustomWebContents(
diff --git a/chrome/browser/ui/browser.h b/chrome/browser/ui/browser.h diff --git a/chrome/browser/ui/browser.h b/chrome/browser/ui/browser.h
index 7a61c64db93db7f3b31b8d39897257a6315383c2..7db684020fbaf7061ed61a8b1cefba8c757f2fe5 100644 index 288d4f6d7dfdcf7e518f78990f061f4215f1b975..3d8899e313906a0d3a273d43cab872243fa6faea 100644
--- a/chrome/browser/ui/browser.h --- a/chrome/browser/ui/browser.h
+++ b/chrome/browser/ui/browser.h +++ b/chrome/browser/ui/browser.h
@@ -981,8 +981,7 @@ class Browser : public TabStripModelObserver, @@ -983,8 +983,7 @@ class Browser : public TabStripModelObserver,
content::SiteInstance* source_site_instance, content::SiteInstance* source_site_instance,
content::mojom::WindowContainerType window_container_type, content::mojom::WindowContainerType window_container_type,
const GURL& opener_url, const GURL& opener_url,
@ -218,10 +218,10 @@ index c6838c83ef971b88769b1f3fba8095025ae25464..2da6a4e08340e72ba7de5d03444c2f17
content::WebContents* AddNewContents( content::WebContents* AddNewContents(
content::WebContents* source, content::WebContents* source,
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 952fd20f71560acd89c74f08e9d8cdbf34fb5a1a..59b05937ceb1b81b69d913f587150021b9031106 100644 index 30593ec9ecd2b135a6054ed50e95c849c09b47bd..b6870d74a761a847e9952d409b37ddb778790b08 100644
--- a/content/browser/web_contents/web_contents_impl.cc --- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc
@@ -4943,8 +4943,7 @@ FrameTree* WebContentsImpl::CreateNewWindow( @@ -4969,8 +4969,7 @@ FrameTree* WebContentsImpl::CreateNewWindow(
// TODO(crbug.com/40202416): Support a way for MPArch guests to support this. // TODO(crbug.com/40202416): Support a way for MPArch guests to support this.
if (delegate_ && delegate_->IsWebContentsCreationOverridden( if (delegate_ && delegate_->IsWebContentsCreationOverridden(
source_site_instance, params.window_container_type, source_site_instance, params.window_container_type,
@ -232,7 +232,7 @@ index 952fd20f71560acd89c74f08e9d8cdbf34fb5a1a..59b05937ceb1b81b69d913f587150021
static_cast<WebContentsImpl*>(delegate_->CreateCustomWebContents( static_cast<WebContentsImpl*>(delegate_->CreateCustomWebContents(
opener, source_site_instance, is_new_browsing_instance, opener, source_site_instance, is_new_browsing_instance,
diff --git a/content/public/browser/web_contents_delegate.cc b/content/public/browser/web_contents_delegate.cc diff --git a/content/public/browser/web_contents_delegate.cc b/content/public/browser/web_contents_delegate.cc
index f688e6d1e6c11f0dd80f498e6361fa822e8c2eb8..dc47ebfd61f16901b7f8e0e4c30c79eaf5d0710e 100644 index 97a3ea6f292563a41fd41f812ac72526a96d8471..b299dd5659100d317a3574e902bf2c29c5defd2c 100644
--- a/content/public/browser/web_contents_delegate.cc --- a/content/public/browser/web_contents_delegate.cc
+++ b/content/public/browser/web_contents_delegate.cc +++ b/content/public/browser/web_contents_delegate.cc
@@ -159,8 +159,7 @@ bool WebContentsDelegate::IsWebContentsCreationOverridden( @@ -159,8 +159,7 @@ bool WebContentsDelegate::IsWebContentsCreationOverridden(
@ -246,10 +246,10 @@ index f688e6d1e6c11f0dd80f498e6361fa822e8c2eb8..dc47ebfd61f16901b7f8e0e4c30c79ea
} }
diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h
index 96cb58b1a88499cf8f78d748dc5a1cc1c6b6a128..8ff56b56da764c8af14c40babc529ee4cb089c7e 100644 index 8a18958035cc1dd26be558349f64f7727570c4ba..7d9c9b06bcc57ef5eb0a2ca74ee20632a1393f9e 100644
--- a/content/public/browser/web_contents_delegate.h --- a/content/public/browser/web_contents_delegate.h
+++ b/content/public/browser/web_contents_delegate.h +++ b/content/public/browser/web_contents_delegate.h
@@ -354,8 +354,7 @@ class CONTENT_EXPORT WebContentsDelegate { @@ -355,8 +355,7 @@ class CONTENT_EXPORT WebContentsDelegate {
SiteInstance* source_site_instance, SiteInstance* source_site_instance,
mojom::WindowContainerType window_container_type, mojom::WindowContainerType window_container_type,
const GURL& opener_url, const GURL& opener_url,
@ -324,7 +324,7 @@ index e39031afd8fff7cb6e278555cc58a48d86407d65..f67f6a5603c1fa9e66ccdde9b601df9a
content::RenderFrameHost* opener, content::RenderFrameHost* opener,
content::SiteInstance* source_site_instance, content::SiteInstance* source_site_instance,
diff --git a/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc b/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc diff --git a/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc b/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc
index 16babdc7affdaef1af24850cf35494b8b4fe1479..1e77b091d94457c892788f7a441a83e7a96a49cc 100644 index 60de0d74ee40fedcbae96e5049e21dc238bf33bf..c568d4d08f772e1d381820bed826a0b64a631449 100644
--- a/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc --- a/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc
+++ b/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc +++ b/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc
@@ -452,8 +452,7 @@ bool MimeHandlerViewGuest::IsWebContentsCreationOverridden( @@ -452,8 +452,7 @@ bool MimeHandlerViewGuest::IsWebContentsCreationOverridden(
@ -380,7 +380,7 @@ index 1012a909ef1fcae51c218ae519fe7e0db65ab087..127b1ae940bc9313aecb635e2b01bb6f
int opener_render_process_id, int opener_render_process_id,
int opener_render_frame_id, int opener_render_frame_id,
diff --git a/headless/lib/browser/headless_web_contents_impl.cc b/headless/lib/browser/headless_web_contents_impl.cc diff --git a/headless/lib/browser/headless_web_contents_impl.cc b/headless/lib/browser/headless_web_contents_impl.cc
index 62be493c74423875af45a92c98b2ffceb928189f..ec82d8e47bf0a33f832b8ca242f395fe59a1bbee 100644 index 7ca1e83ba1fd2dc5ea7c7ce644c3b7c54b9999f9..c1639653714d6973bcb5a0b37cb7028db8406742 100644
--- a/headless/lib/browser/headless_web_contents_impl.cc --- a/headless/lib/browser/headless_web_contents_impl.cc
+++ b/headless/lib/browser/headless_web_contents_impl.cc +++ b/headless/lib/browser/headless_web_contents_impl.cc
@@ -206,8 +206,7 @@ class HeadlessWebContentsImpl::Delegate : public content::WebContentsDelegate { @@ -206,8 +206,7 @@ class HeadlessWebContentsImpl::Delegate : public content::WebContentsDelegate {

View file

@ -7,10 +7,10 @@ By default, chromium sets up one v8 snapshot to be used in all v8 contexts. This
to have a dedicated browser process v8 snapshot defined by the file `browser_v8_context_snapshot.bin`. to have a dedicated browser process v8 snapshot defined by the file `browser_v8_context_snapshot.bin`.
diff --git a/content/app/content_main_runner_impl.cc b/content/app/content_main_runner_impl.cc diff --git a/content/app/content_main_runner_impl.cc b/content/app/content_main_runner_impl.cc
index 054f38d683280638c7ac618d2ff8f7aef1a0def0..6e9d8d9a043cf8b67e26f70b3a904abcfc3c1a61 100644 index 2474e8c608956bcf50e0c7204d728854fe498d31..32f3a69ea003d7c6a1f6a15622ff2acb9b5a063b 100644
--- a/content/app/content_main_runner_impl.cc --- a/content/app/content_main_runner_impl.cc
+++ b/content/app/content_main_runner_impl.cc +++ b/content/app/content_main_runner_impl.cc
@@ -271,8 +271,13 @@ void AsanProcessInfoCB(const char*, bool*) { @@ -272,8 +272,13 @@ void AsanProcessInfoCB(const char*, bool*) {
} }
#endif // defined(ADDRESS_SANITIZER) #endif // defined(ADDRESS_SANITIZER)
@ -25,7 +25,7 @@ index 054f38d683280638c7ac618d2ff8f7aef1a0def0..6e9d8d9a043cf8b67e26f70b3a904abc
#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) #if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC)
base::FileDescriptorStore& file_descriptor_store = base::FileDescriptorStore& file_descriptor_store =
base::FileDescriptorStore::GetInstance(); base::FileDescriptorStore::GetInstance();
@@ -301,11 +306,12 @@ bool ShouldLoadV8Snapshot(const base::CommandLine& command_line, @@ -302,11 +307,12 @@ bool ShouldLoadV8Snapshot(const base::CommandLine& command_line,
#endif // V8_USE_EXTERNAL_STARTUP_DATA #endif // V8_USE_EXTERNAL_STARTUP_DATA
@ -40,7 +40,7 @@ index 054f38d683280638c7ac618d2ff8f7aef1a0def0..6e9d8d9a043cf8b67e26f70b3a904abc
#endif // V8_USE_EXTERNAL_STARTUP_DATA #endif // V8_USE_EXTERNAL_STARTUP_DATA
} }
@@ -978,7 +984,7 @@ int ContentMainRunnerImpl::Initialize(ContentMainParams params) { @@ -979,7 +985,7 @@ int ContentMainRunnerImpl::Initialize(ContentMainParams params) {
return TerminateForFatalInitializationError(); return TerminateForFatalInitializationError();
#endif // BUILDFLAG(IS_ANDROID) && (ICU_UTIL_DATA_IMPL == ICU_UTIL_DATA_FILE) #endif // BUILDFLAG(IS_ANDROID) && (ICU_UTIL_DATA_IMPL == ICU_UTIL_DATA_FILE)
@ -50,19 +50,18 @@ index 054f38d683280638c7ac618d2ff8f7aef1a0def0..6e9d8d9a043cf8b67e26f70b3a904abc
blink::TrialTokenValidator::SetOriginTrialPolicyGetter( blink::TrialTokenValidator::SetOriginTrialPolicyGetter(
base::BindRepeating([]() -> blink::OriginTrialPolicy* { base::BindRepeating([]() -> blink::OriginTrialPolicy* {
diff --git a/content/public/app/content_main_delegate.cc b/content/public/app/content_main_delegate.cc diff --git a/content/public/app/content_main_delegate.cc b/content/public/app/content_main_delegate.cc
index 8194fc8b036482eedb162ff92bb82165cdf3c8d0..f038620516d7783170bc82b3b14dde4e01f3975d 100644 index 8b02f553e2fc29da88c3e14c05a7ee82210eab51..14f2e66d5ecda6e860724a3ab946eaaffba33d6d 100644
--- a/content/public/app/content_main_delegate.cc --- a/content/public/app/content_main_delegate.cc
+++ b/content/public/app/content_main_delegate.cc +++ b/content/public/app/content_main_delegate.cc
@@ -4,6 +4,8 @@ @@ -5,6 +5,7 @@
#include "content/public/app/content_main_delegate.h" #include "content/public/app/content_main_delegate.h"
#include <variant>
+#include <string_view> +#include <string_view>
+
#include "base/check.h" #include "base/check.h"
#include "base/notreached.h" #include "base/notreached.h"
#include "build/build_config.h" @@ -74,6 +75,10 @@ std::optional<int> ContentMainDelegate::PostEarlyInitialization(
@@ -72,6 +74,10 @@ std::optional<int> ContentMainDelegate::PostEarlyInitialization(
return std::nullopt; return std::nullopt;
} }
@ -74,13 +73,13 @@ index 8194fc8b036482eedb162ff92bb82165cdf3c8d0..f038620516d7783170bc82b3b14dde4e
return new ContentClient(); return new ContentClient();
} }
diff --git a/content/public/app/content_main_delegate.h b/content/public/app/content_main_delegate.h diff --git a/content/public/app/content_main_delegate.h b/content/public/app/content_main_delegate.h
index 801bfd401ea4a8e72417d88efaa718cc6fb60883..663fec68d0c2855cdf83bb259b85c22910a67464 100644 index db611d99a6c0f18f39967b38791822fda7d175b5..cc150475de655d5ef20a107ae3ef80c08af8c7fb 100644
--- a/content/public/app/content_main_delegate.h --- a/content/public/app/content_main_delegate.h
+++ b/content/public/app/content_main_delegate.h +++ b/content/public/app/content_main_delegate.h
@@ -8,6 +8,7 @@ @@ -9,6 +9,7 @@
#include <memory>
#include <optional> #include <optional>
#include <string> #include <string>
#include <variant>
+#include <string_view> +#include <string_view>
#include <vector> #include <vector>
@ -95,10 +94,10 @@ index 801bfd401ea4a8e72417d88efaa718cc6fb60883..663fec68d0c2855cdf83bb259b85c229
friend class ContentClientCreator; friend class ContentClientCreator;
friend class ContentClientInitializer; friend class ContentClientInitializer;
diff --git a/gin/v8_initializer.cc b/gin/v8_initializer.cc diff --git a/gin/v8_initializer.cc b/gin/v8_initializer.cc
index 578e200a88d89b356e991b3317ff1e71f25ff75e..ae49b7b5e830a7127812219df1c8888b7ba4b348 100644 index 11cafc3e1588cce52b76cc2f09f66b3e451fb087..e07bdaeccecc8015462e35d5cf4606335e2e962c 100644
--- a/gin/v8_initializer.cc --- a/gin/v8_initializer.cc
+++ b/gin/v8_initializer.cc +++ b/gin/v8_initializer.cc
@@ -672,8 +672,7 @@ void V8Initializer::GetV8ExternalSnapshotData(const char** snapshot_data_out, @@ -660,8 +660,7 @@ void V8Initializer::GetV8ExternalSnapshotData(const char** snapshot_data_out,
#if defined(V8_USE_EXTERNAL_STARTUP_DATA) #if defined(V8_USE_EXTERNAL_STARTUP_DATA)
@ -108,7 +107,7 @@ index 578e200a88d89b356e991b3317ff1e71f25ff75e..ae49b7b5e830a7127812219df1c8888b
if (g_mapped_snapshot) { if (g_mapped_snapshot) {
// TODO(crbug.com/40558459): Confirm not loading different type of snapshot // TODO(crbug.com/40558459): Confirm not loading different type of snapshot
// files in a process. // files in a process.
@@ -682,10 +681,17 @@ void V8Initializer::LoadV8Snapshot(V8SnapshotFileType snapshot_file_type) { @@ -670,10 +669,17 @@ void V8Initializer::LoadV8Snapshot(V8SnapshotFileType snapshot_file_type) {
base::MemoryMappedFile::Region file_region; base::MemoryMappedFile::Region file_region;
base::File file = base::File file =

View file

@ -6,10 +6,10 @@ Subject: fix: disabling compositor recycling
Compositor recycling is useful for Chrome because there can be many tabs and spinning up a compositor for each one would be costly. In practice, Chrome uses the parent compositor code path of browser_compositor_view_mac.mm; the NSView of each tab is detached when it's hidden and attached when it's shown. For Electron, there is no parent compositor, so we're forced into the "own compositor" code path, which seems to be non-optimal and pretty ruthless in terms of the release of resources. Electron has no real concept of multiple tabs per window, so it should be okay to disable this ruthless recycling altogether in Electron. Compositor recycling is useful for Chrome because there can be many tabs and spinning up a compositor for each one would be costly. In practice, Chrome uses the parent compositor code path of browser_compositor_view_mac.mm; the NSView of each tab is detached when it's hidden and attached when it's shown. For Electron, there is no parent compositor, so we're forced into the "own compositor" code path, which seems to be non-optimal and pretty ruthless in terms of the release of resources. Electron has no real concept of multiple tabs per window, so it should be okay to disable this ruthless recycling altogether in Electron.
diff --git a/content/browser/renderer_host/render_widget_host_view_mac.mm b/content/browser/renderer_host/render_widget_host_view_mac.mm diff --git a/content/browser/renderer_host/render_widget_host_view_mac.mm b/content/browser/renderer_host/render_widget_host_view_mac.mm
index 71db145609652dbbe733dbc96d2630b686f6c8c9..6aa0fd5422ee0057acc3e5c423ca2847a4ebb17e 100644 index 1a726fb4a9e8173dc7da6901eb1632c7f326358e..ae8a4117db2f6bac1d62981e7c0e35cf1eee68da 100644
--- a/content/browser/renderer_host/render_widget_host_view_mac.mm --- a/content/browser/renderer_host/render_widget_host_view_mac.mm
+++ b/content/browser/renderer_host/render_widget_host_view_mac.mm +++ b/content/browser/renderer_host/render_widget_host_view_mac.mm
@@ -560,7 +560,11 @@ @@ -561,7 +561,11 @@
return; return;
host()->WasHidden(); host()->WasHidden();

View file

@ -6,7 +6,7 @@ Subject: disable_hidden.patch
Electron uses this to disable background throttling for hidden windows. 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 diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc
index 22ffafd8f5e0f49d5c9df7ecd3f61dad3dfd2814..a409c64768968c81be3b6c7e7646f8df26e2afe6 100644 index 573269ba54150d5350e5c3589217c5e7f41d560d..20fcda4eb20459b69247003c51c2a3ed37c7b1e8 100644
--- a/content/browser/renderer_host/render_widget_host_impl.cc --- a/content/browser/renderer_host/render_widget_host_impl.cc
+++ b/content/browser/renderer_host/render_widget_host_impl.cc +++ b/content/browser/renderer_host/render_widget_host_impl.cc
@@ -832,6 +832,10 @@ void RenderWidgetHostImpl::WasHidden() { @@ -832,6 +832,10 @@ void RenderWidgetHostImpl::WasHidden() {
@ -35,7 +35,7 @@ index c201cff9e5c3b286389a5eb74e1a9ebd86edfef9..949f6a7867758e35c24897add9a4d47a
// |routing_id| must not be MSG_ROUTING_NONE. // |routing_id| must not be MSG_ROUTING_NONE.
// If this object outlives |delegate|, DetachDelegate() must be called when // If this object outlives |delegate|, DetachDelegate() must be called when
diff --git a/content/browser/renderer_host/render_widget_host_view_aura.cc b/content/browser/renderer_host/render_widget_host_view_aura.cc diff --git a/content/browser/renderer_host/render_widget_host_view_aura.cc b/content/browser/renderer_host/render_widget_host_view_aura.cc
index 70f368ab0c59e7f495cb13094160d72f601e0938..19d2df47b0c929558ac8cfc208742dfef463a68b 100644 index 5867fc3e77326991f30d835d08d3cfafe2b6687c..d719b546b8c3c59003698b26dead065da7d76341 100644
--- a/content/browser/renderer_host/render_widget_host_view_aura.cc --- a/content/browser/renderer_host/render_widget_host_view_aura.cc
+++ b/content/browser/renderer_host/render_widget_host_view_aura.cc +++ b/content/browser/renderer_host/render_widget_host_view_aura.cc
@@ -643,7 +643,7 @@ void RenderWidgetHostViewAura::HideImpl() { @@ -643,7 +643,7 @@ void RenderWidgetHostViewAura::HideImpl() {

View file

@ -6,7 +6,7 @@ Subject: feat: enable setting aspect ratio to 0
Make SetAspectRatio accept 0 as valid input, which would reset to null. 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 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 24f63e82a1a170b392bdc8e868729ddd5f9238fa..55c426aee12da4d4d1f62dc7d489133e8d21dc49 100644 index 65e4957aa08923200923f91cadcf47eb403bb8a8..19826b92b39c812a3170bfa470a08192b2a712bc 100644
--- a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc --- a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
+++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc +++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
@@ -637,7 +637,7 @@ void DesktopWindowTreeHostWin::SetOpacity(float opacity) { @@ -637,7 +637,7 @@ void DesktopWindowTreeHostWin::SetOpacity(float opacity) {
@ -19,10 +19,10 @@ index 24f63e82a1a170b392bdc8e868729ddd5f9238fa..55c426aee12da4d4d1f62dc7d489133e
excluded_margin); excluded_margin);
} }
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc
index 8d5002fab43ccfcaccdb044fc9b2a95748e71b75..adade58a533c373087d8c51a5744e8f118ba6e9d 100644 index a0e6a63f7b2da396ba5d300a9eb6ab94825f677a..539f5920661010139dc69afb3ff7dd4c9bae762a 100644
--- a/ui/views/win/hwnd_message_handler.cc --- a/ui/views/win/hwnd_message_handler.cc
+++ b/ui/views/win/hwnd_message_handler.cc +++ b/ui/views/win/hwnd_message_handler.cc
@@ -997,8 +997,11 @@ void HWNDMessageHandler::SetFullscreen(bool fullscreen, @@ -1008,8 +1008,11 @@ void HWNDMessageHandler::SetFullscreen(bool fullscreen,
void HWNDMessageHandler::SetAspectRatio(float aspect_ratio, void HWNDMessageHandler::SetAspectRatio(float aspect_ratio,
const gfx::Size& excluded_margin) { const gfx::Size& excluded_margin) {

View file

@ -9,7 +9,7 @@ correctly tagged with MAP_JIT we need to use gins page allocator instead
of the default V8 allocator. This probably can't be usptreamed. of the default V8 allocator. This probably can't be usptreamed.
diff --git a/gin/public/v8_platform.h b/gin/public/v8_platform.h diff --git a/gin/public/v8_platform.h b/gin/public/v8_platform.h
index c34f34146d0aab681318b64ac33081bdc21ce7d6..11cdf6c34d8f79fcf293f59785e586dc8363b983 100644 index 9dac402705385087ced2df2db757a07246984a94..cb49b4f085026658e920699ed285d524119d6aad 100644
--- a/gin/public/v8_platform.h --- a/gin/public/v8_platform.h
+++ b/gin/public/v8_platform.h +++ b/gin/public/v8_platform.h
@@ -32,6 +32,7 @@ class GIN_EXPORT V8Platform : public v8::Platform { @@ -32,6 +32,7 @@ class GIN_EXPORT V8Platform : public v8::Platform {
@ -21,10 +21,10 @@ index c34f34146d0aab681318b64ac33081bdc21ce7d6..11cdf6c34d8f79fcf293f59785e586dc
ThreadIsolatedAllocator* GetThreadIsolatedAllocator() override; ThreadIsolatedAllocator* GetThreadIsolatedAllocator() override;
#endif #endif
diff --git a/gin/v8_platform.cc b/gin/v8_platform.cc diff --git a/gin/v8_platform.cc b/gin/v8_platform.cc
index fa799a4cc32950ce03c154bc7791341d96a17f67..b8ec81b79b6129a7e26a2ffecf535fdedea8ed6c 100644 index 698b29e9c31a2695cac30bf85c97a216ff8a6257..dbc38d0d87803496ce122da62e639f2a0334e0f6 100644
--- a/gin/v8_platform.cc --- a/gin/v8_platform.cc
+++ b/gin/v8_platform.cc +++ b/gin/v8_platform.cc
@@ -204,6 +204,10 @@ ThreadIsolatedAllocator* V8Platform::GetThreadIsolatedAllocator() { @@ -205,6 +205,10 @@ ThreadIsolatedAllocator* V8Platform::GetThreadIsolatedAllocator() {
} }
#endif // PA_BUILDFLAG(ENABLE_THREAD_ISOLATION) #endif // PA_BUILDFLAG(ENABLE_THREAD_ISOLATION)

View file

@ -33,7 +33,7 @@ index 0ab8187b0db8ae6db46d81738f653a2bc4c566f6..de3d55e85c22317f7f9375eb94d0d5d4
} // namespace net } // namespace net
diff --git a/services/network/network_context.cc b/services/network/network_context.cc diff --git a/services/network/network_context.cc b/services/network/network_context.cc
index b1df0a09a9bfd226ffe7b37144e6599b099e619e..f8c7bc591552fea25b4a8e0edd7a3823b00e6b06 100644 index ee56aab6831be256390b88e65a2a949c591bbd31..60c6977d2ffd0da0286e25e5645c11c19d6ab376 100644
--- a/services/network/network_context.cc --- a/services/network/network_context.cc
+++ b/services/network/network_context.cc +++ b/services/network/network_context.cc
@@ -1814,6 +1814,13 @@ void NetworkContext::SetNetworkConditions( @@ -1814,6 +1814,13 @@ void NetworkContext::SetNetworkConditions(
@ -63,10 +63,10 @@ index 930e0bd987c48d111b2c8d71147c09e4418bda6c..9373a53c5cac879c689fcea77f1dbbb3
void SetEnableReferrers(bool enable_referrers) override; void SetEnableReferrers(bool enable_referrers) override;
#if BUILDFLAG(IS_CT_SUPPORTED) #if BUILDFLAG(IS_CT_SUPPORTED)
diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom
index cf4d2dcf86b6536c37d46875f74517e478b34928..b19976926137cae56094ec6e292a5014c2fd546b 100644 index 6d79f4a4cb1a40be907ef52e35f0e5a0acab31fb..95ff46a7ca2654166d18027b986f6ec6c2a3d361 100644
--- a/services/network/public/mojom/network_context.mojom --- a/services/network/public/mojom/network_context.mojom
+++ b/services/network/public/mojom/network_context.mojom +++ b/services/network/public/mojom/network_context.mojom
@@ -1267,6 +1267,9 @@ interface NetworkContext { @@ -1275,6 +1275,9 @@ interface NetworkContext {
SetNetworkConditions(mojo_base.mojom.UnguessableToken throttling_profile_id, SetNetworkConditions(mojo_base.mojom.UnguessableToken throttling_profile_id,
NetworkConditions? conditions); NetworkConditions? conditions);

View file

@ -12,10 +12,10 @@ Ideally we could add an embedder observer pattern here but that can be
done in future work. 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 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 10c3795839969bde6a747da67d5cc7caa44a7179..9810991e0a5d8b931a70e056b6651b8e5fdb9881 100644 index fbfc0af8a6f29da9ee2d5fd6ae5a02958a7e3a81..cf80d64963a2a25afbaa6060b4dfda425638858b 100644
--- a/third_party/blink/renderer/core/exported/web_view_impl.cc --- a/third_party/blink/renderer/core/exported/web_view_impl.cc
+++ b/third_party/blink/renderer/core/exported/web_view_impl.cc +++ b/third_party/blink/renderer/core/exported/web_view_impl.cc
@@ -169,6 +169,7 @@ @@ -170,6 +170,7 @@
#include "third_party/blink/renderer/core/view_transition/view_transition_supplement.h" #include "third_party/blink/renderer/core/view_transition/view_transition_supplement.h"
#include "third_party/blink/renderer/platform/fonts/font_cache.h" #include "third_party/blink/renderer/platform/fonts/font_cache.h"
#include "third_party/blink/renderer/platform/fonts/generic_font_family_settings.h" #include "third_party/blink/renderer/platform/fonts/generic_font_family_settings.h"
@ -23,7 +23,7 @@ index 10c3795839969bde6a747da67d5cc7caa44a7179..9810991e0a5d8b931a70e056b6651b8e
#include "third_party/blink/renderer/platform/graphics/image.h" #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/cull_rect.h"
#include "third_party/blink/renderer/platform/graphics/paint/paint_record_builder.h" #include "third_party/blink/renderer/platform/graphics/paint/paint_record_builder.h"
@@ -1859,6 +1860,7 @@ void WebView::ApplyWebPreferences(const web_pref::WebPreferences& prefs, @@ -1860,6 +1861,7 @@ void WebView::ApplyWebPreferences(const web_pref::WebPreferences& prefs,
#if BUILDFLAG(IS_MAC) #if BUILDFLAG(IS_MAC)
web_view_impl->SetMaximumLegibleScale( web_view_impl->SetMaximumLegibleScale(
prefs.default_maximum_page_scale_factor); prefs.default_maximum_page_scale_factor);

View file

@ -13,7 +13,7 @@ uses internally for things like menus and devtools.
We can remove this patch once it has in some shape been upstreamed. We can remove this patch once it has in some shape been upstreamed.
diff --git a/ui/native_theme/native_theme.cc b/ui/native_theme/native_theme.cc diff --git a/ui/native_theme/native_theme.cc b/ui/native_theme/native_theme.cc
index 1ebd8809abb3208d402b6bd728114f7fea3ac52c..a564078fd9fe0c605a0dcb9eb21beabda389771f 100644 index 3f8801c6042ef2b20635838e4d4c572d89b94601..055b15ff72844cd54c60cc92042a5465ce2870ad 100644
--- a/ui/native_theme/native_theme.cc --- a/ui/native_theme/native_theme.cc
+++ b/ui/native_theme/native_theme.cc +++ b/ui/native_theme/native_theme.cc
@@ -210,6 +210,8 @@ NativeTheme::NativeTheme(bool should_use_dark_colors, @@ -210,6 +210,8 @@ NativeTheme::NativeTheme(bool should_use_dark_colors,
@ -26,7 +26,7 @@ index 1ebd8809abb3208d402b6bd728114f7fea3ac52c..a564078fd9fe0c605a0dcb9eb21beabd
} }
diff --git a/ui/native_theme/native_theme.h b/ui/native_theme/native_theme.h diff --git a/ui/native_theme/native_theme.h b/ui/native_theme/native_theme.h
index 2e657f24bb625c7a7af14686553aebdc06ad8eda..6f2384338ac4a48a78bc8aac8b4bb9d330d686b3 100644 index 97cceb20da0fccf0603cf2d4b1c8985314b1e850..0632d7fdc975dfdc3cc24bd8e641a2680fabc45d 100644
--- a/ui/native_theme/native_theme.h --- a/ui/native_theme/native_theme.h
+++ b/ui/native_theme/native_theme.h +++ b/ui/native_theme/native_theme.h
@@ -458,6 +458,23 @@ class COMPONENT_EXPORT(NATIVE_THEME) NativeTheme { @@ -458,6 +458,23 @@ class COMPONENT_EXPORT(NATIVE_THEME) NativeTheme {
@ -62,10 +62,10 @@ index 2e657f24bb625c7a7af14686553aebdc06ad8eda..6f2384338ac4a48a78bc8aac8b4bb9d3
SEQUENCE_CHECKER(sequence_checker_); SEQUENCE_CHECKER(sequence_checker_);
}; };
diff --git a/ui/native_theme/native_theme_win.cc b/ui/native_theme/native_theme_win.cc diff --git a/ui/native_theme/native_theme_win.cc b/ui/native_theme/native_theme_win.cc
index ff43747a45b5f508f45afb1e6304bda22ae46fbc..955c3734591f608f32b40927e53db1bf453ce907 100644 index dcf2d14d92f8b5a5dd7bf22f8ce00f030824c989..04d0f5d9416eaba569f49a25e7e8c1a89e50ecfe 100644
--- a/ui/native_theme/native_theme_win.cc --- a/ui/native_theme/native_theme_win.cc
+++ b/ui/native_theme/native_theme_win.cc +++ b/ui/native_theme/native_theme_win.cc
@@ -695,6 +695,8 @@ bool NativeThemeWin::ShouldUseDarkColors() const { @@ -696,6 +696,8 @@ bool NativeThemeWin::ShouldUseDarkColors() const {
if (InForcedColorsMode() && !IsForcedDarkMode()) { if (InForcedColorsMode() && !IsForcedDarkMode()) {
return false; return false;
} }

View file

@ -19,7 +19,7 @@ to STDOUT_FILENO/STD_OUTPUT_HANDLE and STDERR_FILENO/STD_ERROR_HANDLE allowing t
parent process to read from the pipe. parent process to read from the pipe.
diff --git a/content/browser/child_process_launcher.h b/content/browser/child_process_launcher.h diff --git a/content/browser/child_process_launcher.h b/content/browser/child_process_launcher.h
index 6a3645f020d7348f758ebcc93c49ddcbee709937..55994606517a4f52475610db2da26b5560865fab 100644 index 32b0b480d2195e5b166a473c2b58c960a0b5d052..cbf593e5405b384dbbdf763ebc4319cf25fc5c4a 100644
--- a/content/browser/child_process_launcher.h --- a/content/browser/child_process_launcher.h
+++ b/content/browser/child_process_launcher.h +++ b/content/browser/child_process_launcher.h
@@ -33,6 +33,7 @@ @@ -33,6 +33,7 @@
@ -43,7 +43,7 @@ index 6a3645f020d7348f758ebcc93c49ddcbee709937..55994606517a4f52475610db2da26b55
// in the child process. If a FilePath is provided, the file will be opened // in the child process. If a FilePath is provided, the file will be opened
// and the descriptor cached for future process launches. If a ScopedFD is // and the descriptor cached for future process launches. If a ScopedFD is
@@ -211,6 +215,15 @@ struct ChildProcessLauncherFileData { @@ -211,6 +215,15 @@ struct ChildProcessLauncherFileData {
std::map<std::string, absl::variant<base::FilePath, base::ScopedFD>> std::map<std::string, std::variant<base::FilePath, base::ScopedFD>>
files_to_preload; files_to_preload;
#endif #endif
+ +
@ -187,10 +187,10 @@ index 96c9563aac5847e742de5d9c9236f78bcb6cfd9c..73c9d585579ad5bdc407687b8becd0b7
host->GetChildProcess()->BindServiceInterface(std::move(receiver)); host->GetChildProcess()->BindServiceInterface(std::move(receiver));
} }
diff --git a/content/browser/service_host/utility_process_host.cc b/content/browser/service_host/utility_process_host.cc diff --git a/content/browser/service_host/utility_process_host.cc b/content/browser/service_host/utility_process_host.cc
index 26966d77a2ca88ce62afa16fd0f33cd5815b8c95..b7dfacb25a09b105e982c013119271b8f137e7b9 100644 index 8bb497717298886bc6db04ebcba9be1f3b29ab73..60c4a301c32a46cdc332cccd1cd4ae78802ee8b9 100644
--- a/content/browser/service_host/utility_process_host.cc --- a/content/browser/service_host/utility_process_host.cc
+++ b/content/browser/service_host/utility_process_host.cc +++ b/content/browser/service_host/utility_process_host.cc
@@ -189,11 +189,13 @@ const ChildProcessData& UtilityProcessHost::GetData() { @@ -190,11 +190,13 @@ const ChildProcessData& UtilityProcessHost::GetData() {
return process_->GetData(); return process_->GetData();
} }
@ -206,7 +206,7 @@ index 26966d77a2ca88ce62afa16fd0f33cd5815b8c95..b7dfacb25a09b105e982c013119271b8
bool UtilityProcessHost::Start() { bool UtilityProcessHost::Start() {
return StartProcess(); return StartProcess();
@@ -240,6 +242,30 @@ void UtilityProcessHost::SetZygoteForTesting(ZygoteCommunication* handle) { @@ -241,6 +243,30 @@ void UtilityProcessHost::SetZygoteForTesting(ZygoteCommunication* handle) {
} }
#endif // BUILDFLAG(USE_ZYGOTE) #endif // BUILDFLAG(USE_ZYGOTE)
@ -237,7 +237,7 @@ index 26966d77a2ca88ce62afa16fd0f33cd5815b8c95..b7dfacb25a09b105e982c013119271b8
mojom::ChildProcess* UtilityProcessHost::GetChildProcess() { mojom::ChildProcess* UtilityProcessHost::GetChildProcess() {
return static_cast<ChildProcessHostImpl*>(process_->GetHost()) return static_cast<ChildProcessHostImpl*>(process_->GetHost())
->child_process(); ->child_process();
@@ -454,9 +480,26 @@ bool UtilityProcessHost::StartProcess() { @@ -455,9 +481,26 @@ bool UtilityProcessHost::StartProcess() {
} }
#endif // BUILDFLAG(ENABLE_GPU_CHANNEL_MEDIA_CAPTURE) && !BUILDFLAG(IS_WIN) #endif // BUILDFLAG(ENABLE_GPU_CHANNEL_MEDIA_CAPTURE) && !BUILDFLAG(IS_WIN)
@ -266,7 +266,7 @@ index 26966d77a2ca88ce62afa16fd0f33cd5815b8c95..b7dfacb25a09b105e982c013119271b8
#if BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_WIN)
if (!preload_libraries_.empty()) { if (!preload_libraries_.empty()) {
diff --git a/content/browser/service_host/utility_process_host.h b/content/browser/service_host/utility_process_host.h diff --git a/content/browser/service_host/utility_process_host.h b/content/browser/service_host/utility_process_host.h
index 066939fcbb7bc05e27a6bb4ed122750732629454..ab6b64737245a840a3e2b06d2ab501ef4aaed7a2 100644 index d13e6db4857242480591bff040709532d16f513d..1164da12ee71a8575c17bf1b84a505e8a32b96b3 100644
--- a/content/browser/service_host/utility_process_host.h --- a/content/browser/service_host/utility_process_host.h
+++ b/content/browser/service_host/utility_process_host.h +++ b/content/browser/service_host/utility_process_host.h
@@ -30,6 +30,10 @@ @@ -30,6 +30,10 @@

View file

@ -21,7 +21,7 @@ making three primary changes to Blink:
* Mostly simple "plumbing" for the setting through blink. * Mostly simple "plumbing" for the setting through blink.
diff --git a/third_party/blink/common/renderer_preferences/renderer_preferences_mojom_traits.cc b/third_party/blink/common/renderer_preferences/renderer_preferences_mojom_traits.cc diff --git a/third_party/blink/common/renderer_preferences/renderer_preferences_mojom_traits.cc b/third_party/blink/common/renderer_preferences/renderer_preferences_mojom_traits.cc
index 25cf6b544dcee15a9616b6963eaae0264aba3db6..13d5b30d00ce8dca96eb3bc5454f9d353375d4c6 100644 index 5e233d63c09088d73cd1a54a58b235018c193ac3..4f2dcb339ad79f31ba5e4c347cb91d5639d27ce6 100644
--- a/third_party/blink/common/renderer_preferences/renderer_preferences_mojom_traits.cc --- a/third_party/blink/common/renderer_preferences/renderer_preferences_mojom_traits.cc
+++ b/third_party/blink/common/renderer_preferences/renderer_preferences_mojom_traits.cc +++ b/third_party/blink/common/renderer_preferences/renderer_preferences_mojom_traits.cc
@@ -128,6 +128,8 @@ bool StructTraits<blink::mojom::RendererPreferencesDataView, @@ -128,6 +128,8 @@ bool StructTraits<blink::mojom::RendererPreferencesDataView,
@ -30,23 +30,23 @@ index 25cf6b544dcee15a9616b6963eaae0264aba3db6..13d5b30d00ce8dca96eb3bc5454f9d35
+ out->electron_corner_smoothing_css = data.electron_corner_smoothing_css(); + out->electron_corner_smoothing_css = data.electron_corner_smoothing_css();
+ +
return true; out->canvas_noise_token = data.canvas_noise_token();
}
return true;
diff --git a/third_party/blink/public/common/renderer_preferences/renderer_preferences.h b/third_party/blink/public/common/renderer_preferences/renderer_preferences.h diff --git a/third_party/blink/public/common/renderer_preferences/renderer_preferences.h b/third_party/blink/public/common/renderer_preferences/renderer_preferences.h
index cae096396b0635f1c4bba6ac8fee47fd957dc698..03db6cddab5cd1b9f3f7c90390bc53baa9e14b65 100644 index ff84a20511448d4211d0e25dfc12e7eabc34a9e0..886e9d819c3bde7f33eec3497d1cadb76de4237f 100644
--- a/third_party/blink/public/common/renderer_preferences/renderer_preferences.h --- a/third_party/blink/public/common/renderer_preferences/renderer_preferences.h
+++ b/third_party/blink/public/common/renderer_preferences/renderer_preferences.h +++ b/third_party/blink/public/common/renderer_preferences/renderer_preferences.h
@@ -91,6 +91,7 @@ struct BLINK_COMMON_EXPORT RendererPreferences { @@ -91,6 +91,7 @@ struct BLINK_COMMON_EXPORT RendererPreferences {
bool caret_browsing_enabled{false}; bool caret_browsing_enabled{false};
bool uses_platform_autofill{false}; bool uses_platform_autofill{false};
std::vector<uint16_t> explicitly_allowed_network_ports; std::vector<uint16_t> explicitly_allowed_network_ports;
+ bool electron_corner_smoothing_css; + bool electron_corner_smoothing_css{true};
uint64_t canvas_noise_token{0};
RendererPreferences(); RendererPreferences();
RendererPreferences(const RendererPreferences& other);
diff --git a/third_party/blink/public/common/renderer_preferences/renderer_preferences_mojom_traits.h b/third_party/blink/public/common/renderer_preferences/renderer_preferences_mojom_traits.h diff --git a/third_party/blink/public/common/renderer_preferences/renderer_preferences_mojom_traits.h b/third_party/blink/public/common/renderer_preferences/renderer_preferences_mojom_traits.h
index 33b4bd3f0c9488f1013aea026c7fe559ba750cd8..6b4157199c14a4c276e65512e89f2429253aec5c 100644 index c88ddaf7fd5fc27889bcacac9366330e4013eba3..e4f492a11637886c60ece665371d117f3a34ec8d 100644
--- a/third_party/blink/public/common/renderer_preferences/renderer_preferences_mojom_traits.h --- a/third_party/blink/public/common/renderer_preferences/renderer_preferences_mojom_traits.h
+++ b/third_party/blink/public/common/renderer_preferences/renderer_preferences_mojom_traits.h +++ b/third_party/blink/public/common/renderer_preferences/renderer_preferences_mojom_traits.h
@@ -275,6 +275,11 @@ struct BLINK_COMMON_EXPORT @@ -275,6 +275,11 @@ struct BLINK_COMMON_EXPORT
@ -58,22 +58,24 @@ index 33b4bd3f0c9488f1013aea026c7fe559ba750cd8..6b4157199c14a4c276e65512e89f2429
+ return data.electron_corner_smoothing_css; + return data.electron_corner_smoothing_css;
+ } + }
+ +
static bool Read(blink::mojom::RendererPreferencesDataView, static const uint64_t& canvas_noise_token(
::blink::RendererPreferences* out); const ::blink::RendererPreferences& data) {
}; return data.canvas_noise_token;
diff --git a/third_party/blink/public/mojom/renderer_preferences.mojom b/third_party/blink/public/mojom/renderer_preferences.mojom diff --git a/third_party/blink/public/mojom/renderer_preferences.mojom b/third_party/blink/public/mojom/renderer_preferences.mojom
index bbcec1dcdaaaf932b3d82c64e8aeb2e7c04b05bf..689205607a763c1d6e040069b1357d84e8ba4bd5 100644 index 65766b955e81bfc332bc2c4e0b9da48389c1bd68..a475e1bfee46f0a77d1cfbdea47e9de6516d1194 100644
--- a/third_party/blink/public/mojom/renderer_preferences.mojom --- a/third_party/blink/public/mojom/renderer_preferences.mojom
+++ b/third_party/blink/public/mojom/renderer_preferences.mojom +++ b/third_party/blink/public/mojom/renderer_preferences.mojom
@@ -201,4 +201,6 @@ struct RendererPreferences { @@ -202,6 +202,8 @@ struct RendererPreferences {
bool uses_platform_autofill = false;
array<uint16> explicitly_allowed_network_ports; array<uint16> explicitly_allowed_network_ports;
+
+ bool electron_corner_smoothing_css; + bool electron_corner_smoothing_css;
}; +
// A randomized 64 bit token that is generated per browser session,
// 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 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 3e3d56992ab135ee88257681f93e39a470192857..26e87c2be381c0fd7d5116d95a107082e2549eae 100644 index a4c78d85e525224823ce4b2434519cc0a39922ef..8071b283b48ab89226313bb199c0cece67ca5039 100644
--- a/third_party/blink/public/mojom/use_counter/metrics/css_property_id.mojom --- 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 +++ b/third_party/blink/public/mojom/use_counter/metrics/css_property_id.mojom
@@ -48,6 +48,7 @@ enum CSSSampleId { @@ -48,6 +48,7 @@ enum CSSSampleId {
@ -97,28 +99,23 @@ index a53b4901dde0dc83dce6c9b56616eef0d02d94a5..b419672af985f673f375fbb63b4d2b2c
protected: protected:
~WebSettings() = default; ~WebSettings() = default;
diff --git a/third_party/blink/renderer/build/scripts/core/css/css_properties.py b/third_party/blink/renderer/build/scripts/core/css/css_properties.py diff --git a/third_party/blink/renderer/build/scripts/core/css/css_properties.py b/third_party/blink/renderer/build/scripts/core/css/css_properties.py
index 753ba8990f722bafd1770a5e70307cff3764d3f1..16cec517d72887c089f85867e8e37c03199ab394 100755 index aa3a6b93cceae8c8bfbefdd7a043ae576f921979..17544d7ed4757fb51e2f82fd1b90638131ba05cc 100755
--- a/third_party/blink/renderer/build/scripts/core/css/css_properties.py --- a/third_party/blink/renderer/build/scripts/core/css/css_properties.py
+++ b/third_party/blink/renderer/build/scripts/core/css/css_properties.py +++ b/third_party/blink/renderer/build/scripts/core/css/css_properties.py
@@ -311,7 +311,13 @@ class CSSProperties(object): @@ -313,7 +313,7 @@ class CSSProperties(object):
name_without_leading_dash = property_.name.original
if name_without_leading_dash.startswith('-'): if name_without_leading_dash.startswith('-'):
name_without_leading_dash = name_without_leading_dash[1:] name_without_leading_dash = name_without_leading_dash[1:]
+ # Extra sort level to avoid -internal-* properties being assigned internal_visited_order = 1
+ # values too large to fit in a byte. - if name_without_leading_dash.startswith('internal-visited-'):
+ internal_weight = 0 + if name_without_leading_dash.startswith('internal-'):
+ if property_.name.original.startswith('-internal'): internal_visited_order = 0
+ internal_weight = -1
property_.sorting_key = (-property_.priority, property_.sorting_key = (-property_.priority,
+ internal_weight, internal_visited_order,
name_without_leading_dash)
sorting_keys = {}
diff --git a/third_party/blink/renderer/core/css/css_properties.json5 b/third_party/blink/renderer/core/css/css_properties.json5 diff --git a/third_party/blink/renderer/core/css/css_properties.json5 b/third_party/blink/renderer/core/css/css_properties.json5
index 6cf39b4a15ac290891d56a8d1d7b30846a329f79..5a0d840d5c01fb1ed95bacd36cc4f01443afdf94 100644 index b44da8add10fdeadd24653441115df035a93dd50..ce7c7bd32f3a8ea262f01c408474ff4ffe7fe0aa 100644
--- a/third_party/blink/renderer/core/css/css_properties.json5 --- a/third_party/blink/renderer/core/css/css_properties.json5
+++ b/third_party/blink/renderer/core/css/css_properties.json5 +++ b/third_party/blink/renderer/core/css/css_properties.json5
@@ -8724,6 +8724,24 @@ @@ -8795,6 +8795,24 @@
property_methods: ["ParseShorthand", "CSSValueFromComputedStyleInternal"], property_methods: ["ParseShorthand", "CSSValueFromComputedStyleInternal"],
}, },
@ -144,7 +141,7 @@ index 6cf39b4a15ac290891d56a8d1d7b30846a329f79..5a0d840d5c01fb1ed95bacd36cc4f014
{ {
name: "-internal-visited-color", 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 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 998fb2cfb682e61d89bb6f832cd91efa658f9773..8ad689bd9327569d26eb5f449a707d6b0d7c2536 100644 index 10ab8a458fb3348476a6e904f684af77c55b103a..37339df2a5601b59abc50fe75fb844e1b7bb5368 100644
--- a/third_party/blink/renderer/core/css/css_property_equality.cc --- a/third_party/blink/renderer/core/css/css_property_equality.cc
+++ b/third_party/blink/renderer/core/css/css_property_equality.cc +++ b/third_party/blink/renderer/core/css/css_property_equality.cc
@@ -346,6 +346,8 @@ bool CSSPropertyEquality::PropertiesEqual(const PropertyHandle& property, @@ -346,6 +346,8 @@ bool CSSPropertyEquality::PropertiesEqual(const PropertyHandle& property,
@ -157,10 +154,10 @@ index 998fb2cfb682e61d89bb6f832cd91efa658f9773..8ad689bd9327569d26eb5f449a707d6b
return a.EmptyCells() == b.EmptyCells(); return a.EmptyCells() == b.EmptyCells();
case CSSPropertyID::kFill: 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 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 c1aa3851a8530f1993de160773d3fae107c4d8bd..d0b87808b0d0466473d21720e44366228daed218 100644 index 663ce4469a595e2c5a7b8ed992bdc0e22ab101a9..acdbd7ab75b12630356777a475be794091be25ad 100644
--- a/third_party/blink/renderer/core/css/properties/longhands/longhands_custom.cc --- a/third_party/blink/renderer/core/css/properties/longhands/longhands_custom.cc
+++ b/third_party/blink/renderer/core/css/properties/longhands/longhands_custom.cc +++ b/third_party/blink/renderer/core/css/properties/longhands/longhands_custom.cc
@@ -11857,5 +11857,25 @@ const CSSValue* InternalEmptyLineHeight::ParseSingleValue( @@ -12035,5 +12035,25 @@ const CSSValue* InternalEmptyLineHeight::ParseSingleValue(
CSSValueID::kNone>(stream); CSSValueID::kNone>(stream);
} }
@ -187,10 +184,10 @@ index c1aa3851a8530f1993de160773d3fae107c4d8bd..d0b87808b0d0466473d21720e4436622
} // namespace css_longhand } // namespace css_longhand
} // namespace blink } // 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 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 797c8e2d7ee777bcd88e0e4e6a65992342c2a098..c8d024213eb4dfe1ae82e0543f066df55555213e 100644 index f7f49ef23b77c7a3f27ae8ba129e5eea1617d545..0ddf6f59c45d2f6212317dc18f3c5a80eeda5395 100644
--- a/third_party/blink/renderer/core/css/resolver/style_builder_converter.cc --- a/third_party/blink/renderer/core/css/resolver/style_builder_converter.cc
+++ b/third_party/blink/renderer/core/css/resolver/style_builder_converter.cc +++ b/third_party/blink/renderer/core/css/resolver/style_builder_converter.cc
@@ -3861,4 +3861,12 @@ PositionArea StyleBuilderConverter::ConvertPositionArea( @@ -3859,4 +3859,12 @@ PositionArea StyleBuilderConverter::ConvertPositionArea(
return PositionArea(span[0], span[1], span[2], span[3]); return PositionArea(span[0], span[1], span[2], span[3]);
} }
@ -204,10 +201,10 @@ index 797c8e2d7ee777bcd88e0e4e6a65992342c2a098..c8d024213eb4dfe1ae82e0543f066df5
+ +
} // namespace blink } // 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 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 c0f4544a38dc486708dec5a4b3646fb3f15ff2e0..8b3d4e95fb690f9e7b38265be0a77d6e49271944 100644 index b9f8145af13fb9d68e85f166905476c177c3a053..0a9ad304f5039747a0580ab63664d4429a67970d 100644
--- a/third_party/blink/renderer/core/css/resolver/style_builder_converter.h --- a/third_party/blink/renderer/core/css/resolver/style_builder_converter.h
+++ b/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 { @@ -419,6 +419,8 @@ class StyleBuilderConverter {
const CSSValue&); const CSSValue&);
static PositionArea ConvertPositionArea(StyleResolverState&, const CSSValue&); static PositionArea ConvertPositionArea(StyleResolverState&, const CSSValue&);
@ -230,7 +227,7 @@ index 4a29a2200eaab5084078e928a68c862296c6ff91..fcd879deec0e68b3b6988402d19570cf
+ +
} // namespace blink } // 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 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 eabcddfa5f17497ef0611fa43f77dd13e2a54e00..96266c4f8c17b589f3d9c549e2836a147b7401ce 100644 index 5e8d2bfbccd0625c2598544a9cba3d71373eded2..e68a97ee75754fc7196f11cf5c731550b5a12276 100644
--- a/third_party/blink/renderer/core/exported/web_settings_impl.h --- a/third_party/blink/renderer/core/exported/web_settings_impl.h
+++ b/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 { @@ -237,6 +237,7 @@ class CORE_EXPORT WebSettingsImpl final : public WebSettings {
@ -242,11 +239,11 @@ index eabcddfa5f17497ef0611fa43f77dd13e2a54e00..96266c4f8c17b589f3d9c549e2836a14
bool RenderVSyncNotificationEnabled() const { bool RenderVSyncNotificationEnabled() const {
return render_v_sync_notification_enabled_; 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 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 9810991e0a5d8b931a70e056b6651b8e5fdb9881..2b37a0209d370629f08e9065a22b92ff52053141 100644 index cf80d64963a2a25afbaa6060b4dfda425638858b..5f3a6dba6fe4f93698a8e18afa07efdac73eabee 100644
--- a/third_party/blink/renderer/core/exported/web_view_impl.cc --- a/third_party/blink/renderer/core/exported/web_view_impl.cc
+++ b/third_party/blink/renderer/core/exported/web_view_impl.cc +++ b/third_party/blink/renderer/core/exported/web_view_impl.cc
@@ -3574,6 +3574,9 @@ void WebViewImpl::UpdateRendererPreferences( @@ -3575,6 +3575,9 @@ void WebViewImpl::UpdateRendererPreferences(
#endif CanvasNoiseToken::Set(renderer_preferences_.canvas_noise_token);
MaybePreloadSystemFonts(GetPage()); MaybePreloadSystemFonts(GetPage());
+ +
@ -271,24 +268,12 @@ index f4cdee12ea4352067f5de3e074e43d51ef56d2e5..6377e4b1ea8aa46b0bf69f8420b6c439
], ],
} }
diff --git a/third_party/blink/renderer/core/paint/box_painter_base.cc b/third_party/blink/renderer/core/paint/box_painter_base.cc diff --git a/third_party/blink/renderer/core/paint/box_painter_base.cc b/third_party/blink/renderer/core/paint/box_painter_base.cc
index 68dbf4accafc0ce8100d6d488195e9dcde8b1502..dcd13e67acde42b181b219b2f690e2fc76ad917d 100644 index 57f71cbd80d88416693e5b83f695fd02eb7a405b..d638da7a734fa40de118d056c59488b63caff7e2 100644
--- a/third_party/blink/renderer/core/paint/box_painter_base.cc --- a/third_party/blink/renderer/core/paint/box_painter_base.cc
+++ b/third_party/blink/renderer/core/paint/box_painter_base.cc +++ b/third_party/blink/renderer/core/paint/box_painter_base.cc
@@ -324,8 +324,9 @@ void BoxPainterBase::PaintNormalBoxShadow(const PaintInfo& info, @@ -417,16 +417,20 @@ void BoxPainterBase::PaintInsetBoxShadow(const PaintInfo& info,
if (has_border_radius) { ContouredRect inner_rounded_rect(
FloatRoundedRect rounded_fill_rect(fill_rect, border.GetRadii()); FloatRoundedRect(inner_rect, bounds.GetRadii()));
ApplySpreadToShadowShape(rounded_fill_rect, shadow.Spread());
- context.FillRoundedRect(
- rounded_fill_rect, Color::kBlack,
+ ContouredRect contoured_fill_rect(rounded_fill_rect, border.GetCornerCurvature());
+ context.FillContouredRect(
+ contoured_fill_rect, Color::kBlack,
PaintAutoDarkMode(style, DarkModeFilter::ElementRole::kBackground));
} else {
fill_rect.Outset(shadow.Spread());
@@ -413,16 +414,20 @@ void BoxPainterBase::PaintInsetBoxShadow(const PaintInfo& info,
AdjustRectForSideClipping(inner_rect, shadow, sides_to_include);
FloatRoundedRect inner_rounded_rect(inner_rect, bounds.GetRadii());
ApplySpreadToShadowShape(inner_rounded_rect, -shadow.Spread()); ApplySpreadToShadowShape(inner_rounded_rect, -shadow.Spread());
+ ContouredRect contoured_bounds( + ContouredRect contoured_bounds(
+ bounds, ContouredBorderGeometry::ContouredBorder( + bounds, ContouredBorderGeometry::ContouredBorder(
@ -310,7 +295,7 @@ index 68dbf4accafc0ce8100d6d488195e9dcde8b1502..dcd13e67acde42b181b219b2f690e2fc
context.Clip(bounds.Rect()); context.Clip(bounds.Rect());
} }
diff --git a/third_party/blink/renderer/core/paint/contoured_border_geometry.cc b/third_party/blink/renderer/core/paint/contoured_border_geometry.cc diff --git a/third_party/blink/renderer/core/paint/contoured_border_geometry.cc b/third_party/blink/renderer/core/paint/contoured_border_geometry.cc
index b96a3ba1e16b15807086c8e6a256b256b48e8adb..1396fd3214e18e1ded8fd8a83d964c8c824fbc5e 100644 index 2c2f4f405074e5baa4a26f255283404f86b40e21..ebeb7d6988ee9e6a4e78cb82fc01fdad6721eaef 100644
--- a/third_party/blink/renderer/core/paint/contoured_border_geometry.cc --- a/third_party/blink/renderer/core/paint/contoured_border_geometry.cc
+++ b/third_party/blink/renderer/core/paint/contoured_border_geometry.cc +++ b/third_party/blink/renderer/core/paint/contoured_border_geometry.cc
@@ -43,6 +43,24 @@ float EffectiveCurvature(Superellipse superellipse, const gfx::SizeF& radius) { @@ -43,6 +43,24 @@ float EffectiveCurvature(Superellipse superellipse, const gfx::SizeF& radius) {
@ -349,10 +334,10 @@ index b96a3ba1e16b15807086c8e6a256b256b48e8adb..1396fd3214e18e1ded8fd8a83d964c8c
ContouredRect PixelSnappedContouredBorderInternal( ContouredRect PixelSnappedContouredBorderInternal(
diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/renderer/platform/BUILD.gn diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/renderer/platform/BUILD.gn
index ae923ecf6c58d608ed3583312edb48ecb6b7f576..759d991162702d31e77590474bc5764c8fd8229b 100644 index 291676c6583722a3dfbac4d4aaad1ea2ae3cc079..5cd89e8c6c79ab339ffbc330d9bcdb08cca6e869 100644
--- a/third_party/blink/renderer/platform/BUILD.gn --- a/third_party/blink/renderer/platform/BUILD.gn
+++ b/third_party/blink/renderer/platform/BUILD.gn +++ b/third_party/blink/renderer/platform/BUILD.gn
@@ -1642,6 +1642,8 @@ component("platform") { @@ -1646,6 +1646,8 @@ component("platform") {
"widget/widget_base.h", "widget/widget_base.h",
"widget/widget_base_client.h", "widget/widget_base_client.h",
"windows_keyboard_codes.h", "windows_keyboard_codes.h",
@ -362,10 +347,10 @@ index ae923ecf6c58d608ed3583312edb48ecb6b7f576..759d991162702d31e77590474bc5764c
sources -= blink_platform_avx_files 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 diff --git a/third_party/blink/renderer/platform/geometry/contoured_rect.h b/third_party/blink/renderer/platform/geometry/contoured_rect.h
index 1a5d76b145307c11ac71cd5840f7ca166655fde2..a40aee431d9ecf8bdb011ccc4e8a9ecd813ffe3a 100644 index b147b8d321d865295007516b15d0aaccfc6f7fac..8f54a3a657c660a52fcd4c94865ca2197b0af514 100644
--- a/third_party/blink/renderer/platform/geometry/contoured_rect.h --- a/third_party/blink/renderer/platform/geometry/contoured_rect.h
+++ b/third_party/blink/renderer/platform/geometry/contoured_rect.h +++ b/third_party/blink/renderer/platform/geometry/contoured_rect.h
@@ -42,19 +42,29 @@ class PLATFORM_EXPORT ContouredRect { @@ -47,19 +47,29 @@ class PLATFORM_EXPORT ContouredRect {
constexpr CornerCurvature(float top_left, constexpr CornerCurvature(float top_left,
float top_right, float top_right,
float bottom_right, float bottom_right,
@ -398,7 +383,7 @@ index 1a5d76b145307c11ac71cd5840f7ca166655fde2..a40aee431d9ecf8bdb011ccc4e8a9ecd
} }
constexpr bool IsUniform() const { constexpr bool IsUniform() const {
@@ -66,6 +76,7 @@ class PLATFORM_EXPORT ContouredRect { @@ -71,6 +81,7 @@ class PLATFORM_EXPORT ContouredRect {
constexpr float TopRight() const { return top_right_; } constexpr float TopRight() const { return top_right_; }
constexpr float BottomRight() const { return bottom_right_; } constexpr float BottomRight() const { return bottom_right_; }
constexpr float BottomLeft() const { return bottom_left_; } constexpr float BottomLeft() const { return bottom_left_; }
@ -406,80 +391,43 @@ index 1a5d76b145307c11ac71cd5840f7ca166655fde2..a40aee431d9ecf8bdb011ccc4e8a9ecd
constexpr bool operator==(const CornerCurvature&) const = default; constexpr bool operator==(const CornerCurvature&) const = default;
@@ -76,6 +87,7 @@ class PLATFORM_EXPORT ContouredRect { @@ -81,6 +92,7 @@ class PLATFORM_EXPORT ContouredRect {
float top_right_ = kRound; float top_right_ = kRound;
float bottom_right_ = kRound; float bottom_right_ = kRound;
float bottom_left_ = kRound; float bottom_left_ = kRound;
+ float smoothness_ = 0.0f; + float smoothness_ = 0.0f;
}; };
constexpr ContouredRect() = default; // A Corner is a axis-aligned quad, with the points ordered (start, outer,
diff --git a/third_party/blink/renderer/platform/geometry/path.cc b/third_party/blink/renderer/platform/geometry/path.cc diff --git a/third_party/blink/renderer/platform/geometry/path_builder.cc b/third_party/blink/renderer/platform/geometry/path_builder.cc
index 4b63f7f3e113e77bf91810b91c5fad1b6bf5de92..6121bd490717ce6bf4ba7d933e1a9f3eae1752e1 100644 index 346cfc0b13b31808fbe1381b3785150810f347bb..29a004e6b668d172534cd503f16de57d42368b2e 100644
--- a/third_party/blink/renderer/platform/geometry/path.cc --- a/third_party/blink/renderer/platform/geometry/path_builder.cc
+++ b/third_party/blink/renderer/platform/geometry/path.cc +++ b/third_party/blink/renderer/platform/geometry/path_builder.cc
@@ -33,6 +33,7 @@ @@ -4,6 +4,7 @@
#include <algorithm> #include "third_party/blink/renderer/platform/geometry/path_builder.h"
+#include "electron/shell/renderer/electron_smooth_round_rect.h" +#include "electron/shell/renderer/electron_smooth_round_rect.h"
#include "third_party/blink/renderer/platform/geometry/contoured_rect.h" #include "third_party/blink/renderer/platform/geometry/contoured_rect.h"
#include "third_party/blink/renderer/platform/geometry/float_rounded_rect.h" #include "third_party/blink/renderer/platform/geometry/infinite_int_rect.h"
#include "third_party/blink/renderer/platform/geometry/skia_geometry_utils.h" #include "third_party/blink/renderer/platform/geometry/path.h"
@@ -660,6 +661,18 @@ void Path::AddContouredRect(const ContouredRect& contoured_rect) { @@ -231,6 +232,19 @@ PathBuilder& PathBuilder::AddContouredRect(
return; AddRoundedRect(target_rect);
return *this;
} }
+
+ // TODO(clavin): decompose `electron::DrawSmoothRoundRect` into corners + // TODO(clavin): decompose `electron::DrawSmoothRoundRect` into corners
+ if (contoured_rect.GetCornerCurvature().IsSmooth()) { + if (contoured_rect.GetCornerCurvature().IsSmooth()) {
+ const gfx::RectF& box = rect.Rect(); + const gfx::RectF& box = contoured_rect.Rect();
+ const FloatRoundedRect::Radii& radii = rect.GetRadii(); + const FloatRoundedRect::Radii& radii = contoured_rect.GetRadii();
+ path_.addPath(electron::DrawSmoothRoundRect( + builder_.addPath(electron::DrawSmoothRoundRect(
+ box.x(), box.y(), box.width(), box.height(), + box.x(), box.y(), box.width(), box.height(),
+ std::min(contoured_rect.GetCornerCurvature().Smoothness(), 1.0f), + std::min(contoured_rect.GetCornerCurvature().Smoothness(), 1.0f),
+ radii.TopLeft().width(), radii.TopRight().width(), + radii.TopLeft().width(), radii.TopRight().width(),
+ radii.BottomRight().width(), radii.BottomLeft().width())); + radii.BottomRight().width(), radii.BottomLeft().width()));
+ return; + return *this;
+ } + }
+ +
const ContouredRect::CornerCurvature& curvature = const FloatRoundedRect& origin_rect = contoured_rect.GetOriginRect();
contoured_rect.GetCornerCurvature();
path_.moveTo(gfx::PointFToSkPoint(rect.TopLeftCorner().top_right()));
diff --git a/third_party/blink/renderer/platform/graphics/graphics_context.cc b/third_party/blink/renderer/platform/graphics/graphics_context.cc
index 6361cc655af8c2bef6803efe6f3c382c1eadb851..9439df63a7d265d1f93c89c275d84a8a1dde30c6 100644
--- a/third_party/blink/renderer/platform/graphics/graphics_context.cc
+++ b/third_party/blink/renderer/platform/graphics/graphics_context.cc
@@ -924,6 +924,19 @@ void GraphicsContext::FillRectWithRoundedHole(
DarkModeFlags(this, auto_dark_mode, flags));
}
+void GraphicsContext::FillContouredRect(const ContouredRect& contoured_rect, if (origin_rect == target_rect) {
+ const Color& color,
+ const AutoDarkMode& auto_dark_mode) {
+ if (contoured_rect.HasRoundCurvature()) {
+ FillRoundedRect(contoured_rect.AsRoundedRect(), color, auto_dark_mode);
+ return;
+ }
+
+ cc::PaintFlags flags = ImmutableState()->FillFlags();
+ flags.setColor(color.toSkColor4f());
+ canvas_->drawPath(contoured_rect.GetPath().GetSkPath(), flags);
+}
+
void GraphicsContext::FillEllipse(const gfx::RectF& ellipse,
const AutoDarkMode& auto_dark_mode) {
DrawOval(gfx::RectFToSkRect(ellipse), ImmutableState()->FillFlags(),
diff --git a/third_party/blink/renderer/platform/graphics/graphics_context.h b/third_party/blink/renderer/platform/graphics/graphics_context.h
index 632b0ec1faebc87d13a5538812333bf14f9e402a..ee51cb455600f507e3a97fe3e6f293ff0f47bbd6 100644
--- a/third_party/blink/renderer/platform/graphics/graphics_context.h
+++ b/third_party/blink/renderer/platform/graphics/graphics_context.h
@@ -318,6 +318,9 @@ class PLATFORM_EXPORT GraphicsContext {
const FloatRoundedRect& rounded_hole_rect,
const Color&,
const AutoDarkMode& auto_dark_mode);
+ void FillContouredRect(const ContouredRect& contoured_rect,
+ const Color& color,
+ const AutoDarkMode& auto_dark_mode);
void StrokeRect(const gfx::RectF&,
const AutoDarkMode& auto_dark_mode);

View file

@ -11,10 +11,10 @@ ensure it has minimum contrast required to be accessible.
This should be upstreamed to Chromium if possible. This should be upstreamed to Chromium if possible.
diff --git a/ui/views/window/frame_caption_button.cc b/ui/views/window/frame_caption_button.cc diff --git a/ui/views/window/frame_caption_button.cc b/ui/views/window/frame_caption_button.cc
index 9f2f19eca80d420e10e5269fb24d4ca52f234ae9..ec54aaa17054468a21af4a1a9736da9134dfe4e6 100644 index f70d810e5c316a0dfee0b12a0972679f5f56b22b..5a5b2b3e1a70c7365a4d6deb90c183f8392c8c9f 100644
--- a/ui/views/window/frame_caption_button.cc --- a/ui/views/window/frame_caption_button.cc
+++ b/ui/views/window/frame_caption_button.cc +++ b/ui/views/window/frame_caption_button.cc
@@ -107,7 +107,7 @@ FrameCaptionButton::FrameCaptionButton(PressedCallback callback, @@ -108,7 +108,7 @@ FrameCaptionButton::FrameCaptionButton(PressedCallback callback,
FrameCaptionButton::~FrameCaptionButton() = default; FrameCaptionButton::~FrameCaptionButton() = default;
// static // static
@ -23,7 +23,7 @@ index 9f2f19eca80d420e10e5269fb24d4ca52f234ae9..ec54aaa17054468a21af4a1a9736da91
// Use IsDark() to change target colors instead of PickContrastingColor(), so // Use IsDark() to change target colors instead of PickContrastingColor(), so
// that DefaultFrameHeader::GetTitleColor() (which uses different target // that DefaultFrameHeader::GetTitleColor() (which uses different target
// colors) can change between light/dark targets at the same time. It looks // colors) can change between light/dark targets at the same time. It looks
@@ -124,6 +124,22 @@ SkColor FrameCaptionButton::GetButtonColor(SkColor background_color) { @@ -125,6 +125,22 @@ SkColor FrameCaptionButton::GetButtonColor(SkColor background_color) {
.color; .color;
} }
@ -47,10 +47,10 @@ index 9f2f19eca80d420e10e5269fb24d4ca52f234ae9..ec54aaa17054468a21af4a1a9736da91
float FrameCaptionButton::GetInactiveButtonColorAlphaRatio() { float FrameCaptionButton::GetInactiveButtonColorAlphaRatio() {
return 0.38f; return 0.38f;
diff --git a/ui/views/window/frame_caption_button.h b/ui/views/window/frame_caption_button.h diff --git a/ui/views/window/frame_caption_button.h b/ui/views/window/frame_caption_button.h
index 0ac923a3ca6052d499ed7c1a4f156b0f19ad4e64..3164f79828218d57843eba823e0f14ff456b2df4 100644 index e74917399d3306e6557069d85fe90d153cecf585..738965e15ea4a5c3d71a5bf79ea0df78dac9cd73 100644
--- a/ui/views/window/frame_caption_button.h --- a/ui/views/window/frame_caption_button.h
+++ b/ui/views/window/frame_caption_button.h +++ b/ui/views/window/frame_caption_button.h
@@ -44,8 +44,18 @@ class VIEWS_EXPORT FrameCaptionButton : public Button { @@ -45,8 +45,18 @@ class VIEWS_EXPORT FrameCaptionButton : public Button {
FrameCaptionButton& operator=(const FrameCaptionButton&) = delete; FrameCaptionButton& operator=(const FrameCaptionButton&) = delete;
~FrameCaptionButton() override; ~FrameCaptionButton() override;
@ -70,10 +70,10 @@ index 0ac923a3ca6052d499ed7c1a4f156b0f19ad4e64..3164f79828218d57843eba823e0f14ff
// Gets the alpha ratio for the colors of inactive frame caption buttons. // Gets the alpha ratio for the colors of inactive frame caption buttons.
static float GetInactiveButtonColorAlphaRatio(); static float GetInactiveButtonColorAlphaRatio();
@@ -134,6 +144,7 @@ class VIEWS_EXPORT FrameCaptionButton : public Button { @@ -135,6 +145,7 @@ class VIEWS_EXPORT FrameCaptionButton : public Button {
// TODO(b/292154873): Store the foreground color instead of the background // TODO(b/292154873): Store the foreground color instead of the background
// color for the SkColor type. // color for the SkColor type.
absl::variant<ui::ColorId, SkColor> color_ = gfx::kPlaceholderColor; std::variant<ui::ColorId, SkColor> color_ = gfx::kPlaceholderColor;
+ SkColor button_color_ = SkColor(); + SkColor button_color_ = SkColor();
// Whether the button should be painted as active. // Whether the button should be painted as active.

View file

@ -522,10 +522,10 @@ index 4d6cc977ed5000d93918336a0dd57f60c0e95bbb..54d936e86b60f0538c70c4ee69e109cc
waiting_on_draw_ack_ = true; 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 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 8c660af0aaa1c031815082838dea1497b725e55b..852f4d9ac45aaa51f5edf0b3a5e3492eec52d743 100644 index 6de3d8b4cdaf2721a160c6271561b8fd8872e82e..890b95b4aee9210f13ee192a6ea86e072619fcf4 100644
--- a/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc --- a/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc
+++ b/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc +++ b/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc
@@ -112,7 +112,8 @@ RootCompositorFrameSinkImpl::Create( @@ -113,7 +113,8 @@ RootCompositorFrameSinkImpl::Create(
params->gpu_compositing, params->widget); params->gpu_compositing, params->widget);
auto output_surface = output_surface_provider->CreateOutputSurface( auto output_surface = output_surface_provider->CreateOutputSurface(
params->widget, params->gpu_compositing, display_client.get(), params->widget, params->gpu_compositing, display_client.get(),
@ -564,10 +564,10 @@ index 399fba1a3d4e601dc2cdd5f1f4def8b7fd7a3011..8bcbe0d26c80323155d536c0d3a177a1
gpu::SyncPointManager* GetSyncPointManager() override; gpu::SyncPointManager* GetSyncPointManager() override;
gpu::Scheduler* GetGpuScheduler() override; gpu::Scheduler* GetGpuScheduler() override;
diff --git a/content/browser/compositor/viz_process_transport_factory.cc b/content/browser/compositor/viz_process_transport_factory.cc diff --git a/content/browser/compositor/viz_process_transport_factory.cc b/content/browser/compositor/viz_process_transport_factory.cc
index 6e35e3a2e1cc10d62a487111d1e185bf900d9cfa..fe0dbc425746ec97372cade1365a5654b22881f3 100644 index 7839f5afb9ac1aef3f809042d14e6bf2f48f84af..7df780d195e3cfcbfc0857133f2c0d21abe04121 100644
--- a/content/browser/compositor/viz_process_transport_factory.cc --- a/content/browser/compositor/viz_process_transport_factory.cc
+++ b/content/browser/compositor/viz_process_transport_factory.cc +++ b/content/browser/compositor/viz_process_transport_factory.cc
@@ -436,8 +436,14 @@ void VizProcessTransportFactory::OnEstablishedGpuChannel( @@ -431,8 +431,14 @@ void VizProcessTransportFactory::OnEstablishedGpuChannel(
mojo::AssociatedRemote<viz::mojom::DisplayPrivate> display_private; mojo::AssociatedRemote<viz::mojom::DisplayPrivate> display_private;
root_params->display_private = root_params->display_private =
display_private.BindNewEndpointAndPassReceiver(); display_private.BindNewEndpointAndPassReceiver();
@ -620,10 +620,10 @@ index 2f462f0deb5fc8a637457243fb5d5849fc214d14..695869b83cefaa24af93a2e11b39de05
+ Draw(gfx.mojom.Rect damage_rect) => (); + Draw(gfx.mojom.Rect damage_rect) => ();
}; };
diff --git a/ui/compositor/compositor.h b/ui/compositor/compositor.h diff --git a/ui/compositor/compositor.h b/ui/compositor/compositor.h
index d353cd4613c734c34f5333607335cc9a434ad88e..cabb39363b30c97f63d323d7a8156774b67f6b32 100644 index bd5213795191e5947b6c70778ae01a669ab50dd7..3f52b93eab20108e40131472d8abdf9ff60bd191 100644
--- a/ui/compositor/compositor.h --- a/ui/compositor/compositor.h
+++ b/ui/compositor/compositor.h +++ b/ui/compositor/compositor.h
@@ -92,6 +92,7 @@ class DisplayPrivate; @@ -88,6 +88,7 @@ class DisplayPrivate;
class ExternalBeginFrameController; class ExternalBeginFrameController;
} // namespace mojom } // namespace mojom
@ -631,7 +631,7 @@ index d353cd4613c734c34f5333607335cc9a434ad88e..cabb39363b30c97f63d323d7a8156774
class HostFrameSinkManager; class HostFrameSinkManager;
class LocalSurfaceId; class LocalSurfaceId;
class RasterContextProvider; class RasterContextProvider;
@@ -154,6 +155,15 @@ class COMPOSITOR_EXPORT ExternalBeginFrameControllerClientFactory { @@ -147,6 +148,15 @@ class COMPOSITOR_EXPORT ExternalBeginFrameControllerClientFactory {
viz::mojom::ExternalBeginFrameControllerClient> viz::mojom::ExternalBeginFrameControllerClient>
CreateExternalBeginFrameControllerClient() = 0; CreateExternalBeginFrameControllerClient() = 0;
}; };
@ -647,7 +647,7 @@ index d353cd4613c734c34f5333607335cc9a434ad88e..cabb39363b30c97f63d323d7a8156774
// Compositor object to take care of GPU painting. // Compositor object to take care of GPU painting.
// A Browser compositor object is responsible for generating the final // A Browser compositor object is responsible for generating the final
@@ -198,6 +208,9 @@ class COMPOSITOR_EXPORT Compositor : public base::PowerSuspendObserver, @@ -191,6 +201,9 @@ class COMPOSITOR_EXPORT Compositor : public base::PowerSuspendObserver,
// Schedules a redraw of the layer tree associated with this compositor. // Schedules a redraw of the layer tree associated with this compositor.
void ScheduleDraw(); void ScheduleDraw();
@ -657,7 +657,7 @@ index d353cd4613c734c34f5333607335cc9a434ad88e..cabb39363b30c97f63d323d7a8156774
// Sets the root of the layer tree drawn by this Compositor. The root layer // Sets the root of the layer tree drawn by this Compositor. The root layer
// must have no parent. The compositor's root layer is reset if the root layer // must have no parent. The compositor's root layer is reset if the root layer
// is destroyed. NULL can be passed to reset the root layer, in which case the // is destroyed. NULL can be passed to reset the root layer, in which case the
@@ -616,6 +629,8 @@ class COMPOSITOR_EXPORT Compositor : public base::PowerSuspendObserver, @@ -609,6 +622,8 @@ class COMPOSITOR_EXPORT Compositor : public base::PowerSuspendObserver,
simple_begin_frame_observers_; simple_begin_frame_observers_;
std::unique_ptr<ui::HostBeginFrameObserver> host_begin_frame_observer_; std::unique_ptr<ui::HostBeginFrameObserver> host_begin_frame_observer_;

View file

@ -80,10 +80,10 @@ index 801db538979ba62facdcf3a472dade56723ca639..7abac9a5b13b393713534ae51664c2e5
private: private:
const std::string service_interface_name_; 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 diff --git a/content/browser/service_host/utility_process_host.cc b/content/browser/service_host/utility_process_host.cc
index b7dfacb25a09b105e982c013119271b8f137e7b9..8c351bb09e5110a2c6692acc37e7187c43eec8ff 100644 index 60c4a301c32a46cdc332cccd1cd4ae78802ee8b9..85fc14b2ef520abb191f926dc44a272f4c9e874b 100644
--- a/content/browser/service_host/utility_process_host.cc --- a/content/browser/service_host/utility_process_host.cc
+++ b/content/browser/service_host/utility_process_host.cc +++ b/content/browser/service_host/utility_process_host.cc
@@ -539,7 +539,7 @@ void UtilityProcessHost::OnProcessCrashed(int exit_code) { @@ -540,7 +540,7 @@ void UtilityProcessHost::OnProcessCrashed(int exit_code) {
// Take ownership of |client_| so the destructor doesn't notify it of // Take ownership of |client_| so the destructor doesn't notify it of
// termination. // termination.
auto client = std::move(client_); auto client = std::move(client_);
@ -93,7 +93,7 @@ index b7dfacb25a09b105e982c013119271b8f137e7b9..8c351bb09e5110a2c6692acc37e7187c
std::optional<std::string> UtilityProcessHost::GetServiceName() { std::optional<std::string> UtilityProcessHost::GetServiceName() {
diff --git a/content/browser/service_host/utility_process_host.h b/content/browser/service_host/utility_process_host.h diff --git a/content/browser/service_host/utility_process_host.h b/content/browser/service_host/utility_process_host.h
index ab6b64737245a840a3e2b06d2ab501ef4aaed7a2..9cf85b5fc97cf797965642d9bae5b3b0abf56e80 100644 index 1164da12ee71a8575c17bf1b84a505e8a32b96b3..4cbc30fc4b57440d06a0a0f642cc44c5c755e7f9 100644
--- a/content/browser/service_host/utility_process_host.h --- a/content/browser/service_host/utility_process_host.h
+++ b/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 @@ -79,7 +79,7 @@ class CONTENT_EXPORT UtilityProcessHost

View file

@ -7,7 +7,7 @@ This allows embedders to call SetDefersLoading without reaching into Blink inter
This might be upstreamable? This might be upstreamable?
diff --git a/third_party/blink/public/web/web_document_loader.h b/third_party/blink/public/web/web_document_loader.h diff --git a/third_party/blink/public/web/web_document_loader.h b/third_party/blink/public/web/web_document_loader.h
index 23b29fe25bc463ff1d36aa502a27c4222595e7c5..c1ac6172c4cee72f64f42ca64d2db9c0f1f48738 100644 index 0527831e1f8d7923ba0f687a5c0da8573189d867..f72af0e6cfcf06d47bd917def993f081530ab66b 100644
--- a/third_party/blink/public/web/web_document_loader.h --- a/third_party/blink/public/web/web_document_loader.h
+++ b/third_party/blink/public/web/web_document_loader.h +++ b/third_party/blink/public/web/web_document_loader.h
@@ -38,6 +38,7 @@ @@ -38,6 +38,7 @@
@ -28,10 +28,10 @@ index 23b29fe25bc463ff1d36aa502a27c4222595e7c5..c1ac6172c4cee72f64f42ca64d2db9c0
// Returns the http referrer of original request which initited this load. // 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 diff --git a/third_party/blink/renderer/core/loader/document_loader.h b/third_party/blink/renderer/core/loader/document_loader.h
index 1c6da71f9526f1567fe18d40524818f48e62584a..63b9bdae7f6552e047023be3b503bf05154e7ca9 100644 index e86efe8c9fc2d27fefc5e47afe401b8a6b1419ba..9d1ef55e4e122f30564f35406c8b51335e3d6996 100644
--- a/third_party/blink/renderer/core/loader/document_loader.h --- a/third_party/blink/renderer/core/loader/document_loader.h
+++ b/third_party/blink/renderer/core/loader/document_loader.h +++ b/third_party/blink/renderer/core/loader/document_loader.h
@@ -327,7 +327,7 @@ class CORE_EXPORT DocumentLoader : public GarbageCollected<DocumentLoader>, @@ -328,7 +328,7 @@ class CORE_EXPORT DocumentLoader : public GarbageCollected<DocumentLoader>,
soft_navigation_heuristics_task_id, soft_navigation_heuristics_task_id,
bool should_skip_screenshot); bool should_skip_screenshot);

View file

@ -17,7 +17,7 @@ headers, moving forward we should find a way in upstream to provide
access to these headers for loader clients created on the browser process. access to these headers for loader clients created on the browser process.
diff --git a/services/network/public/cpp/resource_request.cc b/services/network/public/cpp/resource_request.cc diff --git a/services/network/public/cpp/resource_request.cc b/services/network/public/cpp/resource_request.cc
index b60fd23a39eb423450b57275526ac4ba36058225..deafb4cd5a55853eb11a1371ca8331ee5f6050b2 100644 index 7d97d0fd5481bead1f655f2f933a3ae89a729834..9b4c41209190086353b9a87833c07aabb47470bd 100644
--- a/services/network/public/cpp/resource_request.cc --- a/services/network/public/cpp/resource_request.cc
+++ b/services/network/public/cpp/resource_request.cc +++ b/services/network/public/cpp/resource_request.cc
@@ -178,6 +178,7 @@ ResourceRequest::TrustedParams& ResourceRequest::TrustedParams::operator=( @@ -178,6 +178,7 @@ ResourceRequest::TrustedParams& ResourceRequest::TrustedParams::operator=(
@ -37,7 +37,7 @@ index b60fd23a39eb423450b57275526ac4ba36058225..deafb4cd5a55853eb11a1371ca8331ee
allow_cookies_from_browser == other.allow_cookies_from_browser && allow_cookies_from_browser == other.allow_cookies_from_browser &&
include_request_cookies_with_response == include_request_cookies_with_response ==
diff --git a/services/network/public/cpp/resource_request.h b/services/network/public/cpp/resource_request.h diff --git a/services/network/public/cpp/resource_request.h b/services/network/public/cpp/resource_request.h
index b87bb47d4d51f734ee3dc1e38158726795fcd19e..dd862ff8c43ecbc08467bf2b49ed5044d92ad3f3 100644 index 538e2a52da142a442342383d223ea0d90b75be8f..19f0defab1d1ba3369423842e4eabbceee781091 100644
--- a/services/network/public/cpp/resource_request.h --- a/services/network/public/cpp/resource_request.h
+++ b/services/network/public/cpp/resource_request.h +++ b/services/network/public/cpp/resource_request.h
@@ -77,6 +77,7 @@ struct COMPONENT_EXPORT(NETWORK_CPP_BASE) ResourceRequest { @@ -77,6 +77,7 @@ struct COMPONENT_EXPORT(NETWORK_CPP_BASE) ResourceRequest {
@ -49,7 +49,7 @@ index b87bb47d4d51f734ee3dc1e38158726795fcd19e..dd862ff8c43ecbc08467bf2b49ed5044
mojo::PendingRemote<mojom::TrustTokenAccessObserver> trust_token_observer; mojo::PendingRemote<mojom::TrustTokenAccessObserver> trust_token_observer;
mojo::PendingRemote<mojom::URLLoaderNetworkServiceObserver> mojo::PendingRemote<mojom::URLLoaderNetworkServiceObserver>
diff --git a/services/network/public/cpp/url_request_mojom_traits.cc b/services/network/public/cpp/url_request_mojom_traits.cc diff --git a/services/network/public/cpp/url_request_mojom_traits.cc b/services/network/public/cpp/url_request_mojom_traits.cc
index ae26e1cff7235ac77d4610f936cf83b01a9b429d..d45189ba3280cd6802240fc5cee25388f77bdb39 100644 index 2021e4c8f05008dd57e67c14fc7e66bf49bd6e3e..2a5ed7fc54f9efd773ec6dded1b66bb9c9f26580 100644
--- a/services/network/public/cpp/url_request_mojom_traits.cc --- a/services/network/public/cpp/url_request_mojom_traits.cc
+++ b/services/network/public/cpp/url_request_mojom_traits.cc +++ b/services/network/public/cpp/url_request_mojom_traits.cc
@@ -49,6 +49,7 @@ bool StructTraits<network::mojom::TrustedUrlRequestParamsDataView, @@ -49,6 +49,7 @@ bool StructTraits<network::mojom::TrustedUrlRequestParamsDataView,
@ -61,7 +61,7 @@ index ae26e1cff7235ac77d4610f936cf83b01a9b429d..d45189ba3280cd6802240fc5cee25388
mojo::PendingRemote<network::mojom::CookieAccessObserver>>(); mojo::PendingRemote<network::mojom::CookieAccessObserver>>();
out->trust_token_observer = data.TakeTrustTokenObserver< out->trust_token_observer = data.TakeTrustTokenObserver<
diff --git a/services/network/public/cpp/url_request_mojom_traits.h b/services/network/public/cpp/url_request_mojom_traits.h diff --git a/services/network/public/cpp/url_request_mojom_traits.h b/services/network/public/cpp/url_request_mojom_traits.h
index fc85f9def245d854d210b14f8190119fbd38404b..1392090ef9a1c8c0ef1a958ebeae75f24a11a6ea 100644 index 30a38e3f82360417b682c516263f62181825c621..db8a479f483a041a6944465deb6f799a2a9bd93a 100644
--- a/services/network/public/cpp/url_request_mojom_traits.h --- a/services/network/public/cpp/url_request_mojom_traits.h
+++ b/services/network/public/cpp/url_request_mojom_traits.h +++ b/services/network/public/cpp/url_request_mojom_traits.h
@@ -71,6 +71,10 @@ struct COMPONENT_EXPORT(NETWORK_CPP_BASE) @@ -71,6 +71,10 @@ struct COMPONENT_EXPORT(NETWORK_CPP_BASE)
@ -76,7 +76,7 @@ index fc85f9def245d854d210b14f8190119fbd38404b..1392090ef9a1c8c0ef1a958ebeae75f2
cookie_observer( cookie_observer(
const network::ResourceRequest::TrustedParams& trusted_params) { const network::ResourceRequest::TrustedParams& trusted_params) {
diff --git a/services/network/public/mojom/url_request.mojom b/services/network/public/mojom/url_request.mojom diff --git a/services/network/public/mojom/url_request.mojom b/services/network/public/mojom/url_request.mojom
index eb5ca6401eec0ff1d6a897ea86ca2a1a252f86ec..caedd3dfde37dd136721429f90799e0493ab0a9d 100644 index 78fa9126457ee380b12e39e3bf35ea4c2ccaa36c..4f39fa5d3bd665e3343882d11f1ab5747c80610e 100644
--- a/services/network/public/mojom/url_request.mojom --- a/services/network/public/mojom/url_request.mojom
+++ b/services/network/public/mojom/url_request.mojom +++ b/services/network/public/mojom/url_request.mojom
@@ -74,6 +74,9 @@ struct TrustedUrlRequestParams { @@ -74,6 +74,9 @@ struct TrustedUrlRequestParams {
@ -90,7 +90,7 @@ index eb5ca6401eec0ff1d6a897ea86ca2a1a252f86ec..caedd3dfde37dd136721429f90799e04
// a cookie. If this is set to non-null, the observer passed to // a cookie. If this is set to non-null, the observer passed to
// URLLoaderFactory will be ignored. // URLLoaderFactory will be ignored.
diff --git a/services/network/public/mojom/url_response_head.mojom b/services/network/public/mojom/url_response_head.mojom diff --git a/services/network/public/mojom/url_response_head.mojom b/services/network/public/mojom/url_response_head.mojom
index 1e5b36d0a46d9c66b7a56a6668663dd8196bd172..3431f4c3959264b64ac0f35654719ab0b45b5cb7 100644 index 72188dae668f2bd91b8b7f181448f459600a82c2..b3dae05e160160cc8f2decee5af78c21bd76c822 100644
--- a/services/network/public/mojom/url_response_head.mojom --- a/services/network/public/mojom/url_response_head.mojom
+++ b/services/network/public/mojom/url_response_head.mojom +++ b/services/network/public/mojom/url_response_head.mojom
@@ -13,6 +13,7 @@ import "services/network/public/mojom/attribution.mojom"; @@ -13,6 +13,7 @@ import "services/network/public/mojom/attribution.mojom";
@ -101,7 +101,7 @@ index 1e5b36d0a46d9c66b7a56a6668663dd8196bd172..3431f4c3959264b64ac0f35654719ab0
import "services/network/public/mojom/ip_endpoint.mojom"; import "services/network/public/mojom/ip_endpoint.mojom";
import "services/network/public/mojom/load_timing_info.mojom"; import "services/network/public/mojom/load_timing_info.mojom";
import "services/network/public/mojom/network_param.mojom"; import "services/network/public/mojom/network_param.mojom";
@@ -50,6 +51,9 @@ struct URLResponseHead { @@ -51,6 +52,9 @@ struct URLResponseHead {
// The response headers or NULL if the URL type does not support headers. // The response headers or NULL if the URL type does not support headers.
HttpResponseHeaders headers; HttpResponseHeaders headers;
@ -112,10 +112,10 @@ index 1e5b36d0a46d9c66b7a56a6668663dd8196bd172..3431f4c3959264b64ac0f35654719ab0
string mime_type; string mime_type;
diff --git a/services/network/url_loader.cc b/services/network/url_loader.cc diff --git a/services/network/url_loader.cc b/services/network/url_loader.cc
index c5f551ca79ecfb80a3c29b901d44a83d082a6da6..bae9c2c10d240a8691787d6e52190b13575df020 100644 index 54501620f428c1e539a8172054180c9c58145766..bbde6ebfb8f051622b1f499d472b00fac2093be7 100644
--- a/services/network/url_loader.cc --- a/services/network/url_loader.cc
+++ b/services/network/url_loader.cc +++ b/services/network/url_loader.cc
@@ -669,6 +669,9 @@ URLLoader::URLLoader( @@ -673,6 +673,9 @@ URLLoader::URLLoader(
mojo::SimpleWatcher::ArmingPolicy::MANUAL, mojo::SimpleWatcher::ArmingPolicy::MANUAL,
base::SequencedTaskRunner::GetCurrentDefault()), base::SequencedTaskRunner::GetCurrentDefault()),
per_factory_orb_state_(context.GetMutableOrbState()), per_factory_orb_state_(context.GetMutableOrbState()),
@ -125,7 +125,7 @@ index c5f551ca79ecfb80a3c29b901d44a83d082a6da6..bae9c2c10d240a8691787d6e52190b13
devtools_request_id_(request.devtools_request_id), devtools_request_id_(request.devtools_request_id),
options_(PopulateOptions(options, options_(PopulateOptions(options,
factory_params_->is_orb_enabled, factory_params_->is_orb_enabled,
@@ -970,7 +973,7 @@ void URLLoader::ConfigureRequest( @@ -982,7 +985,7 @@ void URLLoader::ConfigureRequest(
&URLLoader::IsSharedDictionaryReadAllowed, base::Unretained(this))); &URLLoader::IsSharedDictionaryReadAllowed, base::Unretained(this)));
} }
@ -134,7 +134,7 @@ index c5f551ca79ecfb80a3c29b901d44a83d082a6da6..bae9c2c10d240a8691787d6e52190b13
url_request_->SetResponseHeadersCallback(base::BindRepeating( url_request_->SetResponseHeadersCallback(base::BindRepeating(
&URLLoader::SetRawResponseHeaders, base::Unretained(this))); &URLLoader::SetRawResponseHeaders, base::Unretained(this)));
} }
@@ -2062,6 +2065,19 @@ void URLLoader::OnResponseStarted(net::URLRequest* url_request, int net_error) { @@ -2142,6 +2145,19 @@ void URLLoader::OnResponseStarted(net::URLRequest* url_request, int net_error) {
} }
response_ = BuildResponseHead(); response_ = BuildResponseHead();
@ -155,10 +155,10 @@ index c5f551ca79ecfb80a3c29b901d44a83d082a6da6..bae9c2c10d240a8691787d6e52190b13
// Parse and remove the Trust Tokens response headers, if any are expected, // Parse and remove the Trust Tokens response headers, if any are expected,
diff --git a/services/network/url_loader.h b/services/network/url_loader.h diff --git a/services/network/url_loader.h b/services/network/url_loader.h
index 06b9d01648881d1b955cc6db195a658811e47e84..730fd3ef9f95ba634b43856d432c072962d6000e 100644 index e6962f686212ca39d66b5d21bd3ff1f852e83644..fd3eb86e2f0f9b3705029befc54c85690e8ca519 100644
--- a/services/network/url_loader.h --- a/services/network/url_loader.h
+++ b/services/network/url_loader.h +++ b/services/network/url_loader.h
@@ -712,6 +712,8 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) URLLoader @@ -773,6 +773,8 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) URLLoader
std::unique_ptr<ResourceScheduler::ScheduledResourceRequest> std::unique_ptr<ResourceScheduler::ScheduledResourceRequest>
resource_scheduler_request_handle_; resource_scheduler_request_handle_;

View file

@ -14,10 +14,10 @@ This patch likely can't be upstreamed as-is, as Chromium doesn't have
this use case in mind currently. this use case in mind currently.
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc
index 3d8a590aacd3a65d5a19004dc11e770b31a0f614..64dd7b6e507b61fab7a044823462fb04eabba698 100644 index 29829e282edfa8821bd366a9e9a3755d7f3f8643..9feff09aa83eb88460dce786ab2514f0a9b21c6e 100644
--- a/ui/views/win/hwnd_message_handler.cc --- a/ui/views/win/hwnd_message_handler.cc
+++ b/ui/views/win/hwnd_message_handler.cc +++ b/ui/views/win/hwnd_message_handler.cc
@@ -941,13 +941,13 @@ void HWNDMessageHandler::FrameTypeChanged() { @@ -952,13 +952,13 @@ void HWNDMessageHandler::FrameTypeChanged() {
void HWNDMessageHandler::PaintAsActiveChanged() { void HWNDMessageHandler::PaintAsActiveChanged() {
if (!delegate_->HasNonClientView() || !delegate_->CanActivate() || if (!delegate_->HasNonClientView() || !delegate_->CanActivate() ||
@ -33,7 +33,7 @@ index 3d8a590aacd3a65d5a19004dc11e770b31a0f614..64dd7b6e507b61fab7a044823462fb04
} }
void HWNDMessageHandler::SetWindowIcons(const gfx::ImageSkia& window_icon, void HWNDMessageHandler::SetWindowIcons(const gfx::ImageSkia& window_icon,
@@ -2337,17 +2337,18 @@ LRESULT HWNDMessageHandler::OnNCActivate(UINT message, @@ -2356,17 +2356,18 @@ LRESULT HWNDMessageHandler::OnNCActivate(UINT message,
delegate_->SchedulePaint(); delegate_->SchedulePaint();
} }

View file

@ -12,10 +12,10 @@ ui problems (like dissapearing popup during typing in html's
input list. input list.
diff --git a/ui/views/widget/widget.h b/ui/views/widget/widget.h diff --git a/ui/views/widget/widget.h b/ui/views/widget/widget.h
index bfea25523fd1df85d9393fce80259a8654b8a7c2..e3cd3083bc8c19fdc29729d7ff6db7d0fc562ce6 100644 index 00113c5a91e4285a102afd37c6c08736d056faf6..f6a719ba09ed9aedc1bdc8322e9bee8d2014fc39 100644
--- a/ui/views/widget/widget.h --- a/ui/views/widget/widget.h
+++ b/ui/views/widget/widget.h +++ b/ui/views/widget/widget.h
@@ -1209,6 +1209,8 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate, @@ -1211,6 +1211,8 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate,
// True if widget was created in headless mode. // True if widget was created in headless mode.
bool is_headless() const { return is_headless_; } bool is_headless() const { return is_headless_; }

View file

@ -11,10 +11,10 @@ enlarge window above dimensions set during creation of the
BrowserWindow. BrowserWindow.
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc
index adade58a533c373087d8c51a5744e8f118ba6e9d..3a60e310d1c4048f0e37e085c97b8dfc093aefda 100644 index 539f5920661010139dc69afb3ff7dd4c9bae762a..1cf98eadc8cbc1ada481c709a873dc1dd443de66 100644
--- a/ui/views/win/hwnd_message_handler.cc --- a/ui/views/win/hwnd_message_handler.cc
+++ b/ui/views/win/hwnd_message_handler.cc +++ b/ui/views/win/hwnd_message_handler.cc
@@ -3759,15 +3759,30 @@ void HWNDMessageHandler::SizeWindowToAspectRatio(UINT param, @@ -3781,15 +3781,30 @@ void HWNDMessageHandler::SizeWindowToAspectRatio(UINT param,
delegate_->GetMinMaxSize(&min_window_size, &max_window_size); delegate_->GetMinMaxSize(&min_window_size, &max_window_size);
min_window_size = delegate_->DIPToScreenSize(min_window_size); min_window_size = delegate_->DIPToScreenSize(min_window_size);
max_window_size = delegate_->DIPToScreenSize(max_window_size); max_window_size = delegate_->DIPToScreenSize(max_window_size);

View file

@ -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. 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 diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc
index 4f7e3cd70d45dd9d0d67b6a39a5dac59af9b95af..a8a0bedfc14cd475ff112e5ff07e137ec4219662 100644 index 005c18b0685e504a7c323cb2a622e893955fe738..c9e55ca1da0e3f37777cc989511942e622ad05a8 100644
--- a/content/browser/renderer_host/navigation_request.cc --- a/content/browser/renderer_host/navigation_request.cc
+++ b/content/browser/renderer_host/navigation_request.cc +++ b/content/browser/renderer_host/navigation_request.cc
@@ -11068,6 +11068,12 @@ NavigationRequest::GetOriginForURLLoaderFactoryUncheckedWithDebugInfo() { @@ -11083,6 +11083,12 @@ NavigationRequest::GetOriginForURLLoaderFactoryUncheckedWithDebugInfo() {
"blob"); "blob");
} }
@ -45,7 +45,7 @@ index 4f7e3cd70d45dd9d0d67b6a39a5dac59af9b95af..a8a0bedfc14cd475ff112e5ff07e137e
// origin of |common_params.url| and/or |common_params.initiator_origin|. // origin of |common_params.url| and/or |common_params.initiator_origin|.
url::Origin resolved_origin = url::Origin::Resolve( 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 diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_party/blink/renderer/core/loader/document_loader.cc
index ab265777ded9c875ccafd83b44853d92e35c60fb..074fa3544afd423555578cf0df835171ab559201 100644 index ca61af9af555e267228430496118797eff130160..bb7c020ba1672e21a3ffee13ff1d3934bde0f099 100644
--- a/third_party/blink/renderer/core/loader/document_loader.cc --- a/third_party/blink/renderer/core/loader/document_loader.cc
+++ b/third_party/blink/renderer/core/loader/document_loader.cc +++ b/third_party/blink/renderer/core/loader/document_loader.cc
@@ -2334,6 +2334,10 @@ Frame* DocumentLoader::CalculateOwnerFrame() { @@ -2334,6 +2334,10 @@ Frame* DocumentLoader::CalculateOwnerFrame() {

View file

@ -53,10 +53,10 @@ index 008df596834faccfa19525dcae0239ffed7b2c3f..aecfa059c6ac53a3377e1f60b3c66bbb
void Compositor::SetSeamlessRefreshRates( void Compositor::SetSeamlessRefreshRates(
const std::vector<float>& seamless_refresh_rates) { const std::vector<float>& seamless_refresh_rates) {
diff --git a/ui/compositor/compositor.h b/ui/compositor/compositor.h diff --git a/ui/compositor/compositor.h b/ui/compositor/compositor.h
index cabb39363b30c97f63d323d7a8156774b67f6b32..54e012fa4b0253d8c8f88cc2021be0dcf77cbdee 100644 index 3f52b93eab20108e40131472d8abdf9ff60bd191..ee19a847cf6d446a927734b9fdd3f1547a9f2d14 100644
--- a/ui/compositor/compositor.h --- a/ui/compositor/compositor.h
+++ b/ui/compositor/compositor.h +++ b/ui/compositor/compositor.h
@@ -519,6 +519,10 @@ class COMPOSITOR_EXPORT Compositor : public base::PowerSuspendObserver, @@ -512,6 +512,10 @@ class COMPOSITOR_EXPORT Compositor : public base::PowerSuspendObserver,
const cc::LayerTreeSettings& GetLayerTreeSettings() const; const cc::LayerTreeSettings& GetLayerTreeSettings() const;
@ -67,7 +67,7 @@ index cabb39363b30c97f63d323d7a8156774b67f6b32..54e012fa4b0253d8c8f88cc2021be0dc
size_t saved_events_metrics_count_for_testing() const { size_t saved_events_metrics_count_for_testing() const {
return host_->saved_events_metrics_count_for_testing(); return host_->saved_events_metrics_count_for_testing();
} }
@@ -710,6 +714,12 @@ class COMPOSITOR_EXPORT Compositor : public base::PowerSuspendObserver, @@ -703,6 +707,12 @@ class COMPOSITOR_EXPORT Compositor : public base::PowerSuspendObserver,
// See go/report-ux-metrics-at-painting for details. // See go/report-ux-metrics-at-painting for details.
bool animation_started_ = false; bool animation_started_ = false;

View file

@ -9,7 +9,7 @@ to support content settings UI. The support pulls in chrome content settings
and UI code which are not valid in the scope of Electron. and UI code which are not valid in the scope of Electron.
diff --git a/chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc b/chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc diff --git a/chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc b/chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc
index ea4646388c4747438ddd7a9164a9e61091679c28..5aded14b616e70ac98e0daa7ff94ec4294409950 100644 index 9f82c7f92f735ed9f9569a8d299d23c7cb83e596..9b7598a26781da8b1e1c7364606574024000921f 100644
--- a/chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc --- a/chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc
+++ b/chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc +++ b/chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc
@@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
@ -30,7 +30,7 @@ index ea4646388c4747438ddd7a9164a9e61091679c28..5aded14b616e70ac98e0daa7ff94ec42
#include "media/base/media_switches.h" #include "media/base/media_switches.h"
#include "net/base/url_util.h" #include "net/base/url_util.h"
#include "third_party/blink/public/common/features.h" #include "third_party/blink/public/common/features.h"
@@ -49,7 +52,7 @@ constexpr gfx::Size kMinWindowSize(240, 52); @@ -53,7 +56,7 @@ constexpr gfx::Size kMinWindowSize(240, 52);
// not apply to video Picture-in-Picture windows. // not apply to video Picture-in-Picture windows.
constexpr double kMaxWindowSizeRatio = 0.8; constexpr double kMaxWindowSizeRatio = 0.8;
@ -39,7 +39,7 @@ index ea4646388c4747438ddd7a9164a9e61091679c28..5aded14b616e70ac98e0daa7ff94ec42
// Returns true if a document picture-in-picture window should be focused upon // Returns true if a document picture-in-picture window should be focused upon
// opening it. // opening it.
bool ShouldFocusPictureInPictureWindow(const NavigateParams& params) { bool ShouldFocusPictureInPictureWindow(const NavigateParams& params) {
@@ -196,7 +199,7 @@ bool PictureInPictureWindowManager::ExitPictureInPictureViaWindowUi( @@ -200,7 +203,7 @@ bool PictureInPictureWindowManager::ExitPictureInPictureViaWindowUi(
return false; return false;
} }
@ -48,7 +48,7 @@ index ea4646388c4747438ddd7a9164a9e61091679c28..5aded14b616e70ac98e0daa7ff94ec42
// The user manually closed the pip window, so let the tab helper know in case // The user manually closed the pip window, so let the tab helper know in case
// the auto-pip permission dialog was visible. // the auto-pip permission dialog was visible.
if (auto* tab_helper = AutoPictureInPictureTabHelper::FromWebContents( if (auto* tab_helper = AutoPictureInPictureTabHelper::FromWebContents(
@@ -401,7 +404,7 @@ gfx::Size PictureInPictureWindowManager::GetMaximumWindowSize( @@ -415,7 +418,7 @@ gfx::Size PictureInPictureWindowManager::GetMaximumWindowSize(
// static // static
void PictureInPictureWindowManager::SetWindowParams(NavigateParams& params) { void PictureInPictureWindowManager::SetWindowParams(NavigateParams& params) {
@ -57,7 +57,7 @@ index ea4646388c4747438ddd7a9164a9e61091679c28..5aded14b616e70ac98e0daa7ff94ec42
// Always show document picture-in-picture in a new window. When this is // Always show document picture-in-picture in a new window. When this is
// not opened via the AutoPictureInPictureTabHelper, focus the window. // not opened via the AutoPictureInPictureTabHelper, focus the window.
params.window_action = ShouldFocusPictureInPictureWindow(params) params.window_action = ShouldFocusPictureInPictureWindow(params)
@@ -493,6 +496,7 @@ PictureInPictureWindowManager::GetOverlayView( @@ -507,6 +510,7 @@ PictureInPictureWindowManager::GetOverlayView(
return nullptr; return nullptr;
} }
@ -65,7 +65,7 @@ index ea4646388c4747438ddd7a9164a9e61091679c28..5aded14b616e70ac98e0daa7ff94ec42
// It would be nice to create this in `EnterPictureInPicture*`, but detecting // It would be nice to create this in `EnterPictureInPicture*`, but detecting
// auto-pip while pip is in the process of opening doesn't work. // auto-pip while pip is in the process of opening doesn't work.
// //
@@ -531,6 +535,8 @@ PictureInPictureWindowManager::GetOverlayView( @@ -545,6 +549,8 @@ PictureInPictureWindowManager::GetOverlayView(
} }
return overlay_view; return overlay_view;
@ -75,7 +75,7 @@ index ea4646388c4747438ddd7a9164a9e61091679c28..5aded14b616e70ac98e0daa7ff94ec42
PictureInPictureOcclusionTracker* PictureInPictureOcclusionTracker*
diff --git a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc diff --git a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc
index f9e29227fe9396747bed8b1ec970cfdfcf72c03c..d96f85145d1ad2843cf2659f68e2fd1d93c4c1c4 100644 index e8524bb6706ae06a0feabccbe44250580098e937..87b28c59d5a3abc49c7f5ed084ad78dcae02b39a 100644
--- a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc --- a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc
+++ b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc +++ b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc
@@ -430,11 +430,13 @@ std::unique_ptr<VideoOverlayWindowViews> VideoOverlayWindowViews::Create( @@ -430,11 +430,13 @@ std::unique_ptr<VideoOverlayWindowViews> VideoOverlayWindowViews::Create(

View file

@ -13,10 +13,10 @@ messages in the legacy window handle layer.
These conditions are regularly hit with WCO-enabled windows on Windows. These conditions are regularly hit with WCO-enabled windows on Windows.
diff --git a/content/browser/renderer_host/legacy_render_widget_host_win.cc b/content/browser/renderer_host/legacy_render_widget_host_win.cc diff --git a/content/browser/renderer_host/legacy_render_widget_host_win.cc b/content/browser/renderer_host/legacy_render_widget_host_win.cc
index e63c2f637828d426e1c8fb16774a08722bfc9fcc..bfc5254ec692fc5cfbd93fabae7969adeb644393 100644 index ffbef89276aeaa167424b67a07080b38457ec5d3..f39a79687595d7547e3a25fc4dc1cdbc5c2495b4 100644
--- a/content/browser/renderer_host/legacy_render_widget_host_win.cc --- a/content/browser/renderer_host/legacy_render_widget_host_win.cc
+++ b/content/browser/renderer_host/legacy_render_widget_host_win.cc +++ b/content/browser/renderer_host/legacy_render_widget_host_win.cc
@@ -325,12 +325,12 @@ LRESULT LegacyRenderWidgetHostHWND::OnMouseRange(UINT message, @@ -328,12 +328,12 @@ LRESULT LegacyRenderWidgetHostHWND::OnMouseRange(UINT message,
WPARAM w_param, WPARAM w_param,
LPARAM l_param, LPARAM l_param,
BOOL& handled) { BOOL& handled) {
@ -31,23 +31,23 @@ index e63c2f637828d426e1c8fb16774a08722bfc9fcc..bfc5254ec692fc5cfbd93fabae7969ad
tme.hwndTrack = hwnd(); tme.hwndTrack = hwnd();
tme.dwHoverTime = 0; tme.dwHoverTime = 0;
TrackMouseEvent(&tme); TrackMouseEvent(&tme);
@@ -361,7 +361,10 @@ LRESULT LegacyRenderWidgetHostHWND::OnMouseRange(UINT message, @@ -366,7 +366,10 @@ LRESULT LegacyRenderWidgetHostHWND::OnMouseRange(UINT message,
// out of the picture. // the picture.
if (!handled && if (!handled &&
(message >= WM_NCMOUSEMOVE && message <= WM_NCXBUTTONDBLCLK)) { (message >= WM_NCMOUSEMOVE && message <= WM_NCXBUTTONDBLCLK)) {
- ret = ::DefWindowProc(GetParent(), message, w_param, l_param); - ret = ::DefWindowProc(GetParent(), message, w_param, l_param);
+ // Send WM_NCMOUSEMOVE messages using the LegacyRenderWidgetHostHWND's + // Send WM_NCMOUSEMOVE messages using the LegacyRenderWidgetHostHWND's
+ // handle so mouse tracking on non-client areas doesn't break. + // handle so mouse tracking on non-client areas doesn't break.
+ HWND target = message == WM_NCMOUSEMOVE ? hwnd() : GetParent(); + HWND target = message == WM_NCMOUSEMOVE ? hwnd() : GetParent();
+ ret = ::DefWindowProc(target, message, w_param, l_param); + ret = ::DefWindowProc(target, message, w_param, l_param);
handled = TRUE; handled = TRUE;
}
} }
return ret;
diff --git a/content/browser/renderer_host/legacy_render_widget_host_win.h b/content/browser/renderer_host/legacy_render_widget_host_win.h diff --git a/content/browser/renderer_host/legacy_render_widget_host_win.h b/content/browser/renderer_host/legacy_render_widget_host_win.h
index aad10a91356b8b13e15fac0488d25187af23ce36..f9a3db0c54831ad0a1c9946a98a6d7154776ae51 100644 index 17952b4b6ab559ba1c9076b100b060a7011edeec..1eda20e67d3b3184bec154f24c4259bb4a49b099 100644
--- a/content/browser/renderer_host/legacy_render_widget_host_win.h --- a/content/browser/renderer_host/legacy_render_widget_host_win.h
+++ b/content/browser/renderer_host/legacy_render_widget_host_win.h +++ b/content/browser/renderer_host/legacy_render_widget_host_win.h
@@ -103,6 +103,7 @@ class CONTENT_EXPORT LegacyRenderWidgetHostHWND @@ -105,6 +105,7 @@ class CONTENT_EXPORT LegacyRenderWidgetHostHWND
MESSAGE_HANDLER_EX(WM_VSCROLL, OnScroll) MESSAGE_HANDLER_EX(WM_VSCROLL, OnScroll)
MESSAGE_HANDLER_EX(WM_NCHITTEST, OnNCHitTest) MESSAGE_HANDLER_EX(WM_NCHITTEST, OnNCHitTest)
MESSAGE_RANGE_HANDLER(WM_NCMOUSEMOVE, WM_NCXBUTTONDBLCLK, OnMouseRange) MESSAGE_RANGE_HANDLER(WM_NCMOUSEMOVE, WM_NCXBUTTONDBLCLK, OnMouseRange)

View file

@ -9,10 +9,10 @@ focus node change via TextInputManager.
chromium-bug: https://crbug.com/1369605 chromium-bug: https://crbug.com/1369605
diff --git a/content/browser/renderer_host/render_widget_host_view_aura.cc b/content/browser/renderer_host/render_widget_host_view_aura.cc diff --git a/content/browser/renderer_host/render_widget_host_view_aura.cc b/content/browser/renderer_host/render_widget_host_view_aura.cc
index 7e9f2e71f08c1324a805462064d4fa485041c19f..2b4543ca40eac0f56c6408e27aac523827093724 100644 index 95a52f1cc2024e4a9cd694429d5304a5860a1c1e..3e096f196b9514fec5738f29e7c63bcbb9b2f640 100644
--- a/content/browser/renderer_host/render_widget_host_view_aura.cc --- a/content/browser/renderer_host/render_widget_host_view_aura.cc
+++ b/content/browser/renderer_host/render_widget_host_view_aura.cc +++ b/content/browser/renderer_host/render_widget_host_view_aura.cc
@@ -3220,6 +3220,12 @@ void RenderWidgetHostViewAura::OnTextSelectionChanged( @@ -3241,6 +3241,12 @@ void RenderWidgetHostViewAura::OnTextSelectionChanged(
} }
} }
@ -26,10 +26,10 @@ index 7e9f2e71f08c1324a805462064d4fa485041c19f..2b4543ca40eac0f56c6408e27aac5238
RenderWidgetHostViewAura* popup_child_host_view) { RenderWidgetHostViewAura* popup_child_host_view) {
popup_child_host_view_ = popup_child_host_view; popup_child_host_view_ = popup_child_host_view;
diff --git a/content/browser/renderer_host/render_widget_host_view_aura.h b/content/browser/renderer_host/render_widget_host_view_aura.h diff --git a/content/browser/renderer_host/render_widget_host_view_aura.h b/content/browser/renderer_host/render_widget_host_view_aura.h
index 06fc7daf2761ae728f3adf9eb2ef3910a14cf827..8d34f9dfd9a8625a3fab397f7b96c12c87cb8a61 100644 index 6f96b83c36ee026bd37b54de55da72cc802ed699..c54ed7d8f5d4d371626865c6ae63ef2efbef1dba 100644
--- a/content/browser/renderer_host/render_widget_host_view_aura.h --- a/content/browser/renderer_host/render_widget_host_view_aura.h
+++ b/content/browser/renderer_host/render_widget_host_view_aura.h +++ b/content/browser/renderer_host/render_widget_host_view_aura.h
@@ -653,6 +653,8 @@ class CONTENT_EXPORT RenderWidgetHostViewAura @@ -654,6 +654,8 @@ class CONTENT_EXPORT RenderWidgetHostViewAura
RenderWidgetHostViewBase* updated_view) override; RenderWidgetHostViewBase* updated_view) override;
void OnTextSelectionChanged(TextInputManager* text_input_mangager, void OnTextSelectionChanged(TextInputManager* text_input_mangager,
RenderWidgetHostViewBase* updated_view) override; RenderWidgetHostViewBase* updated_view) override;
@ -87,10 +87,10 @@ index 75df43e3cd2721a92c90c18154d53d5c203e2465..ce42c75c8face36d21f53f44c0201ac4
// The view with active text input state, i.e., a focused <input> element. // The view with active text input state, i.e., a focused <input> element.
// It will be nullptr if no such view exists. Note that the active view // 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 diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index c3b563b0b727bc35f6d4499c589110644ebe9cd1..6010d9f9fc9bfeffb3e5a64de7352b52a202cbf7 100644 index 1e6ee8c65d56f2821485f855bbf4e8bb8212058c..51355738262d80afaf1f319b5d90c8a74d435ffd 100644
--- a/content/browser/web_contents/web_contents_impl.cc --- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc
@@ -9772,7 +9772,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame( @@ -9834,7 +9834,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame(
"WebContentsImpl::OnFocusedElementChangedInFrame", "WebContentsImpl::OnFocusedElementChangedInFrame",
"render_frame_host", frame); "render_frame_host", frame);
RenderWidgetHostViewBase* root_view = RenderWidgetHostViewBase* root_view =

View file

@ -62,7 +62,7 @@ index f39f8b2dd3aa2b89498ed5331aa9b9ba6a02abf5..c0e155c14b2b4e81cde35cea1db284bc
PMPrintSettings print_settings = PMPrintSettings print_settings =
static_cast<PMPrintSettings>([print_info_ PMPrintSettings]); static_cast<PMPrintSettings>([print_info_ PMPrintSettings]);
diff --git a/printing/printing_context_system_dialog_win.cc b/printing/printing_context_system_dialog_win.cc diff --git a/printing/printing_context_system_dialog_win.cc b/printing/printing_context_system_dialog_win.cc
index 858e1bb00390b6097a27ffe20997672914e8f28f..953f203d21b4da559791efe228f27b56c2f85263 100644 index d5eec01f35bd182d5bb49138fc66446fcd5f8cdf..3c289d7cdf7fdf7717fc2397e3344cbe614e0b70 100644
--- a/printing/printing_context_system_dialog_win.cc --- a/printing/printing_context_system_dialog_win.cc
+++ b/printing/printing_context_system_dialog_win.cc +++ b/printing/printing_context_system_dialog_win.cc
@@ -73,14 +73,30 @@ void PrintingContextSystemDialogWin::AskUserForSettings( @@ -73,14 +73,30 @@ void PrintingContextSystemDialogWin::AskUserForSettings(
@ -70,7 +70,7 @@ index 858e1bb00390b6097a27ffe20997672914e8f28f..953f203d21b4da559791efe228f27b56
dialog_options.nStartPage = START_PAGE_GENERAL; dialog_options.nStartPage = START_PAGE_GENERAL;
if (max_pages) { if (max_pages) {
- // Default initialize to print all the pages. - // Default initialize to print all the pages.
memset(ranges, 0, sizeof(ranges)); UNSAFE_TODO(memset(ranges, 0, sizeof(ranges)));
- ranges[0].nFromPage = 1; - ranges[0].nFromPage = 1;
- ranges[0].nToPage = max_pages; - ranges[0].nToPage = max_pages;
- dialog_options.nPageRanges = 1; - dialog_options.nPageRanges = 1;

View file

@ -18,10 +18,10 @@ or resizing, but Electron does not seem to run into that issue
for opaque frameless windows even with that block commented out. for opaque frameless windows even with that block commented out.
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc
index 8fe48c9bef144218e34434d563883b15733d03bc..3d8a590aacd3a65d5a19004dc11e770b31a0f614 100644 index cec234006cbcacff953ce9ff4175006b057aa341..29829e282edfa8821bd366a9e9a3755d7f3f8643 100644
--- a/ui/views/win/hwnd_message_handler.cc --- a/ui/views/win/hwnd_message_handler.cc
+++ b/ui/views/win/hwnd_message_handler.cc +++ b/ui/views/win/hwnd_message_handler.cc
@@ -1796,7 +1796,23 @@ LRESULT HWNDMessageHandler::OnCreate(CREATESTRUCT* create_struct) { @@ -1816,7 +1816,23 @@ LRESULT HWNDMessageHandler::OnCreate(CREATESTRUCT* create_struct) {
SendMessage(hwnd(), WM_CHANGEUISTATE, MAKELPARAM(UIS_CLEAR, UISF_HIDEFOCUS), SendMessage(hwnd(), WM_CHANGEUISTATE, MAKELPARAM(UIS_CLEAR, UISF_HIDEFOCUS),
0); 0);

View file

@ -11,10 +11,10 @@ This patch should be upstreamed as a conditional revert of the logic in desktop
vs mobile runtimes. i.e. restore the old logic only on desktop platforms 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 diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc
index 7c31b82e2903507bb69aaa71fc0ed51cad06d1c2..0ad97d9973fc6d637967f911cb37ada2313e2776 100644 index 9bcab4e1e8a0fa429488555f4f7bd1c54888d10e..bb2e3afdd2b3c6579e32d7eeba59bfc06e952ea2 100644
--- a/content/browser/renderer_host/render_widget_host_impl.cc --- a/content/browser/renderer_host/render_widget_host_impl.cc
+++ b/content/browser/renderer_host/render_widget_host_impl.cc +++ b/content/browser/renderer_host/render_widget_host_impl.cc
@@ -2114,9 +2114,8 @@ RenderWidgetHostImpl::GetWidgetInputHandler() { @@ -2122,9 +2122,8 @@ RenderWidgetHostImpl::GetWidgetInputHandler() {
void RenderWidgetHostImpl::NotifyScreenInfoChanged() { void RenderWidgetHostImpl::NotifyScreenInfoChanged() {
// The resize message (which may not happen immediately) will carry with it // The resize message (which may not happen immediately) will carry with it
// the screen info as well as the new size (if the screen has changed scale // the screen info as well as the new size (if the screen has changed scale

View file

@ -59,7 +59,7 @@ index cba373664bec3a32abad6fe0396bd67b53b7e67f..a54f1b3351efd2d8f324436f7f35cd43
#endif // THIRD_PARTY_BLINK_PUBLIC_WEB_WEB_SCRIPT_EXECUTION_CALLBACK_H_ #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 diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc
index 99ae1320be10ac19d204edfe1c1cf4f52c62eb76..e6a3957848f760809deb0080ee5b87c849dca587 100644 index 19efdf1f30eb5409f9d8a64f008891a2f4bda47c..0e1212d227ee5ffc536bd0349708a31db6ddfe28 100644
--- a/third_party/blink/renderer/core/frame/local_frame.cc --- a/third_party/blink/renderer/core/frame/local_frame.cc
+++ b/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc
@@ -3099,6 +3099,7 @@ void LocalFrame::RequestExecuteScript( @@ -3099,6 +3099,7 @@ void LocalFrame::RequestExecuteScript(
@ -92,7 +92,7 @@ index 5cdeaa531babca965bed7e1e18ee993f1ba0d847..651e64c0ea39ec28db117aa3a61ea87d
mojom::blink::WantResultOption, mojom::blink::WantResultOption,
mojom::blink::PromiseResultOption); mojom::blink::PromiseResultOption);
diff --git a/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc b/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc diff --git a/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc b/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc
index b77ad041a717ef8f317a9d15edd61af3c465b2aa..e3955c64ff894682b91c4cc3c49c672659e3a3bf 100644 index ff24f4607190bc127a3da3aba0544cb6f67dde3f..9aa4f9d0356c078f5f42b06dc166686dc0c64b81 100644
--- a/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc --- a/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc
+++ b/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc +++ b/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc
@@ -964,6 +964,7 @@ void LocalFrameMojoHandler::JavaScriptExecuteRequestInIsolatedWorld( @@ -964,6 +964,7 @@ void LocalFrameMojoHandler::JavaScriptExecuteRequestInIsolatedWorld(
@ -203,7 +203,7 @@ index fa65331f40b90d812b71a489fd560e9359152d2b..390714d631dc88ef92d59ef9618a5706
const mojom::blink::UserActivationOption user_activation_option_; const mojom::blink::UserActivationOption user_activation_option_;
const mojom::blink::LoadEventBlockingOption blocking_option_; const mojom::blink::LoadEventBlockingOption blocking_option_;
diff --git a/third_party/blink/renderer/core/frame/web_frame_test.cc b/third_party/blink/renderer/core/frame/web_frame_test.cc diff --git a/third_party/blink/renderer/core/frame/web_frame_test.cc b/third_party/blink/renderer/core/frame/web_frame_test.cc
index b71f1318b186d33fdedd051b0afd04cc60d4d430..5c9fb1e773d9550d2b6b248c66c97ad07e84674e 100644 index 5e12b61ba14cd1afb07b71ff15e73e905da0addc..685a2ebb6694c173471d0450149321254da652ec 100644
--- a/third_party/blink/renderer/core/frame/web_frame_test.cc --- a/third_party/blink/renderer/core/frame/web_frame_test.cc
+++ b/third_party/blink/renderer/core/frame/web_frame_test.cc +++ b/third_party/blink/renderer/core/frame/web_frame_test.cc
@@ -298,6 +298,7 @@ void ExecuteScriptsInMainWorld( @@ -298,6 +298,7 @@ void ExecuteScriptsInMainWorld(
@ -215,7 +215,7 @@ index b71f1318b186d33fdedd051b0afd04cc60d4d430..5c9fb1e773d9550d2b6b248c66c97ad0
mojom::blink::WantResultOption::kWantResult, wait_for_promise); mojom::blink::WantResultOption::kWantResult, wait_for_promise);
} }
diff --git a/third_party/blink/renderer/core/frame/web_local_frame_impl.cc b/third_party/blink/renderer/core/frame/web_local_frame_impl.cc diff --git a/third_party/blink/renderer/core/frame/web_local_frame_impl.cc b/third_party/blink/renderer/core/frame/web_local_frame_impl.cc
index 7f9cc8cfe501692d4dab847416298ff980aaa500..6524313c1c2a7520b5cf3c4e6abeb2e300c67ec0 100644 index 6377ce1f6e3c6e6507d73a4bf151b54b30bf042a..0ceb0046224a901297cdf011d5d444e5dd1362c8 100644
--- a/third_party/blink/renderer/core/frame/web_local_frame_impl.cc --- a/third_party/blink/renderer/core/frame/web_local_frame_impl.cc
+++ b/third_party/blink/renderer/core/frame/web_local_frame_impl.cc +++ b/third_party/blink/renderer/core/frame/web_local_frame_impl.cc
@@ -1107,14 +1107,15 @@ void WebLocalFrameImpl::RequestExecuteScript( @@ -1107,14 +1107,15 @@ void WebLocalFrameImpl::RequestExecuteScript(
@ -237,7 +237,7 @@ index 7f9cc8cfe501692d4dab847416298ff980aaa500..6524313c1c2a7520b5cf3c4e6abeb2e3
bool WebLocalFrameImpl::IsInspectorConnected() { bool WebLocalFrameImpl::IsInspectorConnected() {
diff --git a/third_party/blink/renderer/core/frame/web_local_frame_impl.h b/third_party/blink/renderer/core/frame/web_local_frame_impl.h diff --git a/third_party/blink/renderer/core/frame/web_local_frame_impl.h b/third_party/blink/renderer/core/frame/web_local_frame_impl.h
index 9ae322eb9d30c684ef18addf59201aad4474d34c..3a320e56db9b43c813b3e63f0394cc1c93f9c3b8 100644 index f52966d82c8e904e213e7b2c77ea6d28e980a8e8..940cf84db8ed28212243fac7c61d90f12d85735a 100644
--- a/third_party/blink/renderer/core/frame/web_local_frame_impl.h --- a/third_party/blink/renderer/core/frame/web_local_frame_impl.h
+++ b/third_party/blink/renderer/core/frame/web_local_frame_impl.h +++ b/third_party/blink/renderer/core/frame/web_local_frame_impl.h
@@ -196,6 +196,7 @@ class CORE_EXPORT WebLocalFrameImpl final @@ -196,6 +196,7 @@ class CORE_EXPORT WebLocalFrameImpl final

View file

@ -6,10 +6,10 @@ Subject: fix: select the first menu item when opened via keyboard
This fixes an accessibility issue where the root view is 'focused' to the screen reader instead of the first menu item as with all other native menus. This patch will be upstreamed. This fixes an accessibility issue where the root view is 'focused' to the screen reader instead of the first menu item as with all other native menus. This patch will be upstreamed.
diff --git a/ui/views/controls/menu/menu_controller.cc b/ui/views/controls/menu/menu_controller.cc diff --git a/ui/views/controls/menu/menu_controller.cc b/ui/views/controls/menu/menu_controller.cc
index e82f04bf408c5f7c08df6d476ae3130705af6ae4..402e39e39b24f676ec6fc7525235c0ec5f5cdf9b 100644 index c5f3700f8f04b11b1a3dcc214dab40622652cd3a..43cbc0f8febd2330f47b5617b3dc9da9beac4962 100644
--- a/ui/views/controls/menu/menu_controller.cc --- a/ui/views/controls/menu/menu_controller.cc
+++ b/ui/views/controls/menu/menu_controller.cc +++ b/ui/views/controls/menu/menu_controller.cc
@@ -700,6 +700,14 @@ void MenuController::Run(Widget* parent, @@ -701,6 +701,14 @@ void MenuController::Run(Widget* parent,
SetSelection(root, SELECTION_OPEN_SUBMENU | SELECTION_UPDATE_IMMEDIATELY); SetSelection(root, SELECTION_OPEN_SUBMENU | SELECTION_UPDATE_IMMEDIATELY);
} }
@ -24,7 +24,7 @@ index e82f04bf408c5f7c08df6d476ae3130705af6ae4..402e39e39b24f676ec6fc7525235c0ec
if (button_controller) { if (button_controller) {
pressed_lock_ = button_controller->TakeLock( pressed_lock_ = button_controller->TakeLock(
false, ui::LocatedEvent::FromIfValid(event)); false, ui::LocatedEvent::FromIfValid(event));
@@ -2406,19 +2414,15 @@ void MenuController::OpenMenuImpl(MenuItemView* item, bool show) { @@ -2407,19 +2415,15 @@ void MenuController::OpenMenuImpl(MenuItemView* item, bool show) {
} }
item->GetSubmenu()->ShowAt(params); item->GetSubmenu()->ShowAt(params);

View file

@ -1,58 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Shelley Vohr <shelley.vohr@gmail.com>
Date: Thu, 13 Mar 2025 10:47:00 +0100
Subject: fix: take Snapped status into account when showing a window
Adjusts HWNDMessageHandler::Show to correctly restore windows that were
in a snapped state prior to being hidden or maximized. From Windows
documentation at
https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-iswindowarranged:
> A snapped window (see Snap your windows) is considered to be arranged.
> You should treat arranged as a window state similar to maximized. Arranged,
> maximized, and minimized are mutually exclusive states.
The logic already took into account a window being maximized and
correctly restored it, but if the window was snapped prior to this CL it
would be removed from its snapped state when re-shown. This fixes that.
Upstreamed at https://chromium-review.googlesource.com/c/chromium/src/+/6330848.
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc
index 64dd7b6e507b61fab7a044823462fb04eabba698..2cd734db007174834c70365ffe6b46d52673e5cb 100644
--- a/ui/views/win/hwnd_message_handler.cc
+++ b/ui/views/win/hwnd_message_handler.cc
@@ -683,7 +683,8 @@ void HWNDMessageHandler::Show(ui::mojom::WindowShowState show_state,
SetWindowPlacement(hwnd(), &placement);
native_show_state = SW_SHOWMAXIMIZED;
} else {
- const bool is_maximized = IsMaximized();
+ const bool is_maximized_or_arranged =
+ IsMaximized() || IsWindowArranged(hwnd());
// Use SW_SHOW/SW_SHOWNA instead of SW_SHOWNORMAL/SW_SHOWNOACTIVATE so that
// the window is not restored to its original position if it is maximized.
@@ -693,7 +694,8 @@ void HWNDMessageHandler::Show(ui::mojom::WindowShowState show_state,
// position, some do not. See crbug.com/1296710
switch (show_state) {
case ui::mojom::WindowShowState::kInactive:
- native_show_state = is_maximized ? SW_SHOWNA : SW_SHOWNOACTIVATE;
+ native_show_state =
+ is_maximized_or_arranged ? SW_SHOWNA : SW_SHOWNOACTIVATE;
break;
case ui::mojom::WindowShowState::kMaximized:
native_show_state = SW_SHOWMAXIMIZED;
@@ -704,9 +706,11 @@ void HWNDMessageHandler::Show(ui::mojom::WindowShowState show_state,
case ui::mojom::WindowShowState::kNormal:
if ((GetWindowLong(hwnd(), GWL_EXSTYLE) & WS_EX_TRANSPARENT) ||
(GetWindowLong(hwnd(), GWL_EXSTYLE) & WS_EX_NOACTIVATE)) {
- native_show_state = is_maximized ? SW_SHOWNA : SW_SHOWNOACTIVATE;
+ native_show_state =
+ is_maximized_or_arranged ? SW_SHOWNA : SW_SHOWNOACTIVATE;
} else {
- native_show_state = is_maximized ? SW_SHOW : SW_SHOWNORMAL;
+ native_show_state =
+ is_maximized_or_arranged ? SW_SHOW : SW_SHOWNORMAL;
}
break;
case ui::mojom::WindowShowState::kFullscreen:

View file

@ -12,10 +12,10 @@ This patch can be removed when an asynchronous spellcheck API
option is added to Electron. option is added to Electron.
diff --git a/components/spellcheck/browser/windows_spell_checker.cc b/components/spellcheck/browser/windows_spell_checker.cc diff --git a/components/spellcheck/browser/windows_spell_checker.cc b/components/spellcheck/browser/windows_spell_checker.cc
index f5a7411037758427eddc088b5426554b4a500d33..04b3edd4d8c58d38e260cc54beb0dab86368fc25 100644 index 7b78720e8d25a3dee4821c816bd9629b1526e50a..be89b74fd85983e63c983aec0d10036ce1ca63df 100644
--- a/components/spellcheck/browser/windows_spell_checker.cc --- a/components/spellcheck/browser/windows_spell_checker.cc
+++ b/components/spellcheck/browser/windows_spell_checker.cc +++ b/components/spellcheck/browser/windows_spell_checker.cc
@@ -239,6 +239,11 @@ std::vector<SpellCheckResult> BackgroundHelper::RequestTextCheckForAllLanguages( @@ -240,6 +240,11 @@ std::vector<SpellCheckResult> BackgroundHelper::RequestTextCheckForAllLanguages(
(action == CORRECTIVE_ACTION_GET_SUGGESTIONS || (action == CORRECTIVE_ACTION_GET_SUGGESTIONS ||
action == CORRECTIVE_ACTION_REPLACE)) { action == CORRECTIVE_ACTION_REPLACE)) {
std::vector<std::u16string> suggestions; std::vector<std::u16string> suggestions;

View file

@ -6,7 +6,7 @@ Subject: frame_host_manager.patch
Allows embedder to intercept site instances created by chromium. 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 diff --git a/content/browser/renderer_host/render_frame_host_manager.cc b/content/browser/renderer_host/render_frame_host_manager.cc
index e9f000ae316ac64cd23827f1533ec1416b3ed040..c3fb6dbd8f4c39e1087be567f6a2c2df69b19ef8 100644 index 9bf65e1e0c893e64cf6dc378fd9b8ae9363d954c..c7ea4d6a44a1c4cce129e9e269f2bcc04838272d 100644
--- a/content/browser/renderer_host/render_frame_host_manager.cc --- a/content/browser/renderer_host/render_frame_host_manager.cc
+++ b/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( @@ -4752,6 +4752,9 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest(
@ -20,7 +20,7 @@ index e9f000ae316ac64cd23827f1533ec1416b3ed040..c3fb6dbd8f4c39e1087be567f6a2c2df
} }
diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h
index 7459b083156d1f6bc01198690c4c9ec02d88d862..d564908c539ee9f8c32c27c90f51b63c152f1392 100644 index 7cfc3331a004fd52d9863a097271f4d892480933..55b0cae39e7aac22315d75b821a8b1123e762e15 100644
--- a/content/public/browser/content_browser_client.h --- a/content/public/browser/content_browser_client.h
+++ b/content/public/browser/content_browser_client.h +++ b/content/public/browser/content_browser_client.h
@@ -339,6 +339,11 @@ class CONTENT_EXPORT ContentBrowserClient { @@ -339,6 +339,11 @@ class CONTENT_EXPORT ContentBrowserClient {

View file

@ -41,10 +41,10 @@ index ff42cfbb6a228e902317c7e3ab035d8437d5dd62..e27f177ce27e177abf6cee84cd466e7a
// Returns whether `Initialize` has already been invoked in the process. // Returns whether `Initialize` has already been invoked in the process.
// Initialization is a one-way operation (i.e., this method cannot return // Initialization is a one-way operation (i.e., this method cannot return
diff --git a/gin/v8_initializer.cc b/gin/v8_initializer.cc diff --git a/gin/v8_initializer.cc b/gin/v8_initializer.cc
index 51c8cd7cc3f44936e1e33d9dc937d5a68d737dd6..578e200a88d89b356e991b3317ff1e71f25ff75e 100644 index 69ab1ef4d2a386126009036d4517c69dcaf9a33a..11cafc3e1588cce52b76cc2f09f66b3e451fb087 100644
--- a/gin/v8_initializer.cc --- a/gin/v8_initializer.cc
+++ b/gin/v8_initializer.cc +++ b/gin/v8_initializer.cc
@@ -555,7 +555,8 @@ void SetFeatureFlags() { @@ -543,7 +543,8 @@ void SetFeatureFlags() {
void V8Initializer::Initialize(IsolateHolder::ScriptMode mode, void V8Initializer::Initialize(IsolateHolder::ScriptMode mode,
const std::string& js_command_line_flags, const std::string& js_command_line_flags,
bool disallow_v8_feature_flag_overrides, bool disallow_v8_feature_flag_overrides,
@ -54,7 +54,7 @@ index 51c8cd7cc3f44936e1e33d9dc937d5a68d737dd6..578e200a88d89b356e991b3317ff1e71
static bool v8_is_initialized = false; static bool v8_is_initialized = false;
if (v8_is_initialized) if (v8_is_initialized)
return; return;
@@ -570,7 +571,8 @@ void V8Initializer::Initialize(IsolateHolder::ScriptMode mode, @@ -558,7 +559,8 @@ void V8Initializer::Initialize(IsolateHolder::ScriptMode mode,
} }
SetFlags(mode, js_command_line_flags); SetFlags(mode, js_command_line_flags);

View file

@ -6,10 +6,10 @@ Subject: gritsettings_resource_ids.patch
Add electron resources file to the list of resource ids generation. 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 diff --git a/tools/gritsettings/resource_ids.spec b/tools/gritsettings/resource_ids.spec
index 77707df02c02ba2ffd66ac280d53479993498fff..190041e44a76aecb968774a1f63579e13042a131 100644 index a0d9ecaa8da4b79fcb920c1d0ff10361aeb75b50..348660c41fdb20df7928bec25c1724666fb4067c 100644
--- a/tools/gritsettings/resource_ids.spec --- a/tools/gritsettings/resource_ids.spec
+++ b/tools/gritsettings/resource_ids.spec +++ b/tools/gritsettings/resource_ids.spec
@@ -1480,6 +1480,11 @@ @@ -1500,6 +1500,11 @@
"<(SHARED_INTERMEDIATE_DIR)/third_party/blink/public/strings/permission_element_generated_strings.grd": { "<(SHARED_INTERMEDIATE_DIR)/third_party/blink/public/strings/permission_element_generated_strings.grd": {
"META": {"sizes": {"messages": [2000],}}, "META": {"sizes": {"messages": [2000],}},
"messages": [10080], "messages": [10080],

View file

@ -11,7 +11,7 @@ If removing this patch causes no sync failures, it's safe to delete :+1:
Ref https://chromium-review.googlesource.com/c/chromium/src/+/2953903 Ref https://chromium-review.googlesource.com/c/chromium/src/+/2953903
diff --git a/tools/clang/scripts/update.py b/tools/clang/scripts/update.py diff --git a/tools/clang/scripts/update.py b/tools/clang/scripts/update.py
index 6602d1f1b2f5e6a4f3a49be2d79264aa1477d3af..26b511e1ec9691a91e13acb8297dc38ecc582313 100755 index 9cf06fbc79ffdc6cd44cd163e1924bc63c9099f6..944d5622c74e7df32b6ab26807442d80b27cc2bb 100755
--- a/tools/clang/scripts/update.py --- a/tools/clang/scripts/update.py
+++ b/tools/clang/scripts/update.py +++ b/tools/clang/scripts/update.py
@@ -304,6 +304,8 @@ def GetDefaultHostOs(): @@ -304,6 +304,8 @@ def GetDefaultHostOs():

View file

@ -7,10 +7,10 @@ Dont compare RC.exe and RC.py output.
FIXME: It has to be reverted once the script is fixed. FIXME: It has to be reverted once the script is fixed.
diff --git a/build/toolchain/win/rc/rc.py b/build/toolchain/win/rc/rc.py diff --git a/build/toolchain/win/rc/rc.py b/build/toolchain/win/rc/rc.py
index a650506a1e0a19566861b672cb800024965d7ff5..cde05b15eef3decdee0093ca8b84201008e4adb0 100755 index ca98984ee20cf4f608182c5ee5926673b436b89c..fc8a2af013f45db6e4e30891270a5f071c783d65 100755
--- a/build/toolchain/win/rc/rc.py --- a/build/toolchain/win/rc/rc.py
+++ b/build/toolchain/win/rc/rc.py +++ b/build/toolchain/win/rc/rc.py
@@ -244,7 +244,10 @@ def CompareToMsRcOutput(preprocessed_output, is_utf8, flags): @@ -251,7 +251,10 @@ def CompareToMsRcOutput(preprocessed_output, is_utf8, flags):
# Assert Microsoft rc.exe and rc.py produced identical .res files. # Assert Microsoft rc.exe and rc.py produced identical .res files.
if rc_exe_exit_code == 0: if rc_exe_exit_code == 0:
import filecmp import filecmp

View file

@ -21,10 +21,10 @@ index 35023e37a34bbcdcfa09cbdad55648f8e0419b37..9a10db499bd0a48feb1c96f87e71af4f
properties->supports_global_application_menus = true; properties->supports_global_application_menus = true;
properties->app_modal_dialogs_use_event_blocker = true; properties->app_modal_dialogs_use_event_blocker = true;
diff --git a/ui/ozone/public/ozone_platform.h b/ui/ozone/public/ozone_platform.h diff --git a/ui/ozone/public/ozone_platform.h b/ui/ozone/public/ozone_platform.h
index 2f088c0ee697b2525c9770eb8d02e28ae48a85d2..ed8fe0a40537b598695af8aa42c2f0bdc61ab1bb 100644 index e35bd769c53a544b8a1387f6c25e1ae376643b3d..be7d09d9003011ef4f609f66b8c51a12aa410d80 100644
--- a/ui/ozone/public/ozone_platform.h --- a/ui/ozone/public/ozone_platform.h
+++ b/ui/ozone/public/ozone_platform.h +++ b/ui/ozone/public/ozone_platform.h
@@ -128,6 +128,10 @@ class COMPONENT_EXPORT(OZONE) OzonePlatform { @@ -129,6 +129,10 @@ class COMPONENT_EXPORT(OZONE) OzonePlatform {
// Linux only: determines if Skia can fall back to the X11 output device. // Linux only: determines if Skia can fall back to the X11 output device.
bool skia_can_fall_back_to_x11 = false; bool skia_can_fall_back_to_x11 = false;

View file

@ -9,10 +9,10 @@ but due to the nature of electron, we need to load the v8 snapshot
in the browser process. in the browser process.
diff --git a/content/app/content_main_runner_impl.cc b/content/app/content_main_runner_impl.cc diff --git a/content/app/content_main_runner_impl.cc b/content/app/content_main_runner_impl.cc
index 82e5123e35509d22493809a37e56be5e9bea4264..054f38d683280638c7ac618d2ff8f7aef1a0def0 100644 index 4e7e5c5f506144f8d523dc60f5a1ff94de9aad2e..2474e8c608956bcf50e0c7204d728854fe498d31 100644
--- a/content/app/content_main_runner_impl.cc --- a/content/app/content_main_runner_impl.cc
+++ b/content/app/content_main_runner_impl.cc +++ b/content/app/content_main_runner_impl.cc
@@ -292,11 +292,8 @@ void LoadV8SnapshotFile(const base::CommandLine& command_line) { @@ -293,11 +293,8 @@ void LoadV8SnapshotFile(const base::CommandLine& command_line) {
bool ShouldLoadV8Snapshot(const base::CommandLine& command_line, bool ShouldLoadV8Snapshot(const base::CommandLine& command_line,
const std::string& process_type) { const std::string& process_type) {

View file

@ -35,10 +35,10 @@ system font by checking if it's kCTFontPriorityAttribute is set to
system priority. system priority.
diff --git a/base/BUILD.gn b/base/BUILD.gn diff --git a/base/BUILD.gn b/base/BUILD.gn
index 6bf37c804ddb77a28e788af02bb215970ba343c8..4bf9d4050c44dd155b3455082c8b87afa30e9ac7 100644 index 70444961a612c3340e8a689f2cf002918be75366..aa055d6e5f9b8a72587cd8c9fbc7203a15352553 100644
--- a/base/BUILD.gn --- a/base/BUILD.gn
+++ b/base/BUILD.gn +++ b/base/BUILD.gn
@@ -1031,6 +1031,7 @@ component("base") { @@ -1040,6 +1040,7 @@ component("base") {
"//build:ios_buildflags", "//build:ios_buildflags",
"//build/config/compiler:compiler_buildflags", "//build/config/compiler:compiler_buildflags",
"//third_party/modp_b64", "//third_party/modp_b64",
@ -449,7 +449,7 @@ index 2b50e3c3750c9ac6dd84a514663062a5d754b43e..49ced9aa87d3bcb00cd3d76ac32d4eec
bool shouldShowWindowTitle = YES; bool shouldShowWindowTitle = YES;
if (_bridge) if (_bridge)
diff --git a/components/remote_cocoa/app_shim/native_widget_ns_window_bridge.mm b/components/remote_cocoa/app_shim/native_widget_ns_window_bridge.mm diff --git a/components/remote_cocoa/app_shim/native_widget_ns_window_bridge.mm b/components/remote_cocoa/app_shim/native_widget_ns_window_bridge.mm
index aa59dfc5c689c6347a4a34fbce46ea549f46dc9d..29fa39513d0273d0a23fb45e627dda14b91c62d4 100644 index 5c0a53152095c2f799251f78b3c3464504104bfc..2c81ecef35d40036111cbd3dbdb44f7086d8946e 100644
--- a/components/remote_cocoa/app_shim/native_widget_ns_window_bridge.mm --- a/components/remote_cocoa/app_shim/native_widget_ns_window_bridge.mm
+++ b/components/remote_cocoa/app_shim/native_widget_ns_window_bridge.mm +++ b/components/remote_cocoa/app_shim/native_widget_ns_window_bridge.mm
@@ -42,6 +42,7 @@ @@ -42,6 +42,7 @@
@ -460,7 +460,7 @@ index aa59dfc5c689c6347a4a34fbce46ea549f46dc9d..29fa39513d0273d0a23fb45e627dda14
#include "mojo/public/cpp/bindings/self_owned_receiver.h" #include "mojo/public/cpp/bindings/self_owned_receiver.h"
#include "net/cert/x509_util_apple.h" #include "net/cert/x509_util_apple.h"
#include "ui/accelerated_widget_mac/window_resize_helper_mac.h" #include "ui/accelerated_widget_mac/window_resize_helper_mac.h"
@@ -677,10 +678,12 @@ NSUInteger CountBridgedWindows(NSArray* child_windows) { @@ -679,10 +680,12 @@ NSUInteger CountBridgedWindows(NSArray* child_windows) {
// this should be treated as an error and caught early. // this should be treated as an error and caught early.
CHECK(bridged_view_); CHECK(bridged_view_);
@ -545,7 +545,7 @@ index dbf334caa3a6d10017b69ad76802e389a011436b..da828823e8195cc9e497866363c9af93
void ForwardKeyboardEvent(const input::NativeWebKeyboardEvent& key_event, void ForwardKeyboardEvent(const input::NativeWebKeyboardEvent& key_event,
diff --git a/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm b/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm diff --git a/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm b/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm
index b712b8af0e770aa3acbeb1167b1a20bc1547c98a..fdb476a7e470c4b32649d4b3b7e4e44559b5b1c1 100644 index 4017ee032569466f5311e5c9612c82c086eab935..f2499bc084312a09b2324567d270fc1b899e7617 100644
--- a/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm --- a/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm
+++ b/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm +++ b/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm
@@ -35,6 +35,7 @@ @@ -35,6 +35,7 @@
@ -556,7 +556,7 @@ index b712b8af0e770aa3acbeb1167b1a20bc1547c98a..fdb476a7e470c4b32649d4b3b7e4e445
#include "skia/ext/skia_utils_mac.h" #include "skia/ext/skia_utils_mac.h"
#include "third_party/blink/public/common/features.h" #include "third_party/blink/public/common/features.h"
#include "third_party/blink/public/mojom/input/input_handler.mojom.h" #include "third_party/blink/public/mojom/input/input_handler.mojom.h"
@@ -2142,15 +2143,21 @@ - (NSAccessibilityRole)accessibilityRole { @@ -2136,15 +2137,21 @@ - (NSAccessibilityRole)accessibilityRole {
// Since this implementation doesn't have to wait any IPC calls, this doesn't // Since this implementation doesn't have to wait any IPC calls, this doesn't
// make any key-typing jank. --hbono 7/23/09 // make any key-typing jank. --hbono 7/23/09
// //
@ -579,7 +579,7 @@ index b712b8af0e770aa3acbeb1167b1a20bc1547c98a..fdb476a7e470c4b32649d4b3b7e4e445
return kAttributes; return kAttributes;
} }
diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn
index 4424636d013725023c2bf35529c034adecf823b1..62151d9e640771580ae85231762dfef260b0e4ff 100644 index e0c49c4984509685acbcb3718bbf04b2909e3f16..5b8ea681dfee77a08bb451ec19f6e5d7ddf5b6d8 100644
--- a/content/browser/BUILD.gn --- a/content/browser/BUILD.gn
+++ b/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn
@@ -339,6 +339,7 @@ source_set("browser") { @@ -339,6 +339,7 @@ source_set("browser") {
@ -591,7 +591,7 @@ index 4424636d013725023c2bf35529c034adecf823b1..62151d9e640771580ae85231762dfef2
public_deps = [ public_deps = [
diff --git a/content/browser/renderer_host/render_widget_host_view_mac.h b/content/browser/renderer_host/render_widget_host_view_mac.h diff --git a/content/browser/renderer_host/render_widget_host_view_mac.h b/content/browser/renderer_host/render_widget_host_view_mac.h
index d73737088c819274c854db491a7d4d26f9367eb2..b72427517b88e5cb4179dbc551f3f4f321fd8b4e 100644 index 1b923f0e0dc6d7dc9e67d278b8da00b35745241e..6f7ee79df9b9e3026663e2a4637007de5b5da902 100644
--- a/content/browser/renderer_host/render_widget_host_view_mac.h --- a/content/browser/renderer_host/render_widget_host_view_mac.h
+++ b/content/browser/renderer_host/render_widget_host_view_mac.h +++ b/content/browser/renderer_host/render_widget_host_view_mac.h
@@ -24,6 +24,7 @@ @@ -24,6 +24,7 @@
@ -612,7 +612,7 @@ index d73737088c819274c854db491a7d4d26f9367eb2..b72427517b88e5cb4179dbc551f3f4f3
@class RenderWidgetHostViewCocoa; @class RenderWidgetHostViewCocoa;
namespace content { namespace content {
@@ -691,9 +694,11 @@ class CONTENT_EXPORT RenderWidgetHostViewMac @@ -692,9 +695,11 @@ class CONTENT_EXPORT RenderWidgetHostViewMac
// EnsureSurfaceSynchronizedForWebTest(). // EnsureSurfaceSynchronizedForWebTest().
uint32_t latest_capture_sequence_number_ = 0u; uint32_t latest_capture_sequence_number_ = 0u;
@ -625,7 +625,7 @@ index d73737088c819274c854db491a7d4d26f9367eb2..b72427517b88e5cb4179dbc551f3f4f3
// Used to force the NSApplication's focused accessibility element to be the // Used to force the NSApplication's focused accessibility element to be the
// content::BrowserAccessibilityCocoa accessibility tree when the NSView for // content::BrowserAccessibilityCocoa accessibility tree when the NSView for
diff --git a/content/browser/renderer_host/render_widget_host_view_mac.mm b/content/browser/renderer_host/render_widget_host_view_mac.mm diff --git a/content/browser/renderer_host/render_widget_host_view_mac.mm b/content/browser/renderer_host/render_widget_host_view_mac.mm
index e8c48002df717501128b9a135d5662dfca044e9c..71db145609652dbbe733dbc96d2630b686f6c8c9 100644 index 1f9fbdbc7d617adb019fb8a207baad817b5a8a0e..1a726fb4a9e8173dc7da6901eb1632c7f326358e 100644
--- a/content/browser/renderer_host/render_widget_host_view_mac.mm --- a/content/browser/renderer_host/render_widget_host_view_mac.mm
+++ b/content/browser/renderer_host/render_widget_host_view_mac.mm +++ b/content/browser/renderer_host/render_widget_host_view_mac.mm
@@ -49,6 +49,7 @@ @@ -49,6 +49,7 @@
@ -636,7 +636,7 @@ index e8c48002df717501128b9a135d5662dfca044e9c..71db145609652dbbe733dbc96d2630b6
#include "media/base/media_switches.h" #include "media/base/media_switches.h"
#include "skia/ext/platform_canvas.h" #include "skia/ext/platform_canvas.h"
#include "skia/ext/skia_utils_mac.h" #include "skia/ext/skia_utils_mac.h"
@@ -274,8 +275,10 @@ @@ -275,8 +276,10 @@
void RenderWidgetHostViewMac::MigrateNSViewBridge( void RenderWidgetHostViewMac::MigrateNSViewBridge(
remote_cocoa::mojom::Application* remote_cocoa_application, remote_cocoa::mojom::Application* remote_cocoa_application,
uint64_t parent_ns_view_id) { uint64_t parent_ns_view_id) {
@ -647,7 +647,7 @@ index e8c48002df717501128b9a135d5662dfca044e9c..71db145609652dbbe733dbc96d2630b6
// Reset `ns_view_` before resetting `remote_ns_view_` to avoid dangling // Reset `ns_view_` before resetting `remote_ns_view_` to avoid dangling
// pointers. `ns_view_` gets reinitialized later in this method. // pointers. `ns_view_` gets reinitialized later in this method.
@@ -1626,8 +1629,10 @@ void CombineTextNodesAndMakeCallback(SpeechCallback callback, @@ -1633,8 +1636,10 @@ void CombineTextNodesAndMakeCallback(SpeechCallback callback,
gfx::NativeViewAccessible gfx::NativeViewAccessible
RenderWidgetHostViewMac::AccessibilityGetNativeViewAccessibleForWindow() { RenderWidgetHostViewMac::AccessibilityGetNativeViewAccessibleForWindow() {
@ -658,7 +658,7 @@ index e8c48002df717501128b9a135d5662dfca044e9c..71db145609652dbbe733dbc96d2630b6
return [GetInProcessNSView() window]; return [GetInProcessNSView() window];
} }
@@ -1676,9 +1681,11 @@ void CombineTextNodesAndMakeCallback(SpeechCallback callback, @@ -1683,9 +1688,11 @@ void CombineTextNodesAndMakeCallback(SpeechCallback callback,
} }
void RenderWidgetHostViewMac::SetAccessibilityWindow(NSWindow* window) { void RenderWidgetHostViewMac::SetAccessibilityWindow(NSWindow* window) {
@ -670,7 +670,7 @@ index e8c48002df717501128b9a135d5662dfca044e9c..71db145609652dbbe733dbc96d2630b6
} }
bool RenderWidgetHostViewMac::SyncIsWidgetForMainFrame( bool RenderWidgetHostViewMac::SyncIsWidgetForMainFrame(
@@ -2205,20 +2212,26 @@ void CombineTextNodesAndMakeCallback(SpeechCallback callback, @@ -2212,20 +2219,26 @@ void CombineTextNodesAndMakeCallback(SpeechCallback callback,
void RenderWidgetHostViewMac::GetRenderWidgetAccessibilityToken( void RenderWidgetHostViewMac::GetRenderWidgetAccessibilityToken(
GetRenderWidgetAccessibilityTokenCallback callback) { GetRenderWidgetAccessibilityTokenCallback callback) {
base::ProcessId pid = getpid(); base::ProcessId pid = getpid();
@ -792,10 +792,10 @@ index a1068589ad844518038ee7bc15a3de9bc5cba525..1ff781c49f086ec8015c7d3c44567dbe
} // namespace content } // namespace content
diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn
index 1163dd9e0d25b74fbdc584f742392a4452008724..246c50d5f05ecbf4f57dfc8f3bd68db03fe131f7 100644 index 2e308872830d0e4105d381dc5bd702942b11de9a..201258c8995de5e8d9f2beadba0f7b34c86bcb6f 100644
--- a/content/test/BUILD.gn --- a/content/test/BUILD.gn
+++ b/content/test/BUILD.gn +++ b/content/test/BUILD.gn
@@ -658,6 +658,7 @@ static_library("test_support") { @@ -660,6 +660,7 @@ static_library("test_support") {
"//url", "//url",
"//url/mojom:url_mojom_gurl", "//url/mojom:url_mojom_gurl",
"//v8", "//v8",
@ -803,7 +803,7 @@ index 1163dd9e0d25b74fbdc584f742392a4452008724..246c50d5f05ecbf4f57dfc8f3bd68db0
] ]
data_deps = [ data_deps = [
@@ -1111,6 +1112,7 @@ static_library("browsertest_support") { @@ -1113,6 +1114,7 @@ static_library("browsertest_support") {
} }
configs += [ "//v8:external_startup_data" ] configs += [ "//v8:external_startup_data" ]
@ -811,7 +811,7 @@ index 1163dd9e0d25b74fbdc584f742392a4452008724..246c50d5f05ecbf4f57dfc8f3bd68db0
} }
mojom("content_test_mojo_bindings") { mojom("content_test_mojo_bindings") {
@@ -1946,6 +1948,7 @@ test("content_browsertests") { @@ -1950,6 +1952,7 @@ test("content_browsertests") {
"//ui/shell_dialogs", "//ui/shell_dialogs",
"//ui/snapshot", "//ui/snapshot",
"//ui/webui:test_support", "//ui/webui:test_support",
@ -819,7 +819,7 @@ index 1163dd9e0d25b74fbdc584f742392a4452008724..246c50d5f05ecbf4f57dfc8f3bd68db0
] ]
if (!(is_chromeos && target_cpu == "arm64" && current_cpu == "arm")) { if (!(is_chromeos && target_cpu == "arm64" && current_cpu == "arm")) {
@@ -3264,6 +3267,7 @@ test("content_unittests") { @@ -3268,6 +3271,7 @@ test("content_unittests") {
"//ui/shell_dialogs:shell_dialogs", "//ui/shell_dialogs:shell_dialogs",
"//ui/webui:test_support", "//ui/webui:test_support",
"//url", "//url",
@ -840,10 +840,10 @@ index 8779cf7cbbe2a583fda51867eaebc627f00bd4cd..98da1587fdc8cc8358a69db2b51d3982
# TODO(crbug.com/40139469): Blink test plugin must be migrated from PPAPI. # TODO(crbug.com/40139469): Blink test plugin must be migrated from PPAPI.
diff --git a/device/bluetooth/BUILD.gn b/device/bluetooth/BUILD.gn diff --git a/device/bluetooth/BUILD.gn b/device/bluetooth/BUILD.gn
index d27d7140cc55a35e6ffb65028265bcb2ae5932d1..1ea92b29c730aba1c667de83bb98ca85f2046470 100644 index 16407ea4758addb6f6b56dc044d58cde0922897a..98cf8359b412a61b48aa87b607740bbeda4ca159 100644
--- a/device/bluetooth/BUILD.gn --- a/device/bluetooth/BUILD.gn
+++ b/device/bluetooth/BUILD.gn +++ b/device/bluetooth/BUILD.gn
@@ -253,6 +253,7 @@ component("bluetooth") { @@ -257,6 +257,7 @@ component("bluetooth") {
"IOKit.framework", "IOKit.framework",
"Foundation.framework", "Foundation.framework",
] ]
@ -1051,10 +1051,10 @@ index 453e2185fc85fcb29fa7af3f94cce5bda8118b0c..1c383675bb9113b5b1df9280b8ee9941
source_set("sandbox_unittests") { source_set("sandbox_unittests") {
diff --git a/sandbox/mac/sandbox_logging.cc b/sandbox/mac/sandbox_logging.cc diff --git a/sandbox/mac/sandbox_logging.cc b/sandbox/mac/sandbox_logging.cc
index 095c639b9893e885d8937e29ed7d47a7c28bc6b6..7e0cf9b9f94b16741358bdb45122f8b2bd68c0f9 100644 index 950cf7cfee4e11766dccf5c0bf3f15a8562f0f1e..a5adaaabdbbd91fedbc4cb679c865bc342536090 100644
--- a/sandbox/mac/sandbox_logging.cc --- a/sandbox/mac/sandbox_logging.cc
+++ b/sandbox/mac/sandbox_logging.cc +++ b/sandbox/mac/sandbox_logging.cc
@@ -16,6 +16,7 @@ @@ -21,6 +21,7 @@
#include <string> #include <string>
#include "build/build_config.h" #include "build/build_config.h"
@ -1062,7 +1062,7 @@ index 095c639b9893e885d8937e29ed7d47a7c28bc6b6..7e0cf9b9f94b16741358bdb45122f8b2
#include "sandbox/mac/sandbox_crash_message.h" #include "sandbox/mac/sandbox_crash_message.h"
#if defined(ARCH_CPU_X86_64) #if defined(ARCH_CPU_X86_64)
@@ -33,9 +34,11 @@ @@ -38,9 +39,11 @@
} }
#endif #endif
@ -1074,7 +1074,7 @@ index 095c639b9893e885d8937e29ed7d47a7c28bc6b6..7e0cf9b9f94b16741358bdb45122f8b2
namespace sandbox::logging { namespace sandbox::logging {
@@ -76,9 +79,11 @@ void SendOsLog(Level level, const char* message) { @@ -81,9 +84,11 @@ void SendOsLog(Level level, const char* message) {
sandbox::crash_message::SetCrashMessage(message); sandbox::crash_message::SetCrashMessage(message);
} }
@ -1579,10 +1579,10 @@ index dcf493d62990018040a3f84b6f875af737bd2214..3d1c4dcc9ee0bbfdac15f40d9c74e9f3
void DisplayCALayerTree::GotIOSurfaceFrame( void DisplayCALayerTree::GotIOSurfaceFrame(
diff --git a/ui/accessibility/platform/BUILD.gn b/ui/accessibility/platform/BUILD.gn diff --git a/ui/accessibility/platform/BUILD.gn b/ui/accessibility/platform/BUILD.gn
index 8b25953be73da43fa2e0b5957569ae481dc6a082..7f9175e7eb67ef27fe110ee72f5e9c885018c2ac 100644 index 6207f4941839fdc5a44dc5fe61f50281503623d4..d2d635c1bd2e0497b7fbab331b48e753fae1013e 100644
--- a/ui/accessibility/platform/BUILD.gn --- a/ui/accessibility/platform/BUILD.gn
+++ b/ui/accessibility/platform/BUILD.gn +++ b/ui/accessibility/platform/BUILD.gn
@@ -288,6 +288,7 @@ component("platform") { @@ -295,6 +295,7 @@ component("platform") {
"AppKit.framework", "AppKit.framework",
"Foundation.framework", "Foundation.framework",
] ]
@ -1591,7 +1591,7 @@ index 8b25953be73da43fa2e0b5957569ae481dc6a082..7f9175e7eb67ef27fe110ee72f5e9c88
if (is_ios) { if (is_ios) {
diff --git a/ui/accessibility/platform/browser_accessibility_manager_mac.mm b/ui/accessibility/platform/browser_accessibility_manager_mac.mm diff --git a/ui/accessibility/platform/browser_accessibility_manager_mac.mm b/ui/accessibility/platform/browser_accessibility_manager_mac.mm
index c642b2ce1e19a48bc00822c429d833d5d45c4f98..ebe0b80b142a997aaf928fa72a2ca71492d1a54e 100644 index 71c78a4d3350b6a01cd1f8321f0c1faebc829b0f..79c54d9d5c1b335b3877199a64c6d3f940c5a85b 100644
--- a/ui/accessibility/platform/browser_accessibility_manager_mac.mm --- a/ui/accessibility/platform/browser_accessibility_manager_mac.mm
+++ b/ui/accessibility/platform/browser_accessibility_manager_mac.mm +++ b/ui/accessibility/platform/browser_accessibility_manager_mac.mm
@@ -13,6 +13,7 @@ @@ -13,6 +13,7 @@
@ -1673,10 +1673,10 @@ index c8171f0527fe5194f0ea73b57c4444d4c630fbc4..c2ac4da580e3e7f749a0a4de1e859af6
// Accessible object // Accessible object
if (AXElementWrapper::IsValidElement(value)) { if (AXElementWrapper::IsValidElement(value)) {
diff --git a/ui/base/BUILD.gn b/ui/base/BUILD.gn diff --git a/ui/base/BUILD.gn b/ui/base/BUILD.gn
index 4b91bad93384b435bed2e8da5e185603fb0a66a3..d68202e3fe92d01b148bf494a3599e2a8d8ced91 100644 index a89628087cf9e38a95314972a4d2c38e39176005..2e05b5a472f36d3bff8769cde514820a3e622f4b 100644
--- a/ui/base/BUILD.gn --- a/ui/base/BUILD.gn
+++ b/ui/base/BUILD.gn +++ b/ui/base/BUILD.gn
@@ -363,6 +363,13 @@ component("base") { @@ -365,6 +365,13 @@ component("base") {
] ]
} }
@ -1690,7 +1690,7 @@ index 4b91bad93384b435bed2e8da5e185603fb0a66a3..d68202e3fe92d01b148bf494a3599e2a
if (is_ios) { if (is_ios) {
sources += [ sources += [
"device_form_factor_ios.mm", "device_form_factor_ios.mm",
@@ -516,6 +523,12 @@ component("base") { @@ -518,6 +525,12 @@ component("base") {
"//url", "//url",
] ]
@ -1796,10 +1796,10 @@ index fc25ba79d2b0e1acdb7ba54b89e7d6e16f94771b..de771ef414b9a69e331261524f08e9a1
} // namespace } // namespace
diff --git a/ui/display/BUILD.gn b/ui/display/BUILD.gn diff --git a/ui/display/BUILD.gn b/ui/display/BUILD.gn
index eea9eb92fadfcb72adfffffb0e43082a79bcf3a7..dd2110c1e9393f7ad33a0e64c09ef732b3292a54 100644 index e598004da50257f4ee37a6431222c2b9e9f24b62..3f2ea7a469d6580d25fe51b657555d77a9ce9b80 100644
--- a/ui/display/BUILD.gn --- a/ui/display/BUILD.gn
+++ b/ui/display/BUILD.gn +++ b/ui/display/BUILD.gn
@@ -125,6 +125,12 @@ component("display") { @@ -127,6 +127,12 @@ component("display") {
"//ui/gfx/geometry", "//ui/gfx/geometry",
] ]
@ -1813,7 +1813,7 @@ index eea9eb92fadfcb72adfffffb0e43082a79bcf3a7..dd2110c1e9393f7ad33a0e64c09ef732
deps += [ "//build:ios_buildflags" ] deps += [ "//build:ios_buildflags" ]
} }
diff --git a/ui/display/mac/screen_mac.mm b/ui/display/mac/screen_mac.mm diff --git a/ui/display/mac/screen_mac.mm b/ui/display/mac/screen_mac.mm
index 29ae2da6a8a2c2a612dfb92f7f9c03ca5fa306b1..440c139a32a0c205e77b657d4aab64684661a01d 100644 index 874ac9d572931fe175ccab8beb7738fe0a7b3c1b..b70e2a8a7be9e00a379f47c77589dde6b8b1f081 100644
--- a/ui/display/mac/screen_mac.mm --- a/ui/display/mac/screen_mac.mm
+++ b/ui/display/mac/screen_mac.mm +++ b/ui/display/mac/screen_mac.mm
@@ -30,6 +30,7 @@ @@ -30,6 +30,7 @@
@ -1824,7 +1824,7 @@ index 29ae2da6a8a2c2a612dfb92f7f9c03ca5fa306b1..440c139a32a0c205e77b657d4aab6468
#include "ui/display/display.h" #include "ui/display/display.h"
#include "ui/display/display_change_notifier.h" #include "ui/display/display_change_notifier.h"
#include "ui/display/util/display_util.h" #include "ui/display/util/display_util.h"
@@ -176,7 +177,17 @@ DisplayMac BuildDisplayForScreen(NSScreen* screen) { @@ -177,7 +178,17 @@ DisplayMac BuildDisplayForScreen(NSScreen* screen) {
display.set_color_depth(Display::kDefaultBitsPerPixel); display.set_color_depth(Display::kDefaultBitsPerPixel);
display.set_depth_per_component(Display::kDefaultBitsPerComponent); display.set_depth_per_component(Display::kDefaultBitsPerComponent);
} }
@ -1843,10 +1843,10 @@ index 29ae2da6a8a2c2a612dfb92f7f9c03ca5fa306b1..440c139a32a0c205e77b657d4aab6468
// Query the display's refresh rate. // Query the display's refresh rate.
if (@available(macos 12.0, *)) { if (@available(macos 12.0, *)) {
diff --git a/ui/gfx/BUILD.gn b/ui/gfx/BUILD.gn diff --git a/ui/gfx/BUILD.gn b/ui/gfx/BUILD.gn
index cb507971bef962e91cd8fca696692194696d1142..d2aee3962e3377980940e6d3538487a566a609b4 100644 index 428ba0136f09ace2652e96b0928f84b59048e4ba..9ab318c4f56728eb675d8faa3a17a29f7079905c 100644
--- a/ui/gfx/BUILD.gn --- a/ui/gfx/BUILD.gn
+++ b/ui/gfx/BUILD.gn +++ b/ui/gfx/BUILD.gn
@@ -334,6 +334,12 @@ component("gfx") { @@ -335,6 +335,12 @@ component("gfx") {
"//ui/base:ui_data_pack", "//ui/base:ui_data_pack",
] ]
@ -1898,10 +1898,10 @@ index fe3f85073e31de487a08e57d7f9b07aa4eccf8f3..cf5b07203c8bd559a404600cc98cc8ec
// enough. // enough.
return PlatformFontMac::SystemFontType::kGeneral; return PlatformFontMac::SystemFontType::kGeneral;
diff --git a/ui/views/BUILD.gn b/ui/views/BUILD.gn diff --git a/ui/views/BUILD.gn b/ui/views/BUILD.gn
index 0f9f25edf65eaee5191ac1f6b70bd43a25091578..e6cce5c607e437c8a9d0fe43eb472a125fdae0eb 100644 index f24cdf1484910c6fdc706aefc22c97669e245e57..efcd1779c0f105510c298ac9778792cfc8108847 100644
--- a/ui/views/BUILD.gn --- a/ui/views/BUILD.gn
+++ b/ui/views/BUILD.gn +++ b/ui/views/BUILD.gn
@@ -720,6 +720,8 @@ component("views") { @@ -721,6 +721,8 @@ component("views") {
"IOSurface.framework", "IOSurface.framework",
"QuartzCore.framework", "QuartzCore.framework",
] ]
@ -1910,7 +1910,7 @@ index 0f9f25edf65eaee5191ac1f6b70bd43a25091578..e6cce5c607e437c8a9d0fe43eb472a12
} }
if (is_win) { if (is_win) {
@@ -1142,6 +1144,8 @@ source_set("test_support") { @@ -1148,6 +1150,8 @@ source_set("test_support") {
"//ui/base/mojom:ui_base_types", "//ui/base/mojom:ui_base_types",
] ]
@ -1920,7 +1920,7 @@ index 0f9f25edf65eaee5191ac1f6b70bd43a25091578..e6cce5c607e437c8a9d0fe43eb472a12
sources += [ sources += [
"test/desktop_window_tree_host_win_test_api.cc", "test/desktop_window_tree_host_win_test_api.cc",
diff --git a/ui/views/cocoa/native_widget_mac_ns_window_host.h b/ui/views/cocoa/native_widget_mac_ns_window_host.h diff --git a/ui/views/cocoa/native_widget_mac_ns_window_host.h b/ui/views/cocoa/native_widget_mac_ns_window_host.h
index 6a18c94e8c9d531ab3a59faf6027848caed8de57..63aa6b3ba824a3fa71c5a3db94b9ac5e8d0ea7c0 100644 index cbd0b7708a7afd39852a7f75a21173d5b8a71a5e..1e8d5b3f66992a6bcbecd7149c45982319076d0c 100644
--- a/ui/views/cocoa/native_widget_mac_ns_window_host.h --- a/ui/views/cocoa/native_widget_mac_ns_window_host.h
+++ b/ui/views/cocoa/native_widget_mac_ns_window_host.h +++ b/ui/views/cocoa/native_widget_mac_ns_window_host.h
@@ -18,6 +18,7 @@ @@ -18,6 +18,7 @@
@ -1941,7 +1941,7 @@ index 6a18c94e8c9d531ab3a59faf6027848caed8de57..63aa6b3ba824a3fa71c5a3db94b9ac5e
@class NSView; @class NSView;
namespace remote_cocoa { namespace remote_cocoa {
@@ -487,10 +490,12 @@ class VIEWS_EXPORT NativeWidgetMacNSWindowHost @@ -489,10 +492,12 @@ class VIEWS_EXPORT NativeWidgetMacNSWindowHost
mojo::AssociatedRemote<remote_cocoa::mojom::NativeWidgetNSWindow> mojo::AssociatedRemote<remote_cocoa::mojom::NativeWidgetNSWindow>
remote_ns_window_remote_; remote_ns_window_remote_;
@ -1955,7 +1955,7 @@ index 6a18c94e8c9d531ab3a59faf6027848caed8de57..63aa6b3ba824a3fa71c5a3db94b9ac5e
// Used to force the NSApplication's focused accessibility element to be the // Used to force the NSApplication's focused accessibility element to be the
// views::Views accessibility tree when the NSView for this is focused. // views::Views accessibility tree when the NSView for this is focused.
diff --git a/ui/views/cocoa/native_widget_mac_ns_window_host.mm b/ui/views/cocoa/native_widget_mac_ns_window_host.mm diff --git a/ui/views/cocoa/native_widget_mac_ns_window_host.mm b/ui/views/cocoa/native_widget_mac_ns_window_host.mm
index 7e5047fabe59fb2773f13836145cfce64bc1a135..fed3d6a70139443d76ce6181df69bb490c46a081 100644 index edf13478844a9686cfbfbd4d96214044c03134b4..7bda1853d47034c80a4e416b9839e8d18c5a8e2c 100644
--- a/ui/views/cocoa/native_widget_mac_ns_window_host.mm --- a/ui/views/cocoa/native_widget_mac_ns_window_host.mm
+++ b/ui/views/cocoa/native_widget_mac_ns_window_host.mm +++ b/ui/views/cocoa/native_widget_mac_ns_window_host.mm
@@ -21,6 +21,7 @@ @@ -21,6 +21,7 @@
@ -1966,7 +1966,7 @@ index 7e5047fabe59fb2773f13836145cfce64bc1a135..fed3d6a70139443d76ce6181df69bb49
#include "mojo/public/cpp/bindings/self_owned_associated_receiver.h" #include "mojo/public/cpp/bindings/self_owned_associated_receiver.h"
#include "ui/accelerated_widget_mac/window_resize_helper_mac.h" #include "ui/accelerated_widget_mac/window_resize_helper_mac.h"
#include "ui/accessibility/accessibility_features.h" #include "ui/accessibility/accessibility_features.h"
@@ -352,7 +353,11 @@ void HandleAccelerator(const ui::Accelerator& accelerator, @@ -357,7 +358,11 @@ void HandleAccelerator(const ui::Accelerator& accelerator,
if (in_process_ns_window_bridge_) { if (in_process_ns_window_bridge_) {
return in_process_ns_window_bridge_->ns_view(); return in_process_ns_window_bridge_->ns_view();
} }
@ -1978,7 +1978,7 @@ index 7e5047fabe59fb2773f13836145cfce64bc1a135..fed3d6a70139443d76ce6181df69bb49
} }
gfx::NativeViewAccessible gfx::NativeViewAccessible
@@ -367,7 +372,11 @@ void HandleAccelerator(const ui::Accelerator& accelerator, @@ -372,7 +377,11 @@ void HandleAccelerator(const ui::Accelerator& accelerator,
return [in_process_ns_window_bridge_->ns_view() window]; return [in_process_ns_window_bridge_->ns_view() window];
} }
@ -1990,7 +1990,7 @@ index 7e5047fabe59fb2773f13836145cfce64bc1a135..fed3d6a70139443d76ce6181df69bb49
} }
remote_cocoa::mojom::NativeWidgetNSWindow* remote_cocoa::mojom::NativeWidgetNSWindow*
@@ -1371,9 +1380,11 @@ void HandleAccelerator(const ui::Accelerator& accelerator, @@ -1384,9 +1393,11 @@ void HandleAccelerator(const ui::Accelerator& accelerator,
// for PWAs. However this breaks accessibility on in-process windows, // for PWAs. However this breaks accessibility on in-process windows,
// so set it back to NO when a local window gains focus. See // so set it back to NO when a local window gains focus. See
// https://crbug.com/41485830. // https://crbug.com/41485830.
@ -2002,7 +2002,7 @@ index 7e5047fabe59fb2773f13836145cfce64bc1a135..fed3d6a70139443d76ce6181df69bb49
// Explicitly set the keyboard accessibility state on regaining key // Explicitly set the keyboard accessibility state on regaining key
// window status. // window status.
if (is_key && is_content_first_responder) { if (is_key && is_content_first_responder) {
@@ -1514,17 +1525,20 @@ void HandleAccelerator(const ui::Accelerator& accelerator, @@ -1527,17 +1538,20 @@ void HandleAccelerator(const ui::Accelerator& accelerator,
void NativeWidgetMacNSWindowHost::SetRemoteAccessibilityTokens( void NativeWidgetMacNSWindowHost::SetRemoteAccessibilityTokens(
const std::vector<uint8_t>& window_token, const std::vector<uint8_t>& window_token,
const std::vector<uint8_t>& view_token) { const std::vector<uint8_t>& view_token) {
@ -2023,7 +2023,7 @@ index 7e5047fabe59fb2773f13836145cfce64bc1a135..fed3d6a70139443d76ce6181df69bb49
*pid = getpid(); *pid = getpid();
id element_id = GetNativeViewAccessible(); id element_id = GetNativeViewAccessible();
@@ -1537,6 +1551,7 @@ void HandleAccelerator(const ui::Accelerator& accelerator, @@ -1550,6 +1564,7 @@ void HandleAccelerator(const ui::Accelerator& accelerator,
} }
*token = ui::RemoteAccessibility::GetTokenForLocalElement(element_id); *token = ui::RemoteAccessibility::GetTokenForLocalElement(element_id);

View file

@ -7,7 +7,7 @@ This adds a callback from the network service that's used to implement
session.setCertificateVerifyCallback. session.setCertificateVerifyCallback.
diff --git a/services/network/network_context.cc b/services/network/network_context.cc diff --git a/services/network/network_context.cc b/services/network/network_context.cc
index b9a14ef983f6c985fefeee342eddfdf3f0a24a84..b1df0a09a9bfd226ffe7b37144e6599b099e619e 100644 index 8014bb16d8108115f901346fa4ed4d84220d86c5..ee56aab6831be256390b88e65a2a949c591bbd31 100644
--- a/services/network/network_context.cc --- a/services/network/network_context.cc
+++ b/services/network/network_context.cc +++ b/services/network/network_context.cc
@@ -159,6 +159,11 @@ @@ -159,6 +159,11 @@
@ -178,7 +178,7 @@ index f2dcec57a22d95892a08f1fa43696d6eea46a820..930e0bd987c48d111b2c8d71147c09e4
std::unique_ptr<HostResolver> internal_host_resolver_; std::unique_ptr<HostResolver> internal_host_resolver_;
std::set<std::unique_ptr<HostResolver>, base::UniquePtrComparator> std::set<std::unique_ptr<HostResolver>, base::UniquePtrComparator>
diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom
index 0f053267c23795be6bb0e75d10a92e1777532484..cf4d2dcf86b6536c37d46875f74517e478b34928 100644 index a9c82bcf9a4ebf946791eccc35a0dcfff0c18288..6d79f4a4cb1a40be907ef52e35f0e5a0acab31fb 100644
--- a/services/network/public/mojom/network_context.mojom --- a/services/network/public/mojom/network_context.mojom
+++ b/services/network/public/mojom/network_context.mojom +++ b/services/network/public/mojom/network_context.mojom
@@ -308,6 +308,17 @@ struct SocketBrokerRemotes { @@ -308,6 +308,17 @@ struct SocketBrokerRemotes {
@ -199,7 +199,7 @@ index 0f053267c23795be6bb0e75d10a92e1777532484..cf4d2dcf86b6536c37d46875f74517e4
// Parameters for constructing a network context. // Parameters for constructing a network context.
struct NetworkContextParams { struct NetworkContextParams {
// The user agent string. // The user agent string.
@@ -945,6 +956,9 @@ interface NetworkContext { @@ -952,6 +963,9 @@ interface NetworkContext {
// Sets a client for this network context. // Sets a client for this network context.
SetClient(pending_remote<NetworkContextClient> client); SetClient(pending_remote<NetworkContextClient> client);

View file

@ -7,7 +7,7 @@ Pass RenderFrameHost through to PlatformNotificationService
so Electron can identify which renderer a notification came from. so Electron can identify which renderer a notification came from.
diff --git a/chrome/browser/notifications/platform_notification_service_impl.cc b/chrome/browser/notifications/platform_notification_service_impl.cc diff --git a/chrome/browser/notifications/platform_notification_service_impl.cc b/chrome/browser/notifications/platform_notification_service_impl.cc
index 8dd86234b4520c420c5d5a4e5f69d67e27734762..3f50bb8fe51a9a46f5d8b08ddd9c40d45b8cffff 100644 index eedafc323a9e4f736aa637d76034f4cb5239eee8..c562a59998901aaedc05be694a725150feeb4b0a 100644
--- a/chrome/browser/notifications/platform_notification_service_impl.cc --- a/chrome/browser/notifications/platform_notification_service_impl.cc
+++ b/chrome/browser/notifications/platform_notification_service_impl.cc +++ b/chrome/browser/notifications/platform_notification_service_impl.cc
@@ -244,6 +244,7 @@ bool PlatformNotificationServiceImpl::WasClosedProgrammatically( @@ -244,6 +244,7 @@ bool PlatformNotificationServiceImpl::WasClosedProgrammatically(
@ -133,10 +133,10 @@ index 05d3a12dd84c7005d46cc73b312f97ef418d96f5..4765de982802541b3efc7211d106acc7
const GURL& document_url, const GURL& document_url,
const WeakDocumentPtr& weak_document_ptr, 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 diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
index a8e3f365d2e9c72f9ae46388dc5b12ad57887b6b..bf18683a08e1c144b360f904ab65adcab66aa607 100644 index 6e46bfbd8ed2d9842f3ba7b82aa8e6eac1c4c12a..28e952d9766566e0a5213492aaf606aa56dc23f6 100644
--- a/content/browser/renderer_host/render_process_host_impl.cc --- a/content/browser/renderer_host/render_process_host_impl.cc
+++ b/content/browser/renderer_host/render_process_host_impl.cc +++ b/content/browser/renderer_host/render_process_host_impl.cc
@@ -2146,7 +2146,7 @@ void RenderProcessHostImpl::CreateNotificationService( @@ -2206,7 +2206,7 @@ void RenderProcessHostImpl::CreateNotificationService(
case RenderProcessHost::NotificationServiceCreatorType::kSharedWorker: case RenderProcessHost::NotificationServiceCreatorType::kSharedWorker:
case RenderProcessHost::NotificationServiceCreatorType::kDedicatedWorker: { case RenderProcessHost::NotificationServiceCreatorType::kDedicatedWorker: {
storage_partition_impl_->GetPlatformNotificationContext()->CreateService( storage_partition_impl_->GetPlatformNotificationContext()->CreateService(
@ -145,7 +145,7 @@ index a8e3f365d2e9c72f9ae46388dc5b12ad57887b6b..bf18683a08e1c144b360f904ab65adca
creator_type, std::move(receiver)); creator_type, std::move(receiver));
break; break;
} }
@@ -2154,7 +2154,7 @@ void RenderProcessHostImpl::CreateNotificationService( @@ -2214,7 +2214,7 @@ void RenderProcessHostImpl::CreateNotificationService(
CHECK(rfh); CHECK(rfh);
storage_partition_impl_->GetPlatformNotificationContext()->CreateService( storage_partition_impl_->GetPlatformNotificationContext()->CreateService(

View file

@ -10,10 +10,10 @@ an about:blank check to this area.
Ref: https://chromium-review.googlesource.com/c/chromium/src/+/5403876 Ref: https://chromium-review.googlesource.com/c/chromium/src/+/5403876
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc
index 5de5748662c957f5b0e671057b827e2eb2224893..72ebb0e18dbc8c678ff93c7a3c028d7fb362263f 100644 index 314ef160662faf6d7c00d9d6999abb1db8bbebe5..6cae6b280bfab3f1cbacbb4a4d71fa1d78b54619 100644
--- a/content/browser/renderer_host/render_frame_host_impl.cc --- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -806,8 +806,8 @@ void VerifyThatBrowserAndRendererCalculatedOriginsToCommitMatch( @@ -808,8 +808,8 @@ void VerifyThatBrowserAndRendererCalculatedOriginsToCommitMatch(
// TODO(crbug.com/40092527): Consider adding a separate boolean that // TODO(crbug.com/40092527): Consider adding a separate boolean that
// tracks this instead of piggybacking `origin_calculation_debug_info`. // tracks this instead of piggybacking `origin_calculation_debug_info`.
if (renderer_side_origin.opaque() && if (renderer_side_origin.opaque() &&

View file

@ -38,7 +38,7 @@ index 8168b4cfbafd42fa93a5aa9a3691c2552fabfb86..ba49212bd76d209f99c1cee649fc1466
ui::ImageModel::FromVectorIcon(*icon, kColorPipWindowForeground, ui::ImageModel::FromVectorIcon(*icon, kColorPipWindowForeground,
kCloseButtonIconSize)); kCloseButtonIconSize));
diff --git a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc diff --git a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc
index 6671f304fc15221d18fa1be2c4f20368db518e59..f9e29227fe9396747bed8b1ec970cfdfcf72c03c 100644 index f246f7ea6b39a881721171515049dda8d3f2ac0b..e8524bb6706ae06a0feabccbe44250580098e937 100644
--- a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc --- a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc
+++ b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc +++ b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc
@@ -18,9 +18,11 @@ @@ -18,9 +18,11 @@

View file

@ -8,10 +8,10 @@ needed in chromium but our autofill implementation uses them. This patch can be
our autofill implementation to work like Chromium's. our autofill implementation to work like Chromium's.
diff --git a/ui/color/color_id.h b/ui/color/color_id.h diff --git a/ui/color/color_id.h b/ui/color/color_id.h
index 4521cef41d441fcf6bd7889243598cab40d3d642..3dd279e6c35387e1f40c389d7dfccfa5497155e8 100644 index 8b7cc48c3fad34d91f8732c760228b546ce24a89..cf61dcb09d859729c9f1239b8278babbc057a74e 100644
--- a/ui/color/color_id.h --- a/ui/color/color_id.h
+++ b/ui/color/color_id.h +++ b/ui/color/color_id.h
@@ -405,6 +405,10 @@ @@ -407,6 +407,10 @@
E_CPONLY(kColorRadioButtonForegroundUnchecked) \ E_CPONLY(kColorRadioButtonForegroundUnchecked) \
E_CPONLY(kColorRadioButtonForegroundDisabled) \ E_CPONLY(kColorRadioButtonForegroundDisabled) \
E_CPONLY(kColorRadioButtonForegroundChecked) \ E_CPONLY(kColorRadioButtonForegroundChecked) \
@ -22,7 +22,7 @@ index 4521cef41d441fcf6bd7889243598cab40d3d642..3dd279e6c35387e1f40c389d7dfccfa5
E_CPONLY(kColorSegmentedButtonBorder) \ E_CPONLY(kColorSegmentedButtonBorder) \
E_CPONLY(kColorSegmentedButtonFocus) \ E_CPONLY(kColorSegmentedButtonFocus) \
E_CPONLY(kColorSegmentedButtonForegroundChecked) \ E_CPONLY(kColorSegmentedButtonForegroundChecked) \
@@ -513,6 +517,7 @@ @@ -515,6 +519,7 @@
E_CPONLY(kColorTreeNodeForeground) \ E_CPONLY(kColorTreeNodeForeground) \
E_CPONLY(kColorTreeNodeForegroundSelectedFocused) \ E_CPONLY(kColorTreeNodeForegroundSelectedFocused) \
E_CPONLY(kColorTreeNodeForegroundSelectedUnfocused) \ E_CPONLY(kColorTreeNodeForegroundSelectedUnfocused) \

View file

@ -577,10 +577,10 @@ index 1917f8b94962d7a4c83f139623a5f5d352011627..47ef610c43c4dcfee0cf528eb2e6075b
// Indication that the job is getting canceled. // Indication that the job is getting canceled.
bool canceling_job_ = false; bool canceling_job_ = false;
diff --git a/chrome/browser/printing/printer_query.cc b/chrome/browser/printing/printer_query.cc diff --git a/chrome/browser/printing/printer_query.cc b/chrome/browser/printing/printer_query.cc
index 402be34ab888cdf834d0fb65de0832e9a8021ced..82ddc92a35d824926c30279e660cc4e86e6f0b09 100644 index 4f2e70c243550b471d0a6b2be743a29004c75599..9a3580d7c2a01290e7aaff1200e7f17c9add2c70 100644
--- a/chrome/browser/printing/printer_query.cc --- a/chrome/browser/printing/printer_query.cc
+++ b/chrome/browser/printing/printer_query.cc +++ b/chrome/browser/printing/printer_query.cc
@@ -355,17 +355,19 @@ void PrinterQuery::UpdatePrintSettings(base::Value::Dict new_settings, @@ -356,17 +356,19 @@ void PrinterQuery::UpdatePrintSettings(base::Value::Dict new_settings,
#endif // BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_CUPS) #endif // BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_CUPS)
} }
@ -881,10 +881,10 @@ index 97cb6458bc9eec767db89b56abfc5f4b4136ff7b..d9a0b343158b8464b5c9aa8e0e655c0b
ScriptingThrottler scripting_throttler_; ScriptingThrottler scripting_throttler_;
diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn
index 62151d9e640771580ae85231762dfef260b0e4ff..52555181f779772dff8a471c4389af8128fd7a6a 100644 index 5b8ea681dfee77a08bb451ec19f6e5d7ddf5b6d8..15ad186308981ddfbbe32f47ef9127ab051132e3 100644
--- a/content/browser/BUILD.gn --- a/content/browser/BUILD.gn
+++ b/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn
@@ -3129,8 +3129,9 @@ source_set("browser") { @@ -3134,8 +3134,9 @@ source_set("browser") {
"//ppapi/shared_impl", "//ppapi/shared_impl",
] ]
@ -897,10 +897,10 @@ index 62151d9e640771580ae85231762dfef260b0e4ff..52555181f779772dff8a471c4389af81
if (is_chromeos) { if (is_chromeos) {
sources += [ sources += [
diff --git a/printing/printing_context.cc b/printing/printing_context.cc diff --git a/printing/printing_context.cc b/printing/printing_context.cc
index 0bb34c4715224a0cef10465778db946f299ac513..c70803a5737676eec498dd18074a47ffabac62c0 100644 index b959c1428784388f514d33bf54550908f60f3ff1..c37bc40570b1e2b29af6e677684705556b15560e 100644
--- a/printing/printing_context.cc --- a/printing/printing_context.cc
+++ b/printing/printing_context.cc +++ b/printing/printing_context.cc
@@ -154,7 +154,6 @@ void PrintingContext::UsePdfSettings() { @@ -156,7 +156,6 @@ void PrintingContext::UsePdfSettings() {
mojom::ResultCode PrintingContext::UpdatePrintSettings( mojom::ResultCode PrintingContext::UpdatePrintSettings(
base::Value::Dict job_settings) { base::Value::Dict job_settings) {

View file

@ -8,7 +8,7 @@ Chrome moved the SetCursor IPC message to mojo, which we use to tell OSR about `
Refs: https://chromium-review.googlesource.com/c/chromium/src/+/2172779 Refs: https://chromium-review.googlesource.com/c/chromium/src/+/2172779
diff --git a/content/browser/renderer_host/render_widget_host_delegate.h b/content/browser/renderer_host/render_widget_host_delegate.h diff --git a/content/browser/renderer_host/render_widget_host_delegate.h b/content/browser/renderer_host/render_widget_host_delegate.h
index 8ad5a5042355ce918ab13784fbc0d633b6f0efa9..7f7b86abf3e18501025a854000f0d9adc9ec9abc 100644 index a54a0dedf8ef1cfffa4e80a4707debed0e83d277..e66e71fdbabb40a5307b12cd8965e773e76c04fd 100644
--- a/content/browser/renderer_host/render_widget_host_delegate.h --- a/content/browser/renderer_host/render_widget_host_delegate.h
+++ b/content/browser/renderer_host/render_widget_host_delegate.h +++ b/content/browser/renderer_host/render_widget_host_delegate.h
@@ -28,6 +28,7 @@ @@ -28,6 +28,7 @@
@ -30,10 +30,10 @@ index 8ad5a5042355ce918ab13784fbc0d633b6f0efa9..7f7b86abf3e18501025a854000f0d9ad
// RenderWidgetHost on the primary main frame, and false otherwise. // RenderWidgetHost on the primary main frame, and false otherwise.
virtual bool IsWidgetForPrimaryMainFrame(RenderWidgetHostImpl*); 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 diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc
index a409c64768968c81be3b6c7e7646f8df26e2afe6..7c31b82e2903507bb69aaa71fc0ed51cad06d1c2 100644 index 20fcda4eb20459b69247003c51c2a3ed37c7b1e8..9bcab4e1e8a0fa429488555f4f7bd1c54888d10e 100644
--- a/content/browser/renderer_host/render_widget_host_impl.cc --- a/content/browser/renderer_host/render_widget_host_impl.cc
+++ b/content/browser/renderer_host/render_widget_host_impl.cc +++ b/content/browser/renderer_host/render_widget_host_impl.cc
@@ -2048,6 +2048,9 @@ void RenderWidgetHostImpl::SetCursor(const ui::Cursor& cursor) { @@ -2056,6 +2056,9 @@ void RenderWidgetHostImpl::SetCursor(const ui::Cursor& cursor) {
if (view_) { if (view_) {
view_->UpdateCursor(cursor); view_->UpdateCursor(cursor);
} }
@ -44,10 +44,10 @@ index a409c64768968c81be3b6c7e7646f8df26e2afe6..7c31b82e2903507bb69aaa71fc0ed51c
void RenderWidgetHostImpl::ShowContextMenuAtPoint( void RenderWidgetHostImpl::ShowContextMenuAtPoint(
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index e500fe77f55836b3e5832536f98cf9581984b8c1..952fd20f71560acd89c74f08e9d8cdbf34fb5a1a 100644 index d7bf74c206cedc628d0b92fff25c29393f6c9d95..30593ec9ecd2b135a6054ed50e95c849c09b47bd 100644
--- a/content/browser/web_contents/web_contents_impl.cc --- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc
@@ -5810,6 +5810,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() { @@ -5839,6 +5839,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() {
return text_input_manager_.get(); return text_input_manager_.get();
} }
@ -60,10 +60,10 @@ index e500fe77f55836b3e5832536f98cf9581984b8c1..952fd20f71560acd89c74f08e9d8cdbf
RenderWidgetHostImpl* render_widget_host) { RenderWidgetHostImpl* render_widget_host) {
return render_widget_host == GetPrimaryMainFrame()->GetRenderWidgetHost(); 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 diff --git a/content/browser/web_contents/web_contents_impl.h b/content/browser/web_contents/web_contents_impl.h
index 550beed4beda751159a82b94687e05018c0ade54..1e606e88aa5a44b06acf1f421556331346928e08 100644 index a35dc028fbcf202a7ba1aa7213f8c815e9a31e3f..fe3b8cf40ea7c26aade59c7224416594509f6308 100644
--- a/content/browser/web_contents/web_contents_impl.h --- a/content/browser/web_contents/web_contents_impl.h
+++ b/content/browser/web_contents/web_contents_impl.h +++ b/content/browser/web_contents/web_contents_impl.h
@@ -1177,6 +1177,7 @@ class CONTENT_EXPORT WebContentsImpl @@ -1178,6 +1178,7 @@ class CONTENT_EXPORT WebContentsImpl
void SendScreenRects() override; void SendScreenRects() override;
void SendActiveState(bool active) override; void SendActiveState(bool active) override;
TextInputManager* GetTextInputManager() override; TextInputManager* GetTextInputManager() override;

View file

@ -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. 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 diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 4325cdfd256ae7a1008e073d42da995b82df5bba..b895fb34f7fe7d48613a972dc29039c7d9c26987 100644 index 2a17aa6a3f687d60a7ca0e839e59f637819a9376..95a714ca4a0023dc31b212611f91fc1d03543656 100644
--- a/content/browser/web_contents/web_contents_impl.cc --- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc
@@ -9909,25 +9909,13 @@ void WebContentsImpl::RendererUnresponsive( @@ -9971,25 +9971,13 @@ void WebContentsImpl::RendererUnresponsive(
base::RepeatingClosure hang_monitor_restarter) { base::RepeatingClosure hang_monitor_restarter) {
OPTIONAL_TRACE_EVENT1("content", "WebContentsImpl::RendererUnresponsive", OPTIONAL_TRACE_EVENT1("content", "WebContentsImpl::RendererUnresponsive",
"render_widget_host", render_widget_host); "render_widget_host", render_widget_host);

View file

@ -24,7 +24,7 @@ index ce00b0540a7ac7f7c7b4c65f1a1343f72ae21c42..cc3b694431f14b166a305a446a48c25d
const blink::WebMouseEvent& event, const blink::WebMouseEvent& event,
const ui::LatencyInfo& latency) { const ui::LatencyInfo& latency) {
diff --git a/content/browser/renderer_host/render_widget_host_view_base.h b/content/browser/renderer_host/render_widget_host_view_base.h diff --git a/content/browser/renderer_host/render_widget_host_view_base.h b/content/browser/renderer_host/render_widget_host_view_base.h
index 568a87065acb56faf3f91e35b4e9ad2782edbe28..90a8f27e5d240c7d88a314c580b459d1090b1d25 100644 index ee54e91c031849307e51905fbdcdf53c5f17bf8f..72e12f6910e581c3a6f19241523322dcb6959c61 100644
--- a/content/browser/renderer_host/render_widget_host_view_base.h --- a/content/browser/renderer_host/render_widget_host_view_base.h
+++ b/content/browser/renderer_host/render_widget_host_view_base.h +++ b/content/browser/renderer_host/render_widget_host_view_base.h
@@ -30,6 +30,8 @@ @@ -30,6 +30,8 @@

View file

@ -8,10 +8,10 @@ respond to the first mouse click in their window, which is desirable for some
kinds of utility windows. Similarly for `disableAutoHideCursor`. kinds of utility windows. Similarly for `disableAutoHideCursor`.
diff --git a/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm b/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm diff --git a/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm b/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm
index f70d59fce833ca4daf81d164e5ca9fd39f2520f7..b712b8af0e770aa3acbeb1167b1a20bc1547c98a 100644 index 22ee05153569d0db7cbc7ab520944e84b9475c8e..4017ee032569466f5311e5c9612c82c086eab935 100644
--- a/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm --- a/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm
+++ b/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm +++ b/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm
@@ -169,6 +169,15 @@ void ExtractUnderlines(NSAttributedString* string, @@ -170,6 +170,15 @@ void ExtractUnderlines(NSAttributedString* string,
} // namespace } // namespace
@ -27,7 +27,7 @@ index f70d59fce833ca4daf81d164e5ca9fd39f2520f7..b712b8af0e770aa3acbeb1167b1a20bc
// RenderWidgetHostViewCocoa --------------------------------------------------- // RenderWidgetHostViewCocoa ---------------------------------------------------
// Private methods: // Private methods:
@@ -780,6 +789,9 @@ - (AcceptMouseEventsOption)acceptsMouseEventsOption { @@ -774,6 +783,9 @@ - (AcceptMouseEventsOption)acceptsMouseEventsOption {
} }
- (BOOL)acceptsFirstMouse:(NSEvent*)theEvent { - (BOOL)acceptsFirstMouse:(NSEvent*)theEvent {
@ -37,7 +37,7 @@ index f70d59fce833ca4daf81d164e5ca9fd39f2520f7..b712b8af0e770aa3acbeb1167b1a20bc
// Enable "click-through" if mouse clicks are accepted in inactive windows // Enable "click-through" if mouse clicks are accepted in inactive windows
return [self acceptsMouseEventsOption] > kAcceptMouseEventsInActiveWindow; return [self acceptsMouseEventsOption] > kAcceptMouseEventsInActiveWindow;
} }
@@ -925,6 +937,10 @@ - (BOOL)shouldIgnoreMouseEvent:(NSEvent*)theEvent { @@ -919,6 +931,10 @@ - (BOOL)shouldIgnoreMouseEvent:(NSEvent*)theEvent {
// its parent view. // its parent view.
BOOL hitSelf = NO; BOOL hitSelf = NO;
while (view) { while (view) {
@ -48,7 +48,7 @@ index f70d59fce833ca4daf81d164e5ca9fd39f2520f7..b712b8af0e770aa3acbeb1167b1a20bc
if (view == self) if (view == self)
hitSelf = YES; hitSelf = YES;
if ([view isKindOfClass:[self class]] && ![view isEqual:self] && if ([view isKindOfClass:[self class]] && ![view isEqual:self] &&
@@ -1259,6 +1275,10 @@ - (void)keyEvent:(NSEvent*)theEvent wasKeyEquivalent:(BOOL)equiv { @@ -1253,6 +1269,10 @@ - (void)keyEvent:(NSEvent*)theEvent wasKeyEquivalent:(BOOL)equiv {
eventType == NSEventTypeKeyDown && eventType == NSEventTypeKeyDown &&
!(modifierFlags & NSEventModifierFlagCommand); !(modifierFlags & NSEventModifierFlagCommand);

View file

@ -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). 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 diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn
index 9e0dca945ef9a9a0209c84ab6cf5e1cda352257e..b38442f018b218944c7b85c9f8bd8b8eb6137b9e 100644 index 26ec2b8abc6783a48518c1b15a12eb2212b0db7a..95c73dcb082999d0a85d82f1fe330d27c88055ca 100644
--- a/chrome/BUILD.gn --- a/chrome/BUILD.gn
+++ b/chrome/BUILD.gn +++ b/chrome/BUILD.gn
@@ -1549,7 +1549,7 @@ if (is_chrome_branded && !is_android) { @@ -1550,7 +1550,7 @@ if (is_chrome_branded && !is_android) {
} }
} }
@ -64,7 +64,7 @@ index 9e0dca945ef9a9a0209c84ab6cf5e1cda352257e..b38442f018b218944c7b85c9f8bd8b8e
chrome_paks("packed_resources") { chrome_paks("packed_resources") {
if (is_mac) { if (is_mac) {
output_dir = "$root_gen_dir/repack" output_dir = "$root_gen_dir/repack"
@@ -1595,6 +1595,12 @@ repack("browser_tests_pak") { @@ -1596,6 +1596,12 @@ repack("browser_tests_pak") {
deps = [ "//chrome/test/data/webui:resources" ] deps = [ "//chrome/test/data/webui:resources" ]
} }

View file

@ -233,7 +233,7 @@ index 2991489fae8a4eecad97b1ecb2271f096d9a9229..93b7aa620ad1da250ac06e3383ca6897
} }
diff --git a/content/common/features.cc b/content/common/features.cc diff --git a/content/common/features.cc b/content/common/features.cc
index 31484e57bd0989af7a2e9584bbd430cdfa713346..fdb5e8f5f395b128c1c5300b94a50f693d6b52e1 100644 index 136290cb51f7b44cc6f8754c49203a7bad1634e8..d11fd0742b10e6318a0d3740759f474b41675ce6 100644
--- a/content/common/features.cc --- a/content/common/features.cc
+++ b/content/common/features.cc +++ b/content/common/features.cc
@@ -261,6 +261,14 @@ BASE_FEATURE(kIOSurfaceCapturer, @@ -261,6 +261,14 @@ BASE_FEATURE(kIOSurfaceCapturer,
@ -252,7 +252,7 @@ index 31484e57bd0989af7a2e9584bbd430cdfa713346..fdb5e8f5f395b128c1c5300b94a50f69
// invalidated upon notifications sent by base::SystemMonitor. If disabled, the // invalidated upon notifications sent by base::SystemMonitor. If disabled, the
// cache is considered invalid on every enumeration request. // cache is considered invalid on every enumeration request.
diff --git a/content/common/features.h b/content/common/features.h diff --git a/content/common/features.h b/content/common/features.h
index 906c0da9313ac0272f5e5a79ef797de596804cfb..94b63dfe1235b7643e29926edd2c27c447302b35 100644 index dc481abb8ef01c8e5a23d0f683a59c2ee6420826..7f61079290ba740cdad7b74feeb94143bdcc6bd4 100644
--- a/content/common/features.h --- a/content/common/features.h
+++ b/content/common/features.h +++ b/content/common/features.h
@@ -68,6 +68,9 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE(kInterestGroupUpdateIfOlderThan); @@ -68,6 +68,9 @@ CONTENT_EXPORT BASE_DECLARE_FEATURE(kInterestGroupUpdateIfOlderThan);

View file

@ -0,0 +1,23 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Samuel Maddock <smaddock@slack-corp.com>
Date: Fri, 28 Mar 2025 20:22:26 -0400
Subject: revert: Enable CREL for arm32 targets
Enabling CREL on Linux ARM64 seems to cause it to segfault. Disable for Electron
as its one of our supported platforms.
https://chromium-review.googlesource.com/q/I3a62f02f564f07be63173b0773b4ecaffbe939b9
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
index 6cbc6b8cfae044c36e83cc54c23dc500b445e5da..1d9798b5bffb4fb3166b72911cea5ba1282a757f 100644
--- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn
@@ -628,7 +628,8 @@ config("compiler") {
# Enable ELF CREL (see crbug.com/357878242) for all platforms that use ELF
# (excluding toolchains that use an older version of LLVM).
- if (is_linux && !llvm_android_mainline &&
+ # TODO(crbug.com/376278218): This causes segfault on Linux ARM builds.
+ if (is_linux && !llvm_android_mainline && current_cpu != "arm" &&
default_toolchain != "//build/toolchain/cros:target") {
cflags += [ "-Wa,--crel,--allow-experimental-crel" ]
}

View file

@ -6,7 +6,7 @@ Subject: Revert "Remove the AllowAggressiveThrottlingWithWebSocket feature."
This reverts commit 615c1810a187840ffeb04096087efff86edb37de. This reverts commit 615c1810a187840ffeb04096087efff86edb37de.
diff --git a/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc b/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc diff --git a/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc b/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc
index 97325e06385105ec75d354002c6a147d5dff7218..d5b18bbcc9d2c46c6c2ebae1b36f4f1327b27b2c 100644 index d7f5c10b6f82d2dcebc7a1ee11ef05757c3fa7ad..b37b02aaddf524b427086aa20c8140a22097a738 100644
--- a/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc --- a/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc
+++ b/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc +++ b/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc
@@ -99,6 +99,17 @@ enum WebSocketOpCode { @@ -99,6 +99,17 @@ enum WebSocketOpCode {

View file

@ -6,10 +6,10 @@ Subject: scroll_bounce_flag.patch
Patch to make scrollBounce option work. Patch to make scrollBounce option work.
diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc
index e5701fe6ddcf8b9d846373d331e91e705870e523..a64b6d00637a177fd4f6d66b236bed9b0d8d4d8c 100644 index f1ef5e0d6c1c659506656df5f98a8637729009a0..5f2e9766fe7e8a0ced2a15af7f8fcd529c02c1bb 100644
--- a/content/renderer/render_thread_impl.cc --- a/content/renderer/render_thread_impl.cc
+++ b/content/renderer/render_thread_impl.cc +++ b/content/renderer/render_thread_impl.cc
@@ -1310,7 +1310,7 @@ bool RenderThreadImpl::IsLcdTextEnabled() { @@ -1324,7 +1324,7 @@ bool RenderThreadImpl::IsLcdTextEnabled() {
} }
bool RenderThreadImpl::IsElasticOverscrollEnabled() { bool RenderThreadImpl::IsElasticOverscrollEnabled() {

View file

@ -22,10 +22,10 @@ However, the patch would need to be reviewed by the security team, as it
does touch a security-sensitive class. 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 diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
index bf18683a08e1c144b360f904ab65adcab66aa607..829a0c2f09490099bb58ece6a41995e3fe3d6c81 100644 index 28e952d9766566e0a5213492aaf606aa56dc23f6..c0d553dcbb37db7657c2374d4a6b978d7bfee88c 100644
--- a/content/browser/renderer_host/render_process_host_impl.cc --- a/content/browser/renderer_host/render_process_host_impl.cc
+++ b/content/browser/renderer_host/render_process_host_impl.cc +++ b/content/browser/renderer_host/render_process_host_impl.cc
@@ -1754,6 +1754,10 @@ bool RenderProcessHostImpl::Init() { @@ -1814,6 +1814,10 @@ bool RenderProcessHostImpl::Init() {
std::unique_ptr<SandboxedProcessLauncherDelegate> sandbox_delegate = std::unique_ptr<SandboxedProcessLauncherDelegate> sandbox_delegate =
std::make_unique<RendererSandboxedProcessLauncherDelegateWin>( std::make_unique<RendererSandboxedProcessLauncherDelegateWin>(
*cmd_line, IsPdf(), IsJitDisabled()); *cmd_line, IsPdf(), IsJitDisabled());

View file

@ -9,10 +9,10 @@ is needed for OSR.
Originally landed in https://github.com/electron/libchromiumcontent/pull/226. 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 diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 59b05937ceb1b81b69d913f587150021b9031106..97512399db631236afd1aeafb1ecee97cb754f60 100644 index b6870d74a761a847e9952d409b37ddb778790b08..052e518e42c7c2d7f0e17ebc8dc4e8ec78215802 100644
--- a/content/browser/web_contents/web_contents_impl.cc --- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc
@@ -3882,6 +3882,13 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, @@ -3908,6 +3908,13 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
params.main_frame_name, GetOpener(), primary_main_frame_policy, params.main_frame_name, GetOpener(), primary_main_frame_policy,
base::UnguessableToken::Create()); base::UnguessableToken::Create());
@ -26,7 +26,7 @@ index 59b05937ceb1b81b69d913f587150021b9031106..97512399db631236afd1aeafb1ecee97
std::unique_ptr<WebContentsViewDelegate> delegate = std::unique_ptr<WebContentsViewDelegate> delegate =
GetContentClient()->browser()->GetWebContentsViewDelegate(this); GetContentClient()->browser()->GetWebContentsViewDelegate(this);
@@ -3892,6 +3899,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, @@ -3918,6 +3925,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
view_ = CreateWebContentsView(this, std::move(delegate), view_ = CreateWebContentsView(this, std::move(delegate),
&render_view_host_delegate_view_); &render_view_host_delegate_view_);
} }

View file

@ -15,10 +15,10 @@ Note that we also need to manually update embedder's
`api::WebContents::IsFullscreenForTabOrPending` value. `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 diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc
index 27db5dbfd05106788feda9daab9d1aaaf1ae920f..5de5748662c957f5b0e671057b827e2eb2224893 100644 index ea6ba910234659d1213b1f3f624da0f49b851725..314ef160662faf6d7c00d9d6999abb1db8bbebe5 100644
--- a/content/browser/renderer_host/render_frame_host_impl.cc --- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -8745,6 +8745,17 @@ void RenderFrameHostImpl::EnterFullscreen( @@ -8748,6 +8748,17 @@ void RenderFrameHostImpl::EnterFullscreen(
} }
} }
@ -37,10 +37,10 @@ index 27db5dbfd05106788feda9daab9d1aaaf1ae920f..5de5748662c957f5b0e671057b827e2e
if (had_fullscreen_token && !GetView()->HasFocus()) if (had_fullscreen_token && !GetView()->HasFocus())
GetView()->Focus(); GetView()->Focus();
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 97512399db631236afd1aeafb1ecee97cb754f60..c3b563b0b727bc35f6d4499c589110644ebe9cd1 100644 index 052e518e42c7c2d7f0e17ebc8dc4e8ec78215802..1e6ee8c65d56f2821485f855bbf4e8bb8212058c 100644
--- a/content/browser/web_contents/web_contents_impl.cc --- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc +++ b/content/browser/web_contents/web_contents_impl.cc
@@ -4157,21 +4157,25 @@ KeyboardEventProcessingResult WebContentsImpl::PreHandleKeyboardEvent( @@ -4183,21 +4183,25 @@ KeyboardEventProcessingResult WebContentsImpl::PreHandleKeyboardEvent(
const input::NativeWebKeyboardEvent& event) { const input::NativeWebKeyboardEvent& event) {
OPTIONAL_TRACE_EVENT0(TRACE_DISABLED_BY_DEFAULT("content.verbose"), OPTIONAL_TRACE_EVENT0(TRACE_DISABLED_BY_DEFAULT("content.verbose"),
"WebContentsImpl::PreHandleKeyboardEvent"); "WebContentsImpl::PreHandleKeyboardEvent");
@ -78,7 +78,7 @@ index 97512399db631236afd1aeafb1ecee97cb754f60..c3b563b0b727bc35f6d4499c58911064
} }
bool WebContentsImpl::HandleMouseEvent(const blink::WebMouseEvent& event) { bool WebContentsImpl::HandleMouseEvent(const blink::WebMouseEvent& event) {
@@ -4330,7 +4334,7 @@ void WebContentsImpl::EnterFullscreenMode( @@ -4356,7 +4360,7 @@ void WebContentsImpl::EnterFullscreenMode(
OPTIONAL_TRACE_EVENT0("content", "WebContentsImpl::EnterFullscreenMode"); OPTIONAL_TRACE_EVENT0("content", "WebContentsImpl::EnterFullscreenMode");
DCHECK(CanEnterFullscreenMode(requesting_frame)); DCHECK(CanEnterFullscreenMode(requesting_frame));
DCHECK(requesting_frame->IsActive()); DCHECK(requesting_frame->IsActive());

View file

@ -26,10 +26,10 @@ index 7a2d251ba2d13d0a34df176111e6524a27b87f55..cbbe0fbdd25a0f7859b113fdb3dcd9ce
// An empty URL is returned if the URL is not overriden. // An empty URL is returned if the URL is not overriden.
virtual GURL OverrideFlashEmbedWithHTML(const GURL& url); virtual GURL OverrideFlashEmbedWithHTML(const GURL& url);
diff --git a/content/renderer/renderer_blink_platform_impl.cc b/content/renderer/renderer_blink_platform_impl.cc diff --git a/content/renderer/renderer_blink_platform_impl.cc b/content/renderer/renderer_blink_platform_impl.cc
index d912ff1b05e9fe5c4d8edf1f681fc824b6f2d38a..92c28a027ebd10a3bb8a864231b237908fbf7394 100644 index ac71ba108e5085aadc3e7f22e7bf690c38870f2b..d0c7bd3bf1c20e505548c7146ab71f2af2e57b43 100644
--- a/content/renderer/renderer_blink_platform_impl.cc --- a/content/renderer/renderer_blink_platform_impl.cc
+++ b/content/renderer/renderer_blink_platform_impl.cc +++ b/content/renderer/renderer_blink_platform_impl.cc
@@ -906,6 +906,12 @@ void RendererBlinkPlatformImpl::WillStopWorkerThread() { @@ -903,6 +903,12 @@ void RendererBlinkPlatformImpl::WillStopWorkerThread() {
WorkerThreadRegistry::Instance()->WillStopCurrentWorkerThread(); WorkerThreadRegistry::Instance()->WillStopCurrentWorkerThread();
} }
@ -43,10 +43,10 @@ index d912ff1b05e9fe5c4d8edf1f681fc824b6f2d38a..92c28a027ebd10a3bb8a864231b23790
const v8::Local<v8::Context>& worker) { const v8::Local<v8::Context>& worker) {
GetContentClient()->renderer()->DidInitializeWorkerContextOnWorkerThread( GetContentClient()->renderer()->DidInitializeWorkerContextOnWorkerThread(
diff --git a/content/renderer/renderer_blink_platform_impl.h b/content/renderer/renderer_blink_platform_impl.h diff --git a/content/renderer/renderer_blink_platform_impl.h b/content/renderer/renderer_blink_platform_impl.h
index b6d525fb400ae27e04967c9b1b197e01f4a21123..5daf30bfb5cfc27148aa5f0d784ee8348c577dbf 100644 index a3aaa495c754de62dc1970eebd9bba80bdbfb869..a5c668a7fd8426eb409b6577cf1b6ce5d24b9fde 100644
--- a/content/renderer/renderer_blink_platform_impl.h --- a/content/renderer/renderer_blink_platform_impl.h
+++ b/content/renderer/renderer_blink_platform_impl.h +++ b/content/renderer/renderer_blink_platform_impl.h
@@ -198,6 +198,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl { @@ -199,6 +199,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl {
void DidStartWorkerThread() override; void DidStartWorkerThread() override;
void WillStopWorkerThread() override; void WillStopWorkerThread() override;
void WorkerContextCreated(const v8::Local<v8::Context>& worker) override; void WorkerContextCreated(const v8::Local<v8::Context>& worker) override;
@ -55,10 +55,10 @@ index b6d525fb400ae27e04967c9b1b197e01f4a21123..5daf30bfb5cfc27148aa5f0d784ee834
const blink::WebSecurityOrigin& script_origin) override; const blink::WebSecurityOrigin& script_origin) override;
blink::ProtocolHandlerSecurityLevel GetProtocolHandlerSecurityLevel( blink::ProtocolHandlerSecurityLevel GetProtocolHandlerSecurityLevel(
diff --git a/third_party/blink/public/platform/platform.h b/third_party/blink/public/platform/platform.h diff --git a/third_party/blink/public/platform/platform.h b/third_party/blink/public/platform/platform.h
index 1e84e382f1f94607384e0a800f4a96daf5e8ba75..d19743d2d2a512a984d831f437adced81ae912dd 100644 index 336f771d0587751bd826c1288b4f77b2d672f95b..6a843c144b8f602e8232b2cae7954824c4ad6bc3 100644
--- a/third_party/blink/public/platform/platform.h --- a/third_party/blink/public/platform/platform.h
+++ b/third_party/blink/public/platform/platform.h +++ b/third_party/blink/public/platform/platform.h
@@ -676,6 +676,7 @@ class BLINK_PLATFORM_EXPORT Platform { @@ -677,6 +677,7 @@ class BLINK_PLATFORM_EXPORT Platform {
virtual void DidStartWorkerThread() {} virtual void DidStartWorkerThread() {}
virtual void WillStopWorkerThread() {} virtual void WillStopWorkerThread() {}
virtual void WorkerContextCreated(const v8::Local<v8::Context>& worker) {} virtual void WorkerContextCreated(const v8::Local<v8::Context>& worker) {}
@ -67,10 +67,10 @@ index 1e84e382f1f94607384e0a800f4a96daf5e8ba75..d19743d2d2a512a984d831f437adced8
const WebSecurityOrigin& script_origin) { const WebSecurityOrigin& script_origin) {
return false; return false;
diff --git a/third_party/blink/renderer/core/workers/worker_thread.cc b/third_party/blink/renderer/core/workers/worker_thread.cc diff --git a/third_party/blink/renderer/core/workers/worker_thread.cc b/third_party/blink/renderer/core/workers/worker_thread.cc
index 6e0a669c741753e784fe8a967b1deb125b02d0bf..2449348f956f81845bf314558fa5b7268500adeb 100644 index 00c8757098f9959f78a0a7383cf1197f88ae14aa..9b2878bc23c78f092816524608776dd32fbde5a1 100644
--- a/third_party/blink/renderer/core/workers/worker_thread.cc --- a/third_party/blink/renderer/core/workers/worker_thread.cc
+++ b/third_party/blink/renderer/core/workers/worker_thread.cc +++ b/third_party/blink/renderer/core/workers/worker_thread.cc
@@ -762,6 +762,12 @@ void WorkerThread::PrepareForShutdownOnWorkerThread() { @@ -751,6 +751,12 @@ void WorkerThread::PrepareForShutdownOnWorkerThread() {
} }
pause_handle_.reset(); pause_handle_.reset();

View file

@ -35,10 +35,10 @@ index cbbe0fbdd25a0f7859b113fdb3dcd9ce57e597d6..1345bb5008e1b4fc3a450f7e353d52ec
// from the worker thread. // from the worker thread.
virtual void WillDestroyWorkerContextOnWorkerThread( virtual void WillDestroyWorkerContextOnWorkerThread(
diff --git a/content/renderer/renderer_blink_platform_impl.cc b/content/renderer/renderer_blink_platform_impl.cc diff --git a/content/renderer/renderer_blink_platform_impl.cc b/content/renderer/renderer_blink_platform_impl.cc
index 92c28a027ebd10a3bb8a864231b237908fbf7394..21ac02b10b698b943feb982743c09d4f1107c437 100644 index d0c7bd3bf1c20e505548c7146ab71f2af2e57b43..020a2cc8125eea8a017950fdcdec4a2810201e21 100644
--- a/content/renderer/renderer_blink_platform_impl.cc --- a/content/renderer/renderer_blink_platform_impl.cc
+++ b/content/renderer/renderer_blink_platform_impl.cc +++ b/content/renderer/renderer_blink_platform_impl.cc
@@ -918,6 +918,12 @@ void RendererBlinkPlatformImpl::WorkerContextCreated( @@ -915,6 +915,12 @@ void RendererBlinkPlatformImpl::WorkerContextCreated(
worker); worker);
} }
@ -52,10 +52,10 @@ index 92c28a027ebd10a3bb8a864231b237908fbf7394..21ac02b10b698b943feb982743c09d4f
const blink::WebSecurityOrigin& script_origin) { const blink::WebSecurityOrigin& script_origin) {
return GetContentClient()->renderer()->AllowScriptExtensionForServiceWorker( return GetContentClient()->renderer()->AllowScriptExtensionForServiceWorker(
diff --git a/content/renderer/renderer_blink_platform_impl.h b/content/renderer/renderer_blink_platform_impl.h diff --git a/content/renderer/renderer_blink_platform_impl.h b/content/renderer/renderer_blink_platform_impl.h
index 5daf30bfb5cfc27148aa5f0d784ee8348c577dbf..182d574f14a679707e824e82bb4feeb4ee68de90 100644 index a5c668a7fd8426eb409b6577cf1b6ce5d24b9fde..a53bfe2f7566828433c3c6c8e95cbd12cd6189a9 100644
--- a/content/renderer/renderer_blink_platform_impl.h --- a/content/renderer/renderer_blink_platform_impl.h
+++ b/content/renderer/renderer_blink_platform_impl.h +++ b/content/renderer/renderer_blink_platform_impl.h
@@ -198,6 +198,8 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl { @@ -199,6 +199,8 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl {
void DidStartWorkerThread() override; void DidStartWorkerThread() override;
void WillStopWorkerThread() override; void WillStopWorkerThread() override;
void WorkerContextCreated(const v8::Local<v8::Context>& worker) override; void WorkerContextCreated(const v8::Local<v8::Context>& worker) override;
@ -65,10 +65,10 @@ index 5daf30bfb5cfc27148aa5f0d784ee8348c577dbf..182d574f14a679707e824e82bb4feeb4
bool AllowScriptExtensionForServiceWorker( bool AllowScriptExtensionForServiceWorker(
const blink::WebSecurityOrigin& script_origin) override; const blink::WebSecurityOrigin& script_origin) override;
diff --git a/third_party/blink/public/platform/platform.h b/third_party/blink/public/platform/platform.h diff --git a/third_party/blink/public/platform/platform.h b/third_party/blink/public/platform/platform.h
index d19743d2d2a512a984d831f437adced81ae912dd..78267456cf2bccc4bc1120ea8107c950ead24c89 100644 index 6a843c144b8f602e8232b2cae7954824c4ad6bc3..ede4908eaad7f1c22fac0fe5071189c50fb5d71a 100644
--- a/third_party/blink/public/platform/platform.h --- a/third_party/blink/public/platform/platform.h
+++ b/third_party/blink/public/platform/platform.h +++ b/third_party/blink/public/platform/platform.h
@@ -676,6 +676,8 @@ class BLINK_PLATFORM_EXPORT Platform { @@ -677,6 +677,8 @@ class BLINK_PLATFORM_EXPORT Platform {
virtual void DidStartWorkerThread() {} virtual void DidStartWorkerThread() {}
virtual void WillStopWorkerThread() {} virtual void WillStopWorkerThread() {}
virtual void WorkerContextCreated(const v8::Local<v8::Context>& worker) {} virtual void WorkerContextCreated(const v8::Local<v8::Context>& worker) {}

View file

@ -10,10 +10,10 @@ to handle this without patching, but this is fairly clean for now and no longer
patching legacy devtools code. patching legacy devtools code.
diff --git a/front_end/entrypoints/main/MainImpl.ts b/front_end/entrypoints/main/MainImpl.ts diff --git a/front_end/entrypoints/main/MainImpl.ts b/front_end/entrypoints/main/MainImpl.ts
index 75d54b60cb265eef90a493295dd9d495f8327b7c..2d98c8470115b70bda7d728ff4c00d2282159913 100644 index ab07d9b54f6bc8183a151feabf094eaaf1c64306..b3300b1d49b816013f3ca82b084977e5644ca5b7 100644
--- a/front_end/entrypoints/main/MainImpl.ts --- a/front_end/entrypoints/main/MainImpl.ts
+++ b/front_end/entrypoints/main/MainImpl.ts +++ b/front_end/entrypoints/main/MainImpl.ts
@@ -761,6 +761,8 @@ export class MainImpl { @@ -734,6 +734,8 @@ export class MainImpl {
globalThis.Main = globalThis.Main || {}; globalThis.Main = globalThis.Main || {};
// @ts-expect-error Exported for Tests.js // @ts-expect-error Exported for Tests.js
globalThis.Main.Main = MainImpl; globalThis.Main.Main = MainImpl;

View file

@ -48,5 +48,8 @@ feat_add_oom_error_callback_in_node_isolatesettings.patch
fix_-wnonnull_warning.patch fix_-wnonnull_warning.patch
refactor_attach_cppgc_heap_on_v8_isolate_creation.patch refactor_attach_cppgc_heap_on_v8_isolate_creation.patch
fix_ensure_traverseparent_bails_on_resource_path_exit.patch fix_ensure_traverseparent_bails_on_resource_path_exit.patch
cli_move_--trace-atomics-wait_to_eol.patch
fix_cppgc_initializing_twice.patch
fix_task_starvation_in_inspector_context_test.patch
zlib_fix_pointer_alignment.patch zlib_fix_pointer_alignment.patch
fix_expose_readfilesync_override_for_modules.patch fix_expose_readfilesync_override_for_modules.patch

View file

@ -140,10 +140,18 @@ index a73de23a1debfdac66873e0baccf882e383bfc36..7ac5291be093773ee7efd39e77e01bf5
// Handles compilation and caching of built-in JavaScript modules and // Handles compilation and caching of built-in JavaScript modules and
// bootstrap scripts, whose source are bundled into the binary as static data. // bootstrap scripts, whose source are bundled into the binary as static data.
diff --git a/tools/install.py b/tools/install.py diff --git a/tools/install.py b/tools/install.py
index 17515720ba9c85d533465365188021074a8d30f4..7232be863d517c8445059a57c5938c2cbdeaf81b 100755 index 17515720ba9c85d533465365188021074a8d30f4..92f83a83be67aafc9ead6923b868dbb0de39db34 100755
--- a/tools/install.py --- a/tools/install.py
+++ b/tools/install.py +++ b/tools/install.py
@@ -291,6 +291,7 @@ def headers(options, action): @@ -212,6 +212,7 @@ def headers(options, action):
'include/cppgc/internal/caged-heap-local-data.h',
'include/cppgc/internal/caged-heap.h',
'include/cppgc/internal/compiler-specific.h',
+ 'include/cppgc/internal/conditional-stack-allocated.h',
'include/cppgc/internal/finalizer-trait.h',
'include/cppgc/internal/gc-info.h',
'include/cppgc/internal/logging.h',
@@ -291,6 +292,7 @@ def headers(options, action):
'include/v8-promise.h', 'include/v8-promise.h',
'include/v8-proxy.h', 'include/v8-proxy.h',
'include/v8-regexp.h', 'include/v8-regexp.h',

View file

@ -0,0 +1,995 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Marco Ippolito <marcoippolito54@gmail.com>
Date: Wed, 1 May 2024 14:24:48 +0200
Subject: cli: move --trace-atomics-wait to eol
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
PR-URL: https://github.com/nodejs/node/pull/52747
Fixes: https://github.com/nodejs/node/issues/42982
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz.nizipli@sentry.io>
diff --git a/doc/api/cli.md b/doc/api/cli.md
index 431a6aa7a2cf4d537cb719f15c2749254e0433b3..1d1672a01c4fae6b339cb144d0d6e35b49209a14 100644
--- a/doc/api/cli.md
+++ b/doc/api/cli.md
@@ -32,11 +32,11 @@ is passed. If no corresponding file is found, an error is thrown.
If a file is found, its path will be passed to the
[ES module loader][Modules loaders] under any of the following conditions:
-* The program was started with a command-line flag that forces the entry
+- The program was started with a command-line flag that forces the entry
point to be loaded with ECMAScript module loader, such as `--import` or
[`--experimental-default-type=module`][].
-* The file has an `.mjs` extension.
-* The file does not have a `.cjs` extension, and the nearest parent
+- The file has an `.mjs` extension.
+- The file does not have a `.cjs` extension, and the nearest parent
`package.json` file contains a top-level [`"type"`][] field with a value of
`"module"`.
@@ -164,7 +164,10 @@ Example:
```js
const childProcess = require('node:child_process');
// Attempt to bypass the permission
-childProcess.spawn('node', ['-e', 'require("fs").writeFileSync("/new-file", "example")']);
+childProcess.spawn('node', [
+ '-e',
+ 'require("fs").writeFileSync("/new-file", "example")',
+]);
```
```console
@@ -206,8 +209,8 @@ the [Permission Model][].
The valid arguments for the `--allow-fs-read` flag are:
-* `*` - To allow all `FileSystemRead` operations.
-* Multiple paths can be allowed using multiple `--allow-fs-read` flags.
+- `*` - To allow all `FileSystemRead` operations.
+- Multiple paths can be allowed using multiple `--allow-fs-read` flags.
Example `--allow-fs-read=/folder1/ --allow-fs-read=/folder1/`
Examples can be found in the [File System Permissions][] documentation.
@@ -251,8 +254,8 @@ the [Permission Model][].
The valid arguments for the `--allow-fs-write` flag are:
-* `*` - To allow all `FileSystemWrite` operations.
-* Multiple paths can be allowed using multiple `--allow-fs-write` flags.
+- `*` - To allow all `FileSystemWrite` operations.
+- Multiple paths can be allowed using multiple `--allow-fs-write` flags.
Example `--allow-fs-write=/folder1/ --allow-fs-write=/folder1/`
Paths delimited by comma (`,`) are no longer allowed.
@@ -399,10 +402,10 @@ creation behavior.
The following options are currently supported:
-* `builder` {string} Required. Provides the name to the script that is executed
+- `builder` {string} Required. Provides the name to the script that is executed
before building the snapshot, as if [`--build-snapshot`][] had been passed
with `builder` as the main script name.
-* `withoutCodeCache` {boolean} Optional. Including the code cache reduces the
+- `withoutCodeCache` {boolean} Optional. Including the code cache reduces the
time spent on compiling functions included in the snapshot at the expense
of a bigger snapshot size and potentially breaking portability of the
snapshot.
@@ -550,9 +553,9 @@ Defaults to current working directory.
Affects the default output directory of:
-* [`--cpu-prof-dir`][]
-* [`--heap-prof-dir`][]
-* [`--redirect-warnings`][]
+- [`--cpu-prof-dir`][]
+- [`--heap-prof-dir`][]
+- [`--redirect-warnings`][]
### `--disable-proto=mode`
@@ -697,9 +700,9 @@ changes:
Set the default value of `order` in [`dns.lookup()`][] and
[`dnsPromises.lookup()`][]. The value could be:
-* `ipv4first`: sets default `order` to `ipv4first`.
-* `ipv6first`: sets default `order` to `ipv6first`.
-* `verbatim`: sets default `order` to `verbatim`.
+- `ipv4first`: sets default `order` to `ipv4first`.
+- `ipv6first`: sets default `order` to `ipv6first`.
+- `verbatim`: sets default `order` to `verbatim`.
The default is `verbatim` and [`dns.setDefaultResultOrder()`][] have higher
priority than `--dns-result-order`.
@@ -890,7 +893,7 @@ added: v22.7.0
> Stability: 1 - Experimental
Enables the use of [`AsyncLocalStorage`][] backed by `AsyncContextFrame` rather
-than the default implementation which relies on async\_hooks. This new model is
+than the default implementation which relies on async_hooks. This new model is
implemented very differently and so could have differences in how context data
flows within the application. As such, it is presently recommended to be sure
your application behaviour is unaffected by this change before using it in
@@ -909,12 +912,12 @@ added:
Define which module system, `module` or `commonjs`, to use for the following:
-* String input provided via `--eval` or STDIN, if `--input-type` is unspecified.
+- String input provided via `--eval` or STDIN, if `--input-type` is unspecified.
-* Files ending in `.js` or with no extension, if there is no `package.json` file
+- Files ending in `.js` or with no extension, if there is no `package.json` file
present in the same folder or any parent folder.
-* Files ending in `.js` or with no extension, if the nearest parent
+- Files ending in `.js` or with no extension, if the nearest parent
`package.json` field lacks a `"type"` field; unless the `package.json` folder
or any parent folder is inside a `node_modules` folder.
@@ -1450,15 +1453,15 @@ interoperability with non-conformant HTTP implementations.
When enabled, the parser will accept the following:
-* Invalid HTTP headers values.
-* Invalid HTTP versions.
-* Allow message containing both `Transfer-Encoding`
+- Invalid HTTP headers values.
+- Invalid HTTP versions.
+- Allow message containing both `Transfer-Encoding`
and `Content-Length` headers.
-* Allow extra data after message when `Connection: close` is present.
-* Allow extra transfer encodings after `chunked` has been provided.
-* Allow `\n` to be used as token separator instead of `\r\n`.
-* Allow `\r\n` not to be provided after a chunk.
-* Allow spaces to be present after a chunk size and before `\r\n`.
+- Allow extra data after message when `Connection: close` is present.
+- Allow extra transfer encodings after `chunked` has been provided.
+- Allow `\n` to be used as token separator instead of `\r\n`.
+- Allow `\r\n` not to be provided after a chunk.
+- Allow spaces to be present after a chunk size and before `\r\n`.
All the above will expose your application to request smuggling
or poisoning attack. Avoid using this option.
@@ -1536,8 +1539,8 @@ a [remote code execution][] attack.
If specifying a host, make sure that either:
-* The host is not accessible from public networks.
-* A firewall disallows unwanted connections on the port.
+- The host is not accessible from public networks.
+- A firewall disallows unwanted connections on the port.
**More specifically, `--inspect=0.0.0.0` is insecure if the port (`9229` by
default) is not firewall-protected.**
@@ -1799,7 +1802,7 @@ added:
-->
Enable OpenSSL 3.0 legacy provider. For more information please see
-[OSSL\_PROVIDER-legacy][OSSL_PROVIDER-legacy].
+[OSSL_PROVIDER-legacy][OSSL_PROVIDER-legacy].
### `--openssl-shared-config`
@@ -1849,12 +1852,12 @@ changes:
Enable the Permission Model for current process. When enabled, the
following permissions are restricted:
-* File System - manageable through
+- File System - manageable through
[`--allow-fs-read`][], [`--allow-fs-write`][] flags
-* Child Process - manageable through [`--allow-child-process`][] flag
-* Worker Threads - manageable through [`--allow-worker`][] flag
-* WASI - manageable through [`--allow-wasi`][] flag
-* Addons - manageable through [`--allow-addons`][] flag
+- Child Process - manageable through [`--allow-child-process`][] flag
+- Worker Threads - manageable through [`--allow-worker`][] flag
+- WASI - manageable through [`--allow-wasi`][] flag
+- Addons - manageable through [`--allow-addons`][] flag
### `--preserve-symlinks`
@@ -2194,16 +2197,16 @@ cases.
Some features of other `run` implementations that are intentionally excluded
are:
-* Running `pre` or `post` scripts in addition to the specified script.
-* Defining package manager-specific environment variables.
+- Running `pre` or `post` scripts in addition to the specified script.
+- Defining package manager-specific environment variables.
#### Environment variables
The following environment variables are set when running a script with `--run`:
-* `NODE_RUN_SCRIPT_NAME`: The name of the script being run. For example, if
+- `NODE_RUN_SCRIPT_NAME`: The name of the script being run. For example, if
`--run` is used to run `test`, the value of this variable will be `test`.
-* `NODE_RUN_PACKAGE_JSON_PATH`: The path to the `package.json` that is being
+- `NODE_RUN_PACKAGE_JSON_PATH`: The path to the `package.json` that is being
processed.
### `--secure-heap-min=n`
@@ -2601,39 +2604,6 @@ added: v12.0.0
Set default [`tls.DEFAULT_MIN_VERSION`][] to 'TLSv1.3'. Use to disable support
for TLSv1.2, which is not as secure as TLSv1.3.
-### `--trace-atomics-wait`
-
-<!-- YAML
-added: v14.3.0
-deprecated:
- - v18.8.0
- - v16.18.0
--->
-
-> Stability: 0 - Deprecated
-
-Print short summaries of calls to [`Atomics.wait()`][] to stderr.
-The output could look like this:
-
-```text
-(node:15701) [Thread 0] Atomics.wait(&lt;address> + 0, 1, inf) started
-(node:15701) [Thread 0] Atomics.wait(&lt;address> + 0, 1, inf) did not wait because the values mismatched
-(node:15701) [Thread 0] Atomics.wait(&lt;address> + 0, 0, 10) started
-(node:15701) [Thread 0] Atomics.wait(&lt;address> + 0, 0, 10) timed out
-(node:15701) [Thread 0] Atomics.wait(&lt;address> + 4, 0, inf) started
-(node:15701) [Thread 1] Atomics.wait(&lt;address> + 4, -1, inf) started
-(node:15701) [Thread 0] Atomics.wait(&lt;address> + 4, 0, inf) was woken up by another thread
-(node:15701) [Thread 1] Atomics.wait(&lt;address> + 4, -1, inf) was woken up by another thread
-```
-
-The fields here correspond to:
-
-* The thread id as given by [`worker_threads.threadId`][]
-* The base address of the `SharedArrayBuffer` in question, as well as the
- byte offset corresponding to the index passed to `Atomics.wait()`
-* The expected value that was passed to `Atomics.wait()`
-* The timeout passed to `Atomics.wait`
-
### `--trace-deprecation`
<!-- YAML
@@ -2651,14 +2621,14 @@ added: v22.13.0
Print information about any access to environment variables done in the current Node.js
instance to stderr, including:
-* The environment variable reads that Node.js does internally.
-* Writes in the form of `process.env.KEY = "SOME VALUE"`.
-* Reads in the form of `process.env.KEY`.
-* Definitions in the form of `Object.defineProperty(process.env, 'KEY', {...})`.
-* Queries in the form of `Object.hasOwn(process.env, 'KEY')`,
+- The environment variable reads that Node.js does internally.
+- Writes in the form of `process.env.KEY = "SOME VALUE"`.
+- Reads in the form of `process.env.KEY`.
+- Definitions in the form of `Object.defineProperty(process.env, 'KEY', {...})`.
+- Queries in the form of `Object.hasOwn(process.env, 'KEY')`,
`process.env.hasOwnProperty('KEY')` or `'KEY' in process.env`.
-* Deletions in the form of `delete process.env.KEY`.
-* Enumerations inf the form of `...process.env` or `Object.keys(process.env)`.
+- Deletions in the form of `delete process.env.KEY`.
+- Enumerations inf the form of `...process.env` or `Object.keys(process.env)`.
Only the names of the environment variables being accessed are printed. The values are not printed.
@@ -2803,15 +2773,15 @@ changes:
Using this flag allows to change what should happen when an unhandled rejection
occurs. One of the following modes can be chosen:
-* `throw`: Emit [`unhandledRejection`][]. If this hook is not set, raise the
+- `throw`: Emit [`unhandledRejection`][]. If this hook is not set, raise the
unhandled rejection as an uncaught exception. This is the default.
-* `strict`: Raise the unhandled rejection as an uncaught exception. If the
+- `strict`: Raise the unhandled rejection as an uncaught exception. If the
exception is handled, [`unhandledRejection`][] is emitted.
-* `warn`: Always trigger a warning, no matter if the [`unhandledRejection`][]
+- `warn`: Always trigger a warning, no matter if the [`unhandledRejection`][]
hook is set or not but do not print the deprecation warning.
-* `warn-with-error-code`: Emit [`unhandledRejection`][]. If this hook is not
+- `warn-with-error-code`: Emit [`unhandledRejection`][]. If this hook is not
set, trigger a warning, and set the process exit code to 1.
-* `none`: Silence all warnings.
+- `none`: Silence all warnings.
If a rejection happens during the command line entry point's ES module static
loading phase, it will always raise it as an uncaught exception.
@@ -2851,10 +2821,10 @@ MiB pages instead of 4 KiB pages.
The following values are valid for `mode`:
-* `off`: No mapping will be attempted. This is the default.
-* `on`: If supported by the OS, mapping will be attempted. Failure to map will
+- `off`: No mapping will be attempted. This is the default.
+- `on`: If supported by the OS, mapping will be attempted. Failure to map will
be ignored and a message will be printed to standard error.
-* `silent`: If supported by the OS, mapping will be attempted. Failure to map
+- `silent`: If supported by the OS, mapping will be attempted. Failure to map
will be ignored and will not be reported.
### `--v8-options`
@@ -2982,9 +2952,9 @@ instances.
The `FORCE_COLOR` environment variable is used to
enable ANSI colorized output. The value may be:
-* `1`, `true`, or the empty string `''` indicate 16-color support,
-* `2` to indicate 256-color support, or
-* `3` to indicate 16 million-color support.
+- `1`, `true`, or the empty string `''` indicate 16-color support,
+- `2` to indicate 256-color support, or
+- `3` to indicate 16 million-color support.
When `FORCE_COLOR` is used and set to a supported value, both the `NO_COLOR`,
and `NODE_DISABLE_COLORS` environment variables are ignored.
@@ -3114,151 +3084,150 @@ one is included in the list below.
<!-- node-options-node start -->
-* `--allow-addons`
-* `--allow-child-process`
-* `--allow-fs-read`
-* `--allow-fs-write`
-* `--allow-wasi`
-* `--allow-worker`
-* `--conditions`, `-C`
-* `--diagnostic-dir`
-* `--disable-proto`
-* `--disable-sigusr1`
-* `--disable-warning`
-* `--disable-wasm-trap-handler`
-* `--dns-result-order`
-* `--enable-fips`
-* `--enable-network-family-autoselection`
-* `--enable-source-maps`
-* `--entry-url`
-* `--experimental-abortcontroller`
-* `--experimental-async-context-frame`
-* `--experimental-default-type`
-* `--experimental-detect-module`
-* `--experimental-eventsource`
-* `--experimental-import-meta-resolve`
-* `--experimental-json-modules`
-* `--experimental-loader`
-* `--experimental-modules`
-* `--experimental-permission`
-* `--experimental-print-required-tla`
-* `--experimental-require-module`
-* `--experimental-shadow-realm`
-* `--experimental-specifier-resolution`
-* `--experimental-strip-types`
-* `--experimental-top-level-await`
-* `--experimental-transform-types`
-* `--experimental-vm-modules`
-* `--experimental-wasi-unstable-preview1`
-* `--experimental-wasm-modules`
-* `--experimental-webstorage`
-* `--force-context-aware`
-* `--force-fips`
-* `--force-node-api-uncaught-exceptions-policy`
-* `--frozen-intrinsics`
-* `--heap-prof-dir`
-* `--heap-prof-interval`
-* `--heap-prof-name`
-* `--heap-prof`
-* `--heapsnapshot-near-heap-limit`
-* `--heapsnapshot-signal`
-* `--http-parser`
-* `--icu-data-dir`
-* `--import`
-* `--input-type`
-* `--insecure-http-parser`
-* `--inspect-brk`
-* `--inspect-port`, `--debug-port`
-* `--inspect-publish-uid`
-* `--inspect-wait`
-* `--inspect`
-* `--localstorage-file`
-* `--max-http-header-size`
-* `--napi-modules`
-* `--network-family-autoselection-attempt-timeout`
-* `--no-addons`
-* `--no-deprecation`
-* `--no-experimental-fetch`
-* `--no-experimental-global-customevent`
-* `--no-experimental-global-navigator`
-* `--no-experimental-global-webcrypto`
-* `--no-experimental-repl-await`
-* `--no-experimental-sqlite`
-* `--no-experimental-websocket`
-* `--no-extra-info-on-fatal-exception`
-* `--no-force-async-hooks-checks`
-* `--no-global-search-paths`
-* `--no-network-family-autoselection`
-* `--no-warnings`
-* `--node-memory-debug`
-* `--openssl-config`
-* `--openssl-legacy-provider`
-* `--openssl-shared-config`
-* `--pending-deprecation`
-* `--permission`
-* `--preserve-symlinks-main`
-* `--preserve-symlinks`
-* `--prof-process`
-* `--redirect-warnings`
-* `--report-compact`
-* `--report-dir`, `--report-directory`
-* `--report-exclude-env`
-* `--report-exclude-network`
-* `--report-filename`
-* `--report-on-fatalerror`
-* `--report-on-signal`
-* `--report-signal`
-* `--report-uncaught-exception`
-* `--require`, `-r`
-* `--secure-heap-min`
-* `--secure-heap`
-* `--snapshot-blob`
-* `--test-coverage-branches`
-* `--test-coverage-exclude`
-* `--test-coverage-functions`
-* `--test-coverage-include`
-* `--test-coverage-lines`
-* `--test-name-pattern`
-* `--test-only`
-* `--test-reporter-destination`
-* `--test-reporter`
-* `--test-shard`
-* `--test-skip-pattern`
-* `--throw-deprecation`
-* `--title`
-* `--tls-cipher-list`
-* `--tls-keylog`
-* `--tls-max-v1.2`
-* `--tls-max-v1.3`
-* `--tls-min-v1.0`
-* `--tls-min-v1.1`
-* `--tls-min-v1.2`
-* `--tls-min-v1.3`
-* `--trace-atomics-wait`
-* `--trace-deprecation`
-* `--trace-env-js-stack`
-* `--trace-env-native-stack`
-* `--trace-env`
-* `--trace-event-categories`
-* `--trace-event-file-pattern`
-* `--trace-events-enabled`
-* `--trace-exit`
-* `--trace-require-module`
-* `--trace-sigint`
-* `--trace-sync-io`
-* `--trace-tls`
-* `--trace-uncaught`
-* `--trace-warnings`
-* `--track-heap-objects`
-* `--unhandled-rejections`
-* `--use-bundled-ca`
-* `--use-largepages`
-* `--use-openssl-ca`
-* `--v8-pool-size`
-* `--watch-path`
-* `--watch-preserve-output`
-* `--watch`
-* `--zero-fill-buffers`
+- `--allow-addons`
+- `--allow-child-process`
+- `--allow-fs-read`
+- `--allow-fs-write`
+- `--allow-wasi`
+- `--allow-worker`
+- `--conditions`, `-C`
+- `--diagnostic-dir`
+- `--disable-proto`
+- `--disable-sigusr1`
+- `--disable-warning`
+- `--disable-wasm-trap-handler`
+- `--dns-result-order`
+- `--enable-fips`
+- `--enable-network-family-autoselection`
+- `--enable-source-maps`
+- `--entry-url`
+- `--experimental-abortcontroller`
+- `--experimental-async-context-frame`
+- `--experimental-default-type`
+- `--experimental-detect-module`
+- `--experimental-eventsource`
+- `--experimental-import-meta-resolve`
+- `--experimental-json-modules`
+- `--experimental-loader`
+- `--experimental-modules`
+- `--experimental-permission`
+- `--experimental-print-required-tla`
+- `--experimental-require-module`
+- `--experimental-shadow-realm`
+- `--experimental-specifier-resolution`
+- `--experimental-strip-types`
+- `--experimental-top-level-await`
+- `--experimental-transform-types`
+- `--experimental-vm-modules`
+- `--experimental-wasi-unstable-preview1`
+- `--experimental-wasm-modules`
+- `--experimental-webstorage`
+- `--force-context-aware`
+- `--force-fips`
+- `--force-node-api-uncaught-exceptions-policy`
+- `--frozen-intrinsics`
+- `--heap-prof-dir`
+- `--heap-prof-interval`
+- `--heap-prof-name`
+- `--heap-prof`
+- `--heapsnapshot-near-heap-limit`
+- `--heapsnapshot-signal`
+- `--http-parser`
+- `--icu-data-dir`
+- `--import`
+- `--input-type`
+- `--insecure-http-parser`
+- `--inspect-brk`
+- `--inspect-port`, `--debug-port`
+- `--inspect-publish-uid`
+- `--inspect-wait`
+- `--inspect`
+- `--localstorage-file`
+- `--max-http-header-size`
+- `--napi-modules`
+- `--network-family-autoselection-attempt-timeout`
+- `--no-addons`
+- `--no-deprecation`
+- `--no-experimental-fetch`
+- `--no-experimental-global-customevent`
+- `--no-experimental-global-navigator`
+- `--no-experimental-global-webcrypto`
+- `--no-experimental-repl-await`
+- `--no-experimental-sqlite`
+- `--no-experimental-websocket`
+- `--no-extra-info-on-fatal-exception`
+- `--no-force-async-hooks-checks`
+- `--no-global-search-paths`
+- `--no-network-family-autoselection`
+- `--no-warnings`
+- `--node-memory-debug`
+- `--openssl-config`
+- `--openssl-legacy-provider`
+- `--openssl-shared-config`
+- `--pending-deprecation`
+- `--permission`
+- `--preserve-symlinks-main`
+- `--preserve-symlinks`
+- `--prof-process`
+- `--redirect-warnings`
+- `--report-compact`
+- `--report-dir`, `--report-directory`
+- `--report-exclude-env`
+- `--report-exclude-network`
+- `--report-filename`
+- `--report-on-fatalerror`
+- `--report-on-signal`
+- `--report-signal`
+- `--report-uncaught-exception`
+- `--require`, `-r`
+- `--secure-heap-min`
+- `--secure-heap`
+- `--snapshot-blob`
+- `--test-coverage-branches`
+- `--test-coverage-exclude`
+- `--test-coverage-functions`
+- `--test-coverage-include`
+- `--test-coverage-lines`
+- `--test-name-pattern`
+- `--test-only`
+- `--test-reporter-destination`
+- `--test-reporter`
+- `--test-shard`
+- `--test-skip-pattern`
+- `--throw-deprecation`
+- `--title`
+- `--tls-cipher-list`
+- `--tls-keylog`
+- `--tls-max-v1.2`
+- `--tls-max-v1.3`
+- `--tls-min-v1.0`
+- `--tls-min-v1.1`
+- `--tls-min-v1.2`
+- `--tls-min-v1.3`
+- `--trace-deprecation`
+- `--trace-env-js-stack`
+- `--trace-env-native-stack`
+- `--trace-env`
+- `--trace-event-categories`
+- `--trace-event-file-pattern`
+- `--trace-events-enabled`
+- `--trace-exit`
+- `--trace-require-module`
+- `--trace-sigint`
+- `--trace-sync-io`
+- `--trace-tls`
+- `--trace-uncaught`
+- `--trace-warnings`
+- `--track-heap-objects`
+- `--unhandled-rejections`
+- `--use-bundled-ca`
+- `--use-largepages`
+- `--use-openssl-ca`
+- `--v8-pool-size`
+- `--watch-path`
+- `--watch-preserve-output`
+- `--watch`
+- `--zero-fill-buffers`
<!-- node-options-node end -->
@@ -3266,19 +3235,19 @@ V8 options that are allowed are:
<!-- node-options-v8 start -->
-* `--abort-on-uncaught-exception`
-* `--disallow-code-generation-from-strings`
-* `--enable-etw-stack-walking`
-* `--expose-gc`
-* `--interpreted-frames-native-stack`
-* `--jitless`
-* `--max-old-space-size`
-* `--max-semi-space-size`
-* `--perf-basic-prof-only-functions`
-* `--perf-basic-prof`
-* `--perf-prof-unwinding-info`
-* `--perf-prof`
-* `--stack-trace-limit`
+- `--abort-on-uncaught-exception`
+- `--disallow-code-generation-from-strings`
+- `--enable-etw-stack-walking`
+- `--expose-gc`
+- `--interpreted-frames-native-stack`
+- `--jitless`
+- `--max-old-space-size`
+- `--max-semi-space-size`
+- `--perf-basic-prof-only-functions`
+- `--perf-basic-prof`
+- `--perf-prof-unwinding-info`
+- `--perf-prof`
+- `--stack-trace-limit`
<!-- node-options-v8 end -->
@@ -3446,23 +3415,12 @@ and the line lengths of the source file (in the key `lineLengths`).
"url": "./path-to-map.json",
"data": {
"version": 3,
- "sources": [
- "file:///absolute/path/to/original.js"
- ],
- "names": [
- "Foo",
- "console",
- "info"
- ],
+ "sources": ["file:///absolute/path/to/original.js"],
+ "names": ["Foo", "console", "info"],
"mappings": "MAAMA,IACJC,YAAaC",
"sourceRoot": "./"
},
- "lineLengths": [
- 13,
- 62,
- 38,
- 27
- ]
+ "lineLengths": [13, 62, 38, 27]
}
}
}
@@ -3470,7 +3428,7 @@ and the line lengths of the source file (in the key `lineLengths`).
### `NO_COLOR=<any>`
-[`NO_COLOR`][] is an alias for `NODE_DISABLE_COLORS`. The value of the
+[`NO_COLOR`][] is an alias for `NODE_DISABLE_COLORS`. The value of the
environment variable is arbitrary.
### `OPENSSL_CONF=file`
@@ -3552,12 +3510,12 @@ Asynchronous system APIs are used by Node.js whenever possible, but where they
do not exist, libuv's threadpool is used to create asynchronous node APIs based
on synchronous system APIs. Node.js APIs that use the threadpool are:
-* all `fs` APIs, other than the file watcher APIs and those that are explicitly
+- all `fs` APIs, other than the file watcher APIs and those that are explicitly
synchronous
-* asynchronous crypto APIs such as `crypto.pbkdf2()`, `crypto.scrypt()`,
+- asynchronous crypto APIs such as `crypto.pbkdf2()`, `crypto.scrypt()`,
`crypto.randomBytes()`, `crypto.randomFill()`, `crypto.generateKeyPair()`
-* `dns.lookup()`
-* all `zlib` APIs, other than those that are explicitly synchronous
+- `dns.lookup()`
+- all `zlib` APIs, other than those that are explicitly synchronous
Because libuv's threadpool has a fixed size, it means that if for whatever
reason any of these APIs takes a long time, other (seemingly unrelated) APIs
@@ -3723,7 +3681,6 @@ node --stack-trace-limit=12 -p -e "Error.stackTraceLimit" # prints 12
[`--redirect-warnings`]: #--redirect-warningsfile
[`--require`]: #-r---require-module
[`AsyncLocalStorage`]: async_context.md#class-asynclocalstorage
-[`Atomics.wait()`]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Atomics/wait
[`Buffer`]: buffer.md#class-buffer
[`CRYPTO_secure_malloc_init`]: https://www.openssl.org/docs/man3.0/man3/CRYPTO_secure_malloc_init.html
[`ERR_INVALID_TYPESCRIPT_SYNTAX`]: errors.md#err_invalid_typescript_syntax
@@ -3746,7 +3703,6 @@ node --stack-trace-limit=12 -p -e "Error.stackTraceLimit" # prints 12
[`tls.DEFAULT_MIN_VERSION`]: tls.md#tlsdefault_min_version
[`unhandledRejection`]: process.md#event-unhandledrejection
[`v8.startupSnapshot` API]: v8.md#startup-snapshot-api
-[`worker_threads.threadId`]: worker_threads.md#workerthreadid
[collecting code coverage from tests]: test.md#collecting-code-coverage
[conditional exports]: packages.md#conditional-exports
[context-aware]: addons.md#context-aware-addons
diff --git a/doc/api/deprecations.md b/doc/api/deprecations.md
index 0df7dce60058d518c9607094344461b60e540e60..f5f8ac77c848edf62b0a82f0644f61077a02aedd 100644
--- a/doc/api/deprecations.md
+++ b/doc/api/deprecations.md
@@ -3313,6 +3313,9 @@ Values other than `undefined`, `null`, integer numbers, and integer strings
<!-- YAML
changes:
+ - version: REPLACEME
+ pr-url: https://github.com/nodejs/node/pull/52747
+ description: End-of-Life.
- version: v22.0.0
pr-url: https://github.com/nodejs/node/pull/51179
description: Runtime deprecation.
@@ -3323,9 +3326,9 @@ changes:
description: Documentation-only deprecation.
-->
-Type: Runtime
+Type: End-of-Life
-The [`--trace-atomics-wait`][] flag is deprecated because
+The `--trace-atomics-wait` flag has been removed because
it uses the V8 hook `SetAtomicsWaitCallback`,
that will be removed in a future V8 release.
@@ -3737,7 +3740,6 @@ deprecated, as their values are guaranteed to be identical to that of `process.f
[`--force-node-api-uncaught-exceptions-policy`]: cli.md#--force-node-api-uncaught-exceptions-policy
[`--pending-deprecation`]: cli.md#--pending-deprecation
[`--throw-deprecation`]: cli.md#--throw-deprecation
-[`--trace-atomics-wait`]: cli.md#--trace-atomics-wait
[`--unhandled-rejections`]: cli.md#--unhandled-rejectionsmode
[`Buffer.allocUnsafeSlow(size)`]: buffer.md#static-method-bufferallocunsafeslowsize
[`Buffer.from(array)`]: buffer.md#static-method-bufferfromarray
diff --git a/doc/node.1 b/doc/node.1
index 9f534746ef9d9c1c1ee2edd6c195573a2e228600..e01fc511a1034518c0fb9bc5fa925524aecad927 100644
--- a/doc/node.1
+++ b/doc/node.1
@@ -533,11 +533,6 @@ but the option is supported for compatibility with older Node.js versions.
Set default minVersion to 'TLSv1.3'. Use to disable support for TLSv1.2 in
favour of TLSv1.3, which is more secure.
.
-.It Fl -trace-atomics-wait
-Print short summaries of calls to
-.Sy Atomics.wait() .
-.
-This flag is deprecated.
.It Fl -trace-deprecation
Print stack traces for deprecations.
.
diff --git a/src/node.cc b/src/node.cc
index 0ed78ab6b52906e980eebf1f625a1c7cbfc8097b..2ff08a9cb6124316049a91bda70cf6985045286a 100644
--- a/src/node.cc
+++ b/src/node.cc
@@ -226,44 +226,6 @@ void Environment::WaitForInspectorFrontendByOptions() {
}
#endif // HAVE_INSPECTOR
-#define ATOMIC_WAIT_EVENTS(V) \
- V(kStartWait, "started") \
- V(kWokenUp, "was woken up by another thread") \
- V(kTimedOut, "timed out") \
- V(kTerminatedExecution, "was stopped by terminated execution") \
- V(kAPIStopped, "was stopped through the embedder API") \
- V(kNotEqual, "did not wait because the values mismatched") \
-
-static void AtomicsWaitCallback(Isolate::AtomicsWaitEvent event,
- Local<v8::SharedArrayBuffer> array_buffer,
- size_t offset_in_bytes, int64_t value,
- double timeout_in_ms,
- Isolate::AtomicsWaitWakeHandle* stop_handle,
- void* data) {
- Environment* env = static_cast<Environment*>(data);
-
- const char* message = "(unknown event)";
- switch (event) {
-#define V(key, msg) \
- case Isolate::AtomicsWaitEvent::key: \
- message = msg; \
- break;
- ATOMIC_WAIT_EVENTS(V)
-#undef V
- }
-
- fprintf(stderr,
- "(node:%d) [Thread %" PRIu64 "] Atomics.wait(%p + %zx, %" PRId64
- ", %.f) %s\n",
- static_cast<int>(uv_os_getpid()),
- env->thread_id(),
- array_buffer->Data(),
- offset_in_bytes,
- value,
- timeout_in_ms,
- message);
-}
-
void Environment::InitializeDiagnostics() {
isolate_->GetHeapProfiler()->AddBuildEmbedderGraphCallback(
Environment::BuildEmbedderGraph, this);
@@ -272,17 +234,6 @@ void Environment::InitializeDiagnostics() {
}
if (options_->trace_uncaught)
isolate_->SetCaptureStackTraceForUncaughtExceptions(true);
- if (options_->trace_atomics_wait) {
- ProcessEmitDeprecationWarning(
- Environment::GetCurrent(isolate_),
- "The flag --trace-atomics-wait is deprecated.",
- "DEP0165");
- isolate_->SetAtomicsWaitCallback(AtomicsWaitCallback, this);
- AddCleanupHook([](void* data) {
- Environment* env = static_cast<Environment*>(data);
- env->isolate()->SetAtomicsWaitCallback(nullptr, nullptr);
- }, this);
- }
if (options_->trace_promises) {
isolate_->SetPromiseHook(TracePromises);
}
diff --git a/src/node_options.cc b/src/node_options.cc
index 866f2a39a5e51a8bf434ccd54d76c685bcdd1502..2bedaa88582c369a4a420ff20a5204af96feb52e 100644
--- a/src/node_options.cc
+++ b/src/node_options.cc
@@ -758,10 +758,6 @@ EnvironmentOptionsParser::EnvironmentOptionsParser() {
"throw an exception on deprecations",
&EnvironmentOptions::throw_deprecation,
kAllowedInEnvvar);
- AddOption("--trace-atomics-wait",
- "(deprecated) trace Atomics.wait() operations",
- &EnvironmentOptions::trace_atomics_wait,
- kAllowedInEnvvar);
AddOption("--trace-deprecation",
"show stack traces on deprecations",
&EnvironmentOptions::trace_deprecation,
diff --git a/src/node_options.h b/src/node_options.h
index 41dd04f5e2b1cd54c32df70830389d44d7b39aa2..b10287d3eadc49b44e2e3fb8150a48be6866b0b4 100644
--- a/src/node_options.h
+++ b/src/node_options.h
@@ -203,7 +203,6 @@ class EnvironmentOptions : public Options {
std::vector<std::string> coverage_include_pattern;
std::vector<std::string> coverage_exclude_pattern;
bool throw_deprecation = false;
- bool trace_atomics_wait = false;
bool trace_deprecation = false;
bool trace_exit = false;
bool trace_sync_io = false;
diff --git a/test/parallel/test-trace-atomic-deprecation.js b/test/parallel/test-trace-atomic-deprecation.js
deleted file mode 100644
index 8aeddb28e938d23e646d882cfe24b2e2311f9ab2..0000000000000000000000000000000000000000
--- a/test/parallel/test-trace-atomic-deprecation.js
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-const common = require('../common');
-const assert = require('node:assert');
-const { test } = require('node:test');
-
-test('should emit deprecation warning DEP0165', async () => {
- const { code, stdout, stderr } = await common.spawnPromisified(
- process.execPath, ['--trace-atomics-wait', '-e', '{}']
- );
- assert.match(stderr, /\[DEP0165\] DeprecationWarning:/);
- assert.strictEqual(stdout, '');
- assert.strictEqual(code, 0);
-});
diff --git a/test/parallel/test-trace-atomics-wait.js b/test/parallel/test-trace-atomics-wait.js
deleted file mode 100644
index 6449a2be2b47e0758090dc13d136877b1874c635..0000000000000000000000000000000000000000
--- a/test/parallel/test-trace-atomics-wait.js
+++ /dev/null
@@ -1,101 +0,0 @@
-'use strict';
-require('../common');
-const assert = require('assert');
-const child_process = require('child_process');
-const { Worker } = require('worker_threads');
-
-if (process.argv[2] === 'child') {
- const i32arr = new Int32Array(new SharedArrayBuffer(8));
- assert.strictEqual(Atomics.wait(i32arr, 0, 1), 'not-equal');
- assert.strictEqual(Atomics.wait(i32arr, 0, 0, 10), 'timed-out');
-
- new Worker(`
- const i32arr = require('worker_threads').workerData;
- Atomics.store(i32arr, 1, -1);
- Atomics.notify(i32arr, 1);
- Atomics.wait(i32arr, 1, -1);
- `, { eval: true, workerData: i32arr });
-
- Atomics.wait(i32arr, 1, 0);
- assert.strictEqual(Atomics.load(i32arr, 1), -1);
- Atomics.store(i32arr, 1, 0);
- Atomics.notify(i32arr, 1);
- return;
-}
-
-const proc = child_process.spawnSync(
- process.execPath,
- [ '--disable-warning=DEP0165', '--trace-atomics-wait', __filename, 'child' ],
- { encoding: 'utf8', stdio: [ 'inherit', 'inherit', 'pipe' ] });
-
-if (proc.status !== 0) console.log(proc);
-assert.strictEqual(proc.status, 0);
-
-const SABAddress = proc.stderr.match(/Atomics\.wait\((?<SAB>.+) \+/).groups.SAB;
-const actualTimeline = proc.stderr
- .replace(new RegExp(SABAddress, 'g'), '<address>')
- .replace(new RegExp(`\\(node:${proc.pid}\\) `, 'g'), '')
- .replace(/\binf(inity)?\b/gi, 'inf')
- .replace(/\r/g, '')
- .trim();
-console.log('+++ normalized stdout +++');
-console.log(actualTimeline);
-console.log('--- normalized stdout ---');
-
-const begin =
-`[Thread 0] Atomics.wait(<address> + 0, 1, inf) started
-[Thread 0] Atomics.wait(<address> + 0, 1, inf) did not wait because the \
-values mismatched
-[Thread 0] Atomics.wait(<address> + 0, 0, 10) started
-[Thread 0] Atomics.wait(<address> + 0, 0, 10) timed out`;
-
-const expectedTimelines = [
- `${begin}
-[Thread 0] Atomics.wait(<address> + 4, 0, inf) started
-[Thread 1] Atomics.wait(<address> + 4, -1, inf) started
-[Thread 0] Atomics.wait(<address> + 4, 0, inf) was woken up by another thread
-[Thread 1] Atomics.wait(<address> + 4, -1, inf) was woken up by another thread`,
- `${begin}
-[Thread 1] Atomics.wait(<address> + 4, 0, inf) started
-[Thread 0] Atomics.wait(<address> + 4, -1, inf) started
-[Thread 0] Atomics.wait(<address> + 4, 0, inf) was woken up by another thread
-[Thread 1] Atomics.wait(<address> + 4, -1, inf) was woken up by another thread`,
- `${begin}
-[Thread 0] Atomics.wait(<address> + 4, 0, inf) started
-[Thread 0] Atomics.wait(<address> + 4, 0, inf) was woken up by another thread
-[Thread 1] Atomics.wait(<address> + 4, -1, inf) started
-[Thread 1] Atomics.wait(<address> + 4, -1, inf) was woken up by another thread`,
- `${begin}
-[Thread 0] Atomics.wait(<address> + 4, 0, inf) started
-[Thread 0] Atomics.wait(<address> + 4, 0, inf) was woken up by another thread
-[Thread 1] Atomics.wait(<address> + 4, -1, inf) started
-[Thread 1] Atomics.wait(<address> + 4, -1, inf) did not wait because the \
-values mismatched`,
- `${begin}
-[Thread 0] Atomics.wait(<address> + 4, 0, inf) started
-[Thread 1] Atomics.wait(<address> + 4, -1, inf) started
-[Thread 0] Atomics.wait(<address> + 4, 0, inf) was woken up by another thread
-[Thread 1] Atomics.wait(<address> + 4, -1, inf) did not wait because the \
-values mismatched`,
- `${begin}
-[Thread 1] Atomics.wait(<address> + 4, 0, inf) started
-[Thread 0] Atomics.wait(<address> + 4, -1, inf) started
-[Thread 0] Atomics.wait(<address> + 4, 0, inf) was woken up by another thread
-[Thread 1] Atomics.wait(<address> + 4, -1, inf) did not wait because the \
-values mismatched`,
- `${begin}
-[Thread 0] Atomics.wait(<address> + 4, 0, inf) started
-[Thread 0] Atomics.wait(<address> + 4, 0, inf) did not wait because the \
-values mismatched
-[Thread 1] Atomics.wait(<address> + 4, -1, inf) started
-[Thread 1] Atomics.wait(<address> + 4, -1, inf) did not wait because the \
-values mismatched`,
- `${begin}
-[Thread 1] Atomics.wait(<address> + 4, -1, inf) started
-[Thread 0] Atomics.wait(<address> + 4, 0, inf) started
-[Thread 0] Atomics.wait(<address> + 4, 0, inf) did not wait because the \
-values mismatched
-[Thread 1] Atomics.wait(<address> + 4, -1, inf) was woken up by another thread`,
-];
-
-assert(expectedTimelines.includes(actualTimeline));

View file

@ -0,0 +1,26 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Samuel Maddock <smaddock@slack-corp.com>
Date: Thu, 27 Mar 2025 17:00:11 -0400
Subject: fix: cppgc initializing twice
Refs https://chromium-review.googlesource.com/c/v8/v8/+/6333562
cppgc will now be initialized as part of V8::Initialize. For now, skip
initialization if it's already been initialized.
This can be removed/refactored once Node.js upgrades to a version of V8
containing the above CL.
diff --git a/src/node.cc b/src/node.cc
index 2ff08a9cb6124316049a91bda70cf6985045286a..5de93329cbd40a2ca314d602b123092ed15741c5 100644
--- a/src/node.cc
+++ b/src/node.cc
@@ -1173,7 +1173,7 @@ InitializeOncePerProcessInternal(const std::vector<std::string>& args,
result->platform_ = per_process::v8_platform.Platform();
}
- if (!(flags & ProcessInitializationFlags::kNoInitializeCppgc)) {
+ if (!(flags & ProcessInitializationFlags::kNoInitializeCppgc) && !cppgc::IsInitialized()) {
v8::PageAllocator* allocator = nullptr;
if (result->platform_ != nullptr) {
allocator = result->platform_->GetPageAllocator();

View file

@ -0,0 +1,68 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Calvin Watford <cwatford@slack-corp.com>
Date: Thu, 3 Apr 2025 10:59:30 -0600
Subject: Fix task starvation in inspector context test
A V8 change makes these contexts get collected in a task that is posted
and run asynchronously. The tests were synchronously GC'ing in an
infinite loop, preventing the task loop from running the task that would
GC these contexts.
This change should be upstreamed in some way.
Ref: https://chromium-review.googlesource.com/c/v8/v8/+/4733273
diff --git a/test/parallel/test-inspector-contexts.js b/test/parallel/test-inspector-contexts.js
index e7bdc53f8cd5763572798cbd9ef07c902e3fc335..8b7a1f1aaf648efe10761af205ac561952a06980 100644
--- a/test/parallel/test-inspector-contexts.js
+++ b/test/parallel/test-inspector-contexts.js
@@ -17,6 +17,13 @@ function notificationPromise(method) {
return new Promise((resolve) => session.once(method, resolve));
}
+function gcImmediate() {
+ return new Promise((resolve) => {
+ global.gc();
+ setImmediate(resolve);
+ });
+}
+
async function testContextCreatedAndDestroyed() {
console.log('Testing context created/destroyed notifications');
{
@@ -68,7 +75,7 @@ async function testContextCreatedAndDestroyed() {
// GC is unpredictable...
console.log('Checking/waiting for GC.');
while (!contextDestroyed)
- global.gc();
+ await gcImmediate();
console.log('Context destroyed.');
assert.strictEqual(contextDestroyed.params.executionContextId, id,
@@ -100,7 +107,7 @@ async function testContextCreatedAndDestroyed() {
// GC is unpredictable...
console.log('Checking/waiting for GC again.');
while (!contextDestroyed)
- global.gc();
+ await gcImmediate();
console.log('Other context destroyed.');
}
@@ -126,7 +133,7 @@ async function testContextCreatedAndDestroyed() {
// GC is unpredictable...
console.log('Checking/waiting for GC a third time.');
while (!contextDestroyed)
- global.gc();
+ await gcImmediate();
console.log('Context destroyed once again.');
}
@@ -150,7 +157,7 @@ async function testContextCreatedAndDestroyed() {
// GC is unpredictable...
console.log('Checking/waiting for GC a fourth time.');
while (!contextDestroyed)
- global.gc();
+ await gcImmediate();
console.log('Context destroyed a fourth time.');
}
}

View file

@ -46,7 +46,7 @@ index 3e57ae8efe33f326ef0e5d609c311d4be5b8afd6..dc521d39c2280dfc3217e97c1e413b2b
V8_INLINE static void* GetAlignedPointerFromInternalField( V8_INLINE static void* GetAlignedPointerFromInternalField(
const BasicTracedReference<Object>& object, int index) { const BasicTracedReference<Object>& object, int index) {
diff --git a/src/api/api.cc b/src/api/api.cc diff --git a/src/api/api.cc b/src/api/api.cc
index c1ba8bb806927ec63af004a620768d736b122c4f..f4ed96bf45183c8a7453ebac994904c2ea7d9707 100644 index 545c1093ee7544da3878637e11c557e3964b8835..f80a7af94a9f2459a96976543f6117fb41f1aabb 100644
--- a/src/api/api.cc --- a/src/api/api.cc
+++ b/src/api/api.cc +++ b/src/api/api.cc
@@ -6324,14 +6324,33 @@ Local<Data> v8::Object::SlowGetInternalField(int index) { @@ -6324,14 +6324,33 @@ Local<Data> v8::Object::SlowGetInternalField(int index) {

View file

@ -131,7 +131,10 @@ async function main () {
'nannew-test.js', 'nannew-test.js',
'buffer-test.js', 'buffer-test.js',
// we can't patch this test because it uses CRLF line endings // we can't patch this test because it uses CRLF line endings
'methodswithdata-test.js' 'methodswithdata-test.js',
// these two are incompatible with crrev.com/c/4733273
'weak-test.js',
'weak2-test.js'
]); ]);
const testsToRun = fs.readdirSync(path.resolve(NAN_DIR, 'test', 'js')) const testsToRun = fs.readdirSync(path.resolve(NAN_DIR, 'test', 'js'))
.filter(test => !DISABLED_TESTS.has(test)) .filter(test => !DISABLED_TESTS.has(test))

View file

@ -455,8 +455,7 @@ ElectronMainDelegate::CreateContentUtilityClient() {
return utility_client_.get(); return utility_client_.get();
} }
absl::variant<int, content::MainFunctionParams> std::variant<int, content::MainFunctionParams> ElectronMainDelegate::RunProcess(
ElectronMainDelegate::RunProcess(
const std::string& process_type, const std::string& process_type,
content::MainFunctionParams main_function_params) { content::MainFunctionParams main_function_params) {
if (process_type == kRelauncherProcess) if (process_type == kRelauncherProcess)
@ -466,7 +465,7 @@ ElectronMainDelegate::RunProcess(
} }
bool ElectronMainDelegate::ShouldCreateFeatureList(InvokedIn invoked_in) { bool ElectronMainDelegate::ShouldCreateFeatureList(InvokedIn invoked_in) {
return absl::holds_alternative<InvokedInChildProcess>(invoked_in); return std::holds_alternative<InvokedInChildProcess>(invoked_in);
} }
bool ElectronMainDelegate::ShouldInitializeMojo(InvokedIn invoked_in) { bool ElectronMainDelegate::ShouldInitializeMojo(InvokedIn invoked_in) {

View file

@ -52,7 +52,7 @@ class ElectronMainDelegate : public content::ContentMainDelegate {
content::ContentGpuClient* CreateContentGpuClient() override; content::ContentGpuClient* CreateContentGpuClient() override;
content::ContentRendererClient* CreateContentRendererClient() override; content::ContentRendererClient* CreateContentRendererClient() override;
content::ContentUtilityClient* CreateContentUtilityClient() override; content::ContentUtilityClient* CreateContentUtilityClient() override;
absl::variant<int, content::MainFunctionParams> RunProcess( std::variant<int, content::MainFunctionParams> RunProcess(
const std::string& process_type, const std::string& process_type,
content::MainFunctionParams main_function_params) override; content::MainFunctionParams main_function_params) override;
bool ShouldCreateFeatureList(InvokedIn invoked_in) override; bool ShouldCreateFeatureList(InvokedIn invoked_in) override;

View file

@ -1155,7 +1155,7 @@ void App::DisableDomainBlockingFor3DAPIs(gin_helper::ErrorThrower thrower) {
bool App::IsAccessibilitySupportEnabled() { bool App::IsAccessibilitySupportEnabled() {
auto* ax_state = content::BrowserAccessibilityState::GetInstance(); auto* ax_state = content::BrowserAccessibilityState::GetInstance();
return ax_state->IsAccessibleBrowser(); return ax_state->GetAccessibilityMode() == ui::kAXModeComplete;
} }
void App::SetAccessibilitySupportEnabled(gin_helper::ErrorThrower thrower, void App::SetAccessibilitySupportEnabled(gin_helper::ErrorThrower thrower,
@ -1169,9 +1169,9 @@ void App::SetAccessibilitySupportEnabled(gin_helper::ErrorThrower thrower,
auto* ax_state = content::BrowserAccessibilityState::GetInstance(); auto* ax_state = content::BrowserAccessibilityState::GetInstance();
if (enabled) { if (enabled) {
ax_state->OnScreenReaderDetected(); ax_state->EnableProcessAccessibility();
} else { } else {
ax_state->DisableAccessibility(); ax_state->DisableProcessAccessibility();
} }
Browser::Get()->OnAccessibilitySupportChanged(); Browser::Get()->OnAccessibilitySupportChanged();
} }
@ -1629,6 +1629,8 @@ void ConfigureHostResolver(v8::Isolate* isolate,
bool enable_built_in_resolver = bool enable_built_in_resolver =
base::FeatureList::IsEnabled(net::features::kAsyncDns); base::FeatureList::IsEnabled(net::features::kAsyncDns);
bool enable_happy_eyeballs_v3 =
base::FeatureList::IsEnabled(net::features::kHappyEyeballsV3);
bool additional_dns_query_types_enabled = true; bool additional_dns_query_types_enabled = true;
if (opts.Has("enableBuiltInResolver") && if (opts.Has("enableBuiltInResolver") &&
@ -1637,6 +1639,12 @@ void ConfigureHostResolver(v8::Isolate* isolate,
return; return;
} }
if (opts.Has("enableHappyEyeballs") &&
!opts.Get("enableHappyEyeballs", &enable_happy_eyeballs_v3)) {
thrower.ThrowTypeError("enableHappyEyeballs must be a boolean");
return;
}
if (opts.Has("secureDnsMode") && if (opts.Has("secureDnsMode") &&
!opts.Get("secureDnsMode", &secure_dns_mode)) { !opts.Get("secureDnsMode", &secure_dns_mode)) {
thrower.ThrowTypeError( thrower.ThrowTypeError(
@ -1677,8 +1685,8 @@ void ConfigureHostResolver(v8::Isolate* isolate,
// Configure the stub resolver. This must be done after the system // Configure the stub resolver. This must be done after the system
// NetworkContext is created, but before anything has the chance to use it. // NetworkContext is created, but before anything has the chance to use it.
content::GetNetworkService()->ConfigureStubHostResolver( content::GetNetworkService()->ConfigureStubHostResolver(
enable_built_in_resolver, secure_dns_mode, doh_config, enable_built_in_resolver, enable_happy_eyeballs_v3, secure_dns_mode,
additional_dns_query_types_enabled); doh_config, additional_dns_query_types_enabled);
} }
// static // static

View file

@ -250,7 +250,10 @@ const std::string InclusionStatusToString(net::CookieInclusionStatus status) {
{Reason::EXCLUDE_THIRD_PARTY_PHASEOUT, {Reason::EXCLUDE_THIRD_PARTY_PHASEOUT,
"The cookie is blocked for third-party cookie phaseout."}, "The cookie is blocked for third-party cookie phaseout."},
{Reason::EXCLUDE_NO_COOKIE_CONTENT, {Reason::EXCLUDE_NO_COOKIE_CONTENT,
"The cookie contains no content or only whitespace."}}); "The cookie contains no content or only whitespace."},
{Reason::EXCLUDE_ANONYMOUS_CONTEXT,
"The cookie is unpartitioned and being accessed from an anonymous "
"context."}});
static_assert( static_assert(
Reasons.size() == Reasons.size() ==
net::CookieInclusionStatus::ExclusionReasonBitset::kValueCount, net::CookieInclusionStatus::ExclusionReasonBitset::kValueCount,

View file

@ -470,7 +470,9 @@ ExtensionFunction::ResponseAction ScriptingExecuteScriptFunction::Run() {
constexpr bool kRequiresLocalization = false; constexpr bool kRequiresLocalization = false;
std::string error; std::string error;
if (!CheckAndLoadFiles( if (!CheckAndLoadFiles(
std::move(*injection_.files), *extension(), kRequiresLocalization, std::move(*injection_.files),
script_parsing::ContentScriptType::kJs, *extension(),
kRequiresLocalization,
base::BindOnce(&ScriptingExecuteScriptFunction::DidLoadResources, base::BindOnce(&ScriptingExecuteScriptFunction::DidLoadResources,
this), this),
&error)) { &error)) {
@ -609,7 +611,9 @@ ExtensionFunction::ResponseAction ScriptingInsertCSSFunction::Run() {
constexpr bool kRequiresLocalization = true; constexpr bool kRequiresLocalization = true;
std::string error; std::string error;
if (!CheckAndLoadFiles( if (!CheckAndLoadFiles(
std::move(*injection_.files), *extension(), kRequiresLocalization, std::move(*injection_.files),
script_parsing::ContentScriptType::kCss, *extension(),
kRequiresLocalization,
base::BindOnce(&ScriptingInsertCSSFunction::DidLoadResources, this), base::BindOnce(&ScriptingInsertCSSFunction::DidLoadResources, this),
&error)) { &error)) {
return RespondNow(Error(std::move(error))); return RespondNow(Error(std::move(error)));
@ -723,8 +727,9 @@ ExtensionFunction::ResponseAction ScriptingRemoveCSSFunction::Run() {
if (injection.files) { if (injection.files) {
std::vector<ExtensionResource> resources; std::vector<ExtensionResource> resources;
if (!scripting::GetFileResources(*injection.files, *extension(), &resources, if (!scripting::GetFileResources(*injection.files,
&error)) { script_parsing::ContentScriptType::kCss,
*extension(), &resources, &error)) {
return RespondNow(Error(std::move(error))); return RespondNow(Error(std::move(error)));
} }

View file

@ -32,8 +32,9 @@ namespace electron {
namespace { namespace {
gin::IsolateHolder CreateIsolateHolder(v8::Isolate* isolate, std::unique_ptr<gin::IsolateHolder> CreateIsolateHolder(
size_t* max_young_generation_size) { v8::Isolate* isolate,
size_t* max_young_generation_size) {
std::unique_ptr<v8::Isolate::CreateParams> create_params = std::unique_ptr<v8::Isolate::CreateParams> create_params =
gin::IsolateHolder::getDefaultIsolateParams(); gin::IsolateHolder::getDefaultIsolateParams();
// The value is needed to adjust heap limit when capturing // The value is needed to adjust heap limit when capturing
@ -45,14 +46,12 @@ gin::IsolateHolder CreateIsolateHolder(v8::Isolate* isolate,
// This is necessary for important aspects of Node.js // This is necessary for important aspects of Node.js
// including heap and cpu profilers to function properly. // including heap and cpu profilers to function properly.
return {base::SingleThreadTaskRunner::GetCurrentDefault(), return std::make_unique<gin::IsolateHolder>(
gin::IsolateHolder::kSingleThread, base::SingleThreadTaskRunner::GetCurrentDefault(),
gin::IsolateHolder::IsolateType::kUtility, gin::IsolateHolder::kSingleThread,
std::move(create_params), gin::IsolateHolder::IsolateType::kUtility, std::move(create_params),
gin::IsolateHolder::IsolateCreationMode::kNormal, gin::IsolateHolder::IsolateCreationMode::kNormal, nullptr, nullptr,
nullptr, isolate);
nullptr,
isolate};
} }
} // namespace } // namespace
@ -62,8 +61,8 @@ JavascriptEnvironment::JavascriptEnvironment(uv_loop_t* event_loop,
: isolate_holder_{CreateIsolateHolder( : isolate_holder_{CreateIsolateHolder(
Initialize(event_loop, setup_wasm_streaming), Initialize(event_loop, setup_wasm_streaming),
&max_young_generation_size_)}, &max_young_generation_size_)},
isolate_{isolate_holder_.isolate()}, isolate_{isolate_holder_->isolate()},
locker_{isolate_} { locker_{std::make_unique<v8::Locker>(isolate_)} {
isolate_->Enter(); isolate_->Enter();
v8::HandleScope scope(isolate_); v8::HandleScope scope(isolate_);
@ -83,6 +82,12 @@ JavascriptEnvironment::~JavascriptEnvironment() {
isolate_->Exit(); isolate_->Exit();
g_isolate = nullptr; g_isolate = nullptr;
// Deinit gin::IsolateHolder prior to calling NodePlatform::UnregisterIsolate.
// Otherwise cppgc::internal::Sweeper::Start will try to request a task runner
// from the NodePlatform with an already unregistered isolate.
locker_.reset();
isolate_holder_.reset();
platform_->UnregisterIsolate(isolate_); platform_->UnregisterIsolate(isolate_);
} }
@ -139,7 +144,7 @@ v8::Isolate* JavascriptEnvironment::GetIsolate() {
void JavascriptEnvironment::CreateMicrotasksRunner() { void JavascriptEnvironment::CreateMicrotasksRunner() {
DCHECK(!microtasks_runner_); DCHECK(!microtasks_runner_);
microtasks_runner_ = std::make_unique<MicrotasksRunner>(isolate()); microtasks_runner_ = std::make_unique<MicrotasksRunner>(isolate());
isolate_holder_.WillCreateMicrotasksRunner(); isolate_holder_->WillCreateMicrotasksRunner();
base::CurrentThread::Get()->AddTaskObserver(microtasks_runner_.get()); base::CurrentThread::Get()->AddTaskObserver(microtasks_runner_.get());
} }
@ -148,7 +153,7 @@ void JavascriptEnvironment::DestroyMicrotasksRunner() {
// Should be called before running gin_helper::CleanedUpAtExit::DoCleanup. // Should be called before running gin_helper::CleanedUpAtExit::DoCleanup.
// This helps to signal wrappable finalizer callbacks to not act on freed // This helps to signal wrappable finalizer callbacks to not act on freed
// parameters. // parameters.
isolate_holder_.WillDestroyMicrotasksRunner(); isolate_holder_->WillDestroyMicrotasksRunner();
{ {
v8::HandleScope scope(isolate_); v8::HandleScope scope(isolate_);
gin_helper::CleanedUpAtExit::DoCleanup(); gin_helper::CleanedUpAtExit::DoCleanup();

View file

@ -47,13 +47,13 @@ class JavascriptEnvironment {
std::unique_ptr<node::MultiIsolatePlatform> platform_; std::unique_ptr<node::MultiIsolatePlatform> platform_;
size_t max_young_generation_size_ = 0; size_t max_young_generation_size_ = 0;
gin::IsolateHolder isolate_holder_; std::unique_ptr<gin::IsolateHolder> isolate_holder_;
// owned-by: isolate_holder_ // owned-by: isolate_holder_
const raw_ptr<v8::Isolate> isolate_; const raw_ptr<v8::Isolate> isolate_;
// depends-on: isolate_ // depends-on: isolate_
const v8::Locker locker_; std::unique_ptr<v8::Locker> locker_;
std::unique_ptr<MicrotasksRunner> microtasks_runner_; std::unique_ptr<MicrotasksRunner> microtasks_runner_;
}; };

View file

@ -193,7 +193,9 @@ inline void dispatch_sync_main(dispatch_block_t block) {
- (id)accessibilityAttributeValue:(NSString*)attribute { - (id)accessibilityAttributeValue:(NSString*)attribute {
if ([attribute isEqualToString:@"AXManualAccessibility"]) { if ([attribute isEqualToString:@"AXManualAccessibility"]) {
auto* ax_state = content::BrowserAccessibilityState::GetInstance(); auto* ax_state = content::BrowserAccessibilityState::GetInstance();
return [NSNumber numberWithBool:ax_state->IsAccessibleBrowser()]; bool is_accessible_browser =
ax_state->GetAccessibilityMode() == ui::kAXModeComplete;
return [NSNumber numberWithBool:is_accessible_browser];
} }
return [super accessibilityAttributeValue:attribute]; return [super accessibilityAttributeValue:attribute];
@ -209,9 +211,9 @@ inline void dispatch_sync_main(dispatch_block_t block) {
if ([attribute isEqualToString:@"AXEnhancedUserInterface"] || is_manual_ax) { if ([attribute isEqualToString:@"AXEnhancedUserInterface"] || is_manual_ax) {
auto* ax_state = content::BrowserAccessibilityState::GetInstance(); auto* ax_state = content::BrowserAccessibilityState::GetInstance();
if ([value boolValue]) { if ([value boolValue]) {
ax_state->OnScreenReaderDetected(); ax_state->EnableProcessAccessibility();
} else { } else {
ax_state->DisableAccessibility(); ax_state->DisableProcessAccessibility();
} }
electron::Browser::Get()->OnAccessibilitySupportChanged(); electron::Browser::Get()->OnAccessibilitySupportChanged();

View file

@ -58,7 +58,7 @@ class BrowserView;
} }
#if BUILDFLAG(IS_MAC) #if BUILDFLAG(IS_MAC)
typedef NSView* NativeWindowHandle; typedef gfx::NativeView NativeWindowHandle;
#else #else
typedef gfx::AcceleratedWidget NativeWindowHandle; typedef gfx::AcceleratedWidget NativeWindowHandle;
#endif #endif

Some files were not shown because too many files have changed in this diff Show more