chore: bump chromium to 137.0.7141.0 (main) (#46725)

* chore: bump chromium in DEPS to 137.0.7139.0

* chore: bump chromium in DEPS to 137.0.7141.0

* chore: update patches

Refs 6474596
Refs 6443472
Refs 6471184

* [ServiceWorker] Pipe is_for_service_worker into OverrideURLLoaderFactoryParams

Refs 6459481

* Reland "[PermissionOptions] Use PermissionDescriptorPtr in PermissionControllerDelegate"

Refs 6455975

* clickiness: Check attestation and user settings on origins

Refs 6356796

* extensions : Move ReloadExtension from ExtensionService

Refs 6472812
Refs 6472777

* fixup! Update AppleKeychain API to be friendlier

Refs 6443472

* chore: script/gen-libc++-filenames.js

* Rename ColorVariant::CovertToSkColor() to ColorVariant::ResolveToSkColor()

Refs 6373793

* [headless] Provide headless aware window metrics on Windows

Refs 6374074

---------

Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: deepak1556 <hop2deep@gmail.com>
This commit is contained in:
electron-roller[bot] 2025-04-24 17:18:38 +09:00 committed by GitHub
parent e9f279afd1
commit 08b7a1f801
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
68 changed files with 393 additions and 371 deletions

2
DEPS
View file

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

View file

@ -1613,7 +1613,7 @@ libcxx_headers = [
"//third_party/libc++/src/include/mdspan",
"//third_party/libc++/src/include/memory",
"//third_party/libc++/src/include/memory_resource",
"//third_party/libc++/src/include/module.modulemap",
"//third_party/libc++/src/include/module.modulemap.in",
"//third_party/libc++/src/include/mutex",
"//third_party/libc++/src/include/new",
"//third_party/libc++/src/include/numbers",

View file

@ -145,6 +145,5 @@ fix_win32_synchronous_spellcheck.patch
fix_enable_wrap_iter_in_string_view_and_array.patch
fix_linter_error.patch
revert_enable_crel_for_arm32_targets.patch
mac_fix_check_on_ime_reconversion_due_to_invalid_replacement_range.patch
chore_grandfather_in_electron_views_and_delegates.patch
refactor_patch_electron_permissiontypes_into_blink.patch

View file

@ -7,7 +7,7 @@ Ensure that licenses for the dependencies introduced by Electron
are included in `LICENSES.chromium.html`
diff --git a/tools/licenses/licenses.py b/tools/licenses/licenses.py
index 7b948007755d306babea73498c17031c437ae6dc..adcfad8931c314f86d26347ccda438af452b8167 100755
index b0807ee3d8ebcf34f0d740362aa46c8631562d38..118d200b74953c0068ad59300ccc0e3041d77a10 100755
--- a/tools/licenses/licenses.py
+++ b/tools/licenses/licenses.py
@@ -337,6 +337,31 @@ SPECIAL_CASES = {

View file

@ -10,7 +10,7 @@ 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 c642d01c1767847d97281da8829653ba4f223b2b..3047367449b8c21c3a065d62e70a44aa9ef8003e 100644
index 09027b5c273a209519a1c9268c604b3cf1ca0d3c..00511a4558dbc907f752b4c602cc97b4590c16b0 100644
--- a/chrome/browser/ui/webui/accessibility/accessibility_ui.cc
+++ b/chrome/browser/ui/webui/accessibility/accessibility_ui.cc
@@ -48,6 +48,7 @@
@ -21,7 +21,7 @@ index c642d01c1767847d97281da8829653ba4f223b2b..3047367449b8c21c3a065d62e70a44aa
#include "ui/accessibility/accessibility_features.h"
#include "ui/accessibility/ax_updates_and_events.h"
#include "ui/accessibility/platform/ax_platform_node.h"
@@ -166,7 +167,7 @@ base::Value::Dict BuildTargetDescriptor(content::RenderViewHost* rvh) {
@@ -167,7 +168,7 @@ base::Value::Dict BuildTargetDescriptor(content::RenderViewHost* rvh) {
rvh->GetRoutingID(), accessibility_mode);
}
@ -30,16 +30,16 @@ index c642d01c1767847d97281da8829653ba4f223b2b..3047367449b8c21c3a065d62e70a44aa
base::Value::Dict BuildTargetDescriptor(Browser* browser) {
base::Value::Dict target_data;
target_data.Set(kSessionIdField, browser->session_id().id());
@@ -187,7 +188,7 @@ void HandleAccessibilityRequestCallback(
DCHECK(ShouldHandleAccessibilityRequestCallback(path));
@@ -190,7 +191,7 @@ void HandleAccessibilityRequestCallback(
auto& browser_accessibility_state =
*content::BrowserAccessibilityState::GetInstance();
base::Value::Dict data;
- PrefService* pref = Profile::FromBrowserContext(current_context)->GetPrefs();
+ PrefService* pref = static_cast<electron::ElectronBrowserContext*>(current_context)->prefs();
ui::AXMode mode =
content::BrowserAccessibilityState::GetInstance()->GetAccessibilityMode();
ui::AXMode mode = browser_accessibility_state.GetAccessibilityMode();
bool native = mode.has_mode(ui::AXMode::kNativeAPIs);
@@ -212,7 +213,7 @@ void HandleAccessibilityRequestCallback(
bool web = mode.has_mode(ui::AXMode::kWebContents);
@@ -214,7 +215,7 @@ void HandleAccessibilityRequestCallback(
data.Set(kPDFPrinting, pdf_printing);
std::string pref_api_type =
@ -48,7 +48,7 @@ index c642d01c1767847d97281da8829653ba4f223b2b..3047367449b8c21c3a065d62e70a44aa
bool pref_api_type_supported = false;
std::vector<ui::AXApiType::Type> supported_api_types =
@@ -279,11 +280,11 @@ void HandleAccessibilityRequestCallback(
@@ -282,11 +283,11 @@ void HandleAccessibilityRequestCallback(
data.Set(kPagesField, std::move(page_list));
base::Value::List browser_list;
@ -62,7 +62,7 @@ index c642d01c1767847d97281da8829653ba4f223b2b..3047367449b8c21c3a065d62e70a44aa
data.Set(kBrowsersField, std::move(browser_list));
std::string json_string;
@@ -753,7 +754,8 @@ void AccessibilityUIMessageHandler::SetGlobalString(
@@ -762,7 +763,8 @@ void AccessibilityUIMessageHandler::SetGlobalString(
const std::string value = CheckJSValue(data.FindString(kValueField));
if (string_name == kApiTypeField) {
@ -72,7 +72,7 @@ index c642d01c1767847d97281da8829653ba4f223b2b..3047367449b8c21c3a065d62e70a44aa
pref->SetString(prefs::kShownAccessibilityApiType, value);
}
}
@@ -807,7 +809,8 @@ void AccessibilityUIMessageHandler::RequestWebContentsTree(
@@ -816,7 +818,8 @@ void AccessibilityUIMessageHandler::RequestWebContentsTree(
AXPropertyFilter::ALLOW_EMPTY);
AddPropertyFilters(property_filters, deny, AXPropertyFilter::DENY);
@ -82,7 +82,7 @@ index c642d01c1767847d97281da8829653ba4f223b2b..3047367449b8c21c3a065d62e70a44aa
ui::AXApiType::Type api_type =
ui::AXApiType::From(pref->GetString(prefs::kShownAccessibilityApiType));
std::string accessibility_contents =
@@ -834,6 +837,7 @@ void AccessibilityUIMessageHandler::RequestNativeUITree(
@@ -843,6 +846,7 @@ void AccessibilityUIMessageHandler::RequestNativeUITree(
AXPropertyFilter::ALLOW_EMPTY);
AddPropertyFilters(property_filters, deny, AXPropertyFilter::DENY);
@ -90,7 +90,7 @@ index c642d01c1767847d97281da8829653ba4f223b2b..3047367449b8c21c3a065d62e70a44aa
for (Browser* browser : *BrowserList::GetInstance()) {
if (browser->session_id().id() == session_id) {
base::Value::Dict result = BuildTargetDescriptor(browser);
@@ -846,6 +850,7 @@ void AccessibilityUIMessageHandler::RequestNativeUITree(
@@ -855,6 +859,7 @@ void AccessibilityUIMessageHandler::RequestNativeUITree(
return;
}
}
@ -98,7 +98,7 @@ index c642d01c1767847d97281da8829653ba4f223b2b..3047367449b8c21c3a065d62e70a44aa
#endif // !BUILDFLAG(IS_ANDROID)
// No browser with the specified |session_id| was found.
base::Value::Dict result;
@@ -889,11 +894,13 @@ void AccessibilityUIMessageHandler::StopRecording(
@@ -898,11 +903,13 @@ void AccessibilityUIMessageHandler::StopRecording(
}
ui::AXApiType::Type AccessibilityUIMessageHandler::GetRecordingApiType() {
@ -115,7 +115,7 @@ index c642d01c1767847d97281da8829653ba4f223b2b..3047367449b8c21c3a065d62e70a44aa
// 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()) {
@@ -963,8 +970,11 @@ void AccessibilityUIMessageHandler::RequestAccessibilityEvents(
@@ -972,8 +979,11 @@ void AccessibilityUIMessageHandler::RequestAccessibilityEvents(
// static
void AccessibilityUIMessageHandler::RegisterProfilePrefs(
user_prefs::PrefRegistrySyncable* registry) {

View file

@ -8,10 +8,10 @@ WebPreferences of in-process child windows, rather than relying on
process-level command line switches, as before.
diff --git a/third_party/blink/common/web_preferences/web_preferences_mojom_traits.cc b/third_party/blink/common/web_preferences/web_preferences_mojom_traits.cc
index 2612e54a2b0d3c71bd8efe9340bc58c795500140..e590387effc958ba7215e75ea1e2a8173f624d02 100644
index 009f3563df63bc2ba2eadeecaea4f328d6a409ec..769ff8faaddf543fba1a41aff939f23741127247 100644
--- a/third_party/blink/common/web_preferences/web_preferences_mojom_traits.cc
+++ b/third_party/blink/common/web_preferences/web_preferences_mojom_traits.cc
@@ -148,6 +148,19 @@ bool StructTraits<blink::mojom::WebPreferencesDataView,
@@ -150,6 +150,19 @@ bool StructTraits<blink::mojom::WebPreferencesDataView,
out->v8_cache_options = data.v8_cache_options();
out->record_whole_document = data.record_whole_document();
out->stylus_handwriting_enabled = data.stylus_handwriting_enabled();
@ -65,7 +65,7 @@ index 85f312a9ea1eca0ff7ba4c679fabb3156aabbc0b..a9dc007a93003610d68e3118b4a47a86
// chrome, except for the cases where it would require lots of extra work for
// the embedder to use the same default value.
diff --git a/third_party/blink/public/common/web_preferences/web_preferences_mojom_traits.h b/third_party/blink/public/common/web_preferences/web_preferences_mojom_traits.h
index 9b7bc55a0e61de85688b2370012e14f8b47c43ab..63b035046ac3d565e5ee1f3a3c559da88d81f059 100644
index 1173ace39b6256edc188a4c6649e7cd4c4484899..c1d53122af52f7785a016f6fc62d9aa684a4be8c 100644
--- a/third_party/blink/public/common/web_preferences/web_preferences_mojom_traits.h
+++ b/third_party/blink/public/common/web_preferences/web_preferences_mojom_traits.h
@@ -8,6 +8,7 @@
@ -76,7 +76,7 @@ index 9b7bc55a0e61de85688b2370012e14f8b47c43ab..63b035046ac3d565e5ee1f3a3c559da8
#include "mojo/public/cpp/bindings/struct_traits.h"
#include "net/nqe/effective_connection_type.h"
#include "third_party/blink/public/common/common_export.h"
@@ -437,6 +438,52 @@ struct BLINK_COMMON_EXPORT StructTraits<blink::mojom::WebPreferencesDataView,
@@ -442,6 +443,52 @@ struct BLINK_COMMON_EXPORT StructTraits<blink::mojom::WebPreferencesDataView,
return r.stylus_handwriting_enabled;
}
@ -130,7 +130,7 @@ index 9b7bc55a0e61de85688b2370012e14f8b47c43ab..63b035046ac3d565e5ee1f3a3c559da8
return r.cookie_enabled;
}
diff --git a/third_party/blink/public/mojom/webpreferences/web_preferences.mojom b/third_party/blink/public/mojom/webpreferences/web_preferences.mojom
index e7c3bc263844c0ddeb9011440e2c0fd8f848ca27..142dae3834fe96f120727ef9ffe1250607bcadec 100644
index ffd46eb579c7c6bf9263b02e9bbe0dee013ac76d..be40f76fae9653e8d3fdcfa74979089d3d317533 100644
--- a/third_party/blink/public/mojom/webpreferences/web_preferences.mojom
+++ b/third_party/blink/public/mojom/webpreferences/web_preferences.mojom
@@ -8,9 +8,11 @@ import "third_party/blink/public/mojom/css/preferred_color_scheme.mojom";
@ -145,7 +145,7 @@ index e7c3bc263844c0ddeb9011440e2c0fd8f848ca27..142dae3834fe96f120727ef9ffe12506
enum PointerType {
kPointerNone = 1, // 1 << 0
kPointerFirstType = kPointerNone,
@@ -218,6 +220,19 @@ struct WebPreferences {
@@ -219,6 +221,19 @@ struct WebPreferences {
// If true, stylus handwriting recognition to text input will be available in
// editable input fields which are non-password type.
bool stylus_handwriting_enabled;

View file

@ -49,10 +49,10 @@ index 2072f6b14289b1f3a76dbccc98f29aa178c1c35c..d7017437a7e7e6ac130677e52731d048
// 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 d59385c12597881a4dc97ff996844206e899ab02..a4ac1a3d0d6390b5826195f72abc4544cdc2bf14 100644
index d568d527d731a1f5acc318c9bfa10acefd1b0969..cd799fb3c682389a65375092debed10cb9714747 100644
--- a/third_party/blink/renderer/core/frame/local_frame.cc
+++ b/third_party/blink/renderer/core/frame/local_frame.cc
@@ -750,10 +750,6 @@ bool LocalFrame::DetachImpl(FrameDetachType type) {
@@ -755,10 +755,6 @@ bool LocalFrame::DetachImpl(FrameDetachType type) {
}
DCHECK(!view_ || !view_->IsAttached());
@ -63,7 +63,7 @@ index d59385c12597881a4dc97ff996844206e899ab02..a4ac1a3d0d6390b5826195f72abc4544
if (!Client())
return false;
@@ -807,6 +803,11 @@ bool LocalFrame::DetachImpl(FrameDetachType type) {
@@ -812,6 +808,11 @@ bool LocalFrame::DetachImpl(FrameDetachType type) {
DCHECK(!view_->IsAttached());
Client()->WillBeDetached();

View file

@ -11,7 +11,7 @@ To accomplish this, we need to make simdutf's config public here
for use by third_party/electron_node.
diff --git a/third_party/simdutf/BUILD.gn b/third_party/simdutf/BUILD.gn
index d88fe7e43ac2a8129702e58bd2cd2aea094452e3..3cbeb89587f37b0ebc3622258fea0161ebf1d7b2 100644
index 5fbce38841f04dad38f202f529ae84c609c6a8de..9f5ef9bceade8e30bbd2be616b9143e9708fefd8 100644
--- a/third_party/simdutf/BUILD.gn
+++ b/third_party/simdutf/BUILD.gn
@@ -6,9 +6,14 @@ source_set("header") {

View file

@ -11,7 +11,7 @@ This patch can (and should) be removed when we can prevent those symbols
from being stripped in the release build.
diff --git a/build/config/compiler/compiler.gni b/build/config/compiler/compiler.gni
index 5b98b4aedab5b700d21d6a8eac11c81cc13f6b39..8ee6f54f67c300a52074f33f9d6fe08a68e3be4b 100644
index a47aa1cf4fb55c91908e15f1c406d79a48697cf8..a05a20229749e032e6d26d87177aebc4955ce081 100644
--- a/build/config/compiler/compiler.gni
+++ b/build/config/compiler/compiler.gni
@@ -79,7 +79,7 @@ declare_args() {

View file

@ -33,10 +33,10 @@ index 69502170fe7a4d37773ad3e9cd7eeaf63fe1984d..fe0de5d0ec23121bd43acd641afcab2e
"//base",
"//build:branding_buildflags",
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
index 988dc42922d50dec0bacb0627dda1d81feec6ee1..4ae5982ea87987e7cb8ba671175953c1c48faf00 100644
index b5b444c3b6aa913b2d4b7b71ea37b098bb03850c..ae493dd80dd320710f854cf5565a9f03c5c0f0b0 100644
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -4595,7 +4595,7 @@ static_library("browser") {
@@ -4602,7 +4602,7 @@ static_library("browser") {
[ "//chrome/browser/ui/webui/signin:profile_impl" ]
}
@ -46,10 +46,10 @@ index 988dc42922d50dec0bacb0627dda1d81feec6ee1..4ae5982ea87987e7cb8ba671175953c1
# than here in :chrome_dll.
deps += [ "//chrome:packed_resources_integrity_header" ]
diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
index cc61e7228cc20219cd7c41b39e139a9f9bc42c90..384b78c0910a4534cbef4f1af821a2a629d6d3a6 100644
index 7d57d1441a3872db6719f6ab50d1c88e86c2aa1c..7ccbce522716252eb8aa071f76568bc6a3a659d7 100644
--- a/chrome/test/BUILD.gn
+++ b/chrome/test/BUILD.gn
@@ -7153,9 +7153,12 @@ test("unit_tests") {
@@ -7177,9 +7177,12 @@ test("unit_tests") {
"//chrome/notification_helper",
]
@ -63,7 +63,7 @@ index cc61e7228cc20219cd7c41b39e139a9f9bc42c90..384b78c0910a4534cbef4f1af821a2a6
"//chrome//services/util_win:unit_tests",
"//chrome/app:chrome_dll_resources",
"//chrome/app:win_unit_tests",
@@ -8120,6 +8123,10 @@ test("unit_tests") {
@@ -8143,6 +8146,10 @@ test("unit_tests") {
"../browser/performance_manager/policies/background_tab_loading_policy_unittest.cc",
]
@ -74,7 +74,7 @@ index cc61e7228cc20219cd7c41b39e139a9f9bc42c90..384b78c0910a4534cbef4f1af821a2a6
sources += [
# The importer code is not used on Android.
"../common/importer/firefox_importer_utils_unittest.cc",
@@ -8175,7 +8182,6 @@ test("unit_tests") {
@@ -8198,7 +8205,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 a9d2caeb1c92e102daa9a8bd5bdc5a55af418cf4..efb5bf91722d4b18ae704ebf7355a13f253bef20 100644
index c3a3bf4970783804bc76ee4e71bb8233b5f215a8..78c72710b411e05ca0b6f01811076599fa66fc15 100644
--- a/build/config/BUILDCONFIG.gn
+++ b/build/config/BUILDCONFIG.gn
@@ -123,6 +123,9 @@ if (current_os == "") {

View file

@ -7,10 +7,10 @@ Build libc++ as static library to compile and pass
nan tests
diff --git a/buildtools/third_party/libc++/BUILD.gn b/buildtools/third_party/libc++/BUILD.gn
index 4bb53257492b3866eeb8a9fde433f363fd263be0..b758ddd025f74fdcdc66067c783e86f299c34973 100644
index f411f2d51a397db52ba28eb7ed430f6f16c5396d..219e99e56cbf35aac8e18cff96601143f9f44ebf 100644
--- a/buildtools/third_party/libc++/BUILD.gn
+++ b/buildtools/third_party/libc++/BUILD.gn
@@ -291,7 +291,11 @@ libcxx_modules("std_wctype_h") {
@@ -295,7 +295,11 @@ libcxx_modules("std_wctype_h") {
if (libcxx_is_shared) {
_libcxx_target_type = "shared_library"
} else {
@ -23,7 +23,7 @@ index 4bb53257492b3866eeb8a9fde433f363fd263be0..b758ddd025f74fdcdc66067c783e86f2
}
target(_libcxx_target_type, "libc++") {
@@ -300,6 +304,7 @@ target(_libcxx_target_type, "libc++") {
@@ -304,6 +308,7 @@ target(_libcxx_target_type, "libc++") {
# need to explicitly depend on libc++.
visibility = [
"//build/config:common_deps",

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 d05f8147a0d38930483c201d61546f1da8db4769..c88d80416ac7b6c76ff3e11016d2e20601e89d38 100644
index 0e6fe26afb26a33e2a02d7caef00d15fcb92fc89..24a854c190eab39c85fa9b94d3369999688bf943 100644
--- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -9764,6 +9764,7 @@ void RenderFrameHostImpl::CreateNewWindow(
@@ -9772,6 +9772,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 d05f8147a0d38930483c201d61546f1da8db4769..c88d80416ac7b6c76ff3e11016d2e206
&no_javascript_access);
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 503a7af9740eb492db21e5bcf9b96e49ebaefe1f..87eb1f54dc33211cd69a95a1d5b4b000e9882bf1 100644
index a275479709b7e5d97919d2e89b8e6a8a363d9874..488c6750990666cf8b58dc3b0a1859e0c852564c 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -5101,6 +5101,12 @@ FrameTree* WebContentsImpl::CreateNewWindow(
@@ -5118,6 +5118,12 @@ FrameTree* WebContentsImpl::CreateNewWindow(
SetPartitionedPopinOpenerOnNewWindowIfNeeded(new_contents_impl, params,
opener);
@ -37,7 +37,7 @@ index 503a7af9740eb492db21e5bcf9b96e49ebaefe1f..87eb1f54dc33211cd69a95a1d5b4b000
// 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
@@ -5142,12 +5148,6 @@ FrameTree* WebContentsImpl::CreateNewWindow(
@@ -5159,12 +5165,6 @@ FrameTree* WebContentsImpl::CreateNewWindow(
AddWebContentsDestructionObserver(new_contents_impl);
}
@ -66,10 +66,10 @@ index 55bb4ae3bab4cdf20b3e1dde9450a5c0e4e62b37..fe444c7fa140166a1b65c7a8a2676e2d
// 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 95b6e381f139d519fd65a258b03aecb2cf327532..5dc0f67f97c7a0b3f7752462006c56a4d570c8b1 100644
index 0c3731448b236cedd333aa0a9a0b01577596d4bc..cd3ab7d799e31b2ce0f9b7a280121b07d740865d 100644
--- a/content/public/browser/content_browser_client.cc
+++ b/content/public/browser/content_browser_client.cc
@@ -820,6 +820,8 @@ bool ContentBrowserClient::CanCreateWindow(
@@ -821,6 +821,8 @@ bool ContentBrowserClient::CanCreateWindow(
const std::string& frame_name,
WindowOpenDisposition disposition,
const blink::mojom::WindowFeatures& features,
@ -79,7 +79,7 @@ index 95b6e381f139d519fd65a258b03aecb2cf327532..5dc0f67f97c7a0b3f7752462006c56a4
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 9a1edb51e6e98332a9b96b52fee6b97c75ba8e80..bc948f100fc20958f021da3b3b3005badfcb4f1a 100644
index d8b137849e15749e011b1c8ae1cb78cd0ed47844..f25e2eaeacfef82ca904e40f8b7b3913a121db9d 100644
--- a/content/public/browser/content_browser_client.h
+++ b/content/public/browser/content_browser_client.h
@@ -199,6 +199,7 @@ class NetworkService;
@ -90,7 +90,7 @@ index 9a1edb51e6e98332a9b96b52fee6b97c75ba8e80..bc948f100fc20958f021da3b3b3005ba
} // namespace network
namespace sandbox {
@@ -1376,6 +1377,8 @@ class CONTENT_EXPORT ContentBrowserClient {
@@ -1377,6 +1378,8 @@ class CONTENT_EXPORT ContentBrowserClient {
const std::string& frame_name,
WindowOpenDisposition disposition,
const blink::mojom::WindowFeatures& features,
@ -163,10 +163,10 @@ index f27a9538481a78c0defc4ed80b0efb3132298f56..afb727a7f99f240e4d59970a169c2ea2
// moved on send.
bool is_background_tab =
diff --git a/content/web_test/browser/web_test_content_browser_client.cc b/content/web_test/browser/web_test_content_browser_client.cc
index fa36b9907988ab971c94eae317e6e1dc4d170762..a2cafef6cae2fd78580fdf90dae17ac6586a7312 100644
index 7c4f2f67cf934472eac4a678fbced01c177c9b47..584faf64137ea3eb939e795684061c9b70ad6263 100644
--- a/content/web_test/browser/web_test_content_browser_client.cc
+++ b/content/web_test/browser/web_test_content_browser_client.cc
@@ -534,6 +534,8 @@ bool WebTestContentBrowserClient::CanCreateWindow(
@@ -535,6 +535,8 @@ bool WebTestContentBrowserClient::CanCreateWindow(
const std::string& frame_name,
WindowOpenDisposition disposition,
const blink::mojom::WindowFeatures& features,
@ -176,10 +176,10 @@ index fa36b9907988ab971c94eae317e6e1dc4d170762..a2cafef6cae2fd78580fdf90dae17ac6
bool opener_suppressed,
bool* no_javascript_access) {
diff --git a/content/web_test/browser/web_test_content_browser_client.h b/content/web_test/browser/web_test_content_browser_client.h
index 9c6bbdc4f8e4f78fd745ac4e71510d9534925a78..f4a68476f71e8283bb3da3642758416efb98c168 100644
index 78eafab336717b7ec8adab23b3bd8baace7b3e09..16cfe915177d812bce5738acf2b1991b7eb1aeb1 100644
--- a/content/web_test/browser/web_test_content_browser_client.h
+++ b/content/web_test/browser/web_test_content_browser_client.h
@@ -93,6 +93,8 @@ class WebTestContentBrowserClient : public ShellContentBrowserClient {
@@ -94,6 +94,8 @@ class WebTestContentBrowserClient : public ShellContentBrowserClient {
const std::string& frame_name,
WindowOpenDisposition disposition,
const blink::mojom::WindowFeatures& features,

View file

@ -34,10 +34,10 @@ index 39b5a8fdd165efd74b00256552b51b5413107958..bfc4ef4f50efff4a77f2aef64335bb7e
class ScrollEvent;
diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
index a86e512dd7ecb7e30714ea2709c1704b406e561f..f55fd8343052c1d9c0a7f21af7c7d92aa2745d5a 100644
index f6686dd07fc13c84b4b41416b6936bfdd1335d1d..84c0956fc948159362acb01d6a24064e8ba5e085 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
@@ -1416,6 +1416,10 @@ void DesktopWindowTreeHostWin::HandleHeadlessWindowBoundsChanged(
@@ -1415,6 +1415,10 @@ void DesktopWindowTreeHostWin::HandleHeadlessWindowBoundsChanged(
window()->SetProperty(aura::client::kHeadlessBoundsKey, bounds);
}
@ -49,7 +49,7 @@ index a86e512dd7ecb7e30714ea2709c1704b406e561f..f55fd8343052c1d9c0a7f21af7c7d92a
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 3893534a89947a59c5a5c4e6dc3953047817a59e..5ba94748640c2c137833add6b95cfd8962e7fdb6 100644
index 67f7bf942f3562bd52b090557e7c9bf66c594120..9bca860f05cb93380426e319cd868f84dba98657 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
@@ -271,6 +271,7 @@ class VIEWS_EXPORT DesktopWindowTreeHostWin
@ -61,10 +61,10 @@ index 3893534a89947a59c5a5c4e6dc3953047817a59e..5ba94748640c2c137833add6b95cfd89
Widget* GetWidget();
const Widget* GetWidget() const;
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc
index 5a1533b01946b76de2c2aaad137e14c4d7a00a3c..0113b1bce0eb7a7e3dfb3154a4844a9943b8633e 100644
index 5919efa661c3b1ed210f7a67f85fdd3882011bae..5b17d5bf0b32405ae9515b941a17b68a04a3b317 100644
--- a/ui/views/win/hwnd_message_handler.cc
+++ b/ui/views/win/hwnd_message_handler.cc
@@ -3196,15 +3196,19 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message,
@@ -3178,15 +3178,19 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message,
}
// We must let Windows handle the caption buttons if it's drawing them, or
// they won't work.
@ -86,7 +86,7 @@ index 5a1533b01946b76de2c2aaad137e14c4d7a00a3c..0113b1bce0eb7a7e3dfb3154a4844a99
return 0;
}
}
@@ -3227,6 +3231,7 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message,
@@ -3209,6 +3213,7 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message,
// handle alt-space, or in the frame itself.
is_right_mouse_pressed_on_caption_ = false;
ReleaseCapture();
@ -94,7 +94,7 @@ index 5a1533b01946b76de2c2aaad137e14c4d7a00a3c..0113b1bce0eb7a7e3dfb3154a4844a99
// |point| is in window coordinates, but WM_NCHITTEST and TrackPopupMenu()
// expect screen coordinates.
POINT screen_point = CR_POINT_INITIALIZER_FROM_LPARAM(l_param);
@@ -3234,7 +3239,17 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message,
@@ -3216,7 +3221,17 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message,
w_param = static_cast<WPARAM>(SendMessage(
hwnd(), WM_NCHITTEST, 0, MAKELPARAM(screen_point.x, screen_point.y)));
if (w_param == HTCAPTION || w_param == HTSYSMENU) {
@ -114,10 +114,10 @@ index 5a1533b01946b76de2c2aaad137e14c4d7a00a3c..0113b1bce0eb7a7e3dfb3154a4844a99
}
} else if (message == WM_NCLBUTTONDOWN &&
diff --git a/ui/views/win/hwnd_message_handler_delegate.h b/ui/views/win/hwnd_message_handler_delegate.h
index 94a23d66c6a88e398178f84bfc6f0531c1efa41d..b46775a5b3aab8ec859e9fe42c925369bf9b93ed 100644
index 252d7ce78ad49596fb030160cb69d9bf3dc0951f..5e7975cf5cb3435b844fda58d7582d54cb583a72 100644
--- a/ui/views/win/hwnd_message_handler_delegate.h
+++ b/ui/views/win/hwnd_message_handler_delegate.h
@@ -258,6 +258,10 @@ class VIEWS_EXPORT HWNDMessageHandlerDelegate {
@@ -255,6 +255,10 @@ class VIEWS_EXPORT HWNDMessageHandlerDelegate {
// Called when the headless window bounds has changed.
virtual void HandleHeadlessWindowBoundsChanged(const gfx::Rect& bounds) = 0;

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 ae5c9abd3c9374ad3f7a76d74420d0e723a4156a..3b0faab24a3b1d4bd194d18fdef02706362de39d 100644
index fffc10cc6598539ba9518ea9c46e112ce8df1843..e49355eb60d9df2145344f3aa102444222e55e95 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -5020,7 +5020,7 @@ FrameTree* WebContentsImpl::CreateNewWindow(
@@ -5037,7 +5037,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

@ -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 9f8d54657cb605e33c59ab6faed575636fba733a..01a115e570e0f0ae28cda448f9284fae65d9dedf 100644
index 4dce5ccec5fa16dbf415fc45193a5e60105bf50f..862326a2ce0120c116ee00be310efbb2f9579a6e 100644
--- a/chrome/browser/ui/browser.cc
+++ b/chrome/browser/ui/browser.cc
@@ -2298,12 +2298,11 @@ bool Browser::IsWebContentsCreationOverridden(
@@ -2306,12 +2306,11 @@ bool Browser::IsWebContentsCreationOverridden(
content::SiteInstance* source_site_instance,
content::mojom::WindowContainerType window_container_type,
const GURL& opener_url,
@ -99,10 +99,10 @@ index 9f8d54657cb605e33c59ab6faed575636fba733a..01a115e570e0f0ae28cda448f9284fae
WebContents* Browser::CreateCustomWebContents(
diff --git a/chrome/browser/ui/browser.h b/chrome/browser/ui/browser.h
index 36e68b4d128016b1a77edf9467d42c6d1ab729fa..837a545c9ab0cb9fe8dd28fecd71f29b7b60fafc 100644
index 9b4f962852a757270d41c7c01804595fe1604519..4376814678874bde7ce8885954a571ce563ad6a0 100644
--- a/chrome/browser/ui/browser.h
+++ b/chrome/browser/ui/browser.h
@@ -1011,8 +1011,7 @@ class Browser : public TabStripModelObserver,
@@ -1024,8 +1024,7 @@ class Browser : public TabStripModelObserver,
content::SiteInstance* source_site_instance,
content::mojom::WindowContainerType window_container_type,
const GURL& opener_url,
@ -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 c7b606450604fe58ca2a19610a8c7784464536ab..84c70711d45b20c22c498c4475c5cf94567d16d2 100644
index 5750805837d17af3cd074ab3ecb66b34b4992b22..0d8321a96a8810ae6c066e60ba3bf57b76663222 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -4983,8 +4983,7 @@ FrameTree* WebContentsImpl::CreateNewWindow(
@@ -5000,8 +5000,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,
@ -260,7 +260,7 @@ index 8a18958035cc1dd26be558349f64f7727570c4ba..7d9c9b06bcc57ef5eb0a2ca74ee20632
// Allow delegate to creates a custom WebContents when
// WebContents::CreateNewWindow() is called. This function is only called
diff --git a/extensions/browser/guest_view/app_view/app_view_guest.cc b/extensions/browser/guest_view/app_view/app_view_guest.cc
index f8b00fec3f2786822b22c052051c524f766c059d..85a535d0b1e49619fec8c9f5c67896204c9fb164 100644
index 8d6fc67cb9b1d653bce64d1ba22aa7ec2d79257c..d5ce746373a1a4310e1eb530aee011a785e1d68c 100644
--- a/extensions/browser/guest_view/app_view/app_view_guest.cc
+++ b/extensions/browser/guest_view/app_view/app_view_guest.cc
@@ -153,8 +153,7 @@ bool AppViewGuest::IsWebContentsCreationOverridden(
@ -352,7 +352,7 @@ index 2dcf51f335f5dac39f431c3e0f56f8789f33d40b..2b433624d0604e0b9da5117b9e83cc15
content::RenderFrameHost* opener,
content::SiteInstance* source_site_instance,
diff --git a/fuchsia_web/webengine/browser/frame_impl.cc b/fuchsia_web/webengine/browser/frame_impl.cc
index 7345b06ac0ac88441af6a98c00dbfbb2b3089a6d..bedbcc2aa4fd4d950615a011d40c019d64c6e473 100644
index 45c7aa83272dfa0d55ac3582a109b376184b389b..2841f550ac1724de4631aae0dd614e2ce3f522f5 100644
--- a/fuchsia_web/webengine/browser/frame_impl.cc
+++ b/fuchsia_web/webengine/browser/frame_impl.cc
@@ -576,8 +576,7 @@ bool FrameImpl::IsWebContentsCreationOverridden(

View file

@ -8,10 +8,10 @@ Allow registering custom protocols to handle service worker main script fetching
Refs https://bugs.chromium.org/p/chromium/issues/detail?id=996511
diff --git a/content/browser/service_worker/service_worker_context_wrapper.cc b/content/browser/service_worker/service_worker_context_wrapper.cc
index ff25eb3670d2391c6fb41b7c612c30ee8798983f..116763b520713a5c61462b2e048a7358486831a2 100644
index aa342545b9e629c4194b8da90380e612ede423d6..3ef48ead14bde84dac0207c1b9ceaf3abf1e637e 100644
--- a/content/browser/service_worker/service_worker_context_wrapper.cc
+++ b/content/browser/service_worker/service_worker_context_wrapper.cc
@@ -1969,6 +1969,26 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest(
@@ -1971,6 +1971,26 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest(
loader_factory_bundle_info =
context()->loader_factory_bundle_for_update_check()->Clone();
@ -38,7 +38,7 @@ index ff25eb3670d2391c6fb41b7c612c30ee8798983f..116763b520713a5c61462b2e048a7358
if (auto* config = content::WebUIConfigMap::GetInstance().GetConfig(
browser_context(), scope)) {
// If this is a Service Worker for a WebUI, the WebUI's URLDataSource
@@ -1988,9 +2008,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest(
@@ -1990,9 +2010,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest(
features::kEnableServiceWorkersForChromeScheme) &&
scope.scheme_piece() == kChromeUIScheme) {
config->RegisterURLDataSource(browser_context());
@ -49,7 +49,7 @@ index ff25eb3670d2391c6fb41b7c612c30ee8798983f..116763b520713a5c61462b2e048a7358
.emplace(kChromeUIScheme, CreateWebUIServiceWorkerLoaderFactory(
browser_context(), kChromeUIScheme,
base::flat_set<std::string>()));
@@ -1998,9 +2016,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest(
@@ -2000,9 +2018,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest(
features::kEnableServiceWorkersForChromeUntrusted) &&
scope.scheme_piece() == kChromeUIUntrustedScheme) {
config->RegisterURLDataSource(browser_context());

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 530cafbe6debde2b64829753f1c7be07fe04629e..5d9de76c3897adacb7439b94eb24700c2aae9f04 100644
index ed7d7512c7112eedcbbddf30ed4a0a0cff4b7e34..fbdf54a1003f30e5113309fa74e851a4eebea85d 100644
--- a/content/browser/renderer_host/navigator.cc
+++ b/content/browser/renderer_host/navigator.cc
@@ -1466,6 +1466,7 @@ void Navigator::RecordNavigationMetrics(
@@ -1476,6 +1476,7 @@ void Navigator::RecordNavigationMetrics(
.InMilliseconds());
}
@ -35,7 +35,7 @@ index 530cafbe6debde2b64829753f1c7be07fe04629e..5d9de76c3897adacb7439b94eb24700c
// 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 &&
@@ -1515,6 +1516,7 @@ void Navigator::RecordNavigationMetrics(
@@ -1525,6 +1526,7 @@ void Navigator::RecordNavigationMetrics(
first_before_unload_start_time)
.InMilliseconds());
}

View file

@ -6,7 +6,7 @@ Subject: feat: enable setting aspect ratio to 0
Make SetAspectRatio accept 0 as valid input, which would reset to null.
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 c437090f8b3d78cbdfaf2441257359b9d393547c..a86e512dd7ecb7e30714ea2709c1704b406e561f 100644
index 828034d26e147dc8f695112247b3b2da7b258d2b..f6686dd07fc13c84b4b41416b6936bfdd1335d1d 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
@@ -664,7 +664,7 @@ void DesktopWindowTreeHostWin::SetOpacity(float opacity) {
@ -19,10 +19,10 @@ index c437090f8b3d78cbdfaf2441257359b9d393547c..a86e512dd7ecb7e30714ea2709c1704b
excluded_margin);
}
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc
index 06af52a01a95d36042bde916c370a0e7f555a427..426b9fe4444d1624756b561612b851d44d37de19 100644
index ac502dee8a21725db9de2e232cb5092a0670f1d9..db2b841e973f05049f712c732ae8d4815a8aff7a 100644
--- a/ui/views/win/hwnd_message_handler.cc
+++ b/ui/views/win/hwnd_message_handler.cc
@@ -1010,8 +1010,11 @@ void HWNDMessageHandler::SetFullscreen(bool fullscreen,
@@ -992,8 +992,11 @@ void HWNDMessageHandler::SetFullscreen(bool fullscreen,
void HWNDMessageHandler::SetAspectRatio(float aspect_ratio,
const gfx::Size& excluded_margin) {

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 b55c17b34e5cc5e367e28c834125c4c74f6cef77..9ef082618e0863eb5ccf69e3740f5dcb98c3ccd0 100644
index 523a18fac8433b7d2b9f17f3185c5bd31e33f5cc..f9dab730cc27234d2143c3172dc404d4e80dcf5e 100644
--- a/services/network/network_context.cc
+++ b/services/network/network_context.cc
@@ -1817,6 +1817,13 @@ void NetworkContext::SetNetworkConditions(
@@ -1829,6 +1829,13 @@ void NetworkContext::SetNetworkConditions(
std::move(network_conditions));
}
@ -51,7 +51,7 @@ index b55c17b34e5cc5e367e28c834125c4c74f6cef77..9ef082618e0863eb5ccf69e3740f5dcb
// 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 2596fecc569d59394703579cda02a27c629d843c..53145360b750ae0167da215fad89e0eae5418deb 100644
index ca064589d9f2f6e00697f3b896ad522a5cf9bb6c..7ebbef514a99497fcb024a4a57adca6facf039fe 100644
--- a/services/network/network_context.h
+++ b/services/network/network_context.h
@@ -325,6 +325,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext
@ -63,10 +63,10 @@ index 2596fecc569d59394703579cda02a27c629d843c..53145360b750ae0167da215fad89e0ea
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 0278c216fd810a1a96c53b57f80e6e91b473f5b0..5899dff0db16bbdf56e9689b206974e0020f1f8b 100644
index f510b5c5c79161f32a08219aa7f6cd7a722eed85..6bc2f6221fe61e861ece518381c697e4cf4727a1 100644
--- a/services/network/public/mojom/network_context.mojom
+++ b/services/network/public/mojom/network_context.mojom
@@ -1276,6 +1276,9 @@ interface NetworkContext {
@@ -1278,6 +1278,9 @@ interface NetworkContext {
SetNetworkConditions(mojo_base.mojom.UnguessableToken throttling_profile_id,
NetworkConditions? conditions);
@ -77,7 +77,7 @@ index 0278c216fd810a1a96c53b57f80e6e91b473f5b0..5899dff0db16bbdf56e9689b206974e0
SetAcceptLanguage(string new_accept_language);
diff --git a/services/network/test/test_network_context.h b/services/network/test/test_network_context.h
index 64ed19803dc00575422a1b024cfb8907be17302e..8639b76fad84ced1434bee4d41cbbb579cbdd483 100644
index 81930f3b5ca760d4db9c65aeb36162ddea68a872..5d67e45515480b769ed6555f6e0c18f25fde1e6c 100644
--- a/services/network/test/test_network_context.h
+++ b/services/network/test/test_network_context.h
@@ -159,6 +159,7 @@ class TestNetworkContext : public mojom::NetworkContext {

View file

@ -75,7 +75,7 @@ index 65766b955e81bfc332bc2c4e0b9da48389c1bd68..a475e1bfee46f0a77d1cfbdea47e9de6
// used for canvas noising.
uint64 canvas_noise_token = 0;
diff --git a/third_party/blink/public/mojom/use_counter/metrics/css_property_id.mojom b/third_party/blink/public/mojom/use_counter/metrics/css_property_id.mojom
index 53f76ceb28c2d0cca7111bce77e40d1ea0830b7a..4d6b605d3b0af6a88558fe8ee202be088bc65e17 100644
index 32e70a4fa70ac2fc41d95813590fe9a7120eecde..54d292d737748302fa0369b73d876d84f1fec1d4 100644
--- a/third_party/blink/public/mojom/use_counter/metrics/css_property_id.mojom
+++ b/third_party/blink/public/mojom/use_counter/metrics/css_property_id.mojom
@@ -48,6 +48,7 @@ enum CSSSampleId {
@ -112,10 +112,10 @@ index aa3a6b93cceae8c8bfbefdd7a043ae576f921979..17544d7ed4757fb51e2f82fd1b906381
property_.sorting_key = (-property_.priority,
internal_visited_order,
diff --git a/third_party/blink/renderer/core/css/css_properties.json5 b/third_party/blink/renderer/core/css/css_properties.json5
index 99e25d56dc62a9fcfdb361a4ab2a8bb9343e3f38..f96437d4c6ee710ddc1d520c3546ee82ac52ca9c 100644
index f106ab8f51a81ddcaa0d19304439432fd96d47e8..39c28b84ce461fc4e3f304166b60942ce3c99603 100644
--- a/third_party/blink/renderer/core/css/css_properties.json5
+++ b/third_party/blink/renderer/core/css/css_properties.json5
@@ -8809,6 +8809,24 @@
@@ -8821,6 +8821,24 @@
property_methods: ["ParseShorthand", "CSSValueFromComputedStyleInternal"],
},
@ -141,7 +141,7 @@ index 99e25d56dc62a9fcfdb361a4ab2a8bb9343e3f38..f96437d4c6ee710ddc1d520c3546ee82
{
name: "-internal-visited-color",
diff --git a/third_party/blink/renderer/core/css/css_property_equality.cc b/third_party/blink/renderer/core/css/css_property_equality.cc
index 2c86916399d8b9a14678f7996d2dfcca68b6f5e0..c6e48e15870ed54435f6e5f7dabf648ce5aeb7c7 100644
index ff1cc33c1787df522300a220000ad3d3123cd7bd..6b9e72f60db9af5ceeac7cc663ac666b0eeb7b09 100644
--- a/third_party/blink/renderer/core/css/css_property_equality.cc
+++ b/third_party/blink/renderer/core/css/css_property_equality.cc
@@ -346,6 +346,8 @@ bool CSSPropertyEquality::PropertiesEqual(const PropertyHandle& property,
@ -154,10 +154,10 @@ index 2c86916399d8b9a14678f7996d2dfcca68b6f5e0..c6e48e15870ed54435f6e5f7dabf648c
return a.EmptyCells() == b.EmptyCells();
case CSSPropertyID::kFill:
diff --git a/third_party/blink/renderer/core/css/properties/longhands/longhands_custom.cc b/third_party/blink/renderer/core/css/properties/longhands/longhands_custom.cc
index 39d275e2eeedbfbd9004d5e213bf335ba6edbd51..598373b895aa14ef7a3583e38562b13ee8044222 100644
index 206a0158a688ce807d656872179f4e50a7a1a237..967f547e9e3907f58a8f082311aba86f415f291d 100644
--- a/third_party/blink/renderer/core/css/properties/longhands/longhands_custom.cc
+++ b/third_party/blink/renderer/core/css/properties/longhands/longhands_custom.cc
@@ -12050,5 +12050,25 @@ const CSSValue* InternalEmptyLineHeight::ParseSingleValue(
@@ -12048,5 +12048,25 @@ const CSSValue* InternalEmptyLineHeight::ParseSingleValue(
CSSValueID::kNone>(stream);
}
@ -184,10 +184,10 @@ index 39d275e2eeedbfbd9004d5e213bf335ba6edbd51..598373b895aa14ef7a3583e38562b13e
} // namespace css_longhand
} // namespace blink
diff --git a/third_party/blink/renderer/core/css/resolver/style_builder_converter.cc b/third_party/blink/renderer/core/css/resolver/style_builder_converter.cc
index 2c0df07241cca3aa28ce409d1af0e40594aa19bf..efe19004646138e9fcd91d138220e8802f75b335 100644
index 5d803e8baebc35075d7475e091f97811407add79..50991917a87ff1a219fe2b3dd80dd055fd3e4289 100644
--- a/third_party/blink/renderer/core/css/resolver/style_builder_converter.cc
+++ b/third_party/blink/renderer/core/css/resolver/style_builder_converter.cc
@@ -3854,4 +3854,12 @@ PositionArea StyleBuilderConverter::ConvertPositionArea(
@@ -3869,4 +3869,12 @@ PositionArea StyleBuilderConverter::ConvertPositionArea(
return PositionArea(span[0], span[1], span[2], span[3]);
}
@ -307,10 +307,10 @@ index 2c2f4f405074e5baa4a26f255283404f86b40e21..ebeb7d6988ee9e6a4e78cb82fc01fdad
ContouredRect PixelSnappedContouredBorderInternal(
diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/renderer/platform/BUILD.gn
index c2fc2c7b4493a5ee3b47d78331cab215f02fe932..c628b27b7caf09f17ada1ad476cfc90845b7f420 100644
index 5751a08ec62bd12124d3cf502b8c4c87fbc89169..44214fd41ceaacab5a9a333b6d4fc43a80e550be 100644
--- a/third_party/blink/renderer/platform/BUILD.gn
+++ b/third_party/blink/renderer/platform/BUILD.gn
@@ -1652,6 +1652,8 @@ component("platform") {
@@ -1656,6 +1656,8 @@ component("platform") {
"widget/widget_base.h",
"widget/widget_base_client.h",
"windows_keyboard_codes.h",

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 e3b4148376f5a93f053b88e179f51cb642d896ed..e9bd34f4ed48ad882232c427598489a05f5f8bb1 100644
index d29bdc038fc6934c69b10b7a694d9cbf54839b02..6cc09172e0975387d614f67350215c80915c406d 100644
--- a/components/viz/service/BUILD.gn
+++ b/components/viz/service/BUILD.gn
@@ -178,6 +178,8 @@ viz_component("service") {

View file

@ -12,10 +12,10 @@ We attempt to migrate the safe storage key from the old account, if that migrati
Existing apps that aren't built for the app store should be unimpacted, there is one edge case where a user uses BOTH an AppStore and a darwin build of the same app only one will keep it's access to the safestorage key as during the migration we delete the old account. This is an acceptable edge case as no one should be actively using two versions of the same app.
diff --git a/components/os_crypt/sync/keychain_password_mac.mm b/components/os_crypt/sync/keychain_password_mac.mm
index a179c9bc02158130f4b15bf8022721f4b53a8303..8fd3f42725e6618737110459b1b1021e3709f0df 100644
index 3d388a85aaf52acdcc2b7aaea56f5a24b2435bff..7a0d28cbf1651e76a4356f1193b502d27e7a8ed4 100644
--- a/components/os_crypt/sync/keychain_password_mac.mm
+++ b/components/os_crypt/sync/keychain_password_mac.mm
@@ -24,6 +24,12 @@
@@ -25,6 +25,12 @@
using KeychainNameContainerType = const base::NoDestructor<std::string>;
#endif
@ -28,55 +28,39 @@ index a179c9bc02158130f4b15bf8022721f4b53a8303..8fd3f42725e6618737110459b1b1021e
namespace {
// These two strings ARE indeed user facing. But they are used to access
@@ -83,11 +89,18 @@
@@ -79,10 +85,47 @@
KeychainPassword::~KeychainPassword() = default;
std::string KeychainPassword::GetPassword() const {
UInt32 password_length = 0;
void* password_data = nullptr;
+ KeychainPassword::KeychainNameType service_name = GetServiceName();
+ KeychainPassword::KeychainNameType account_name = GetAccountName();
+ const std::string account_name_suffix = kAccountNameSuffix;
+ const std::string suffixed_account_name = account_name + account_name_suffix;
+ const std::string suffixed_account_name = GetAccountName() + account_name_suffix;
auto password =
- keychain_->FindGenericPassword(GetServiceName(), GetAccountName());
+ keychain_->FindGenericPassword(GetServiceName(), suffixed_account_name);
+
+ if (password.has_value()) {
+ return std::string(base::as_string_view(*password));
+ }
+
+ // We should check if the suffixed account exists first
OSStatus error = keychain_->FindGenericPassword(
- GetServiceName().size(), GetServiceName().c_str(),
- GetAccountName().size(), GetAccountName().c_str(), &password_length,
+ service_name.size(), service_name.c_str(),
+ suffixed_account_name.size(), suffixed_account_name.c_str(), &password_length,
&password_data, /*item=*/nullptr);
+ // If it exists we can return it immediately
if (error == noErr) {
std::string password =
std::string(static_cast<char*>(password_data), password_length);
@@ -95,6 +108,49 @@
return password;
}
+ // If the error was anything other than "it does not exist" we should error out here
+ // This normally means the account exists but we were deniged access to it
+ if (error != errSecItemNotFound) {
+ OSSTATUS_LOG(ERROR, error) << "Keychain lookup for suffixed key failed";
+ if (password.error() != errSecItemNotFound) {
+ OSSTATUS_LOG(ERROR, password.error()) << "Keychain lookup for suffixed key failed";
+ return std::string();
+ }
+
+ // If the suffixed account didn't exist, we should check if the legacy non-suffixed account
+ // exists. If it does we can use that key and migrate it to the new account
+ base::apple::ScopedCFTypeRef<SecKeychainItemRef> item_ref;
+ error = keychain_->FindGenericPassword(
+ service_name.size(), service_name.c_str(),
+ account_name.size(), account_name.c_str(), &password_length,
+ &password_data, item_ref.InitializeInto());
+
+ if (error == noErr) {
+ std::string password =
+ std::string(static_cast<char*>(password_data), password_length);
+
+ password =
+ keychain_->FindGenericPassword(GetServiceName(), GetAccountName(),
+ item_ref.InitializeInto());
if (password.has_value()) {
+ // If we found the legacy account name we should copy it over to
+ // the new suffixed account
+ error = keychain_->AddGenericPassword(
+ service_name.size(), service_name.data(), suffixed_account_name.size(),
+ suffixed_account_name.data(), password.size(), password_data, NULL);
+ OSStatus error = keychain_->AddGenericPassword(
+ GetServiceName(), suffixed_account_name, *password);
+
+ if (error == noErr) {
+ // If we successfully made the suffixed account we can delete the old
@ -90,23 +74,37 @@ index a179c9bc02158130f4b15bf8022721f4b53a8303..8fd3f42725e6618737110459b1b1021e
+ OSSTATUS_DLOG(ERROR, error) << "Keychain add for suffixed key failed";
+ }
+
+ keychain_->ItemFreeContent(password_data);
+ return password;
+ }
+
+ // If the legacy account name was not found, make a new account in the
+ // with the suffixed name
if (error == errSecItemNotFound) {
std::string password = AddRandomPasswordToKeychain(
*keychain_, GetServiceName(), GetAccountName());
return std::string(base::as_string_view(*password));
}
diff --git a/crypto/apple_keychain.h b/crypto/apple_keychain.h
index 59371dc86e02a361971a4abeb2de0c607d5babd6..e148359453a22e8301c0665dd994fc5bbb29f1dc 100644
index c2aeebc449c7cc2d2e2fcd30dde3e8b9732aa0b3..4acd945d31cb6cb5f3c74548ef9b9cc23ee80205 100644
--- a/crypto/apple_keychain.h
+++ b/crypto/apple_keychain.h
@@ -59,6 +59,10 @@ class CRYPTO_EXPORT AppleKeychain {
UInt32 password_length,
const void* password_data,
AppleSecKeychainItemRef* item) const;
@@ -18,6 +18,12 @@
namespace crypto {
+#if BUILDFLAG(IS_IOS)
+using AppleSecKeychainItemRef = void*;
+#else
+using AppleSecKeychainItemRef = SecKeychainItemRef;
+#endif
+
// DEPRECATED: use `AppleKeychainV2` instead.
// Wraps the KeychainServices API in a very thin layer, to allow it to be
// mocked out for testing.
@@ -43,11 +49,16 @@ class CRYPTO_EXPORT AppleKeychain {
// std::vector<uint8_t> arm is populated instead.
virtual base::expected<std::vector<uint8_t>, OSStatus> FindGenericPassword(
std::string_view service_name,
- std::string_view account_name) const;
+ std::string_view account_name,
+ AppleSecKeychainItemRef* item = nullptr) const;
virtual OSStatus AddGenericPassword(std::string_view service_name,
std::string_view account_name,
base::span<const uint8_t> password) const;
+
+#if BUILDFLAG(IS_MAC)
+ virtual OSStatus ItemDelete(AppleSecKeychainItemRef item) const;
@ -115,11 +113,29 @@ index 59371dc86e02a361971a4abeb2de0c607d5babd6..e148359453a22e8301c0665dd994fc5b
#if BUILDFLAG(IS_MAC)
diff --git a/crypto/apple_keychain_mac.cc b/crypto/apple_keychain_mac.cc
index 1e390075331da8405d1295ca633da25092e8f86d..a2c91d433e84c781df9b3f794c4957b4f6a596bf 100644
index 0613e22fc0ce35378dc3580d797badd5f2680ae6..3ec4a2ba2fa5679363fabfa007be6200a0660ce7 100644
--- a/crypto/apple_keychain_mac.cc
+++ b/crypto/apple_keychain_mac.cc
@@ -86,6 +86,11 @@ OSStatus AppleKeychain::AddGenericPassword(
account_name, password_length, password_data, item);
@@ -58,14 +58,15 @@ AppleKeychain::~AppleKeychain() = default;
base::expected<std::vector<uint8_t>, OSStatus>
AppleKeychain::FindGenericPassword(std::string_view service_name,
- std::string_view account_name) const {
+ std::string_view account_name,
+ AppleSecKeychainItemRef* item) const {
base::AutoLock lock(GetMacSecurityServicesLock());
uint32_t password_length = 0;
void* password_data = nullptr;
OSStatus status = SecKeychainFindGenericPassword(
nullptr, service_name.length(), service_name.data(),
account_name.length(), account_name.data(), &password_length,
- &password_data, nullptr);
+ &password_data, item);
if (status != noErr) {
return base::unexpected(status);
}
@@ -91,6 +92,11 @@ OSStatus AppleKeychain::AddGenericPassword(
password.data(), nullptr);
}
+OSStatus AppleKeychain::ItemDelete(AppleSecKeychainItemRef item) const {
@ -130,3 +146,31 @@ index 1e390075331da8405d1295ca633da25092e8f86d..a2c91d433e84c781df9b3f794c4957b4
ScopedKeychainUserInteractionAllowed::ScopedKeychainUserInteractionAllowed(
Boolean allowed,
OSStatus* status) {
diff --git a/crypto/mock_apple_keychain.cc b/crypto/mock_apple_keychain.cc
index 9b48805aacd161ff8d5550edf993217d5c6acfad..3b9fa4dc7f020740edb55a5aa80c9b526e4f585b 100644
--- a/crypto/mock_apple_keychain.cc
+++ b/crypto/mock_apple_keychain.cc
@@ -30,7 +30,8 @@ MockAppleKeychain::~MockAppleKeychain() = default;
base::expected<std::vector<uint8_t>, OSStatus>
MockAppleKeychain::FindGenericPassword(std::string_view service_name,
- std::string_view account_name) const {
+ std::string_view account_name,
+ AppleSecKeychainItemRef* item) const {
IncrementKeychainAccessHistogram();
// When simulating |noErr|, return canned |passwordData| and
diff --git a/crypto/mock_apple_keychain.h b/crypto/mock_apple_keychain.h
index fd903e64c7bf43c634518c6756183e6ee2579504..a0089ce75ee8c6c49fb7f6181be79d4c8e1fb1d2 100644
--- a/crypto/mock_apple_keychain.h
+++ b/crypto/mock_apple_keychain.h
@@ -38,7 +38,8 @@ class CRYPTO_EXPORT MockAppleKeychain : public AppleKeychain {
// AppleKeychain implementation.
base::expected<std::vector<uint8_t>, OSStatus> FindGenericPassword(
std::string_view service_name,
- std::string_view account_name) const override;
+ std::string_view account_name,
+ AppleSecKeychainItemRef* item) const override;
OSStatus AddGenericPassword(
std::string_view service_name,

View file

@ -17,7 +17,7 @@ headers, moving forward we should find a way in upstream to provide
access to these headers for loader clients created on the browser process.
diff --git a/services/network/public/cpp/resource_request.cc b/services/network/public/cpp/resource_request.cc
index cf2fd38d7a4a851ae41a53afefd51cb22e4b8cbf..381ab7adf203fa61655164b1aaec48b207465466 100644
index 28355f4c6c3cbbe60e827246e88107ce7374104a..4183f448dc40f0fbe1fabadf58f09eeb84c9f684 100644
--- a/services/network/public/cpp/resource_request.cc
+++ b/services/network/public/cpp/resource_request.cc
@@ -178,6 +178,7 @@ ResourceRequest::TrustedParams& ResourceRequest::TrustedParams::operator=(
@ -37,7 +37,7 @@ index cf2fd38d7a4a851ae41a53afefd51cb22e4b8cbf..381ab7adf203fa61655164b1aaec48b2
allow_cookies_from_browser == other.allow_cookies_from_browser &&
include_request_cookies_with_response ==
diff --git a/services/network/public/cpp/resource_request.h b/services/network/public/cpp/resource_request.h
index ae9365525defc827d2aa7c97f4ab9b02966381d4..cf25d3dedaddec29729fe4f3b9e92187f157bcd5 100644
index 8634c50fbede68bf5497ed50e258eecac594b4d4..c6f06966f0f58e5087e1f62537eecffc95cd1962 100644
--- a/services/network/public/cpp/resource_request.h
+++ b/services/network/public/cpp/resource_request.h
@@ -77,6 +77,7 @@ struct COMPONENT_EXPORT(NETWORK_CPP_BASE) ResourceRequest {
@ -49,7 +49,7 @@ index ae9365525defc827d2aa7c97f4ab9b02966381d4..cf25d3dedaddec29729fe4f3b9e92187
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 2021e4c8f05008dd57e67c14fc7e66bf49bd6e3e..2a5ed7fc54f9efd773ec6dded1b66bb9c9f26580 100644
index e67d4d6f11cb68cfc7f6f1dad60285cbaf905e76..e8e35f02b4a9c5662cd8b2cbb7dbb30e31efd4f3 100644
--- a/services/network/public/cpp/url_request_mojom_traits.cc
+++ b/services/network/public/cpp/url_request_mojom_traits.cc
@@ -49,6 +49,7 @@ bool StructTraits<network::mojom::TrustedUrlRequestParamsDataView,
@ -61,7 +61,7 @@ index 2021e4c8f05008dd57e67c14fc7e66bf49bd6e3e..2a5ed7fc54f9efd773ec6dded1b66bb9
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 fc1700900ebd5a05f9d9a611366caf341bf4228c..eb7d1eeea3817e03afb4799cb92e65708be1db65 100644
index 91628c93c415d8293ac989bdf9135cf2c8c59557..a51f9ca3f06ada3232c52b2b3e39a4433860bf2a 100644
--- a/services/network/public/cpp/url_request_mojom_traits.h
+++ b/services/network/public/cpp/url_request_mojom_traits.h
@@ -71,6 +71,10 @@ struct COMPONENT_EXPORT(NETWORK_CPP_BASE)
@ -76,7 +76,7 @@ index fc1700900ebd5a05f9d9a611366caf341bf4228c..eb7d1eeea3817e03afb4799cb92e6570
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 bd5f2a3c64d1f57f987909bede992dc10a0a121f..a8898c4e5c11821568c6236198f59c422c90187f 100644
index e4ebfcfbbd56e284dcb88918a779abccc467a4af..f22dc2c544c676e3c0bd318f21cba11205ed8386 100644
--- a/services/network/public/mojom/url_request.mojom
+++ b/services/network/public/mojom/url_request.mojom
@@ -86,6 +86,9 @@ struct TrustedUrlRequestParams {
@ -90,18 +90,18 @@ index bd5f2a3c64d1f57f987909bede992dc10a0a121f..a8898c4e5c11821568c6236198f59c42
// a cookie. If this is set to non-null, the observer passed to
// URLLoaderFactory will be ignored.
diff --git a/services/network/public/mojom/url_response_head.mojom b/services/network/public/mojom/url_response_head.mojom
index 72188dae668f2bd91b8b7f181448f459600a82c2..b3dae05e160160cc8f2decee5af78c21bd76c822 100644
index 99bf736ebe303d46ab1ced924ba929a0cd258909..e10c8782d2704ff9cff8062d201a433935b66964 100644
--- a/services/network/public/mojom/url_response_head.mojom
+++ b/services/network/public/mojom/url_response_head.mojom
@@ -13,6 +13,7 @@ import "services/network/public/mojom/attribution.mojom";
@@ -14,6 +14,7 @@ import "services/network/public/mojom/encoded_body_length.mojom";
import "services/network/public/mojom/fetch_api.mojom";
import "services/network/public/mojom/http_request_headers.mojom";
import "services/network/public/mojom/ip_address_space.mojom";
+import "services/network/public/mojom/http_raw_headers.mojom";
import "services/network/public/mojom/ip_endpoint.mojom";
import "services/network/public/mojom/load_timing_info.mojom";
import "services/network/public/mojom/network_param.mojom";
@@ -51,6 +52,9 @@ struct URLResponseHead {
import "services/network/public/mojom/load_timing_internal_info.mojom";
@@ -52,6 +53,9 @@ struct URLResponseHead {
// The response headers or NULL if the URL type does not support headers.
HttpResponseHeaders headers;
@ -112,7 +112,7 @@ index 72188dae668f2bd91b8b7f181448f459600a82c2..b3dae05e160160cc8f2decee5af78c21
string mime_type;
diff --git a/services/network/url_loader.cc b/services/network/url_loader.cc
index d429e87284281e31543815cb86654670acd76e9b..f1d0e99fe09da631648729f09cc7a43c530f1a18 100644
index 01fbe50288727214849b3e9726e564adb85f5ea9..4a16c1339463db25243add635d22f975bd2131af 100644
--- a/services/network/url_loader.cc
+++ b/services/network/url_loader.cc
@@ -387,6 +387,9 @@ URLLoader::URLLoader(

View file

@ -20,10 +20,10 @@ This patch will be removed when the deprecated sync api support is
removed.
diff --git a/components/permissions/permission_util.cc b/components/permissions/permission_util.cc
index 6f4d9651862e90abaa22b93e1dcf97ac07592c5c..d91d81297e7cdb79ee7b7a3979dcedf977e16c92 100644
index 0aae1d3b2777d5f6db711d1ade99b4bde24e76bf..e350f6789c710826e0885ccdc19e66e2213820df 100644
--- a/components/permissions/permission_util.cc
+++ b/components/permissions/permission_util.cc
@@ -389,6 +389,7 @@ ContentSettingsType PermissionUtil::PermissionTypeToContentSettingsTypeSafe(
@@ -502,6 +502,7 @@ ContentSettingsType PermissionUtil::PermissionTypeToContentSettingsTypeSafe(
return ContentSettingsType::WEB_APP_INSTALLATION;
case PermissionType::LOCAL_NETWORK_ACCESS:
return ContentSettingsType::LOCAL_NETWORK_ACCESS;
@ -32,7 +32,7 @@ index 6f4d9651862e90abaa22b93e1dcf97ac07592c5c..d91d81297e7cdb79ee7b7a3979dcedf9
break;
}
diff --git a/content/browser/permissions/permission_controller_impl.cc b/content/browser/permissions/permission_controller_impl.cc
index 1afe0fe1c169bd9224314f50918ccfe3b1800c8f..a0fdb5003382d94aeb676a4224aa40f16acf1573 100644
index f53158596f935545afde6a175138347a752f73e7..b267734bf2273253aa921728e12c753adfade02e 100644
--- a/content/browser/permissions/permission_controller_impl.cc
+++ b/content/browser/permissions/permission_controller_impl.cc
@@ -87,6 +87,7 @@ PermissionToSchedulingFeature(PermissionType permission_name) {

View file

@ -14,10 +14,10 @@ This patch likely can't be upstreamed as-is, as Chromium doesn't have
this use case in mind currently.
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc
index 00e1438801381a2219402508dccd4b4fa15009e4..c4da871201f328a87aa3e7459ae063aac3195a8b 100644
index 6e706c32ca4c2a5d0831588ee2eea8a8059f04fe..09509acd13511525b0eb7b9afa972e20d8d3601c 100644
--- a/ui/views/win/hwnd_message_handler.cc
+++ b/ui/views/win/hwnd_message_handler.cc
@@ -954,13 +954,13 @@ void HWNDMessageHandler::FrameTypeChanged() {
@@ -936,13 +936,13 @@ void HWNDMessageHandler::FrameTypeChanged() {
void HWNDMessageHandler::PaintAsActiveChanged() {
if (!delegate_->HasNonClientView() || !delegate_->CanActivate() ||
@ -33,7 +33,7 @@ index 00e1438801381a2219402508dccd4b4fa15009e4..c4da871201f328a87aa3e7459ae063aa
}
void HWNDMessageHandler::SetWindowIcons(const gfx::ImageSkia& window_icon,
@@ -1757,7 +1757,7 @@ void HWNDMessageHandler::OnActivateApp(BOOL active, DWORD thread_id) {
@@ -1739,7 +1739,7 @@ void HWNDMessageHandler::OnActivateApp(BOOL active, DWORD thread_id) {
if (delegate_->HasNonClientView() && !active &&
thread_id != GetCurrentThreadId()) {
// Update the native frame if it is rendering the non-client area.
@ -42,7 +42,7 @@ index 00e1438801381a2219402508dccd4b4fa15009e4..c4da871201f328a87aa3e7459ae063aa
DefWindowProcWithRedrawLock(WM_NCACTIVATE, FALSE, 0);
}
}
@@ -2365,17 +2365,18 @@ LRESULT HWNDMessageHandler::OnNCActivate(UINT message,
@@ -2347,17 +2347,18 @@ LRESULT HWNDMessageHandler::OnNCActivate(UINT message,
delegate_->SchedulePaint();
}

View file

@ -11,10 +11,10 @@ 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 426b9fe4444d1624756b561612b851d44d37de19..5a1533b01946b76de2c2aaad137e14c4d7a00a3c 100644
index db2b841e973f05049f712c732ae8d4815a8aff7a..5919efa661c3b1ed210f7a67f85fdd3882011bae 100644
--- a/ui/views/win/hwnd_message_handler.cc
+++ b/ui/views/win/hwnd_message_handler.cc
@@ -3800,15 +3800,30 @@ void HWNDMessageHandler::SizeWindowToAspectRatio(UINT param,
@@ -3782,15 +3782,30 @@ void HWNDMessageHandler::SizeWindowToAspectRatio(UINT param,
delegate_->GetMinMaxSize(&min_window_size, &max_window_size);
min_window_size = delegate_->DIPToScreenSize(min_window_size);
max_window_size = delegate_->DIPToScreenSize(max_window_size);

View file

@ -28,10 +28,10 @@ The patch should be removed in favor of either:
Upstream bug https://bugs.chromium.org/p/chromium/issues/detail?id=1081397.
diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc
index 6c16750bdb1b2ae425613f69ba1bff9ca7cbe289..43f2ff4d94038c7d25abb8c84911a14891ced137 100644
index cbee5764fa2c048f511fcde5843a741d19c2ff91..dbfbed89df4f02a4ec3cabc8e3b064b8a0629d72 100644
--- a/content/browser/renderer_host/navigation_request.cc
+++ b/content/browser/renderer_host/navigation_request.cc
@@ -11136,6 +11136,12 @@ NavigationRequest::GetOriginForURLLoaderFactoryUncheckedWithDebugInfo() {
@@ -11151,6 +11151,12 @@ NavigationRequest::GetOriginForURLLoaderFactoryUncheckedWithDebugInfo() {
"blob");
}
@ -45,7 +45,7 @@ index 6c16750bdb1b2ae425613f69ba1bff9ca7cbe289..43f2ff4d94038c7d25abb8c84911a148
// 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 60c15b898e642646f30f76c1a6b7a609b9322acb..cee2c36d633a9ad92fd7c2991efe90f7f2f7c8e3 100644
index b2329dcaf3ef464fc4b7db477e2431017711d501..635029fa9680eeb6d01223c5cf683c7854763f40 100644
--- a/third_party/blink/renderer/core/loader/document_loader.cc
+++ b/third_party/blink/renderer/core/loader/document_loader.cc
@@ -2334,6 +2334,10 @@ Frame* DocumentLoader::CalculateOwnerFrame() {

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 9f82c7f92f735ed9f9569a8d299d23c7cb83e596..9b7598a26781da8b1e1c7364606574024000921f 100644
index 659e8d79766a78d261e58adab08f9abccda8390b..bc4dc2e3a93877d2e20890560f61d3f22c8b7b9a 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 @@
@ -75,10 +75,10 @@ index 9f82c7f92f735ed9f9569a8d299d23c7cb83e596..9b7598a26781da8b1e1c736460657402
PictureInPictureOcclusionTracker*
diff --git a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc
index 43dc9886e0e08d6651810b3f9b3ed5453d8c41ab..a67221e125c5335f45d289162889bd5085d892eb 100644
index 5012789f084113a9289e8d198eed2f021953bef9..141db7a24abb0b609fdf81847af87bc59ba1a83f 100644
--- a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc
+++ b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc
@@ -430,11 +430,13 @@ std::unique_ptr<VideoOverlayWindowViews> VideoOverlayWindowViews::Create(
@@ -431,11 +431,13 @@ std::unique_ptr<VideoOverlayWindowViews> VideoOverlayWindowViews::Create(
#endif // BUILDFLAG(IS_WIN)

View file

@ -87,10 +87,10 @@ index 75df43e3cd2721a92c90c18154d53d5c203e2465..ce42c75c8face36d21f53f44c0201ac4
// 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 f60cc24fbffc8421d18f259a47657f0c1cb6317f..ae5c9abd3c9374ad3f7a76d74420d0e723a4156a 100644
index c2b9746a47075520115825c278582ec43035dca2..fffc10cc6598539ba9518ea9c46e112ce8df1843 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -9952,7 +9952,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame(
@@ -9976,7 +9976,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame(
"WebContentsImpl::OnFocusedElementChangedInFrame",
"render_frame_host", frame);
RenderWidgetHostViewBase* root_view =

View file

@ -18,10 +18,10 @@ or resizing, but Electron does not seem to run into that issue
for opaque frameless windows even with that block commented out.
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc
index 0113b1bce0eb7a7e3dfb3154a4844a9943b8633e..00e1438801381a2219402508dccd4b4fa15009e4 100644
index 5b17d5bf0b32405ae9515b941a17b68a04a3b317..6e706c32ca4c2a5d0831588ee2eea8a8059f04fe 100644
--- a/ui/views/win/hwnd_message_handler.cc
+++ b/ui/views/win/hwnd_message_handler.cc
@@ -1825,7 +1825,23 @@ LRESULT HWNDMessageHandler::OnCreate(CREATESTRUCT* create_struct) {
@@ -1807,7 +1807,23 @@ LRESULT HWNDMessageHandler::OnCreate(CREATESTRUCT* create_struct) {
SendMessage(hwnd(), WM_CHANGEUISTATE, MAKELPARAM(UIS_CLEAR, UISF_HIDEFOCUS),
0);

View file

@ -59,10 +59,10 @@ index cba373664bec3a32abad6fe0396bd67b53b7e67f..a54f1b3351efd2d8f324436f7f35cd43
#endif // THIRD_PARTY_BLINK_PUBLIC_WEB_WEB_SCRIPT_EXECUTION_CALLBACK_H_
diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc
index a4ac1a3d0d6390b5826195f72abc4544cdc2bf14..e6931d442540b9a2890e6d782ffe152772dbc8dd 100644
index cd799fb3c682389a65375092debed10cb9714747..9ad27554e20f58f063e2033154d1a824c40d7f98 100644
--- a/third_party/blink/renderer/core/frame/local_frame.cc
+++ b/third_party/blink/renderer/core/frame/local_frame.cc
@@ -3101,6 +3101,7 @@ void LocalFrame::RequestExecuteScript(
@@ -3118,6 +3118,7 @@ void LocalFrame::RequestExecuteScript(
mojom::blink::EvaluationTiming evaluation_timing,
mojom::blink::LoadEventBlockingOption blocking_option,
WebScriptExecutionCallback callback,
@ -70,7 +70,7 @@ index a4ac1a3d0d6390b5826195f72abc4544cdc2bf14..e6931d442540b9a2890e6d782ffe1527
BackForwardCacheAware back_forward_cache_aware,
mojom::blink::WantResultOption want_result_option,
mojom::blink::PromiseResultOption promise_behavior) {
@@ -3133,7 +3134,7 @@ void LocalFrame::RequestExecuteScript(
@@ -3150,7 +3151,7 @@ void LocalFrame::RequestExecuteScript(
PausableScriptExecutor::CreateAndRun(
script_state, std::move(script_sources), execute_script_policy,
user_gesture, evaluation_timing, blocking_option, want_result_option,
@ -80,10 +80,10 @@ index a4ac1a3d0d6390b5826195f72abc4544cdc2bf14..e6931d442540b9a2890e6d782ffe1527
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 73d924f3675bc84bf0efad5a06abbf0af62ae336..070af1deb56dcd9399915ac436ecce96da19a36c 100644
index 89365bf58126d02c62ed4e2f18100e22e74b8962..7d040ff5300014c4f8bfbddccaf5d0b750499c86 100644
--- a/third_party/blink/renderer/core/frame/local_frame.h
+++ b/third_party/blink/renderer/core/frame/local_frame.h
@@ -823,6 +823,7 @@ class CORE_EXPORT LocalFrame final
@@ -826,6 +826,7 @@ class CORE_EXPORT LocalFrame final
mojom::blink::EvaluationTiming,
mojom::blink::LoadEventBlockingOption,
WebScriptExecutionCallback,

View file

@ -20,7 +20,7 @@ index d26c850e28b7df6992bf07fda2abe260ed4da769..008c131e5b4f84daeaee5ffe6ab7ae88
}
diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h
index bc948f100fc20958f021da3b3b3005badfcb4f1a..283368c3e1e9852d5a7c567f741a68b3d3f901a7 100644
index f25e2eaeacfef82ca904e40f8b7b3913a121db9d..d0993b89a686dcc0428b2ef0bc3f20dfc7a49199 100644
--- a/content/public/browser/content_browser_client.h
+++ b/content/public/browser/content_browser_client.h
@@ -340,6 +340,11 @@ class CONTENT_EXPORT ContentBrowserClient {

View file

@ -1,43 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Keren Zhu <kerenzhu@chromium.org>
Date: Fri, 18 Apr 2025 11:02:46 -0700
Subject: mac: fix CHECK on IME reconversion due to invalid replacement range
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
It appears that Google Japanese IME can call -setMarkedText: with an
invalid replacement range when doing text reconversion (変換, i.e.,
conversion between different text with same pronunciation). This range
is a NSRange and NSRange.location is supposed to be NSNotFound (2^31-1)
for invalid range, but the IME can pass in 2^32. Subsequently causing
CHECK error.
This CL fixes the issue by converting such invalid NSRange to
gfx::InvalidRange using FromPossiblyInvalidNSRange(range).
Fixed: 409864204
Change-Id: I08ff426a933ef76aa81e33af59aa32e2ac0b674d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6470915
Commit-Queue: Keren Zhu <kerenzhu@chromium.org>
Reviewed-by: Marijn Kruisselbrink <mek@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1448935}
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 f2499bc084312a09b2324567d270fc1b899e7617..12ee7e75e437426f28002c7c9f4d5f5b5016ec53 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
@@ -2415,9 +2415,10 @@ - (void)setMarkedText:(id)string
if ([self isHandlingKeyDown] && !_isReconversionTriggered) {
_setMarkedTextReplacementRange = gfx::Range(replacementRange);
} else {
- _host->ImeSetComposition(_markedText, _imeTextSpans,
- gfx::Range(replacementRange), newSelRange.location,
- NSMaxRange(newSelRange));
+ _host->ImeSetComposition(
+ _markedText, _imeTextSpans,
+ gfx::Range::FromPossiblyInvalidNSRange(replacementRange),
+ newSelRange.location, NSMaxRange(newSelRange));
}
[[self inputContext] invalidateCharacterCoordinates];

View file

@ -35,7 +35,7 @@ system font by checking if it's kCTFontPriorityAttribute is set to
system priority.
diff --git a/base/BUILD.gn b/base/BUILD.gn
index d62d3c4a82579a5b308f28b941db0cc8e48d0e37..865519a1179d573b0a99ec32d9dcd81f04c0f9d6 100644
index b7ed9ee99ba49958d1463dfe1793ccd59732ae43..6ddb132ac1b842802c5a8983c58f4f6506042fdd 100644
--- a/base/BUILD.gn
+++ b/base/BUILD.gn
@@ -1045,6 +1045,7 @@ component("base") {
@ -208,10 +208,10 @@ index ff1e356ff696d3830d02644969c36a71fdf32ff6..b39c716c52524b95f2d3417a98e60c0c
sources += [ "os_crypt_win.cc" ]
deps += [ "//components/version_info" ]
diff --git a/components/os_crypt/sync/keychain_password_mac.mm b/components/os_crypt/sync/keychain_password_mac.mm
index d87682447b850e4cf9065f0d26d14077acbe467d..a179c9bc02158130f4b15bf8022721f4b53a8303 100644
index 6b936d228cf71d33025769430afbe6fe322ed186..3d388a85aaf52acdcc2b7aaea56f5a24b2435bff 100644
--- a/components/os_crypt/sync/keychain_password_mac.mm
+++ b/components/os_crypt/sync/keychain_password_mac.mm
@@ -14,6 +14,7 @@
@@ -15,6 +15,7 @@
#include "base/rand_util.h"
#include "build/branding_buildflags.h"
#include "crypto/apple_keychain.h"
@ -477,7 +477,7 @@ index 0b964e176e59e77a0743e2d347aa185bc7c80bc5..49a60b9aa0597c3397906303b73a4c16
// 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 4704b26c54e7bd449a6e57de43b7c4b0875732c9..e3b4148376f5a93f053b88e179f51cb642d896ed 100644
index e522423645bf313ad1504a7ec47ecf3619888e35..d29bdc038fc6934c69b10b7a694d9cbf54839b02 100644
--- a/components/viz/service/BUILD.gn
+++ b/components/viz/service/BUILD.gn
@@ -385,6 +385,7 @@ viz_component("service") {
@ -488,7 +488,7 @@ index 4704b26c54e7bd449a6e57de43b7c4b0875732c9..e3b4148376f5a93f053b88e179f51cb6
}
if (is_ios) {
@@ -697,6 +698,7 @@ viz_source_set("unit_tests") {
@@ -699,6 +700,7 @@ viz_source_set("unit_tests") {
"display_embedder/software_output_device_mac_unittest.mm",
]
frameworks = [ "IOSurface.framework" ]
@ -548,7 +548,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 4017ee032569466f5311e5c9612c82c086eab935..f2499bc084312a09b2324567d270fc1b899e7617 100644
index eca43bf620111c27c400ae2d95880e47c34fbc59..12ee7e75e437426f28002c7c9f4d5f5b5016ec53 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 @@
@ -582,10 +582,10 @@ index 4017ee032569466f5311e5c9612c82c086eab935..f2499bc084312a09b2324567d270fc1b
return kAttributes;
}
diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn
index f999eb6aeb11b59c6231b8f80d9e0d586b341171..679ee6731e685a9844bb6461d664f8e5b823e258 100644
index 6d9f1c22aa9fb24e75dab02bd5c6dd2c68cfb6ea..e349f271bd3dbcc5243b3043439f443a79e331b4 100644
--- a/content/browser/BUILD.gn
+++ b/content/browser/BUILD.gn
@@ -341,6 +341,7 @@ source_set("browser") {
@@ -342,6 +342,7 @@ source_set("browser") {
"//ui/webui/resources",
"//v8",
"//v8:v8_version",
@ -703,7 +703,7 @@ index 27f481c6a31cdd59684eb38ea8b2ffdcb5849ddf..88a6090a49da6071fded348a901c7c62
///////////////////////////////////////////////////////////////////////////////
diff --git a/content/common/BUILD.gn b/content/common/BUILD.gn
index fb23dfd8f90ad3eeb55e4db373ca67f75d8e5ce1..df902b0b01ed4d092070a92fdf77cf69fde475e7 100644
index da0e8c7260391805fa6950125c797565a2812521..8e8b093cd142326010445e9b2aae7c20866b9060 100644
--- a/content/common/BUILD.gn
+++ b/content/common/BUILD.gn
@@ -283,6 +283,7 @@ source_set("common") {
@ -797,7 +797,7 @@ index a1068589ad844518038ee7bc15a3de9bc5cba525..1ff781c49f086ec8015c7d3c44567dbe
} // namespace content
diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn
index 89e50cc56259e90a4ec955bb846c793f2d42cfd6..f64c1614bd8d9782d1c9f9bca20e2f8926893a0f 100644
index b61e76a3b9136931cb6280ddfecff82889725a16..99bc0b5f06e11d67b598ec4b0d6262ae359ffc27 100644
--- a/content/test/BUILD.gn
+++ b/content/test/BUILD.gn
@@ -662,6 +662,7 @@ static_library("test_support") {
@ -808,7 +808,7 @@ index 89e50cc56259e90a4ec955bb846c793f2d42cfd6..f64c1614bd8d9782d1c9f9bca20e2f89
]
data_deps = [
@@ -1115,6 +1116,7 @@ static_library("browsertest_support") {
@@ -1117,6 +1118,7 @@ static_library("browsertest_support") {
}
configs += [ "//v8:external_startup_data" ]
@ -816,7 +816,7 @@ index 89e50cc56259e90a4ec955bb846c793f2d42cfd6..f64c1614bd8d9782d1c9f9bca20e2f89
}
mojom("content_test_mojo_bindings") {
@@ -1956,6 +1958,7 @@ test("content_browsertests") {
@@ -1959,6 +1961,7 @@ test("content_browsertests") {
"//ui/shell_dialogs",
"//ui/snapshot",
"//ui/webui:test_support",
@ -824,7 +824,7 @@ index 89e50cc56259e90a4ec955bb846c793f2d42cfd6..f64c1614bd8d9782d1c9f9bca20e2f89
]
if (!(is_chromeos && target_cpu == "arm64" && current_cpu == "arm")) {
@@ -3280,6 +3283,7 @@ test("content_unittests") {
@@ -3282,6 +3285,7 @@ test("content_unittests") {
"//ui/shell_dialogs:shell_dialogs",
"//ui/webui:test_support",
"//url",
@ -833,10 +833,10 @@ index 89e50cc56259e90a4ec955bb846c793f2d42cfd6..f64c1614bd8d9782d1c9f9bca20e2f89
if (enable_nocompile_tests) {
diff --git a/content/web_test/BUILD.gn b/content/web_test/BUILD.gn
index 8779cf7cbbe2a583fda51867eaebc627f00bd4cd..98da1587fdc8cc8358a69db2b51d39820a0b15f3 100644
index c17535742efb9a229120953ecb00c73ad391c07d..8142161f2ed49d7ce4f3785b86d846bf0728a92f 100644
--- a/content/web_test/BUILD.gn
+++ b/content/web_test/BUILD.gn
@@ -227,6 +227,7 @@ static_library("web_test_browser") {
@@ -229,6 +229,7 @@ static_library("web_test_browser") {
"//ui/gl",
"//ui/shell_dialogs:shell_dialogs",
"//url",
@ -903,10 +903,10 @@ index 6431af67ab634cf23729b9102c189b2181cfd2cf..22040e1bfb96d810a2d8e62e44e4afbc
base::WeakPtr<BluetoothLowEnergyAdapterApple>
diff --git a/gpu/ipc/service/BUILD.gn b/gpu/ipc/service/BUILD.gn
index 81d64e16df0139107bc65c7924bdc467fa392657..3098b80c3dba6e4f8150eae3c5796b1e11c5c899 100644
index 2ef64102137f543ec8c4d88bd6718264d1c52691..7e2c450a44b4bddf7cb3e2d3482ec04c5b750e02 100644
--- a/gpu/ipc/service/BUILD.gn
+++ b/gpu/ipc/service/BUILD.gn
@@ -129,6 +129,7 @@ component("service") {
@@ -131,6 +131,7 @@ component("service") {
"QuartzCore.framework",
]
defines += [ "GL_SILENCE_DEPRECATION" ]
@ -915,7 +915,7 @@ index 81d64e16df0139107bc65c7924bdc467fa392657..3098b80c3dba6e4f8150eae3c5796b1e
if (is_ios) {
sources += [ "image_transport_surface_ios.mm" ]
diff --git a/gpu/ipc/service/image_transport_surface_overlay_mac.h b/gpu/ipc/service/image_transport_surface_overlay_mac.h
index ae040bbac8755b677dc6e19383a2390df407e5a6..e95ca30f49506c66a37d6d5269929f437005f863 100644
index f89dbdfb0c4e8e31d387d1ce2e5304277ac4df26..7b75bfeba59345d63f4ac8115369794144754b97 100644
--- a/gpu/ipc/service/image_transport_surface_overlay_mac.h
+++ b/gpu/ipc/service/image_transport_surface_overlay_mac.h
@@ -8,6 +8,7 @@
@ -1448,10 +1448,10 @@ index 3ff395b3ff3b646a64c43503d2c172776bf68c84..e40030307e8d9df7e00a402e241e0066
if (is_mac) {
diff --git a/third_party/blink/renderer/core/editing/build.gni b/third_party/blink/renderer/core/editing/build.gni
index d38e951cdbf1ab9b367273ad0fb8f962155a7f3b..e39ee0414cb54004096dbfffc4f768e805f3310a 100644
index 0645e5e49137b753bbc17138c88eabc53969bed8..8dcf005f4ae7bcf996b4d868e6f4855a6148d4b1 100644
--- a/third_party/blink/renderer/core/editing/build.gni
+++ b/third_party/blink/renderer/core/editing/build.gni
@@ -358,10 +358,14 @@ blink_core_sources_editing = [
@@ -362,10 +362,14 @@ blink_core_sources_editing = [
if (is_mac) {
blink_core_sources_editing += [
"commands/smart_replace_cf.cc",
@ -1480,7 +1480,7 @@ index ce3dc22f38b9d3f2f12e469b23f5dfe06ecbb98a..a69af46e05365028379dbf6abafaacd9
}
diff --git a/ui/accelerated_widget_mac/ca_layer_tree_coordinator.h b/ui/accelerated_widget_mac/ca_layer_tree_coordinator.h
index a615405dac100a08234b43f5ec354fb829bb5222..3cf40179700a4d5b69e18993b923f8f14919f9fa 100644
index af13a067beb5fc0d5c6b7eb579b04d1d6dc130de..1a7ddbc3a1f7a989a3f7e0c21d4d9ad7e4b435b9 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 @@
@ -1499,9 +1499,9 @@ index a615405dac100a08234b43f5ec354fb829bb5222..3cf40179700a4d5b69e18993b923f8f1
@class CAContext;
+#endif
@class CALayer;
@protocol MTLDevice;
namespace ui {
@@ -110,7 +113,9 @@ class ACCELERATED_WIDGET_MAC_EXPORT CALayerTreeCoordinator {
@@ -112,7 +115,9 @@ class ACCELERATED_WIDGET_MAC_EXPORT CALayerTreeCoordinator {
// both the current tree and the pending trees.
size_t presented_ca_layer_trees_max_length_ = 2;
@ -1512,7 +1512,7 @@ index a615405dac100a08234b43f5ec354fb829bb5222..3cf40179700a4d5b69e18993b923f8f1
// 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 cfb80b21ada7f04ff615b0437403ac1c6c95bb14..34341007de140aba2e6eeb9d8e8de0ea492c2466 100644
index 9cf72ff8b8593dae415d07796f1bebeeea3e2f76..3e78af6e65085cb978133e49aa4cc164bcc94027 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 @@
@ -1523,15 +1523,15 @@ index cfb80b21ada7f04ff615b0437403ac1c6c95bb14..34341007de140aba2e6eeb9d8e8de0ea
#include "ui/base/cocoa/animation_utils.h"
#include "ui/base/cocoa/remote_layer_api.h"
#include "ui/gfx/ca_layer_params.h"
@@ -30,6 +31,7 @@
allow_av_sample_buffer_display_layer_(
@@ -32,6 +33,7 @@
allow_av_sample_buffer_display_layer),
buffer_presented_callback_(buffer_presented_callback) {
buffer_presented_callback_(buffer_presented_callback),
metal_device_(metal_device) {
+#if !IS_MAS_BUILD()
if (allow_remote_layers_) {
root_ca_layer_ = [[CALayer alloc] init];
#if BUILDFLAG(IS_MAC)
@@ -58,6 +60,7 @@
@@ -60,6 +62,7 @@
#endif
ca_context_.layer = root_ca_layer_;
}
@ -1539,7 +1539,7 @@ index cfb80b21ada7f04ff615b0437403ac1c6c95bb14..34341007de140aba2e6eeb9d8e8de0ea
}
CALayerTreeCoordinator::~CALayerTreeCoordinator() = default;
@@ -161,9 +164,13 @@
@@ -163,9 +166,13 @@
TRACE_EVENT_INSTANT2("test_gpu", "SwapBuffers", TRACE_EVENT_SCOPE_THREAD,
"GLImpl", static_cast<int>(gl::GetGLImplementation()),
"width", pixel_size_.width());

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 1b26d15252c4f2799772fbbdbf983ffc0891de5c..b55c17b34e5cc5e367e28c834125c4c74f6cef77 100644
index e4fe19f5fc5fd7ab48eea206741c55038463c3f8..523a18fac8433b7d2b9f17f3185c5bd31e33f5cc 100644
--- a/services/network/network_context.cc
+++ b/services/network/network_context.cc
@@ -162,6 +162,11 @@
@@ -163,6 +163,11 @@
#include "services/network/web_transport.h"
#include "url/gurl.h"
@ -22,7 +22,7 @@ index 1b26d15252c4f2799772fbbdbf983ffc0891de5c..b55c17b34e5cc5e367e28c834125c4c7
#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
@@ -601,6 +606,99 @@ void RecordHSTSPreconnectUpgradeReason(HSTSRedirectUpgradeReason reason) {
@@ -602,6 +607,99 @@ void RecordHSTSPreconnectUpgradeReason(HSTSRedirectUpgradeReason reason) {
} // namespace
@ -122,7 +122,7 @@ index 1b26d15252c4f2799772fbbdbf983ffc0891de5c..b55c17b34e5cc5e367e28c834125c4c7
constexpr uint32_t NetworkContext::kMaxOutstandingRequestsPerProcess;
NetworkContext::NetworkContextHttpAuthPreferences::
@@ -997,6 +1095,13 @@ void NetworkContext::SetClient(
@@ -998,6 +1096,13 @@ void NetworkContext::SetClient(
client_.Bind(std::move(client));
}
@ -136,7 +136,7 @@ index 1b26d15252c4f2799772fbbdbf983ffc0891de5c..b55c17b34e5cc5e367e28c834125c4c7
void NetworkContext::CreateURLLoaderFactory(
mojo::PendingReceiver<mojom::URLLoaderFactory> receiver,
mojom::URLLoaderFactoryParamsPtr params) {
@@ -2583,6 +2688,10 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext(
@@ -2603,6 +2708,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 1b26d15252c4f2799772fbbdbf983ffc0891de5c..b55c17b34e5cc5e367e28c834125c4c7
builder.SetCertVerifier(IgnoreErrorsCertVerifier::MaybeWrapCertVerifier(
diff --git a/services/network/network_context.h b/services/network/network_context.h
index 5762335609a2972341e264756225a68dee118986..2596fecc569d59394703579cda02a27c629d843c 100644
index 775788f8cee653f31fa995d1e3414305d039483d..ca064589d9f2f6e00697f3b896ad522a5cf9bb6c 100644
--- a/services/network/network_context.h
+++ b/services/network/network_context.h
@@ -115,6 +115,7 @@ class URLMatcher;
@ -168,7 +168,7 @@ index 5762335609a2972341e264756225a68dee118986..2596fecc569d59394703579cda02a27c
void ResetURLLoaderFactories() override;
void GetViaObliviousHttp(
mojom::ObliviousHttpRequestPtr request,
@@ -951,6 +954,8 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext
@@ -956,6 +959,8 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext
std::vector<base::OnceClosure> dismount_closures_;
#endif // BUILDFLAG(IS_DIRECTORY_TRANSFER_REQUIRED)
@ -178,7 +178,7 @@ index 5762335609a2972341e264756225a68dee118986..2596fecc569d59394703579cda02a27c
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 c2dab3a6b9ca47e88ae73e386ff22587abdb49a3..0278c216fd810a1a96c53b57f80e6e91b473f5b0 100644
index 4ea464b2b6c00301ff0f1938fe584292723fafaa..f510b5c5c79161f32a08219aa7f6cd7a722eed85 100644
--- a/services/network/public/mojom/network_context.mojom
+++ b/services/network/public/mojom/network_context.mojom
@@ -309,6 +309,17 @@ struct SocketBrokerRemotes {
@ -199,7 +199,7 @@ index c2dab3a6b9ca47e88ae73e386ff22587abdb49a3..0278c216fd810a1a96c53b57f80e6e91
// Parameters for constructing a network context.
struct NetworkContextParams {
// The user agent string.
@@ -953,6 +964,9 @@ interface NetworkContext {
@@ -957,6 +968,9 @@ interface NetworkContext {
// Sets a client for this network context.
SetClient(pending_remote<NetworkContextClient> client);
@ -210,7 +210,7 @@ index c2dab3a6b9ca47e88ae73e386ff22587abdb49a3..0278c216fd810a1a96c53b57f80e6e91
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 007f7fbd78bf09120f34df37a008ce4084ae8d1b..64ed19803dc00575422a1b024cfb8907be17302e 100644
index 84bdf5143a6ab9cb9f89cd8ae12ea8e68c1608aa..81930f3b5ca760d4db9c65aeb36162ddea68a872 100644
--- a/services/network/test/test_network_context.h
+++ b/services/network/test/test_network_context.h
@@ -64,6 +64,8 @@ class TestNetworkContext : public mojom::NetworkContext {

View file

@ -79,10 +79,10 @@ index e7cc73f375ada7ee8715d331c3d372e0f59a0cdf..c0a142bea4a9a30c10dbb30c72fedce9
scoped_refptr<ServiceWorkerContextWrapper> service_worker_context_;
diff --git a/content/browser/notifications/blink_notification_service_impl_unittest.cc b/content/browser/notifications/blink_notification_service_impl_unittest.cc
index 07e06ac6a3f14081f61f44620b537e5442419660..f2b8a977277c1f1ab014edd007d5df766b70f328 100644
index 49a60e0a0df9785410db8e9ddacaf4b42f60f9f6..8538a06785d8627a1e20e6edeadc7442676ff43a 100644
--- a/content/browser/notifications/blink_notification_service_impl_unittest.cc
+++ b/content/browser/notifications/blink_notification_service_impl_unittest.cc
@@ -129,7 +129,7 @@ class BlinkNotificationServiceImplTest : public ::testing::Test {
@@ -134,7 +134,7 @@ class BlinkNotificationServiceImplTest : public ::testing::Test {
notification_service_ = std::make_unique<BlinkNotificationServiceImpl>(
notification_context_.get(), &browser_context_,
embedded_worker_helper_->context_wrapper(), &render_process_host_,
@ -92,7 +92,7 @@ index 07e06ac6a3f14081f61f44620b537e5442419660..f2b8a977277c1f1ab014edd007d5df76
contents_.get()->GetPrimaryMainFrame()->GetWeakDocumentPtr(),
RenderProcessHost::NotificationServiceCreatorType::kDocument,
diff --git a/content/browser/notifications/platform_notification_context_impl.cc b/content/browser/notifications/platform_notification_context_impl.cc
index d840a16e3abfc81b1c45b12827462fbda8dfac43..d18b0fff1ecdde0aece2a57dace5330c6b3f37f5 100644
index b09a71544475f5810e26006d9a2f975176b28bb8..e6c77f27d6a71d1d065e292963072186a257aca6 100644
--- a/content/browser/notifications/platform_notification_context_impl.cc
+++ b/content/browser/notifications/platform_notification_context_impl.cc
@@ -281,6 +281,7 @@ void PlatformNotificationContextImpl::Shutdown() {
@ -133,10 +133,10 @@ index 5be62a3fb27e37f3c1db6b811172f6dfebe18f61..34349f9832fe4b9a3d48db613a789afb
const GURL& document_url,
const WeakDocumentPtr& weak_document_ptr,
diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
index 68f79d9dfec6f00aa0914f4dcbfa927c7e419d22..7a1fc82866b5a28c7f14e3c8303de2d62cbbcc84 100644
index 6606217ec587846d995c4312f9a6ecd0a82b9ba1..63c4c7d56dd8677f37c2eed64166647c17b26d1c 100644
--- a/content/browser/renderer_host/render_process_host_impl.cc
+++ b/content/browser/renderer_host/render_process_host_impl.cc
@@ -2219,7 +2219,7 @@ void RenderProcessHostImpl::CreateNotificationService(
@@ -2217,7 +2217,7 @@ void RenderProcessHostImpl::CreateNotificationService(
case RenderProcessHost::NotificationServiceCreatorType::kSharedWorker:
case RenderProcessHost::NotificationServiceCreatorType::kDedicatedWorker: {
storage_partition_impl_->GetPlatformNotificationContext()->CreateService(
@ -145,7 +145,7 @@ index 68f79d9dfec6f00aa0914f4dcbfa927c7e419d22..7a1fc82866b5a28c7f14e3c8303de2d6
creator_type, std::move(receiver));
break;
}
@@ -2227,7 +2227,7 @@ void RenderProcessHostImpl::CreateNotificationService(
@@ -2225,7 +2225,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 e47ef4d4541325c358c8fa173ed44f0256ef7f06..ae5dbf3790c446e37cc454f4f88b4c972f47a702 100644
index ebd468101367846b4f033198d6ca63f8e7a9caf0..8fb69b83d8cb2733a36c1af2fa8dc84e6f8ff277 100644
--- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -806,8 +806,8 @@ void VerifyThatBrowserAndRendererCalculatedOriginsToCommitMatch(
@@ -807,8 +807,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

@ -38,10 +38,10 @@ index 8168b4cfbafd42fa93a5aa9a3691c2552fabfb86..ba49212bd76d209f99c1cee649fc1466
ui::ImageModel::FromVectorIcon(*icon, kColorPipWindowForeground,
kCloseButtonIconSize));
diff --git a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc
index 81f83c6d9ad03049b368a1994b5606ec12ce04dd..43dc9886e0e08d6651810b3f9b3ed5453d8c41ab 100644
index c65308ac3bec1e6399c74f5d0bcf59364db4e997..5012789f084113a9289e8d198eed2f021953bef9 100644
--- a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc
+++ b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc
@@ -18,9 +18,11 @@
@@ -19,9 +19,11 @@
#include "build/build_config.h"
#include "chrome/browser/picture_in_picture/picture_in_picture_occlusion_tracker.h"
#include "chrome/browser/picture_in_picture/picture_in_picture_window_manager.h"
@ -53,7 +53,7 @@ index 81f83c6d9ad03049b368a1994b5606ec12ce04dd..43dc9886e0e08d6651810b3f9b3ed545
#include "chrome/browser/ui/color/chrome_color_id.h"
#include "chrome/browser/ui/views/overlay/back_to_tab_button.h"
#include "chrome/browser/ui/views/overlay/back_to_tab_label_button.h"
@@ -71,7 +73,7 @@
@@ -72,7 +74,7 @@
#include "ui/aura/window.h"
#endif
@ -62,7 +62,7 @@ index 81f83c6d9ad03049b368a1994b5606ec12ce04dd..43dc9886e0e08d6651810b3f9b3ed545
#include "chrome/browser/shell_integration_win.h"
#include "content/public/browser/render_widget_host_view.h"
#include "ui/aura/window.h"
@@ -395,7 +397,7 @@ std::unique_ptr<VideoOverlayWindowViews> VideoOverlayWindowViews::Create(
@@ -396,7 +398,7 @@ std::unique_ptr<VideoOverlayWindowViews> VideoOverlayWindowViews::Create(
overlay_window->Init(std::move(params));
overlay_window->OnRootViewReady();

View file

@ -10,7 +10,7 @@ in favor of defining PreconnectRequest in this file since we don't build
the header.
diff --git a/chrome/browser/predictors/preconnect_manager.cc b/chrome/browser/predictors/preconnect_manager.cc
index 5741fefef3a3a803a4e463ada1980d5d09a9ebe3..e8c4ccb63425a4097794dc33eccc64d54b384af9 100644
index 037b624807fbf34843c450876aae70529df5f7da..a8208563f7d339d486d973caf7b29aba40c91ad0 100644
--- a/chrome/browser/predictors/preconnect_manager.cc
+++ b/chrome/browser/predictors/preconnect_manager.cc
@@ -15,9 +15,11 @@
@ -25,7 +25,7 @@ index 5741fefef3a3a803a4e463ada1980d5d09a9ebe3..e8c4ccb63425a4097794dc33eccc64d5
#include "content/public/browser/browser_context.h"
#include "content/public/browser/browser_task_traits.h"
#include "content/public/browser/browser_thread.h"
@@ -29,6 +31,20 @@ namespace predictors {
@@ -30,6 +32,20 @@ namespace predictors {
const bool kAllowCredentialsOnPreconnectByDefault = true;
@ -46,7 +46,7 @@ index 5741fefef3a3a803a4e463ada1980d5d09a9ebe3..e8c4ccb63425a4097794dc33eccc64d5
PreconnectedRequestStats::PreconnectedRequestStats(const url::Origin& origin,
bool was_preconnected)
: origin(origin), was_preconnected(was_preconnected) {}
@@ -95,12 +111,15 @@ PreconnectManager::PreconnectManager(base::WeakPtr<Delegate> delegate,
@@ -103,12 +119,15 @@ PreconnectManager::PreconnectManager(base::WeakPtr<Delegate> delegate,
PreconnectManager::~PreconnectManager() = default;
bool PreconnectManager::IsEnabled() {
@ -63,7 +63,7 @@ index 5741fefef3a3a803a4e463ada1980d5d09a9ebe3..e8c4ccb63425a4097794dc33eccc64d5
void PreconnectManager::Start(const GURL& url,
diff --git a/chrome/browser/predictors/preconnect_manager.h b/chrome/browser/predictors/preconnect_manager.h
index 107c0f79ccf10eb5d16181213e12c93f1abc62d6..9babefff03899de91519474956ba1297fbd1c95d 100644
index 7ffcb5226bed84e0ecf23d0562a0b61db9a0b835..e2314d0328c265353f7cb6fdb9bfd3b937f25444 100644
--- a/chrome/browser/predictors/preconnect_manager.h
+++ b/chrome/browser/predictors/preconnect_manager.h
@@ -17,7 +17,9 @@
@ -75,8 +75,8 @@ index 107c0f79ccf10eb5d16181213e12c93f1abc62d6..9babefff03899de91519474956ba1297
+#endif
#include "content/public/browser/storage_partition_config.h"
#include "net/base/network_anonymization_key.h"
#include "url/gurl.h"
@@ -34,7 +36,28 @@ class NetworkContext;
#include "services/network/public/mojom/reconnect_event_observer.mojom.h"
@@ -35,7 +37,28 @@ class NetworkContext;
namespace predictors {

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 679ee6731e685a9844bb6461d664f8e5b823e258..b67e945fdb5d28168c0700a9cba4ebd416ed4858 100644
index e349f271bd3dbcc5243b3043439f443a79e331b4..c9e280d67a0133598ce7a4c0934d1d1547c48133 100644
--- a/content/browser/BUILD.gn
+++ b/content/browser/BUILD.gn
@@ -3156,8 +3156,9 @@ source_set("browser") {
@@ -3155,8 +3155,9 @@ source_set("browser") {
"//ppapi/shared_impl",
]

View file

@ -44,10 +44,10 @@ index 8637d83c1d3a912bbc48effcc095b426640351ad..3419628c08b62a16c62778cc124c365a
void RenderWidgetHostImpl::ShowContextMenuAtPoint(
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
index 87eb1f54dc33211cd69a95a1d5b4b000e9882bf1..c7b606450604fe58ca2a19610a8c7784464536ab 100644
index 488c6750990666cf8b58dc3b0a1859e0c852564c..5750805837d17af3cd074ab3ecb66b34b4992b22 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -5853,6 +5853,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() {
@@ -5870,6 +5870,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() {
return text_input_manager_.get();
}
@ -60,10 +60,10 @@ index 87eb1f54dc33211cd69a95a1d5b4b000e9882bf1..c7b606450604fe58ca2a19610a8c7784
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 73da2d3c2b16e42c90ecf94ac11dc22dc57ab45e..0424da61cac8cace2e71963cd46f845992b68305 100644
index ff2a3cc31a9c8e24222d3614c58d0884c1fde260..641840c371a76a729d62d59703a5d5566ef76b3c 100644
--- a/content/browser/web_contents/web_contents_impl.h
+++ b/content/browser/web_contents/web_contents_impl.h
@@ -1177,6 +1177,7 @@ class CONTENT_EXPORT WebContentsImpl
@@ -1186,6 +1186,7 @@ class CONTENT_EXPORT WebContentsImpl
void SendScreenRects() override;
void SendActiveState(bool active) override;
TextInputManager* GetTextInputManager() override;
@ -72,7 +72,7 @@ index 73da2d3c2b16e42c90ecf94ac11dc22dc57ab45e..0424da61cac8cace2e71963cd46f8459
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 255420b16b66fb3a232a7938b991281cf6b6aaff..6561b5ac42cb16e0645195e2b0db25c05c35559e 100644
index 4f97e13f9125e653f44acad78f8f35ee38e90b6d..f3c712e3f970dcccaac37e4dd407f14b52871269 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 255420b16b66fb3a232a7938b991281cf6b6aaff..6561b5ac42cb16e0645195e2b0db25c0
#include "ui/base/page_transition_types.h"
#include "ui/base/window_open_disposition.h"
@@ -641,6 +642,9 @@ class CONTENT_EXPORT WebContentsObserver : public base::CheckedObserver {
@@ -645,6 +646,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 258e8926bcf7e4370baaf15c5aad15da0c63a9d6..7532d92e78f19da9997001a681a63cf64e274348 100644
index 0ef15b8fb653a0b33782bcb1c138288e1071294e..ca654ee7204af1bad8e4578982b4b2a687a444e8 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
@@ -45,7 +45,6 @@
@ -142,7 +142,7 @@ index 258e8926bcf7e4370baaf15c5aad15da0c63a9d6..7532d92e78f19da9997001a681a63cf6
// A wrapper around `base::NormalizeFilePath` that returns its result instead of
// using an out parameter.
diff --git a/chrome/browser/file_system_access/chrome_file_system_access_permission_context.h b/chrome/browser/file_system_access/chrome_file_system_access_permission_context.h
index 1722dbeb24b9f26c9a24fe1c3605861400eb2a4a..8da82018d12713933230304f09f12cf5e6e9adb1 100644
index 46a2019587b534add3c89f464cdf7261a67e7cce..7d313934b24b32830976ce19479cf3b00d3ddca8 100644
--- a/chrome/browser/file_system_access/chrome_file_system_access_permission_context.h
+++ b/chrome/browser/file_system_access/chrome_file_system_access_permission_context.h
@@ -21,7 +21,7 @@

View file

@ -6,10 +6,10 @@ Subject: refactor: patch electron PermissionTypes into blink
6387077: [PermissionOptions] Generalize PermissionRequestDescription | https://chromium-review.googlesource.com/c/chromium/src/+/6387077
diff --git a/components/permissions/permission_util.cc b/components/permissions/permission_util.cc
index d91d81297e7cdb79ee7b7a3979dcedf977e16c92..4555f9d52b51d53bdfa43c4a746714758c54e1c2 100644
index e350f6789c710826e0885ccdc19e66e2213820df..b8ba008470f39f6f3559d29b9eff0a23863da364 100644
--- a/components/permissions/permission_util.cc
+++ b/components/permissions/permission_util.cc
@@ -389,7 +389,17 @@ ContentSettingsType PermissionUtil::PermissionTypeToContentSettingsTypeSafe(
@@ -502,7 +502,17 @@ ContentSettingsType PermissionUtil::PermissionTypeToContentSettingsTypeSafe(
return ContentSettingsType::WEB_APP_INSTALLATION;
case PermissionType::LOCAL_NETWORK_ACCESS:
return ContentSettingsType::LOCAL_NETWORK_ACCESS;
@ -28,7 +28,7 @@ index d91d81297e7cdb79ee7b7a3979dcedf977e16c92..4555f9d52b51d53bdfa43c4a74671475
break;
}
diff --git a/content/browser/permissions/permission_controller_impl.cc b/content/browser/permissions/permission_controller_impl.cc
index a0fdb5003382d94aeb676a4224aa40f16acf1573..a740f23458d7fe840824355ef6d136e360e49175 100644
index b267734bf2273253aa921728e12c753adfade02e..fd72e7d62ac45f51b2e7e295930ed25bb376056b 100644
--- a/content/browser/permissions/permission_controller_impl.cc
+++ b/content/browser/permissions/permission_controller_impl.cc
@@ -87,7 +87,15 @@ PermissionToSchedulingFeature(PermissionType permission_name) {

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 3b0faab24a3b1d4bd194d18fdef02706362de39d..71a2ea790dc97800235a471d46624397210da8f0 100644
index e49355eb60d9df2145344f3aa102444222e55e95..43309f4c582bf45c887aa0fe99805ddb26b3d694 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -10089,25 +10089,13 @@ void WebContentsImpl::RendererUnresponsive(
@@ -10113,25 +10113,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 22ee05153569d0db7cbc7ab520944e84b9475c8e..4017ee032569466f5311e5c9612c82c086eab935 100644
index a6b6917ee2c02c091aa51b55449d93fa55e06ac2..eca43bf620111c27c400ae2d95880e47c34fbc59 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
@@ -170,6 +170,15 @@ void ExtractUnderlines(NSAttributedString* string,

View file

@ -233,7 +233,7 @@ index 7c99a9512e6f65713fe8483cef7b7c9b494b4491..8fb6cf252961c9773d1a6a09d47bec6a
}
diff --git a/content/common/features.cc b/content/common/features.cc
index efd12c4d80edefb2848767706f6a1ceb3fd224be..035e7cee64d1989756a1e52863a4ff0515b6f7de 100644
index 9a619bf9a4e2801d7a67bd26104066d03dcfb465..6aa5f4cb75bc8e22048b6b9bb8456a958ad7b80d 100644
--- a/content/common/features.cc
+++ b/content/common/features.cc
@@ -300,6 +300,14 @@ BASE_FEATURE(kIOSurfaceCapturer,

View file

@ -8,16 +8,16 @@ as its one of our supported platforms.
https://chromium-review.googlesource.com/q/I3a62f02f564f07be63173b0773b4ecaffbe939b9
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
index ca42c82a2b10407c27cf9c764c62fc67e1df1c15..dde1079897599b8fb475f0036140d8008df3b2c2 100644
index edaa614330f2c6bb4d69672b64932bf38ae6e763..4fd86ab43464d62b42f78c76526c4bc41dcb6d5d 100644
--- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn
@@ -617,7 +617,8 @@ config("compiler") {
@@ -618,7 +618,8 @@ config("compiler") {
# Enable ELF CREL (see crbug.com/357878242) for all platforms that use ELF
# (excluding toolchains that use an older version of LLVM).
- if (is_linux && !llvm_android_mainline &&
- if (is_linux && use_lld && !llvm_android_mainline &&
+ # TODO(crbug.com/376278218): This causes segfault on Linux ARM builds.
+ if (is_linux && !llvm_android_mainline && current_cpu != "arm" &&
+ if (is_linux && use_lld && !llvm_android_mainline && current_cpu != "arm" &&
default_toolchain != "//build/toolchain/cros:target") {
cflags += [ "-Wa,--crel,--allow-experimental-crel" ]
}

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 7a1fc82866b5a28c7f14e3c8303de2d62cbbcc84..ea659ff49295d9a5c449eb903f5c3ddc238e4e6a 100644
index 63c4c7d56dd8677f37c2eed64166647c17b26d1c..9df359cf6f5b71259d1df6d7e0fd8044bfa1ff73 100644
--- a/content/browser/renderer_host/render_process_host_impl.cc
+++ b/content/browser/renderer_host/render_process_host_impl.cc
@@ -1827,6 +1827,10 @@ bool RenderProcessHostImpl::Init() {
@@ -1825,6 +1825,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 84c70711d45b20c22c498c4475c5cf94567d16d2..9dcf5453e51148f683d66a120b806c603c99185d 100644
index 0d8321a96a8810ae6c066e60ba3bf57b76663222..160720e3ac8d920d49c83014d6db280179b5b7e1 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -3922,6 +3922,13 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
@@ -3939,6 +3939,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 84c70711d45b20c22c498c4475c5cf94567d16d2..9dcf5453e51148f683d66a120b806c60
std::unique_ptr<WebContentsViewDelegate> delegate =
GetContentClient()->browser()->GetWebContentsViewDelegate(this);
@@ -3932,6 +3939,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
@@ -3949,6 +3956,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
view_ = CreateWebContentsView(this, std::move(delegate),
&render_view_host_delegate_view_);
}
@ -35,7 +35,7 @@ index 84c70711d45b20c22c498c4475c5cf94567d16d2..9dcf5453e51148f683d66a120b806c60
CHECK(view_.get());
diff --git a/content/public/browser/web_contents.h b/content/public/browser/web_contents.h
index 3149e94c813d8532b12657150a25353203217645..be500380ce2ae7a0e379f922a042745bc0d97eb0 100644
index 437060750090e974a3257979c215d13d036afa4e..5dce8d4e37845e1bb1922d7c4da3208939549b27 100644
--- a/content/public/browser/web_contents.h
+++ b/content/public/browser/web_contents.h
@@ -121,10 +121,13 @@ class BrowserPluginGuestDelegate;

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 c88d80416ac7b6c76ff3e11016d2e20601e89d38..e47ef4d4541325c358c8fa173ed44f0256ef7f06 100644
index 24a854c190eab39c85fa9b94d3369999688bf943..ebd468101367846b4f033198d6ca63f8e7a9caf0 100644
--- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -8870,6 +8870,17 @@ void RenderFrameHostImpl::EnterFullscreen(
@@ -8878,6 +8878,17 @@ void RenderFrameHostImpl::EnterFullscreen(
}
}
@ -37,10 +37,10 @@ index c88d80416ac7b6c76ff3e11016d2e20601e89d38..e47ef4d4541325c358c8fa173ed44f02
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 9dcf5453e51148f683d66a120b806c603c99185d..f60cc24fbffc8421d18f259a47657f0c1cb6317f 100644
index 160720e3ac8d920d49c83014d6db280179b5b7e1..c2b9746a47075520115825c278582ec43035dca2 100644
--- a/content/browser/web_contents/web_contents_impl.cc
+++ b/content/browser/web_contents/web_contents_impl.cc
@@ -4197,21 +4197,25 @@ KeyboardEventProcessingResult WebContentsImpl::PreHandleKeyboardEvent(
@@ -4214,21 +4214,25 @@ KeyboardEventProcessingResult WebContentsImpl::PreHandleKeyboardEvent(
const input::NativeWebKeyboardEvent& event) {
OPTIONAL_TRACE_EVENT0(TRACE_DISABLED_BY_DEFAULT("content.verbose"),
"WebContentsImpl::PreHandleKeyboardEvent");
@ -78,7 +78,7 @@ index 9dcf5453e51148f683d66a120b806c603c99185d..f60cc24fbffc8421d18f259a47657f0c
}
bool WebContentsImpl::HandleMouseEvent(const blink::WebMouseEvent& event) {
@@ -4370,7 +4374,7 @@ void WebContentsImpl::EnterFullscreenMode(
@@ -4387,7 +4391,7 @@ void WebContentsImpl::EnterFullscreenMode(
OPTIONAL_TRACE_EVENT0("content", "WebContentsImpl::EnterFullscreenMode");
DCHECK(CanEnterFullscreenMode(requesting_frame));
DCHECK(requesting_frame->IsActive());

View file

@ -67,10 +67,10 @@ index 617b7a582f1331796129f78c12558ebc81850bf9..ae2de15efaae470ec8b137323c1ad543
const WebSecurityOrigin& script_origin) {
return false;
diff --git a/third_party/blink/renderer/core/workers/worker_thread.cc b/third_party/blink/renderer/core/workers/worker_thread.cc
index 00c8757098f9959f78a0a7383cf1197f88ae14aa..9b2878bc23c78f092816524608776dd32fbde5a1 100644
index e4d70bc0f577809cf6b9876044fe78192a098ec6..7d13d80a7f09e47d9f3c6da860e8d3373d5b8afd 100644
--- a/third_party/blink/renderer/core/workers/worker_thread.cc
+++ b/third_party/blink/renderer/core/workers/worker_thread.cc
@@ -751,6 +751,12 @@ void WorkerThread::PrepareForShutdownOnWorkerThread() {
@@ -748,6 +748,12 @@ void WorkerThread::PrepareForShutdownOnWorkerThread() {
}
pause_handle_.reset();

View file

@ -10,7 +10,7 @@ to handle this without patching, but this is fairly clean for now and no longer
patching legacy devtools code.
diff --git a/front_end/entrypoints/main/MainImpl.ts b/front_end/entrypoints/main/MainImpl.ts
index 6fcf6ee9b14aead9a1fe97f5c78e98d43f57304b..1e3fea3ed5ad7dad7da98c1c4f28b5992f0051d8 100644
index 0f3a5d69bef697a7787b68cd1c8261c67993edf3..1d49c1190ba7d47a76993b7f291119be243d189e 100644
--- a/front_end/entrypoints/main/MainImpl.ts
+++ b/front_end/entrypoints/main/MainImpl.ts
@@ -741,6 +741,8 @@ export class MainImpl {

View file

@ -10,13 +10,13 @@ the exported symbols in SQLite to avoid conflicts with Node.js.
This should be upstreamed to SQLite.
diff --git a/amalgamation/rename_exports.h b/amalgamation/rename_exports.h
index b1c485159a624ea1bfbec603aabc58074721e72a..8eb71ae67acc3e0ad17bae2e87e85bf12c10b9af 100644
index 91a69bfdea89ed1845c330e71105cf818b6f0e2f..dcf92ac793f04c061d6db64bf26fcb98884490cf 100644
--- a/amalgamation/rename_exports.h
+++ b/amalgamation/rename_exports.h
@@ -367,6 +367,15 @@
#define sqlite3session_patchset chrome_sqlite3session_patchset // Lines 11449-11453
#define sqlite3session_patchset_strm chrome_sqlite3session_patchset_strm // Lines 12728-12732
#define sqlite3session_table_filter chrome_sqlite3session_table_filter // Lines 11219-11226
#define sqlite3session_patchset chrome_sqlite3session_patchset // Lines 11609-11613
#define sqlite3session_patchset_strm chrome_sqlite3session_patchset_strm // Lines 12888-12892
#define sqlite3session_table_filter chrome_sqlite3session_table_filter // Lines 11379-11386
+#define sqlite3_win32_write_debug chrome_sqlite3_win32_write_debug
+#define sqlite3_win32_sleep chrome_sqlite3_win32_sleep
+#define sqlite3_win32_is_nt chrome_sqlite3_win32_is_nt

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 7ae6ef7c6c8cdb5079ec606b042161dc25cddeeb..00b669e8f6973329dca5bbe52ee47327b504e475 100644
index fe865500cbbae3e06f22a54b083be5bdbdfbbece..193add348fd07d06fa24c0d14e9b13f5850308c3 100644
--- a/src/api/api.cc
+++ b/src/api/api.cc
@@ -6306,14 +6306,33 @@ Local<Data> v8::Object::SlowGetInternalField(int index) {
@@ -6308,14 +6308,33 @@ Local<Data> v8::Object::SlowGetInternalField(int index) {
i::Cast<i::JSObject>(*obj)->GetEmbedderField(index), isolate));
}

View file

@ -36,10 +36,10 @@ for desktop capturer. This change re-enables that fallback, which was
previously default behavior.
diff --git a/modules/desktop_capture/desktop_capturer.cc b/modules/desktop_capture/desktop_capturer.cc
index 7fd0fc31d81bf4d5eca5f8aa7106388ea4c518e4..51dde063a78be7aade1953fbee8bb2db71b72ce5 100644
index 45c13751aadb108325836efeca7edbbcb672c1fd..7569900495bfacaa27e6ec2a57cb4f283bbfc827 100644
--- a/modules/desktop_capture/desktop_capturer.cc
+++ b/modules/desktop_capture/desktop_capturer.cc
@@ -113,7 +113,7 @@ std::unique_ptr<DesktopCapturer> DesktopCapturer::CreateGenericCapturer(
@@ -117,7 +117,7 @@ std::unique_ptr<DesktopCapturer> DesktopCapturer::CreateGenericCapturer(
std::unique_ptr<DesktopCapturer> capturer;
#if defined(WEBRTC_USE_PIPEWIRE)

View file

@ -1405,6 +1405,7 @@ void ElectronBrowserClient::OverrideURLLoaderFactoryParams(
content::BrowserContext* browser_context,
const url::Origin& origin,
bool is_for_isolated_world,
bool is_for_service_worker,
network::mojom::URLLoaderFactoryParams* factory_params) {
if (factory_params->top_frame_id) {
// Bypass CORB and CORS when web security is disabled.
@ -1421,7 +1422,8 @@ void ElectronBrowserClient::OverrideURLLoaderFactoryParams(
}
#if BUILDFLAG(ENABLE_ELECTRON_EXTENSIONS)
extensions::URLLoaderFactoryManager::OverrideURLLoaderFactoryParams(
browser_context, origin, is_for_isolated_world, factory_params);
browser_context, origin, is_for_isolated_world, is_for_service_worker,
factory_params);
#endif
}

View file

@ -258,6 +258,7 @@ class ElectronBrowserClient : public content::ContentBrowserClient,
content::BrowserContext* browser_context,
const url::Origin& origin,
bool is_for_isolated_world,
bool is_for_service_worker,
network::mojom::URLLoaderFactoryParams* factory_params) override;
void RegisterAssociatedInterfaceBindersForRenderFrameHost(
content::RenderFrameHost& render_frame_host,

View file

@ -269,9 +269,11 @@ void ElectronPermissionManager::RequestPermissionsFromCurrentDocument(
}
blink::mojom::PermissionStatus ElectronPermissionManager::GetPermissionStatus(
blink::PermissionType permission,
const blink::mojom::PermissionDescriptorPtr& permission_descriptor,
const GURL& requesting_origin,
const GURL& embedding_origin) {
const auto permission =
blink::PermissionDescriptorToPermissionType(permission_descriptor);
base::Value::Dict details;
details.Set("embeddingOrigin", embedding_origin.spec());
bool granted = CheckPermissionWithDetails(permission, {}, requesting_origin,
@ -282,11 +284,12 @@ blink::mojom::PermissionStatus ElectronPermissionManager::GetPermissionStatus(
content::PermissionResult
ElectronPermissionManager::GetPermissionResultForOriginWithoutContext(
blink::PermissionType permission,
const blink::mojom::PermissionDescriptorPtr& permission_descriptor,
const url::Origin& requesting_origin,
const url::Origin& embedding_origin) {
blink::mojom::PermissionStatus status = GetPermissionStatus(
permission, requesting_origin.GetURL(), embedding_origin.GetURL());
blink::mojom::PermissionStatus status =
GetPermissionStatus(permission_descriptor, requesting_origin.GetURL(),
embedding_origin.GetURL());
return {status, content::PermissionStatusSource::UNSPECIFIED};
}
@ -390,12 +393,14 @@ ElectronPermissionManager::CheckProtectedUSBClasses(
blink::mojom::PermissionStatus
ElectronPermissionManager::GetPermissionStatusForCurrentDocument(
blink::PermissionType permission,
const blink::mojom::PermissionDescriptorPtr& permission_descriptor,
content::RenderFrameHost* render_frame_host,
bool /*should_include_device_status*/) {
if (render_frame_host->IsNestedWithinFencedFrame())
return blink::mojom::PermissionStatus::DENIED;
const auto permission =
blink::PermissionDescriptorToPermissionType(permission_descriptor);
base::Value::Dict details;
details.Set("embeddingOrigin",
content::PermissionUtil::GetLastCommittedOriginAsURL(
@ -410,22 +415,23 @@ ElectronPermissionManager::GetPermissionStatusForCurrentDocument(
blink::mojom::PermissionStatus
ElectronPermissionManager::GetPermissionStatusForWorker(
blink::PermissionType permission,
const blink::mojom::PermissionDescriptorPtr& permission_descriptor,
content::RenderProcessHost* render_process_host,
const GURL& worker_origin) {
return GetPermissionStatus(permission, worker_origin, worker_origin);
return GetPermissionStatus(permission_descriptor, worker_origin,
worker_origin);
}
blink::mojom::PermissionStatus
ElectronPermissionManager::GetPermissionStatusForEmbeddedRequester(
blink::PermissionType permission,
const blink::mojom::PermissionDescriptorPtr& permission_descriptor,
content::RenderFrameHost* render_frame_host,
const url::Origin& overridden_origin) {
if (render_frame_host->IsNestedWithinFencedFrame())
return blink::mojom::PermissionStatus::DENIED;
return GetPermissionStatus(
permission, overridden_origin.GetURL(),
permission_descriptor, overridden_origin.GetURL(),
render_frame_host->GetLastCommittedOrigin().GetURL());
}

View file

@ -122,7 +122,7 @@ class ElectronPermissionManager : public content::PermissionControllerDelegate {
const GURL& requesting_origin,
const GURL& embedding_origin) override;
blink::mojom::PermissionStatus GetPermissionStatus(
blink::PermissionType permission,
const blink::mojom::PermissionDescriptorPtr& permission_descriptor,
const GURL& requesting_origin,
const GURL& embedding_origin) override;
void RequestPermissionsFromCurrentDocument(
@ -132,19 +132,19 @@ class ElectronPermissionManager : public content::PermissionControllerDelegate {
void(const std::vector<blink::mojom::PermissionStatus>&)> callback)
override;
content::PermissionResult GetPermissionResultForOriginWithoutContext(
blink::PermissionType permission,
const blink::mojom::PermissionDescriptorPtr& permission_descriptor,
const url::Origin& requesting_origin,
const url::Origin& embedding_origin) override;
blink::mojom::PermissionStatus GetPermissionStatusForCurrentDocument(
blink::PermissionType permission,
const blink::mojom::PermissionDescriptorPtr& permission_descriptor,
content::RenderFrameHost* render_frame_host,
bool should_include_device_status) override;
blink::mojom::PermissionStatus GetPermissionStatusForWorker(
blink::PermissionType permission,
const blink::mojom::PermissionDescriptorPtr& permission_descriptor,
content::RenderProcessHost* render_process_host,
const GURL& worker_origin) override;
blink::mojom::PermissionStatus GetPermissionStatusForEmbeddedRequester(
blink::PermissionType permission,
const blink::mojom::PermissionDescriptorPtr& permission_descriptor,
content::RenderFrameHost* render_frame_host,
const url::Origin& requesting_origin) override;

View file

@ -28,8 +28,6 @@
namespace extensions {
using LoadErrorBehavior = ExtensionRegistrar::LoadErrorBehavior;
namespace {
std::pair<scoped_refptr<const Extension>, std::string> LoadUnpacked(
@ -127,8 +125,7 @@ void ElectronExtensionLoader::ReloadExtension(const ExtensionId& extension_id) {
DCHECK_EQ(false, did_schedule_reload_);
base::AutoReset<bool> reset_did_schedule_reload(&did_schedule_reload_, false);
extension_registrar_->ReloadExtension(extension_id,
LoadErrorBehavior::kQuiet);
extension_registrar_->ReloadExtensionWithQuietFailure(extension_id);
if (did_schedule_reload_)
return;
}
@ -201,10 +198,9 @@ void ElectronExtensionLoader::PostUninstallExtension(
scoped_refptr<const Extension> extension,
base::OnceClosure done_callback) {}
void ElectronExtensionLoader::LoadExtensionForReload(
void ElectronExtensionLoader::DoLoadExtensionForReload(
const ExtensionId& extension_id,
const base::FilePath& path,
LoadErrorBehavior load_error_behavior) {
const base::FilePath& path) {
CHECK(!path.empty());
// TODO(nornagon): we should save whether file access was granted
@ -218,6 +214,18 @@ void ElectronExtensionLoader::LoadExtensionForReload(
did_schedule_reload_ = true;
}
void ElectronExtensionLoader::LoadExtensionForReload(
const ExtensionId& extension_id,
const base::FilePath& path) {
DoLoadExtensionForReload(extension_id, path);
}
void ElectronExtensionLoader::LoadExtensionForReloadWithQuietFailure(
const ExtensionId& extension_id,
const base::FilePath& path) {
DoLoadExtensionForReload(extension_id, path);
}
void ElectronExtensionLoader::ShowExtensionDisabledError(
const Extension* extension,
bool is_remote_install) {}

View file

@ -72,6 +72,8 @@ class ElectronExtensionLoader : public ExtensionRegistrar::Delegate {
void FinishExtensionLoad(
base::OnceCallback<void(const Extension*, const std::string&)> cb,
std::pair<scoped_refptr<const Extension>, std::string> result);
void DoLoadExtensionForReload(const ExtensionId& extension_id,
const base::FilePath& path);
// ExtensionRegistrar::Delegate:
void PreAddExtension(const Extension* extension,
@ -82,10 +84,11 @@ class ElectronExtensionLoader : public ExtensionRegistrar::Delegate {
void PreUninstallExtension(scoped_refptr<const Extension> extension) override;
void PostUninstallExtension(scoped_refptr<const Extension> extension,
base::OnceClosure done_callback) override;
void LoadExtensionForReload(
void LoadExtensionForReload(const ExtensionId& extension_id,
const base::FilePath& path) override;
void LoadExtensionForReloadWithQuietFailure(
const ExtensionId& extension_id,
const base::FilePath& path,
ExtensionRegistrar::LoadErrorBehavior load_error_behavior) override;
const base::FilePath& path) override;
void ShowExtensionDisabledError(const Extension* extension,
bool is_remote_install) override;
bool CanEnableExtension(const Extension* extension) override;

View file

@ -1220,7 +1220,7 @@ SkColor NativeWindowViews::GetBackgroundColor() const {
auto* background = root_view_.background();
if (!background)
return SK_ColorTRANSPARENT;
return background->color().ConvertToSkColor(root_view_.GetColorProvider());
return background->color().ResolveToSkColor(root_view_.GetColorProvider());
}
void NativeWindowViews::SetBackgroundColor(SkColor background_color) {

View file

@ -78,7 +78,8 @@ class URLLoaderNetworkObserver
network::mojom::IPAddressSpace client_address_space,
network::mojom::IPAddressSpace target_address_space) override {}
void OnAdAuctionEventRecordHeaderReceived(
network::AdAuctionEventRecord event_record) override {}
network::AdAuctionEventRecord event_record,
const std::optional<url::Origin>& top_frame_origin) override {}
void Clone(
mojo::PendingReceiver<network::mojom::URLLoaderNetworkServiceObserver>
observer) override;

View file

@ -207,7 +207,7 @@ void MenuBar::ViewHierarchyChanged(
views::AccessiblePaneView::ViewHierarchyChanged(details);
#if BUILDFLAG(IS_WIN)
background_color_ =
GetBackground()->color().ConvertToSkColor(root_view_->GetColorProvider());
GetBackground()->color().ResolveToSkColor(root_view_->GetColorProvider());
#endif
}
@ -220,7 +220,7 @@ void MenuBar::RefreshColorCache(const ui::NativeTheme* theme) {
disabled_color_ = gtk::GetFgColor(
"GtkMenuBar#menubar GtkMenuItem#menuitem:disabled GtkLabel");
#elif BUILDFLAG(IS_WIN)
background_color_ = GetBackground()->color().ConvertToSkColor(
background_color_ = GetBackground()->color().ResolveToSkColor(
root_view_->GetColorProvider());
#endif
}

View file

@ -68,7 +68,7 @@ bool ElectronDesktopWindowTreeHostWin::GetDwmFrameInsetsInPixels(
bool ElectronDesktopWindowTreeHostWin::GetClientAreaInsets(
gfx::Insets* insets,
HMONITOR monitor) const {
int frame_thickness) const {
// Windows by default extends the maximized window slightly larger than
// current workspace, for frameless window since the standard frame has been
// removed, the client area would then be drew outside current workspace.

View file

@ -38,7 +38,7 @@ class ElectronDesktopWindowTreeHostWin : public views::DesktopWindowTreeHostWin,
bool ShouldPaintAsActive() const override;
bool GetDwmFrameInsetsInPixels(gfx::Insets* insets) const override;
bool GetClientAreaInsets(gfx::Insets* insets,
HMONITOR monitor) const override;
int frame_thickness) const override;
bool HandleMouseEventForCaption(UINT message) const override;
bool HandleMouseEvent(ui::MouseEvent* event) override;

View file

@ -137,7 +137,8 @@ class SimpleURLLoaderWrapper final
network::mojom::IPAddressSpace client_address_space,
network::mojom::IPAddressSpace target_address_space) override {}
void OnAdAuctionEventRecordHeaderReceived(
network::AdAuctionEventRecord event_record) override {}
network::AdAuctionEventRecord event_record,
const std::optional<url::Origin>& top_frame_origin) override {}
scoped_refptr<network::SharedURLLoaderFactory> GetURLLoaderFactoryForURL(
const GURL& url);