chore: bump chromium to 134.0.6998.3 (35-x-y) (#45460)

* chore: bump chromium in DEPS to 134.0.6998.1

* chore: bump chromium in DEPS to 134.0.6998.5

* chore: bump chromium in DEPS to 134.0.6998.3

* chore: bump chromium to 134.0.6988.0 (main) (#45334)

* chore: bump chromium in DEPS to 134.0.6976.0

* chore: update mas_avoid_private_macos_api_usage.patch.patch
https://chromium-review.googlesource.com/c/chromium/src/+/6171046
process_info_mac.cc -> process_info_mac.mm

* chore: update build_do_not_depend_on_packed_resource_integrity.patch
https://chromium-review.googlesource.com/c/chromium/src/+/6196857

* chore: update feat_add_support_for_missing_dialog_features_to_shell_dialogs.patch
https://chromium-review.googlesource.com/c/chromium/src/+/6182296
https://chromium-review.googlesource.com/c/chromium/src/+/6183404
https://chromium-review.googlesource.com/c/chromium/src/+/6187853

A lot changed in the upstream implementation. There's a good chance I got
this wrong as threading has changed and moved some variables into globals.

* chore: remove build_remove_vr_directx_helpers_dependency.patch
https://chromium-review.googlesource.com/c/chromium/src/+/6186102
This landed upstream

* chore: e patches all

* chore: update net::CookieInclusionStatus::ExclusionReason enum
https://chromium-review.googlesource.com/c/chromium/src/+/6183252
https://chromium-review.googlesource.com/c/chromium/src/+/6185544

* chore: update content::WebAuthenticationDelegate import
https://chromium-review.googlesource.com/c/chromium/src/+/6189769

* Revert "chore: disable focus handling test due to win32/ia32 regression"

This reverts commit 1a57ba5d59848d0c841ddda59c9299a4f957452a.

* chore: bump chromium in DEPS to 134.0.6978.0

* chore: bump chromium in DEPS to 134.0.6980.0

* chore: bump chromium in DEPS to 134.0.6982.0

* chore: bump chromium in DEPS to 134.0.6984.0

* 6196281: Allow direct embedder IsPdfInternalPluginAllowedOrigin() interaction
https://chromium-review.googlesource.com/c/chromium/src/+/6196281

* 6196283: Delete PdfInternalPluginDelegate
https://chromium-review.googlesource.com/c/chromium/src/+/6196283

* chore: update patches

* chore: bump chromium in DEPS to 134.0.6986.0

* chore: update patches

* 6205762: Support option to use window.showSaveFilePicker() in PDF attachment code
https://chromium-review.googlesource.com/c/chromium/src/+/6205762

See also:
* https://issues.chromium.org/issues/373852607
* 5939153: [PDF] Add PdfUseShowSaveFilePicker feature flag | https://chromium-review.googlesource.com/c/chromium/src/+/5939153
* 6205761: Delete spurious Ink-specific code in pdf_viewer.ts | https://chromium-review.googlesource.com/c/chromium/src/+/6205761

* 6209609: Remove WebVector: Automatic changes
https://chromium-review.googlesource.com/c/chromium/src/+/6209609

* 6205488: UI: make QT5 optional
https://chromium-review.googlesource.com/c/chromium/src/+/6205488

* 6178281: Rename pak files from branding strings
https://chromium-review.googlesource.com/c/chromium/src/+/6178281

* fixup! 6209609: Remove WebVector: Automatic changes https://chromium-review.googlesource.com/c/chromium/src/+/6209609

* 6193249: Switch from safe_browsing::EventResult to enterprise_connectors:EventResult
https://chromium-review.googlesource.com/c/chromium/src/+/6193249

* 6197457: Remove Pause/ResumeReadingBodyFromNet IPCs
https://chromium-review.googlesource.com/c/chromium/src/+/6197457

* 6191230: Record total time spent on a picture in picture window
https://chromium-review.googlesource.com/c/chromium/src/+/6191230

* chore: bump chromium in DEPS to 134.0.6988.0

* chore: update patches

* 6215440: Remove base/ranges/.
https://chromium-review.googlesource.com/c/chromium/src/+/6215440

* Disable unsafe buffers error

Not sure what changed, but we're now seeing unsafe buffer errors in Chromium code, at least when using reclient. Will update this comment if we find out the cause.

* 6187853: SelectFileDialogLinuxPortal: Use dbus_xdg::Request and DbusType
https://chromium-review.googlesource.com/c/chromium/src/+/6187853

* fix `setDisplayMediaRequestHandler` test

Given how this test is written, I would expect this assertion to be false. It seems the oppositue was true before, but that was also acknowledged to be suprising. Seems that the underlying implementation is now fixed and works as expected.

* fixup! 6187853: SelectFileDialogLinuxPortal: Use dbus_xdg::Request and DbusType https://chromium-review.googlesource.com/c/chromium/src/+/6187853

* chore: udpate patches

* Multiple PRS: https://chromium-review.googlesource.com/c/chromium/src/+/6185544 | https://chromium-review.googlesource.com/c/chromium/src/+/6183252

* fix: cast enum class to numeric type

* fix: add 1 to MAX_EXCLUSION_REASON because enum values are zero-based, and we want the total count of reasons.

* Reapply "chore: disable focus handling test due to win32/ia32 regression"

This reverts commit 760b1a519b5919b483c66bc3096eeefb4d7011f4.

* refactor: use ExclusionReasonBitset::kValueCount for size

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Samuel Maddock <smaddock@slack-corp.com>
Co-authored-by: clavin <clavin@electronjs.org>
Co-authored-by: alice <alice@makenotion.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
(cherry picked from commit 213165a467b84b3fb979a869d9bf10ad21e2d78e)

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
This commit is contained in:
electron-roller[bot] 2025-02-07 11:14:12 -05:00 committed by GitHub
parent 9d9d1afb2e
commit 3b421ef77f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
96 changed files with 542 additions and 679 deletions

2
DEPS
View file

@ -2,7 +2,7 @@ gclient_gn_args_from = 'src'
vars = {
'chromium_version':
'134.0.6968.0',
'134.0.6988.0',
'node_version':
'v22.9.0',
'nan_version':

View file

@ -48,7 +48,8 @@ enable_cet_shadow_stack = false
is_cfi = false
# TODO: fix this once sysroots have been updated.
use_qt = false
use_qt5 = false
use_qt6 = false
# Disables the builtins PGO for V8
v8_builtins_profiling_log_file = ""
@ -65,11 +66,6 @@ v8_enable_private_mapping_fork_optimization = true
# Expose public V8 symbols for native modules.
v8_expose_public_symbols = true
# Disables unsafe-buffers-usage plugin due to incompatibilities with our reclient implementation
# Ref: https://chromium-review.googlesource.com/c/chromium/src/+/5426599
# Ref: https://github.com/electron/electron/commit/8e20f16ea35eeaeb149ae63bad3703d782665f6a
clang_unsafe_buffers_paths = ""
# Disable snapshotting a page when printing for its content to be analyzed for
# sensitive content by enterprise users.
enterprise_cloud_content_analysis = false
@ -79,4 +75,9 @@ enterprise_cloud_content_analysis = false
content_enable_legacy_ipc = true
# Electron has its own unsafe-buffers enforcement directories.
clang_unsafe_buffers_paths = "//electron/electron_unsafe_buffers_paths.txt"
# TODO: clang_unsafe_buffers_paths = "//electron/electron_unsafe_buffers_paths.txt"
#
# Disables unsafe-buffers-usage plugin due to incompatibilities with our reclient implementation
# Ref: https://chromium-review.googlesource.com/c/chromium/src/+/5426599
# Ref: https://github.com/electron/electron/commit/8e20f16ea35eeaeb149ae63bad3703d782665f6a
clang_unsafe_buffers_paths = ""

View file

@ -68,6 +68,8 @@ static_library("chrome") {
"//chrome/browser/picture_in_picture/picture_in_picture_occlusion_tracker_observer.h",
"//chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc",
"//chrome/browser/picture_in_picture/picture_in_picture_window_manager.h",
"//chrome/browser/picture_in_picture/picture_in_picture_window_manager_uma_helper.cc",
"//chrome/browser/picture_in_picture/picture_in_picture_window_manager_uma_helper.h",
"//chrome/browser/picture_in_picture/scoped_picture_in_picture_occlusion_observation.cc",
"//chrome/browser/picture_in_picture/scoped_picture_in_picture_occlusion_observation.h",
"//chrome/browser/platform_util.cc",
@ -197,6 +199,7 @@ static_library("chrome") {
"//chrome/browser/ui/webui/tab_search:mojo_bindings",
"//chrome/browser/web_applications/mojom:mojom_web_apps_enum",
"//components/enterprise/buildflags",
"//components/enterprise/common/proto:browser_events_proto",
"//components/enterprise/common/proto:connectors_proto",
"//components/enterprise/obfuscation/core:enterprise_obfuscation",
"//components/safe_browsing/core/browser/db:safebrowsing_proto",

View file

@ -176,7 +176,7 @@ template("electron_paks") {
}
source_patterns = [
"${root_gen_dir}/chrome/chromium_strings_",
"${root_gen_dir}/chrome/branded_strings_",
"${root_gen_dir}/chrome/locale_settings_",
"${root_gen_dir}/chrome/platform_locale_settings_",
"${root_gen_dir}/chrome/generated_resources_",

View file

@ -118,10 +118,10 @@ index 9fd0e0225fa48b0afb90b525236e54cff17c1c84..dded715011ac8c1dd9e4525f0bdd6408
callback(EVP_des_ede3_cbc(), "des-ede3-cbc", NULL, arg);
callback(EVP_rc2_cbc(), "rc2-cbc", NULL, arg);
diff --git a/include/openssl/cipher.h b/include/openssl/cipher.h
index ad0f13919299a036d1e1121a05f62e096406a6c5..7baea6a73d3da02e2834c33e5579b8ad2b984221 100644
index a7ca77d9d7a6c71a66229c89af6eeb76ec91d2c2..7abc9b92ba92a4fdddb4ab38b573224544c5cf85 100644
--- a/include/openssl/cipher.h
+++ b/include/openssl/cipher.h
@@ -429,6 +429,7 @@ OPENSSL_EXPORT const EVP_CIPHER *EVP_des_ede3_ecb(void);
@@ -443,6 +443,7 @@ OPENSSL_EXPORT const EVP_CIPHER *EVP_des_ede3_ecb(void);
// EVP_aes_128_cfb128 is only available in decrepit.
OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_128_cfb128(void);

View file

@ -139,6 +139,5 @@ build_disable_thin_lto_mac.patch
build_add_public_config_simdutf_config.patch
revert_code_health_clean_up_stale_macwebcontentsocclusion.patch
feat_add_signals_when_embedder_cleanup_callbacks_run_for.patch
build_remove_vr_directx_helpers_dependency.patch
feat_separate_content_settings_callback_for_sync_and_async_clipboard.patch
cherry-pick-dd8e2822e507.patch

View file

@ -10,7 +10,7 @@ DidCreateScriptContext is called, not all JS APIs are available in the
context, which can cause some preload scripts to trip.
diff --git a/content/public/renderer/render_frame_observer.h b/content/public/renderer/render_frame_observer.h
index dbfaa28f2424f5b109816cfe951d734fc116a39f..d25cece2f5bef606307d44d4fc45eab051e651cc 100644
index bb4d6c56978469d3c2efb4b2d519a7a69ef538b0..b164e89a394df060f6154ad2acadf15dc1f48fc6 100644
--- a/content/public/renderer/render_frame_observer.h
+++ b/content/public/renderer/render_frame_observer.h
@@ -149,6 +149,8 @@ class CONTENT_EXPORT RenderFrameObserver
@ -23,10 +23,10 @@ index dbfaa28f2424f5b109816cfe951d734fc116a39f..d25cece2f5bef606307d44d4fc45eab0
int32_t world_id) {}
virtual void DidClearWindowObject() {}
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
index 87504441dc14eaec8a0aa9fa9197eab17efc4eb9..be511a377d2d5e2df3e7c73a1c54ef52998f1c95 100644
index d86148672f36ecc42f4635d61cf474f6e9348ada..48cb9025f830045aa9dbe0b6c71177d8f999b40c 100644
--- a/content/renderer/render_frame_impl.cc
+++ b/content/renderer/render_frame_impl.cc
@@ -4798,6 +4798,12 @@ void RenderFrameImpl::DidCreateScriptContext(v8::Local<v8::Context> context,
@@ -4780,6 +4780,12 @@ void RenderFrameImpl::DidCreateScriptContext(v8::Local<v8::Context> context,
observer.DidCreateScriptContext(context, world_id);
}
@ -40,10 +40,10 @@ index 87504441dc14eaec8a0aa9fa9197eab17efc4eb9..be511a377d2d5e2df3e7c73a1c54ef52
int world_id) {
for (auto& observer : observers_)
diff --git a/content/renderer/render_frame_impl.h b/content/renderer/render_frame_impl.h
index 3d9cd1f42b1c604ae322d30d56ef113c61f4e84f..11ac3f0ae7dd13f6c74b1038f4eede257e57fd8e 100644
index e4ac51a559845b299c10410adad7163a4bb1d80e..9fcc915ebb81d9008db4196560ed382e7aeb1b6e 100644
--- a/content/renderer/render_frame_impl.h
+++ b/content/renderer/render_frame_impl.h
@@ -653,6 +653,8 @@ class CONTENT_EXPORT RenderFrameImpl
@@ -652,6 +652,8 @@ class CONTENT_EXPORT RenderFrameImpl
void DidObserveLayoutShift(double score, bool after_input_or_scroll) override;
void DidCreateScriptContext(v8::Local<v8::Context> context,
int world_id) override;
@ -53,7 +53,7 @@ index 3d9cd1f42b1c604ae322d30d56ef113c61f4e84f..11ac3f0ae7dd13f6c74b1038f4eede25
int world_id) override;
void DidChangeScrollOffset() override;
diff --git a/third_party/blink/public/web/web_local_frame_client.h b/third_party/blink/public/web/web_local_frame_client.h
index 5ea679f5ff3fa5ec6d4937354cb1f52343a05e0d..f4de83e31fe2064adffdb837cd2b8376a545b8bc 100644
index e0791aeed4ae6bee2451036682bff355c189c530..8d63259537e5b7a892a065b3c0ad42229284e252 100644
--- a/third_party/blink/public/web/web_local_frame_client.h
+++ b/third_party/blink/public/web/web_local_frame_client.h
@@ -663,6 +663,9 @@ class BLINK_EXPORT WebLocalFrameClient {
@ -79,10 +79,10 @@ index f7e0144c74f879e9b29871d7c372b99e127966bb..c3cd7b77ed282f212a56d151dc3fbec3
if (World().IsMainWorld()) {
probe::DidCreateMainWorldContext(GetFrame());
diff --git a/third_party/blink/renderer/core/frame/local_frame_client.h b/third_party/blink/renderer/core/frame/local_frame_client.h
index c3fb21c5add440acc13ec673b132ccb0bedb5046..5f16a2f3a9583613e319b85f348ea40e4b75c65f 100644
index cae725c13d9035d44347f679dfeeaae65d3dfdff..0446107a44351c92346151e72e1202cc84b7f556 100644
--- a/third_party/blink/renderer/core/frame/local_frame_client.h
+++ b/third_party/blink/renderer/core/frame/local_frame_client.h
@@ -299,6 +299,8 @@ class CORE_EXPORT LocalFrameClient : public FrameClient {
@@ -300,6 +300,8 @@ class CORE_EXPORT LocalFrameClient : public FrameClient {
virtual void DidCreateScriptContext(v8::Local<v8::Context>,
int32_t world_id) = 0;
@ -92,10 +92,10 @@ index c3fb21c5add440acc13ec673b132ccb0bedb5046..5f16a2f3a9583613e319b85f348ea40e
int32_t world_id) = 0;
virtual bool AllowScriptExtensions() = 0;
diff --git a/third_party/blink/renderer/core/frame/local_frame_client_impl.cc b/third_party/blink/renderer/core/frame/local_frame_client_impl.cc
index 92d2e7e209cac354bec7088a2a64ade3aa88a679..d1d86aeb163134e59f9b2b3a9bd17bcc268fc6e3 100644
index fc0114fc50bcc54788462015454644ff91c6d644..27fa62ebf059fa657d38d8b100f431c46c503bef 100644
--- a/third_party/blink/renderer/core/frame/local_frame_client_impl.cc
+++ b/third_party/blink/renderer/core/frame/local_frame_client_impl.cc
@@ -294,6 +294,13 @@ void LocalFrameClientImpl::DidCreateScriptContext(
@@ -296,6 +296,13 @@ void LocalFrameClientImpl::DidCreateScriptContext(
web_frame_->Client()->DidCreateScriptContext(context, world_id);
}
@ -110,7 +110,7 @@ index 92d2e7e209cac354bec7088a2a64ade3aa88a679..d1d86aeb163134e59f9b2b3a9bd17bcc
v8::Local<v8::Context> context,
int32_t world_id) {
diff --git a/third_party/blink/renderer/core/frame/local_frame_client_impl.h b/third_party/blink/renderer/core/frame/local_frame_client_impl.h
index 2a5537ffa0b5c547237d1d3f0a3dfb1f442a9ce2..d3bb5a4fd712f853da56e9dd2480d56dbf013536 100644
index 4b8bdefc3ae0d70f72bc922009aecebeca88edd7..25d8a758401a5a28429b8c387768fdab467c584c 100644
--- a/third_party/blink/renderer/core/frame/local_frame_client_impl.h
+++ b/third_party/blink/renderer/core/frame/local_frame_client_impl.h
@@ -81,6 +81,8 @@ class CORE_EXPORT LocalFrameClientImpl final : public LocalFrameClient {
@ -123,7 +123,7 @@ index 2a5537ffa0b5c547237d1d3f0a3dfb1f442a9ce2..d3bb5a4fd712f853da56e9dd2480d56d
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
index c8a67a8b31d118282003caa6bf9dd5884e594542..076a68ac3ea04fd65a7580fe818bac1d0ae80b49 100644
index 2d2e02500d44b1738dae8840f86bd61fbe9b5456..0b4ebb4f86cb2ff1e704495c7b0800d9c63b03f4 100644
--- a/third_party/blink/renderer/core/loader/empty_clients.h
+++ b/third_party/blink/renderer/core/loader/empty_clients.h
@@ -415,6 +415,8 @@ class CORE_EXPORT EmptyLocalFrameClient : public LocalFrameClient {

View file

@ -10,10 +10,10 @@ usage of BrowserList and Browser as we subclass related methods and use our
WindowList.
diff --git a/chrome/browser/ui/webui/accessibility/accessibility_ui.cc b/chrome/browser/ui/webui/accessibility/accessibility_ui.cc
index 9e860989fc3196599ebb181b17e356c3ac991d08..232f89902c4c3f839d8dfc1101a0e52f72c80da5 100644
index 90d8660e8a109ac547d9ab8feacc641e8a6c5a57..fe176f7b2106d767da8b28864fd574a502a5f48e 100644
--- a/chrome/browser/ui/webui/accessibility/accessibility_ui.cc
+++ b/chrome/browser/ui/webui/accessibility/accessibility_ui.cc
@@ -48,6 +48,7 @@
@@ -47,6 +47,7 @@
#include "content/public/browser/web_contents_observer.h"
#include "content/public/browser/web_contents_user_data.h"
#include "content/public/browser/web_ui_data_source.h"
@ -21,7 +21,7 @@ index 9e860989fc3196599ebb181b17e356c3ac991d08..232f89902c4c3f839d8dfc1101a0e52f
#include "ui/accessibility/accessibility_features.h"
#include "ui/accessibility/ax_updates_and_events.h"
#include "ui/accessibility/platform/ax_platform_node.h"
@@ -171,7 +172,7 @@ base::Value::Dict BuildTargetDescriptor(content::RenderViewHost* rvh) {
@@ -170,7 +171,7 @@ base::Value::Dict BuildTargetDescriptor(content::RenderViewHost* rvh) {
rvh->GetRoutingID(), accessibility_mode);
}
@ -30,7 +30,7 @@ index 9e860989fc3196599ebb181b17e356c3ac991d08..232f89902c4c3f839d8dfc1101a0e52f
base::Value::Dict BuildTargetDescriptor(Browser* browser) {
base::Value::Dict target_data;
target_data.Set(kSessionIdField, browser->session_id().id());
@@ -192,7 +193,7 @@ void HandleAccessibilityRequestCallback(
@@ -191,7 +192,7 @@ void HandleAccessibilityRequestCallback(
DCHECK(ShouldHandleAccessibilityRequestCallback(path));
base::Value::Dict data;
@ -39,7 +39,7 @@ index 9e860989fc3196599ebb181b17e356c3ac991d08..232f89902c4c3f839d8dfc1101a0e52f
ui::AXMode mode =
content::BrowserAccessibilityState::GetInstance()->GetAccessibilityMode();
bool is_native_enabled = content::BrowserAccessibilityState::GetInstance()
@@ -221,7 +222,7 @@ void HandleAccessibilityRequestCallback(
@@ -220,7 +221,7 @@ void HandleAccessibilityRequestCallback(
data.Set(kPDFPrinting, pdf_printing ? kOn : kOff);
std::string pref_api_type =
@ -48,7 +48,7 @@ index 9e860989fc3196599ebb181b17e356c3ac991d08..232f89902c4c3f839d8dfc1101a0e52f
bool pref_api_type_supported = false;
std::vector<ui::AXApiType::Type> supported_api_types =
@@ -288,11 +289,11 @@ void HandleAccessibilityRequestCallback(
@@ -287,11 +288,11 @@ void HandleAccessibilityRequestCallback(
data.Set(kPagesField, std::move(page_list));
base::Value::List browser_list;
@ -62,7 +62,7 @@ index 9e860989fc3196599ebb181b17e356c3ac991d08..232f89902c4c3f839d8dfc1101a0e52f
data.Set(kBrowsersField, std::move(browser_list));
std::string json_string;
@@ -762,7 +763,8 @@ void AccessibilityUIMessageHandler::SetGlobalString(
@@ -761,7 +762,8 @@ void AccessibilityUIMessageHandler::SetGlobalString(
const std::string value = CheckJSValue(data.FindString(kValueField));
if (string_name == kApiTypeField) {
@ -72,7 +72,7 @@ index 9e860989fc3196599ebb181b17e356c3ac991d08..232f89902c4c3f839d8dfc1101a0e52f
pref->SetString(prefs::kShownAccessibilityApiType, value);
}
}
@@ -816,7 +818,8 @@ void AccessibilityUIMessageHandler::RequestWebContentsTree(
@@ -815,7 +817,8 @@ void AccessibilityUIMessageHandler::RequestWebContentsTree(
AXPropertyFilter::ALLOW_EMPTY);
AddPropertyFilters(property_filters, deny, AXPropertyFilter::DENY);
@ -82,7 +82,7 @@ index 9e860989fc3196599ebb181b17e356c3ac991d08..232f89902c4c3f839d8dfc1101a0e52f
ui::AXApiType::Type api_type =
ui::AXApiType::From(pref->GetString(prefs::kShownAccessibilityApiType));
std::string accessibility_contents =
@@ -843,6 +846,7 @@ void AccessibilityUIMessageHandler::RequestNativeUITree(
@@ -842,6 +845,7 @@ void AccessibilityUIMessageHandler::RequestNativeUITree(
AXPropertyFilter::ALLOW_EMPTY);
AddPropertyFilters(property_filters, deny, AXPropertyFilter::DENY);
@ -90,7 +90,7 @@ index 9e860989fc3196599ebb181b17e356c3ac991d08..232f89902c4c3f839d8dfc1101a0e52f
for (Browser* browser : *BrowserList::GetInstance()) {
if (browser->session_id().id() == session_id) {
base::Value::Dict result = BuildTargetDescriptor(browser);
@@ -855,6 +859,7 @@ void AccessibilityUIMessageHandler::RequestNativeUITree(
@@ -854,6 +858,7 @@ void AccessibilityUIMessageHandler::RequestNativeUITree(
return;
}
}
@ -98,7 +98,7 @@ index 9e860989fc3196599ebb181b17e356c3ac991d08..232f89902c4c3f839d8dfc1101a0e52f
#endif // !BUILDFLAG(IS_ANDROID)
// No browser with the specified |session_id| was found.
base::Value::Dict result;
@@ -898,11 +903,13 @@ void AccessibilityUIMessageHandler::StopRecording(
@@ -897,11 +902,13 @@ void AccessibilityUIMessageHandler::StopRecording(
}
ui::AXApiType::Type AccessibilityUIMessageHandler::GetRecordingApiType() {
@ -115,7 +115,7 @@ index 9e860989fc3196599ebb181b17e356c3ac991d08..232f89902c4c3f839d8dfc1101a0e52f
// Check to see if it is in the supported types list.
if (std::find(supported_types.begin(), supported_types.end(), api_type) ==
supported_types.end()) {
@@ -972,8 +979,11 @@ void AccessibilityUIMessageHandler::RequestAccessibilityEvents(
@@ -971,8 +978,11 @@ void AccessibilityUIMessageHandler::RequestAccessibilityEvents(
// static
void AccessibilityUIMessageHandler::RegisterProfilePrefs(
user_prefs::PrefRegistrySyncable* registry) {

View file

@ -6,10 +6,10 @@ Subject: allow disabling blink scheduler throttling per RenderView
This allows us to disable throttling for hidden windows.
diff --git a/content/browser/renderer_host/navigation_controller_impl_unittest.cc b/content/browser/renderer_host/navigation_controller_impl_unittest.cc
index 994850cb7737aa8787504f37ab91037b28df5690..fd9d07ac3953ded9a4f36e62721eb16097e77dba 100644
index b8462d19d3b61e5813a0248b8667af5bbace4716..3939abfd02fa8728d48e99b1ee1c00135f8220c5 100644
--- a/content/browser/renderer_host/navigation_controller_impl_unittest.cc
+++ b/content/browser/renderer_host/navigation_controller_impl_unittest.cc
@@ -163,6 +163,12 @@ class MockPageBroadcast : public blink::mojom::PageBroadcast {
@@ -168,6 +168,12 @@ class MockPageBroadcast : public blink::mojom::PageBroadcast {
(network::mojom::AttributionSupport support),
(override));
@ -23,7 +23,7 @@ index 994850cb7737aa8787504f37ab91037b28df5690..fd9d07ac3953ded9a4f36e62721eb160
return receiver_.BindNewEndpointAndPassDedicatedRemote();
}
diff --git a/content/browser/renderer_host/render_view_host_impl.cc b/content/browser/renderer_host/render_view_host_impl.cc
index 0b5f50023e642845807712c6f8736d4d99e00d68..d4f280e7e7a6c5ed5a59499fd933f3d6448872b4 100644
index 6e61c80ad9779c3c703d20d0617529583cbf5973..5a756e2e5d3cef2f4ad0137dd59f22bb6b68ddb2 100644
--- a/content/browser/renderer_host/render_view_host_impl.cc
+++ b/content/browser/renderer_host/render_view_host_impl.cc
@@ -754,6 +754,11 @@ void RenderViewHostImpl::SetBackgroundOpaque(bool opaque) {
@ -51,7 +51,7 @@ index 5fb8a3dc69dc5fc5bfa08e01d8f03707a23c9274..41774b60b8cb7e0a22cedc597dc07ad1
void SendRendererPreferencesToRenderer(
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
index fe691a1ae2126409b23649824e32bc2a2dd711e6..47d375776347948b08702b733f5a5d051d63c015 100644
index e2d7bfcc45c6450de38a1dd1a743ac3de61f3d35..09a67ee96d89df82f14c4b10e2cf856feece66eb 100644
--- a/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) {
@ -116,7 +116,7 @@ index 083af135d890c2837e72c314e170e81931bd2a20..5245ea88441ef84c15b8052a9011ce70
// Visibility -----------------------------------------------------------
diff --git a/third_party/blink/renderer/core/exported/web_view_impl.cc b/third_party/blink/renderer/core/exported/web_view_impl.cc
index 041ef7c3079f41a273300bcaeddd32342a5e94c4..aa786f1b88186bea18bccb2a99c9d393df7c684c 100644
index 7a5ad6c9f2b0598f2aab5fabcea09cf60101e890..bf141e3d121736ac38ae918cbe8400ee92325824 100644
--- a/third_party/blink/renderer/core/exported/web_view_impl.cc
+++ b/third_party/blink/renderer/core/exported/web_view_impl.cc
@@ -2468,6 +2468,10 @@ void WebViewImpl::SetPageLifecycleStateInternal(
@ -155,7 +155,7 @@ index 041ef7c3079f41a273300bcaeddd32342a5e94c4..aa786f1b88186bea18bccb2a99c9d393
// Do not throttle if the page should be painting.
bool is_visible =
diff --git a/third_party/blink/renderer/core/exported/web_view_impl.h b/third_party/blink/renderer/core/exported/web_view_impl.h
index 4f77ef1379390973fa912640a33a5033dc8db68f..12d4932d82df824e459a8a90b6f24222172618df 100644
index 1700e9ae4809eb34bfa9e477131c928afcc87814..16bb378b55eec58f5bb1d717c3f2dd1e5ab072e3 100644
--- a/third_party/blink/renderer/core/exported/web_view_impl.h
+++ b/third_party/blink/renderer/core/exported/web_view_impl.h
@@ -448,6 +448,7 @@ class CORE_EXPORT WebViewImpl final : public WebView,

View file

@ -49,7 +49,7 @@ index e662d4d61595735a30d5c721147a95698d4da3d9..6a0388aad469422dd1c0c2164f8aa858
// its owning reference back to our owning LocalFrame.
client_->Detached(type);
diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc
index ddfe1b5566e44c062b32cb6d98ee854922943867..c87ebb8fb68dc8355c37066002148dc67fe9089f 100644
index 45f2159c6fdfc277850d10697aa1f42cd2f72095..137fd9845e72adbe8792207cb620caf7ec2a5bff 100644
--- a/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) {

View file

@ -11,32 +11,32 @@ if we ever align our .pak file generation with Chrome we can remove this
patch.
diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn
index d786e8e50d8145ce5ca3734c50c2907328021e10..ea991fd04cce48e42670625619db923e6f8c302b 100644
index c85316d1b75473e65e4b6de84a57ae91b6202a08..3033a50c2249c921d80e3ca0ca11baabaa1c0005 100644
--- a/chrome/BUILD.gn
+++ b/chrome/BUILD.gn
@@ -200,11 +200,16 @@ if (!is_android && !is_mac) {
"common/crash_keys.h",
]
@@ -196,11 +196,16 @@ if (!is_android && !is_mac) {
"common/crash_keys.h",
]
+ if (!is_electron_build) {
+ deps = [
+ ":packed_resources_integrity_header",
+ ]
+ }
+ if (!is_electron_build) {
+ deps = [
+ ":packed_resources_integrity_header",
+ ]
+ }
+
deps += [
":chrome_dll",
":chrome_exe_version",
":copy_first_run",
- ":packed_resources_integrity_header",
":visual_elements_resources",
"//base",
"//build:branding_buildflags",
deps += [
":chrome_dll",
":chrome_exe_version",
":copy_first_run",
- ":packed_resources_integrity_header",
":visual_elements_resources",
"//base",
"//build:branding_buildflags",
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
index daf0aeb76388b4942f477876ef896aa6fc736248..abc81a107edf7f1ad5c46a200734c5b727ba8289 100644
index 8e6410ecba1d70911a02e677569e462622912010..d19c6e180cc05e7dacd6d289088b157286c8c050 100644
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -4506,7 +4506,7 @@ static_library("browser") {
@@ -4522,7 +4522,7 @@ static_library("browser") {
[ "//chrome/browser/ui/webui/signin:profile_impl" ]
}
@ -46,10 +46,10 @@ index daf0aeb76388b4942f477876ef896aa6fc736248..abc81a107edf7f1ad5c46a200734c5b7
# than here in :chrome_dll.
deps += [ "//chrome:packed_resources_integrity_header" ]
diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
index c4136cd79ccb3c7542dc44dadc56e1c891d76b0c..c48c98b2da0629d06cfc1ed7c36fa6ad9f8466e8 100644
index 6278e6584c707a57a9f78521047b7752b99d0ba9..ac2da5587635f80089a5aa4fba002607b1306e2f 100644
--- a/chrome/test/BUILD.gn
+++ b/chrome/test/BUILD.gn
@@ -6996,9 +6996,12 @@ test("unit_tests") {
@@ -6995,9 +6995,12 @@ test("unit_tests") {
"//chrome/notification_helper",
]
@ -63,7 +63,7 @@ index c4136cd79ccb3c7542dc44dadc56e1c891d76b0c..c48c98b2da0629d06cfc1ed7c36fa6ad
"//chrome//services/util_win:unit_tests",
"//chrome/app:chrome_dll_resources",
"//chrome/app:win_unit_tests",
@@ -7950,6 +7953,10 @@ test("unit_tests") {
@@ -7954,6 +7957,10 @@ test("unit_tests") {
"../browser/performance_manager/policies/background_tab_loading_policy_unittest.cc",
]
@ -74,7 +74,7 @@ index c4136cd79ccb3c7542dc44dadc56e1c891d76b0c..c48c98b2da0629d06cfc1ed7c36fa6ad
sources += [
# The importer code is not used on Android.
"../common/importer/firefox_importer_utils_unittest.cc",
@@ -8004,7 +8011,6 @@ test("unit_tests") {
@@ -8009,7 +8016,6 @@ test("unit_tests") {
# Non-android deps for "unit_tests" target.
deps += [
"../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").
diff --git a/build/config/BUILDCONFIG.gn b/build/config/BUILDCONFIG.gn
index 9164ee0578686c88fc76ea3c59a7d3e50d15147d..243ac3cc41b095c4a0932c9a48f2db38c941badc 100644
index c01896919e5a4549bd5e1d2d8d54f69fcb2b8aa6..3c032756188714f68828060e693e5db96a4b5bba 100644
--- a/build/config/BUILDCONFIG.gn
+++ b/build/config/BUILDCONFIG.gn
@@ -123,6 +123,9 @@ if (current_os == "") {

View file

@ -1,23 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: samuelmaddock <samuel.maddock@gmail.com>
Date: Tue, 21 Jan 2025 19:04:46 -0500
Subject: build: remove vr directx_helpers dependency
This removes the //device/vr:directx_helpers dependency which
otherwise breaks the build due to enable_vr being disabled.
Upstreamed at https://chromium-review.googlesource.com/c/chromium/src/+/6186102
diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
index c48c98b2da0629d06cfc1ed7c36fa6ad9f8466e8..f7711333244b7e85267df6dcfba82b53b324839d 100644
--- a/chrome/test/BUILD.gn
+++ b/chrome/test/BUILD.gn
@@ -12414,7 +12414,7 @@ source_set("xr_browser_tests_common") {
if (enable_vr) {
deps += [ "//device/vr" ]
}
- if (is_win) {
+ if (enable_vr && is_win) {
deps += [ "//device/vr:directx_helpers" ]
}

View file

@ -9,10 +9,10 @@ potentially prevent a window from being created.
TODO(loc): this patch is currently broken.
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc
index f604daf3753e169af539a44596abc467ca352cf7..d2b27b93fcb9de1c78606a3a83df4e07e8c8629d 100644
index a28f1825107b411e17a2a7e5fac38488afef0d37..999282378d149cb813ce615ba7bd59dbf888ffd1 100644
--- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -9311,6 +9311,7 @@ void RenderFrameHostImpl::CreateNewWindow(
@@ -9403,6 +9403,7 @@ void RenderFrameHostImpl::CreateNewWindow(
last_committed_origin_, params->window_container_type,
params->target_url, params->referrer.To<Referrer>(),
params->frame_name, params->disposition, *params->features,
@ -21,10 +21,10 @@ index f604daf3753e169af539a44596abc467ca352cf7..d2b27b93fcb9de1c78606a3a83df4e07
&no_javascript_access);
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 5fb0b6b6b52776d2ab8d222d7765992188f5da68..f33889dbaaa23908962c56f2dbe072c3bd9e7070 100644
index 9c957e02ff49742cc70c71316c2c695334317d0e..f9eddb8d8f482789da3d74abd298f7b39acea386 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -4991,6 +4991,12 @@ FrameTree* WebContentsImpl::CreateNewWindow(
@@ -4976,6 +4976,12 @@ FrameTree* WebContentsImpl::CreateNewWindow(
SetPartitionedPopinOpenerOnNewWindowIfNeeded(new_contents_impl, params,
opener);
@ -37,7 +37,7 @@ index 5fb0b6b6b52776d2ab8d222d7765992188f5da68..f33889dbaaa23908962c56f2dbe072c3
// If the new frame has a name, make sure any SiteInstances that can find
// this named frame have proxies for it. Must be called after
// SetSessionStorageNamespace, since this calls CreateRenderView, which uses
@@ -5032,12 +5038,6 @@ FrameTree* WebContentsImpl::CreateNewWindow(
@@ -5017,12 +5023,6 @@ FrameTree* WebContentsImpl::CreateNewWindow(
AddWebContentsDestructionObserver(new_contents_impl);
}
@ -66,10 +66,10 @@ index 91dcf6c9c4a2d840fb50cb329fe3ef1bba9103c3..cbc887a3034605a93468e73a310e9ca6
// Operation result when the renderer asks the browser to create a new window.
diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc
index 107911859bdab463feece79dbfc4916f8fb96524..a512f751eef270f970c277a541b9ac9b61f01a81 100644
index 868f15b1f5ee0620115530653fca29283d34eced..1b060732595198cb652ae00c9787b02772fdb61c 100644
--- a/content/public/browser/content_browser_client.cc
+++ b/content/public/browser/content_browser_client.cc
@@ -791,6 +791,8 @@ bool ContentBrowserClient::CanCreateWindow(
@@ -801,6 +801,8 @@ bool ContentBrowserClient::CanCreateWindow(
const std::string& frame_name,
WindowOpenDisposition disposition,
const blink::mojom::WindowFeatures& features,
@ -79,10 +79,10 @@ index 107911859bdab463feece79dbfc4916f8fb96524..a512f751eef270f970c277a541b9ac9b
bool opener_suppressed,
bool* no_javascript_access) {
diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h
index 75663382ec981346692ccac86912bbafa4d6efb3..e2381c3627b7c60db0064069d9cc18e7dabd6545 100644
index d39a4763b4b67b1adc84a0090aba88b7ae7ae4cd..7988eae8421eb3c9079e449b25da2f9e52c31ffc 100644
--- a/content/public/browser/content_browser_client.h
+++ b/content/public/browser/content_browser_client.h
@@ -202,6 +202,7 @@ class NetworkService;
@@ -203,6 +203,7 @@ class NetworkService;
class TrustedURLLoaderHeaderClient;
} // namespace mojom
struct ResourceRequest;
@ -90,7 +90,7 @@ index 75663382ec981346692ccac86912bbafa4d6efb3..e2381c3627b7c60db0064069d9cc18e7
} // namespace network
namespace sandbox {
@@ -1344,6 +1345,8 @@ class CONTENT_EXPORT ContentBrowserClient {
@@ -1357,6 +1358,8 @@ class CONTENT_EXPORT ContentBrowserClient {
const std::string& frame_name,
WindowOpenDisposition disposition,
const blink::mojom::WindowFeatures& features,
@ -100,7 +100,7 @@ index 75663382ec981346692ccac86912bbafa4d6efb3..e2381c3627b7c60db0064069d9cc18e7
bool opener_suppressed,
bool* no_javascript_access);
diff --git a/content/public/browser/web_contents_delegate.cc b/content/public/browser/web_contents_delegate.cc
index 6375d4c0618e027aa4f784d94ce5893521f37768..17933dabfe7818fc815d016b8ca0f314a4c8b953 100644
index 210854ca740d53d62d53dcc48af813a510f46fbc..01fdc6dd78c2238b634d78f5d7be45577cd18878 100644
--- a/content/public/browser/web_contents_delegate.cc
+++ b/content/public/browser/web_contents_delegate.cc
@@ -31,6 +31,17 @@ namespace content {
@ -122,7 +122,7 @@ index 6375d4c0618e027aa4f784d94ce5893521f37768..17933dabfe7818fc815d016b8ca0f314
WebContents* source,
const OpenURLParams& params,
diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h
index c3acd4321e2c84a0b3b1627cd5ce8f2c07cad40a..f318aa37654d668a95fb2f97b5a85c5786f5407d 100644
index 6f8cb1cafde354923f494c1151169e916735de7f..375d5b8c8046b66aff9c7b5e482c347e4820603e 100644
--- a/content/public/browser/web_contents_delegate.h
+++ b/content/public/browser/web_contents_delegate.h
@@ -18,6 +18,7 @@
@ -148,10 +148,10 @@ index c3acd4321e2c84a0b3b1627cd5ce8f2c07cad40a..f318aa37654d668a95fb2f97b5a85c57
// typically happens when popups are created.
virtual void WebContentsCreated(WebContents* source_contents,
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
index b7434ef116bc6b8051856221c3b504d85aa0934b..87504441dc14eaec8a0aa9fa9197eab17efc4eb9 100644
index 4db85df1bd41ed1c9220a42cf1db57d9241e5817..d86148672f36ecc42f4635d61cf474f6e9348ada 100644
--- a/content/renderer/render_frame_impl.cc
+++ b/content/renderer/render_frame_impl.cc
@@ -6910,6 +6910,10 @@ WebView* RenderFrameImpl::CreateNewWindow(
@@ -6891,6 +6891,10 @@ WebView* RenderFrameImpl::CreateNewWindow(
request.HasUserGesture(), GetWebFrame()->IsAdFrame(),
GetWebFrame()->IsAdScriptInStack());
@ -189,13 +189,13 @@ index e6212744a71fffa8aec3244e336eca0a38acab8b..537bde0bdd836183f90a8d44e911d508
bool opener_suppressed,
bool* no_javascript_access) override;
diff --git a/third_party/blink/public/web/web_window_features.h b/third_party/blink/public/web/web_window_features.h
index c576ace24e81cc877aa2595d40e0a13a7af9f6a2..210fb97d44c19c29af424cc7b9cb31690cfcc565 100644
index 82e9d3dfb5f7da76d89fe15ae61d379fa46e177d..fd035512099a54dff6cc951a2226c23a252a90e2 100644
--- a/third_party/blink/public/web/web_window_features.h
+++ b/third_party/blink/public/web/web_window_features.h
@@ -35,6 +35,7 @@
#include <vector>
#include "third_party/blink/public/platform/web_string.h"
#include "third_party/blink/public/platform/web_vector.h"
+#include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
namespace blink {
@ -203,17 +203,17 @@ index c576ace24e81cc877aa2595d40e0a13a7af9f6a2..210fb97d44c19c29af424cc7b9cb3169
@@ -74,6 +75,8 @@ struct WebWindowFeatures {
// TODO(apaseltiner): Investigate moving this field to a non-public struct
// since it is only needed within //third_party/blink.
std::optional<WebVector<WebString>> attribution_srcs;
std::optional<std::vector<WebString>> attribution_srcs;
+
+ String raw_features;
};
} // namespace blink
diff --git a/third_party/blink/renderer/core/frame/local_dom_window.cc b/third_party/blink/renderer/core/frame/local_dom_window.cc
index b88c1546cf8e8c874020e51ece6911b45dc48339..738a92dfafaae0de68f6dbea3f7f4ac790f976a3 100644
index 845b836a0b57d496253dbb966d2b759c08635381..af981e5269ebb4e61c25db84f20068aeb95b03af 100644
--- a/third_party/blink/renderer/core/frame/local_dom_window.cc
+++ b/third_party/blink/renderer/core/frame/local_dom_window.cc
@@ -2266,6 +2266,8 @@ DOMWindow* LocalDOMWindow::open(v8::Isolate* isolate,
@@ -2264,6 +2264,8 @@ DOMWindow* LocalDOMWindow::open(v8::Isolate* isolate,
WebWindowFeatures window_features =
GetWindowFeaturesFromString(features, entered_window);

View file

@ -7,10 +7,10 @@ With WCO, allow chromium to handle synthetic mouse events generated for touch
actions in the non-client caption area.
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 b001362220febea5641615b4afa7174bccac50ed..0734f637faf3b693c5ae358a3eb495e630f6f54e 100644
index 2d05856687cd9669f72553d33c8033fd9083b4f8..645b7dd2cc20ce64ffa541c74930f541f083f931 100644
--- a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
+++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
@@ -1314,6 +1314,10 @@ void DesktopWindowTreeHostWin::HandleHeadlessWindowBoundsChanged(
@@ -1357,6 +1357,10 @@ void DesktopWindowTreeHostWin::HandleHeadlessWindowBoundsChanged(
window()->SetProperty(aura::client::kHeadlessBoundsKey, bounds);
}
@ -22,19 +22,19 @@ index b001362220febea5641615b4afa7174bccac50ed..0734f637faf3b693c5ae358a3eb495e6
DesktopWindowTreeHostWin::GetSingletonDesktopNativeCursorManager() {
return new DesktopNativeCursorManagerWin();
diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.h b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.h
index 1e2c5bb35cc314d44dba85a9bafc5e55bf2b5f14..d110d0a2f005888c4450262fc1887cbf036b126d 100644
index 932351e288f37fd09ae1a43f44e8b51fb0caa4b8..4a0616bc210d234e51e564daabdd2ebd5ac9fc16 100644
--- a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.h
+++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.h
@@ -266,6 +266,7 @@ class VIEWS_EXPORT DesktopWindowTreeHostWin
@@ -267,6 +267,7 @@ class VIEWS_EXPORT DesktopWindowTreeHostWin : public DesktopWindowTreeHost,
void HandleWindowSizeUnchanged() override;
void HandleWindowScaleFactorChanged(float window_scale_factor) override;
void HandleHeadlessWindowBoundsChanged(const gfx::Rect& bounds) override;
+ bool HandleMouseEventForCaption(UINT message) const override;
Widget* GetWidget();
const Widget* GetWidget() const;
// Overridden from WidgetObserver.
void OnWidgetThemeChanged(Widget* widget) override;
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc
index 5c4719e1f2084f9d1b99f12b614396f68a3903aa..a1c0da5b4fefad8b2692cbe04d2d183c07230985 100644
index eddd85cfcfa0ca85bfee0fab1ae217e1b567b21a..b33728cb13d07ad0805379ff2cf8f734b6cbf7cf 100644
--- a/ui/views/win/hwnd_message_handler.cc
+++ b/ui/views/win/hwnd_message_handler.cc
@@ -3142,15 +3142,19 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message,

View file

@ -9,7 +9,7 @@ devices is available. This should no longer be necessary if/when
https://crbug.com/1096743 is completed.
diff --git a/services/device/usb/usb_service_impl.cc b/services/device/usb/usb_service_impl.cc
index 3a4a37b798dd816edc79f4812ab9e7cfea562163..5c9b951ec06f72af37f676f9ad24b4f862d71551 100644
index 60662dc73be695ed329455aec502ca78c24a655d..06e7a0b6f4e9939e0ab95f99a60742ccadcb1898 100644
--- a/services/device/usb/usb_service_impl.cc
+++ b/services/device/usb/usb_service_impl.cc
@@ -203,7 +203,7 @@ void UsbServiceImpl::GetDevices(GetDevicesCallback callback) {

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.
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index e0dbe46268a7dfeb9d496e7436bf1e474855bbda..e75f9c88d3d96c20a93ae9130f26379a1dc3acdf 100644
index f6053a947b07c8e1d60d33371cef35d2f35e7fae..0b93ebeca125529c9400f16de342cf96677290d4 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -4910,7 +4910,7 @@ FrameTree* WebContentsImpl::CreateNewWindow(
@@ -4895,7 +4895,7 @@ FrameTree* WebContentsImpl::CreateNewWindow(
: IsGuest();
// While some guest types do not have a guest SiteInstance, the ones that
// don't all override WebContents creation above.

View file

@ -14,10 +14,10 @@ This change patches it out to prevent the DCHECK.
It can be removed once/if we see a better solution to the problem.
diff --git a/content/browser/site_instance_impl.cc b/content/browser/site_instance_impl.cc
index 55bcf6db1cac9b1dbcf5adb7d0dc3b92b4d9f446..aa951954c6a97e5055b091ff15a2384f89d485b2 100644
index e94348bfb40a6a4fdf67ec92b67bbc86af5fdab0..8e7e8f1841053e8e6f4b419313c78c055891a23a 100644
--- a/content/browser/site_instance_impl.cc
+++ b/content/browser/site_instance_impl.cc
@@ -215,7 +215,7 @@ scoped_refptr<SiteInstanceImpl> SiteInstanceImpl::CreateForGuest(
@@ -228,7 +228,7 @@ scoped_refptr<SiteInstanceImpl> SiteInstanceImpl::CreateForGuest(
BrowserContext* browser_context,
const StoragePartitionConfig& partition_config) {
DCHECK(browser_context);

View file

@ -80,10 +80,10 @@ index 4fd8dff1089cd6afa6a66dc185734d7671657281..0a1f4268ea771a3d5d4a2668928c6e5d
content::WebContents* source,
const content::OpenURLParams& params,
diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc
index e0582db3e8e88bbafeeb9f1aa9bd0bbbeb265a17..a485afdd0283983b6e9de67ebdcbc0ec321b1146 100644
index 79dc99f9c0ccb87725dbad44de7f0b6de7c05ca1..cd9d136ea162efb45a69324246debf7c128bf942 100644
--- a/chrome/browser/ui/browser.cc
+++ b/chrome/browser/ui/browser.cc
@@ -2212,12 +2212,11 @@ bool Browser::IsWebContentsCreationOverridden(
@@ -2203,12 +2203,11 @@ bool Browser::IsWebContentsCreationOverridden(
content::SiteInstance* source_site_instance,
content::mojom::WindowContainerType window_container_type,
const GURL& opener_url,
@ -99,10 +99,10 @@ index e0582db3e8e88bbafeeb9f1aa9bd0bbbeb265a17..a485afdd0283983b6e9de67ebdcbc0ec
WebContents* Browser::CreateCustomWebContents(
diff --git a/chrome/browser/ui/browser.h b/chrome/browser/ui/browser.h
index 0ee8fee2166f023f1fedc5ea9733ed2d37acd8d1..0743620d722d48caba2a1f4ac91d353169049239 100644
index fa28d4500e08dcd595b6240daca6a902ee924002..e20d787445aa5106ff349f433434622a3210c8e8 100644
--- a/chrome/browser/ui/browser.h
+++ b/chrome/browser/ui/browser.h
@@ -976,8 +976,7 @@ class Browser : public TabStripModelObserver,
@@ -975,8 +975,7 @@ class Browser : public TabStripModelObserver,
content::SiteInstance* source_site_instance,
content::mojom::WindowContainerType window_container_type,
const GURL& opener_url,
@ -141,10 +141,10 @@ index ca72b324bf7c3b81ac94b53f0ff454d2df177950..d60ef3075d126e2bbd50c8469f2bf67c
// The profile used for the presentation.
raw_ptr<Profile, DanglingUntriaged> otr_profile_;
diff --git a/chrome/browser/ui/views/hats/hats_next_web_dialog.cc b/chrome/browser/ui/views/hats/hats_next_web_dialog.cc
index f2c33e0a67040bf445797c3d09296ee07c1480c0..e9f6c6fb9e562516c876b132ab142a0733e3ca6f 100644
index 83a0a538fef0da1d3674293d20dac7b8a252273f..155c8a0af46e20f68f8b028c056092b404062861 100644
--- a/chrome/browser/ui/views/hats/hats_next_web_dialog.cc
+++ b/chrome/browser/ui/views/hats/hats_next_web_dialog.cc
@@ -97,8 +97,7 @@ class HatsNextWebDialog::HatsWebView : public views::WebView {
@@ -99,8 +99,7 @@ class HatsNextWebDialog::HatsWebView : public views::WebView {
content::SiteInstance* source_site_instance,
content::mojom::WindowContainerType window_container_type,
const GURL& opener_url,
@ -155,10 +155,10 @@ index f2c33e0a67040bf445797c3d09296ee07c1480c0..e9f6c6fb9e562516c876b132ab142a07
}
content::WebContents* CreateCustomWebContents(
diff --git a/components/embedder_support/android/delegate/web_contents_delegate_android.cc b/components/embedder_support/android/delegate/web_contents_delegate_android.cc
index be627a347fb9888c978c0e7d11498491e880e301..97293f41a905d9bcc97e0e57b12524d5ba7263ca 100644
index 7694765fb805b84acde96d64e561adb44cb313c9..50ac57f90736743f072c2db77b6ef1fe9ccec5dd 100644
--- a/components/embedder_support/android/delegate/web_contents_delegate_android.cc
+++ b/components/embedder_support/android/delegate/web_contents_delegate_android.cc
@@ -185,14 +185,13 @@ bool WebContentsDelegateAndroid::IsWebContentsCreationOverridden(
@@ -188,14 +188,13 @@ bool WebContentsDelegateAndroid::IsWebContentsCreationOverridden(
content::SiteInstance* source_site_instance,
content::mojom::WindowContainerType window_container_type,
const GURL& opener_url,
@ -176,7 +176,7 @@ index be627a347fb9888c978c0e7d11498491e880e301..97293f41a905d9bcc97e0e57b12524d5
java_gurl);
}
diff --git a/components/embedder_support/android/delegate/web_contents_delegate_android.h b/components/embedder_support/android/delegate/web_contents_delegate_android.h
index d97d10767fe420f598998e04f4d6429bf9a5f2f8..ee52cd7a3d4738c273c96528adde5bb9de880bdb 100644
index d3889d7c75933393be4f6e3e25b8071995b685c2..6ef2996faa67964727e72080284423f125ff7ddf 100644
--- a/components/embedder_support/android/delegate/web_contents_delegate_android.h
+++ b/components/embedder_support/android/delegate/web_contents_delegate_android.h
@@ -82,8 +82,7 @@ class WebContentsDelegateAndroid : public content::WebContentsDelegate {
@ -218,10 +218,10 @@ index c6838c83ef971b88769b1f3fba8095025ae25464..2da6a4e08340e72ba7de5d03444c2f17
content::WebContents* AddNewContents(
content::WebContents* source,
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 7bbe1f1d7052f45c1e17fe9d4e8fe3164d3b0ba5..90d93722ef9fbb1ab4072f722db17af96faea062 100644
index e7583ddd3bd825e1ca68cbe19c6958b761742dd0..a024b3c7e78e7967aeebcd33932bb4e541378a6d 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -4873,8 +4873,7 @@ FrameTree* WebContentsImpl::CreateNewWindow(
@@ -4858,8 +4858,7 @@ FrameTree* WebContentsImpl::CreateNewWindow(
// TODO(crbug.com/40202416): Support a way for MPArch guests to support this.
if (delegate_ && delegate_->IsWebContentsCreationOverridden(
source_site_instance, params.window_container_type,
@ -232,7 +232,7 @@ index 7bbe1f1d7052f45c1e17fe9d4e8fe3164d3b0ba5..90d93722ef9fbb1ab4072f722db17af9
static_cast<WebContentsImpl*>(delegate_->CreateCustomWebContents(
opener, source_site_instance, is_new_browsing_instance,
diff --git a/content/public/browser/web_contents_delegate.cc b/content/public/browser/web_contents_delegate.cc
index 17933dabfe7818fc815d016b8ca0f314a4c8b953..f2e4a7f7d5f202dec875c1d8149149a6249d260c 100644
index 01fdc6dd78c2238b634d78f5d7be45577cd18878..9b5f6d23b5c7af8b15ee519de7f874672e8c3f50 100644
--- a/content/public/browser/web_contents_delegate.cc
+++ b/content/public/browser/web_contents_delegate.cc
@@ -152,8 +152,7 @@ bool WebContentsDelegate::IsWebContentsCreationOverridden(
@ -246,7 +246,7 @@ index 17933dabfe7818fc815d016b8ca0f314a4c8b953..f2e4a7f7d5f202dec875c1d8149149a6
}
diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h
index f318aa37654d668a95fb2f97b5a85c5786f5407d..8b2740bccd8670cc49a162d510e3deb53a534b14 100644
index 375d5b8c8046b66aff9c7b5e482c347e4820603e..89525e0b9c04105e0b1f4e664353731428bd5882 100644
--- a/content/public/browser/web_contents_delegate.h
+++ b/content/public/browser/web_contents_delegate.h
@@ -345,8 +345,7 @@ class CONTENT_EXPORT WebContentsDelegate {
@ -296,7 +296,7 @@ index 136448c9df06b9704e95d2797a60907d7ec5170a..21cc7b08dd8f9e4a32d29dd35c42ec2c
content::RenderFrameHost* opener,
content::SiteInstance* source_site_instance,
diff --git a/extensions/browser/guest_view/extension_options/extension_options_guest.cc b/extensions/browser/guest_view/extension_options/extension_options_guest.cc
index ccba95521c54a893ea5168f6b25f86db4a5471c7..1aeae4978dea95d17c7ae76942e294aad7968630 100644
index 2fca443b4bebf29c2835440a9db8a56f7373032f..6b704b57c08714b0a314e98d49e58676987d2995 100644
--- a/extensions/browser/guest_view/extension_options/extension_options_guest.cc
+++ b/extensions/browser/guest_view/extension_options/extension_options_guest.cc
@@ -262,8 +262,7 @@ bool ExtensionOptionsGuest::IsWebContentsCreationOverridden(

View file

@ -9,10 +9,10 @@ Electron when a session is non persistent we do not initialize the
ExtensionSystem, so this check is not relevant for Electron.
diff --git a/extensions/browser/script_injection_tracker.cc b/extensions/browser/script_injection_tracker.cc
index c82f30a15b54aa7072f1f5f318fcf62f11537a60..36fc3566978c4c3b7c722e4081bd2ca2e24d6282 100644
index 8f590b9ebd02969f0c5d9f617852954a69f51afd..91c4a61525173d2cd95a8c2c626c1be5a84b003f 100644
--- a/extensions/browser/script_injection_tracker.cc
+++ b/extensions/browser/script_injection_tracker.cc
@@ -175,7 +175,6 @@ std::vector<const UserScript*> GetLoadedDynamicScripts(
@@ -176,7 +176,6 @@ std::vector<const UserScript*> GetLoadedDynamicScripts(
UserScriptManager* manager =
ExtensionSystem::Get(process.GetBrowserContext())->user_script_manager();
if (!manager) {

View file

@ -11,10 +11,10 @@ not need this dependency.
refs https://chromium-review.googlesource.com/c/chromium/src/+/5573603
diff --git a/chrome/browser/ui/color/BUILD.gn b/chrome/browser/ui/color/BUILD.gn
index 198f02d4b5a16e266a502994aec0d7e4a9a5ab25..7afb323d4c18dacd2f82a8f89774596957fabd08 100644
index 77c7485b0fa885ddff38f336d1c7a52f2e969c73..045c0751a0c43f3360e334dd227b6cff7ddfd681 100644
--- a/chrome/browser/ui/color/BUILD.gn
+++ b/chrome/browser/ui/color/BUILD.gn
@@ -85,9 +85,6 @@ source_set("mixers") {
@@ -84,9 +84,6 @@ source_set("mixers") {
]
}

View file

@ -39,7 +39,7 @@ index e87c180342b967756efeb701c73207fcee8754f1..42e37564e585987d367921568f0f1d2b
NOTREACHED();
}
diff --git a/ui/base/accelerators/global_accelerator_listener/global_accelerator_listener_ozone.cc b/ui/base/accelerators/global_accelerator_listener/global_accelerator_listener_ozone.cc
index e4a772c18a67e93248e3488b2c2b798ddcfbb2ff..43b210d16598f08236ecd23ec5f49a7130fd4be7 100644
index c98ecc36007185052481b6479b2ba4608e326021..dd0e4553b78997beea0f11242eeb9f759359066f 100644
--- a/ui/base/accelerators/global_accelerator_listener/global_accelerator_listener_ozone.cc
+++ b/ui/base/accelerators/global_accelerator_listener/global_accelerator_listener_ozone.cc
@@ -111,7 +111,8 @@ bool GlobalAcceleratorListenerOzone::StartListeningForAccelerator(

View file

@ -7,7 +7,7 @@ By default, chromium sets up one v8 snapshot to be used in all v8 contexts. This
to have a dedicated browser process v8 snapshot defined by the file `browser_v8_context_snapshot.bin`.
diff --git a/content/app/content_main_runner_impl.cc b/content/app/content_main_runner_impl.cc
index 460c1ac9484724605227553fe2ef3ea441857db7..7e6043ff40d7e1a2d2b51905d77e2944ccb0df98 100644
index 6fd7e2dc34d676e2b00739935992172cb2ddb2cf..22787225d94d5370d61e059dc9a4919c738de88d 100644
--- a/content/app/content_main_runner_impl.cc
+++ b/content/app/content_main_runner_impl.cc
@@ -269,8 +269,13 @@ void AsanProcessInfoCB(const char*, bool*) {
@ -40,7 +40,7 @@ index 460c1ac9484724605227553fe2ef3ea441857db7..7e6043ff40d7e1a2d2b51905d77e2944
#endif // V8_USE_EXTERNAL_STARTUP_DATA
}
@@ -969,7 +975,7 @@ int ContentMainRunnerImpl::Initialize(ContentMainParams params) {
@@ -972,7 +978,7 @@ int ContentMainRunnerImpl::Initialize(ContentMainParams params) {
return TerminateForFatalInitializationError();
#endif // BUILDFLAG(IS_ANDROID) && (ICU_UTIL_DATA_IMPL == ICU_UTIL_DATA_FILE)

View file

@ -82,7 +82,7 @@ index 786c526588d81b8b5b1b5dd3760719a53e005995..f66b7d0b4dfcbb8ed3dde5a9ff463ae2
const Source& GetSource(int index) const override;
DesktopMediaList::Type GetMediaListType() const override;
diff --git a/chrome/browser/media/webrtc/native_desktop_media_list.cc b/chrome/browser/media/webrtc/native_desktop_media_list.cc
index 43accd5c9c9af47185f7d71ae9adfb402537b1a7..0ac8e20073bd2db507e49200fd0b48f8535d666b 100644
index 53873f1c82b16bcdb4643889823d1df436f640b8..b237354ba91be6b35a50fd379e69d76d68bb6c97 100644
--- a/chrome/browser/media/webrtc/native_desktop_media_list.cc
+++ b/chrome/browser/media/webrtc/native_desktop_media_list.cc
@@ -176,7 +176,7 @@ BOOL CALLBACK AllHwndCollector(HWND hwnd, LPARAM param) {

View file

@ -15,10 +15,10 @@ at some point be an API to "unfreeze" the flags, or we may be able to refactor
node initialization to not update flags after V8 initialization.
diff --git a/content/renderer/render_process_impl.cc b/content/renderer/render_process_impl.cc
index 280b1492ba87e8610b4e28827a5de9aba2ba7e9d..0bb40d521192bd7771022145ef93991057ccceeb 100644
index 765de13f8cc30229e1711e2c0a225efdbcc4251f..328c8026c9010e1e704bd0ef146a8ec1128e7241 100644
--- a/content/renderer/render_process_impl.cc
+++ b/content/renderer/render_process_impl.cc
@@ -207,6 +207,9 @@ RenderProcessImpl::RenderProcessImpl()
@@ -212,6 +212,9 @@ RenderProcessImpl::RenderProcessImpl()
v8::V8::SetFlagsFromString(kSABPerContextFlag, sizeof(kSABPerContextFlag));
}

View file

@ -6,10 +6,10 @@ Subject: disable_hidden.patch
Electron uses this to disable background throttling for hidden windows.
diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc
index a6632605bfd497650b96d1e8ef40ddf8fa32d7a3..7c6752807590bc0f168820d0d9d8d3277ca9713d 100644
index 213b7ec788f59b649f19a702063307ad622ef462..69cce8cadec4ca2e5e5a6a17043df70846aa37bb 100644
--- a/content/browser/renderer_host/render_widget_host_impl.cc
+++ b/content/browser/renderer_host/render_widget_host_impl.cc
@@ -812,6 +812,10 @@ void RenderWidgetHostImpl::WasHidden() {
@@ -814,6 +814,10 @@ void RenderWidgetHostImpl::WasHidden() {
return;
}
@ -21,10 +21,10 @@ index a6632605bfd497650b96d1e8ef40ddf8fa32d7a3..7c6752807590bc0f168820d0d9d8d327
// Prompts should remain open and functional across tab switches.
if (!delegate_->IsWaitingForPointerLockPrompt(this)) {
diff --git a/content/browser/renderer_host/render_widget_host_impl.h b/content/browser/renderer_host/render_widget_host_impl.h
index 69da8efc07a807be6e142784c0f3b1a92fbd745e..68d02f59929e74103bb2744fa96509db860246e8 100644
index ba199dfd6445ebb696a8c2fdda17000ac672b5bf..2d0f23b2347f5d420a31c325002fb0f2d830e42f 100644
--- a/content/browser/renderer_host/render_widget_host_impl.h
+++ b/content/browser/renderer_host/render_widget_host_impl.h
@@ -1020,6 +1020,9 @@ class CONTENT_EXPORT RenderWidgetHostImpl
@@ -1013,6 +1013,9 @@ class CONTENT_EXPORT RenderWidgetHostImpl
// Requests a commit and forced redraw in the renderer compositor.
void ForceRedrawForTesting();
@ -35,7 +35,7 @@ index 69da8efc07a807be6e142784c0f3b1a92fbd745e..68d02f59929e74103bb2744fa96509db
// |routing_id| must not be MSG_ROUTING_NONE.
// 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
index 2f9502490d96101b5e17aaa6809a49299bd5ca40..fe691a1ae2126409b23649824e32bc2a2dd711e6 100644
index eaf23665d72fccbf3cfb368d88418181aaa07285..e2d7bfcc45c6450de38a1dd1a743ac3de61f3d35 100644
--- a/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() {

View file

@ -24,10 +24,10 @@ This patch temporarily disables the metrics so we can have green CI, and we
should continue seeking for a real fix.
diff --git a/content/browser/renderer_host/navigator.cc b/content/browser/renderer_host/navigator.cc
index e1816f18f44a813a767a49ef27f61c652627740d..abb4ba06d8dc8ab7599e2b9d02a662710d4827dc 100644
index 12e7d81dcdaa1c0f5d5dbcad0ebbe4c9a8105e05..bba22cd1107e0970ada8b0b54cd12623142a55ed 100644
--- a/content/browser/renderer_host/navigator.cc
+++ b/content/browser/renderer_host/navigator.cc
@@ -1452,6 +1452,7 @@ void Navigator::RecordNavigationMetrics(
@@ -1463,6 +1463,7 @@ void Navigator::RecordNavigationMetrics(
.InMilliseconds());
}
@ -35,7 +35,7 @@ index e1816f18f44a813a767a49ef27f61c652627740d..abb4ba06d8dc8ab7599e2b9d02a66271
// If this is a same-process navigation and we have timestamps for unload
// durations, fill those metrics out as well.
if (params.unload_start && params.unload_end &&
@@ -1501,6 +1502,7 @@ void Navigator::RecordNavigationMetrics(
@@ -1512,6 +1513,7 @@ void Navigator::RecordNavigationMetrics(
first_before_unload_start_time)
.InMilliseconds());
}

View file

@ -6,10 +6,10 @@ Subject: feat: enable setting aspect ratio to 0
Make SetAspectRatio accept 0 as valid input, which would reset to null.
diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
index f144ed979f2de1754e95407f908e2aa53c8c8328..b001362220febea5641615b4afa7174bccac50ed 100644
index 88d8d9985c6b4c7051f00cba9dfa51b3fcfa524b..2d05856687cd9669f72553d33c8033fd9083b4f8 100644
--- a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
+++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
@@ -594,7 +594,7 @@ void DesktopWindowTreeHostWin::SetOpacity(float opacity) {
@@ -637,7 +637,7 @@ void DesktopWindowTreeHostWin::SetOpacity(float opacity) {
void DesktopWindowTreeHostWin::SetAspectRatio(
const gfx::SizeF& aspect_ratio,
const gfx::Size& excluded_margin) {
@ -19,7 +19,7 @@ index f144ed979f2de1754e95407f908e2aa53c8c8328..b001362220febea5641615b4afa7174b
excluded_margin);
}
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc
index 12cd216ab83328cb2ee84d1a3524fd1bd4cc2924..ebce632954ae08535eec9565ca4a908f38410daa 100644
index f2668811d73c2211d81b753d5fcc117100a95a55..2aa793660fa963b719c2d7ee71ddf4698744d34c 100644
--- a/ui/views/win/hwnd_message_handler.cc
+++ b/ui/views/win/hwnd_message_handler.cc
@@ -988,8 +988,11 @@ void HWNDMessageHandler::SetFullscreen(bool fullscreen,

View file

@ -33,10 +33,10 @@ index 0ab8187b0db8ae6db46d81738f653a2bc4c566f6..de3d55e85c22317f7f9375eb94d0d5d4
} // namespace net
diff --git a/services/network/network_context.cc b/services/network/network_context.cc
index 1605a5d30f0e1db8e095ce325313a526d76678f2..f9516c82c9f95f0bb3e16aabfe1528b7b974646a 100644
index 20e6a7aec3702865916d8cd339e3a2caf1793917..e628e7e903f0d6ee808cb21ec2e7e678ace66f27 100644
--- a/services/network/network_context.cc
+++ b/services/network/network_context.cc
@@ -1789,6 +1789,13 @@ void NetworkContext::SetNetworkConditions(
@@ -1794,6 +1794,13 @@ void NetworkContext::SetNetworkConditions(
std::move(network_conditions));
}
@ -51,10 +51,10 @@ index 1605a5d30f0e1db8e095ce325313a526d76678f2..f9516c82c9f95f0bb3e16aabfe1528b7
// This may only be called on NetworkContexts created with the constructor
// that calls MakeURLRequestContext().
diff --git a/services/network/network_context.h b/services/network/network_context.h
index e4e0962ac9d98899c332a954184f1bcc970a5d58..4c97dc6ab08ffa43ac227e3a260673a48fb27b15 100644
index e1e6f9bf5ff44bcf5f71bae1ad43fbaf071851b1..e57968af00863af018a6a85a6256dc9e5a19a61e 100644
--- a/services/network/network_context.h
+++ b/services/network/network_context.h
@@ -316,6 +316,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext
@@ -317,6 +317,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext
void CloseIdleConnections(CloseIdleConnectionsCallback callback) override;
void SetNetworkConditions(const base::UnguessableToken& throttling_profile_id,
mojom::NetworkConditionsPtr conditions) override;
@ -63,10 +63,10 @@ index e4e0962ac9d98899c332a954184f1bcc970a5d58..4c97dc6ab08ffa43ac227e3a260673a4
void SetEnableReferrers(bool enable_referrers) override;
#if BUILDFLAG(IS_CT_SUPPORTED)
diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom
index 1afd6b43182b54145e38898db16708b5d0b487ee..a0d751b0c21da4ccf10cf27d0db79a29c42d2462 100644
index 891a80b394671205765bddc622a12e1002c146ce..a46fb90c054c85f15dbe27226e6992d729636893 100644
--- a/services/network/public/mojom/network_context.mojom
+++ b/services/network/public/mojom/network_context.mojom
@@ -1260,6 +1260,9 @@ interface NetworkContext {
@@ -1261,6 +1261,9 @@ interface NetworkContext {
SetNetworkConditions(mojo_base.mojom.UnguessableToken throttling_profile_id,
NetworkConditions? conditions);
@ -77,10 +77,10 @@ index 1afd6b43182b54145e38898db16708b5d0b487ee..a0d751b0c21da4ccf10cf27d0db79a29
SetAcceptLanguage(string new_accept_language);
diff --git a/services/network/test/test_network_context.h b/services/network/test/test_network_context.h
index 35076a426189b34f9d45bee37f7335815cab353b..db22a5f80d29133a8b13d3ec1e1a92ff3b0984f5 100644
index 6b09b32c3a6206310baf87da0a2b4025d488fd09..6ff591e3adbfa4df938f1044009365d8ac2e7f26 100644
--- a/services/network/test/test_network_context.h
+++ b/services/network/test/test_network_context.h
@@ -155,6 +155,7 @@ class TestNetworkContext : public mojom::NetworkContext {
@@ -156,6 +156,7 @@ class TestNetworkContext : public mojom::NetworkContext {
void CloseIdleConnections(CloseIdleConnectionsCallback callback) override {}
void SetNetworkConditions(const base::UnguessableToken& throttling_profile_id,
mojom::NetworkConditionsPtr conditions) override {}

View file

@ -12,7 +12,7 @@ Ideally we could add an embedder observer pattern here but that can be
done in future work.
diff --git a/third_party/blink/renderer/core/exported/web_view_impl.cc b/third_party/blink/renderer/core/exported/web_view_impl.cc
index aa786f1b88186bea18bccb2a99c9d393df7c684c..9afdc8df7d36802f43ff4579240d92997949f03a 100644
index bf141e3d121736ac38ae918cbe8400ee92325824..72fddbeb82f8b662381a10e7e01d4a54be15db9b 100644
--- a/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 @@

View file

@ -26,10 +26,10 @@ index 95876b4040844b598ea7219732a044b4423f8d97..4e02620b7887d1b70b2a9b9e21b819d9
}
diff --git a/ui/native_theme/native_theme.h b/ui/native_theme/native_theme.h
index 8f90bb52b3cef64af2f880c13ff8182c61d6a091..ee24a241b48cd27d84dbf3268fdf6f8447082077 100644
index 4e825d649919c88aad26e4c3b2fd80575ca57db0..de1d8fea0113b55065e5229b07f95d691ccb393e 100644
--- a/ui/native_theme/native_theme.h
+++ b/ui/native_theme/native_theme.h
@@ -457,6 +457,23 @@ class NATIVE_THEME_EXPORT NativeTheme {
@@ -458,6 +458,23 @@ class NATIVE_THEME_EXPORT NativeTheme {
scoped_refptr<ColorProviderKey::ThemeInitializerSupplier> custom_theme,
bool use_custom_frame = true) const;
@ -53,7 +53,7 @@ index 8f90bb52b3cef64af2f880c13ff8182c61d6a091..ee24a241b48cd27d84dbf3268fdf6f84
// Returns a shared instance of the native theme that should be used for web
// rendering. Do not use it in a normal application context (i.e. browser).
// The returned object should not be deleted by the caller. This function is
@@ -712,6 +729,7 @@ class NATIVE_THEME_EXPORT NativeTheme {
@@ -713,6 +730,7 @@ class NATIVE_THEME_EXPORT NativeTheme {
PreferredContrast preferred_contrast_ = PreferredContrast::kNoPreference;
std::optional<base::TimeDelta> caret_blink_interval_;
bool use_overlay_scrollbars_ = false;

View file

@ -373,17 +373,17 @@ index 64a79ebe2e2d21d5a6b4a98042d1cdb7b6edad52..400cce91b020ecd5e48566f125515d2c
+
} // namespace ui
diff --git a/ui/shell_dialogs/select_file_dialog_linux_portal.cc b/ui/shell_dialogs/select_file_dialog_linux_portal.cc
index 9780c80ffff7bdb715a9adcb656e5d33be974db6..cf6edf5c68a8e2f8ffda119b58c6283bc43199c0 100644
index b6a116654ef6815e3d97dd9302d2a9930877dda8..20ebcdd46bd1570ad671c661e7f866ea0396a49e 100644
--- a/ui/shell_dialogs/select_file_dialog_linux_portal.cc
+++ b/ui/shell_dialogs/select_file_dialog_linux_portal.cc
@@ -11,6 +11,7 @@
@@ -7,6 +7,7 @@
#include <string_view>
#include "base/check.h"
+#include "base/command_line.h"
#include "base/files/file_util.h"
#include "base/functional/bind.h"
#include "base/logging.h"
#include "base/no_destructor.h"
@@ -40,6 +41,8 @@ namespace {
constexpr char kXdgPortalService[] = "org.freedesktop.portal.Desktop";
constexpr char kXdgPortalObject[] = "/org/freedesktop/portal/desktop";
@ -392,168 +392,103 @@ index 9780c80ffff7bdb715a9adcb656e5d33be974db6..cf6edf5c68a8e2f8ffda119b58c6283b
+// https://github.com/flatpak/xdg-desktop-portal/commit/71165a5.
constexpr int kXdgPortalRequiredVersion = 3;
constexpr char kXdgPortalRequestInterfaceName[] =
@@ -66,6 +69,8 @@ constexpr int kFileChooserFilterKindGlob = 0;
constexpr char kFileChooserInterfaceName[] =
@@ -61,6 +64,8 @@ constexpr uint32_t kFileChooserFilterKindGlob = 0;
constexpr char kFileUriPrefix[] = "file://";
+const char kXdgPortalRequiredVersionFlag[] = "xdg-portal-required-version";
+
struct FileChooserProperties : dbus::PropertySet {
dbus::Property<uint32_t> version;
enum class ServiceAvailability {
kNotStarted,
kInProgress,
@@ -70,6 +75,9 @@ enum class ServiceAvailability {
@@ -171,10 +176,18 @@ void SelectFileDialogLinuxPortal::StartAvailabilityTestInBackground() {
if (GetAvailabilityTestCompletionFlag()->IsSet())
return;
ServiceAvailability g_service_availability = ServiceAvailability::kNotStarted;
+ auto* cmd = base::CommandLine::ForCurrentProcess();
+ unsigned int xdg_portal_required_version;
+ if (!base::StringToUint(cmd->GetSwitchValueASCII(kXdgPortalRequiredVersionFlag),
+ &xdg_portal_required_version)) {
+ xdg_portal_required_version = kXdgPortalRequiredVersion;
+ }
+uint32_t g_available_portal_version = 0;
+uint32_t g_required_portal_version = kXdgPortalRequiredVersion;
+
dbus_thread_linux::GetTaskRunner()->PostTask(
FROM_HERE,
base::BindOnce(
- &SelectFileDialogLinuxPortal::CheckPortalAvailabilityOnBusThread));
+ &SelectFileDialogLinuxPortal::CheckPortalAvailabilityOnBusThread,
+ xdg_portal_required_version));
scoped_refptr<base::SequencedTaskRunner>& GetMainTaskRunner() {
static base::NoDestructor<scoped_refptr<base::SequencedTaskRunner>>
main_task_runner;
@@ -89,9 +97,10 @@ void OnGetPropertyReply(dbus::Response* response) {
return;
}
- g_service_availability = version >= kXdgPortalRequiredVersion
+ g_service_availability = version >= g_required_portal_version
? ServiceAvailability::kAvailable
: ServiceAvailability::kNotAvailable;
+ g_available_portal_version = version;
}
// static
@@ -185,6 +198,11 @@ bool SelectFileDialogLinuxPortal::IsPortalAvailable() {
return is_portal_available_;
void OnServiceStarted(std::optional<bool> service_started) {
@@ -159,6 +168,12 @@ void SelectFileDialogLinuxPortal::StartAvailabilityTestInBackground() {
}
g_service_availability = ServiceAvailability::kInProgress;
+ auto* cmd = base::CommandLine::ForCurrentProcess();
+ if (!base::StringToUint(cmd->GetSwitchValueASCII(kXdgPortalRequiredVersionFlag),
+ &g_required_portal_version)) {
+ g_required_portal_version = kXdgPortalRequiredVersion;
+ }
+
GetMainTaskRunner() = base::SequencedTaskRunner::GetCurrentDefault();
dbus_utils::CheckForServiceAndStart(dbus_thread_linux::GetSharedSessionBus(),
@@ -175,6 +190,11 @@ bool SelectFileDialogLinuxPortal::IsPortalAvailable() {
return g_service_availability == ServiceAvailability::kAvailable;
}
+// static
+int SelectFileDialogLinuxPortal::GetPortalVersion() {
+ return available_portal_version_;
+uint32_t SelectFileDialogLinuxPortal::GetPortalVersion() {
+ return g_available_portal_version;
+}
+
// static
void SelectFileDialogLinuxPortal::DestroyPortalConnection() {
dbus_thread_linux::GetTaskRunner()->PostTask(
@@ -214,6 +232,8 @@ void SelectFileDialogLinuxPortal::SelectFileImpl(
weak_factory_.GetWeakPtr()));
info_->type = type;
info_->main_task_runner = base::SequencedTaskRunner::GetCurrentDefault();
+ info_->button_label = button_label();
+ info_->allow_multiple_selection = allow_multiple_selection();
bool SelectFileDialogLinuxPortal::IsRunning(
gfx::NativeWindow parent_window) const {
return parent_window && host_ && host_.get() == parent_window->GetHost();
@@ -377,11 +397,14 @@ DbusDictionary SelectFileDialogLinuxPortal::BuildOptionsDictionary(
const PortalFilterSet& filter_set) {
DbusDictionary dict;
if (owning_window) {
if (auto* root = owning_window->GetRootWindow()) {
@@ -260,7 +280,8 @@ bool SelectFileDialogLinuxPortal::HasMultipleFileTypeChoicesImpl() {
}
// static
-void SelectFileDialogLinuxPortal::CheckPortalAvailabilityOnBusThread() {
+void SelectFileDialogLinuxPortal::CheckPortalAvailabilityOnBusThread(
+ unsigned int xdg_portal_required_version) {
DCHECK(dbus_thread_linux::GetTaskRunner()->RunsTasksInCurrentSequence());
base::AtomicFlag* availability_test_complete =
GetAvailabilityTestCompletionFlag();
@@ -274,6 +295,7 @@ void SelectFileDialogLinuxPortal::CheckPortalAvailabilityOnBusThread() {
base::BindOnce(
[](scoped_refptr<dbus::Bus> bus,
base::AtomicFlag* availability_test_complete,
+ unsigned int xdg_portal_required_version,
std::optional<bool> name_has_owner) {
if (name_has_owner.value_or(false)) {
// The portal service has an owner, proceed to check the version.
@@ -285,15 +307,22 @@ void SelectFileDialogLinuxPortal::CheckPortalAvailabilityOnBusThread() {
if (!properties.GetAndBlock(&properties.version)) {
LOG(ERROR) << "Failed to read portal version property";
} else if (properties.version.value() >=
- kXdgPortalRequiredVersion) {
+ xdg_portal_required_version) {
is_portal_available_ = true;
+ available_portal_version_ = properties.version.value();
+ } else {
+ VLOG(1) << "File chooser portal available version: "
+ << properties.version.value();
+ available_portal_version_ = properties.version.value();
}
}
+ VLOG(1) << "File chooser portal expected version: "
+ << xdg_portal_required_version;
VLOG(1) << "File chooser portal available: "
<< (is_portal_available_ ? "yes" : "no");
availability_test_complete->Set();
},
- bus, availability_test_complete));
+ bus, availability_test_complete, xdg_portal_required_version));
}
// static
@@ -471,7 +500,9 @@ void SelectFileDialogLinuxPortal::DialogInfo::AppendOptions(
response_handle_token);
if (type == SelectFileDialog::Type::SELECT_UPLOAD_FOLDER) {
- AppendStringOption(&options_writer, kFileChooserOptionAcceptLabel,
+ const std::string accept_label =
+ button_label.empty() ? kFileChooserOptionAcceptLabel : button_label;
+ AppendStringOption(&options_writer, accept_label,
l10n_util::GetStringUTF8(
IDS_SELECT_UPLOAD_FOLDER_DIALOG_UPLOAD_BUTTON));
+ std::string accept_label = button_label().empty() ? "" : button_label();
+
switch (type_) {
case SelectFileDialog::SELECT_UPLOAD_FOLDER:
- dict.PutAs(kFileChooserOptionAcceptLabel,
- DbusString(l10n_util::GetStringUTF8(
- IDS_SELECT_UPLOAD_FOLDER_DIALOG_UPLOAD_BUTTON)));
+ if (accept_label.empty()) {
+ accept_label = l10n_util::GetStringUTF8(
+ IDS_SELECT_UPLOAD_FOLDER_DIALOG_UPLOAD_BUTTON);
+ }
[[fallthrough]];
case SelectFileDialog::SELECT_FOLDER:
case SelectFileDialog::Type::SELECT_EXISTING_FOLDER:
@@ -394,6 +417,10 @@ DbusDictionary SelectFileDialogLinuxPortal::BuildOptionsDictionary(
break;
}
@@ -480,6 +511,8 @@ void SelectFileDialogLinuxPortal::DialogInfo::AppendOptions(
type == SelectFileDialog::Type::SELECT_UPLOAD_FOLDER ||
type == SelectFileDialog::Type::SELECT_EXISTING_FOLDER) {
AppendBoolOption(&options_writer, kFileChooserOptionDirectory, true);
+ AppendBoolOption(&options_writer, kFileChooserOptionMultiple,
+ allow_multiple_selection);
} else if (type == SelectFileDialog::Type::SELECT_OPEN_MULTI_FILE) {
AppendBoolOption(&options_writer, kFileChooserOptionMultiple, true);
}
@@ -820,6 +853,7 @@ SelectFileDialogLinuxPortal::DialogInfo::DialogInfo(
SelectFileDialogLinuxPortal::DialogInfo::~DialogInfo() = default;
bool SelectFileDialogLinuxPortal::is_portal_available_ = false;
+unsigned int SelectFileDialogLinuxPortal::available_portal_version_ = 0;
int SelectFileDialogLinuxPortal::handle_token_counter_ = 0;
} // namespace ui
+ if (!accept_label.empty()) {
+ dict.PutAs(kFileChooserOptionAcceptLabel, DbusString(accept_label));
+ }
+
if (!default_path.empty()) {
if (default_path_exists) {
// If this is an existing directory, navigate to that directory, with no
diff --git a/ui/shell_dialogs/select_file_dialog_linux_portal.h b/ui/shell_dialogs/select_file_dialog_linux_portal.h
index d57a52b3ccbd3bd6d390615351ea2ad1e475b157..6a2800add2428ffd91286748f886d6c42510ba31 100644
index 651684b1840eaff664f3d73d99bbea40e097c866..9a9d541f1e9586d9d545f8547d3f09ff33dce48d 100644
--- a/ui/shell_dialogs/select_file_dialog_linux_portal.h
+++ b/ui/shell_dialogs/select_file_dialog_linux_portal.h
@@ -47,6 +47,9 @@ class SelectFileDialogLinuxPortal : public SelectFileDialogLinux {
@@ -45,6 +45,9 @@ class SelectFileDialogLinuxPortal : public SelectFileDialogLinux {
// availability test has not yet completed.
static bool IsPortalAvailable();
+ // Get version of portal if available.
+ static int GetPortalVersion();
+ static uint32_t GetPortalVersion();
+
// Destroys the connection to the bus.
static void DestroyPortalConnection();
@@ -120,6 +123,8 @@ class SelectFileDialogLinuxPortal : public SelectFileDialogLinux {
Type type;
// The task runner the SelectFileImpl method was called on.
scoped_refptr<base::SequencedTaskRunner> main_task_runner;
+ std::string button_label;
+ bool allow_multiple_selection = false;
private:
friend class base::RefCountedThreadSafe<DialogInfo>;
@@ -176,7 +181,8 @@ class SelectFileDialogLinuxPortal : public SelectFileDialogLinux {
};
// D-Bus configuration and initialization.
- static void CheckPortalAvailabilityOnBusThread();
+ static void CheckPortalAvailabilityOnBusThread(
+ unsigned int xdg_portal_required_version);
// Returns a flag, written by the D-Bus thread and read by the UI thread,
// indicating whether or not the availability test has completed.
@@ -208,6 +214,9 @@ class SelectFileDialogLinuxPortal : public SelectFileDialogLinux {
// Written by the D-Bus thread and read by the UI thread.
static bool is_portal_available_;
+ // Written by the D-Bus thread and read by the UI thread.
+ static unsigned int available_portal_version_;
+
// Used by the D-Bus thread to generate unique handle tokens.
static int handle_token_counter_;
protected:
~SelectFileDialogLinuxPortal() override;

View file

@ -397,10 +397,10 @@ index ce9644d33fe83379127b01bf9a2b1c4badc3bc7c..fd486d4637ae4766ed78571dee7f9ceb
if (schemes.allow_non_standard_schemes_in_origins)
url::EnableNonStandardSchemesForAndroidWebView();
diff --git a/content/public/common/content_client.h b/content/public/common/content_client.h
index 89b70ce1e26612ae85dfcfa088718cb0c79881a2..f78342eca69ace7c3bb5f63cc986074657435ac2 100644
index cf71655553cf510e1309ac47bdd5ddab08e52672..0a02d17d06e080f40bf12bb2e48f51ad84ec17b8 100644
--- a/content/public/common/content_client.h
+++ b/content/public/common/content_client.h
@@ -142,6 +142,9 @@ class CONTENT_EXPORT ContentClient {
@@ -139,6 +139,9 @@ class CONTENT_EXPORT ContentClient {
// Registers a URL scheme as strictly empty documents, allowing them to
// commit synchronously.
std::vector<std::string> empty_document_schemes;

View file

@ -7,7 +7,7 @@ Subject: feat: allow embedders to add observers on created hunspell
This patch is used by Electron to implement spellchecker events.
diff --git a/chrome/browser/spellchecker/spellcheck_service.cc b/chrome/browser/spellchecker/spellcheck_service.cc
index 5ce35c30bfedd76795885a5c3a17843674452d07..b8d19927b6fe007f1db2413a2574e39b6d6c3500 100644
index 5140efab98b7d8d357ea0d97ee25814ea2e1ed8f..979630ba7ffe84d78804a02b832ce7787aecf2d9 100644
--- a/chrome/browser/spellchecker/spellcheck_service.cc
+++ b/chrome/browser/spellchecker/spellcheck_service.cc
@@ -478,6 +478,8 @@ void SpellcheckService::LoadDictionaries() {

View file

@ -317,10 +317,10 @@ index d85a71dde16218bc942245c895666ecf038bcef7..e99684a6b70f5d344cfcd4b1271c4abb
// Although ScreenCaptureKit is available in 12.3 there were some bugs that
diff --git a/content/browser/renderer_host/media/in_process_video_capture_device_launcher.cc b/content/browser/renderer_host/media/in_process_video_capture_device_launcher.cc
index 68f0d2c6a097fb6bf30c5303ed14b98bc5dde1d8..ee080009f75a0b9e07a12f929086008454ef8621 100644
index fe2bd3b710a5b9de73afa8fee556185bb5b96906..0cd669dd6bfd06d73af51893a35020c4b31632b2 100644
--- a/content/browser/renderer_host/media/in_process_video_capture_device_launcher.cc
+++ b/content/browser/renderer_host/media/in_process_video_capture_device_launcher.cc
@@ -328,8 +328,16 @@ void InProcessVideoCaptureDeviceLauncher::LaunchDeviceAsync(
@@ -330,8 +330,16 @@ void InProcessVideoCaptureDeviceLauncher::LaunchDeviceAsync(
break;
}
@ -338,7 +338,7 @@ index 68f0d2c6a097fb6bf30c5303ed14b98bc5dde1d8..ee080009f75a0b9e07a12f9290860084
// For the other capturers, when a bug reports the type of capture it's
// easy enough to determine which capturer was used, but it's a little
// fuzzier with window capture.
@@ -345,13 +353,15 @@ void InProcessVideoCaptureDeviceLauncher::LaunchDeviceAsync(
@@ -347,13 +355,15 @@ void InProcessVideoCaptureDeviceLauncher::LaunchDeviceAsync(
}
#endif // defined(USE_AURA) || BUILDFLAG(IS_MAC)

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.
diff --git a/content/browser/child_process_launcher.h b/content/browser/child_process_launcher.h
index f1773a1ce65e9f4cfe7c39b09d9c523aa804888d..fabe1d524db81135a17203d7637103c691979b39 100644
index 9f9b497aaef2558d2fb02edb115ba5916e1dd578..4e36d3a028d0bb8cdfb100b6424be397915bd7ee 100644
--- a/content/browser/child_process_launcher.h
+++ b/content/browser/child_process_launcher.h
@@ -33,6 +33,7 @@

View file

@ -90,7 +90,7 @@ index 8af69cac78b7488d28f1f05ccb174793fe5148cd..9f74e511c263d147b5fbe81fe100d217
private:
const HWND hwnd_;
diff --git a/components/viz/service/BUILD.gn b/components/viz/service/BUILD.gn
index 8720a29e13ce052db99a6fb7925efd4b43472b9a..20df5575efd0ae37d5885b6088be69a29c75579f 100644
index 6ac941799bda10ce7f93612691a438018160a9dd..5ee0a80cb435a1aaacbea08614a5fe3b26afbe10 100644
--- a/components/viz/service/BUILD.gn
+++ b/components/viz/service/BUILD.gn
@@ -168,6 +168,8 @@ viz_component("service") {
@ -522,7 +522,7 @@ index 4d6cc977ed5000d93918336a0dd57f60c0e95bbb..54d936e86b60f0538c70c4ee69e109cc
waiting_on_draw_ack_ = true;
diff --git a/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc b/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc
index 44774a898ee6346624827e8d534ba9b6b808ea32..25f356de45ba2c27e702e0543db74fbaa66f2454 100644
index 98b33c9def2596c820fc0fbf96de989f0b2cef02..6b915e3ebd9b96c68fe34a9f8c0e16bd0c2a9bee 100644
--- a/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc
+++ b/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc
@@ -111,7 +111,8 @@ RootCompositorFrameSinkImpl::Create(
@ -597,7 +597,7 @@ index 7d19b6be8bb0e0269c381cf6efdf79eaeff1e935..b8ec06ade095df99c024396a601dbf1a
// Sends the created child window to the browser process so that it can be
diff --git a/services/viz/privileged/mojom/compositing/frame_sink_manager.mojom b/services/viz/privileged/mojom/compositing/frame_sink_manager.mojom
index 8ffd1de69da7429fd69709476a890b72766662ab..e67ef2981d2e8e97fbaad7feb048ca2d2321bd99 100644
index 7c9ea17904d861b1f2284124e43e7250bd60dc0f..935971e7b446ed0fa23eec4b4983750842dd70c9 100644
--- a/services/viz/privileged/mojom/compositing/frame_sink_manager.mojom
+++ b/services/viz/privileged/mojom/compositing/frame_sink_manager.mojom
@@ -39,6 +39,7 @@ struct RootCompositorFrameSinkParams {
@ -620,10 +620,10 @@ index 2f462f0deb5fc8a637457243fb5d5849fc214d14..695869b83cefaa24af93a2e11b39de05
+ Draw(gfx.mojom.Rect damage_rect) => ();
};
diff --git a/ui/compositor/compositor.h b/ui/compositor/compositor.h
index b8f57342a59bd1790f275dfbcac2541359235ce6..8b983f7b7f921674d22afeccb7e9aee9be7eb249 100644
index 6db9abcb6d7df1aed6d3b6b89e353cfd64855d94..8e1e8c3eb1c23a6b8dcb006154ab36b91e6bcc04 100644
--- a/ui/compositor/compositor.h
+++ b/ui/compositor/compositor.h
@@ -89,6 +89,7 @@ class DisplayPrivate;
@@ -90,6 +90,7 @@ class DisplayPrivate;
class ExternalBeginFrameController;
} // namespace mojom
@ -631,7 +631,7 @@ index b8f57342a59bd1790f275dfbcac2541359235ce6..8b983f7b7f921674d22afeccb7e9aee9
class HostFrameSinkManager;
class LocalSurfaceId;
class RasterContextProvider;
@@ -140,6 +141,16 @@ class COMPOSITOR_EXPORT ContextFactory {
@@ -142,6 +143,16 @@ class COMPOSITOR_EXPORT ContextFactory {
virtual viz::HostFrameSinkManager* GetHostFrameSinkManager() = 0;
};
@ -648,7 +648,7 @@ index b8f57342a59bd1790f275dfbcac2541359235ce6..8b983f7b7f921674d22afeccb7e9aee9
// Compositor object to take care of GPU painting.
// A Browser compositor object is responsible for generating the final
// displayable form of pixels comprising a single widget's contents. It draws an
@@ -183,6 +194,9 @@ class COMPOSITOR_EXPORT Compositor : public base::PowerSuspendObserver,
@@ -185,6 +196,9 @@ class COMPOSITOR_EXPORT Compositor : public base::PowerSuspendObserver,
// Schedules a redraw of the layer tree associated with this compositor.
void ScheduleDraw();
@ -658,7 +658,7 @@ index b8f57342a59bd1790f275dfbcac2541359235ce6..8b983f7b7f921674d22afeccb7e9aee9
// 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
// is destroyed. NULL can be passed to reset the root layer, in which case the
@@ -583,6 +597,8 @@ class COMPOSITOR_EXPORT Compositor : public base::PowerSuspendObserver,
@@ -589,6 +603,8 @@ class COMPOSITOR_EXPORT Compositor : public base::PowerSuspendObserver,
simple_begin_frame_observers_;
std::unique_ptr<ui::HostBeginFrameObserver> host_begin_frame_observer_;

View file

@ -28,12 +28,12 @@ index 23b29fe25bc463ff1d36aa502a27c4222595e7c5..c1ac6172c4cee72f64f42ca64d2db9c0
// Returns the http referrer of original request which initited this load.
diff --git a/third_party/blink/renderer/core/loader/document_loader.h b/third_party/blink/renderer/core/loader/document_loader.h
index 845b0cc7a208374a14e76e1e92f783636a1288c9..33d7a584b2f71f480325be6e96d3465104d3815f 100644
index 2568658735315720f05c09d7b5324700be8f17bc..4225e8799622e47124efcbeb24a85b22874bb6c3 100644
--- a/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>,
std::optional<scheduler::TaskAttributionId>
soft_navigation_heuristics_task_id);
soft_navigation_heuristics_task_id,
bool should_skip_screenshot);
- void SetDefersLoading(LoaderFreezeMode);
+ void SetDefersLoading(LoaderFreezeMode) override;

View file

@ -49,10 +49,10 @@ index 76e4130d4f84348af2ace1dfe809c48e4b4d4d6a..24c715db250227818dbe889597f46857
mojo::PendingRemote<mojom::TrustTokenAccessObserver> trust_token_observer;
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
index 237c97c0e9ec40f16894808ca3243fbba181c37c..bcb808b3ede3fe6473c58166903703dbffc8a3ba 100644
index de0780c4f29026d3cc7d2742d8e80acddc6916ad..76c724151ee12fccecd36d2e9a6b7f264a9907d7 100644
--- a/services/network/public/cpp/url_request_mojom_traits.cc
+++ b/services/network/public/cpp/url_request_mojom_traits.cc
@@ -95,6 +95,7 @@ bool StructTraits<network::mojom::TrustedUrlRequestParamsDataView,
@@ -48,6 +48,7 @@ bool StructTraits<network::mojom::TrustedUrlRequestParamsDataView,
out->allow_cookies_from_browser = data.allow_cookies_from_browser();
out->include_request_cookies_with_response =
data.include_request_cookies_with_response();
@ -61,10 +61,10 @@ index 237c97c0e9ec40f16894808ca3243fbba181c37c..bcb808b3ede3fe6473c58166903703db
mojo::PendingRemote<network::mojom::CookieAccessObserver>>();
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
index 46e36ea59abe3efdd24c56093f4161d6bc57c882..5f6a283272f0d153d2f4b78b9f6dac410b0ebcd8 100644
index 60feb8454fb3d41e5297a2b10c04baee4a4c01bf..08f82304444f4596a6054b758feb3803dfa3618e 100644
--- a/services/network/public/cpp/url_request_mojom_traits.h
+++ b/services/network/public/cpp/url_request_mojom_traits.h
@@ -77,6 +77,10 @@ struct COMPONENT_EXPORT(NETWORK_CPP_BASE)
@@ -70,6 +70,10 @@ struct COMPONENT_EXPORT(NETWORK_CPP_BASE)
const network::ResourceRequest::TrustedParams& trusted_params) {
return trusted_params.include_request_cookies_with_response;
}
@ -76,10 +76,10 @@ index 46e36ea59abe3efdd24c56093f4161d6bc57c882..5f6a283272f0d153d2f4b78b9f6dac41
cookie_observer(
const network::ResourceRequest::TrustedParams& trusted_params) {
diff --git a/services/network/public/mojom/url_request.mojom b/services/network/public/mojom/url_request.mojom
index 1741c2c040bcb4bf90cb155f75a8eeaee0df31fa..a6c33c5d1226106251a571912ebcca0223b057cd 100644
index 3e5dae789846c667f7537b04252a49b28298d53d..a229e56674cc75e8dfb78c26962f108ffd59c5e9 100644
--- a/services/network/public/mojom/url_request.mojom
+++ b/services/network/public/mojom/url_request.mojom
@@ -82,6 +82,9 @@ struct TrustedUrlRequestParams {
@@ -73,6 +73,9 @@ struct TrustedUrlRequestParams {
// client which should not be able to see them.
bool include_request_cookies_with_response = false;
@ -112,10 +112,10 @@ index 5c4b8a05034f8defacbc13671fe9bc92f76ade5a..e7390e01f113755613f42d592b36108b
string mime_type;
diff --git a/services/network/url_loader.cc b/services/network/url_loader.cc
index bbfe238fe3ab1f33e59200d730bebbcb1717942d..24edf310e07eee64d596190a815f125db7cdb769 100644
index d8d746faec7d3251835b8c8d070940bdfb5c4b6a..d5b54e9e4d4969199c4ad7a08bd384009e221743 100644
--- a/services/network/url_loader.cc
+++ b/services/network/url_loader.cc
@@ -667,6 +667,9 @@ URLLoader::URLLoader(
@@ -666,6 +666,9 @@ URLLoader::URLLoader(
mojo::SimpleWatcher::ArmingPolicy::MANUAL,
base::SequencedTaskRunner::GetCurrentDefault()),
per_factory_orb_state_(context.GetMutableOrbState()),
@ -125,7 +125,7 @@ index bbfe238fe3ab1f33e59200d730bebbcb1717942d..24edf310e07eee64d596190a815f125d
devtools_request_id_(request.devtools_request_id),
options_(PopulateOptions(options,
factory_params_->is_orb_enabled,
@@ -964,7 +967,7 @@ void URLLoader::ConfigureRequest(
@@ -963,7 +966,7 @@ void URLLoader::ConfigureRequest(
&URLLoader::IsSharedDictionaryReadAllowed, base::Unretained(this)));
}
@ -134,7 +134,7 @@ index bbfe238fe3ab1f33e59200d730bebbcb1717942d..24edf310e07eee64d596190a815f125d
url_request_->SetResponseHeadersCallback(base::BindRepeating(
&URLLoader::SetRawResponseHeaders, base::Unretained(this)));
}
@@ -2061,6 +2064,19 @@ void URLLoader::OnResponseStarted(net::URLRequest* url_request, int net_error) {
@@ -2036,6 +2039,19 @@ void URLLoader::OnResponseStarted(net::URLRequest* url_request, int net_error) {
}
response_ = BuildResponseHead();
@ -155,10 +155,10 @@ index bbfe238fe3ab1f33e59200d730bebbcb1717942d..24edf310e07eee64d596190a815f125d
// Parse and remove the Trust Tokens response headers, if any are expected,
diff --git a/services/network/url_loader.h b/services/network/url_loader.h
index c686201037c54d67c151b89887d6dfcd5201331a..3a20576c0ac9013e817f35e0b93feca21fcb4a7c 100644
index 6dc9341df6fcdaff1dcefc8d7d1e2be27f9bd3ce..da41999306bdc47743b74f4e73a7a8ca62b3d907 100644
--- a/services/network/url_loader.h
+++ b/services/network/url_loader.h
@@ -716,6 +716,8 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) URLLoader
@@ -714,6 +714,8 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) URLLoader
std::unique_ptr<ResourceScheduler::ScheduledResourceRequest>
resource_scheduler_request_handle_;

View file

@ -20,7 +20,7 @@ This patch will be removed when the deprecated sync api support is
removed.
diff --git a/components/permissions/permission_util.cc b/components/permissions/permission_util.cc
index 0265815ae3b300c1c0637686e212d3a1c55fdd1b..eb7ea287de24a2563604e639de3bb783d80d98eb 100644
index fa509af4793bc92cd6fe2ac937b3bc457b3e69a0..2c7ccc0f347b2cbca8662990d6a2617fb425bd07 100644
--- a/components/permissions/permission_util.cc
+++ b/components/permissions/permission_util.cc
@@ -384,6 +384,7 @@ ContentSettingsType PermissionUtil::PermissionTypeToContentSettingsTypeSafe(

View file

@ -14,7 +14,7 @@ This patch likely can't be upstreamed as-is, as Chromium doesn't have
this use case in mind currently.
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc
index b025c3a6c3d2cf3cec6f2a09061ec7223dd0861e..da086aa1596ae4e9848ee95a0efe26bbbcbb6bf8 100644
index 3d1397ff82803c9ba45bdcee0b2c61ab5c8049a4..1e6a6715691e07c22202d865dce89c94b3e02d76 100644
--- a/ui/views/win/hwnd_message_handler.cc
+++ b/ui/views/win/hwnd_message_handler.cc
@@ -932,13 +932,13 @@ void HWNDMessageHandler::FrameTypeChanged() {

View file

@ -152,10 +152,10 @@ index 5ad01788be680f005f3179141995aef72e36bd0c..da05b9ee80d537cfa5e039f1e1a46696
// Check if the origin has been visited more than a day ago and whether it's
// on an allowlist, then record those bits of information in a metric.
diff --git a/chrome/browser/ui/exclusive_access/fullscreen_controller.h b/chrome/browser/ui/exclusive_access/fullscreen_controller.h
index 3c7a057de47b35217a6b06a21630bf5f8961f935..9f2493ed7319e730d6064f873d1f5ed3a61cbdeb 100644
index 7fdf883310b13e3334ba007580a1a4287d49d592..d7c2bdaa08cae1645bf52f1d9b9d84b1cdb78c66 100644
--- a/chrome/browser/ui/exclusive_access/fullscreen_controller.h
+++ b/chrome/browser/ui/exclusive_access/fullscreen_controller.h
@@ -253,10 +253,12 @@ class FullscreenController : public ExclusiveAccessControllerBase {
@@ -250,10 +250,12 @@ class FullscreenController : public ExclusiveAccessControllerBase {
// Used in testing to set the state to tab fullscreen.
bool is_tab_fullscreen_for_testing_ = false;

View file

@ -12,10 +12,10 @@ ui problems (like dissapearing popup during typing in html's
input list.
diff --git a/ui/views/widget/widget.h b/ui/views/widget/widget.h
index 37522f51d0c98120b9161bd25cb85cb6e2cd518b..0abe6f9be010a6ec93d28183c674374d88759d97 100644
index 95fb3d4996e91b84fc5f1438e35e7293cb672891..255cd7359cfb3a273edbca4bf238c36ca5d0577b 100644
--- a/ui/views/widget/widget.h
+++ b/ui/views/widget/widget.h
@@ -1171,6 +1171,8 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate,
@@ -1201,6 +1201,8 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate,
// True if widget was created in headless mode.
bool is_headless() const { return is_headless_; }

View file

@ -11,7 +11,7 @@ enlarge window above dimensions set during creation of the
BrowserWindow.
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc
index ebce632954ae08535eec9565ca4a908f38410daa..5c4719e1f2084f9d1b99f12b614396f68a3903aa 100644
index 2aa793660fa963b719c2d7ee71ddf4698744d34c..eddd85cfcfa0ca85bfee0fab1ae217e1b567b21a 100644
--- a/ui/views/win/hwnd_message_handler.cc
+++ b/ui/views/win/hwnd_message_handler.cc
@@ -3745,15 +3745,30 @@ void HWNDMessageHandler::SizeWindowToAspectRatio(UINT param,

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.
diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc
index 27c692d5c1ddf7493f6b35a9428b60c58f50f288..475ef0da92dc55abd2014c14616527d97d931ec0 100644
index 5d6118daf956254c7f22d600560af62aba9d1cba..534207b506f2068c94e59e0c05476bfdbcefab91 100644
--- a/content/browser/renderer_host/navigation_request.cc
+++ b/content/browser/renderer_host/navigation_request.cc
@@ -10886,6 +10886,12 @@ NavigationRequest::GetOriginForURLLoaderFactoryUncheckedWithDebugInfo() {
@@ -10946,6 +10946,12 @@ NavigationRequest::GetOriginForURLLoaderFactoryUncheckedWithDebugInfo() {
"blob");
}
@ -45,10 +45,10 @@ index 27c692d5c1ddf7493f6b35a9428b60c58f50f288..475ef0da92dc55abd2014c14616527d9
// origin of |common_params.url| and/or |common_params.initiator_origin|.
url::Origin resolved_origin = url::Origin::Resolve(
diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_party/blink/renderer/core/loader/document_loader.cc
index 4381454af08832a428dad1dba46f317a5ff91124..80fbd403a2f5e6c60abc8b88a348647e491e454f 100644
index cbf8b2ed5ce03a3b4524f4e7f97bbb7750e5c583..b84bdff826390234f470025edba02abddefff045 100644
--- a/third_party/blink/renderer/core/loader/document_loader.cc
+++ b/third_party/blink/renderer/core/loader/document_loader.cc
@@ -2313,6 +2313,10 @@ Frame* DocumentLoader::CalculateOwnerFrame() {
@@ -2325,6 +2325,10 @@ Frame* DocumentLoader::CalculateOwnerFrame() {
scoped_refptr<SecurityOrigin> DocumentLoader::CalculateOrigin(
Document* owner_document) {
scoped_refptr<SecurityOrigin> origin;
@ -59,7 +59,7 @@ index 4381454af08832a428dad1dba46f317a5ff91124..80fbd403a2f5e6c60abc8b88a348647e
StringBuilder debug_info_builder;
// Whether the origin is newly created within this call, instead of copied
// from an existing document's origin or from `origin_to_commit_`. If this is
@@ -2366,6 +2370,10 @@ scoped_refptr<SecurityOrigin> DocumentLoader::CalculateOrigin(
@@ -2378,6 +2382,10 @@ scoped_refptr<SecurityOrigin> DocumentLoader::CalculateOrigin(
// the end of this function.
origin = origin_to_commit_;
debug_info_builder.Append("use_origin_to_commit");

View file

@ -3,74 +3,50 @@ From: Shelley Vohr <shelley.vohr@gmail.com>
Date: Mon, 17 Jan 2022 23:47:54 +0100
Subject: fix: crash when saving edited PDF files
This commit fixes a crash that persists any time a user attempts to
download an edited PDF. This was happening because the logic flow for
downloading of any edited PDF triggers a call to
chrome.fileSystem.chooseEntry, which we do not support and which
therefore causes unmapped page access crashes.
Originally, this patch contained a code change. Since then, the code has
been upstreamed[1] but placed behind a flag. This patch now enables the
flag by default, therefore using the code fix from the original patch.
This patch can be removed should we choose to support chrome.fileSystem
or support it enough to fix the crash.
This flag will eventually be removed and the original code fix will be
all that is left behind. When that happens, this patch will be safe to
remove.
[1]: https://chromium-review.googlesource.com/c/chromium/src/+/6205762
Original patch description:
> This commit fixes a crash that persists any time a user attempts to
> download an edited PDF. This was happening because the logic flow for
> downloading of any edited PDF triggers a call to
> chrome.fileSystem.chooseEntry, which we do not support and which
> therefore causes unmapped page access crashes.
>
> This patch can be removed should we choose to support chrome.fileSystem
> or support it enough to fix the crash.
diff --git a/chrome/browser/resources/pdf/pdf_viewer.ts b/chrome/browser/resources/pdf/pdf_viewer.ts
index 26391c1965a83aa646db3ef9dbb6cb72fd564933..a3480ba54553406dc3576caefc814d854a9db21d 100644
index 0bab3a5c852357bb6dc7758e573093a080e06b79..594d168331eba048b4bc5d25ad6f6834e2e88360 100644
--- a/chrome/browser/resources/pdf/pdf_viewer.ts
+++ b/chrome/browser/resources/pdf/pdf_viewer.ts
@@ -1108,29 +1108,27 @@ export class PdfViewerElement extends PdfViewerBaseElement {
dataArray = [result.dataToSave];
}
@@ -269,7 +269,7 @@ export class PdfViewerElement extends PdfViewerBaseElement {
// <if expr="enable_pdf_ink2">
protected pdfInk2Enabled_: boolean = false;
// </if>
- private pdfUseShowSaveFilePicker_: boolean = false;
+ private pdfUseShowSaveFilePicker_: boolean = true;
private pluginController_: PluginController = PluginController.getInstance();
protected printingEnabled_: boolean = false;
// <if expr="enable_pdf_ink2">
diff --git a/pdf/pdf_features.cc b/pdf/pdf_features.cc
index 387174b3ee8aa39f0e3c4c67274e8c6b738c889f..a8ee6d48009de8fb10eff8689a694ac2e60a3723 100644
--- a/pdf/pdf_features.cc
+++ b/pdf/pdf_features.cc
@@ -55,7 +55,7 @@ BASE_FEATURE(kPdfTags, "PdfTags", base::FEATURE_DISABLED_BY_DEFAULT);
- const blob = new Blob(dataArray);
const fileName = this.attachments_[index].name;
- // TODO(crbug.com/373852607): Update to `showSaveFilePicker`.
- chrome.fileSystem.chooseEntry(
- {type: 'saveFile', suggestedName: fileName},
- (entry?: FileSystemFileEntry) => {
- if (chrome.runtime.lastError) {
- if (chrome.runtime.lastError.message !== 'User cancelled') {
- console.error(
- 'chrome.fileSystem.chooseEntry failed: ' +
- chrome.runtime.lastError.message);
- }
- return;
- }
- entry!.createWriter((writer: FileWriter) => {
- writer.write(blob);
- // <if expr="enable_ink">
- // Unblock closing the window now that the user has saved
- // successfully.
- this.setShowBeforeUnloadDialog_(false);
- // </if>
- });
- });
+ const blob = new Blob(dataArray);
+
+ try {
+ const fileHandle = await window.showSaveFilePicker({
+ suggestedName: fileName,
+ });
+
+ const writable = await fileHandle.createWritable();
+ await writable.write(blob);
+ await writable.close();
+ // <if expr="enable_ink">
+ // Unblock closing the window now that the user has saved
+ // successfully.
+ this.setShowBeforeUnloadDialog_(false);
+ // </if>
+ } catch (error: any) {
+ if (error.name !== 'AbortError') {
+ console.error('window.showSaveFilePicker failed: ' + error);
+ }
+ }
}
BASE_FEATURE(kPdfUseShowSaveFilePicker,
"PdfUseShowSaveFilePicker",
- base::FEATURE_DISABLED_BY_DEFAULT);
+ base::FEATURE_ENABLED_BY_DEFAULT);
/**
@@ -1340,7 +1338,6 @@ export class PdfViewerElement extends PdfViewerBaseElement {
fileName = fileName + '.pdf';
}
- // Create blob before callback to avoid race condition.
const blob = new Blob([result.dataToSave], {type: 'application/pdf'});
// TODO(crbug.com/373852607): When OOPIF PDF is enabled, cross origin
// checks block the request for `showSaveFilePicker`. Fix the issue by
BASE_FEATURE(kPdfUseSkiaRenderer,
"PdfUseSkiaRenderer",

View file

@ -12,10 +12,10 @@ invisible state of the `viz::DisplayScheduler` owned
by the `ui::Compositor`.
diff --git a/ui/compositor/compositor.cc b/ui/compositor/compositor.cc
index 1a09cf7c2a02c6aef48d149285ffcad7b76fc15b..2955d6f06fc2307a569bdf2754d69b9fd974fc2b 100644
index 12cf38959be01d05cd43a9635ac87538c4f5e5ad..1a2a1bb5480085432c9575a90fb6959b9d0eac87 100644
--- a/ui/compositor/compositor.cc
+++ b/ui/compositor/compositor.cc
@@ -340,7 +340,8 @@ void Compositor::SetLayerTreeFrameSink(
@@ -350,7 +350,8 @@ void Compositor::SetLayerTreeFrameSink(
if (display_private_) {
disabled_swap_until_resize_ = false;
display_private_->Resize(size());
@ -25,7 +25,7 @@ index 1a09cf7c2a02c6aef48d149285ffcad7b76fc15b..2955d6f06fc2307a569bdf2754d69b9f
display_private_->SetDisplayColorSpaces(display_color_spaces_);
display_private_->SetDisplayColorMatrix(
gfx::SkM44ToTransform(display_color_matrix_));
@@ -560,7 +561,9 @@ void Compositor::SetVisible(bool visible) {
@@ -570,7 +571,9 @@ void Compositor::SetVisible(bool visible) {
// updated then. We need to call this even if the visibility hasn't changed,
// for the same reason.
if (display_private_)
@ -36,7 +36,7 @@ index 1a09cf7c2a02c6aef48d149285ffcad7b76fc15b..2955d6f06fc2307a569bdf2754d69b9f
if (changed) {
observer_list_.Notify(&CompositorObserver::OnCompositorVisibilityChanged,
@@ -1013,6 +1016,15 @@ void Compositor::MaybeUpdateObserveBeginFrame() {
@@ -1023,6 +1026,15 @@ void Compositor::MaybeUpdateObserveBeginFrame() {
host_begin_frame_observer_->GetBoundRemote());
}
@ -53,10 +53,10 @@ index 1a09cf7c2a02c6aef48d149285ffcad7b76fc15b..2955d6f06fc2307a569bdf2754d69b9f
void Compositor::SetSeamlessRefreshRates(
const std::vector<float>& seamless_refresh_rates) {
diff --git a/ui/compositor/compositor.h b/ui/compositor/compositor.h
index 8b983f7b7f921674d22afeccb7e9aee9be7eb249..29d6a3125b3d7f2946b3b319c48e71d87caac68b 100644
index 8e1e8c3eb1c23a6b8dcb006154ab36b91e6bcc04..962e807c07365015b964c9b6361035d27ec8e4ae 100644
--- a/ui/compositor/compositor.h
+++ b/ui/compositor/compositor.h
@@ -509,6 +509,10 @@ class COMPOSITOR_EXPORT Compositor : public base::PowerSuspendObserver,
@@ -511,6 +511,10 @@ class COMPOSITOR_EXPORT Compositor : public base::PowerSuspendObserver,
const cc::LayerTreeSettings& GetLayerTreeSettings() const;
@ -67,7 +67,7 @@ index 8b983f7b7f921674d22afeccb7e9aee9be7eb249..29d6a3125b3d7f2946b3b319c48e71d8
size_t saved_events_metrics_count_for_testing() const {
return host_->saved_events_metrics_count_for_testing();
}
@@ -678,6 +682,12 @@ class COMPOSITOR_EXPORT Compositor : public base::PowerSuspendObserver,
@@ -684,6 +688,12 @@ class COMPOSITOR_EXPORT Compositor : public base::PowerSuspendObserver,
// See go/report-ux-metrics-at-painting for details.
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.
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 50f1b8711f7e9bd0aa31ba29f7e7be45eed2647c..869f36e70c48e80a0606d156f33fe05ce2ed5464 100644
index ea4646388c4747438ddd7a9164a9e61091679c28..5aded14b616e70ac98e0daa7ff94ec4294409950 100644
--- a/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 @@
@ -39,7 +39,7 @@ index 50f1b8711f7e9bd0aa31ba29f7e7be45eed2647c..869f36e70c48e80a0606d156f33fe05c
// Returns true if a document picture-in-picture window should be focused upon
// opening it.
bool ShouldFocusPictureInPictureWindow(const NavigateParams& params) {
@@ -190,7 +193,7 @@ bool PictureInPictureWindowManager::ExitPictureInPictureViaWindowUi(
@@ -196,7 +199,7 @@ bool PictureInPictureWindowManager::ExitPictureInPictureViaWindowUi(
return false;
}
@ -48,7 +48,7 @@ index 50f1b8711f7e9bd0aa31ba29f7e7be45eed2647c..869f36e70c48e80a0606d156f33fe05c
// The user manually closed the pip window, so let the tab helper know in case
// the auto-pip permission dialog was visible.
if (auto* tab_helper = AutoPictureInPictureTabHelper::FromWebContents(
@@ -386,7 +389,7 @@ gfx::Size PictureInPictureWindowManager::GetMaximumWindowSize(
@@ -401,7 +404,7 @@ gfx::Size PictureInPictureWindowManager::GetMaximumWindowSize(
// static
void PictureInPictureWindowManager::SetWindowParams(NavigateParams& params) {
@ -57,7 +57,7 @@ index 50f1b8711f7e9bd0aa31ba29f7e7be45eed2647c..869f36e70c48e80a0606d156f33fe05c
// Always show document picture-in-picture in a new window. When this is
// not opened via the AutoPictureInPictureTabHelper, focus the window.
params.window_action = ShouldFocusPictureInPictureWindow(params)
@@ -474,6 +477,7 @@ PictureInPictureWindowManager::GetOverlayView(
@@ -493,6 +496,7 @@ PictureInPictureWindowManager::GetOverlayView(
return nullptr;
}
@ -65,7 +65,7 @@ index 50f1b8711f7e9bd0aa31ba29f7e7be45eed2647c..869f36e70c48e80a0606d156f33fe05c
// It would be nice to create this in `EnterPictureInPicture*`, but detecting
// auto-pip while pip is in the process of opening doesn't work.
//
@@ -512,6 +516,8 @@ PictureInPictureWindowManager::GetOverlayView(
@@ -531,6 +535,8 @@ PictureInPictureWindowManager::GetOverlayView(
}
return overlay_view;

View file

@ -9,7 +9,7 @@ focus node change via TextInputManager.
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
index 47d375776347948b08702b733f5a5d051d63c015..6929dcb6a77b914aabad16f36baac4ff8fdd61c4 100644
index 09a67ee96d89df82f14c4b10e2cf856feece66eb..d29c91350cc7b1c77b8159ddbb4af97bfcbfc655 100644
--- a/content/browser/renderer_host/render_widget_host_view_aura.cc
+++ b/content/browser/renderer_host/render_widget_host_view_aura.cc
@@ -3212,6 +3212,12 @@ void RenderWidgetHostViewAura::OnTextSelectionChanged(
@ -87,10 +87,10 @@ index 51522e60d6dc14f1113cc438558b6b393c3fe73a..153ed02f493a83ef9ca354cc18736f93
// 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
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 5511e34ec19a1adf99086a33930ae0266b7b8099..e0dbe46268a7dfeb9d496e7436bf1e474855bbda 100644
index 64dfb39220d2f660873a17ebb210bddde45c8a7f..f6053a947b07c8e1d60d33371cef35d2f35e7fae 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -9658,7 +9658,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame(
@@ -9672,7 +9672,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame(
"WebContentsImpl::OnFocusedElementChangedInFrame",
"render_frame_host", frame);
RenderWidgetHostViewBase* root_view =

View file

@ -18,7 +18,7 @@ or resizing, but Electron does not seem to run into that issue
for opaque frameless windows even with that block commented out.
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc
index a1c0da5b4fefad8b2692cbe04d2d183c07230985..b025c3a6c3d2cf3cec6f2a09061ec7223dd0861e 100644
index b33728cb13d07ad0805379ff2cf8f734b6cbf7cf..3d1397ff82803c9ba45bdcee0b2c61ab5c8049a4 100644
--- a/ui/views/win/hwnd_message_handler.cc
+++ b/ui/views/win/hwnd_message_handler.cc
@@ -1786,7 +1786,23 @@ LRESULT HWNDMessageHandler::OnCreate(CREATESTRUCT* create_struct) {

View file

@ -6,7 +6,7 @@ Subject: fix: remove profiles from spellcheck_service
Electron doesn't support profiles.
diff --git a/chrome/browser/spellchecker/spellcheck_service.cc b/chrome/browser/spellchecker/spellcheck_service.cc
index b8d19927b6fe007f1db2413a2574e39b6d6c3500..b7910913d8ced30ad36062f63b4d6105140f8219 100644
index 979630ba7ffe84d78804a02b832ce7787aecf2d9..3b1cdaab5d3229c802c8da53a4fa17a464978391 100644
--- a/chrome/browser/spellchecker/spellcheck_service.cc
+++ b/chrome/browser/spellchecker/spellcheck_service.cc
@@ -21,8 +21,10 @@

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
diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc
index 65978e2ebbd31ee9b735a689c751681c155833e7..3abe6e0fdd326e268ace85a520118239fb8fee42 100644
index 1e070456871df94dc4d6d443f853b351495d27bd..9eb51022846be4e48e2f2841cb59e7d387ea72d3 100644
--- a/content/browser/renderer_host/render_widget_host_impl.cc
+++ b/content/browser/renderer_host/render_widget_host_impl.cc
@@ -2074,9 +2074,8 @@ RenderWidgetHostImpl::GetWidgetInputHandler() {
@@ -2078,9 +2078,8 @@ RenderWidgetHostImpl::GetWidgetInputHandler() {
void RenderWidgetHostImpl::NotifyScreenInfoChanged() {
// 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

View file

@ -20,7 +20,7 @@ index 78b7f442e9ce0776b806c352f5ff8f38b4f87bf4..ed96d2d7f0aed6a0c87d2371bccd96c0
injector_->ExpectsResults(), injector_->ShouldWaitForPromise());
}
diff --git a/third_party/blink/public/web/web_local_frame.h b/third_party/blink/public/web/web_local_frame.h
index 9f660e8011cd46e164364dcfc786bdc5deb2387a..af9036bd2224d6d25d4046a507ffbec70f4d5394 100644
index a94b2a36c8fe789f9f2c5a7f6553d375f2783275..0e9b778184e78c639638a763a5523ded53a2b41c 100644
--- a/third_party/blink/public/web/web_local_frame.h
+++ b/third_party/blink/public/web/web_local_frame.h
@@ -459,6 +459,7 @@ class BLINK_EXPORT WebLocalFrame : public WebFrame {
@ -32,10 +32,10 @@ index 9f660e8011cd46e164364dcfc786bdc5deb2387a..af9036bd2224d6d25d4046a507ffbec7
mojom::WantResultOption,
mojom::PromiseResultOption) = 0;
diff --git a/third_party/blink/public/web/web_script_execution_callback.h b/third_party/blink/public/web/web_script_execution_callback.h
index cba373664bec3a32abad6fe0396bd67b53b7e67f..7a985067b1371604644d48159f2f5aa7a7abb88d 100644
index cba373664bec3a32abad6fe0396bd67b53b7e67f..a54f1b3351efd2d8f324436f7f35cd4344bbcbf0 100644
--- a/third_party/blink/public/web/web_script_execution_callback.h
+++ b/third_party/blink/public/web/web_script_execution_callback.h
@@ -14,8 +14,17 @@ class TimeTicks;
@@ -14,6 +14,12 @@ class TimeTicks;
class Value;
}
@ -47,24 +47,19 @@ index cba373664bec3a32abad6fe0396bd67b53b7e67f..7a985067b1371604644d48159f2f5aa7
+
namespace blink {
+template <typename T>
+class WebVector;
+
// Non-nullopt `base::Value` is passed to the callback if
// -`WantResultOption::kWantResult` or
// `WantResultOption::kWantResultDateAndRegexpAllowed` is used,
@@ -43,6 +52,9 @@ namespace blink {
@@ -43,6 +49,9 @@ namespace blink {
using WebScriptExecutionCallback =
base::OnceCallback<void(std::optional<base::Value>, base::TimeTicks)>;
+using WebScriptExecutionCallbackUnmodified =
+ base::OnceCallback<void(const WebVector<v8::Local<v8::Value>>&)>;
+ base::OnceCallback<void(const std::vector<v8::Local<v8::Value>>&)>;
+
} // namespace blink
#endif // THIRD_PARTY_BLINK_PUBLIC_WEB_WEB_SCRIPT_EXECUTION_CALLBACK_H_
diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc
index c87ebb8fb68dc8355c37066002148dc67fe9089f..a5e20c62e921bff41d3e17c734c1dc78647b0854 100644
index 137fd9845e72adbe8792207cb620caf7ec2a5bff..7a9dee2ca882b5abee8acd720face650150bd453 100644
--- a/third_party/blink/renderer/core/frame/local_frame.cc
+++ b/third_party/blink/renderer/core/frame/local_frame.cc
@@ -3136,6 +3136,7 @@ void LocalFrame::RequestExecuteScript(
@ -85,7 +80,7 @@ index c87ebb8fb68dc8355c37066002148dc67fe9089f..a5e20c62e921bff41d3e17c734c1dc78
void LocalFrame::SetEvictCachedSessionStorageOnFreezeOrUnload() {
diff --git a/third_party/blink/renderer/core/frame/local_frame.h b/third_party/blink/renderer/core/frame/local_frame.h
index d98eeebb3fff2f803e025ee8f2c30e9b749831b0..f638c1b56b3568dbc438440363505f860471afb0 100644
index 3feb24ec648ef98dd86d76ed9da55192ced42cb2..98b64770169bda80a10f15ba7cb6f223cf627f37 100644
--- a/third_party/blink/renderer/core/frame/local_frame.h
+++ b/third_party/blink/renderer/core/frame/local_frame.h
@@ -824,6 +824,7 @@ class CORE_EXPORT LocalFrame final
@ -109,7 +104,7 @@ index 223fe3d3bb6bdb829421b20f70eab803bacfa8f1..2eedd1e9744e687b21d094533e683ce2
wants_result
? mojom::blink::WantResultOption::kWantResultDateAndRegExpAllowed
diff --git a/third_party/blink/renderer/core/frame/pausable_script_executor.cc b/third_party/blink/renderer/core/frame/pausable_script_executor.cc
index 2b651a3e5043ff4c174986155a91e7f76d57a4ba..f736bd3f1b5014aa1373737b3d7678697ff2af4b 100644
index 9b344e09e545b4a24deb2272d0f093d551866f97..f4d0431f981b3c521c4ce0620886e0564efb3096 100644
--- a/third_party/blink/renderer/core/frame/pausable_script_executor.cc
+++ b/third_party/blink/renderer/core/frame/pausable_script_executor.cc
@@ -246,7 +246,7 @@ void PausableScriptExecutor::CreateAndRun(
@ -145,7 +140,7 @@ index 2b651a3e5043ff4c174986155a91e7f76d57a4ba..f736bd3f1b5014aa1373737b3d767869
+ // is permitted. Ensure a valid scope is present for the callback.
+ // See https://crbug.com/840719.
+ ScriptState::Scope script_scope(script_state_);
+ std::move(raw_callback_).Run(Vector<v8::Local<v8::Value>>());
+ std::move(raw_callback_).Run(std::vector<v8::Local<v8::Value>>());
+ }
Dispose();
}
@ -163,12 +158,16 @@ index 2b651a3e5043ff4c174986155a91e7f76d57a4ba..f736bd3f1b5014aa1373737b3d767869
user_activation_option_(user_activation_option),
blocking_option_(blocking_option),
want_result_option_(want_result_option),
@@ -423,6 +434,9 @@ void PausableScriptExecutor::HandleResults(
@@ -423,6 +434,13 @@ void PausableScriptExecutor::HandleResults(
std::move(callback_).Run(std::move(value), start_time_);
}
+ if (raw_callback_)
+ std::move(raw_callback_).Run(results);
+ if (raw_callback_) {
+ // TODO: use `v8::LocalVector` instead of `std::vector<v8::Local<...>>`
+ // (see https://crbug.com/40272194)
+ std::move(raw_callback_)
+ .Run(std::vector<v8::Local<v8::Value>>(results.begin(), results.end()));
+ }
+
Dispose();
}
@ -204,10 +203,10 @@ index fa65331f40b90d812b71a489fd560e9359152d2b..390714d631dc88ef92d59ef9618a5706
const mojom::blink::UserActivationOption user_activation_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
index 0f1842e750c1609c3d579ebfcb4512f7be91eebb..92e8d59d5cff55e1e9a3e2e35e7e27063b9bb763 100644
index c7ae64a16dbf0a15bb60276a2e1002d72621f889..28d375a355b31c6f764c3158e59487775a0354d5 100644
--- a/third_party/blink/renderer/core/frame/web_frame_test.cc
+++ b/third_party/blink/renderer/core/frame/web_frame_test.cc
@@ -290,6 +290,7 @@ void ExecuteScriptsInMainWorld(
@@ -297,6 +297,7 @@ void ExecuteScriptsInMainWorld(
DOMWrapperWorld::kMainWorldId, sources, user_gesture,
mojom::blink::EvaluationTiming::kSynchronous,
mojom::blink::LoadEventBlockingOption::kDoNotBlock, std::move(callback),
@ -216,7 +215,7 @@ index 0f1842e750c1609c3d579ebfcb4512f7be91eebb..92e8d59d5cff55e1e9a3e2e35e7e2706
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
index 82bc2805e99e127925896e26df573849a2a6cf5a..29da5fa351b900595a6f200e4a8b04d52841d825 100644
index 7618ee53a1ae224c7a9ddf9c11bcd61611c3f097..43e496a8e52c43e06b3b92ac9003d3948e6dedf1 100644
--- a/third_party/blink/renderer/core/frame/web_local_frame_impl.cc
+++ b/third_party/blink/renderer/core/frame/web_local_frame_impl.cc
@@ -1097,14 +1097,15 @@ void WebLocalFrameImpl::RequestExecuteScript(
@ -238,10 +237,10 @@ index 82bc2805e99e127925896e26df573849a2a6cf5a..29da5fa351b900595a6f200e4a8b04d5
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
index cbbfad651e8743435793acb4cec46fc070fcbb7a..a169f4643d36bd98f836db6abf4bffaca7977f2c 100644
index c3aea00b1b83f2483d8076da99bdaf71f67214d6..a6a04374722289060b4f9ccc159eaab39aa2a058 100644
--- a/third_party/blink/renderer/core/frame/web_local_frame_impl.h
+++ b/third_party/blink/renderer/core/frame/web_local_frame_impl.h
@@ -198,6 +198,7 @@ class CORE_EXPORT WebLocalFrameImpl final
@@ -196,6 +196,7 @@ class CORE_EXPORT WebLocalFrameImpl final
mojom::blink::EvaluationTiming,
mojom::blink::LoadEventBlockingOption,
WebScriptExecutionCallback,

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.
diff --git a/ui/views/controls/menu/menu_controller.cc b/ui/views/controls/menu/menu_controller.cc
index a7d34a7deae73c7e69b765568e4b48498ab9ed79..979b56aac6d1b272e573a23723ca81f7d7cff078 100644
index fb9d5cab9629fb58504f6c18082b759c47e31739..399d0b6dd0b4bf3e493570e14ad55a606d23dbf9 100644
--- a/ui/views/controls/menu/menu_controller.cc
+++ b/ui/views/controls/menu/menu_controller.cc
@@ -701,6 +701,14 @@ void MenuController::Run(Widget* parent,
@@ -700,6 +700,14 @@ void MenuController::Run(Widget* parent,
SetSelection(root, SELECTION_OPEN_SUBMENU | SELECTION_UPDATE_IMMEDIATELY);
}
@ -24,7 +24,7 @@ index a7d34a7deae73c7e69b765568e4b48498ab9ed79..979b56aac6d1b272e573a23723ca81f7
if (button_controller) {
pressed_lock_ = button_controller->TakeLock(
false, ui::LocatedEvent::FromIfValid(event));
@@ -2407,19 +2415,15 @@ void MenuController::OpenMenuImpl(MenuItemView* item, bool show) {
@@ -2399,19 +2407,15 @@ void MenuController::OpenMenuImpl(MenuItemView* item, bool show) {
}
item->GetSubmenu()->ShowAt(params);

View file

@ -6,10 +6,10 @@ Subject: frame_host_manager.patch
Allows embedder to intercept site instances created by chromium.
diff --git a/content/browser/renderer_host/render_frame_host_manager.cc b/content/browser/renderer_host/render_frame_host_manager.cc
index 85216c18185015b810031d51a86259ced47c677b..541e7343ec78ed51b0f20abd28764c3e8c49e01b 100644
index d6c91f23000c5a15d791560f91a5aa235f2701c7..bf0e2979cf1534b9f72bb44c3e51fa5a41e49566 100644
--- a/content/browser/renderer_host/render_frame_host_manager.cc
+++ b/content/browser/renderer_host/render_frame_host_manager.cc
@@ -4690,6 +4690,9 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest(
@@ -4693,6 +4693,9 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest(
request->ResetStateForSiteInstanceChange();
}
@ -20,10 +20,10 @@ index 85216c18185015b810031d51a86259ced47c677b..541e7343ec78ed51b0f20abd28764c3e
}
diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h
index e2381c3627b7c60db0064069d9cc18e7dabd6545..9f034cc522859d5ae8b699fe239382562d78d242 100644
index 7988eae8421eb3c9079e449b25da2f9e52c31ffc..16fff107a0f658d78ce38935820f5ac6a923c129 100644
--- a/content/public/browser/content_browser_client.h
+++ b/content/public/browser/content_browser_client.h
@@ -342,6 +342,11 @@ class CONTENT_EXPORT ContentBrowserClient {
@@ -344,6 +344,11 @@ class CONTENT_EXPORT ContentBrowserClient {
virtual ~ContentBrowserClient() = default;

View file

@ -6,10 +6,10 @@ Subject: gritsettings_resource_ids.patch
Add electron resources file to the list of resource ids generation.
diff --git a/tools/gritsettings/resource_ids.spec b/tools/gritsettings/resource_ids.spec
index fea8b86cae0b505c931190842da4db0467dfa464..cdb4946fb8fe90f334734d72db3b87e258da81c9 100644
index fa55d3f60a0d4d2293409fd700365864908a76b7..259e2092676b5b75eafc9920f6d0cfe32b32cf4a 100644
--- a/tools/gritsettings/resource_ids.spec
+++ b/tools/gritsettings/resource_ids.spec
@@ -1440,6 +1440,11 @@
@@ -1451,6 +1451,11 @@
"<(SHARED_INTERMEDIATE_DIR)/third_party/blink/public/strings/permission_element_generated_strings.grd": {
"META": {"sizes": {"messages": [2000],}},
"messages": [10080],

View file

@ -11,10 +11,10 @@ If removing this patch causes no sync failures, it's safe to delete :+1:
Ref https://chromium-review.googlesource.com/c/chromium/src/+/2953903
diff --git a/tools/clang/scripts/update.py b/tools/clang/scripts/update.py
index 8e35b70e0aa6bcbc9ba97393da166541a8e93c1c..5eec04d3758b6ec2f324aeac90d84f1b1c50e97e 100755
index 741d4952055340590679c5661303e13c8c892e6e..d09bafac19bb5404241ec780937bb469a4869776 100755
--- a/tools/clang/scripts/update.py
+++ b/tools/clang/scripts/update.py
@@ -304,6 +304,8 @@ def GetDefaultHostOs():
@@ -305,6 +305,8 @@ def GetDefaultHostOs():
'win32': 'win',
}
default_host_os = _PLATFORM_HOST_OS_MAP.get(sys.platform, sys.platform)

View file

@ -9,7 +9,7 @@ but due to the nature of electron, we need to load the v8 snapshot
in the browser process.
diff --git a/content/app/content_main_runner_impl.cc b/content/app/content_main_runner_impl.cc
index 048398e75f78ca6bae0dca3553b69a61c7834178..460c1ac9484724605227553fe2ef3ea441857db7 100644
index 36e980b9fe901e41a73d85e373c0eb471ff7070d..6fd7e2dc34d676e2b00739935992172cb2ddb2cf 100644
--- a/content/app/content_main_runner_impl.cc
+++ b/content/app/content_main_runner_impl.cc
@@ -290,11 +290,8 @@ void LoadV8SnapshotFile(const base::CommandLine& command_line) {

View file

@ -9,10 +9,10 @@ be created for each child process, despite logs being redirected to a
file.
diff --git a/content/app/content_main.cc b/content/app/content_main.cc
index 6cb1ea690dce955bf460b08071338e248c147c76..e3649d3340d69690edb43509616a52acbaeb401a 100644
index 54dfbaa6df6939418acea2f539e899425f675f83..0304c4a009e53a2a5c457b432093656db5d8d946 100644
--- a/content/app/content_main.cc
+++ b/content/app/content_main.cc
@@ -319,16 +319,14 @@ NO_STACK_PROTECTOR int RunContentProcess(
@@ -324,16 +324,14 @@ NO_STACK_PROTECTOR int RunContentProcess(
#if BUILDFLAG(IS_WIN)
base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();

View file

@ -35,10 +35,10 @@ system font by checking if it's kCTFontPriorityAttribute is set to
system priority.
diff --git a/base/BUILD.gn b/base/BUILD.gn
index 99d5767a59455484f9c5c058e216654ad7780aac..5df91947dac1c23d3153d4b0b5aab3d735aa1ab5 100644
index 3934ff75fa9f0841d062f00e52a1ccb9af327177..a0c81d907db6143e11de04ebfa7f629c7e11911c 100644
--- a/base/BUILD.gn
+++ b/base/BUILD.gn
@@ -1031,6 +1031,7 @@ component("base") {
@@ -1028,6 +1028,7 @@ component("base") {
"//build:ios_buildflags",
"//build/config/compiler:compiler_buildflags",
"//third_party/modp_b64",
@ -141,18 +141,17 @@ index 1baeaec5125bbdc19dccbd18c8702f291ccc71ba..613c644eda45c7e4bf1a7a06dad6d8b4
if (options.disclaim_responsibility) {
DPSXCHECK(responsibility_spawnattrs_setdisclaim(attr.get(), 1));
}
diff --git a/base/process/process_info_mac.cc b/base/process/process_info_mac.cc
index 94a028be3c315edc0056408ab9ab41b6b001a1c1..abf9003bc71506d389ff77dc708c897113bba412 100644
--- a/base/process/process_info_mac.cc
+++ b/base/process/process_info_mac.cc
@@ -4,19 +4,27 @@
diff --git a/base/process/process_info_mac.mm b/base/process/process_info_mac.mm
index e12c1d078147d956a1d9b1bc498c1b1d6fe7b974..233362259dc4e728ed37435e650417647b45a6af 100644
--- a/base/process/process_info_mac.mm
+++ b/base/process/process_info_mac.mm
@@ -4,15 +4,20 @@
#include "base/process/process_info.h"
+#include "electron/mas.h"
+
#include <stdio.h>
#include <stdlib.h>
#import <AppKit/AppKit.h>
#include <unistd.h>
+#if !IS_MAS_BUILD()
@ -161,12 +160,31 @@ index 94a028be3c315edc0056408ab9ab41b6b001a1c1..abf9003bc71506d389ff77dc708c8971
}
+#endif
namespace {
+#if !IS_MAS_BUILD()
bool AppContainsBluetoothUsageDescription(NSRunningApplication* app) {
NSURL* bundle_url = app.bundleURL;
if (!bundle_url) {
@@ -24,12 +29,14 @@ bool AppContainsBluetoothUsageDescription(NSRunningApplication* app) {
[bundle objectForInfoDictionaryKey:@"NSBluetoothAlwaysUsageDescription"];
return bluetooth_entry != nil;
}
+#endif
} // namespace
namespace base {
bool IsProcessSelfResponsible() {
bool DoesResponsibleProcessHaveBluetoothMetadata() {
+#if !IS_MAS_BUILD()
const pid_t pid = getpid();
return responsibility_get_pid_responsible_for_pid(pid) == pid;
const pid_t responsible_pid = responsibility_get_pid_responsible_for_pid(pid);
// Returns true directly if this is a self-responsible app(e.g. Chrome opens
@@ -46,6 +53,9 @@ bool DoesResponsibleProcessHaveBluetoothMetadata() {
return AppContainsBluetoothUsageDescription(app);
}
return false;
+#else
+ return true;
+#endif
@ -199,7 +217,7 @@ index d87682447b850e4cf9065f0d26d14077acbe467d..a179c9bc02158130f4b15bf8022721f4
using crypto::AppleKeychain;
diff --git a/components/remote_cocoa/app_shim/BUILD.gn b/components/remote_cocoa/app_shim/BUILD.gn
index da8b246916811fbee1e63d0aa95be9fa3ae12bfb..3bcd78507a15bb12ffe71a5f67e756000ca2633a 100644
index ad40ddbbcb0fcfa070833ea6c0d01432bbb67768..df632da340c132f469f4f35738514763437e67fc 100644
--- a/components/remote_cocoa/app_shim/BUILD.gn
+++ b/components/remote_cocoa/app_shim/BUILD.gn
@@ -75,6 +75,7 @@ component("app_shim") {
@ -364,7 +382,7 @@ index d55914779bc097cab8afb144f2c47c001bfa7350..e55db3f550b4c082aa087fbcab6760da
// The NSWindow used by BridgedNativeWidget. Provides hooks into AppKit that
// can only be accomplished by overriding methods.
diff --git a/components/remote_cocoa/app_shim/native_widget_mac_nswindow.mm b/components/remote_cocoa/app_shim/native_widget_mac_nswindow.mm
index 2eba7ccc91d7689d48cd990635718bec4e3dc69c..5373ee02934f706386d3dd7c863766a6a7e8cc86 100644
index 03ff0478f16f237e6b8082508d5399195bfdca44..9b74f6ca6de6ec057073e175170014b5512040b4 100644
--- a/components/remote_cocoa/app_shim/native_widget_mac_nswindow.mm
+++ b/components/remote_cocoa/app_shim/native_widget_mac_nswindow.mm
@@ -26,6 +26,7 @@
@ -372,10 +390,10 @@ index 2eba7ccc91d7689d48cd990635718bec4e3dc69c..5373ee02934f706386d3dd7c863766a6
#import "components/remote_cocoa/app_shim/window_touch_bar_delegate.h"
#include "components/remote_cocoa/common/native_widget_ns_window_host.mojom.h"
+#include "electron/mas.h"
#include "ui/accessibility/platform/ax_platform_node.h"
#import "ui/base/cocoa/user_interface_item_command_handler.h"
#import "ui/base/cocoa/window_size_constants.h"
@@ -111,14 +112,18 @@ void OrderChildWindow(NSWindow* child_window,
@@ -112,14 +113,18 @@ void OrderChildWindow(NSWindow* child_window,
} // namespace
@ -394,7 +412,7 @@ index 2eba7ccc91d7689d48cd990635718bec4e3dc69c..5373ee02934f706386d3dd7c863766a6
- (BOOL)hasKeyAppearance;
- (long long)_resizeDirectionForMouseLocation:(CGPoint)location;
- (BOOL)_isConsideredOpenForPersistentState;
@@ -158,6 +163,8 @@ - (void)cr_mouseDownOnFrameView:(NSEvent*)event {
@@ -159,6 +164,8 @@ - (void)cr_mouseDownOnFrameView:(NSEvent*)event {
}
@end
@ -403,7 +421,7 @@ index 2eba7ccc91d7689d48cd990635718bec4e3dc69c..5373ee02934f706386d3dd7c863766a6
@implementation NativeWidgetMacNSWindowTitledFrame
- (void)mouseDown:(NSEvent*)event {
if (self.window.isMovable)
@@ -185,6 +192,8 @@ - (BOOL)usesCustomDrawing {
@@ -186,6 +193,8 @@ - (BOOL)usesCustomDrawing {
}
@end
@ -412,7 +430,7 @@ index 2eba7ccc91d7689d48cd990635718bec4e3dc69c..5373ee02934f706386d3dd7c863766a6
@implementation NativeWidgetMacNSWindow {
@private
CommandDispatcher* __strong _commandDispatcher;
@@ -382,6 +391,8 @@ - (NSAccessibilityRole)accessibilityRole {
@@ -383,6 +392,8 @@ - (NSAccessibilityRole)accessibilityRole {
// NSWindow overrides.
@ -421,7 +439,7 @@ index 2eba7ccc91d7689d48cd990635718bec4e3dc69c..5373ee02934f706386d3dd7c863766a6
+ (Class)frameViewClassForStyleMask:(NSWindowStyleMask)windowStyle {
if (windowStyle & NSWindowStyleMaskTitled) {
if (Class customFrame = [NativeWidgetMacNSWindowTitledFrame class])
@@ -393,6 +404,8 @@ + (Class)frameViewClassForStyleMask:(NSWindowStyleMask)windowStyle {
@@ -394,6 +405,8 @@ + (Class)frameViewClassForStyleMask:(NSWindowStyleMask)windowStyle {
return [super frameViewClassForStyleMask:windowStyle];
}
@ -431,7 +449,7 @@ index 2eba7ccc91d7689d48cd990635718bec4e3dc69c..5373ee02934f706386d3dd7c863766a6
bool shouldShowWindowTitle = YES;
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
index 3b8e96fbc7aa4cf1601230e81ff32cf9792be1da..6d8b41ffff28200daec6d554a5b7f1c792693105 100644
index 89aca4b47c202f137a5ffe8390986ef6dd62942a..59276806afa7659573eb276149ff8ed47ca72c1f 100644
--- a/components/remote_cocoa/app_shim/native_widget_ns_window_bridge.mm
+++ b/components/remote_cocoa/app_shim/native_widget_ns_window_bridge.mm
@@ -41,6 +41,7 @@
@ -456,7 +474,7 @@ index 3b8e96fbc7aa4cf1601230e81ff32cf9792be1da..6d8b41ffff28200daec6d554a5b7f1c7
// Beware: This view was briefly removed (in favor of a bare CALayer) in
// https://crrev.com/c/1236675. The ordering of unassociated layers relative
diff --git a/components/viz/service/BUILD.gn b/components/viz/service/BUILD.gn
index f43d8a8803b801c116fe3cea31839caddf57da28..8720a29e13ce052db99a6fb7925efd4b43472b9a 100644
index 3f1b98692d11116f965fe0eb7e4b6cae308a4f19..6ac941799bda10ce7f93612691a438018160a9dd 100644
--- a/components/viz/service/BUILD.gn
+++ b/components/viz/service/BUILD.gn
@@ -378,6 +378,7 @@ viz_component("service") {
@ -467,7 +485,7 @@ index f43d8a8803b801c116fe3cea31839caddf57da28..8720a29e13ce052db99a6fb7925efd4b
}
if (is_android || use_ozone) {
@@ -676,6 +677,7 @@ viz_source_set("unit_tests") {
@@ -678,6 +679,7 @@ viz_source_set("unit_tests") {
"display_embedder/software_output_device_mac_unittest.mm",
]
frameworks = [ "IOSurface.framework" ]
@ -527,7 +545,7 @@ index dbf334caa3a6d10017b69ad76802e389a011436b..da828823e8195cc9e497866363c9af93
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
index 038646bfa3ac442c64380a81bdb1d3043e50c107..33f2bcae6353a527710f05aa03770136e6039449 100644
index a76028eed0249244d0559de102a756e3b2771b63..cb65efb56849d57e2e656f90d5b1d737ba2d952d 100644
--- a/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 @@
@ -538,7 +556,7 @@ index 038646bfa3ac442c64380a81bdb1d3043e50c107..33f2bcae6353a527710f05aa03770136
#include "skia/ext/skia_utils_mac.h"
#include "third_party/blink/public/common/features.h"
#include "third_party/blink/public/mojom/input/input_handler.mojom.h"
@@ -2078,15 +2079,21 @@ - (NSAccessibilityRole)accessibilityRole {
@@ -2151,15 +2152,21 @@ - (NSAccessibilityRole)accessibilityRole {
// Since this implementation doesn't have to wait any IPC calls, this doesn't
// make any key-typing jank. --hbono 7/23/09
//
@ -561,10 +579,10 @@ index 038646bfa3ac442c64380a81bdb1d3043e50c107..33f2bcae6353a527710f05aa03770136
return kAttributes;
}
diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn
index 8a48699a703acd019a57916058bdd99a223306ff..6d2d9a41cfb20e469b33b9039b7ef7c293a5a400 100644
index 82518ae30b39aae406d5c142af60ae4c0829786b..84adb6a2163ea44fc36c8fa95057f2bbad757093 100644
--- a/content/browser/BUILD.gn
+++ b/content/browser/BUILD.gn
@@ -327,6 +327,7 @@ source_set("browser") {
@@ -329,6 +329,7 @@ source_set("browser") {
"//ui/touch_selection",
"//ui/webui/resources",
"//v8:v8_version",
@ -774,10 +792,10 @@ index a1068589ad844518038ee7bc15a3de9bc5cba525..1ff781c49f086ec8015c7d3c44567dbe
} // namespace content
diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn
index 23858defb34c7f40458b5ec6da337b95cdeb347f..08097629fbcd4e30860157523d91d0cf069b1f9a 100644
index 4b521179af8722f0a9917d1f925d9223b46e2c73..b3532822184507a2d37af607bd09aaff65fcb30f 100644
--- a/content/test/BUILD.gn
+++ b/content/test/BUILD.gn
@@ -647,6 +647,7 @@ static_library("test_support") {
@@ -652,6 +652,7 @@ static_library("test_support") {
"//url",
"//url/mojom:url_mojom_gurl",
"//v8",
@ -785,7 +803,7 @@ index 23858defb34c7f40458b5ec6da337b95cdeb347f..08097629fbcd4e30860157523d91d0cf
]
data_deps = [
@@ -1102,6 +1103,7 @@ static_library("browsertest_support") {
@@ -1107,6 +1108,7 @@ static_library("browsertest_support") {
}
configs += [ "//v8:external_startup_data" ]
@ -793,7 +811,7 @@ index 23858defb34c7f40458b5ec6da337b95cdeb347f..08097629fbcd4e30860157523d91d0cf
}
mojom("content_test_mojo_bindings") {
@@ -1912,6 +1914,7 @@ test("content_browsertests") {
@@ -1918,6 +1920,7 @@ test("content_browsertests") {
"//ui/shell_dialogs",
"//ui/snapshot",
"//ui/webui:test_support",
@ -801,7 +819,7 @@ index 23858defb34c7f40458b5ec6da337b95cdeb347f..08097629fbcd4e30860157523d91d0cf
]
if (!(is_chromeos && target_cpu == "arm64" && current_cpu == "arm")) {
@@ -3196,6 +3199,7 @@ test("content_unittests") {
@@ -3203,6 +3206,7 @@ test("content_unittests") {
"//ui/latency:test_support",
"//ui/shell_dialogs:shell_dialogs",
"//ui/webui:test_support",
@ -822,7 +840,7 @@ index 8779cf7cbbe2a583fda51867eaebc627f00bd4cd..98da1587fdc8cc8358a69db2b51d3982
# TODO(crbug.com/40139469): Blink test plugin must be migrated from PPAPI.
diff --git a/device/bluetooth/BUILD.gn b/device/bluetooth/BUILD.gn
index f2164b5fcc5282820b343df8bde70700374b81be..2a04f4f7f0f9203ebf57c8d1e12d127c8bf35527 100644
index af32815b302dff9750a1dcd83b6e03df7d5f2dc9..7f20a6affe68057eb51d3176d7a901c85cacf2e0 100644
--- a/device/bluetooth/BUILD.gn
+++ b/device/bluetooth/BUILD.gn
@@ -258,6 +258,7 @@ component("bluetooth") {
@ -834,7 +852,7 @@ index f2164b5fcc5282820b343df8bde70700374b81be..2a04f4f7f0f9203ebf57c8d1e12d127c
if (is_mac) {
diff --git a/device/bluetooth/bluetooth_adapter_mac.mm b/device/bluetooth/bluetooth_adapter_mac.mm
index fa86583a2d82c4076cfcf64cdc3f6bbb533b95d7..3e4bda0bc31431cb2cc0893d246be6bb54cfab83 100644
index 6431af67ab634cf23729b9102c189b2181cfd2cf..22040e1bfb96d810a2d8e62e44e4afbc684c8c06 100644
--- a/device/bluetooth/bluetooth_adapter_mac.mm
+++ b/device/bluetooth/bluetooth_adapter_mac.mm
@@ -38,7 +38,9 @@
@ -1374,7 +1392,7 @@ index eb81a70e4d5d5cd3e6ae9b45f8cd1c795ea76c51..9921ccb10d3455600eddd85f77f10228
} // namespace sandbox
diff --git a/third_party/blink/renderer/core/BUILD.gn b/third_party/blink/renderer/core/BUILD.gn
index af37f79916034980172a94f585ccc9458060c21c..f4838163122b2daf765380d92d2982227688e369 100644
index 076ae475b3c4f0d2568e5efc9fedf2de7ccc82ad..b961c9c000bbb82c5f6ae63466c6d5d679d92de6 100644
--- a/third_party/blink/renderer/core/BUILD.gn
+++ b/third_party/blink/renderer/core/BUILD.gn
@@ -409,6 +409,7 @@ component("core") {
@ -1418,7 +1436,7 @@ index 79501bed8f5853d5dacaaaf08af833b81f3babb7..d3d2759e0b6512ab01d1ef386f43468f
}
diff --git a/ui/accelerated_widget_mac/ca_layer_tree_coordinator.h b/ui/accelerated_widget_mac/ca_layer_tree_coordinator.h
index b11c365f42dd1ddc363de0d94c387b13ac65bef3..5da42beb20b514396287cc6dc5cba608e1660b2e 100644
index 4cbd3fc082ead782e64a950dd5314b1de7e550d5..0f4be1fa6b78c2340ebadb57a62cd47f9b10cebf 100644
--- a/ui/accelerated_widget_mac/ca_layer_tree_coordinator.h
+++ b/ui/accelerated_widget_mac/ca_layer_tree_coordinator.h
@@ -7,6 +7,7 @@
@ -1439,7 +1457,7 @@ index b11c365f42dd1ddc363de0d94c387b13ac65bef3..5da42beb20b514396287cc6dc5cba608
@class CALayer;
namespace ui {
@@ -110,7 +113,9 @@ class ACCELERATED_WIDGET_MAC_EXPORT CALayerTreeCoordinator {
@@ -108,7 +111,9 @@ class ACCELERATED_WIDGET_MAC_EXPORT CALayerTreeCoordinator {
// both the current tree and the pending trees.
size_t presented_ca_layer_trees_max_length_ = 2;
@ -1450,7 +1468,7 @@ index b11c365f42dd1ddc363de0d94c387b13ac65bef3..5da42beb20b514396287cc6dc5cba608
// The root CALayer to display the current frame. This does not change
// over the lifetime of the object.
diff --git a/ui/accelerated_widget_mac/ca_layer_tree_coordinator.mm b/ui/accelerated_widget_mac/ca_layer_tree_coordinator.mm
index fd4356bd9a81b01de51c59dcd6637be2b2d8b6ee..ffc0b4e8aaa186840905cfc8b9efcd77e31d7617 100644
index cfb80b21ada7f04ff615b0437403ac1c6c95bb14..34341007de140aba2e6eeb9d8e8de0ea492c2466 100644
--- a/ui/accelerated_widget_mac/ca_layer_tree_coordinator.mm
+++ b/ui/accelerated_widget_mac/ca_layer_tree_coordinator.mm
@@ -10,6 +10,7 @@
@ -1461,15 +1479,15 @@ index fd4356bd9a81b01de51c59dcd6637be2b2d8b6ee..ffc0b4e8aaa186840905cfc8b9efcd77
#include "ui/base/cocoa/animation_utils.h"
#include "ui/base/cocoa/remote_layer_api.h"
#include "ui/gfx/ca_layer_params.h"
@@ -33,6 +34,7 @@
new_presentation_feedback_timestamps_(
new_presentation_feedback_timestamps),
@@ -30,6 +31,7 @@
allow_av_sample_buffer_display_layer_(
allow_av_sample_buffer_display_layer),
buffer_presented_callback_(buffer_presented_callback) {
+#if !IS_MAS_BUILD()
if (allow_remote_layers_) {
root_ca_layer_ = [[CALayer alloc] init];
#if BUILDFLAG(IS_MAC)
@@ -61,6 +63,7 @@
@@ -58,6 +60,7 @@
#endif
ca_context_.layer = root_ca_layer_;
}
@ -1477,7 +1495,7 @@ index fd4356bd9a81b01de51c59dcd6637be2b2d8b6ee..ffc0b4e8aaa186840905cfc8b9efcd77
}
CALayerTreeCoordinator::~CALayerTreeCoordinator() = default;
@@ -164,9 +167,13 @@
@@ -161,9 +164,13 @@
TRACE_EVENT_INSTANT2("test_gpu", "SwapBuffers", TRACE_EVENT_SCOPE_THREAD,
"GLImpl", static_cast<int>(gl::GetGLImplementation()),
"width", pixel_size_.width());
@ -1616,10 +1634,10 @@ index c8171f0527fe5194f0ea73b57c4444d4c630fbc4..c2ac4da580e3e7f749a0a4de1e859af6
// Accessible object
if (AXElementWrapper::IsValidElement(value)) {
diff --git a/ui/base/BUILD.gn b/ui/base/BUILD.gn
index 90762aa4f4edcb2f965bdb48c72e4d19a0b49ba6..d4c8463a43c6f693f3646fe88aeda653ae389d05 100644
index 5ca4c8fc961d24985aa4e0459dc2c42003a5346f..2f5880d1d3fbc3aa1461bbe611c33f789a6f4dde 100644
--- a/ui/base/BUILD.gn
+++ b/ui/base/BUILD.gn
@@ -362,6 +362,13 @@ component("base") {
@@ -363,6 +363,13 @@ component("base") {
]
}
@ -1633,7 +1651,7 @@ index 90762aa4f4edcb2f965bdb48c72e4d19a0b49ba6..d4c8463a43c6f693f3646fe88aeda653
if (is_ios) {
sources += [
"device_form_factor_ios.mm",
@@ -512,6 +519,12 @@ component("base") {
@@ -514,6 +521,12 @@ component("base") {
"//url",
]
@ -1786,10 +1804,10 @@ index 29ae2da6a8a2c2a612dfb92f7f9c03ca5fa306b1..440c139a32a0c205e77b657d4aab6468
// Query the display's refresh rate.
if (@available(macos 12.0, *)) {
diff --git a/ui/gfx/BUILD.gn b/ui/gfx/BUILD.gn
index e912566bc5216474b9bdec4b5bcc8c15fb868346..f333ab59936359e84b361d3ee928a25ae37d59d1 100644
index 6cf9f1a38ed76edc8f64500476b4b3014dc7677f..54dcf71bd0bf5a1455b31f3d042305f0fc3e345b 100644
--- a/ui/gfx/BUILD.gn
+++ b/ui/gfx/BUILD.gn
@@ -329,6 +329,12 @@ component("gfx") {
@@ -331,6 +331,12 @@ component("gfx") {
"//ui/base:ui_data_pack",
]
@ -1898,7 +1916,7 @@ index 6a18c94e8c9d531ab3a59faf6027848caed8de57..63aa6b3ba824a3fa71c5a3db94b9ac5e
// Used to force the NSApplication's focused accessibility element to be the
// 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
index f7ddd05fd9a8165622ff45e182919a0588c53f80..0de4ff37eab3220a59ad1f90bcdd861170691fb5 100644
index 7e5047fabe59fb2773f13836145cfce64bc1a135..fed3d6a70139443d76ce6181df69bb490c46a081 100644
--- a/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 @@

View file

@ -7,10 +7,10 @@ This adds a callback from the network service that's used to implement
session.setCertificateVerifyCallback.
diff --git a/services/network/network_context.cc b/services/network/network_context.cc
index c7d30f24e077ca6da38c84623efd02b84f063541..1605a5d30f0e1db8e095ce325313a526d76678f2 100644
index 0fb8b2747662373e913689a83dfe985bf0f29073..20e6a7aec3702865916d8cd339e3a2caf1793917 100644
--- a/services/network/network_context.cc
+++ b/services/network/network_context.cc
@@ -159,6 +159,11 @@
@@ -158,6 +158,11 @@
#include "services/network/web_transport.h"
#include "url/gurl.h"
@ -22,7 +22,7 @@ index c7d30f24e077ca6da38c84623efd02b84f063541..1605a5d30f0e1db8e095ce325313a526
#if BUILDFLAG(IS_CT_SUPPORTED)
// gn check does not account for BUILDFLAG(). So, for iOS builds, it will
// complain about a missing dependency on the target exposing this header. Add a
@@ -599,6 +604,99 @@ void RecordHSTSPreconnectUpgradeReason(HSTSRedirectUpgradeReason reason) {
@@ -601,6 +606,99 @@ void RecordHSTSPreconnectUpgradeReason(HSTSRedirectUpgradeReason reason) {
} // namespace
@ -122,7 +122,7 @@ index c7d30f24e077ca6da38c84623efd02b84f063541..1605a5d30f0e1db8e095ce325313a526
constexpr uint32_t NetworkContext::kMaxOutstandingRequestsPerProcess;
NetworkContext::NetworkContextHttpAuthPreferences::
@@ -995,6 +1093,13 @@ void NetworkContext::SetClient(
@@ -997,6 +1095,13 @@ void NetworkContext::SetClient(
client_.Bind(std::move(client));
}
@ -136,7 +136,7 @@ index c7d30f24e077ca6da38c84623efd02b84f063541..1605a5d30f0e1db8e095ce325313a526
void NetworkContext::CreateURLLoaderFactory(
mojo::PendingReceiver<mojom::URLLoaderFactory> receiver,
mojom::URLLoaderFactoryParamsPtr params) {
@@ -2561,6 +2666,10 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext(
@@ -2568,6 +2673,10 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext(
cert_verifier = std::make_unique<net::CachingCertVerifier>(
std::make_unique<net::CoalescingCertVerifier>(
std::move(cert_verifier)));
@ -148,7 +148,7 @@ index c7d30f24e077ca6da38c84623efd02b84f063541..1605a5d30f0e1db8e095ce325313a526
builder.SetCertVerifier(IgnoreErrorsCertVerifier::MaybeWrapCertVerifier(
diff --git a/services/network/network_context.h b/services/network/network_context.h
index 34e2a5d2a66dbae4d589dc5a526033481511ecd1..e4e0962ac9d98899c332a954184f1bcc970a5d58 100644
index ca3412783e1e754d1d197f61532c84c12ac97d68..e1e6f9bf5ff44bcf5f71bae1ad43fbaf071851b1 100644
--- a/services/network/network_context.h
+++ b/services/network/network_context.h
@@ -113,6 +113,7 @@ class URLMatcher;
@ -168,7 +168,7 @@ index 34e2a5d2a66dbae4d589dc5a526033481511ecd1..e4e0962ac9d98899c332a954184f1bcc
void ResetURLLoaderFactories() override;
void GetViaObliviousHttp(
mojom::ObliviousHttpRequestPtr request,
@@ -932,6 +935,8 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext
@@ -935,6 +938,8 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext
std::vector<base::OnceClosure> dismount_closures_;
#endif // BUILDFLAG(IS_DIRECTORY_TRANSFER_REQUIRED)
@ -178,7 +178,7 @@ index 34e2a5d2a66dbae4d589dc5a526033481511ecd1..e4e0962ac9d98899c332a954184f1bcc
std::unique_ptr<HostResolver> internal_host_resolver_;
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
index b18f61d7261e22627a6fa2693849a6b392860965..1afd6b43182b54145e38898db16708b5d0b487ee 100644
index ca619101896f29cf2c2793c20968c17c11cd0bab..891a80b394671205765bddc622a12e1002c146ce 100644
--- a/services/network/public/mojom/network_context.mojom
+++ b/services/network/public/mojom/network_context.mojom
@@ -307,6 +307,17 @@ struct SocketBrokerRemotes {
@ -210,7 +210,7 @@ index b18f61d7261e22627a6fa2693849a6b392860965..1afd6b43182b54145e38898db16708b5
CreateURLLoaderFactory(
pending_receiver<URLLoaderFactory> url_loader_factory,
diff --git a/services/network/test/test_network_context.h b/services/network/test/test_network_context.h
index a8b1e362a81b678d163e4ed9455ecadec6084a1a..35076a426189b34f9d45bee37f7335815cab353b 100644
index 342dbfa64b8be6ad1777b7425302d5bb99e127e0..6b09b32c3a6206310baf87da0a2b4025d488fd09 100644
--- a/services/network/test/test_network_context.h
+++ b/services/network/test/test_network_context.h
@@ -63,6 +63,8 @@ class TestNetworkContext : public mojom::NetworkContext {

View file

@ -7,7 +7,7 @@ Pass RenderFrameHost through to PlatformNotificationService
so Electron can identify which renderer a notification came from.
diff --git a/chrome/browser/notifications/platform_notification_service_impl.cc b/chrome/browser/notifications/platform_notification_service_impl.cc
index 467093a364a78994b9f238d1d402c5cd1a585cd8..26302de0d7076615f8aefb36cdf599cbf9e8d10b 100644
index ec78c36d4541d9d34f2109b880109ebe3bc817f8..67d92005e53cccbc9a4ae8a0db9c2c6220a09d88 100644
--- a/chrome/browser/notifications/platform_notification_service_impl.cc
+++ b/chrome/browser/notifications/platform_notification_service_impl.cc
@@ -239,6 +239,7 @@ bool PlatformNotificationServiceImpl::WasClosedProgrammatically(
@ -133,10 +133,10 @@ index 05d3a12dd84c7005d46cc73b312f97ef418d96f5..4765de982802541b3efc7211d106acc7
const GURL& document_url,
const WeakDocumentPtr& weak_document_ptr,
diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
index 56765888c43ae4cd5da25d4447c6b74b542d8283..0358c48884b686e8d1da962c7d4e06e31de7bd8e 100644
index 2ad61dcfc289e20ee1c36540db17301450d37b8b..72f28e56f39561cb4832cb403d8e9c24e53ce133 100644
--- a/content/browser/renderer_host/render_process_host_impl.cc
+++ b/content/browser/renderer_host/render_process_host_impl.cc
@@ -2142,7 +2142,7 @@ void RenderProcessHostImpl::CreateNotificationService(
@@ -2156,7 +2156,7 @@ void RenderProcessHostImpl::CreateNotificationService(
case RenderProcessHost::NotificationServiceCreatorType::kSharedWorker:
case RenderProcessHost::NotificationServiceCreatorType::kDedicatedWorker: {
storage_partition_impl_->GetPlatformNotificationContext()->CreateService(
@ -145,7 +145,7 @@ index 56765888c43ae4cd5da25d4447c6b74b542d8283..0358c48884b686e8d1da962c7d4e06e3
creator_type, std::move(receiver));
break;
}
@@ -2150,7 +2150,7 @@ void RenderProcessHostImpl::CreateNotificationService(
@@ -2164,7 +2164,7 @@ void RenderProcessHostImpl::CreateNotificationService(
CHECK(rfh);
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
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc
index a482e46453f715a268293a1b6cb0d9958786305e..df38a82a5bac1b37ae93cec3bb1aa4290228706e 100644
index 05ea713db94ed47bc2717028265ab6fe9be83a45..0d1484ea53e72232ab192b966e293270ef7eea1d 100644
--- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -785,8 +785,8 @@ void VerifyThatBrowserAndRendererCalculatedOriginsToCommitMatch(
@@ -800,8 +800,8 @@ void VerifyThatBrowserAndRendererCalculatedOriginsToCommitMatch(
// TODO(crbug.com/40092527): Consider adding a separate boolean that
// tracks this instead of piggybacking `origin_calculation_debug_info`.
if (renderer_side_origin.opaque() &&

View file

@ -881,10 +881,10 @@ index 97cb6458bc9eec767db89b56abfc5f4b4136ff7b..d9a0b343158b8464b5c9aa8e0e655c0b
ScriptingThrottler scripting_throttler_;
diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn
index 6d2d9a41cfb20e469b33b9039b7ef7c293a5a400..ec7448edf585fb245651f52e1d2998b2ac0f80a1 100644
index 84adb6a2163ea44fc36c8fa95057f2bbad757093..106d5cec3dcf164b42ead3cad1f262082bf5bfbf 100644
--- a/content/browser/BUILD.gn
+++ b/content/browser/BUILD.gn
@@ -3068,8 +3068,9 @@ source_set("browser") {
@@ -3075,8 +3075,9 @@ source_set("browser") {
"//ppapi/shared_impl",
]

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
diff --git a/content/browser/renderer_host/render_widget_host_delegate.h b/content/browser/renderer_host/render_widget_host_delegate.h
index 6469dd594bb984ba4cd8c1464e7891396a35d8b3..6af0932ff13b2223d2177a4f13bf4e4165a05080 100644
index ecb007b668458da1f8db4fca75f9c4428221dfbf..063007699b5b09ef8e6dbb39e044e4a1b8e6d8ae 100644
--- a/content/browser/renderer_host/render_widget_host_delegate.h
+++ b/content/browser/renderer_host/render_widget_host_delegate.h
@@ -28,6 +28,7 @@
@ -19,7 +19,7 @@ index 6469dd594bb984ba4cd8c1464e7891396a35d8b3..6af0932ff13b2223d2177a4f13bf4e41
#include "ui/gfx/native_widget_types.h"
namespace blink {
@@ -294,6 +295,9 @@ class CONTENT_EXPORT RenderWidgetHostDelegate {
@@ -295,6 +296,9 @@ class CONTENT_EXPORT RenderWidgetHostDelegate {
// Returns the associated RenderViewHostDelegateView*, if possible.
virtual RenderViewHostDelegateView* GetDelegateView();
@ -30,10 +30,10 @@ index 6469dd594bb984ba4cd8c1464e7891396a35d8b3..6af0932ff13b2223d2177a4f13bf4e41
// RenderWidgetHost on the primary main frame, and false otherwise.
virtual bool IsWidgetForPrimaryMainFrame(RenderWidgetHostImpl*);
diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc
index 7c6752807590bc0f168820d0d9d8d3277ca9713d..65978e2ebbd31ee9b735a689c751681c155833e7 100644
index 69cce8cadec4ca2e5e5a6a17043df70846aa37bb..1e070456871df94dc4d6d443f853b351495d27bd 100644
--- a/content/browser/renderer_host/render_widget_host_impl.cc
+++ b/content/browser/renderer_host/render_widget_host_impl.cc
@@ -2008,6 +2008,9 @@ void RenderWidgetHostImpl::SetCursor(const ui::Cursor& cursor) {
@@ -2012,6 +2012,9 @@ void RenderWidgetHostImpl::SetCursor(const ui::Cursor& cursor) {
if (view_) {
view_->UpdateCursor(cursor);
}
@ -44,10 +44,10 @@ index 7c6752807590bc0f168820d0d9d8d3277ca9713d..65978e2ebbd31ee9b735a689c751681c
void RenderWidgetHostImpl::ShowContextMenuAtPoint(
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index f33889dbaaa23908962c56f2dbe072c3bd9e7070..7bbe1f1d7052f45c1e17fe9d4e8fe3164d3b0ba5 100644
index f9eddb8d8f482789da3d74abd298f7b39acea386..e7583ddd3bd825e1ca68cbe19c6958b761742dd0 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -5740,6 +5740,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() {
@@ -5725,6 +5725,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() {
return text_input_manager_.get();
}
@ -60,10 +60,10 @@ index f33889dbaaa23908962c56f2dbe072c3bd9e7070..7bbe1f1d7052f45c1e17fe9d4e8fe316
RenderWidgetHostImpl* render_widget_host) {
return render_widget_host == GetPrimaryMainFrame()->GetRenderWidgetHost();
diff --git a/content/browser/web_contents/web_contents_impl.h b/content/browser/web_contents/web_contents_impl.h
index 08f5271be41f876d01b006a7b03de94930cd6ecb..0c42373bd65aea5a854181c330aafca1a494101f 100644
index 61df6566bd16f88787e4be0b6f93702acca883e5..478c9839916130a3aec9bb32b24e7ee723dcd4ed 100644
--- a/content/browser/web_contents/web_contents_impl.h
+++ b/content/browser/web_contents/web_contents_impl.h
@@ -1149,6 +1149,7 @@ class CONTENT_EXPORT WebContentsImpl
@@ -1164,6 +1164,7 @@ class CONTENT_EXPORT WebContentsImpl
void SendScreenRects() override;
void SendActiveState(bool active) override;
TextInputManager* GetTextInputManager() override;
@ -72,7 +72,7 @@ index 08f5271be41f876d01b006a7b03de94930cd6ecb..0c42373bd65aea5a854181c330aafca1
RenderWidgetHostImpl* render_widget_host) override;
bool IsShowingContextMenuOnPage() const override;
diff --git a/content/public/browser/web_contents_observer.h b/content/public/browser/web_contents_observer.h
index 5e73c1f7cce2f2c40f1ad2fc1e1258af236408c8..970a6efb203b6c66a3b50c5dd3d2dc5fe74a9497 100644
index c6f536682a1faa17c2b5b57890d576405ccf5c9f..a6f1ee80ef29aedb919dda7bc84cc5520e43c84f 100644
--- a/content/public/browser/web_contents_observer.h
+++ b/content/public/browser/web_contents_observer.h
@@ -37,6 +37,7 @@
@ -83,7 +83,7 @@ index 5e73c1f7cce2f2c40f1ad2fc1e1258af236408c8..970a6efb203b6c66a3b50c5dd3d2dc5f
#include "ui/base/page_transition_types.h"
#include "ui/base/window_open_disposition.h"
@@ -635,6 +636,9 @@ class CONTENT_EXPORT WebContentsObserver : public base::CheckedObserver {
@@ -636,6 +637,9 @@ class CONTENT_EXPORT WebContentsObserver : public base::CheckedObserver {
// Invoked when the primary main frame changes size.
virtual void PrimaryMainFrameWasResized(bool width_changed) {}

View file

@ -8,7 +8,7 @@ it in Electron and prevent drift from Chrome's blocklist. We should look for a w
to upstream this change to Chrome.
diff --git a/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc b/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc
index e4f3608c4b7a0f67fcd7491796e4a47558120f69..4d6493e9a51f0ea7e6633887247a390cfdb46f1e 100644
index fbe48d02d70452b1202ddcd23a9a36d50a0b12ae..2d09fefab7dfdb01981803975d4056b8161cbd63 100644
--- a/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc
+++ b/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc
@@ -47,7 +47,6 @@

View file

@ -7,10 +7,10 @@ Subject: refactor: expose HostImportModuleDynamically and
This is so that Electron can blend Blink's and Node's implementations of these isolate handlers.
diff --git a/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc b/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc
index f3462a8ffcbd9ca785e58f2cbfc319bae2aeec89..4f64e0c9c04036ffd8ba88245c9eb89488bdc095 100644
index d57eea97fcdff4c4008ea0d03259349ac27a49b8..351ea787052200013b7b14a460dc900ffae010c1 100644
--- a/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc
+++ b/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc
@@ -636,7 +636,9 @@ bool WasmJSPromiseIntegrationEnabledCallback(v8::Local<v8::Context> context) {
@@ -634,7 +634,9 @@ bool WasmJSPromiseIntegrationEnabledCallback(v8::Local<v8::Context> context) {
execution_context);
}
@ -21,7 +21,7 @@ index f3462a8ffcbd9ca785e58f2cbfc319bae2aeec89..4f64e0c9c04036ffd8ba88245c9eb894
v8::Local<v8::Context> context,
v8::Local<v8::Data> v8_host_defined_options,
v8::Local<v8::Value> v8_referrer_resource_url,
@@ -714,7 +716,7 @@ v8::MaybeLocal<v8::Promise> HostImportModuleDynamically(
@@ -712,7 +714,7 @@ v8::MaybeLocal<v8::Promise> HostImportModuleDynamically(
}
// https://html.spec.whatwg.org/C/#hostgetimportmetaproperties
@ -30,7 +30,7 @@ index f3462a8ffcbd9ca785e58f2cbfc319bae2aeec89..4f64e0c9c04036ffd8ba88245c9eb894
v8::Local<v8::Module> module,
v8::Local<v8::Object> meta) {
v8::Isolate* isolate = context->GetIsolate();
@@ -761,9 +763,6 @@ std::ostream& operator<<(std::ostream& os, const PrintV8OOM& oom_details) {
@@ -759,9 +761,6 @@ std::ostream& operator<<(std::ostream& os, const PrintV8OOM& oom_details) {
return os;
}
@ -40,7 +40,7 @@ index f3462a8ffcbd9ca785e58f2cbfc319bae2aeec89..4f64e0c9c04036ffd8ba88245c9eb894
void V8Initializer::InitializeV8Common(v8::Isolate* isolate) {
// Set up garbage collection before setting up anything else as V8 may trigger
// GCs during Blink setup.
@@ -783,9 +782,9 @@ void V8Initializer::InitializeV8Common(v8::Isolate* isolate) {
@@ -781,9 +780,9 @@ void V8Initializer::InitializeV8Common(v8::Isolate* isolate) {
isolate->SetWasmJSPIEnabledCallback(WasmJSPromiseIntegrationEnabledCallback);
isolate->SetSharedArrayBufferConstructorEnabledCallback(
SharedArrayBufferConstructorEnabledCallback);

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.
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index e75f9c88d3d96c20a93ae9130f26379a1dc3acdf..363f86e11bc5048a59b00abe247f85dc29fdff1a 100644
index 0b93ebeca125529c9400f16de342cf96677290d4..975c4c1a7f4724781f1dc54fa009cc55f7c5ce29 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -9795,25 +9795,13 @@ void WebContentsImpl::RendererUnresponsive(
@@ -9809,25 +9809,13 @@ void WebContentsImpl::RendererUnresponsive(
base::RepeatingClosure hang_monitor_restarter) {
OPTIONAL_TRACE_EVENT1("content", "WebContentsImpl::RendererUnresponsive",
"render_widget_host", render_widget_host);

View file

@ -8,7 +8,7 @@ respond to the first mouse click in their window, which is desirable for some
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
index fc345ea0ae7a640b7d32cd12e177a4ce020d3b06..038646bfa3ac442c64380a81bdb1d3043e50c107 100644
index ccfac3b103824eaa59dbe1e02dcec6c8dbf3f555..a76028eed0249244d0559de102a756e3b2771b63 100644
--- a/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,
@ -27,7 +27,7 @@ index fc345ea0ae7a640b7d32cd12e177a4ce020d3b06..038646bfa3ac442c64380a81bdb1d304
// RenderWidgetHostViewCocoa ---------------------------------------------------
// Private methods:
@@ -786,6 +795,9 @@ - (AcceptMouseEventsOption)acceptsMouseEventsOption {
@@ -789,6 +798,9 @@ - (AcceptMouseEventsOption)acceptsMouseEventsOption {
}
- (BOOL)acceptsFirstMouse:(NSEvent*)theEvent {
@ -37,7 +37,7 @@ index fc345ea0ae7a640b7d32cd12e177a4ce020d3b06..038646bfa3ac442c64380a81bdb1d304
// Enable "click-through" if mouse clicks are accepted in inactive windows
return [self acceptsMouseEventsOption] > kAcceptMouseEventsInActiveWindow;
}
@@ -880,6 +892,10 @@ - (BOOL)shouldIgnoreMouseEvent:(NSEvent*)theEvent {
@@ -934,6 +946,10 @@ - (BOOL)shouldIgnoreMouseEvent:(NSEvent*)theEvent {
// its parent view.
BOOL hitSelf = NO;
while (view) {
@ -48,7 +48,7 @@ index fc345ea0ae7a640b7d32cd12e177a4ce020d3b06..038646bfa3ac442c64380a81bdb1d304
if (view == self)
hitSelf = YES;
if ([view isKindOfClass:[self class]] && ![view isEqual:self] &&
@@ -1202,6 +1218,10 @@ - (void)keyEvent:(NSEvent*)theEvent wasKeyEquivalent:(BOOL)equiv {
@@ -1268,6 +1284,10 @@ - (void)keyEvent:(NSEvent*)theEvent wasKeyEquivalent:(BOOL)equiv {
eventType == NSEventTypeKeyDown &&
!(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).
diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn
index 9f046f2cceda0eb65bd7166d71027dd439d65f58..d786e8e50d8145ce5ca3734c50c2907328021e10 100644
index 623aa9404de5b3cfc6e7837edb44ed005b66b185..c85316d1b75473e65e4b6de84a57ae91b6202a08 100644
--- a/chrome/BUILD.gn
+++ b/chrome/BUILD.gn
@@ -1560,7 +1560,7 @@ if (is_chrome_branded && !is_android) {
@@ -1545,7 +1545,7 @@ if (is_chrome_branded && !is_android) {
}
}
@ -64,7 +64,7 @@ index 9f046f2cceda0eb65bd7166d71027dd439d65f58..d786e8e50d8145ce5ca3734c50c29073
chrome_paks("packed_resources") {
if (is_mac) {
output_dir = "$root_gen_dir/repack"
@@ -1599,6 +1599,12 @@ if (!is_android) {
@@ -1584,6 +1584,12 @@ if (!is_android) {
}
}

View file

@ -6,7 +6,7 @@ Subject: scroll_bounce_flag.patch
Patch to make scrollBounce option work.
diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc
index be72ab044db6de9b804e667182e125f9eb6047b8..50b1308d6043a8160647cc4dad9bc170f8c652f6 100644
index beb2d175d23f0321dda223e55eced1202fe210e6..c8893809d73546af8b286d0cb8ea114bbb208b8f 100644
--- a/content/renderer/render_thread_impl.cc
+++ b/content/renderer/render_thread_impl.cc
@@ -1300,7 +1300,7 @@ bool RenderThreadImpl::IsLcdTextEnabled() {

View file

@ -15,7 +15,7 @@ short-circuit all the permissions checks in MSDC for now to allow us to
unduplicate this code.
diff --git a/components/webrtc/media_stream_devices_controller.cc b/components/webrtc/media_stream_devices_controller.cc
index bf53561282ea03a8d881e9a33db17ad04e9127a6..6f53b97bca9975d9eac6a676edd438d52a90c23e 100644
index 13929e4f6c1997a9071a2d1e3982a8c8feac84e4..a9719f72b9994537665c7f6a433ea8499b42122d 100644
--- a/components/webrtc/media_stream_devices_controller.cc
+++ b/components/webrtc/media_stream_devices_controller.cc
@@ -57,7 +57,8 @@ bool PermissionIsRequested(blink::PermissionType permission,

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.
diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
index 0358c48884b686e8d1da962c7d4e06e31de7bd8e..006f493dc30fa7b30fa85e3475fcb1976bf3a0ab 100644
index 72f28e56f39561cb4832cb403d8e9c24e53ce133..ba74882cf6940c29d3326dc69e6be0ce7e754974 100644
--- a/content/browser/renderer_host/render_process_host_impl.cc
+++ b/content/browser/renderer_host/render_process_host_impl.cc
@@ -1767,6 +1767,10 @@ bool RenderProcessHostImpl::Init() {
@@ -1766,6 +1766,10 @@ bool RenderProcessHostImpl::Init() {
std::unique_ptr<SandboxedProcessLauncherDelegate> sandbox_delegate =
std::make_unique<RendererSandboxedProcessLauncherDelegateWin>(
*cmd_line, IsPdf(), IsJitDisabled());

View file

@ -9,10 +9,10 @@ is needed for OSR.
Originally landed in https://github.com/electron/libchromiumcontent/pull/226.
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 90d93722ef9fbb1ab4072f722db17af96faea062..6ff8e95acaac8dc0d4685167fc79fe222a984a81 100644
index a024b3c7e78e7967aeebcd33932bb4e541378a6d..b31076e6fd2312af9dea269628642bec0b020d2f 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -3823,6 +3823,13 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
@@ -3808,6 +3808,13 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
params.main_frame_name, GetOpener(), primary_main_frame_policy,
base::UnguessableToken::Create());
@ -26,7 +26,7 @@ index 90d93722ef9fbb1ab4072f722db17af96faea062..6ff8e95acaac8dc0d4685167fc79fe22
std::unique_ptr<WebContentsViewDelegate> delegate =
GetContentClient()->browser()->GetWebContentsViewDelegate(this);
@@ -3833,6 +3840,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
@@ -3818,6 +3825,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
view_ = CreateWebContentsView(this, std::move(delegate),
&render_view_host_delegate_view_);
}
@ -35,10 +35,10 @@ index 90d93722ef9fbb1ab4072f722db17af96faea062..6ff8e95acaac8dc0d4685167fc79fe22
CHECK(view_.get());
diff --git a/content/public/browser/web_contents.h b/content/public/browser/web_contents.h
index 0a2f6fa471e46dd727538c142526f87f7495623b..aeb3854d9a28396c8bd3463f38866f44227bab92 100644
index 5e89cbf0ed5fda4d2d6cb38dcfda3e02bc496d20..0eb1f248423d0308e2205357cc4350cabba04a62 100644
--- a/content/public/browser/web_contents.h
+++ b/content/public/browser/web_contents.h
@@ -114,10 +114,13 @@ class BrowserPluginGuestDelegate;
@@ -116,10 +116,13 @@ class BrowserPluginGuestDelegate;
class GuestPageHolder;
class RenderFrameHost;
class RenderViewHost;
@ -52,7 +52,7 @@ index 0a2f6fa471e46dd727538c142526f87f7495623b..aeb3854d9a28396c8bd3463f38866f44
class WebUI;
struct DropData;
struct MHTMLGenerationParams;
@@ -278,6 +281,10 @@ class WebContents : public PageNavigator, public base::SupportsUserData {
@@ -265,6 +268,10 @@ class WebContents : public PageNavigator, public base::SupportsUserData {
network::mojom::WebSandboxFlags starting_sandbox_flags =
network::mojom::WebSandboxFlags::kNone;

View file

@ -15,10 +15,10 @@ Note that we also need to manually update embedder's
`api::WebContents::IsFullscreenForTabOrPending` value.
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc
index d2b27b93fcb9de1c78606a3a83df4e07e8c8629d..a482e46453f715a268293a1b6cb0d9958786305e 100644
index 999282378d149cb813ce615ba7bd59dbf888ffd1..05ea713db94ed47bc2717028265ab6fe9be83a45 100644
--- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -8420,6 +8420,17 @@ void RenderFrameHostImpl::EnterFullscreen(
@@ -8512,6 +8512,17 @@ void RenderFrameHostImpl::EnterFullscreen(
}
}
@ -37,10 +37,10 @@ index d2b27b93fcb9de1c78606a3a83df4e07e8c8629d..a482e46453f715a268293a1b6cb0d995
if (had_fullscreen_token && !GetView()->HasFocus())
GetView()->Focus();
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 6ff8e95acaac8dc0d4685167fc79fe222a984a81..5511e34ec19a1adf99086a33930ae0266b7b8099 100644
index b31076e6fd2312af9dea269628642bec0b020d2f..64dfb39220d2f660873a17ebb210bddde45c8a7f 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -4087,21 +4087,25 @@ KeyboardEventProcessingResult WebContentsImpl::PreHandleKeyboardEvent(
@@ -4072,21 +4072,25 @@ KeyboardEventProcessingResult WebContentsImpl::PreHandleKeyboardEvent(
const input::NativeWebKeyboardEvent& event) {
OPTIONAL_TRACE_EVENT0(TRACE_DISABLED_BY_DEFAULT("content.verbose"),
"WebContentsImpl::PreHandleKeyboardEvent");
@ -78,7 +78,7 @@ index 6ff8e95acaac8dc0d4685167fc79fe222a984a81..5511e34ec19a1adf99086a33930ae026
}
bool WebContentsImpl::HandleMouseEvent(const blink::WebMouseEvent& event) {
@@ -4260,7 +4264,7 @@ void WebContentsImpl::EnterFullscreenMode(
@@ -4245,7 +4249,7 @@ void WebContentsImpl::EnterFullscreenMode(
OPTIONAL_TRACE_EVENT0("content", "WebContentsImpl::EnterFullscreenMode");
DCHECK(CanEnterFullscreenMode(requesting_frame));
DCHECK(requesting_frame->IsActive());

View file

@ -10,7 +10,7 @@ An attempt to upstream this was made, but rejected:
https://chromium-review.googlesource.com/c/chromium/src/+/1954347
diff --git a/content/public/renderer/content_renderer_client.h b/content/public/renderer/content_renderer_client.h
index 42c94f71f09cf9067bac9fd9004dda36708ec441..07c014a28ed1ef5878a50fbb194e38fe762361e9 100644
index 7a2d251ba2d13d0a34df176111e6524a27b87f55..cbbe0fbdd25a0f7859b113fdb3dcd9ce57e597d6 100644
--- a/content/public/renderer/content_renderer_client.h
+++ b/content/public/renderer/content_renderer_client.h
@@ -417,6 +417,11 @@ class CONTENT_EXPORT ContentRendererClient {
@ -26,10 +26,10 @@ index 42c94f71f09cf9067bac9fd9004dda36708ec441..07c014a28ed1ef5878a50fbb194e38fe
// An empty URL is returned if the URL is not overriden.
virtual GURL OverrideFlashEmbedWithHTML(const GURL& url);
diff --git a/content/renderer/renderer_blink_platform_impl.cc b/content/renderer/renderer_blink_platform_impl.cc
index 2a7a7862b321df2519464a1cd4f9bd5da6c58bc1..5c958673a6778012c8ac039df987a584a103c756 100644
index a287771fc347f1636e1252e431149c5bc6737fd4..7fc8bff33b785aa3d42248c22477474e84819dee 100644
--- a/content/renderer/renderer_blink_platform_impl.cc
+++ b/content/renderer/renderer_blink_platform_impl.cc
@@ -892,6 +892,12 @@ void RendererBlinkPlatformImpl::WillStopWorkerThread() {
@@ -890,6 +890,12 @@ void RendererBlinkPlatformImpl::WillStopWorkerThread() {
WorkerThreadRegistry::Instance()->WillStopCurrentWorkerThread();
}
@ -43,7 +43,7 @@ index 2a7a7862b321df2519464a1cd4f9bd5da6c58bc1..5c958673a6778012c8ac039df987a584
const v8::Local<v8::Context>& worker) {
GetContentClient()->renderer()->DidInitializeWorkerContextOnWorkerThread(
diff --git a/content/renderer/renderer_blink_platform_impl.h b/content/renderer/renderer_blink_platform_impl.h
index 9f4762896fb8ebc0058cba3186a63429418d54ae..a619e126f3c91fc6a9eda0de5099934d93c83703 100644
index f726c03e34578032f5fc6c9a914ba72858efce89..9c5eeba6e24bb53fc112082c198a103256b06e32 100644
--- a/content/renderer/renderer_blink_platform_impl.h
+++ b/content/renderer/renderer_blink_platform_impl.h
@@ -196,6 +196,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl {
@ -55,7 +55,7 @@ index 9f4762896fb8ebc0058cba3186a63429418d54ae..a619e126f3c91fc6a9eda0de5099934d
const blink::WebSecurityOrigin& script_origin) override;
blink::ProtocolHandlerSecurityLevel GetProtocolHandlerSecurityLevel(
diff --git a/third_party/blink/public/platform/platform.h b/third_party/blink/public/platform/platform.h
index 7ebcbb331be2e94f6990e614f8ad37933431bedc..5e66e386fbb05b06e14597778933b2976dda79c0 100644
index 8b87ad1fbda13dccee37fd27b3bdec8060caf50a..fec29a007b548b63d5efd6ae40eb7900b99d0d8e 100644
--- a/third_party/blink/public/platform/platform.h
+++ b/third_party/blink/public/platform/platform.h
@@ -662,6 +662,7 @@ class BLINK_PLATFORM_EXPORT Platform {

View file

@ -19,7 +19,7 @@ that clearly establishes the worker script is ready for evaluation with the scop
initialized.
diff --git a/content/public/renderer/content_renderer_client.h b/content/public/renderer/content_renderer_client.h
index 07c014a28ed1ef5878a50fbb194e38fe762361e9..ae4c9c011024a32354a4cc25c63835a48d1792dd 100644
index cbbe0fbdd25a0f7859b113fdb3dcd9ce57e597d6..1345bb5008e1b4fc3a450f7e353d52ecd59e4e6a 100644
--- a/content/public/renderer/content_renderer_client.h
+++ b/content/public/renderer/content_renderer_client.h
@@ -417,6 +417,11 @@ class CONTENT_EXPORT ContentRendererClient {
@ -35,10 +35,10 @@ index 07c014a28ed1ef5878a50fbb194e38fe762361e9..ae4c9c011024a32354a4cc25c63835a4
// from the worker thread.
virtual void WillDestroyWorkerContextOnWorkerThread(
diff --git a/content/renderer/renderer_blink_platform_impl.cc b/content/renderer/renderer_blink_platform_impl.cc
index 5c958673a6778012c8ac039df987a584a103c756..fcd5f12d6aff7867c707c4fbe839d02f0491b5d1 100644
index 7fc8bff33b785aa3d42248c22477474e84819dee..c58892e82ba3d107742d40c8442947ab2a801ff2 100644
--- a/content/renderer/renderer_blink_platform_impl.cc
+++ b/content/renderer/renderer_blink_platform_impl.cc
@@ -904,6 +904,12 @@ void RendererBlinkPlatformImpl::WorkerContextCreated(
@@ -902,6 +902,12 @@ void RendererBlinkPlatformImpl::WorkerContextCreated(
worker);
}
@ -52,7 +52,7 @@ index 5c958673a6778012c8ac039df987a584a103c756..fcd5f12d6aff7867c707c4fbe839d02f
const blink::WebSecurityOrigin& script_origin) {
return GetContentClient()->renderer()->AllowScriptExtensionForServiceWorker(
diff --git a/content/renderer/renderer_blink_platform_impl.h b/content/renderer/renderer_blink_platform_impl.h
index a619e126f3c91fc6a9eda0de5099934d93c83703..33f7bb2df623b3ff2f0473184f5d82896b450747 100644
index 9c5eeba6e24bb53fc112082c198a103256b06e32..fad9cf104d62d4e19a2b27eff54d17f908357b41 100644
--- a/content/renderer/renderer_blink_platform_impl.h
+++ b/content/renderer/renderer_blink_platform_impl.h
@@ -196,6 +196,8 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl {
@ -65,7 +65,7 @@ index a619e126f3c91fc6a9eda0de5099934d93c83703..33f7bb2df623b3ff2f0473184f5d8289
bool AllowScriptExtensionForServiceWorker(
const blink::WebSecurityOrigin& script_origin) override;
diff --git a/third_party/blink/public/platform/platform.h b/third_party/blink/public/platform/platform.h
index 5e66e386fbb05b06e14597778933b2976dda79c0..7e76e82d959def21ece9ffe1553fec4a9c366d31 100644
index fec29a007b548b63d5efd6ae40eb7900b99d0d8e..dc892fbf142bfc93a2c3497d0ec0932fa69c38b1 100644
--- a/third_party/blink/public/platform/platform.h
+++ b/third_party/blink/public/platform/platform.h
@@ -662,6 +662,8 @@ class BLINK_PLATFORM_EXPORT Platform {

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.
diff --git a/front_end/entrypoints/main/MainImpl.ts b/front_end/entrypoints/main/MainImpl.ts
index efaec39a8980b566ab2199dfab82012b25ba2989..89889caa7530fe0bfd0669c2fac0ac9485389974 100644
index 841641447b98543eaca6ad33a00c1bc0a37be0c1..87f5a2ede480a4d598d04a205dd31bb228260a45 100644
--- a/front_end/entrypoints/main/MainImpl.ts
+++ b/front_end/entrypoints/main/MainImpl.ts
@@ -791,6 +791,8 @@ export class MainImpl {
@@ -789,6 +789,8 @@ export class MainImpl {
globalThis.Main = globalThis.Main || {};
// @ts-ignore Exported for Tests.js
globalThis.Main.Main = MainImpl;

View file

@ -46,10 +46,10 @@ index 3e57ae8efe33f326ef0e5d609c311d4be5b8afd6..dc521d39c2280dfc3217e97c1e413b2b
V8_INLINE static void* GetAlignedPointerFromInternalField(
const BasicTracedReference<Object>& object, int index) {
diff --git a/src/api/api.cc b/src/api/api.cc
index 548f23ce630071ba2e1d9b0735a4cc719d5de8e3..93213d18590e2880dd74c6dc0a73a26222c98813 100644
index 6fcf4f9c7e65b7a95f2d7db924695219ac9aaa3e..33b19ff38207909eb83f7f26555c0930b6f37f67 100644
--- a/src/api/api.cc
+++ b/src/api/api.cc
@@ -6462,14 +6462,33 @@ Local<Data> v8::Object::SlowGetInternalField(int index) {
@@ -6461,14 +6461,33 @@ Local<Data> v8::Object::SlowGetInternalField(int index) {
i::Cast<i::JSObject>(*obj)->GetEmbedderField(index), isolate));
}

View file

@ -178,85 +178,88 @@ base::Time ParseTimeProperty(const std::optional<double>& value) {
const std::string InclusionStatusToString(net::CookieInclusionStatus status) {
// See net/cookies/cookie_inclusion_status.h for cookie error descriptions.
using Status = net::CookieInclusionStatus;
using Reason = net::CookieInclusionStatus::ExclusionReason;
static constexpr auto Reasons =
base::MakeFixedFlatMap<Reason, std::string_view>(
{{Status::EXCLUDE_UNKNOWN_ERROR, "Unknown error"},
{Status::EXCLUDE_HTTP_ONLY,
{{Reason::EXCLUDE_UNKNOWN_ERROR, "Unknown error"},
{Reason::EXCLUDE_HTTP_ONLY,
"The cookie was HttpOnly, but the attempted access was through a "
"non-HTTP API."},
{Status::EXCLUDE_SECURE_ONLY,
{Reason::EXCLUDE_SECURE_ONLY,
"The cookie was Secure, but the URL was not allowed to access "
"Secure cookies."},
{Status::EXCLUDE_DOMAIN_MISMATCH,
{Reason::EXCLUDE_DOMAIN_MISMATCH,
"The cookie's domain attribute did not match the domain of the URL "
"attempting access."},
{Status::EXCLUDE_NOT_ON_PATH,
{Reason::EXCLUDE_NOT_ON_PATH,
"The cookie's path attribute did not match the path of the URL "
"attempting access."},
{Status::EXCLUDE_SAMESITE_STRICT,
{Reason::EXCLUDE_SAMESITE_STRICT,
"The cookie had SameSite=Strict, and the attempted access did not "
"have an appropriate SameSiteCookieContext"},
{Status::EXCLUDE_SAMESITE_LAX,
{Reason::EXCLUDE_SAMESITE_LAX,
"The cookie had SameSite=Lax, and the attempted access did not "
"have "
"an appropriate SameSiteCookieContext"},
{Status::EXCLUDE_SAMESITE_UNSPECIFIED_TREATED_AS_LAX,
{Reason::EXCLUDE_SAMESITE_UNSPECIFIED_TREATED_AS_LAX,
"The cookie did not specify a SameSite attribute, and therefore "
"was treated as if it were SameSite=Lax, and the attempted "
"access did not have an appropriate SameSiteCookieContext."},
{Status::EXCLUDE_SAMESITE_NONE_INSECURE,
{Reason::EXCLUDE_SAMESITE_NONE_INSECURE,
"The cookie specified SameSite=None, but it was not Secure."},
{Status::EXCLUDE_USER_PREFERENCES,
{Reason::EXCLUDE_USER_PREFERENCES,
"Caller did not allow access to the cookie."},
{Status::EXCLUDE_FAILURE_TO_STORE,
{Reason::EXCLUDE_FAILURE_TO_STORE,
"The cookie was malformed and could not be stored"},
{Status::EXCLUDE_NONCOOKIEABLE_SCHEME,
{Reason::EXCLUDE_NONCOOKIEABLE_SCHEME,
"Attempted to set a cookie from a scheme that does not support "
"cookies."},
{Status::EXCLUDE_OVERWRITE_SECURE,
{Reason::EXCLUDE_OVERWRITE_SECURE,
"The cookie would have overwritten a Secure cookie, and was not "
"allowed to do so."},
{Status::EXCLUDE_OVERWRITE_HTTP_ONLY,
{Reason::EXCLUDE_OVERWRITE_HTTP_ONLY,
"The cookie would have overwritten an HttpOnly cookie, and was not "
"allowed to do so."},
{Status::EXCLUDE_INVALID_DOMAIN,
{Reason::EXCLUDE_INVALID_DOMAIN,
"The cookie was set with an invalid Domain attribute."},
{Status::EXCLUDE_INVALID_PREFIX,
{Reason::EXCLUDE_INVALID_PREFIX,
"The cookie was set with an invalid __Host- or __Secure- prefix."},
{Status::EXCLUDE_INVALID_PARTITIONED,
{Reason::EXCLUDE_INVALID_PARTITIONED,
"Cookie was set with an invalid Partitioned attribute, which is "
"only valid if the cookie has a __Host- prefix."},
{Status::EXCLUDE_NAME_VALUE_PAIR_EXCEEDS_MAX_SIZE,
{Reason::EXCLUDE_NAME_VALUE_PAIR_EXCEEDS_MAX_SIZE,
"The cookie exceeded the name/value pair size limit."},
{Status::EXCLUDE_ATTRIBUTE_VALUE_EXCEEDS_MAX_SIZE,
{Reason::EXCLUDE_ATTRIBUTE_VALUE_EXCEEDS_MAX_SIZE,
"Cookie exceeded the attribute size limit."},
{Status::EXCLUDE_DOMAIN_NON_ASCII,
{Reason::EXCLUDE_DOMAIN_NON_ASCII,
"The cookie was set with a Domain attribute containing non ASCII "
"characters."},
{Status::EXCLUDE_THIRD_PARTY_BLOCKED_WITHIN_FIRST_PARTY_SET,
{Reason::EXCLUDE_THIRD_PARTY_BLOCKED_WITHIN_FIRST_PARTY_SET,
"The cookie is blocked by third-party cookie blocking but the two "
"sites are in the same First-Party Set"},
{Status::EXCLUDE_PORT_MISMATCH,
{Reason::EXCLUDE_PORT_MISMATCH,
"The cookie's source_port did not match the port of the request."},
{Status::EXCLUDE_SCHEME_MISMATCH,
{Reason::EXCLUDE_SCHEME_MISMATCH,
"The cookie's source_scheme did not match the scheme of the "
"request."},
{Status::EXCLUDE_SHADOWING_DOMAIN,
{Reason::EXCLUDE_SHADOWING_DOMAIN,
"The cookie is a domain cookie and has the same name as an origin "
"cookie on this origin."},
{Status::EXCLUDE_DISALLOWED_CHARACTER,
{Reason::EXCLUDE_DISALLOWED_CHARACTER,
"The cookie contains ASCII control characters"},
{Status::EXCLUDE_THIRD_PARTY_PHASEOUT,
{Reason::EXCLUDE_THIRD_PARTY_PHASEOUT,
"The cookie is blocked for third-party cookie phaseout."},
{Status::EXCLUDE_NO_COOKIE_CONTENT,
{Reason::EXCLUDE_NO_COOKIE_CONTENT,
"The cookie contains no content or only whitespace."},
{Status::EXCLUDE_ALIASING,
{Reason::EXCLUDE_ALIASING,
"Cookie aliases that of another with a different source_port or "
"source scheme. I.e.: Two or more cookies share the same name "
"but have different ports/schemes."}});
static_assert(Reasons.size() == Status::NUM_EXCLUSION_REASONS);
static_assert(
Reasons.size() ==
net::CookieInclusionStatus::ExclusionReasonBitset::kValueCount,
"Please ensure all ExclusionReason variants are enumerated in "
"GetDebugString");
std::ostringstream reason;
reason << "Failed to set cookie - ";

View file

@ -10,7 +10,6 @@
#include "base/command_line.h"
#include "base/containers/contains.h"
#include "base/functional/bind.h"
#include "base/ranges/algorithm.h"
#include "content/public/browser/web_contents.h"
#include "gin/data_object_builder.h"
#include "services/device/public/cpp/hid/hid_blocklist.h"

View file

@ -80,8 +80,6 @@ class AsarURLLoader : public network::mojom::URLLoader {
const std::optional<GURL>& new_url) override {}
void SetPriority(net::RequestPriority priority,
int32_t intra_priority_value) override {}
void PauseReadingBodyFromNet() override {}
void ResumeReadingBodyFromNet() override {}
// disable copy
AsarURLLoader(const AsarURLLoader&) = delete;

View file

@ -88,8 +88,6 @@ class ElectronURLLoaderFactory : public network::SelfDeletingURLLoaderFactory {
const std::optional<GURL>& new_url) override;
void SetPriority(net::RequestPriority priority,
int32_t intra_priority_value) override {}
void PauseReadingBodyFromNet() override {}
void ResumeReadingBodyFromNet() override {}
void OnTargetFactoryError();
void DeleteThis();

View file

@ -73,8 +73,6 @@ class NodeStreamLoader : public network::mojom::URLLoader {
const std::optional<GURL>& new_url) override {}
void SetPriority(net::RequestPriority priority,
int32_t intra_priority_value) override {}
void PauseReadingBodyFromNet() override {}
void ResumeReadingBodyFromNet() override {}
mojo::Receiver<network::mojom::URLLoader> url_loader_;
mojo::Remote<network::mojom::URLLoaderClient> client_;

View file

@ -222,16 +222,6 @@ void ProxyingURLLoaderFactory::InProgressRequest::SetPriority(
target_loader_->SetPriority(priority, intra_priority_value);
}
void ProxyingURLLoaderFactory::InProgressRequest::PauseReadingBodyFromNet() {
if (target_loader_.is_bound())
target_loader_->PauseReadingBodyFromNet();
}
void ProxyingURLLoaderFactory::InProgressRequest::ResumeReadingBodyFromNet() {
if (target_loader_.is_bound())
target_loader_->ResumeReadingBodyFromNet();
}
void ProxyingURLLoaderFactory::InProgressRequest::OnReceiveEarlyHints(
network::mojom::EarlyHintsPtr early_hints) {
target_client_->OnReceiveEarlyHints(std::move(early_hints));

View file

@ -90,8 +90,6 @@ class ProxyingURLLoaderFactory
const std::optional<GURL>& new_url) override;
void SetPriority(net::RequestPriority priority,
int32_t intra_priority_value) override;
void PauseReadingBodyFromNet() override;
void ResumeReadingBodyFromNet() override;
// network::mojom::URLLoaderClient:
void OnReceiveEarlyHints(

View file

@ -75,8 +75,6 @@ class URLPipeLoader : public network::mojom::URLLoader,
const std::optional<GURL>& new_url) override {}
void SetPriority(net::RequestPriority priority,
int32_t intra_priority_value) override {}
void PauseReadingBodyFromNet() override {}
void ResumeReadingBodyFromNet() override {}
mojo::Receiver<network::mojom::URLLoader> url_loader_;
mojo::Remote<network::mojom::URLLoaderClient> client_;

View file

@ -29,7 +29,6 @@
#include "shell/browser/osr/osr_video_consumer.h"
#include "shell/browser/osr/osr_view_proxy.h"
#include "third_party/blink/public/mojom/widget/record_content_to_visible_time_request.mojom-forward.h"
#include "third_party/blink/public/platform/web_vector.h"
#include "third_party/skia/include/core/SkBitmap.h"
#include "ui/base/ime/text_input_client.h"
#include "ui/compositor/compositor.h"

View file

@ -149,7 +149,7 @@ void ThemeDataSource::SendColorsCss(
std::string set_name, ui::ColorId start, ui::ColorId end,
ColorIdCSSCallback color_css_name) {
// Only return these mappings if specified in the query parameter.
auto it = base::ranges::find(color_id_sets, set_name);
auto it = std::ranges::find(color_id_sets, set_name);
if (it == color_id_sets.end()) {
return std::string();
}

View file

@ -5,7 +5,7 @@
#ifndef ELECTRON_SHELL_BROWSER_WEBAUTHN_ELECTRON_AUTHENTICATOR_REQUEST_DELEGATE_H_
#define ELECTRON_SHELL_BROWSER_WEBAUTHN_ELECTRON_AUTHENTICATOR_REQUEST_DELEGATE_H_
#include "content/public/browser/authenticator_request_client_delegate.h"
#include "content/public/browser/web_authentication_delegate.h"
namespace electron {

View file

@ -14,7 +14,6 @@
#include "base/memory/weak_ptr.h"
#include "components/spellcheck/renderer/spellcheck_worditerator.h"
#include "third_party/blink/public/platform/web_spell_check_panel_host_client.h"
#include "third_party/blink/public/platform/web_vector.h"
#include "third_party/blink/public/web/web_text_check_client.h"
#include "v8/include/v8-context.h"
#include "v8/include/v8-forward.h"

View file

@ -187,7 +187,7 @@ class ScriptExecutionCallback {
}
}
void Completed(const blink::WebVector<v8::Local<v8::Value>>& result) {
void Completed(const std::vector<v8::Local<v8::Value>>& result) {
v8::Isolate* isolate = promise_.isolate();
if (!result.empty()) {
if (!result[0].IsEmpty()) {
@ -575,8 +575,7 @@ class WebFrameRenderer final : public gin::Wrappable<WebFrameRenderer>,
->FrameWidget()
->GetActiveWebInputMethodController()
->CommitText(blink::WebString::FromUTF8(text),
blink::WebVector<ui::ImeTextSpan>(), blink::WebRange(),
0);
std::vector<ui::ImeTextSpan>(), blink::WebRange(), 0);
}
}

View file

@ -27,8 +27,8 @@ PrintRenderFrameHelperDelegate::~PrintRenderFrameHelperDelegate() = default;
blink::WebElement PrintRenderFrameHelperDelegate::GetPdfElement(
blink::WebLocalFrame* frame) {
#if BUILDFLAG(ENABLE_ELECTRON_EXTENSIONS)
if (frame->Parent() &&
IsPdfInternalPluginAllowedOrigin(frame->Parent()->GetSecurityOrigin())) {
if (frame->Parent() && IsPdfInternalPluginAllowedOrigin(
frame->Parent()->GetSecurityOrigin(), {})) {
auto plugin_element = frame->GetDocument().QuerySelector("embed");
DCHECK(!plugin_element.IsNull());
return plugin_element;

View file

@ -72,7 +72,6 @@
#if BUILDFLAG(ENABLE_PDF_VIEWER)
#include "components/pdf/common/constants.h" // nogncheck
#include "components/pdf/common/pdf_util.h" // nogncheck
#include "components/pdf/renderer/pdf_internal_plugin_delegate.h"
#include "shell/common/electron_constants.h"
#endif // BUILDFLAG(ENABLE_PDF_VIEWER)
@ -120,25 +119,6 @@ std::vector<std::string> ParseSchemesCLISwitch(
base::SPLIT_WANT_NONEMPTY);
}
#if BUILDFLAG(ENABLE_PDF_VIEWER)
class ChromePdfInternalPluginDelegate final
: public pdf::PdfInternalPluginDelegate {
public:
ChromePdfInternalPluginDelegate() = default;
ChromePdfInternalPluginDelegate(const ChromePdfInternalPluginDelegate&) =
delete;
ChromePdfInternalPluginDelegate& operator=(
const ChromePdfInternalPluginDelegate&) = delete;
~ChromePdfInternalPluginDelegate() override = default;
// `pdf::PdfInternalPluginDelegate`:
[[nodiscard]] bool IsAllowedOrigin(const url::Origin& origin) const override {
return origin.scheme() == extensions::kExtensionScheme &&
origin.host() == extension_misc::kPdfExtensionId;
}
};
#endif // BUILDFLAG(ENABLE_PDF_VIEWER)
// static
RendererClientBase* g_renderer_client_base = nullptr;
@ -385,9 +365,7 @@ bool RendererClientBase::OverrideCreatePlugin(
blink::WebPlugin** plugin) {
#if BUILDFLAG(ENABLE_PDF_VIEWER)
if (params.mime_type.Utf8() == pdf::kInternalPluginMimeType) {
*plugin = pdf::CreateInternalPlugin(
std::move(params), render_frame,
std::make_unique<ChromePdfInternalPluginDelegate>());
*plugin = pdf::CreateInternalPlugin(std::move(params), render_frame, {});
return true;
}
#endif // BUILDFLAG(ENABLE_PDF_VIEWER)
@ -425,7 +403,7 @@ bool RendererClientBase::IsPluginHandledExternally(
if (plugin_info->actual_mime_type == pdf::kInternalPluginMimeType) {
if (IsPdfInternalPluginAllowedOrigin(
render_frame->GetWebFrame()->GetSecurityOrigin())) {
render_frame->GetWebFrame()->GetSecurityOrigin(), {})) {
return true;
}
}

View file

@ -7,7 +7,6 @@
#include <utility>
#include "base/no_destructor.h"
#include "base/ranges/algorithm.h"
#include "base/threading/thread_local.h"
#include "shell/common/api/electron_bindings.h"
#include "shell/common/gin_helper/event_emitter_caller.h"

View file

@ -232,16 +232,15 @@ describe('setDisplayMediaRequestHandler', () => {
});
const w = new BrowserWindow({ show: false, webPreferences: { session: ses } });
await w.loadURL(serverUrl);
const { ok } = await w.webContents.executeJavaScript(`
const { ok, message } = await w.webContents.executeJavaScript(`
navigator.mediaDevices.getDisplayMedia({
video: true,
audio: true,
}).then(x => ({ok: x instanceof MediaStream}), e => ({ok: false, message: e.message}))
`, true);
expect(requestHandlerCalled).to.be.true();
// This is a little surprising... apparently chrome will generate a stream
// for this non-existent web contents?
expect(ok).to.be.true();
expect(ok).to.be.false();
expect(message).to.equal('Could not start video source');
});
it('is not called when calling getUserMedia', async () => {