chore: bump chromium to 140.0.7281.0 (38-x-y) (#47559)
* chore: bump chromium in DEPS to 139.0.7258.6 * chore: bump chromium in DEPS to 139.0.7258.5 * chore: bump chromium in DEPS to 140.0.7270.1 * chore: bump chromium in DEPS to 140.0.7271.1 * chore: bump chromium in DEPS to 140.0.7273.0 * chore: bump chromium in DEPS to 140.0.7273.1 * chore: bump chromium in DEPS to 140.0.7275.1 * chore: bump chromium in DEPS to 140.0.7275.4 * chore: bump chromium in DEPS to 140.0.7277.1 * chore: bump chromium in DEPS to 140.0.7279.1 * chore: bump chromium in DEPS to 140.0.7281.1 * chore: bump chromium in DEPS to 140.0.7283.1 * chore: bump chromium in DEPS to 140.0.7285.1 * chore: bump chromium in DEPS to 140.0.7287.1 * chore: bump chromium in DEPS to 140.0.7289.0 * chore: bump chromium in DEPS to 140.0.7289.1 * chore: bump chromium in DEPS to 140.0.7291.1 * chore: bump chromium in DEPS to 140.0.7293.1 * chore: bump chromium in DEPS to 140.0.7295.1 * chore: bump chromium in DEPS to 140.0.7296.0 * chore: bump chromium to 140.0.7281.0 (main) (#47616) cherry picked from 603cafad7e82aa33485fb31e179ae0f116e26c7b * chore: bump chromium in DEPS to 140.0.7269.2 * chore: bump chromium in DEPS to 140.0.7270.0 * chore: bump chromium in DEPS to 140.0.7271.0 * chore: bump chromium in DEPS to 140.0.7273.0 * 6516731: [ExclusiveAccessForAndroid] remove unneeded includes & deps |6516731
* 6694809: dbus: Ensure systemd scope is started before using any portal services |6694809
* chore: patch chromium * chore: export patches * chore: bump chromium in DEPS to 140.0.7275.0 * 6677511: [pepper] More pepper removal |6677511
* 6513641: [gin] Rename gin::Wrappable to gin::DeprecatedWrappable |6513641
* chore: export chromium patches * 6513641: [gin] Rename gin::Wrappable to gin::DeprecatedWrappable |6513641
* chore: bump chromium in DEPS to 140.0.7277.0 * chore: bump chromium in DEPS to 140.0.7279.0 * chore: bump chromium in DEPS to 140.0.7281.0 * 6677314: Plumb enabled client hints in the network requestion to network layer6677314
* 6351556: [source-phase-imports] Support Wasm Source Phase Imports6351556
* 6700077: [renderer] Avoid calls to deprecated GetIsolate methods6700077
* 6692873: Reland "Reland "FSA: Only normalize the hardcoded rules once during initialization""6692873
* 6686234: [gin] Cleanup NamedPropertyInterceptor for Wrappable6686234
* chore: export patches * 6667723: Remove content_enable_legacy_ipc GN arg.6667723
* 6646566: ui: Move NativeWindowTracker to its own directory6646566
* fix: add missing includes * 6580522: [WAR, DNR] Fix unsafe redirect error to web accessible resource6580522
* 6680477: Implement `completeCode` endpoint and expose to DevTools6680477
* 6677511: [pepper] More pepper removal6677511
* 6696689: Rename views::WidgetFocusManager -> NativeViewFocusManager6696689
* 6702812: Move wtf/text/string_impl*.* to "blink" namespace6702812
* chore: fix dialog patch * 6702431: [animation-trigger] Parse timeline-trigger-name6702431
* chore: fixup patch indices * feat: replace webFrame.routingId with webFrame.frameToken * feat: WebFrameMain.prototype.frameToken * test: refactor to use replacement APIs * chore: fixup pip patch * test: adjust webFrame tests for frameToken changes * 6703757: Reland "Enable -fsanitize=array-bounds in non-UBSan builds"6703757
* test: switch to frameTokens * test: routingId is fine to test in the main process * docs: add routingId to breaking changes * docs: update plugin-crashed event * chore: fixup linux dialog patch --------- Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> Co-authored-by: alice <alice@makenotion.com> Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com> Co-authored-by: Samuel Maddock <smaddock@slack-corp.com> (cherry picked from commit 603cafad7e82aa33485fb31e179ae0f116e26c7b) --------- Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com> Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org> Co-authored-by: alice <alice@makenotion.com> Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com> Co-authored-by: Samuel Maddock <smaddock@slack-corp.com>
This commit is contained in:
parent
96957aebf3
commit
2783f76f1f
174 changed files with 873 additions and 640 deletions
2
DEPS
2
DEPS
|
@ -2,7 +2,7 @@ gclient_gn_args_from = 'src'
|
|||
|
||||
vars = {
|
||||
'chromium_version':
|
||||
'140.0.7261.0',
|
||||
'140.0.7281.0',
|
||||
'node_version':
|
||||
'v22.17.0',
|
||||
'nan_version':
|
||||
|
|
|
@ -70,10 +70,6 @@ v8_expose_public_symbols = true
|
|||
# sensitive content by enterprise users.
|
||||
enterprise_cloud_content_analysis = false
|
||||
|
||||
# TODO: remove dependency on legacy ipc
|
||||
# https://issues.chromium.org/issues/40943039
|
||||
content_enable_legacy_ipc = true
|
||||
|
||||
# Disable siso until we are ready to use it.
|
||||
# https://chromium-review.googlesource.com/c/chromium/src/+/6638830
|
||||
use_siso = false
|
||||
|
|
|
@ -225,8 +225,8 @@ static_library("chrome") {
|
|||
sources += [
|
||||
"//chrome/browser/platform_util_aura.cc",
|
||||
"//chrome/browser/ui/views/eye_dropper/eye_dropper_aura.cc",
|
||||
"//ui/views/native_window_tracker_aura.cc",
|
||||
"//ui/views/native_window_tracker_aura.h",
|
||||
"//ui/native_window_tracker/native_window_tracker_aura.cc",
|
||||
"//ui/native_window_tracker/native_window_tracker_aura.h",
|
||||
]
|
||||
deps += [ "//components/eye_dropper" ]
|
||||
}
|
||||
|
|
|
@ -486,16 +486,6 @@ Emitted when the web page becomes unresponsive.
|
|||
|
||||
Emitted when the unresponsive web page becomes responsive again.
|
||||
|
||||
#### Event: 'plugin-crashed'
|
||||
|
||||
Returns:
|
||||
|
||||
* `event` Event
|
||||
* `name` string
|
||||
* `version` string
|
||||
|
||||
Emitted when a plugin process has crashed.
|
||||
|
||||
#### Event: 'destroyed'
|
||||
|
||||
Emitted when `webContents` is destroyed.
|
||||
|
|
|
@ -237,6 +237,11 @@ not used again.
|
|||
|
||||
A `string` representing the frame name.
|
||||
|
||||
#### `frame.frameToken` _Readonly_
|
||||
|
||||
A `string` which uniquely identifies the frame within its associated renderer
|
||||
process. This is equivalent to [`webFrame.frameToken`](web-frame.md#webframeframetoken-readonly).
|
||||
|
||||
#### `frame.osProcessId` _Readonly_
|
||||
|
||||
An `Integer` representing the operating system `pid` of the process which owns this frame.
|
||||
|
|
|
@ -265,7 +265,7 @@ Returns `WebFrame` - A child of `webFrame` with the supplied `name`, `null`
|
|||
would be returned if there's no such frame or if the frame is not in the current
|
||||
renderer process.
|
||||
|
||||
### `webFrame.findFrameByRoutingId(routingId)`
|
||||
### `webFrame.findFrameByRoutingId(routingId)` _Deprecated_
|
||||
|
||||
* `routingId` Integer - An `Integer` representing the unique frame id in the
|
||||
current renderer process. Routing IDs can be retrieved from `WebFrame`
|
||||
|
@ -274,6 +274,15 @@ renderer process.
|
|||
|
||||
Returns `WebFrame` - that has the supplied `routingId`, `null` if not found.
|
||||
|
||||
### `webFrame.findFrameByToken(frameToken)`
|
||||
|
||||
* `frameToken` string - A `string` representing the unique frame id in the
|
||||
current renderer process. Frame tokens can be retrieved from `WebFrame`
|
||||
instances (`webFrame.frameToken`) and can also be retrieved from
|
||||
`WebFrameMain` instances using `webFrameMain.frameToken`.
|
||||
|
||||
Returns `WebFrame` - that has the supplied `frameToken`, `null` if not found.
|
||||
|
||||
### `webFrame.isWordMisspelled(word)`
|
||||
|
||||
* `word` string - The word to be spellchecked.
|
||||
|
@ -318,8 +327,14 @@ A `WebFrame | null` representing next sibling frame, the property would be `null
|
|||
`webFrame` is the last frame in its parent or if the next sibling is not in the
|
||||
current renderer process.
|
||||
|
||||
### `webFrame.routingId` _Readonly_
|
||||
### `webFrame.routingId` _Readonly_ _Deprecated_
|
||||
|
||||
An `Integer` representing the unique frame id in the current renderer process.
|
||||
Distinct WebFrame instances that refer to the same underlying frame will have
|
||||
the same `routingId`.
|
||||
|
||||
### `webFrame.frameToken` _Readonly_
|
||||
|
||||
A `string` representing the unique frame token in the current renderer process.
|
||||
Distinct WebFrame instances that refer to the same underlying frame will have
|
||||
the same `frameToken`.
|
||||
|
|
|
@ -1002,15 +1002,6 @@ Returns:
|
|||
Fired when the renderer process unexpectedly disappears. This is normally
|
||||
because it was crashed or killed.
|
||||
|
||||
### Event: 'plugin-crashed'
|
||||
|
||||
Returns:
|
||||
|
||||
* `name` string
|
||||
* `version` string
|
||||
|
||||
Fired when a plugin process is crashed.
|
||||
|
||||
### Event: 'destroyed'
|
||||
|
||||
Fired when the WebContents is destroyed.
|
||||
|
|
|
@ -21,6 +21,22 @@ macOS 11 (Big Sur) is no longer supported by [Chromium](https://chromium-review.
|
|||
Older versions of Electron will continue to run on Big Sur, but macOS 12 (Monterey)
|
||||
or later will be required to run Electron v38.0.0 and higher.
|
||||
|
||||
### Removed: `plugin-crashed` event
|
||||
|
||||
The `plugin-crashed` event has been removed from `webContents`.
|
||||
|
||||
### Deprecated: `webFrame.routingId` property
|
||||
|
||||
The `routingId` property will be removed from `webFrame` objects.
|
||||
|
||||
You should use `webFrame.frameToken` instead.
|
||||
|
||||
### Deprecated: `webFrame.findFrameByRoutingId(routingId)`
|
||||
|
||||
The `webFrame.findFrameByRoutingId(routingId)` function will be removed.
|
||||
|
||||
You should use `webFrame.findFrameByToken(frameToken)` instead.
|
||||
|
||||
## Planned Breaking API Changes (37.0)
|
||||
|
||||
### Utility Process unhandled rejection behavior change
|
||||
|
|
|
@ -60,12 +60,12 @@ namespace electron {
|
|||
|
||||
namespace api {
|
||||
|
||||
class ApiName : public gin::Wrappable<ApiName> {
|
||||
class ApiName : public gin::DeprecatedWrappable<ApiName> {
|
||||
public:
|
||||
static gin::Handle<ApiName> Create(v8::Isolate* isolate);
|
||||
|
||||
// gin::Wrappable
|
||||
static gin::WrapperInfo kWrapperInfo;
|
||||
static gin::DeprecatedWrapperInfo kWrapperInfo;
|
||||
gin::ObjectTemplateBuilder GetObjectTemplateBuilder(
|
||||
v8::Isolate* isolate) override;
|
||||
const char* GetTypeName() override;
|
||||
|
@ -90,7 +90,7 @@ namespace electron {
|
|||
|
||||
namespace api {
|
||||
|
||||
gin::WrapperInfo ApiName::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
gin::DeprecatedWrapperInfo ApiName::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
|
||||
gin::ObjectTemplateBuilder ApiName::GetObjectTemplateBuilder(
|
||||
v8::Isolate* isolate) {
|
||||
|
|
|
@ -80,7 +80,7 @@ function makeLoadURLOptions (params: Record<string, any>) {
|
|||
}
|
||||
|
||||
// Create a new guest instance.
|
||||
const createGuest = function (embedder: Electron.WebContents, embedderFrameId: number, elementInstanceId: number, params: Record<string, any>) {
|
||||
const createGuest = function (embedder: Electron.WebContents, embedderFrameToken: string, elementInstanceId: number, params: Record<string, any>) {
|
||||
const webPreferences = makeWebPreferences(embedder, params);
|
||||
const event = {
|
||||
sender: embedder,
|
||||
|
@ -198,7 +198,7 @@ const createGuest = function (embedder: Electron.WebContents, embedderFrameId: n
|
|||
watchEmbedder(embedder);
|
||||
|
||||
webViewManager.addGuest(guestInstanceId, embedder, guest, webPreferences);
|
||||
guest.attachToIframe(embedder, embedderFrameId);
|
||||
guest.attachToIframe(embedder, embedderFrameToken);
|
||||
|
||||
return guestInstanceId;
|
||||
};
|
||||
|
@ -286,8 +286,8 @@ const handleMessageSync = function (channel: string, handler: (event: { sender:
|
|||
ipcMainUtils.handleSync(channel, makeSafeHandler(channel, handler));
|
||||
};
|
||||
|
||||
handleMessage(IPC_MESSAGES.GUEST_VIEW_MANAGER_CREATE_AND_ATTACH_GUEST, function (event, embedderFrameId: number, elementInstanceId: number, params) {
|
||||
return createGuest(event.sender, embedderFrameId, elementInstanceId, params);
|
||||
handleMessage(IPC_MESSAGES.GUEST_VIEW_MANAGER_CREATE_AND_ATTACH_GUEST, function (event, embedderFrameToken: string, elementInstanceId: number, params) {
|
||||
return createGuest(event.sender, embedderFrameToken, elementInstanceId, params);
|
||||
});
|
||||
|
||||
handleMessageSync(IPC_MESSAGES.GUEST_VIEW_MANAGER_DETACH_GUEST, function (event, guestInstanceId: number) {
|
||||
|
|
|
@ -22,7 +22,6 @@ export const webViewEvents: Record<string, readonly string[]> = {
|
|||
'-focus-change': ['focus'],
|
||||
close: [],
|
||||
'render-process-gone': ['details'],
|
||||
'plugin-crashed': ['name', 'version'],
|
||||
destroyed: [],
|
||||
'page-title-updated': ['title', 'explicitSet'],
|
||||
'page-favicon-updated': ['favicons'],
|
||||
|
|
|
@ -23,12 +23,12 @@ export function createGuest (iframe: HTMLIFrameElement, elementInstanceId: numbe
|
|||
throw new TypeError('Invalid embedder frame');
|
||||
}
|
||||
|
||||
const embedderFrameId = webFrame.getWebFrameId(iframe.contentWindow!);
|
||||
if (embedderFrameId < 0) { // this error should not happen.
|
||||
const embedderFrame = webFrame._findFrameByWindow(iframe.contentWindow!);
|
||||
if (!embedderFrame) { // this error should not happen.
|
||||
throw new Error('Invalid embedder frame');
|
||||
}
|
||||
|
||||
return ipcRendererInternal.invoke(IPC_MESSAGES.GUEST_VIEW_MANAGER_CREATE_AND_ATTACH_GUEST, embedderFrameId, elementInstanceId, params);
|
||||
return ipcRendererInternal.invoke(IPC_MESSAGES.GUEST_VIEW_MANAGER_CREATE_AND_ATTACH_GUEST, embedderFrame.frameToken, elementInstanceId, params);
|
||||
}
|
||||
|
||||
export function detachGuest (guestInstanceId: number) {
|
||||
|
|
|
@ -20,7 +20,7 @@ index 2cdcbc346175eeee69402ecee7f169e61c655199..f7226fe711e4214b216ea2c5173a0212
|
|||
|
||||
case ssl_open_record_error:
|
||||
diff --git a/ssl/ssl_lib.cc b/ssl/ssl_lib.cc
|
||||
index 4fe7ba0ca52f5cf5f10b41f0b8b0a94e641a74d0..470112636356e344b0760ac75f3ee22249a2d437 100644
|
||||
index 241d75770d9263f982ea0d4cd71c4af4f82b0d14..0f95e4371ff2ca0c0adc764ffc140565a27ea0bf 100644
|
||||
--- a/ssl/ssl_lib.cc
|
||||
+++ b/ssl/ssl_lib.cc
|
||||
@@ -1204,7 +1204,7 @@ int SSL_get_error(const SSL *ssl, int ret_code) {
|
||||
|
@ -32,7 +32,7 @@ index 4fe7ba0ca52f5cf5f10b41f0b8b0a94e641a74d0..470112636356e344b0760ac75f3ee222
|
|||
return SSL_ERROR_ZERO_RETURN;
|
||||
}
|
||||
// An EOF was observed which violates the protocol, and the underlying
|
||||
@@ -2571,13 +2571,7 @@ void *SSL_CTX_get_ex_data(const SSL_CTX *ctx, int idx) {
|
||||
@@ -2565,13 +2565,7 @@ void *SSL_CTX_get_ex_data(const SSL_CTX *ctx, int idx) {
|
||||
return CRYPTO_get_ex_data(&ctx->ex_data, idx);
|
||||
}
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@ Allows Electron to restore WER when ELECTRON_DEFAULT_ERROR_MODE is set.
|
|||
This should be upstreamed.
|
||||
|
||||
diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc
|
||||
index 620a5f208328ba136ddeb406052797b95813da46..127552073fe61254ff89b649987255985e0959d5 100644
|
||||
index b6403600631c97100c7356265b88ed32d9d7716b..9225d26c2eb46d4a70a1e08ce34e02c32c15ea92 100644
|
||||
--- a/content/gpu/gpu_main.cc
|
||||
+++ b/content/gpu/gpu_main.cc
|
||||
@@ -267,6 +267,10 @@ int GpuMain(MainFunctionParams parameters) {
|
||||
|
@ -33,10 +33,10 @@ index 620a5f208328ba136ddeb406052797b95813da46..127552073fe61254ff89b64998725598
|
|||
client->PostSandboxInitialized();
|
||||
}
|
||||
diff --git a/content/public/gpu/content_gpu_client.h b/content/public/gpu/content_gpu_client.h
|
||||
index c89b010e7ac78e2a7246ee54fe302cd6b9299710..46fd522fb2ac2793a3a073a4f833a4425dcee941 100644
|
||||
index 47de52a1c9d34753ec27c33d976987cd2550cd27..bdc35a9d6fab02502715ed2bf27bd65990239bd6 100644
|
||||
--- a/content/public/gpu/content_gpu_client.h
|
||||
+++ b/content/public/gpu/content_gpu_client.h
|
||||
@@ -32,6 +32,10 @@ class CONTENT_EXPORT ContentGpuClient {
|
||||
@@ -35,6 +35,10 @@ class CONTENT_EXPORT ContentGpuClient {
|
||||
public:
|
||||
virtual ~ContentGpuClient() {}
|
||||
|
||||
|
|
|
@ -10,10 +10,10 @@ DidCreateScriptContext is called, not all JS APIs are available in the
|
|||
context, which can cause some preload scripts to trip.
|
||||
|
||||
diff --git a/content/public/renderer/render_frame_observer.h b/content/public/renderer/render_frame_observer.h
|
||||
index 65f4d645acae41e45b07443d88f169a9d4771041..0d17b88493bc4c15012c7ed3948127ec18053d78 100644
|
||||
index b08febf8bba8ceb94eb80d04d83931d1e219c5b7..60eedf298de4af314e2459933adda42a7e90e483 100644
|
||||
--- a/content/public/renderer/render_frame_observer.h
|
||||
+++ b/content/public/renderer/render_frame_observer.h
|
||||
@@ -149,6 +149,8 @@ class CONTENT_EXPORT RenderFrameObserver
|
||||
@@ -140,6 +140,8 @@ class CONTENT_EXPORT RenderFrameObserver {
|
||||
virtual void DidHandleOnloadEvents() {}
|
||||
virtual void DidCreateScriptContext(v8::Local<v8::Context> context,
|
||||
int32_t world_id) {}
|
||||
|
@ -23,10 +23,10 @@ index 65f4d645acae41e45b07443d88f169a9d4771041..0d17b88493bc4c15012c7ed3948127ec
|
|||
int32_t world_id) {}
|
||||
virtual void DidClearWindowObject() {}
|
||||
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
|
||||
index 654088d4615a39ae691be12d289dc4bfe3952199..85b12548a9e2a690cc01662aa29ea21c40eaa82d 100644
|
||||
index b74623455d53d109a97e6c767f56a9beeb0e87e5..2f13ff0b2671c0851f31f527fe1f76b118bf03d2 100644
|
||||
--- a/content/renderer/render_frame_impl.cc
|
||||
+++ b/content/renderer/render_frame_impl.cc
|
||||
@@ -4733,6 +4733,12 @@ void RenderFrameImpl::DidCreateScriptContext(v8::Local<v8::Context> context,
|
||||
@@ -4666,6 +4666,12 @@ void RenderFrameImpl::DidCreateScriptContext(v8::Local<v8::Context> context,
|
||||
observer.DidCreateScriptContext(context, world_id);
|
||||
}
|
||||
|
||||
|
@ -40,10 +40,10 @@ index 654088d4615a39ae691be12d289dc4bfe3952199..85b12548a9e2a690cc01662aa29ea21c
|
|||
int world_id) {
|
||||
for (auto& observer : observers_)
|
||||
diff --git a/content/renderer/render_frame_impl.h b/content/renderer/render_frame_impl.h
|
||||
index 9e6efd6ad45312e9ffa07915a942c076fb217aad..0b100dcdc6716fce788ccc1953e00d2271c080f8 100644
|
||||
index 79383765a3a0095b92355d6d5777be461c926447..e0b57c2b7aee0706b6b164ac555a3264236268e3 100644
|
||||
--- a/content/renderer/render_frame_impl.h
|
||||
+++ b/content/renderer/render_frame_impl.h
|
||||
@@ -626,6 +626,8 @@ class CONTENT_EXPORT RenderFrameImpl
|
||||
@@ -604,6 +604,8 @@ class CONTENT_EXPORT RenderFrameImpl
|
||||
void DidObserveLayoutShift(double score, bool after_input_or_scroll) override;
|
||||
void DidCreateScriptContext(v8::Local<v8::Context> context,
|
||||
int world_id) override;
|
||||
|
@ -110,7 +110,7 @@ index 327a013b77c09bd3c7b781d67d8d9ec64807fb5b..51ade9075a184597ed7580a5243ce5ad
|
|||
v8::Local<v8::Context> context,
|
||||
int32_t world_id) {
|
||||
diff --git a/third_party/blink/renderer/core/frame/local_frame_client_impl.h b/third_party/blink/renderer/core/frame/local_frame_client_impl.h
|
||||
index fa9b3648d7daeb5aa5c588245f021da7294df2bd..c785039fd56c0a72dd9cf364013acc8fbbe5f986 100644
|
||||
index c1f8fc071a4c3f3781fcc29e929714e2c85b02b5..35357334aeb090ad6bb0cf8215beadab3bc70371 100644
|
||||
--- a/third_party/blink/renderer/core/frame/local_frame_client_impl.h
|
||||
+++ b/third_party/blink/renderer/core/frame/local_frame_client_impl.h
|
||||
@@ -82,6 +82,8 @@ class CORE_EXPORT LocalFrameClientImpl final : public LocalFrameClient {
|
||||
|
|
|
@ -116,10 +116,10 @@ index f5d921fb5de6d5decc53815d959d91f8c7e8c5dc..3cca9aec9ccb02dbaf29298d89e5c862
|
|||
// Visibility -----------------------------------------------------------
|
||||
|
||||
diff --git a/third_party/blink/renderer/core/exported/web_view_impl.cc b/third_party/blink/renderer/core/exported/web_view_impl.cc
|
||||
index cdbb6b31e62017bf4b7cad9928a516dfe1ae62ba..353c093d9fc15913dec6301cfc654c1a3a3fbc10 100644
|
||||
index 2c7db5d15c6b844186a4a2715d8ce02b554cba9a..85a2d5c468107d51fe931ba3b8464517a2bbdddf 100644
|
||||
--- a/third_party/blink/renderer/core/exported/web_view_impl.cc
|
||||
+++ b/third_party/blink/renderer/core/exported/web_view_impl.cc
|
||||
@@ -2489,6 +2489,10 @@ void WebViewImpl::SetPageLifecycleStateInternal(
|
||||
@@ -2484,6 +2484,10 @@ void WebViewImpl::SetPageLifecycleStateInternal(
|
||||
TRACE_EVENT2("navigation", "WebViewImpl::SetPageLifecycleStateInternal",
|
||||
"old_state", old_state, "new_state", new_state);
|
||||
|
||||
|
@ -130,7 +130,7 @@ index cdbb6b31e62017bf4b7cad9928a516dfe1ae62ba..353c093d9fc15913dec6301cfc654c1a
|
|||
bool storing_in_bfcache = new_state->is_in_back_forward_cache &&
|
||||
!old_state->is_in_back_forward_cache;
|
||||
bool restoring_from_bfcache = !new_state->is_in_back_forward_cache &&
|
||||
@@ -3983,10 +3987,23 @@ PageScheduler* WebViewImpl::Scheduler() const {
|
||||
@@ -3978,10 +3982,23 @@ PageScheduler* WebViewImpl::Scheduler() const {
|
||||
return GetPage()->GetPageScheduler();
|
||||
}
|
||||
|
||||
|
|
|
@ -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 365577275f54cbe8dbbdcd2d7d5b1bdf0f68bdba..883f6aa72c8f1c4829f5d8455d12a238094fe354 100644
|
||||
index c207ad535db9310dcb473b7269ccc577e40448c2..bf7e7b89d3f30ac9ce6999e6d2a810fb94ba121a 100644
|
||||
--- a/third_party/blink/common/web_preferences/web_preferences_mojom_traits.cc
|
||||
+++ b/third_party/blink/common/web_preferences/web_preferences_mojom_traits.cc
|
||||
@@ -149,6 +149,19 @@ bool StructTraits<blink::mojom::WebPreferencesDataView,
|
||||
@@ -148,6 +148,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();
|
||||
|
@ -32,7 +32,7 @@ index 365577275f54cbe8dbbdcd2d7d5b1bdf0f68bdba..883f6aa72c8f1c4829f5d8455d12a238
|
|||
out->accelerated_video_decode_enabled =
|
||||
data.accelerated_video_decode_enabled();
|
||||
diff --git a/third_party/blink/public/common/web_preferences/web_preferences.h b/third_party/blink/public/common/web_preferences/web_preferences.h
|
||||
index a2ade031f073bfc94b7593e7925f9f47e9f330e4..c68e59a3c8ff5623f3ee72d9101a90effad84b7e 100644
|
||||
index f17fb9ec701d1a5ef3deb728f8e97d53331978db..d5563e79944827fa3a68dd621445899349295f59 100644
|
||||
--- a/third_party/blink/public/common/web_preferences/web_preferences.h
|
||||
+++ b/third_party/blink/public/common/web_preferences/web_preferences.h
|
||||
@@ -9,6 +9,7 @@
|
||||
|
@ -43,7 +43,7 @@ index a2ade031f073bfc94b7593e7925f9f47e9f330e4..c68e59a3c8ff5623f3ee72d9101a90ef
|
|||
#include "build/build_config.h"
|
||||
#include "net/nqe/effective_connection_type.h"
|
||||
#include "third_party/blink/public/common/common_export.h"
|
||||
@@ -454,6 +455,20 @@ struct BLINK_COMMON_EXPORT WebPreferences {
|
||||
@@ -453,6 +454,20 @@ struct BLINK_COMMON_EXPORT WebPreferences {
|
||||
// fingerprinting are enabled.
|
||||
bool api_based_fingerprinting_interventions_enabled = false;
|
||||
|
||||
|
@ -65,7 +65,7 @@ index a2ade031f073bfc94b7593e7925f9f47e9f330e4..c68e59a3c8ff5623f3ee72d9101a90ef
|
|||
// 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 e093a39ab999afb95d520df28d262cdc9de0c239..5edbccbc37a2019274b42060fbcc18301fab769d 100644
|
||||
index 61451bfeb59780dba5d41650619d13f4639fb752..ff9a431ae3c7adf6d79912ab9edc41884a99dd26 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 e093a39ab999afb95d520df28d262cdc9de0c239..5edbccbc37a2019274b42060fbcc1830
|
|||
#include "mojo/public/cpp/bindings/struct_traits.h"
|
||||
#include "net/nqe/effective_connection_type.h"
|
||||
#include "third_party/blink/public/common/common_export.h"
|
||||
@@ -438,6 +439,52 @@ struct BLINK_COMMON_EXPORT StructTraits<blink::mojom::WebPreferencesDataView,
|
||||
@@ -434,6 +435,52 @@ struct BLINK_COMMON_EXPORT StructTraits<blink::mojom::WebPreferencesDataView,
|
||||
return r.stylus_handwriting_enabled;
|
||||
}
|
||||
|
||||
|
@ -130,7 +130,7 @@ index e093a39ab999afb95d520df28d262cdc9de0c239..5edbccbc37a2019274b42060fbcc1830
|
|||
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 13b0e0ed94ddda963877db39af0ef0fd0249a67e..a18abdf47cdcd60a08ac58484ce338f92ce89bea 100644
|
||||
index e0c02352054a112bef293aa9eaa2b18daa768048..82eff7fed067ab3cda80ca950756232b15d8d090 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 13b0e0ed94ddda963877db39af0ef0fd0249a67e..a18abdf47cdcd60a08ac58484ce338f9
|
|||
enum PointerType {
|
||||
kPointerNone = 1, // 1 << 0
|
||||
kPointerFirstType = kPointerNone,
|
||||
@@ -218,6 +220,19 @@ struct WebPreferences {
|
||||
@@ -217,6 +219,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;
|
||||
|
|
|
@ -49,7 +49,7 @@ index c9f34fa47702504ccdefb8d61c55f5eaae501085..26df03d777c9ea487cae37f3df91d1df
|
|||
// 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 e981e1c930aaa50a57b467781beed3ad0227242d..eb492c266c9c4ee9d1a6ebde3e2eb9a12cfca0c1 100644
|
||||
index 02f07b5cbabe54c4452c2e8e5dea73653320acd1..f74e7cdbaa4c77b84ed9ecba839874ed6c26c4e8 100644
|
||||
--- a/third_party/blink/renderer/core/frame/local_frame.cc
|
||||
+++ b/third_party/blink/renderer/core/frame/local_frame.cc
|
||||
@@ -738,10 +738,6 @@ bool LocalFrame::DetachImpl(FrameDetachType type) {
|
||||
|
|
|
@ -10,10 +10,10 @@ Needed for:
|
|||
2) //electron/shell/common:web_contents_utility
|
||||
|
||||
diff --git a/content/public/common/BUILD.gn b/content/public/common/BUILD.gn
|
||||
index a595a2dde93b7cd950e68e6f61983c3fcc845129..fa0ae0d23232775a30b82aeabd0711a8c5fb8556 100644
|
||||
index c67d8bad398f754d7d99f8a39936608d64c8b818..addb4e76f72e2b1037c75be2387db5f048c100a8 100644
|
||||
--- a/content/public/common/BUILD.gn
|
||||
+++ b/content/public/common/BUILD.gn
|
||||
@@ -378,6 +378,8 @@ mojom("interfaces") {
|
||||
@@ -379,6 +379,8 @@ mojom("interfaces") {
|
||||
"//content/common/*",
|
||||
"//extensions/common:mojom",
|
||||
"//extensions/common:mojom_blink",
|
||||
|
|
|
@ -11,10 +11,10 @@ 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 bbe8e5f2cf0d70121a649e0a4897e0643445c57c..3461b5daf6b80b7fe54d03b2e2ba8896780db973 100644
|
||||
index 61c3779e9fd11869fdf7b789e3b728fd03ed8fd0..f0638cdfe9cd75834c09e5361201d9c50dad74af 100644
|
||||
--- a/build/config/compiler/compiler.gni
|
||||
+++ b/build/config/compiler/compiler.gni
|
||||
@@ -82,7 +82,7 @@ declare_args() {
|
||||
@@ -88,7 +88,7 @@ declare_args() {
|
||||
# have the same LLVM revisions as us, making bitcode useless to them.
|
||||
use_thin_lto =
|
||||
is_cfi || (is_clang && is_official_build && chrome_pgo_phase != 1 &&
|
||||
|
|
|
@ -33,10 +33,10 @@ index 58ab462a5bdb335a54a8f7d9f3d27e6f039c50cb..5e0da948970cbd6f526b927158111625
|
|||
"//base",
|
||||
"//build:branding_buildflags",
|
||||
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
|
||||
index ab49fe9caf03364bb5f1d4dc2da9fe88c4e7bd66..8d2c79c1ef13e60ac6f4a9c9561e578c4b0e7f9d 100644
|
||||
index 30c7fa8addf7f10919e3f185697dda0cdaed0d0e..2a0b917df579e6c5393a57b90bd540bbfb9e3db6 100644
|
||||
--- a/chrome/browser/BUILD.gn
|
||||
+++ b/chrome/browser/BUILD.gn
|
||||
@@ -4783,7 +4783,7 @@ static_library("browser") {
|
||||
@@ -4782,7 +4782,7 @@ static_library("browser") {
|
||||
[ "//chrome/browser/ui/webui/signin:profile_impl" ]
|
||||
}
|
||||
|
||||
|
@ -46,10 +46,10 @@ index ab49fe9caf03364bb5f1d4dc2da9fe88c4e7bd66..8d2c79c1ef13e60ac6f4a9c9561e578c
|
|||
# than here in :chrome_dll.
|
||||
deps += [ "//chrome:packed_resources_integrity_header" ]
|
||||
diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
|
||||
index d5f3b8544d0df0ed54d43c080f96df6242700cbf..a22241133329a0fca905d13f24e2c415f56f350c 100644
|
||||
index 6e7ba06e1edfce3d0890013fa8fb1369899a297a..2ed7f27a1e194abcdcd72852c83b8f906e7012e6 100644
|
||||
--- a/chrome/test/BUILD.gn
|
||||
+++ b/chrome/test/BUILD.gn
|
||||
@@ -7355,9 +7355,12 @@ test("unit_tests") {
|
||||
@@ -7396,9 +7396,12 @@ test("unit_tests") {
|
||||
"//chrome/notification_helper",
|
||||
]
|
||||
|
||||
|
@ -63,7 +63,7 @@ index d5f3b8544d0df0ed54d43c080f96df6242700cbf..a22241133329a0fca905d13f24e2c415
|
|||
"//chrome//services/util_win:unit_tests",
|
||||
"//chrome/app:chrome_dll_resources",
|
||||
"//chrome/app:win_unit_tests",
|
||||
@@ -8299,6 +8302,10 @@ test("unit_tests") {
|
||||
@@ -8336,6 +8339,10 @@ test("unit_tests") {
|
||||
"../browser/performance_manager/policies/background_tab_loading_policy_unittest.cc",
|
||||
]
|
||||
|
||||
|
@ -74,7 +74,7 @@ index d5f3b8544d0df0ed54d43c080f96df6242700cbf..a22241133329a0fca905d13f24e2c415
|
|||
sources += [
|
||||
# The importer code is not used on Android.
|
||||
"../common/importer/firefox_importer_utils_unittest.cc",
|
||||
@@ -8354,7 +8361,6 @@ test("unit_tests") {
|
||||
@@ -8391,7 +8398,6 @@ test("unit_tests") {
|
||||
# TODO(crbug.com/417513088): Maybe merge with the non-android `deps` declaration above?
|
||||
deps += [
|
||||
"../browser/screen_ai:screen_ai_install_state",
|
||||
|
|
|
@ -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 0e654a522fd1a98f1b7be62570fe697b801daabe..f19b6c0fc3379849da077d74768766e2eb8906fe 100644
|
||||
index 8ffff25f7d89b3dcf35b598d5f2213d0716699e2..6788fe50093372acaf6209e740c560d215bd8643 100644
|
||||
--- a/build/config/BUILDCONFIG.gn
|
||||
+++ b/build/config/BUILDCONFIG.gn
|
||||
@@ -123,6 +123,9 @@ if (current_os == "") {
|
||||
|
|
|
@ -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 05e743e72e95a75ae1504525ce5da9b173514873..0ed662b313de6ed5431872ac821bc7edf34687b1 100644
|
||||
index b7cb32a0639b9bda3e6648dd86d735d030897699..3796793317febae3661a3c46a0815647a36266f4 100644
|
||||
--- a/buildtools/third_party/libc++/BUILD.gn
|
||||
+++ b/buildtools/third_party/libc++/BUILD.gn
|
||||
@@ -275,6 +275,7 @@ target(libcxx_target_type, "libc++") {
|
||||
@@ -582,6 +582,7 @@ target(libcxx_target_type, "libc++") {
|
||||
# need to explicitly depend on libc++.
|
||||
visibility = [
|
||||
"//build/config:common_deps",
|
||||
|
|
|
@ -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 d891f8c6a6f8f24a467216772719407d029ff233..34155be5e9071dc0de8fec707ab9736b2c81460b 100644
|
||||
index 63b6d11a3752cf7eea37e477ae438a4375e6ac4f..b0de3dc68c75388591e54cc3c1d8e8c7a56a8773 100644
|
||||
--- a/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
+++ b/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
@@ -9726,6 +9726,7 @@ void RenderFrameHostImpl::CreateNewWindow(
|
||||
@@ -9757,6 +9757,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 d891f8c6a6f8f24a467216772719407d029ff233..34155be5e9071dc0de8fec707ab9736b
|
|||
&no_javascript_access);
|
||||
|
||||
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
|
||||
index de45975cbb12b4b169b3771204621dc3c835c97a..089a46b598bbf527bed6734c96497172651b5497 100644
|
||||
index f4cb3ab03bba197652e000a1cdfd8593d526b5cc..133718bc2e270ac7ed02ef4a7f17bf4efb773d5c 100644
|
||||
--- a/content/browser/web_contents/web_contents_impl.cc
|
||||
+++ b/content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -5302,6 +5302,12 @@ FrameTree* WebContentsImpl::CreateNewWindow(
|
||||
@@ -5287,6 +5287,12 @@ FrameTree* WebContentsImpl::CreateNewWindow(
|
||||
// Sets the newly created WebContents WindowOpenDisposition.
|
||||
new_contents_impl->original_window_open_disposition_ = params.disposition;
|
||||
|
||||
|
@ -37,7 +37,7 @@ index de45975cbb12b4b169b3771204621dc3c835c97a..089a46b598bbf527bed6734c96497172
|
|||
// 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
|
||||
@@ -5343,12 +5349,6 @@ FrameTree* WebContentsImpl::CreateNewWindow(
|
||||
@@ -5328,12 +5334,6 @@ FrameTree* WebContentsImpl::CreateNewWindow(
|
||||
AddWebContentsDestructionObserver(new_contents_impl);
|
||||
}
|
||||
|
||||
|
@ -51,7 +51,7 @@ index de45975cbb12b4b169b3771204621dc3c835c97a..089a46b598bbf527bed6734c96497172
|
|||
new_contents_impl, opener, params.target_url,
|
||||
params.referrer.To<Referrer>(), params.disposition,
|
||||
diff --git a/content/common/frame.mojom b/content/common/frame.mojom
|
||||
index 09f1899c9b044a05b2e40c291f17fdf1f9f2fcac..89643bf7059d4fc0d6de6116ffe0fdac883b3fc9 100644
|
||||
index 0dfcbbd0e3274d01d938f843530b61a52028771d..14007f8b9c30a72b8303eccd1891a7fd409cc7ad 100644
|
||||
--- a/content/common/frame.mojom
|
||||
+++ b/content/common/frame.mojom
|
||||
@@ -653,6 +653,10 @@ struct CreateNewWindowParams {
|
||||
|
@ -66,10 +66,10 @@ index 09f1899c9b044a05b2e40c291f17fdf1f9f2fcac..89643bf7059d4fc0d6de6116ffe0fdac
|
|||
|
||||
// Operation result when the renderer asks the browser to create a new window.
|
||||
diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc
|
||||
index acedc33297e4863e38b664c70031ac8bb110d2b8..430324e24d9f6b2f04c1ff69725e3795f2f0a23a 100644
|
||||
index 8b21f2ba284ece1d6b339cf10dfe9181fae9b1d7..a1f71d06e8f205d651c5a3f8a3f1af3e774d6800 100644
|
||||
--- a/content/public/browser/content_browser_client.cc
|
||||
+++ b/content/public/browser/content_browser_client.cc
|
||||
@@ -859,6 +859,8 @@ bool ContentBrowserClient::CanCreateWindow(
|
||||
@@ -858,6 +858,8 @@ bool ContentBrowserClient::CanCreateWindow(
|
||||
const std::string& frame_name,
|
||||
WindowOpenDisposition disposition,
|
||||
const blink::mojom::WindowFeatures& features,
|
||||
|
@ -79,10 +79,10 @@ index acedc33297e4863e38b664c70031ac8bb110d2b8..430324e24d9f6b2f04c1ff69725e3795
|
|||
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 57e22765a4d66cb1cbfa66c4119c6fda4ee13e1c..fb83711948c2249bbcb488b17adac83ac69b00e3 100644
|
||||
index 3244924132a833c7c712aa46f96e990cacf42eca..96f343fa47565d6f88925548b1f1c7f9b5c8736c 100644
|
||||
--- a/content/public/browser/content_browser_client.h
|
||||
+++ b/content/public/browser/content_browser_client.h
|
||||
@@ -200,6 +200,7 @@ class NetworkService;
|
||||
@@ -199,6 +199,7 @@ class NetworkService;
|
||||
class TrustedURLLoaderHeaderClient;
|
||||
} // namespace mojom
|
||||
struct ResourceRequest;
|
||||
|
@ -90,7 +90,7 @@ index 57e22765a4d66cb1cbfa66c4119c6fda4ee13e1c..fb83711948c2249bbcb488b17adac83a
|
|||
} // namespace network
|
||||
|
||||
namespace sandbox {
|
||||
@@ -1429,6 +1430,8 @@ class CONTENT_EXPORT ContentBrowserClient {
|
||||
@@ -1425,6 +1426,8 @@ class CONTENT_EXPORT ContentBrowserClient {
|
||||
const std::string& frame_name,
|
||||
WindowOpenDisposition disposition,
|
||||
const blink::mojom::WindowFeatures& features,
|
||||
|
@ -122,7 +122,7 @@ index ca92e2ddf78d8f386b5ab23a09876d3b44e21334..33be50ce93dd998df5244f9ade391943
|
|||
WebContents* source,
|
||||
const OpenURLParams& params,
|
||||
diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h
|
||||
index d33274984bf6523beeb3ab5ee586499d224bff3c..83bdd195339eb7d61ac88e2994fd8dabe93f6ecc 100644
|
||||
index 4c687a84d14d5fa8cd5e376580b594ed0d116ef5..1a71f8020ba4de7bd4966bb02563155237659c32 100644
|
||||
--- a/content/public/browser/web_contents_delegate.h
|
||||
+++ b/content/public/browser/web_contents_delegate.h
|
||||
@@ -18,6 +18,7 @@
|
||||
|
@ -133,7 +133,7 @@ index d33274984bf6523beeb3ab5ee586499d224bff3c..83bdd195339eb7d61ac88e2994fd8dab
|
|||
#include "content/public/browser/eye_dropper.h"
|
||||
#include "content/public/browser/fullscreen_types.h"
|
||||
#include "content/public/browser/invalidate_type.h"
|
||||
@@ -380,6 +381,13 @@ class CONTENT_EXPORT WebContentsDelegate {
|
||||
@@ -383,6 +384,13 @@ class CONTENT_EXPORT WebContentsDelegate {
|
||||
const StoragePartitionConfig& partition_config,
|
||||
SessionStorageNamespace* session_storage_namespace);
|
||||
|
||||
|
@ -148,22 +148,22 @@ index d33274984bf6523beeb3ab5ee586499d224bff3c..83bdd195339eb7d61ac88e2994fd8dab
|
|||
// typically happens when popups are created.
|
||||
virtual void WebContentsCreated(WebContents* source_contents,
|
||||
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
|
||||
index c2be73830eb3922f12337be463ea446d1fdf3f23..654088d4615a39ae691be12d289dc4bfe3952199 100644
|
||||
index 414af5f3574d3fa7c45a5b809cd99d19e5202160..b74623455d53d109a97e6c767f56a9beeb0e87e5 100644
|
||||
--- a/content/renderer/render_frame_impl.cc
|
||||
+++ b/content/renderer/render_frame_impl.cc
|
||||
@@ -6807,6 +6807,10 @@ WebView* RenderFrameImpl::CreateNewWindow(
|
||||
@@ -6756,6 +6756,10 @@ WebView* RenderFrameImpl::CreateNewWindow(
|
||||
request.HasUserGesture(), GetWebFrame()->IsAdFrame(),
|
||||
GetWebFrame()->IsAdScriptInStack());
|
||||
|
||||
+ params->raw_features = features.raw_features.Utf8(
|
||||
+ WTF::Utf8ConversionMode::kStrictReplacingErrors);
|
||||
+ blink::Utf8ConversionMode::kStrictReplacingErrors);
|
||||
+ params->body = GetRequestBodyForWebURLRequest(request);
|
||||
+
|
||||
// We preserve this information before sending the message since |params| is
|
||||
// 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 1aeb38acfef08fc1f7120be73a5b20c2863e9895..a2896b364e6f4333172e66656a4811170dbd96eb 100644
|
||||
index 66a10226b043a490295e518230c20bba0ed71d6c..14b78014d93ce459789fd497dfcfb71e2cc769bd 100644
|
||||
--- a/content/web_test/browser/web_test_content_browser_client.cc
|
||||
+++ b/content/web_test/browser/web_test_content_browser_client.cc
|
||||
@@ -537,6 +537,8 @@ bool WebTestContentBrowserClient::CanCreateWindow(
|
||||
|
@ -176,10 +176,10 @@ index 1aeb38acfef08fc1f7120be73a5b20c2863e9895..a2896b364e6f4333172e66656a481117
|
|||
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 b50d5628cfe6dc3009d889b6a8c4a0925d19592b..43d67de5ef7552bec5ced1496318724c01a806ce 100644
|
||||
index 790f004d2a3a9ae5a3588fda097732a5daac0c75..83fcc9418b89b669863e730f2049a1d836eef260 100644
|
||||
--- a/content/web_test/browser/web_test_content_browser_client.h
|
||||
+++ b/content/web_test/browser/web_test_content_browser_client.h
|
||||
@@ -94,6 +94,8 @@ class WebTestContentBrowserClient : public ShellContentBrowserClient {
|
||||
@@ -98,6 +98,8 @@ class WebTestContentBrowserClient : public ShellContentBrowserClient {
|
||||
const std::string& frame_name,
|
||||
WindowOpenDisposition disposition,
|
||||
const blink::mojom::WindowFeatures& features,
|
||||
|
@ -210,7 +210,7 @@ index 82e9d3dfb5f7da76d89fe15ae61d379fa46e177d..fd035512099a54dff6cc951a2226c23a
|
|||
|
||||
} // namespace blink
|
||||
diff --git a/third_party/blink/renderer/core/frame/local_dom_window.cc b/third_party/blink/renderer/core/frame/local_dom_window.cc
|
||||
index 47d4a455aec76c00d51d11fb2b678b0d4d52b5ca..c2207b8f9ee1193d40201ef25d29c510b6e8346f 100644
|
||||
index 03277987be8d0799b8ae61b6714bc71f74adb5f0..12e6ca5e45c16a76c0bac3674e74def93f0a0593 100644
|
||||
--- a/third_party/blink/renderer/core/frame/local_dom_window.cc
|
||||
+++ b/third_party/blink/renderer/core/frame/local_dom_window.cc
|
||||
@@ -2317,6 +2317,8 @@ DOMWindow* LocalDOMWindow::open(v8::Isolate* isolate,
|
||||
|
|
|
@ -10,7 +10,7 @@ Subject: chore: "grandfather in" Electron Views and Delegates
|
|||
6448510: Lock further access to View::set_owned_by_client(). | https://chromium-review.googlesource.com/c/chromium/src/+/6448510
|
||||
|
||||
diff --git a/ui/views/view.h b/ui/views/view.h
|
||||
index 2897bc3816c9e2989829848e556ffaea6e1d0a73..0ebc9bc2509648f36dc05fee40709f02be9743ed 100644
|
||||
index 23232b148b002e83926b8848c2e2ada42d608083..df2e5a84387620bfa2e642e957e4d7e7d8106b44 100644
|
||||
--- a/ui/views/view.h
|
||||
+++ b/ui/views/view.h
|
||||
@@ -82,6 +82,19 @@ class ArcNotificationContentView;
|
||||
|
|
|
@ -7,7 +7,7 @@ This patch comes after Chromium removed the ScopedAllowIO API in favor
|
|||
of explicitly adding ScopedAllowBlocking calls as friends.
|
||||
|
||||
diff --git a/base/threading/thread_restrictions.h b/base/threading/thread_restrictions.h
|
||||
index b1abcfaab58df4555d3a26481915d64ef5458e17..f2f43454c1c124da9983998564837ebf3589aefd 100644
|
||||
index ecbd353eac1f4fb3022d822d38938b81ba182fd6..22b643e960e89ee58f5190eebd6093952eefaa6f 100644
|
||||
--- a/base/threading/thread_restrictions.h
|
||||
+++ b/base/threading/thread_restrictions.h
|
||||
@@ -132,6 +132,7 @@ class KeyStorageLinux;
|
||||
|
@ -18,7 +18,7 @@ index b1abcfaab58df4555d3a26481915d64ef5458e17..f2f43454c1c124da9983998564837ebf
|
|||
class Profile;
|
||||
class ProfileImpl;
|
||||
class ScopedAllowBlockingForProfile;
|
||||
@@ -277,6 +278,9 @@ class BackendImpl;
|
||||
@@ -278,6 +279,9 @@ class BackendImpl;
|
||||
class InFlightIO;
|
||||
bool CleanupDirectorySync(const base::FilePath&);
|
||||
} // namespace disk_cache
|
||||
|
@ -28,7 +28,7 @@ index b1abcfaab58df4555d3a26481915d64ef5458e17..f2f43454c1c124da9983998564837ebf
|
|||
namespace enterprise_connectors {
|
||||
class LinuxKeyRotationCommand;
|
||||
} // namespace enterprise_connectors
|
||||
@@ -577,6 +581,7 @@ class BASE_EXPORT ScopedAllowBlocking {
|
||||
@@ -578,6 +582,7 @@ class BASE_EXPORT ScopedAllowBlocking {
|
||||
friend class ::DesktopNotificationBalloon;
|
||||
friend class ::FirefoxProfileLock;
|
||||
friend class ::GaiaConfig;
|
||||
|
@ -36,7 +36,7 @@ index b1abcfaab58df4555d3a26481915d64ef5458e17..f2f43454c1c124da9983998564837ebf
|
|||
friend class ::ProfileImpl;
|
||||
friend class ::ScopedAllowBlockingForProfile;
|
||||
friend class ::StartupTabProviderImpl;
|
||||
@@ -615,6 +620,7 @@ class BASE_EXPORT ScopedAllowBlocking {
|
||||
@@ -618,6 +623,7 @@ class BASE_EXPORT ScopedAllowBlocking {
|
||||
friend class cronet::CronetPrefsManager;
|
||||
friend class crypto::ScopedAllowBlockingForNSS; // http://crbug.com/59847
|
||||
friend class drive::FakeDriveService;
|
||||
|
|
|
@ -34,7 +34,7 @@ index 2dc44d4787d5198cff7be2cf98ad5acf2d3a9a0b..27a0335aac2bd4239616cf71f5d015c9
|
|||
|
||||
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 b08abb912fa6f8369448b27abf639faa4c438b88..e32e408e9dc4baf897669f5610b8bb3647cd8a92 100644
|
||||
index 9233270a3a713810080abc1705b53e56d37e8a63..513899d94b28a8389133f943d41e74ae1bcd5dbd 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
|
||||
@@ -1341,6 +1341,10 @@ HBRUSH DesktopWindowTreeHostWin::GetBackgroundPaintBrush() {
|
||||
|
@ -49,7 +49,7 @@ index b08abb912fa6f8369448b27abf639faa4c438b88..e32e408e9dc4baf897669f5610b8bb36
|
|||
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 0d567cbde1ca06d8cc4dd25785e89550d7190744..8753821149dc870b9865884dccf1ba4dec7e29f2 100644
|
||||
index ed45fcbe7fe204d7d3623dd91ca91093351a014e..dbf242fd1a9b4eb4f63065a89983de5c2319e25f 100644
|
||||
--- a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.h
|
||||
+++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.h
|
||||
@@ -272,6 +272,7 @@ class VIEWS_EXPORT DesktopWindowTreeHostWin
|
||||
|
|
|
@ -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 29667a364354b230a6e8a6ccab8d8ac95cdf1e84..bf228613571121a4c6b788b4c066db04fbcb6054 100644
|
||||
index b5feb80ee47826eb8d052e2bcdb1e602fa50ec5f..56a2bedb0f594d9ccd0dfb9046ef1da64e1fc72b 100644
|
||||
--- a/content/browser/web_contents/web_contents_impl.cc
|
||||
+++ b/content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -5218,7 +5218,7 @@ FrameTree* WebContentsImpl::CreateNewWindow(
|
||||
@@ -5203,7 +5203,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.
|
||||
|
|
|
@ -80,10 +80,10 @@ index b6582b4013d9682d32bd524b4053b443a4df00f8..afcbce72e0f247b4d5a637b27c9f25d9
|
|||
content::WebContents* source,
|
||||
const content::OpenURLParams& params,
|
||||
diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc
|
||||
index 9b13df3562fa08eff02cae11f87369ae7417f6a8..88a85350965f9e13f5660632033e958829a85008 100644
|
||||
index 32516a8e60d96b2370f0f030852015e6d30d9cb1..1efcb0fd83062af0301fe6d8e3166d657bfb18c7 100644
|
||||
--- a/chrome/browser/ui/browser.cc
|
||||
+++ b/chrome/browser/ui/browser.cc
|
||||
@@ -2379,8 +2379,7 @@ bool Browser::IsWebContentsCreationOverridden(
|
||||
@@ -2363,8 +2363,7 @@ bool Browser::IsWebContentsCreationOverridden(
|
||||
content::SiteInstance* source_site_instance,
|
||||
content::mojom::WindowContainerType window_container_type,
|
||||
const GURL& opener_url,
|
||||
|
@ -93,7 +93,7 @@ index 9b13df3562fa08eff02cae11f87369ae7417f6a8..88a85350965f9e13f5660632033e9588
|
|||
if (IsActorExecutionEngineActingOnTab(
|
||||
profile(), content::WebContents::FromRenderFrameHost(opener))) {
|
||||
// If an ExecutionEngine is acting on the opener, prevent it from creating
|
||||
@@ -2392,7 +2391,7 @@ bool Browser::IsWebContentsCreationOverridden(
|
||||
@@ -2376,7 +2375,7 @@ bool Browser::IsWebContentsCreationOverridden(
|
||||
return (window_container_type ==
|
||||
content::mojom::WindowContainerType::BACKGROUND &&
|
||||
ShouldCreateBackgroundContents(source_site_instance, opener_url,
|
||||
|
@ -103,10 +103,10 @@ index 9b13df3562fa08eff02cae11f87369ae7417f6a8..88a85350965f9e13f5660632033e9588
|
|||
|
||||
WebContents* Browser::CreateCustomWebContents(
|
||||
diff --git a/chrome/browser/ui/browser.h b/chrome/browser/ui/browser.h
|
||||
index de64b1217202846a285d7a4bcbce7780575ebaf0..a6139653fd82db949ffd960ea46fb1604e6c7317 100644
|
||||
index a795d6515099dea389913f84f25f5170bc5dcefc..68e63fdbd07ea7b6b8175932386cac5b3a0db89a 100644
|
||||
--- a/chrome/browser/ui/browser.h
|
||||
+++ b/chrome/browser/ui/browser.h
|
||||
@@ -993,8 +993,7 @@ class Browser : public TabStripModelObserver,
|
||||
@@ -986,8 +986,7 @@ class Browser : public TabStripModelObserver,
|
||||
content::SiteInstance* source_site_instance,
|
||||
content::mojom::WindowContainerType window_container_type,
|
||||
const GURL& opener_url,
|
||||
|
@ -222,10 +222,10 @@ index b969f1d97b7e3396119b579cfbe61e19ff7d2dd4..b8d6169652da28266a514938b45b39c5
|
|||
content::WebContents* AddNewContents(
|
||||
content::WebContents* source,
|
||||
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
|
||||
index 487e6d8db0d19e9a2257d17fcbe348544e7905b7..16bb1ca75b2e105b381ee5564f9332d4eeb2e7d7 100644
|
||||
index 2789ab0d799653e34b2a3f81333daf5e0cf3ecf5..ef4630910570726091ad9170864a1509a4558524 100644
|
||||
--- a/content/browser/web_contents/web_contents_impl.cc
|
||||
+++ b/content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -5181,8 +5181,7 @@ FrameTree* WebContentsImpl::CreateNewWindow(
|
||||
@@ -5166,8 +5166,7 @@ FrameTree* WebContentsImpl::CreateNewWindow(
|
||||
if (delegate_ &&
|
||||
delegate_->IsWebContentsCreationOverridden(
|
||||
opener, source_site_instance, params.window_container_type,
|
||||
|
@ -250,10 +250,10 @@ index 33be50ce93dd998df5244f9ade391943f06978ad..3bb9baf76d331351d23d59fc2b9eb82d
|
|||
}
|
||||
|
||||
diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h
|
||||
index 83bdd195339eb7d61ac88e2994fd8dabe93f6ecc..682e5eecb7ce514094f76253447aa7ac4b6f29b1 100644
|
||||
index 1a71f8020ba4de7bd4966bb02563155237659c32..526a165f9e8bd20747ee00e6f987c995ac737176 100644
|
||||
--- a/content/public/browser/web_contents_delegate.h
|
||||
+++ b/content/public/browser/web_contents_delegate.h
|
||||
@@ -359,8 +359,7 @@ class CONTENT_EXPORT WebContentsDelegate {
|
||||
@@ -362,8 +362,7 @@ class CONTENT_EXPORT WebContentsDelegate {
|
||||
SiteInstance* source_site_instance,
|
||||
mojom::WindowContainerType window_container_type,
|
||||
const GURL& opener_url,
|
||||
|
|
|
@ -7,7 +7,7 @@ By default, chromium sets up one v8 snapshot to be used in all v8 contexts. This
|
|||
to have a dedicated browser process v8 snapshot defined by the file `browser_v8_context_snapshot.bin`.
|
||||
|
||||
diff --git a/content/app/content_main_runner_impl.cc b/content/app/content_main_runner_impl.cc
|
||||
index 81b2d4ffddb31d5703d6e4db2f50644a300b20d7..9b5a6e768b41e231f932e4d2c5d2d84bd89f06cd 100644
|
||||
index c53bea0517ba3e2f7e127a27737240f054d6b6ed..2ed4e422f0ff0f3dd0194f767c976244be02c3d2 100644
|
||||
--- a/content/app/content_main_runner_impl.cc
|
||||
+++ b/content/app/content_main_runner_impl.cc
|
||||
@@ -270,8 +270,13 @@ void AsanProcessInfoCB(const char*, bool*) {
|
||||
|
@ -40,7 +40,7 @@ index 81b2d4ffddb31d5703d6e4db2f50644a300b20d7..9b5a6e768b41e231f932e4d2c5d2d84b
|
|||
#endif // V8_USE_EXTERNAL_STARTUP_DATA
|
||||
}
|
||||
|
||||
@@ -981,7 +987,7 @@ int ContentMainRunnerImpl::Initialize(ContentMainParams params) {
|
||||
@@ -944,7 +950,7 @@ int ContentMainRunnerImpl::Initialize(ContentMainParams params) {
|
||||
return TerminateForFatalInitializationError();
|
||||
#endif // BUILDFLAG(IS_ANDROID) && (ICU_UTIL_DATA_IMPL == ICU_UTIL_DATA_FILE)
|
||||
|
||||
|
@ -94,10 +94,10 @@ index db611d99a6c0f18f39967b38791822fda7d175b5..cc150475de655d5ef20a107ae3ef80c0
|
|||
friend class ContentClientCreator;
|
||||
friend class ContentClientInitializer;
|
||||
diff --git a/gin/v8_initializer.cc b/gin/v8_initializer.cc
|
||||
index e2ff4bdcc0f474c13659f7527c04cbc85af99b57..6cde70fba12b84399d0b532994b678e09df3eb43 100644
|
||||
index e7d14253e0a6324e6603923c5d6e0769a051b475..e48f92eb5b5e1423c8e8b2c9da0dbb6919880684 100644
|
||||
--- a/gin/v8_initializer.cc
|
||||
+++ b/gin/v8_initializer.cc
|
||||
@@ -658,8 +658,7 @@ void V8Initializer::GetV8ExternalSnapshotData(const char** snapshot_data_out,
|
||||
@@ -656,8 +656,7 @@ void V8Initializer::GetV8ExternalSnapshotData(const char** snapshot_data_out,
|
||||
|
||||
#if defined(V8_USE_EXTERNAL_STARTUP_DATA)
|
||||
|
||||
|
@ -107,7 +107,7 @@ index e2ff4bdcc0f474c13659f7527c04cbc85af99b57..6cde70fba12b84399d0b532994b678e0
|
|||
if (g_mapped_snapshot) {
|
||||
// TODO(crbug.com/40558459): Confirm not loading different type of snapshot
|
||||
// files in a process.
|
||||
@@ -668,10 +667,17 @@ void V8Initializer::LoadV8Snapshot(V8SnapshotFileType snapshot_file_type) {
|
||||
@@ -666,10 +665,17 @@ void V8Initializer::LoadV8Snapshot(V8SnapshotFileType snapshot_file_type) {
|
||||
|
||||
base::MemoryMappedFile::Region file_region;
|
||||
base::File 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 56136ecc71829522295407d1a61518a08537df09..720ce64d0541d96c1294ef3bc1a4b45643c30772 100644
|
||||
index 9adc60ae6da7beb305f58ec326346532d1afd158..434b33a2f1f9531038372e26d3c0ceec704818bd 100644
|
||||
--- a/content/browser/service_worker/service_worker_context_wrapper.cc
|
||||
+++ b/content/browser/service_worker/service_worker_context_wrapper.cc
|
||||
@@ -1936,6 +1936,26 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest(
|
||||
@@ -1937,6 +1937,26 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest(
|
||||
loader_factory_bundle_info =
|
||||
context()->loader_factory_bundle_for_update_check()->Clone();
|
||||
|
||||
|
@ -38,7 +38,7 @@ index 56136ecc71829522295407d1a61518a08537df09..720ce64d0541d96c1294ef3bc1a4b456
|
|||
if (auto* config = content::WebUIConfigMap::GetInstance().GetConfig(
|
||||
browser_context(), scope)) {
|
||||
// If this is a Service Worker for a WebUI, the WebUI's URLDataSource
|
||||
@@ -1955,9 +1975,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest(
|
||||
@@ -1956,9 +1976,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest(
|
||||
features::kEnableServiceWorkersForChromeScheme) &&
|
||||
scope.scheme_piece() == kChromeUIScheme) {
|
||||
config->RegisterURLDataSource(browser_context());
|
||||
|
@ -49,7 +49,7 @@ index 56136ecc71829522295407d1a61518a08537df09..720ce64d0541d96c1294ef3bc1a4b456
|
|||
.emplace(kChromeUIScheme, CreateWebUIServiceWorkerLoaderFactory(
|
||||
browser_context(), kChromeUIScheme,
|
||||
base::flat_set<std::string>()));
|
||||
@@ -1965,9 +1983,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest(
|
||||
@@ -1966,9 +1984,7 @@ ServiceWorkerContextWrapper::GetLoaderFactoryForBrowserInitiatedRequest(
|
||||
features::kEnableServiceWorkersForChromeUntrusted) &&
|
||||
scope.scheme_piece() == kChromeUIUntrustedScheme) {
|
||||
config->RegisterURLDataSource(browser_context());
|
||||
|
|
|
@ -6,10 +6,10 @@ Subject: disable_hidden.patch
|
|||
Electron uses this to disable background throttling for hidden windows.
|
||||
|
||||
diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc
|
||||
index 252edf0bb40ba4c16061425013d9e4c559b91e78..624094ba6459f3663a12f868c4cb47dfa9f8dce1 100644
|
||||
index 80ccb50098f642f4ce7bd97de20d821decd8fab6..1874493c21087f1cf3a565956bd48ebac6892135 100644
|
||||
--- a/content/browser/renderer_host/render_widget_host_impl.cc
|
||||
+++ b/content/browser/renderer_host/render_widget_host_impl.cc
|
||||
@@ -833,6 +833,10 @@ void RenderWidgetHostImpl::WasHidden() {
|
||||
@@ -834,6 +834,10 @@ void RenderWidgetHostImpl::WasHidden() {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -21,10 +21,10 @@ index 252edf0bb40ba4c16061425013d9e4c559b91e78..624094ba6459f3663a12f868c4cb47df
|
|||
// Prompts should remain open and functional across tab switches.
|
||||
if (!delegate_ || !delegate_->IsWaitingForPointerLockPrompt(this)) {
|
||||
diff --git a/content/browser/renderer_host/render_widget_host_impl.h b/content/browser/renderer_host/render_widget_host_impl.h
|
||||
index f24d02054c89c8bc6b75e127146cb97a72e3f94a..9b8919ab2d8c9432c5d908337e7a19bd055b440e 100644
|
||||
index ad3b28d343c6c7c454bb6deb2459ba807e992ca5..65431096f65d6bb3f4c3efeae7f80617ed596cad 100644
|
||||
--- a/content/browser/renderer_host/render_widget_host_impl.h
|
||||
+++ b/content/browser/renderer_host/render_widget_host_impl.h
|
||||
@@ -1021,6 +1021,9 @@ class CONTENT_EXPORT RenderWidgetHostImpl
|
||||
@@ -1020,6 +1020,9 @@ class CONTENT_EXPORT RenderWidgetHostImpl
|
||||
// Requests a commit and forced redraw in the renderer compositor.
|
||||
void ForceRedrawForTesting();
|
||||
|
||||
|
|
|
@ -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 4f94ed1e9f7cda90b4356839967972ca59decb9c..b08abb912fa6f8369448b27abf639faa4c438b88 100644
|
||||
index 7647828a5952da59351f9e2e295ae58a17c1f8d3..9233270a3a713810080abc1705b53e56d37e8a63 100644
|
||||
--- a/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
|
||||
+++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
|
||||
@@ -594,7 +594,7 @@ void DesktopWindowTreeHostWin::SetOpacity(float opacity) {
|
||||
|
|
|
@ -15,10 +15,10 @@ Ideally we could add an embedder observer pattern here but that can be
|
|||
done in future work.
|
||||
|
||||
diff --git a/third_party/blink/renderer/core/exported/web_view_impl.cc b/third_party/blink/renderer/core/exported/web_view_impl.cc
|
||||
index 353c093d9fc15913dec6301cfc654c1a3a3fbc10..7163be14508786f67c3ea01cff9bc70c3692acac 100644
|
||||
index 85a2d5c468107d51fe931ba3b8464517a2bbdddf..bb9745b97e411c03c4757f7a96e240df93b28559 100644
|
||||
--- a/third_party/blink/renderer/core/exported/web_view_impl.cc
|
||||
+++ b/third_party/blink/renderer/core/exported/web_view_impl.cc
|
||||
@@ -1880,6 +1880,8 @@ void WebView::ApplyWebPreferences(const web_pref::WebPreferences& prefs,
|
||||
@@ -1875,6 +1875,8 @@ void WebView::ApplyWebPreferences(const web_pref::WebPreferences& prefs,
|
||||
#if BUILDFLAG(IS_MAC)
|
||||
web_view_impl->SetMaximumLegibleScale(
|
||||
prefs.default_maximum_page_scale_factor);
|
||||
|
|
|
@ -88,28 +88,27 @@ index dc3a5b0678b9c686e241b492e2c3b5ac833611a3..32a7ba4f557e65d9525d2ca07e8597e7
|
|||
// testing.
|
||||
V8IsolateMemoryDumpProvider* isolate_memory_dump_provider_for_testing()
|
||||
diff --git a/gin/wrappable.cc b/gin/wrappable.cc
|
||||
index 402355cb836cea14e9ee725a142a4bad44fd5bed..7e7f028dcfb87c7b80adebabac19ced8791f642e 100644
|
||||
index 721a0f3dc2c1714726b711b1b661907e80a9bdcc..6b954d9840f9b1798aa1778fa39c8a20cb4f34df 100644
|
||||
--- a/gin/wrappable.cc
|
||||
+++ b/gin/wrappable.cc
|
||||
@@ -13,6 +13,9 @@ namespace gin {
|
||||
WrappableBase::WrappableBase() = default;
|
||||
@@ -53,6 +53,8 @@ v8::MaybeLocal<v8::Object> WrappableBase::GetWrapper(v8::Isolate* isolate) {
|
||||
DeprecatedWrappableBase::DeprecatedWrappableBase() = default;
|
||||
|
||||
WrappableBase::~WrappableBase() {
|
||||
+ if (!wrapper_.IsEmpty()) {
|
||||
DeprecatedWrappableBase::~DeprecatedWrappableBase() {
|
||||
+ if (!wrapper_.IsEmpty())
|
||||
+ wrapper_.ClearWeak();
|
||||
+ }
|
||||
wrapper_.Reset();
|
||||
}
|
||||
|
||||
@@ -28,15 +31,24 @@ const char* WrappableBase::GetTypeName() {
|
||||
void WrappableBase::FirstWeakCallback(
|
||||
const v8::WeakCallbackInfo<WrappableBase>& data) {
|
||||
WrappableBase* wrappable = data.GetParameter();
|
||||
@@ -68,9 +70,13 @@ const char* DeprecatedWrappableBase::GetTypeName() {
|
||||
void DeprecatedWrappableBase::FirstWeakCallback(
|
||||
const v8::WeakCallbackInfo<DeprecatedWrappableBase>& data) {
|
||||
DeprecatedWrappableBase* wrappable = data.GetParameter();
|
||||
- wrappable->dead_ = true;
|
||||
- wrappable->wrapper_.Reset();
|
||||
- data.SetSecondPassCallback(SecondWeakCallback);
|
||||
+ WrappableBase* wrappable_from_field =
|
||||
+ static_cast<WrappableBase*>(data.GetInternalField(1));
|
||||
+ DeprecatedWrappableBase* wrappable_from_field =
|
||||
+ static_cast<DeprecatedWrappableBase*>(data.GetInternalField(1));
|
||||
+ if (wrappable && wrappable == wrappable_from_field) {
|
||||
+ wrappable->dead_ = true;
|
||||
+ wrappable->wrapper_.Reset();
|
||||
|
@ -117,20 +116,21 @@ index 402355cb836cea14e9ee725a142a4bad44fd5bed..7e7f028dcfb87c7b80adebabac19ced8
|
|||
+ }
|
||||
}
|
||||
|
||||
void WrappableBase::SecondWeakCallback(
|
||||
const v8::WeakCallbackInfo<WrappableBase>& data) {
|
||||
+ if (IsolateHolder::DestroyedMicrotasksRunner()) {
|
||||
NamedPropertyInterceptor*
|
||||
@@ -80,8 +86,11 @@ DeprecatedWrappableBase::GetNamedPropertyInterceptor() {
|
||||
|
||||
void DeprecatedWrappableBase::SecondWeakCallback(
|
||||
const v8::WeakCallbackInfo<DeprecatedWrappableBase>& data) {
|
||||
+ if (IsolateHolder::DestroyedMicrotasksRunner())
|
||||
+ return;
|
||||
+ }
|
||||
WrappableBase* wrappable = data.GetParameter();
|
||||
DeprecatedWrappableBase* wrappable = data.GetParameter();
|
||||
- delete wrappable;
|
||||
+ if (wrappable) {
|
||||
+ if (wrappable)
|
||||
+ delete wrappable;
|
||||
+ }
|
||||
}
|
||||
|
||||
v8::MaybeLocal<v8::Object> WrappableBase::GetWrapperImpl(v8::Isolate* isolate,
|
||||
@@ -71,10 +83,16 @@ v8::MaybeLocal<v8::Object> WrappableBase::GetWrapperImpl(v8::Isolate* isolate,
|
||||
v8::MaybeLocal<v8::Object> DeprecatedWrappableBase::GetWrapperImpl(
|
||||
@@ -117,10 +126,15 @@ v8::MaybeLocal<v8::Object> DeprecatedWrappableBase::GetWrapperImpl(
|
||||
void* values[] = {info, this};
|
||||
wrapper->SetAlignedPointerInInternalFields(2, indices, values);
|
||||
wrapper_.Reset(isolate, wrapper);
|
||||
|
@ -139,22 +139,21 @@ index 402355cb836cea14e9ee725a142a4bad44fd5bed..7e7f028dcfb87c7b80adebabac19ced8
|
|||
return v8::MaybeLocal<v8::Object>(wrapper);
|
||||
}
|
||||
|
||||
+void WrappableBase::ClearWeak() {
|
||||
+ if (!wrapper_.IsEmpty()) {
|
||||
+void DeprecatedWrappableBase::ClearWeak() {
|
||||
+ if (!wrapper_.IsEmpty())
|
||||
+ wrapper_.ClearWeak();
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
namespace internal {
|
||||
|
||||
void* FromV8Impl(v8::Isolate* isolate, v8::Local<v8::Value> val,
|
||||
void* FromV8Impl(v8::Isolate* isolate,
|
||||
diff --git a/gin/wrappable.h b/gin/wrappable.h
|
||||
index 2ae2cf67157ce8b161ae917291a913d237b7d535..c8c8cbe84e946cebde97a71b42815c62ccaf7b96 100644
|
||||
index 9048c4fc9f6b0a19f0620d6eb7e35d5005381d81..566d590890ba40ca3a254c7d88c0b30817d2a5e6 100644
|
||||
--- a/gin/wrappable.h
|
||||
+++ b/gin/wrappable.h
|
||||
@@ -80,6 +80,13 @@ class GIN_EXPORT WrappableBase {
|
||||
v8::MaybeLocal<v8::Object> GetWrapperImpl(v8::Isolate* isolate,
|
||||
WrapperInfo* wrapper_info);
|
||||
@@ -172,6 +172,13 @@ class GIN_EXPORT DeprecatedWrappableBase {
|
||||
v8::Isolate* isolate,
|
||||
DeprecatedWrapperInfo* wrapper_info);
|
||||
|
||||
+ // Make this wrappable strong again. This is useful when the wrappable is
|
||||
+ // destroyed outside the finalizer callbacks and we want to avoid scheduling
|
||||
|
@ -165,4 +164,4 @@ index 2ae2cf67157ce8b161ae917291a913d237b7d535..c8c8cbe84e946cebde97a71b42815c62
|
|||
+
|
||||
private:
|
||||
static void FirstWeakCallback(
|
||||
const v8::WeakCallbackInfo<WrappableBase>& data);
|
||||
const v8::WeakCallbackInfo<DeprecatedWrappableBase>& data);
|
||||
|
|
|
@ -262,10 +262,10 @@ index 61683d0eddb04c494ca5e650e7d556b44968ec49..5492456a9138b250e97a5479838bb443
|
|||
|
||||
} // namespace ui
|
||||
diff --git a/ui/shell_dialogs/select_file_dialog_linux_portal.cc b/ui/shell_dialogs/select_file_dialog_linux_portal.cc
|
||||
index 8dafba0690d9cde3506b60a21ba36c49394d9125..03fdd2d86e776d4be60c52790dcb2946e9341954 100644
|
||||
index 9853bac93511ff5f790833528829a2c0017ed505..8cd68dddc2de3ecc393858194e825283fcd544db 100644
|
||||
--- a/ui/shell_dialogs/select_file_dialog_linux_portal.cc
|
||||
+++ b/ui/shell_dialogs/select_file_dialog_linux_portal.cc
|
||||
@@ -29,6 +29,7 @@
|
||||
@@ -30,6 +30,7 @@
|
||||
#include "dbus/message.h"
|
||||
#include "dbus/object_path.h"
|
||||
#include "dbus/object_proxy.h"
|
||||
|
@ -273,7 +273,7 @@ index 8dafba0690d9cde3506b60a21ba36c49394d9125..03fdd2d86e776d4be60c52790dcb2946
|
|||
#include "ui/aura/window_tree_host.h"
|
||||
#include "ui/base/l10n/l10n_util.h"
|
||||
#include "ui/gfx/native_widget_types.h"
|
||||
@@ -100,7 +101,7 @@ void OnGetPropertyReply(dbus::Response* response) {
|
||||
@@ -101,7 +102,7 @@ void OnGetPropertyReply(dbus::Response* response) {
|
||||
: ServiceAvailability::kNotAvailable;
|
||||
}
|
||||
|
||||
|
@ -282,10 +282,10 @@ index 8dafba0690d9cde3506b60a21ba36c49394d9125..03fdd2d86e776d4be60c52790dcb2946
|
|||
if (!service_started.value_or(false)) {
|
||||
g_service_availability = ServiceAvailability::kNotAvailable;
|
||||
return;
|
||||
@@ -167,18 +168,24 @@ void SelectFileDialogLinuxPortal::StartAvailabilityTestInBackground() {
|
||||
|
||||
GetMainTaskRunner() = base::SequencedTaskRunner::GetCurrentDefault();
|
||||
@@ -120,9 +121,12 @@ void OnServiceStarted(std::optional<bool> service_started) {
|
||||
}
|
||||
|
||||
void OnSystemdUnitStarted(dbus_xdg::SystemdUnitStatus) {
|
||||
+#if 0
|
||||
dbus_utils::CheckForServiceAndStart(dbus_thread_linux::GetSharedSessionBus(),
|
||||
kXdgPortalService,
|
||||
|
@ -294,6 +294,17 @@ index 8dafba0690d9cde3506b60a21ba36c49394d9125..03fdd2d86e776d4be60c52790dcb2946
|
|||
+ file_dialog::StartPortalAvailabilityTestInBackground();
|
||||
}
|
||||
|
||||
DbusByteArray PathToByteArray(const base::FilePath& path) {
|
||||
@@ -175,17 +179,20 @@ void SelectFileDialogLinuxPortal::StartAvailabilityTestInBackground() {
|
||||
GetMainTaskRunner() = base::SequencedTaskRunner::GetCurrentDefault();
|
||||
|
||||
dbus_xdg::SetSystemdScopeUnitNameForXdgPortal(
|
||||
- dbus_thread_linux::GetSharedSessionBus().get(),
|
||||
- base::BindOnce(&OnSystemdUnitStarted));
|
||||
+ dbus_thread_linux::GetSharedSessionBus().get(),
|
||||
+ base::BindOnce(&OnSystemdUnitStarted));
|
||||
}
|
||||
|
||||
// static
|
||||
bool SelectFileDialogLinuxPortal::IsPortalAvailable() {
|
||||
+#if 0
|
||||
|
@ -307,7 +318,7 @@ index 8dafba0690d9cde3506b60a21ba36c49394d9125..03fdd2d86e776d4be60c52790dcb2946
|
|||
}
|
||||
|
||||
bool SelectFileDialogLinuxPortal::IsRunning(
|
||||
@@ -383,11 +390,14 @@ DbusDictionary SelectFileDialogLinuxPortal::BuildOptionsDictionary(
|
||||
@@ -390,11 +397,14 @@ DbusDictionary SelectFileDialogLinuxPortal::BuildOptionsDictionary(
|
||||
const PortalFilterSet& filter_set) {
|
||||
DbusDictionary dict;
|
||||
|
||||
|
@ -325,7 +336,7 @@ index 8dafba0690d9cde3506b60a21ba36c49394d9125..03fdd2d86e776d4be60c52790dcb2946
|
|||
[[fallthrough]];
|
||||
case SelectFileDialog::SELECT_FOLDER:
|
||||
case SelectFileDialog::Type::SELECT_EXISTING_FOLDER:
|
||||
@@ -400,6 +410,10 @@ DbusDictionary SelectFileDialogLinuxPortal::BuildOptionsDictionary(
|
||||
@@ -407,6 +417,10 @@ DbusDictionary SelectFileDialogLinuxPortal::BuildOptionsDictionary(
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
@ -259,7 +259,7 @@ index a2a19b975ddd8799917ec674b53368ab1b123232..3ff87e391f744cd17c26945fa7dcfde5
|
|||
+
|
||||
} // namespace content
|
||||
diff --git a/content/browser/renderer_host/code_cache_host_impl.cc b/content/browser/renderer_host/code_cache_host_impl.cc
|
||||
index 18a3609bfd344716ba7cd550f66d4c4700d227b0..106884585ba2c6e75053474dbd15c728c79fcac1 100644
|
||||
index d95cba73aacf4b9156e8c0c3100abd7934369fdd..1583ae512e34c29e849efc2f570e09e74b348406 100644
|
||||
--- a/content/browser/renderer_host/code_cache_host_impl.cc
|
||||
+++ b/content/browser/renderer_host/code_cache_host_impl.cc
|
||||
@@ -6,6 +6,7 @@
|
||||
|
@ -378,10 +378,10 @@ index 18a3609bfd344716ba7cd550f66d4c4700d227b0..106884585ba2c6e75053474dbd15c728
|
|||
process_lock.lock_url().scheme())) {
|
||||
return process_lock.lock_url();
|
||||
diff --git a/content/common/url_schemes.cc b/content/common/url_schemes.cc
|
||||
index ce9644d33fe83379127b01bf9a2b1c4badc3bc7c..fd486d4637ae4766ed78571dee7f9cebbd809f38 100644
|
||||
index 225e017909b8869231b870eaaf161a0b5e93e2a0..846a5251429630b8528a84a3d67ed56cb28df5a1 100644
|
||||
--- a/content/common/url_schemes.cc
|
||||
+++ b/content/common/url_schemes.cc
|
||||
@@ -98,6 +98,14 @@ void RegisterContentSchemes(bool should_lock_registry) {
|
||||
@@ -102,6 +102,14 @@ void RegisterContentSchemes(bool should_lock_registry) {
|
||||
for (auto& scheme : schemes.empty_document_schemes)
|
||||
url::AddEmptyDocumentScheme(scheme.c_str());
|
||||
|
||||
|
@ -397,7 +397,7 @@ index ce9644d33fe83379127b01bf9a2b1c4badc3bc7c..fd486d4637ae4766ed78571dee7f9ceb
|
|||
if (schemes.allow_non_standard_schemes_in_origins)
|
||||
url::EnableNonStandardSchemesForAndroidWebView();
|
||||
diff --git a/content/public/common/content_client.h b/content/public/common/content_client.h
|
||||
index cf71655553cf510e1309ac47bdd5ddab08e52672..0a02d17d06e080f40bf12bb2e48f51ad84ec17b8 100644
|
||||
index 52f16979b05b692ef72762d0cbc16bcb361b047e..b658ebeb9c572158b27d94af56331be8cbb519e6 100644
|
||||
--- a/content/public/common/content_client.h
|
||||
+++ b/content/public/common/content_client.h
|
||||
@@ -139,6 +139,9 @@ class CONTENT_EXPORT ContentClient {
|
||||
|
|
|
@ -10,10 +10,10 @@ Electron needs this constructor, namely for gin_helper::Constructible
|
|||
objects.
|
||||
|
||||
diff --git a/gin/object_template_builder.cc b/gin/object_template_builder.cc
|
||||
index 50b64c72a837534de727486a026fce1ee610ad23..38bf1e464312e7d4bc2cf5559d10f67d2bf84514 100644
|
||||
index a694f7dc4da4f1bba579ab8c032eea21d8459995..8aaaba327166b1d3b884fe390a389c0c50890af9 100644
|
||||
--- a/gin/object_template_builder.cc
|
||||
+++ b/gin/object_template_builder.cc
|
||||
@@ -216,6 +216,13 @@ ObjectTemplateBuilder::ObjectTemplateBuilder(v8::Isolate* isolate,
|
||||
@@ -146,6 +146,13 @@ ObjectTemplateBuilder::ObjectTemplateBuilder(v8::Isolate* isolate,
|
||||
template_->SetInternalFieldCount(kNumberOfInternalFields);
|
||||
}
|
||||
|
||||
|
|
|
@ -351,10 +351,10 @@ index 4335d7ff718c3d7de92320ba11c39c3957303788..55379fbe9233ba96f6e4729e2b7d534c
|
|||
// Whether or not to bind viz::mojom::Gpu to the utility process.
|
||||
bool allowed_gpu_;
|
||||
diff --git a/content/browser/service_host/utility_sandbox_delegate.cc b/content/browser/service_host/utility_sandbox_delegate.cc
|
||||
index 68063b1f1846bac988e5b25e428666aefa3908e4..e5101df384dc320728105a6d861fc7c61662a504 100644
|
||||
index ff9941f1f46658574e8ac53bc80fdf665f873bc0..51dfb23c8ebba7ec075ecab597bd84734773f924 100644
|
||||
--- a/content/browser/service_host/utility_sandbox_delegate.cc
|
||||
+++ b/content/browser/service_host/utility_sandbox_delegate.cc
|
||||
@@ -38,17 +38,19 @@ UtilitySandboxedProcessLauncherDelegate::
|
||||
@@ -43,17 +43,19 @@ UtilitySandboxedProcessLauncherDelegate::
|
||||
UtilitySandboxedProcessLauncherDelegate(
|
||||
sandbox::mojom::Sandbox sandbox_type,
|
||||
const base::EnvironmentMap& env,
|
||||
|
@ -378,7 +378,7 @@ index 68063b1f1846bac988e5b25e428666aefa3908e4..e5101df384dc320728105a6d861fc7c6
|
|||
#if DCHECK_IS_ON()
|
||||
bool supported_sandbox_type =
|
||||
sandbox_type_ == sandbox::mojom::Sandbox::kNoSandbox ||
|
||||
@@ -112,11 +114,28 @@ UtilitySandboxedProcessLauncherDelegate::GetSandboxType() {
|
||||
@@ -121,11 +123,28 @@ UtilitySandboxedProcessLauncherDelegate::GetSandboxType() {
|
||||
return sandbox_type_;
|
||||
}
|
||||
|
||||
|
|
|
@ -75,7 +75,7 @@ index f8361faf6151210d65a597562c533aaa0a5235df..328238c34a9381fbbeb5970af3de721c
|
|||
// used for canvas noising.
|
||||
uint64 canvas_noise_token = 0;
|
||||
diff --git a/third_party/blink/public/mojom/use_counter/metrics/css_property_id.mojom b/third_party/blink/public/mojom/use_counter/metrics/css_property_id.mojom
|
||||
index 917d5ec778658f3890366bbc0cbbe38807089265..3e2c0f0d4632c6d202649ca8f87980b7ee9e9e40 100644
|
||||
index e8c017c725f9d9b4f9099c824dfdb4c2cb9cbea6..73e135476bc4c930fd011745503e7f095ccfd8ec 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 {
|
||||
|
@ -99,10 +99,10 @@ index 7fdc9866c9db5838ac8852ba156f2f04eb238bf5..56551d8190b3672d7c00c9bc722cf7e3
|
|||
protected:
|
||||
~WebSettings() = default;
|
||||
diff --git a/third_party/blink/renderer/build/scripts/core/css/css_properties.py b/third_party/blink/renderer/build/scripts/core/css/css_properties.py
|
||||
index bc33eaeaff56b3f0e12d87e078e329c35ff4ecb2..bf970892ea846e9e48bf01f9151cb3dee33c0ca9 100755
|
||||
index e189d584f05f2ce6354c03a9b19f56985df8a15e..41b430e8f2416be098494f5c49fb97cae13447aa 100755
|
||||
--- a/third_party/blink/renderer/build/scripts/core/css/css_properties.py
|
||||
+++ b/third_party/blink/renderer/build/scripts/core/css/css_properties.py
|
||||
@@ -314,7 +314,7 @@ class CSSProperties(object):
|
||||
@@ -312,7 +312,7 @@ class CSSProperties(object):
|
||||
name_without_leading_dash = name_without_leading_dash[1:]
|
||||
internal_visited_order = 1
|
||||
if name_without_leading_dash.startswith(
|
||||
|
@ -112,10 +112,10 @@ index bc33eaeaff56b3f0e12d87e078e329c35ff4ecb2..bf970892ea846e9e48bf01f9151cb3de
|
|||
'internal-forced-visited-'):
|
||||
internal_visited_order = 0
|
||||
diff --git a/third_party/blink/renderer/core/css/css_properties.json5 b/third_party/blink/renderer/core/css/css_properties.json5
|
||||
index b0d51efeabca3169fc1fffce3a7d6721554a5233..07c11fb1ee66cf17b15ce31617d964cfca4f0b4b 100644
|
||||
index 9ef592d0d86e4a6296db98b9c31f008f877dd348..45b5462631a762c90c756298f8f252bccf200389 100644
|
||||
--- a/third_party/blink/renderer/core/css/css_properties.json5
|
||||
+++ b/third_party/blink/renderer/core/css/css_properties.json5
|
||||
@@ -8939,6 +8939,24 @@
|
||||
@@ -9002,6 +9002,24 @@
|
||||
property_methods: ["ParseShorthand", "CSSValueFromComputedStyleInternal"],
|
||||
},
|
||||
|
||||
|
@ -141,7 +141,7 @@ index b0d51efeabca3169fc1fffce3a7d6721554a5233..07c11fb1ee66cf17b15ce31617d964cf
|
|||
{
|
||||
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 a84a3aa2881787f1a9450b977672f339927ce4dd..a78960d5270b52a462feb2858804690612d2feaf 100644
|
||||
index 4f13354776da9944ed75874953a2e2c9878a649b..83728e697c5029a79fb75d84a1be5bdf29363826 100644
|
||||
--- a/third_party/blink/renderer/core/css/css_property_equality.cc
|
||||
+++ b/third_party/blink/renderer/core/css/css_property_equality.cc
|
||||
@@ -350,6 +350,8 @@ bool CSSPropertyEquality::PropertiesEqual(const PropertyHandle& property,
|
||||
|
@ -154,10 +154,10 @@ index a84a3aa2881787f1a9450b977672f339927ce4dd..a78960d5270b52a462feb28588046906
|
|||
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 01ff7488c1cc67dbcdbc372be9c72516cbf9ad29..fd6e883b6e18010974aa5d8ea3051354c6080a73 100644
|
||||
index dc328e04767437d2d9b6d67d07cb6c9d055773f9..01dde66dbbff0c1bf1e1a52486f1901328b4217b 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
|
||||
@@ -12156,5 +12156,25 @@ const CSSValue* InternalEmptyLineHeight::ParseSingleValue(
|
||||
@@ -12325,5 +12325,25 @@ const CSSValue* InternalEmptyLineHeight::ParseSingleValue(
|
||||
CSSValueID::kNone>(stream);
|
||||
}
|
||||
|
||||
|
@ -184,10 +184,10 @@ index 01ff7488c1cc67dbcdbc372be9c72516cbf9ad29..fd6e883b6e18010974aa5d8ea3051354
|
|||
} // 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 192bb06760acbe2fd5d1a59670ee5a535aea2900..a6dbae88a6fd758b5a08e04b430693ca59c251b0 100644
|
||||
index c63e58ac728ebb95de9a7db0a820d6e34eb88128..8b8350322a227cb79de89f5cd827dccc4a383c35 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
|
||||
@@ -3982,6 +3982,15 @@ PositionTryFallback StyleBuilderConverter::ConvertSinglePositionTryFallback(
|
||||
@@ -3988,6 +3988,15 @@ PositionTryFallback StyleBuilderConverter::ConvertSinglePositionTryFallback(
|
||||
return PositionTryFallback(scoped_name, tactic_list);
|
||||
}
|
||||
|
||||
|
@ -204,7 +204,7 @@ index 192bb06760acbe2fd5d1a59670ee5a535aea2900..a6dbae88a6fd758b5a08e04b430693ca
|
|||
const CSSValue& value) {
|
||||
const auto& list = To<CSSValueList>(value);
|
||||
diff --git a/third_party/blink/renderer/core/css/resolver/style_builder_converter.h b/third_party/blink/renderer/core/css/resolver/style_builder_converter.h
|
||||
index 960771a0ccdc14abb30d9c72d3f29dc9821d4f4a..9e0a08288a3f4e68c3940104d9c22b7637acc30b 100644
|
||||
index d1430dc2dc30a1962731492c3f53849c7ff8a4db..417ac19f5968b7300ec2f0422728cd85aeeb2ecd 100644
|
||||
--- a/third_party/blink/renderer/core/css/resolver/style_builder_converter.h
|
||||
+++ b/third_party/blink/renderer/core/css/resolver/style_builder_converter.h
|
||||
@@ -428,6 +428,7 @@ class StyleBuilderConverter {
|
||||
|
@ -213,8 +213,8 @@ index 960771a0ccdc14abb30d9c72d3f29dc9821d4f4a..9e0a08288a3f4e68c3940104d9c22b76
|
|||
const CSSValue&);
|
||||
+ static Length ConvertCornerSmoothing(StyleResolverState&, const CSSValue&);
|
||||
static FitText ConvertFitText(StyleResolverState&, const CSSValue&);
|
||||
};
|
||||
|
||||
static ScopedCSSNameList* ConvertTimelineTriggerName(StyleResolverState&,
|
||||
diff --git a/third_party/blink/renderer/core/exported/web_settings_impl.cc b/third_party/blink/renderer/core/exported/web_settings_impl.cc
|
||||
index 5a291913e020a785d0e9a1d07dd3bc88d223cc62..f01b25c7af9111596c53dadc5c08c4f1c031fc86 100644
|
||||
--- a/third_party/blink/renderer/core/exported/web_settings_impl.cc
|
||||
|
@ -241,10 +241,10 @@ index a9fa6e94716bd5e53bc550d0a8d5e200bf0242af..b8d9d99edc8310eda762c83a6a95a432
|
|||
bool RenderVSyncNotificationEnabled() const {
|
||||
return render_v_sync_notification_enabled_;
|
||||
diff --git a/third_party/blink/renderer/core/exported/web_view_impl.cc b/third_party/blink/renderer/core/exported/web_view_impl.cc
|
||||
index 7163be14508786f67c3ea01cff9bc70c3692acac..cf477007d90a2c3b9b15ab8a7cd1d0a165c874d7 100644
|
||||
index bb9745b97e411c03c4757f7a96e240df93b28559..015dae15ada4ff373d0077c4078ffacf1ba9dc63 100644
|
||||
--- a/third_party/blink/renderer/core/exported/web_view_impl.cc
|
||||
+++ b/third_party/blink/renderer/core/exported/web_view_impl.cc
|
||||
@@ -3599,6 +3599,9 @@ void WebViewImpl::UpdateRendererPreferences(
|
||||
@@ -3594,6 +3594,9 @@ void WebViewImpl::UpdateRendererPreferences(
|
||||
renderer_preferences_.view_source_line_wrap_enabled);
|
||||
|
||||
MaybePreloadSystemFonts(GetPage());
|
||||
|
@ -309,10 +309,10 @@ index ec80337fdac36fa1636f5142c3827d3bbc81644c..634db12dfb443acabde79e9faf59cb84
|
|||
return result;
|
||||
}
|
||||
diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/renderer/platform/BUILD.gn
|
||||
index e6105a54e2534d613943bb56c4c311f35ac69651..e44a985b078ac18c5bc5a05b784f67d156a2dd57 100644
|
||||
index 7fde1fa8af8887b77bfe5a90c4f9f49a386a1a7b..11b9d5fb7b3712681e0a2e2b749ac06ff3d3d787 100644
|
||||
--- a/third_party/blink/renderer/platform/BUILD.gn
|
||||
+++ b/third_party/blink/renderer/platform/BUILD.gn
|
||||
@@ -1650,6 +1650,8 @@ component("platform") {
|
||||
@@ -1648,6 +1648,8 @@ component("platform") {
|
||||
"widget/widget_base.h",
|
||||
"widget/widget_base_client.h",
|
||||
"windows_keyboard_codes.h",
|
||||
|
@ -375,7 +375,7 @@ index 59031b23d3c50aa87db48a5c5a66c5ab04a8103a..1f83cf0dff83d748bf1caafd3685202c
|
|||
|
||||
// A Corner is a axis-aligned quad, with the points ordered (start, outer,
|
||||
diff --git a/third_party/blink/renderer/platform/geometry/path_builder.cc b/third_party/blink/renderer/platform/geometry/path_builder.cc
|
||||
index ba1be7bc8070c2b97f343298261d597df70dfdaf..fe6e2adafe49082ae266c049c655a13e296ade17 100644
|
||||
index 4a77f944e9ad0b18f10f1a572673769453473fb9..ace138137f002d0866e5cc71b44bf5b4ac85bac1 100644
|
||||
--- a/third_party/blink/renderer/platform/geometry/path_builder.cc
|
||||
+++ b/third_party/blink/renderer/platform/geometry/path_builder.cc
|
||||
@@ -4,6 +4,7 @@
|
||||
|
@ -412,4 +412,4 @@ index ba1be7bc8070c2b97f343298261d597df70dfdaf..fe6e2adafe49082ae266c049c655a13e
|
|||
+
|
||||
const FloatRoundedRect& origin_rect = contoured_rect.GetOriginRect();
|
||||
|
||||
// This would include the outer border of the rect, as well as shadow and
|
||||
auto DrawAsSinglePath = [&]() {
|
||||
|
|
|
@ -522,7 +522,7 @@ index f0aca972c4a81c3dfb536e14244daafae21ee716..a15afbc1a3519e657121b4952444d2f4
|
|||
waiting_on_draw_ack_ = true;
|
||||
|
||||
diff --git a/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc b/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc
|
||||
index db34cc86c37d41b44c283f4d16ba0493ea9ed25a..41f9d5f7f94fe2962814684b3a235b7da720a91c 100644
|
||||
index 13de9eb98059014213af8fb9b73875fb38868eaf..58084dc5b827450c3d969e485bd9a4f69104a8ef 100644
|
||||
--- a/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc
|
||||
+++ b/components/viz/service/frame_sinks/root_compositor_frame_sink_impl.cc
|
||||
@@ -131,7 +131,8 @@ RootCompositorFrameSinkImpl::Create(
|
||||
|
|
|
@ -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 9488b2b775cf9cf98e7700f71c0424c6263d5bbd..0bb94028fd307915455cc429df28402ecf988b73 100644
|
||||
index ec76c1990b6d842e6727a1c034f831b7e43966b9..86a3bcc8fa771a333e6e269ed822af1c61369530 100644
|
||||
--- a/services/network/public/cpp/resource_request.cc
|
||||
+++ b/services/network/public/cpp/resource_request.cc
|
||||
@@ -179,6 +179,7 @@ ResourceRequest::TrustedParams& ResourceRequest::TrustedParams::operator=(
|
||||
|
@ -25,10 +25,10 @@ index 9488b2b775cf9cf98e7700f71c0424c6263d5bbd..0bb94028fd307915455cc429df28402e
|
|||
include_request_cookies_with_response =
|
||||
other.include_request_cookies_with_response;
|
||||
+ report_raw_headers = other.report_raw_headers;
|
||||
enabled_client_hints = other.enabled_client_hints;
|
||||
cookie_observer =
|
||||
Clone(&const_cast<mojo::PendingRemote<mojom::CookieAccessObserver>&>(
|
||||
other.cookie_observer));
|
||||
@@ -213,6 +214,7 @@ bool ResourceRequest::TrustedParams::EqualsForTesting(
|
||||
@@ -214,6 +215,7 @@ bool ResourceRequest::TrustedParams::EqualsForTesting(
|
||||
const TrustedParams& other) const {
|
||||
return isolation_info.IsEqualForTesting(other.isolation_info) &&
|
||||
disable_secure_dns == other.disable_secure_dns &&
|
||||
|
@ -37,19 +37,19 @@ index 9488b2b775cf9cf98e7700f71c0424c6263d5bbd..0bb94028fd307915455cc429df28402e
|
|||
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 95592f8b8145f6c8e852f85fdb431cb7b0be9ff7..4c92030c94c2f3ca277a576d7776975695031e74 100644
|
||||
index 8b0fbc6f484bab038144177f795d8fd9e596e20a..680df80f43de51aaa2a24afa5e2cae57ad8b1222 100644
|
||||
--- a/services/network/public/cpp/resource_request.h
|
||||
+++ b/services/network/public/cpp/resource_request.h
|
||||
@@ -79,6 +79,7 @@ struct COMPONENT_EXPORT(NETWORK_CPP_BASE) ResourceRequest {
|
||||
@@ -77,6 +77,7 @@ struct COMPONENT_EXPORT(NETWORK_CPP_BASE) ResourceRequest {
|
||||
bool has_user_activation = false;
|
||||
bool allow_cookies_from_browser = false;
|
||||
bool include_request_cookies_with_response = false;
|
||||
+ bool report_raw_headers = false;
|
||||
std::optional<std::vector<network::mojom::WebClientHintsType>>
|
||||
enabled_client_hints;
|
||||
mojo::PendingRemote<mojom::CookieAccessObserver> cookie_observer;
|
||||
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 088517d1a9800de0d09c745bbe1ef2fe416c3425..2303ede53f1ee7a827befec560069d97601c2b80 100644
|
||||
index 134a15fd2f3e6b7d941370741abee1698132c67b..80877a49fadd7ff2f9ad6d15e5f55eb35b2a8116 100644
|
||||
--- a/services/network/public/cpp/url_request_mojom_traits.cc
|
||||
+++ b/services/network/public/cpp/url_request_mojom_traits.cc
|
||||
@@ -50,6 +50,7 @@ bool StructTraits<network::mojom::TrustedUrlRequestParamsDataView,
|
||||
|
@ -57,14 +57,14 @@ index 088517d1a9800de0d09c745bbe1ef2fe416c3425..2303ede53f1ee7a827befec560069d97
|
|||
out->include_request_cookies_with_response =
|
||||
data.include_request_cookies_with_response();
|
||||
+ out->report_raw_headers = data.report_raw_headers();
|
||||
out->cookie_observer = data.TakeCookieObserver<
|
||||
mojo::PendingRemote<network::mojom::CookieAccessObserver>>();
|
||||
out->trust_token_observer = data.TakeTrustTokenObserver<
|
||||
if (!data.ReadEnabledClientHints(&out->enabled_client_hints)) {
|
||||
return false;
|
||||
}
|
||||
diff --git a/services/network/public/cpp/url_request_mojom_traits.h b/services/network/public/cpp/url_request_mojom_traits.h
|
||||
index 45defbfca47574ed002052a2ba2b1517a3ea89f4..a4f7a0cc7346b2e413cec1f56ec1d0484f94ed34 100644
|
||||
index 37ea42c876b6cf6379344383774faabb554f2f84..ea577aff934aa79484f8c645c1bccf83513ad9d1 100644
|
||||
--- a/services/network/public/cpp/url_request_mojom_traits.h
|
||||
+++ b/services/network/public/cpp/url_request_mojom_traits.h
|
||||
@@ -72,6 +72,10 @@ struct COMPONENT_EXPORT(NETWORK_CPP_BASE)
|
||||
@@ -73,6 +73,10 @@ struct COMPONENT_EXPORT(NETWORK_CPP_BASE)
|
||||
const network::ResourceRequest::TrustedParams& trusted_params) {
|
||||
return trusted_params.include_request_cookies_with_response;
|
||||
}
|
||||
|
@ -72,23 +72,23 @@ index 45defbfca47574ed002052a2ba2b1517a3ea89f4..a4f7a0cc7346b2e413cec1f56ec1d048
|
|||
+ const network::ResourceRequest::TrustedParams& trusted_params) {
|
||||
+ return trusted_params.report_raw_headers;
|
||||
+ }
|
||||
static mojo::PendingRemote<network::mojom::CookieAccessObserver>
|
||||
cookie_observer(
|
||||
static const std::optional<std::vector<network::mojom::WebClientHintsType>>&
|
||||
enabled_client_hints(
|
||||
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 392d697a8d1573815bf08e37b1bcc5c0c7493116..cf9915b9322487734b27a1776e721440035d7ad7 100644
|
||||
index afd8b1bb9c7e18cdd5012ed4211cf56aa212da27..6752d6e1c0576087faa741c0bbdf5837344d9512 100644
|
||||
--- a/services/network/public/mojom/url_request.mojom
|
||||
+++ b/services/network/public/mojom/url_request.mojom
|
||||
@@ -87,6 +87,9 @@ struct TrustedUrlRequestParams {
|
||||
@@ -88,6 +88,9 @@ struct TrustedUrlRequestParams {
|
||||
// client which should not be able to see them.
|
||||
bool include_request_cookies_with_response = false;
|
||||
|
||||
+ // [Electron] Whether to provide unfiltered response headers.
|
||||
+ bool report_raw_headers;
|
||||
+
|
||||
// Observer which should be notified when this URLRequest reads or writes
|
||||
// a cookie. If this is set to non-null, the observer passed to
|
||||
// URLLoaderFactory will be ignored.
|
||||
// Enabled Client Hints to be evaluated quickly within the network layer
|
||||
// when it receives the AcceptCHFrame.
|
||||
// The value is set only if the flag is enabled.
|
||||
diff --git a/services/network/public/mojom/url_response_head.mojom b/services/network/public/mojom/url_response_head.mojom
|
||||
index c1774435cf594b5b3c07a60d11c379c61a828dec..4a59df2ce679c9af10b0e3bf630d615bf82e3c8a 100644
|
||||
--- a/services/network/public/mojom/url_response_head.mojom
|
||||
|
@ -112,12 +112,12 @@ index c1774435cf594b5b3c07a60d11c379c61a828dec..4a59df2ce679c9af10b0e3bf630d615b
|
|||
string mime_type;
|
||||
|
||||
diff --git a/services/network/url_loader.cc b/services/network/url_loader.cc
|
||||
index 5ff81576882fa62b6b6aaaebd176fe4419644718..ec91b51969e157d3b7c8280e1b033e4c5f8e8ad3 100644
|
||||
index f742ddb564cf9aa0bd219d7e2636204417ae48af..1fc293925bdbdab7b316e19cac01f8cf0995fbff 100644
|
||||
--- a/services/network/url_loader.cc
|
||||
+++ b/services/network/url_loader.cc
|
||||
@@ -389,6 +389,9 @@ URLLoader::URLLoader(
|
||||
mojo::SimpleWatcher::ArmingPolicy::MANUAL,
|
||||
base::SequencedTaskRunner::GetCurrentDefault()),
|
||||
@@ -397,6 +397,9 @@ URLLoader::URLLoader(
|
||||
mojo::SimpleWatcher::ArmingPolicy::MANUAL,
|
||||
TaskRunner(request.priority)),
|
||||
per_factory_orb_state_(context.GetMutableOrbState()),
|
||||
+ report_raw_headers_(
|
||||
+ request.trusted_params &&
|
||||
|
@ -125,7 +125,7 @@ index 5ff81576882fa62b6b6aaaebd176fe4419644718..ec91b51969e157d3b7c8280e1b033e4c
|
|||
devtools_request_id_(request.devtools_request_id),
|
||||
options_(PopulateOptions(options,
|
||||
factory_params_->is_orb_enabled,
|
||||
@@ -527,7 +530,7 @@ void URLLoader::SetUpUrlRequestCallbacks(
|
||||
@@ -535,7 +538,7 @@ void URLLoader::SetUpUrlRequestCallbacks(
|
||||
&URLLoader::IsSharedDictionaryReadAllowed, base::Unretained(this)));
|
||||
}
|
||||
|
||||
|
@ -134,7 +134,7 @@ index 5ff81576882fa62b6b6aaaebd176fe4419644718..ec91b51969e157d3b7c8280e1b033e4c
|
|||
url_request_->SetResponseHeadersCallback(base::BindRepeating(
|
||||
&URLLoader::SetRawResponseHeaders, base::Unretained(this)));
|
||||
}
|
||||
@@ -1134,6 +1137,19 @@ void URLLoader::OnResponseStarted(net::URLRequest* url_request, int net_error) {
|
||||
@@ -1142,6 +1145,19 @@ void URLLoader::OnResponseStarted(net::URLRequest* url_request, int net_error) {
|
||||
}
|
||||
|
||||
response_ = BuildResponseHead();
|
||||
|
|
|
@ -16,10 +16,10 @@ Linux or Windows to un-fullscreen in some circumstances without this
|
|||
change.
|
||||
|
||||
diff --git a/chrome/browser/ui/exclusive_access/fullscreen_controller.cc b/chrome/browser/ui/exclusive_access/fullscreen_controller.cc
|
||||
index e7967c50a4c4277fbebb355dbe8aded539f5e8b7..1ee048dd7d0b452a9a3b261bb04e257e11d15d92 100644
|
||||
index a6a63ba5e7d1a372caa0f2957b7ae7559af7c41c..020e4dd2819af6f709b58025fdc4b4cbec2025e5 100644
|
||||
--- a/chrome/browser/ui/exclusive_access/fullscreen_controller.cc
|
||||
+++ b/chrome/browser/ui/exclusive_access/fullscreen_controller.cc
|
||||
@@ -20,14 +20,16 @@
|
||||
@@ -20,7 +20,7 @@
|
||||
#include "chrome/browser/browser_process.h"
|
||||
#include "chrome/browser/history/history_service_factory.h"
|
||||
#include "chrome/browser/profiles/profile.h"
|
||||
|
@ -28,16 +28,7 @@ index e7967c50a4c4277fbebb355dbe8aded539f5e8b7..1ee048dd7d0b452a9a3b261bb04e257e
|
|||
#include "chrome/browser/ui/blocked_content/popunder_preventer.h"
|
||||
#endif // !BUILDFLAG(IS_ANDROID)
|
||||
#include "chrome/browser/ui/exclusive_access/exclusive_access_context.h"
|
||||
#include "chrome/browser/ui/exclusive_access/exclusive_access_manager.h"
|
||||
#include "chrome/browser/ui/exclusive_access/fullscreen_within_tab_helper.h"
|
||||
+#if 0
|
||||
#include "chrome/browser/ui/status_bubble.h"
|
||||
#include "chrome/browser/ui/tabs/tab_strip_model.h"
|
||||
+#endif
|
||||
#include "chrome/common/chrome_switches.h"
|
||||
#include "components/history/core/browser/history_service.h"
|
||||
#include "components/history/core/browser/history_types.h"
|
||||
@@ -274,7 +276,7 @@ void FullscreenController::EnterFullscreenModeForTab(
|
||||
@@ -270,7 +270,7 @@ void FullscreenController::EnterFullscreenModeForTab(
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -46,7 +37,7 @@ index e7967c50a4c4277fbebb355dbe8aded539f5e8b7..1ee048dd7d0b452a9a3b261bb04e257e
|
|||
if (!popunder_preventer_) {
|
||||
popunder_preventer_ = std::make_unique<PopunderPreventer>(web_contents);
|
||||
} else {
|
||||
@@ -394,12 +396,14 @@ void FullscreenController::ExitFullscreenModeForTab(WebContents* web_contents) {
|
||||
@@ -390,12 +390,14 @@ void FullscreenController::ExitFullscreenModeForTab(WebContents* web_contents) {
|
||||
void FullscreenController::FullscreenTabOpeningPopup(
|
||||
content::WebContents* opener,
|
||||
content::WebContents* popup) {
|
||||
|
@ -61,7 +52,7 @@ index e7967c50a4c4277fbebb355dbe8aded539f5e8b7..1ee048dd7d0b452a9a3b261bb04e257e
|
|||
}
|
||||
#endif // !BUILDFLAG(IS_ANDROID)
|
||||
|
||||
@@ -490,8 +494,7 @@ void FullscreenController::FullscreenTransitionCompleted() {
|
||||
@@ -486,8 +488,7 @@ void FullscreenController::FullscreenTransitionCompleted() {
|
||||
#endif // DCHECK_IS_ON()
|
||||
tab_fullscreen_target_display_id_ = display::kInvalidDisplayId;
|
||||
started_fullscreen_transition_ = false;
|
||||
|
@ -71,7 +62,7 @@ index e7967c50a4c4277fbebb355dbe8aded539f5e8b7..1ee048dd7d0b452a9a3b261bb04e257e
|
|||
if (!IsTabFullscreen()) {
|
||||
// Activate any popup windows created while content fullscreen, after exit.
|
||||
popunder_preventer_.reset();
|
||||
@@ -626,18 +629,17 @@ void FullscreenController::EnterFullscreenModeInternal(
|
||||
@@ -622,18 +623,17 @@ void FullscreenController::EnterFullscreenModeInternal(
|
||||
// Do not enter fullscreen mode if disallowed by pref. This prevents the user
|
||||
// from manually entering fullscreen mode and also disables kiosk mode on
|
||||
// desktop platforms.
|
||||
|
@ -95,7 +86,7 @@ index e7967c50a4c4277fbebb355dbe8aded539f5e8b7..1ee048dd7d0b452a9a3b261bb04e257e
|
|||
if (option == TAB) {
|
||||
origin = GetRequestingOrigin();
|
||||
tab_fullscreen_ = true;
|
||||
@@ -674,6 +676,7 @@ void FullscreenController::EnterFullscreenModeInternal(
|
||||
@@ -670,6 +670,7 @@ void FullscreenController::EnterFullscreenModeInternal(
|
||||
origin = url::Origin::Create(extension_url_.value());
|
||||
}
|
||||
}
|
||||
|
@ -103,7 +94,7 @@ index e7967c50a4c4277fbebb355dbe8aded539f5e8b7..1ee048dd7d0b452a9a3b261bb04e257e
|
|||
|
||||
fullscreen_start_time_ = base::TimeTicks::Now();
|
||||
if (option == BROWSER) {
|
||||
@@ -695,6 +698,7 @@ void FullscreenController::ExitFullscreenModeInternal() {
|
||||
@@ -691,6 +692,7 @@ void FullscreenController::ExitFullscreenModeInternal() {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -111,7 +102,7 @@ index e7967c50a4c4277fbebb355dbe8aded539f5e8b7..1ee048dd7d0b452a9a3b261bb04e257e
|
|||
// `fullscreen_start_time_` is null if a fullscreen tab moves to a new window.
|
||||
if (fullscreen_start_time_ && exclusive_access_tab()) {
|
||||
ukm::SourceId source_id =
|
||||
@@ -706,15 +710,16 @@ void FullscreenController::ExitFullscreenModeInternal() {
|
||||
@@ -702,15 +704,16 @@ void FullscreenController::ExitFullscreenModeInternal() {
|
||||
.Record(ukm::UkmRecorder::Get());
|
||||
fullscreen_start_time_.reset();
|
||||
}
|
||||
|
@ -131,7 +122,7 @@ index e7967c50a4c4277fbebb355dbe8aded539f5e8b7..1ee048dd7d0b452a9a3b261bb04e257e
|
|||
exclusive_access_manager()->context()->ExitFullscreen();
|
||||
extension_url_.reset();
|
||||
exclusive_access_manager()->UpdateBubble(base::NullCallback());
|
||||
@@ -778,8 +783,12 @@ url::Origin FullscreenController::GetEmbeddingOrigin() const {
|
||||
@@ -774,8 +777,12 @@ url::Origin FullscreenController::GetEmbeddingOrigin() const {
|
||||
void FullscreenController::RecordMetricsOnFullscreenApiRequested(
|
||||
content::RenderFrameHost* requesting_frame) {
|
||||
history::HistoryService* service =
|
||||
|
|
|
@ -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 be9dcb6b1cfe23a2577aa9e1a0c9e30866eec926..6c066a84c29afb794857398e455e918e113f8083 100644
|
||||
index 34e3618fcb54db440e79eacf4b7c9216f28b257a..ff9866ad306a400133c06b62c55c165c0084e8d2 100644
|
||||
--- a/content/browser/renderer_host/navigation_request.cc
|
||||
+++ b/content/browser/renderer_host/navigation_request.cc
|
||||
@@ -11217,6 +11217,11 @@ url::Origin NavigationRequest::GetOriginForURLLoaderFactoryUnchecked() {
|
||||
@@ -11269,6 +11269,11 @@ url::Origin NavigationRequest::GetOriginForURLLoaderFactoryUnchecked() {
|
||||
target_rph_id);
|
||||
}
|
||||
|
||||
|
@ -44,7 +44,7 @@ index be9dcb6b1cfe23a2577aa9e1a0c9e30866eec926..6c066a84c29afb794857398e455e918e
|
|||
// 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 7a3ede9d9a1512a5b1502287be097be6edbd4352..cf40bd2fe60026318d70c7ae2b1e50a59d2d6ec5 100644
|
||||
index 67d1e4e805a5eb32e66034e95be4e5412ec5ccd9..bcf4d45ef2806c10784887a61f03a1779450a7f1 100644
|
||||
--- a/third_party/blink/renderer/core/loader/document_loader.cc
|
||||
+++ b/third_party/blink/renderer/core/loader/document_loader.cc
|
||||
@@ -2333,6 +2333,10 @@ Frame* DocumentLoader::CalculateOwnerFrame() {
|
||||
|
|
|
@ -53,7 +53,7 @@ index 8d7c5631fd8f1499c67384286f0e3c4037673b32..2b7bdfbac06a42e6bc51eb65e023c367
|
|||
|
||||
} // namespace gin
|
||||
diff --git a/third_party/blink/renderer/platform/bindings/script_state.cc b/third_party/blink/renderer/platform/bindings/script_state.cc
|
||||
index 58aa3d5b24355a4346c9d6992e6090d28cad513f..96c28c190f98c76c0defeaabda092ebdf6fb44c6 100644
|
||||
index 2d5df763b6ebb2333ae4aef909865213fb9ad4df..2370f00a3f5ee70604c93a0999ea5cee3c9898f9 100644
|
||||
--- a/third_party/blink/renderer/platform/bindings/script_state.cc
|
||||
+++ b/third_party/blink/renderer/platform/bindings/script_state.cc
|
||||
@@ -13,6 +13,10 @@ namespace blink {
|
||||
|
|
|
@ -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 fdafa0e29577106277ca95a6389e3d3c29aba53b..11f7ab5870e8d3dd3efbc8e8a829c26153eec024 100644
|
||||
index 812d1ac65ba1902701297f67585914aa37bf364d..2c80cf1c51cbcee1451fb30afb99696e4206d326 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 @@
|
||||
|
@ -20,17 +20,18 @@ index fdafa0e29577106277ca95a6389e3d3c29aba53b..11f7ab5870e8d3dd3efbc8e8a829c261
|
|||
#include "chrome/browser/picture_in_picture/picture_in_picture_bounds_cache.h"
|
||||
#include "chrome/browser/picture_in_picture/picture_in_picture_occlusion_tracker.h"
|
||||
#include "chrome/browser/ui/browser_navigator_params.h"
|
||||
@@ -28,7 +29,9 @@
|
||||
@@ -28,8 +29,10 @@
|
||||
#include "base/task/sequenced_task_runner.h"
|
||||
// TODO(crbug.com/421608904): include auto_picture_in_picture_tab_helper for
|
||||
// Android.
|
||||
+#if BUILDFLAG(GOOGLE_CHROME_BRANDING)
|
||||
#include "chrome/browser/picture_in_picture/auto_picture_in_picture_tab_helper.h"
|
||||
#include "chrome/browser/picture_in_picture/auto_pip_setting_overlay_view.h"
|
||||
+#endif // BUILDFLAG(GOOGLE_CHROME_BRANDING)
|
||||
#include "chrome/browser/picture_in_picture/picture_in_picture_window.h"
|
||||
#include "media/base/media_switches.h"
|
||||
#include "net/base/url_util.h"
|
||||
@@ -63,6 +66,7 @@ constexpr double kMaxWindowSizeRatio = 0.8;
|
||||
@@ -64,6 +67,7 @@ constexpr double kMaxWindowSizeRatio = 0.8;
|
||||
// `kMaxWindowSizeRatio`.
|
||||
constexpr double kMaxSiteRequestedWindowSizeRatio = 0.25;
|
||||
|
||||
|
@ -38,7 +39,7 @@ index fdafa0e29577106277ca95a6389e3d3c29aba53b..11f7ab5870e8d3dd3efbc8e8a829c261
|
|||
// Returns true if a document picture-in-picture window should be focused upon
|
||||
// opening it.
|
||||
bool ShouldFocusPictureInPictureWindow(const NavigateParams& params) {
|
||||
@@ -79,6 +83,7 @@ bool ShouldFocusPictureInPictureWindow(const NavigateParams& params) {
|
||||
@@ -80,6 +84,7 @@ bool ShouldFocusPictureInPictureWindow(const NavigateParams& params) {
|
||||
// AutoPictureInPictureTabHelper.
|
||||
return !auto_picture_in_picture_tab_helper->IsInAutoPictureInPicture();
|
||||
}
|
||||
|
@ -46,7 +47,7 @@ index fdafa0e29577106277ca95a6389e3d3c29aba53b..11f7ab5870e8d3dd3efbc8e8a829c261
|
|||
|
||||
// Returns the maximum area in pixels that the site can request a
|
||||
// picture-in-picture window to be.
|
||||
@@ -216,7 +221,7 @@ bool PictureInPictureWindowManager::ExitPictureInPictureViaWindowUi(
|
||||
@@ -217,7 +222,7 @@ bool PictureInPictureWindowManager::ExitPictureInPictureViaWindowUi(
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -55,7 +56,7 @@ index fdafa0e29577106277ca95a6389e3d3c29aba53b..11f7ab5870e8d3dd3efbc8e8a829c261
|
|||
// The user manually closed the pip window, so let the tab helper know in case
|
||||
// the auto-pip permission dialog was visible.
|
||||
if (auto* tab_helper = AutoPictureInPictureTabHelper::FromWebContents(
|
||||
@@ -547,7 +552,7 @@ gfx::Size PictureInPictureWindowManager::GetMaximumWindowSize(
|
||||
@@ -548,7 +553,7 @@ gfx::Size PictureInPictureWindowManager::GetMaximumWindowSize(
|
||||
|
||||
// static
|
||||
void PictureInPictureWindowManager::SetWindowParams(NavigateParams& params) {
|
||||
|
@ -64,7 +65,7 @@ index fdafa0e29577106277ca95a6389e3d3c29aba53b..11f7ab5870e8d3dd3efbc8e8a829c261
|
|||
// Always show document picture-in-picture in a new window. When this is
|
||||
// not opened via the AutoPictureInPictureTabHelper, focus the window.
|
||||
params.window_action = ShouldFocusPictureInPictureWindow(params)
|
||||
@@ -648,6 +653,7 @@ PictureInPictureWindowManager::GetOverlayView(
|
||||
@@ -649,6 +654,7 @@ PictureInPictureWindowManager::GetOverlayView(
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
|
@ -72,7 +73,7 @@ index fdafa0e29577106277ca95a6389e3d3c29aba53b..11f7ab5870e8d3dd3efbc8e8a829c261
|
|||
// It would be nice to create this in `EnterPictureInPicture*`, but detecting
|
||||
// auto-pip while pip is in the process of opening doesn't work.
|
||||
//
|
||||
@@ -686,6 +692,8 @@ PictureInPictureWindowManager::GetOverlayView(
|
||||
@@ -687,6 +693,8 @@ PictureInPictureWindowManager::GetOverlayView(
|
||||
}
|
||||
|
||||
return overlay_view;
|
||||
|
@ -82,10 +83,10 @@ index fdafa0e29577106277ca95a6389e3d3c29aba53b..11f7ab5870e8d3dd3efbc8e8a829c261
|
|||
|
||||
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 6040f8fb695853169b793dedc5f644c52bb42bde..c201fe8d40bb544532663a31299b236cd2c7c418 100644
|
||||
index 8cf36280324ddcbdffe6396baeb13828251b285a..6375dc2cde9ee2e67c71cb3bc6247e64fef70e13 100644
|
||||
--- a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc
|
||||
+++ b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc
|
||||
@@ -456,11 +456,13 @@ std::unique_ptr<VideoOverlayWindowViews> VideoOverlayWindowViews::Create(
|
||||
@@ -463,11 +463,13 @@ std::unique_ptr<VideoOverlayWindowViews> VideoOverlayWindowViews::Create(
|
||||
|
||||
#endif // BUILDFLAG(IS_WIN)
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@ messages in the legacy window handle layer.
|
|||
These conditions are regularly hit with WCO-enabled windows on Windows.
|
||||
|
||||
diff --git a/content/browser/renderer_host/legacy_render_widget_host_win.cc b/content/browser/renderer_host/legacy_render_widget_host_win.cc
|
||||
index 48b91785925ba2d3712560a209fe07799df0face..99b06250fa5cf939bd66155f595796baf8cf9755 100644
|
||||
index 4d01a64ad5125df5f4c476e016c7796d6d704b8f..90df1b42a021f3af659f90ee7b934c95004ac34d 100644
|
||||
--- a/content/browser/renderer_host/legacy_render_widget_host_win.cc
|
||||
+++ b/content/browser/renderer_host/legacy_render_widget_host_win.cc
|
||||
@@ -325,12 +325,12 @@ LRESULT LegacyRenderWidgetHostHWND::OnMouseRange(UINT message,
|
||||
|
|
|
@ -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 79d3e54d8cfb212c86ae53357051127dd6d4534c..29667a364354b230a6e8a6ccab8d8ac95cdf1e84 100644
|
||||
index 46d99f6f6b5e71dba05703b6730a2c9959235ab1..b5feb80ee47826eb8d052e2bcdb1e602fa50ec5f 100644
|
||||
--- a/content/browser/web_contents/web_contents_impl.cc
|
||||
+++ b/content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -10030,7 +10030,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame(
|
||||
@@ -10014,7 +10014,7 @@ void WebContentsImpl::OnFocusedElementChangedInFrame(
|
||||
"WebContentsImpl::OnFocusedElementChangedInFrame",
|
||||
"render_frame_host", frame);
|
||||
RenderWidgetHostViewBase* root_view =
|
||||
|
|
|
@ -25,10 +25,10 @@ index 8be4ca70ff71cfc33cd812ec0cc9ae8155538532..f7985331838387232b27e557e4351134
|
|||
// Returns true if duplex mode is set.
|
||||
bool SetDuplexModeInPrintSettings(mojom::DuplexMode mode);
|
||||
diff --git a/printing/printing_context_mac.mm b/printing/printing_context_mac.mm
|
||||
index 06aed7f7f0b6f87ca77a58c82e64fee3249e2bf0..d776fe04b73826711c1b2bfe3ec65137965f2c01 100644
|
||||
index b504350cb53273d1db7204771ae080647fe6b878..8fdf6a14d0913aca8f14c412c4afae3ad7ec37e5 100644
|
||||
--- a/printing/printing_context_mac.mm
|
||||
+++ b/printing/printing_context_mac.mm
|
||||
@@ -523,7 +523,8 @@ bool IsIppColorModelColorful(mojom::ColorModel color_model) {
|
||||
@@ -522,7 +522,8 @@ bool IsIppColorModelColorful(mojom::ColorModel color_model) {
|
||||
!SetCollateInPrintSettings(settings_->collate()) ||
|
||||
!SetDuplexModeInPrintSettings(settings_->duplex_mode()) ||
|
||||
!SetOutputColor(static_cast<int>(settings_->color())) ||
|
||||
|
@ -38,7 +38,7 @@ index 06aed7f7f0b6f87ca77a58c82e64fee3249e2bf0..d776fe04b73826711c1b2bfe3ec65137
|
|||
return OnError();
|
||||
}
|
||||
}
|
||||
@@ -676,6 +677,22 @@ bool IsIppColorModelColorful(mojom::ColorModel color_model) {
|
||||
@@ -675,6 +676,22 @@ bool IsIppColorModelColorful(mojom::ColorModel color_model) {
|
||||
return PMSetCopies(print_settings, copies, false) == noErr;
|
||||
}
|
||||
|
||||
|
|
|
@ -11,10 +11,10 @@ This patch should be upstreamed as a conditional revert of the logic in desktop
|
|||
vs mobile runtimes. i.e. restore the old logic only on desktop platforms
|
||||
|
||||
diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc
|
||||
index eed851d277c5efa2d5ca594e18eaf7dff3a5d11d..372c81bdfcf4d70dbd5b131a1b02af6b5c878cbe 100644
|
||||
index 59768b75a3f304056dcf6b5d665f6e41cdcfafcc..b2ce0f193d8032118d555cd408612a6fd9399cdb 100644
|
||||
--- a/content/browser/renderer_host/render_widget_host_impl.cc
|
||||
+++ b/content/browser/renderer_host/render_widget_host_impl.cc
|
||||
@@ -2135,9 +2135,8 @@ RenderWidgetHostImpl::GetWidgetInputHandler() {
|
||||
@@ -2136,9 +2136,8 @@ RenderWidgetHostImpl::GetWidgetInputHandler() {
|
||||
void RenderWidgetHostImpl::NotifyScreenInfoChanged() {
|
||||
// The resize message (which may not happen immediately) will carry with it
|
||||
// the screen info as well as the new size (if the screen has changed scale
|
||||
|
|
|
@ -59,7 +59,7 @@ index cba373664bec3a32abad6fe0396bd67b53b7e67f..a54f1b3351efd2d8f324436f7f35cd43
|
|||
|
||||
#endif // THIRD_PARTY_BLINK_PUBLIC_WEB_WEB_SCRIPT_EXECUTION_CALLBACK_H_
|
||||
diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc
|
||||
index eb492c266c9c4ee9d1a6ebde3e2eb9a12cfca0c1..79b366e81a13c9893acc525b942d752fba45f530 100644
|
||||
index f74e7cdbaa4c77b84ed9ecba839874ed6c26c4e8..55dd136ca0d6ac64ce17729651a9dabea2a61bae 100644
|
||||
--- a/third_party/blink/renderer/core/frame/local_frame.cc
|
||||
+++ b/third_party/blink/renderer/core/frame/local_frame.cc
|
||||
@@ -3180,6 +3180,7 @@ void LocalFrame::RequestExecuteScript(
|
||||
|
@ -92,7 +92,7 @@ index 6921a10cf84a300a6a8302409e418a92b01ef7f9..493db3bd79d22f31590f89f6e6853c51
|
|||
mojom::blink::WantResultOption,
|
||||
mojom::blink::PromiseResultOption);
|
||||
diff --git a/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc b/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc
|
||||
index 7a17873747bf359b2f26b6c84cdb31fb031c6736..de771b5c5785e3c7cb4640cc4edc9bab228150d9 100644
|
||||
index 619567e49de0dd3389cf3cb8d345bd58bdf00545..2980226cfa3525619dbdb9954e282e45e8c5b8f5 100644
|
||||
--- a/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc
|
||||
+++ b/third_party/blink/renderer/core/frame/local_frame_mojo_handler.cc
|
||||
@@ -973,6 +973,7 @@ void LocalFrameMojoHandler::JavaScriptExecuteRequestInIsolatedWorld(
|
||||
|
@ -104,7 +104,7 @@ index 7a17873747bf359b2f26b6c84cdb31fb031c6736..de771b5c5785e3c7cb4640cc4edc9bab
|
|||
wants_result
|
||||
? mojom::blink::WantResultOption::kWantResultDateAndRegExpAllowed
|
||||
diff --git a/third_party/blink/renderer/core/frame/pausable_script_executor.cc b/third_party/blink/renderer/core/frame/pausable_script_executor.cc
|
||||
index 2d674cef2d653ed555cd99848f37c67e29eb00fa..cbc8b8b642376959f366a03bd04eace55f9d02bb 100644
|
||||
index 19e5c838cc17844092df5652542a767316bc03b2..105f61bf14cdcfbf9cd284d80ba7bde756d5fcf2 100644
|
||||
--- a/third_party/blink/renderer/core/frame/pausable_script_executor.cc
|
||||
+++ b/third_party/blink/renderer/core/frame/pausable_script_executor.cc
|
||||
@@ -243,7 +243,7 @@ void PausableScriptExecutor::CreateAndRun(
|
||||
|
@ -113,8 +113,8 @@ index 2d674cef2d653ed555cd99848f37c67e29eb00fa..cbc8b8b642376959f366a03bd04eace5
|
|||
want_result_option, mojom::blink::PromiseResultOption::kDoNotWait,
|
||||
- std::move(callback),
|
||||
+ std::move(callback), base::NullCallback(),
|
||||
MakeGarbageCollected<V8FunctionExecutor>(
|
||||
script_state->GetIsolate(), function, receiver, argc, argv));
|
||||
MakeGarbageCollected<V8FunctionExecutor>(isolate, function, receiver,
|
||||
argc, argv));
|
||||
executor->Run();
|
||||
@@ -258,10 +258,11 @@ void PausableScriptExecutor::CreateAndRun(
|
||||
mojom::blink::LoadEventBlockingOption blocking_option,
|
||||
|
@ -203,7 +203,7 @@ index fa65331f40b90d812b71a489fd560e9359152d2b..390714d631dc88ef92d59ef9618a5706
|
|||
const mojom::blink::UserActivationOption user_activation_option_;
|
||||
const mojom::blink::LoadEventBlockingOption blocking_option_;
|
||||
diff --git a/third_party/blink/renderer/core/frame/web_frame_test.cc b/third_party/blink/renderer/core/frame/web_frame_test.cc
|
||||
index affd8135faffb9fb84585b0ce5e995dfb1715a78..91430b140946302bfc35a861ab36d8d78c0afd13 100644
|
||||
index e2c1eaf1aa83ccaabe9c33771f99ae7abb141e69..db911605e93778775c576ded30635235edb93391 100644
|
||||
--- a/third_party/blink/renderer/core/frame/web_frame_test.cc
|
||||
+++ b/third_party/blink/renderer/core/frame/web_frame_test.cc
|
||||
@@ -299,6 +299,7 @@ void ExecuteScriptsInMainWorld(
|
||||
|
@ -215,7 +215,7 @@ index affd8135faffb9fb84585b0ce5e995dfb1715a78..91430b140946302bfc35a861ab36d8d7
|
|||
mojom::blink::WantResultOption::kWantResult, wait_for_promise);
|
||||
}
|
||||
diff --git a/third_party/blink/renderer/core/frame/web_local_frame_impl.cc b/third_party/blink/renderer/core/frame/web_local_frame_impl.cc
|
||||
index 470cb0a5d00d6051b9ce28ed716cbf01aa00f565..c58b3e0cf7e56ea0278d5961f3318980a3d83be8 100644
|
||||
index fa117f2d4ac419a055bb45ab721a0d0e86ea6947..64e06e2e36d4bae5a84e143d6c02430e08dcb336 100644
|
||||
--- a/third_party/blink/renderer/core/frame/web_local_frame_impl.cc
|
||||
+++ b/third_party/blink/renderer/core/frame/web_local_frame_impl.cc
|
||||
@@ -1117,14 +1117,15 @@ void WebLocalFrameImpl::RequestExecuteScript(
|
||||
|
|
|
@ -6,10 +6,10 @@ Subject: fix: select the first menu item when opened via keyboard
|
|||
This fixes an accessibility issue where the root view is 'focused' to the screen reader instead of the first menu item as with all other native menus. This patch will be upstreamed.
|
||||
|
||||
diff --git a/ui/views/controls/menu/menu_controller.cc b/ui/views/controls/menu/menu_controller.cc
|
||||
index 783ecf23f614d5e125ed2fe2e4cfba86dfd7ace2..fee252e2596376224d68c20269dfe8240b4ea211 100644
|
||||
index c206a2ebcb069616be1205efc261ec060249f35b..0300e9b05feaa14895a05eb9ca7b41fb84a05bee 100644
|
||||
--- a/ui/views/controls/menu/menu_controller.cc
|
||||
+++ b/ui/views/controls/menu/menu_controller.cc
|
||||
@@ -712,6 +712,16 @@ void MenuController::Run(Widget* parent,
|
||||
@@ -713,6 +713,16 @@ void MenuController::Run(Widget* parent,
|
||||
SetSelection(root, SELECTION_OPEN_SUBMENU | SELECTION_UPDATE_IMMEDIATELY);
|
||||
}
|
||||
|
||||
|
@ -26,7 +26,7 @@ index 783ecf23f614d5e125ed2fe2e4cfba86dfd7ace2..fee252e2596376224d68c20269dfe824
|
|||
if (button_controller) {
|
||||
pressed_lock_ = button_controller->TakeLock(
|
||||
false, ui::LocatedEvent::FromIfValid(event));
|
||||
@@ -2427,19 +2437,15 @@ void MenuController::OpenMenuImpl(MenuItemView* item, bool show) {
|
||||
@@ -2456,19 +2466,15 @@ void MenuController::OpenMenuImpl(MenuItemView* item, bool show) {
|
||||
}
|
||||
item->GetSubmenu()->ShowAt(params);
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@ capturer was window or screen-specific, as the IDs remain valid for
|
|||
generic capturer as well.
|
||||
|
||||
diff --git a/content/browser/media/capture/desktop_capture_device.cc b/content/browser/media/capture/desktop_capture_device.cc
|
||||
index 7c254d907f8fd02c16de17fe6887df290d2210ac..a28b4b8eefc9182e9f8af8e280c5812b2fbf42f2 100644
|
||||
index a5b88b74d26d5daf6e535acbdcbf68f5e7874601..c20bf38712ff1624941aa6b8b1e492c303ddde32 100644
|
||||
--- a/content/browser/media/capture/desktop_capture_device.cc
|
||||
+++ b/content/browser/media/capture/desktop_capture_device.cc
|
||||
@@ -941,9 +941,16 @@ std::unique_ptr<media::VideoCaptureDevice> DesktopCaptureDevice::Create(
|
||||
|
|
|
@ -20,10 +20,10 @@ index 299c4d2b1b80a28a2032898025e69167f49dd09f..79f3665e30870a07bd876a8bfdb313e9
|
|||
}
|
||||
|
||||
diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h
|
||||
index fb83711948c2249bbcb488b17adac83ac69b00e3..049d16ab195d2d02cc0b9017f9a62ba6ddf6c957 100644
|
||||
index 96f343fa47565d6f88925548b1f1c7f9b5c8736c..c89c12ec8b7f06b6f8bfbf60a2e81270129eeeb5 100644
|
||||
--- a/content/public/browser/content_browser_client.h
|
||||
+++ b/content/public/browser/content_browser_client.h
|
||||
@@ -342,6 +342,11 @@ class CONTENT_EXPORT ContentBrowserClient {
|
||||
@@ -338,6 +338,11 @@ class CONTENT_EXPORT ContentBrowserClient {
|
||||
|
||||
virtual ~ContentBrowserClient() = default;
|
||||
|
||||
|
|
|
@ -41,10 +41,10 @@ index ff42cfbb6a228e902317c7e3ab035d8437d5dd62..e27f177ce27e177abf6cee84cd466e7a
|
|||
// Returns whether `Initialize` has already been invoked in the process.
|
||||
// Initialization is a one-way operation (i.e., this method cannot return
|
||||
diff --git a/gin/v8_initializer.cc b/gin/v8_initializer.cc
|
||||
index f37529e144a0b7010571d0b8241272e730e0f752..e2ff4bdcc0f474c13659f7527c04cbc85af99b57 100644
|
||||
index e58685fb6943fbe7627b777e1a4e1958e9cc6391..e7d14253e0a6324e6603923c5d6e0769a051b475 100644
|
||||
--- a/gin/v8_initializer.cc
|
||||
+++ b/gin/v8_initializer.cc
|
||||
@@ -541,7 +541,8 @@ void SetFeatureFlags() {
|
||||
@@ -539,7 +539,8 @@ void SetFeatureFlags() {
|
||||
void V8Initializer::Initialize(IsolateHolder::ScriptMode mode,
|
||||
const std::string& js_command_line_flags,
|
||||
bool disallow_v8_feature_flag_overrides,
|
||||
|
@ -54,7 +54,7 @@ index f37529e144a0b7010571d0b8241272e730e0f752..e2ff4bdcc0f474c13659f7527c04cbc8
|
|||
static bool v8_is_initialized = false;
|
||||
if (v8_is_initialized)
|
||||
return;
|
||||
@@ -556,7 +557,8 @@ void V8Initializer::Initialize(IsolateHolder::ScriptMode mode,
|
||||
@@ -554,7 +555,8 @@ void V8Initializer::Initialize(IsolateHolder::ScriptMode mode,
|
||||
}
|
||||
SetFlags(mode, js_command_line_flags);
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: gritsettings_resource_ids.patch
|
|||
Add electron resources file to the list of resource ids generation.
|
||||
|
||||
diff --git a/tools/gritsettings/resource_ids.spec b/tools/gritsettings/resource_ids.spec
|
||||
index f78fa04ff6bfc43d2554ea833945e89b08e8ec14..b91c709678fab27dccd5d5280bfb19941f9c7d39 100644
|
||||
index f24d7bfb0baa81b9079c6950bd21dbc81a97d992..99a8a8b9c81d18a1d25c373a03a5f6677d5edd46 100644
|
||||
--- a/tools/gritsettings/resource_ids.spec
|
||||
+++ b/tools/gritsettings/resource_ids.spec
|
||||
@@ -1541,6 +1541,11 @@
|
||||
|
|
|
@ -9,7 +9,7 @@ but due to the nature of electron, we need to load the v8 snapshot
|
|||
in the browser process.
|
||||
|
||||
diff --git a/content/app/content_main_runner_impl.cc b/content/app/content_main_runner_impl.cc
|
||||
index ddd7372fe74cb44a9022ef5d05659feb958e1d47..81b2d4ffddb31d5703d6e4db2f50644a300b20d7 100644
|
||||
index c16307602fdb4f3b149962876afd8e3ef76fd305..c53bea0517ba3e2f7e127a27737240f054d6b6ed 100644
|
||||
--- a/content/app/content_main_runner_impl.cc
|
||||
+++ b/content/app/content_main_runner_impl.cc
|
||||
@@ -291,11 +291,8 @@ void LoadV8SnapshotFile(const base::CommandLine& command_line) {
|
||||
|
|
|
@ -9,10 +9,10 @@ be created for each child process, despite logs being redirected to a
|
|||
file.
|
||||
|
||||
diff --git a/content/app/content_main.cc b/content/app/content_main.cc
|
||||
index 3bd846f90f1cc0cf9ed80d5649c0e65e00a20c7c..3c0c6850ec191c9974f9a12b0c933895270631e8 100644
|
||||
index 37fd2c1125c2661f4089ed11c746e929e6082855..3ef6ec9e07d7a94a11ab0bd997483e348f579617 100644
|
||||
--- a/content/app/content_main.cc
|
||||
+++ b/content/app/content_main.cc
|
||||
@@ -333,16 +333,14 @@ NO_STACK_PROTECTOR int RunContentProcess(
|
||||
@@ -332,16 +332,14 @@ NO_STACK_PROTECTOR int RunContentProcess(
|
||||
|
||||
#if BUILDFLAG(IS_WIN)
|
||||
base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
|
||||
|
|
|
@ -7,10 +7,10 @@ Allows embedders to get a handle to the gdk_pixbuf
|
|||
library already loaded in the process.
|
||||
|
||||
diff --git a/ui/gtk/gtk_compat.cc b/ui/gtk/gtk_compat.cc
|
||||
index 37bb48273cf4833c88622f1158aebfee9423d085..2009a095abfae3207d73c47245e061ff3f9cef80 100644
|
||||
index bcd86e7a9e870b274d0c6487a691f23ad1888079..4b192c90ce82ddddaedf14970919447e8f43dd7c 100644
|
||||
--- a/ui/gtk/gtk_compat.cc
|
||||
+++ b/ui/gtk/gtk_compat.cc
|
||||
@@ -69,11 +69,6 @@ void* GetLibGio() {
|
||||
@@ -68,11 +68,6 @@ void* GetLibGio() {
|
||||
return libgio;
|
||||
}
|
||||
|
||||
|
@ -22,7 +22,7 @@ index 37bb48273cf4833c88622f1158aebfee9423d085..2009a095abfae3207d73c47245e061ff
|
|||
void* GetLibGdk3() {
|
||||
static void* libgdk3 = DlOpen("libgdk-3.so.0");
|
||||
return libgdk3;
|
||||
@@ -169,6 +164,11 @@ gfx::Insets InsetsFromGtkBorder(const GtkBorder& border) {
|
||||
@@ -165,6 +160,11 @@ gfx::Insets InsetsFromGtkBorder(const GtkBorder& border) {
|
||||
|
||||
} // namespace
|
||||
|
||||
|
@ -31,14 +31,14 @@ index 37bb48273cf4833c88622f1158aebfee9423d085..2009a095abfae3207d73c47245e061ff
|
|||
+ return libgdk_pixbuf;
|
||||
+}
|
||||
+
|
||||
bool LoadGtk() {
|
||||
static bool loaded = LoadGtkImpl();
|
||||
bool LoadGtk(ui::LinuxUiBackend backend) {
|
||||
static bool loaded = LoadGtkImpl(backend);
|
||||
return loaded;
|
||||
diff --git a/ui/gtk/gtk_compat.h b/ui/gtk/gtk_compat.h
|
||||
index 19f73cc179d82a3729c5fe37883460ac05f4d0c3..17aa0b95bd6158ed02c03095c1687185a057fe62 100644
|
||||
index 841e2e8fcdbe2da4aac487badd4d352476e461a2..e458df649546fa3bee10e24f0edac147186cc152 100644
|
||||
--- a/ui/gtk/gtk_compat.h
|
||||
+++ b/ui/gtk/gtk_compat.h
|
||||
@@ -41,6 +41,9 @@ using SkColor = uint32_t;
|
||||
@@ -42,6 +42,9 @@ using SkColor = uint32_t;
|
||||
|
||||
namespace gtk {
|
||||
|
||||
|
@ -46,5 +46,5 @@ index 19f73cc179d82a3729c5fe37883460ac05f4d0c3..17aa0b95bd6158ed02c03095c1687185
|
|||
+void* GetLibGdkPixbuf();
|
||||
+
|
||||
// Loads libgtk and related libraries and returns true on success.
|
||||
bool LoadGtk();
|
||||
bool LoadGtk(ui::LinuxUiBackend backend);
|
||||
|
||||
|
|
|
@ -35,10 +35,10 @@ system font by checking if it's kCTFontPriorityAttribute is set to
|
|||
system priority.
|
||||
|
||||
diff --git a/base/BUILD.gn b/base/BUILD.gn
|
||||
index f73ed42f84ca486bc0f103370823dbaa14afa35f..14c923fe4239fd98aaa7e5cfcb301c3fa88f74cc 100644
|
||||
index 08919400794cc35e0c0e41958c0b295c3fd1c2d2..ab9645ed3503a9654a19c76b68cc6534b52ebc8d 100644
|
||||
--- a/base/BUILD.gn
|
||||
+++ b/base/BUILD.gn
|
||||
@@ -1047,6 +1047,7 @@ component("base") {
|
||||
@@ -1048,6 +1048,7 @@ component("base") {
|
||||
"//build:ios_buildflags",
|
||||
"//build/config/compiler:compiler_buildflags",
|
||||
"//third_party/modp_b64",
|
||||
|
@ -703,7 +703,7 @@ index e38279e46d8fe621db24b4d94f5811459b4ca6b5..26592c97be3474a24f294d3cf2e74627
|
|||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
diff --git a/content/common/BUILD.gn b/content/common/BUILD.gn
|
||||
index f0a6a88e72dda05656d987fdf7676571f4d05d8c..fa6510d2dcda2dd4691db6362427d284a84598b8 100644
|
||||
index 88b96916fc3a4577806e3626086edac7e601ee28..a890f471ad770448d825a07cf7a734b8e6c7c745 100644
|
||||
--- a/content/common/BUILD.gn
|
||||
+++ b/content/common/BUILD.gn
|
||||
@@ -278,6 +278,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 c4dc3e7c7aafcadbe840f7f641ad95f772cf5cd1..a22d4279a578b3247c9835214c51bab84566b10b 100644
|
||||
index b3286de2a30c93f9f0c92c54bf3e1dfca3593614..fbf2e7e26f069d9973ec6d44a8ce18f39a8f68d8 100644
|
||||
--- a/content/test/BUILD.gn
|
||||
+++ b/content/test/BUILD.gn
|
||||
@@ -667,6 +667,7 @@ static_library("test_support") {
|
||||
|
@ -824,7 +824,7 @@ index c4dc3e7c7aafcadbe840f7f641ad95f772cf5cd1..a22d4279a578b3247c9835214c51bab8
|
|||
]
|
||||
|
||||
if (!(is_chromeos && target_cpu == "arm64" && current_cpu == "arm")) {
|
||||
@@ -3276,6 +3279,7 @@ test("content_unittests") {
|
||||
@@ -3277,6 +3280,7 @@ test("content_unittests") {
|
||||
"//ui/shell_dialogs:shell_dialogs",
|
||||
"//ui/webui:test_support",
|
||||
"//url",
|
||||
|
@ -1566,7 +1566,7 @@ index 2d982e757d94976ec68863726db8e8a85b1034e5..d2ec88c6f923e9f7147d33ccd53c3659
|
|||
|
||||
if (is_ios) {
|
||||
diff --git a/ui/accessibility/platform/browser_accessibility_manager_mac.mm b/ui/accessibility/platform/browser_accessibility_manager_mac.mm
|
||||
index 7dd52ce4181579b5aec872f5fe34aa441e2b917f..cb3c8fb948841efab374c122fef59908bed21234 100644
|
||||
index aeb728b14fbbbb3e0c1e71d0c3997b59c29244ce..7480d0f42db88fe4058b87e0debe597c51d35730 100644
|
||||
--- a/ui/accessibility/platform/browser_accessibility_manager_mac.mm
|
||||
+++ b/ui/accessibility/platform/browser_accessibility_manager_mac.mm
|
||||
@@ -14,6 +14,7 @@
|
||||
|
@ -1577,7 +1577,7 @@ index 7dd52ce4181579b5aec872f5fe34aa441e2b917f..cb3c8fb948841efab374c122fef59908
|
|||
#include "ui/accelerated_widget_mac/accelerated_widget_mac.h"
|
||||
#include "ui/accessibility/accessibility_features.h"
|
||||
#include "ui/accessibility/ax_role_properties.h"
|
||||
@@ -21,7 +22,9 @@
|
||||
@@ -22,7 +23,9 @@
|
||||
#include "ui/accessibility/platform/ax_private_webkit_constants_mac.h"
|
||||
#import "ui/accessibility/platform/browser_accessibility_cocoa.h"
|
||||
#import "ui/accessibility/platform/browser_accessibility_mac.h"
|
||||
|
@ -1587,7 +1587,7 @@ index 7dd52ce4181579b5aec872f5fe34aa441e2b917f..cb3c8fb948841efab374c122fef59908
|
|||
|
||||
namespace {
|
||||
|
||||
@@ -230,6 +233,7 @@ void PostAnnouncementNotification(NSString* announcement,
|
||||
@@ -231,6 +234,7 @@ void PostAnnouncementNotification(NSString* announcement,
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -1595,7 +1595,7 @@ index 7dd52ce4181579b5aec872f5fe34aa441e2b917f..cb3c8fb948841efab374c122fef59908
|
|||
BrowserAccessibilityManager* root_manager = GetManagerForRootFrame();
|
||||
if (root_manager) {
|
||||
BrowserAccessibilityManagerMac* root_manager_mac =
|
||||
@@ -252,6 +256,7 @@ void PostAnnouncementNotification(NSString* announcement,
|
||||
@@ -253,6 +257,7 @@ void PostAnnouncementNotification(NSString* announcement,
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
@ -1603,7 +1603,7 @@ index 7dd52ce4181579b5aec872f5fe34aa441e2b917f..cb3c8fb948841efab374c122fef59908
|
|||
|
||||
// Use native VoiceOver support for live regions.
|
||||
BrowserAccessibilityCocoa* retained_node = native_node;
|
||||
@@ -670,6 +675,7 @@ void PostAnnouncementNotification(NSString* announcement,
|
||||
@@ -700,6 +705,7 @@ void PostAnnouncementNotification(NSString* announcement,
|
||||
return window == [NSApp accessibilityFocusedWindow];
|
||||
}
|
||||
|
||||
|
@ -1611,7 +1611,7 @@ index 7dd52ce4181579b5aec872f5fe34aa441e2b917f..cb3c8fb948841efab374c122fef59908
|
|||
// TODO(accessibility): We need a solution to the problem described below.
|
||||
// If the window is NSAccessibilityRemoteUIElement, there are some challenges:
|
||||
// 1. NSApp is the browser which spawned the PWA, and what it considers the
|
||||
@@ -698,6 +704,7 @@ void PostAnnouncementNotification(NSString* announcement,
|
||||
@@ -728,6 +734,7 @@ void PostAnnouncementNotification(NSString* announcement,
|
||||
if ([window isKindOfClass:[NSAccessibilityRemoteUIElement class]]) {
|
||||
return true;
|
||||
}
|
||||
|
@ -1873,10 +1873,10 @@ index fe3f85073e31de487a08e57d7f9b07aa4eccf8f3..cf5b07203c8bd559a404600cc98cc8ec
|
|||
// enough.
|
||||
return PlatformFontMac::SystemFontType::kGeneral;
|
||||
diff --git a/ui/views/BUILD.gn b/ui/views/BUILD.gn
|
||||
index 5db36a904d4db82d3597bc170d09e340ffa013a6..85e63e9d7d1071202af957238d34a51dfd587987 100644
|
||||
index 5732c3a537e7e69ac3a70c2c9999ad391e158d72..4e566d501c9c087ca4c0ad861a876a5e4213e772 100644
|
||||
--- a/ui/views/BUILD.gn
|
||||
+++ b/ui/views/BUILD.gn
|
||||
@@ -722,6 +722,8 @@ component("views") {
|
||||
@@ -719,6 +719,8 @@ component("views") {
|
||||
"IOSurface.framework",
|
||||
"QuartzCore.framework",
|
||||
]
|
||||
|
@ -1885,7 +1885,7 @@ index 5db36a904d4db82d3597bc170d09e340ffa013a6..85e63e9d7d1071202af957238d34a51d
|
|||
}
|
||||
|
||||
if (is_win) {
|
||||
@@ -1152,6 +1154,8 @@ source_set("test_support") {
|
||||
@@ -1148,6 +1150,8 @@ source_set("test_support") {
|
||||
"//ui/base/mojom:ui_base_types",
|
||||
]
|
||||
|
||||
|
|
|
@ -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 6909b86ed5d5f2494e8f7f6124011b47a8c8529e..c8df6a966bc549d810ebc6c75d3806ab726a5ee9 100644
|
||||
index 33e28b6b05a56ba621b982c6263c89506625172a..329edb751d675b2de8cb6250cf16d6bf98ac925f 100644
|
||||
--- a/content/browser/notifications/blink_notification_service_impl_unittest.cc
|
||||
+++ b/content/browser/notifications/blink_notification_service_impl_unittest.cc
|
||||
@@ -134,7 +134,7 @@ class BlinkNotificationServiceImplTest : public ::testing::Test {
|
||||
@@ -135,7 +135,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_,
|
||||
|
@ -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 f58f409b7d96e3718a03d3e9f0a9bc4cea7ffc13..dbe3d6ee9afa0fad9c72949e4d64b1060ba58249 100644
|
||||
index a7171b7074311ac5a09b21927c2f71b0b5502d6e..d26bc2d74f085dc5a0bdb52b016f1fa6fc6ecb8f 100644
|
||||
--- a/content/browser/renderer_host/render_process_host_impl.cc
|
||||
+++ b/content/browser/renderer_host/render_process_host_impl.cc
|
||||
@@ -2224,7 +2224,7 @@ void RenderProcessHostImpl::CreateNotificationService(
|
||||
@@ -2220,7 +2220,7 @@ void RenderProcessHostImpl::CreateNotificationService(
|
||||
case RenderProcessHost::NotificationServiceCreatorType::kSharedWorker:
|
||||
case RenderProcessHost::NotificationServiceCreatorType::kDedicatedWorker: {
|
||||
storage_partition_impl_->GetPlatformNotificationContext()->CreateService(
|
||||
|
@ -145,7 +145,7 @@ index f58f409b7d96e3718a03d3e9f0a9bc4cea7ffc13..dbe3d6ee9afa0fad9c72949e4d64b106
|
|||
creator_type, std::move(receiver));
|
||||
break;
|
||||
}
|
||||
@@ -2232,7 +2232,7 @@ void RenderProcessHostImpl::CreateNotificationService(
|
||||
@@ -2228,7 +2228,7 @@ void RenderProcessHostImpl::CreateNotificationService(
|
||||
CHECK(rfh);
|
||||
|
||||
storage_partition_impl_->GetPlatformNotificationContext()->CreateService(
|
||||
|
|
|
@ -36,7 +36,7 @@ index c821349f35116f07988b2b58a6521e73a514548c..2b8f41a584c5d14ea9d72d67c2abe71e
|
|||
Microsoft::WRL::ComPtr<ID3D11Texture2D> d3d11_texture;
|
||||
|
||||
diff --git a/media/video/renderable_gpu_memory_buffer_video_frame_pool.cc b/media/video/renderable_gpu_memory_buffer_video_frame_pool.cc
|
||||
index 08835b2859886ce9a50bb0874ce6437066e3d42a..8f8e1b32a02ee3b3030c6a16ab79de3865a714d2 100644
|
||||
index 673ccbc445cd05486f0337a3e27190ee90f54e6b..4dba267259e3cbed64aa7828a5eb4e0c70665c64 100644
|
||||
--- a/media/video/renderable_gpu_memory_buffer_video_frame_pool.cc
|
||||
+++ b/media/video/renderable_gpu_memory_buffer_video_frame_pool.cc
|
||||
@@ -189,7 +189,7 @@ gfx::Size GetBufferSizeInPixelsForVideoPixelFormat(
|
||||
|
|
|
@ -38,7 +38,7 @@ 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 5147f664438673a6c2b87daa69a9a4f4c5bbbf43..6040f8fb695853169b793dedc5f644c52bb42bde 100644
|
||||
index 1cf3d510a165ff8de195eb9b835490cd3a5f7389..8cf36280324ddcbdffe6396baeb13828251b285a 100644
|
||||
--- a/chrome/browser/ui/views/overlay/video_overlay_window_views.cc
|
||||
+++ b/chrome/browser/ui/views/overlay/video_overlay_window_views.cc
|
||||
@@ -20,9 +20,11 @@
|
||||
|
@ -62,7 +62,7 @@ index 5147f664438673a6c2b87daa69a9a4f4c5bbbf43..6040f8fb695853169b793dedc5f644c5
|
|||
#include "chrome/browser/shell_integration_win.h"
|
||||
#include "content/public/browser/render_widget_host_view.h"
|
||||
#include "ui/aura/window.h"
|
||||
@@ -421,7 +423,7 @@ std::unique_ptr<VideoOverlayWindowViews> VideoOverlayWindowViews::Create(
|
||||
@@ -428,7 +430,7 @@ std::unique_ptr<VideoOverlayWindowViews> VideoOverlayWindowViews::Create(
|
||||
overlay_window->Init(std::move(params));
|
||||
overlay_window->OnRootViewReady();
|
||||
|
||||
|
@ -71,7 +71,7 @@ index 5147f664438673a6c2b87daa69a9a4f4c5bbbf43..6040f8fb695853169b793dedc5f644c5
|
|||
std::wstring app_user_model_id;
|
||||
Browser* browser = chrome::FindBrowserWithTab(controller->GetWebContents());
|
||||
if (browser) {
|
||||
@@ -1136,10 +1138,12 @@ void VideoOverlayWindowViews::SetUpViews() {
|
||||
@@ -1153,10 +1155,12 @@ void VideoOverlayWindowViews::SetUpViews() {
|
||||
l10n_util::GetStringUTF16(
|
||||
IDS_PICTURE_IN_PICTURE_LIVE_CAPTION_CONTROL_TEXT));
|
||||
live_caption_button->SetSize(kActionButtonSize);
|
||||
|
|
|
@ -8,7 +8,7 @@ Chrome moved the SetCursor IPC message to mojo, which we use to tell OSR about `
|
|||
Refs: https://chromium-review.googlesource.com/c/chromium/src/+/2172779
|
||||
|
||||
diff --git a/content/browser/renderer_host/render_widget_host_delegate.h b/content/browser/renderer_host/render_widget_host_delegate.h
|
||||
index db4ab8d9467b255cbd3884ef51f2136852449d4d..ef0c3eb1d4473409a842e3ae32bf6224e6191d81 100644
|
||||
index 18c6ee6657e5edb5e90102dd9a20e5c0efeed843..af763ad4e441e54556854cd40c4cb9098f84bb58 100644
|
||||
--- a/content/browser/renderer_host/render_widget_host_delegate.h
|
||||
+++ b/content/browser/renderer_host/render_widget_host_delegate.h
|
||||
@@ -27,6 +27,7 @@
|
||||
|
@ -19,7 +19,7 @@ index db4ab8d9467b255cbd3884ef51f2136852449d4d..ef0c3eb1d4473409a842e3ae32bf6224
|
|||
#include "ui/gfx/native_widget_types.h"
|
||||
|
||||
namespace blink {
|
||||
@@ -301,6 +302,9 @@ class CONTENT_EXPORT RenderWidgetHostDelegate {
|
||||
@@ -299,6 +300,9 @@ class CONTENT_EXPORT RenderWidgetHostDelegate {
|
||||
// Returns the associated RenderViewHostDelegateView*, if possible.
|
||||
virtual RenderViewHostDelegateView* GetDelegateView();
|
||||
|
||||
|
@ -30,10 +30,10 @@ index db4ab8d9467b255cbd3884ef51f2136852449d4d..ef0c3eb1d4473409a842e3ae32bf6224
|
|||
// RenderWidgetHost on the primary main frame, and false otherwise.
|
||||
virtual bool IsWidgetForPrimaryMainFrame(RenderWidgetHostImpl*);
|
||||
diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc
|
||||
index 624094ba6459f3663a12f868c4cb47dfa9f8dce1..eed851d277c5efa2d5ca594e18eaf7dff3a5d11d 100644
|
||||
index 1874493c21087f1cf3a565956bd48ebac6892135..59768b75a3f304056dcf6b5d665f6e41cdcfafcc 100644
|
||||
--- a/content/browser/renderer_host/render_widget_host_impl.cc
|
||||
+++ b/content/browser/renderer_host/render_widget_host_impl.cc
|
||||
@@ -2069,6 +2069,9 @@ void RenderWidgetHostImpl::SetCursor(const ui::Cursor& cursor) {
|
||||
@@ -2070,6 +2070,9 @@ void RenderWidgetHostImpl::SetCursor(const ui::Cursor& cursor) {
|
||||
if (view_) {
|
||||
view_->UpdateCursor(cursor);
|
||||
}
|
||||
|
@ -44,10 +44,10 @@ index 624094ba6459f3663a12f868c4cb47dfa9f8dce1..eed851d277c5efa2d5ca594e18eaf7df
|
|||
|
||||
void RenderWidgetHostImpl::ShowContextMenuAtPoint(
|
||||
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
|
||||
index 089a46b598bbf527bed6734c96497172651b5497..487e6d8db0d19e9a2257d17fcbe348544e7905b7 100644
|
||||
index 133718bc2e270ac7ed02ef4a7f17bf4efb773d5c..2789ab0d799653e34b2a3f81333daf5e0cf3ecf5 100644
|
||||
--- a/content/browser/web_contents/web_contents_impl.cc
|
||||
+++ b/content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -6054,6 +6054,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() {
|
||||
@@ -6039,6 +6039,11 @@ TextInputManager* WebContentsImpl::GetTextInputManager() {
|
||||
return text_input_manager_.get();
|
||||
}
|
||||
|
||||
|
@ -60,7 +60,7 @@ index 089a46b598bbf527bed6734c96497172651b5497..487e6d8db0d19e9a2257d17fcbe34854
|
|||
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 af40964893c694d8b4bcf4a59ab8074bef12b605..acab669869a5a6704ac9d069e41612a10e632d72 100644
|
||||
index 3ca82fa72be14a535ddc4e5d93c3eb3a664054ad..1e5a53e1e3219dd387a258fc07ef1d43f3090d4b 100644
|
||||
--- a/content/browser/web_contents/web_contents_impl.h
|
||||
+++ b/content/browser/web_contents/web_contents_impl.h
|
||||
@@ -1174,6 +1174,7 @@ class CONTENT_EXPORT WebContentsImpl
|
||||
|
@ -72,7 +72,7 @@ index af40964893c694d8b4bcf4a59ab8074bef12b605..acab669869a5a6704ac9d069e41612a1
|
|||
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 575856fc8972873c31f542b25d7d56d7a33d2ca4..44526c4e87998a556e21b20901d50fdb28096ec9 100644
|
||||
index 44725366d085208bc63206497365d7b93bbe61bf..907e9f3b11771ef8e3a2810718ab0d5dbfc50fd5 100644
|
||||
--- a/content/public/browser/web_contents_observer.h
|
||||
+++ b/content/public/browser/web_contents_observer.h
|
||||
@@ -36,6 +36,7 @@
|
||||
|
|
|
@ -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 5b543e82abb17cbb91bf37fa6bac016b6053eb93..117b6b05b3a1c39183a45830b97255cab529c646 100644
|
||||
index 717a221b93ecd3137b61fb21811f421e575aad8d..b8d78d1af2ea435d55eb8586c92dde16ed02d7ee 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
|
||||
@@ -82,11 +82,13 @@
|
||||
|
@ -25,7 +25,7 @@ index 5b543e82abb17cbb91bf37fa6bac016b6053eb93..117b6b05b3a1c39183a45830b97255ca
|
|||
#include "components/tabs/public/tab_interface.h"
|
||||
#if BUILDFLAG(ENABLE_PLATFORM_APPS)
|
||||
#include "extensions/browser/extension_registry.h" // nogncheck
|
||||
@@ -262,182 +264,10 @@ bool MaybeIsLocalUNCPath(const base::FilePath& path) {
|
||||
@@ -262,190 +264,10 @@ bool MaybeIsLocalUNCPath(const base::FilePath& path) {
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@ -36,13 +36,23 @@ index 5b543e82abb17cbb91bf37fa6bac016b6053eb93..117b6b05b3a1c39183a45830b97255ca
|
|||
-// A wrapper around `base::NormalizeFilePath` that returns its result instead of
|
||||
-// using an out parameter.
|
||||
-base::FilePath NormalizeFilePath(const base::FilePath& path) {
|
||||
- CHECK(path.IsAbsolute());
|
||||
- base::FilePath absolute_path = path;
|
||||
- if (!absolute_path.IsAbsolute()) {
|
||||
- absolute_path = base::MakeAbsoluteFilePath(absolute_path);
|
||||
- }
|
||||
-
|
||||
- if (absolute_path.empty()) {
|
||||
- return absolute_path;
|
||||
- }
|
||||
-
|
||||
- // TODO(crbug.com/368130513O): On Windows, this call will fail if the target
|
||||
- // file path is greater than MAX_PATH. We should decide how to handle this
|
||||
- // scenario.
|
||||
- // If the path is invalid, the `base::NormalizeFilePath` will also return
|
||||
- // false, so we return the empty path.
|
||||
- base::FilePath normalized_path;
|
||||
- if (!base::NormalizeFilePath(path, &normalized_path)) {
|
||||
- return path;
|
||||
- if (!base::NormalizeFilePath(absolute_path, &normalized_path)) {
|
||||
- return absolute_path;
|
||||
- }
|
||||
- CHECK_EQ(path.empty(), normalized_path.empty());
|
||||
- return normalized_path;
|
||||
|
@ -70,10 +80,8 @@ index 5b543e82abb17cbb91bf37fa6bac016b6053eb93..117b6b05b3a1c39183a45830b97255ca
|
|||
- {base::DIR_MODULE, nullptr, BlockType::kBlockAllChildren},
|
||||
- {base::DIR_ASSETS, nullptr, BlockType::kBlockAllChildren},
|
||||
- // And neither should the configuration of at least the currently
|
||||
- // running
|
||||
- // Chrome instance (note that this does not take --user-data-dir
|
||||
- // command
|
||||
- // line overrides into account).
|
||||
- // running Chrome instance (note that this does not take
|
||||
- // --user-data-dir command line overrides into account).
|
||||
- {chrome::DIR_USER_DATA, nullptr, BlockType::kBlockAllChildren},
|
||||
- // ~/.ssh is pretty sensitive on all platforms, so block access to
|
||||
- // that.
|
||||
|
@ -212,7 +220,7 @@ index 5b543e82abb17cbb91bf37fa6bac016b6053eb93..117b6b05b3a1c39183a45830b97255ca
|
|||
|
||||
// Checks if `path` should be blocked by the `rules`.
|
||||
// The BlockType of the nearest ancestor of a path to check is what
|
||||
@@ -1261,16 +1091,6 @@ struct ChromeFileSystemAccessPermissionContext::OriginState {
|
||||
@@ -1269,16 +1091,6 @@ struct ChromeFileSystemAccessPermissionContext::OriginState {
|
||||
std::unique_ptr<base::RetainingOneShotTimer> cleanup_timer;
|
||||
};
|
||||
|
||||
|
@ -229,7 +237,7 @@ index 5b543e82abb17cbb91bf37fa6bac016b6053eb93..117b6b05b3a1c39183a45830b97255ca
|
|||
ChromeFileSystemAccessPermissionContext::
|
||||
ChromeFileSystemAccessPermissionContext(content::BrowserContext* context,
|
||||
const base::Clock* clock)
|
||||
@@ -1289,7 +1109,7 @@ ChromeFileSystemAccessPermissionContext::
|
||||
@@ -1297,7 +1109,7 @@ ChromeFileSystemAccessPermissionContext::
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
one_time_permissions_tracker_.Observe(
|
||||
OneTimePermissionsTrackerFactory::GetForBrowserContext(context));
|
||||
|
@ -238,7 +246,7 @@ index 5b543e82abb17cbb91bf37fa6bac016b6053eb93..117b6b05b3a1c39183a45830b97255ca
|
|||
auto* provider = web_app::WebAppProvider::GetForWebApps(
|
||||
Profile::FromBrowserContext(profile_));
|
||||
if (provider) {
|
||||
@@ -2551,7 +2371,7 @@ void ChromeFileSystemAccessPermissionContext::OnShutdown() {
|
||||
@@ -2563,7 +2375,7 @@ void ChromeFileSystemAccessPermissionContext::OnShutdown() {
|
||||
one_time_permissions_tracker_.Reset();
|
||||
}
|
||||
|
||||
|
@ -247,29 +255,29 @@ index 5b543e82abb17cbb91bf37fa6bac016b6053eb93..117b6b05b3a1c39183a45830b97255ca
|
|||
void ChromeFileSystemAccessPermissionContext::OnWebAppInstalled(
|
||||
const webapps::AppId& app_id) {
|
||||
if (!base::FeatureList::IsEnabled(
|
||||
@@ -3108,11 +2928,7 @@ bool ChromeFileSystemAccessPermissionContext::OriginHasExtendedPermission(
|
||||
const url::Origin& origin) {
|
||||
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
|
||||
|
||||
@@ -2898,11 +2710,7 @@ bool ChromeFileSystemAccessPermissionContext::
|
||||
HandleType handle_type,
|
||||
UserAction user_action,
|
||||
GrantType grant_type) {
|
||||
-#if BUILDFLAG(IS_ANDROID)
|
||||
- // TODO(crbug.com/40101963): Enable when android persisted permissions are
|
||||
- // implemented.
|
||||
- return false;
|
||||
-#else
|
||||
+#if 0
|
||||
+#elif 0
|
||||
if (!base::FeatureList::IsEnabled(
|
||||
features::kFileSystemAccessPersistentPermissions)) {
|
||||
return false;
|
||||
@@ -3156,6 +2972,7 @@ bool ChromeFileSystemAccessPermissionContext::OriginHasExtendedPermission(
|
||||
: WebAppInstallStatus::kUninstalled;
|
||||
return app_has_os_integration;
|
||||
@@ -2953,6 +2761,7 @@ bool ChromeFileSystemAccessPermissionContext::
|
||||
|
||||
return false;
|
||||
#endif // BUILDFLAG(IS_ANDROID)
|
||||
+ return false;
|
||||
}
|
||||
|
||||
void ChromeFileSystemAccessPermissionContext::SetOriginExtendedPermissionByUser(
|
||||
std::vector<FileRequestData> ChromeFileSystemAccessPermissionContext::
|
||||
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 f647100981fd98d8511d07a6d7e100910e38a0f2..14e1b3c8ec78429f5a845f54cc973e7c77ea8bc4 100644
|
||||
index 51bec8ef2a5212494625898fdeb500344525d8f4..6deb4b86b35c2ba38849e25af7691ac858dfaa3e 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
|
||||
@@ -9,10 +9,13 @@
|
||||
|
@ -294,7 +302,7 @@ index f647100981fd98d8511d07a6d7e100910e38a0f2..14e1b3c8ec78429f5a845f54cc973e7c
|
|||
#include "components/enterprise/buildflags/buildflags.h"
|
||||
#include "components/permissions/features.h"
|
||||
#include "components/permissions/object_permission_context_base.h"
|
||||
@@ -403,6 +407,183 @@ class ChromeFileSystemAccessPermissionContext
|
||||
@@ -403,6 +407,191 @@ class ChromeFileSystemAccessPermissionContext
|
||||
return is_block_path_rules_init_complete_;
|
||||
}
|
||||
|
||||
|
@ -305,13 +313,23 @@ index f647100981fd98d8511d07a6d7e100910e38a0f2..14e1b3c8ec78429f5a845f54cc973e7c
|
|||
+ // A wrapper around `base::NormalizeFilePath` that returns its result instead of
|
||||
+ // using an out parameter.
|
||||
+ static base::FilePath NormalizeFilePath(const base::FilePath& path) {
|
||||
+ CHECK(path.IsAbsolute());
|
||||
+ base::FilePath absolute_path = path;
|
||||
+ if (!absolute_path.IsAbsolute()) {
|
||||
+ absolute_path = base::MakeAbsoluteFilePath(absolute_path);
|
||||
+ }
|
||||
+
|
||||
+ if (absolute_path.empty()) {
|
||||
+ return absolute_path;
|
||||
+ }
|
||||
+
|
||||
+ // TODO(crbug.com/368130513O): On Windows, this call will fail if the target
|
||||
+ // file path is greater than MAX_PATH. We should decide how to handle this
|
||||
+ // scenario.
|
||||
+ // If the path is invalid, the `base::NormalizeFilePath` will also return
|
||||
+ // false, so we return the empty path.
|
||||
+ base::FilePath normalized_path;
|
||||
+ if (!base::NormalizeFilePath(path, &normalized_path)) {
|
||||
+ return path;
|
||||
+ if (!base::NormalizeFilePath(absolute_path, &normalized_path)) {
|
||||
+ return absolute_path;
|
||||
+ }
|
||||
+ CHECK_EQ(path.empty(), normalized_path.empty());
|
||||
+ return normalized_path;
|
||||
|
@ -339,10 +357,8 @@ index f647100981fd98d8511d07a6d7e100910e38a0f2..14e1b3c8ec78429f5a845f54cc973e7c
|
|||
+ {base::DIR_MODULE, nullptr, BlockType::kBlockAllChildren},
|
||||
+ {base::DIR_ASSETS, nullptr, BlockType::kBlockAllChildren},
|
||||
+ // And neither should the configuration of at least the currently
|
||||
+ // running
|
||||
+ // Chrome instance (note that this does not take --user-data-dir
|
||||
+ // command
|
||||
+ // line overrides into account).
|
||||
+ // running Chrome instance (note that this does not take
|
||||
+ // --user-data-dir command line overrides into account).
|
||||
+ {chrome::DIR_USER_DATA, nullptr, BlockType::kBlockAllChildren},
|
||||
+ // ~/.ssh is pretty sensitive on all platforms, so block access to
|
||||
+ // that.
|
||||
|
|
|
@ -7,23 +7,25 @@ Subject: refactor: expose HostImportModuleDynamically and
|
|||
This is so that Electron can blend Blink's and Node's implementations of these isolate handlers.
|
||||
|
||||
diff --git a/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc b/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc
|
||||
index ebcac005c83a04fe56761853f89717514de1eb90..d9a7a073a885f0e6b38cd222860282d220fa6d94 100644
|
||||
index 5f3ef90d8c8f175455a663c407e574d694bfcf7b..4c7048931200a8cf09a6fba3d99b7347debda3f3 100644
|
||||
--- a/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc
|
||||
+++ b/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc
|
||||
@@ -633,7 +633,9 @@ bool WasmJSPromiseIntegrationEnabledCallback(v8::Local<v8::Context> context) {
|
||||
@@ -628,8 +628,9 @@ bool WasmJSPromiseIntegrationEnabledCallback(v8::Local<v8::Context> context) {
|
||||
return RuntimeEnabledFeatures::WebAssemblyJSPromiseIntegrationEnabled(
|
||||
execution_context);
|
||||
}
|
||||
+} // namespace
|
||||
|
||||
-v8::MaybeLocal<v8::Promise> HostImportModuleWithPhaseDynamically(
|
||||
+} // namespace
|
||||
+
|
||||
+v8::MaybeLocal<v8::Promise> V8Initializer::HostImportModuleWithPhaseDynamically(
|
||||
v8::Local<v8::Context> context,
|
||||
v8::Local<v8::Data> v8_host_defined_options,
|
||||
v8::Local<v8::Value> v8_referrer_resource_url,
|
||||
@@ -712,19 +714,21 @@ v8::MaybeLocal<v8::Promise> HostImportModuleWithPhaseDynamically(
|
||||
@@ -707,20 +708,23 @@ v8::MaybeLocal<v8::Promise> HostImportModuleWithPhaseDynamically(
|
||||
|
||||
return resolver->Promise().V8Promise();
|
||||
}
|
||||
+// namespace
|
||||
|
||||
+namespace {
|
||||
v8::MaybeLocal<v8::Promise> HostImportModuleDynamically(
|
||||
|
@ -44,8 +46,8 @@ index ebcac005c83a04fe56761853f89717514de1eb90..d9a7a073a885f0e6b38cd222860282d2
|
|||
+void V8Initializer::HostGetImportMetaProperties(v8::Local<v8::Context> context,
|
||||
v8::Local<v8::Module> module,
|
||||
v8::Local<v8::Object> meta) {
|
||||
v8::Isolate* isolate = context->GetIsolate();
|
||||
@@ -751,6 +755,7 @@ void HostGetImportMetaProperties(v8::Local<v8::Context> context,
|
||||
v8::Isolate* isolate = v8::Isolate::GetCurrent();
|
||||
@@ -747,6 +751,7 @@ void HostGetImportMetaProperties(v8::Local<v8::Context> context,
|
||||
meta->CreateDataProperty(context, resolve_key, resolve_value).ToChecked();
|
||||
}
|
||||
|
||||
|
@ -53,7 +55,7 @@ index ebcac005c83a04fe56761853f89717514de1eb90..d9a7a073a885f0e6b38cd222860282d2
|
|||
bool IsDOMExceptionWrapper(v8::Isolate* isolate, v8::Local<v8::Object> object) {
|
||||
return V8DOMException::HasInstance(isolate, object);
|
||||
}
|
||||
@@ -781,7 +786,6 @@ void EmitDevToolsEvent(v8::Isolate* isolate) {
|
||||
@@ -777,7 +782,6 @@ void EmitDevToolsEvent(v8::Isolate* isolate) {
|
||||
|
||||
} // namespace
|
||||
|
||||
|
@ -61,15 +63,15 @@ index ebcac005c83a04fe56761853f89717514de1eb90..d9a7a073a885f0e6b38cd222860282d2
|
|||
void V8Initializer::InitializeV8Common(v8::Isolate* isolate) {
|
||||
// Set up garbage collection before setting up anything else as V8 may trigger
|
||||
// GCs during Blink setup.
|
||||
@@ -798,9 +802,9 @@ void V8Initializer::InitializeV8Common(v8::Isolate* isolate) {
|
||||
@@ -794,9 +798,9 @@ void V8Initializer::InitializeV8Common(v8::Isolate* isolate) {
|
||||
SharedArrayBufferConstructorEnabledCallback);
|
||||
isolate->SetHostImportModuleDynamicallyCallback(HostImportModuleDynamically);
|
||||
isolate->SetHostImportModuleWithPhaseDynamicallyCallback(
|
||||
- HostImportModuleWithPhaseDynamically);
|
||||
+ V8Initializer::HostImportModuleWithPhaseDynamically);
|
||||
+ V8Initializer::HostImportModuleWithPhaseDynamically);
|
||||
isolate->SetHostInitializeImportMetaObjectCallback(
|
||||
- HostGetImportMetaProperties);
|
||||
+ V8Initializer::HostGetImportMetaProperties);
|
||||
+ V8Initializer::HostGetImportMetaProperties);
|
||||
isolate->SetIsJSApiWrapperNativeErrorCallback(IsDOMExceptionWrapper);
|
||||
isolate->SetMetricsRecorder(std::make_shared<V8MetricsRecorder>(isolate));
|
||||
|
||||
|
|
|
@ -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 bf228613571121a4c6b788b4c066db04fbcb6054..ee6f25c382cea4d58dc7d321b16fe8afbaee0d4e 100644
|
||||
index 56a2bedb0f594d9ccd0dfb9046ef1da64e1fc72b..ecc3064977e60b136a37ff374043dfe82aded822 100644
|
||||
--- a/content/browser/web_contents/web_contents_impl.cc
|
||||
+++ b/content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -10167,25 +10167,13 @@ void WebContentsImpl::RendererUnresponsive(
|
||||
@@ -10151,25 +10151,13 @@ void WebContentsImpl::RendererUnresponsive(
|
||||
base::RepeatingClosure hang_monitor_restarter) {
|
||||
OPTIONAL_TRACE_EVENT1("content", "WebContentsImpl::RendererUnresponsive",
|
||||
"render_widget_host", render_widget_host);
|
||||
|
|
|
@ -10,10 +10,10 @@ on Windows. We should refactor our code so that this patch isn't
|
|||
necessary.
|
||||
|
||||
diff --git a/testing/variations/fieldtrial_testing_config.json b/testing/variations/fieldtrial_testing_config.json
|
||||
index 9af54f1a85253564fbae1a7e084942a01fb3afe0..5061ad4ff5d29ced59511c43b4d802bf17fbf731 100644
|
||||
index 46b07b1118b9edc7b99c022adaa389cf79ec84a4..c141c2db6bca409fe6b8610a59dd8df0feee5c9d 100644
|
||||
--- a/testing/variations/fieldtrial_testing_config.json
|
||||
+++ b/testing/variations/fieldtrial_testing_config.json
|
||||
@@ -24765,6 +24765,21 @@
|
||||
@@ -24826,6 +24826,21 @@
|
||||
]
|
||||
}
|
||||
],
|
||||
|
@ -67,7 +67,7 @@ index 58063f2452dc484a97c79b382067d9b34875e344..d586436498263c595a17454f54644d2d
|
|||
|
||||
} // namespace views::features
|
||||
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 e32e408e9dc4baf897669f5610b8bb3647cd8a92..068ab7f71ecb6c49e1a2894df845c508e3075b3e 100644
|
||||
index 513899d94b28a8389133f943d41e74ae1bcd5dbd..ca11e7008d3c528c643b760d0a7e980065f90629 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
|
||||
@@ -83,6 +83,23 @@ namespace {
|
||||
|
@ -264,7 +264,7 @@ index e32e408e9dc4baf897669f5610b8bb3647cd8a92..068ab7f71ecb6c49e1a2894df845c508
|
|||
}
|
||||
|
||||
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 8753821149dc870b9865884dccf1ba4dec7e29f2..4919475a7999e5136c3bf02cf21b8eff5010f2fe 100644
|
||||
index dbf242fd1a9b4eb4f63065a89983de5c2319e25f..21049abeffd7b4bf314aec9fb5a63d5f773e53f5 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
|
||||
@@ -175,7 +175,7 @@ class VIEWS_EXPORT DesktopWindowTreeHostWin
|
||||
|
|
|
@ -6,10 +6,10 @@ Subject: scroll_bounce_flag.patch
|
|||
Patch to make scrollBounce option work.
|
||||
|
||||
diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc
|
||||
index 80243a6aefffb76e34f8e8a3057474c15fcf3c88..9d7e1a64bcf08632cc391548d5063920582700cd 100644
|
||||
index 315f5755176b5332ee61413fd904ac38d8f80e7e..06f6f8a10c834bff89f13f3e8579caf02f3b25e9 100644
|
||||
--- a/content/renderer/render_thread_impl.cc
|
||||
+++ b/content/renderer/render_thread_impl.cc
|
||||
@@ -1304,7 +1304,7 @@ bool RenderThreadImpl::IsLcdTextEnabled() {
|
||||
@@ -1274,7 +1274,7 @@ bool RenderThreadImpl::IsLcdTextEnabled() {
|
||||
}
|
||||
|
||||
bool RenderThreadImpl::IsElasticOverscrollEnabled() {
|
||||
|
|
|
@ -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 dbe3d6ee9afa0fad9c72949e4d64b1060ba58249..9b24e3d4ad9f9d272f751b3afe4851aafb153c78 100644
|
||||
index d26bc2d74f085dc5a0bdb52b016f1fa6fc6ecb8f..f66c99e7442874a66fed1ff16ad59baf6466bb90 100644
|
||||
--- a/content/browser/renderer_host/render_process_host_impl.cc
|
||||
+++ b/content/browser/renderer_host/render_process_host_impl.cc
|
||||
@@ -1839,6 +1839,10 @@ bool RenderProcessHostImpl::Init() {
|
||||
@@ -1835,6 +1835,10 @@ bool RenderProcessHostImpl::Init() {
|
||||
std::unique_ptr<SandboxedProcessLauncherDelegate> sandbox_delegate =
|
||||
std::make_unique<RendererSandboxedProcessLauncherDelegateWin>(
|
||||
*cmd_line, IsPdf(), IsJitDisabled());
|
||||
|
|
|
@ -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 16bb1ca75b2e105b381ee5564f9332d4eeb2e7d7..4a2222d2008089a596ae724952f342f620bedeaf 100644
|
||||
index ef4630910570726091ad9170864a1509a4558524..debe658de2e7eedeca52b5db71dc62d0a801a92f 100644
|
||||
--- a/content/browser/web_contents/web_contents_impl.cc
|
||||
+++ b/content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -4088,6 +4088,13 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
|
||||
@@ -4083,6 +4083,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 16bb1ca75b2e105b381ee5564f9332d4eeb2e7d7..4a2222d2008089a596ae724952f342f6
|
|||
std::unique_ptr<WebContentsViewDelegate> delegate =
|
||||
GetContentClient()->browser()->GetWebContentsViewDelegate(this);
|
||||
|
||||
@@ -4098,6 +4105,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
|
||||
@@ -4093,6 +4100,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
|
||||
view_ = CreateWebContentsView(this, std::move(delegate),
|
||||
&render_view_host_delegate_view_);
|
||||
}
|
||||
|
@ -35,7 +35,7 @@ index 16bb1ca75b2e105b381ee5564f9332d4eeb2e7d7..4a2222d2008089a596ae724952f342f6
|
|||
CHECK(view_.get());
|
||||
|
||||
diff --git a/content/public/browser/web_contents.h b/content/public/browser/web_contents.h
|
||||
index c5daa643bd6e222c48f91145d3a6dcd66fc840eb..da5555d89c51b9edd7ca0ea6ebcbb912e0d21667 100644
|
||||
index 4a0bc0e58db7054b4d89d227a6c6d3339c6b0add..6939841b8df5da608c6cd7bcdd92bd6ac93c6242 100644
|
||||
--- a/content/public/browser/web_contents.h
|
||||
+++ b/content/public/browser/web_contents.h
|
||||
@@ -126,11 +126,14 @@ class GuestPageHolder;
|
||||
|
|
|
@ -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 34155be5e9071dc0de8fec707ab9736b2c81460b..5b304f4951b9a321be4731c93b2f6f94fedc23ee 100644
|
||||
index b0de3dc68c75388591e54cc3c1d8e8c7a56a8773..2db251a125895a8473b11bd24fac06e7b627e9e2 100644
|
||||
--- a/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
+++ b/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
@@ -8832,6 +8832,17 @@ void RenderFrameHostImpl::EnterFullscreen(
|
||||
@@ -8863,6 +8863,17 @@ void RenderFrameHostImpl::EnterFullscreen(
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -37,10 +37,10 @@ index 34155be5e9071dc0de8fec707ab9736b2c81460b..5b304f4951b9a321be4731c93b2f6f94
|
|||
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 4a2222d2008089a596ae724952f342f620bedeaf..79d3e54d8cfb212c86ae53357051127dd6d4534c 100644
|
||||
index debe658de2e7eedeca52b5db71dc62d0a801a92f..46d99f6f6b5e71dba05703b6730a2c9959235ab1 100644
|
||||
--- a/content/browser/web_contents/web_contents_impl.cc
|
||||
+++ b/content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -4378,21 +4378,25 @@ KeyboardEventProcessingResult WebContentsImpl::PreHandleKeyboardEvent(
|
||||
@@ -4373,21 +4373,25 @@ KeyboardEventProcessingResult WebContentsImpl::PreHandleKeyboardEvent(
|
||||
const input::NativeWebKeyboardEvent& event) {
|
||||
OPTIONAL_TRACE_EVENT0(TRACE_DISABLED_BY_DEFAULT("content.verbose"),
|
||||
"WebContentsImpl::PreHandleKeyboardEvent");
|
||||
|
@ -78,7 +78,7 @@ index 4a2222d2008089a596ae724952f342f620bedeaf..79d3e54d8cfb212c86ae53357051127d
|
|||
}
|
||||
|
||||
bool WebContentsImpl::HandleMouseEvent(const blink::WebMouseEvent& event) {
|
||||
@@ -4551,7 +4555,7 @@ void WebContentsImpl::EnterFullscreenMode(
|
||||
@@ -4546,7 +4550,7 @@ void WebContentsImpl::EnterFullscreenMode(
|
||||
OPTIONAL_TRACE_EVENT0("content", "WebContentsImpl::EnterFullscreenMode");
|
||||
DCHECK(CanEnterFullscreenMode(requesting_frame));
|
||||
DCHECK(requesting_frame->IsActive());
|
||||
|
|
|
@ -10,10 +10,10 @@ An attempt to upstream this was made, but rejected:
|
|||
https://chromium-review.googlesource.com/c/chromium/src/+/1954347
|
||||
|
||||
diff --git a/content/public/renderer/content_renderer_client.h b/content/public/renderer/content_renderer_client.h
|
||||
index 6d5859d9e3938c8c92550b02478674d733d97eed..d07ef9333059319869506f8c9eb347f546b5084d 100644
|
||||
index 6eb48c506834b50e9bd49a42bbb8f9f32093abfb..64c10021f5d0e58d9fcb740d5a56651d989503df 100644
|
||||
--- a/content/public/renderer/content_renderer_client.h
|
||||
+++ b/content/public/renderer/content_renderer_client.h
|
||||
@@ -407,6 +407,11 @@ class CONTENT_EXPORT ContentRendererClient {
|
||||
@@ -408,6 +408,11 @@ class CONTENT_EXPORT ContentRendererClient {
|
||||
virtual void DidInitializeWorkerContextOnWorkerThread(
|
||||
v8::Local<v8::Context> context) {}
|
||||
|
||||
|
@ -26,10 +26,10 @@ index 6d5859d9e3938c8c92550b02478674d733d97eed..d07ef9333059319869506f8c9eb347f5
|
|||
// An empty URL is returned if the URL is not overriden.
|
||||
virtual GURL OverrideFlashEmbedWithHTML(const GURL& url);
|
||||
diff --git a/content/renderer/renderer_blink_platform_impl.cc b/content/renderer/renderer_blink_platform_impl.cc
|
||||
index e54e804b10fa03bf787ca182c42020a778cddc40..d3ca239403d73cc4150e44f0f447f0058495f105 100644
|
||||
index e81aa09532159236a760a70c1251cc0f99910ae3..4149b272f3403678d275f29c5a08ea1398093cc6 100644
|
||||
--- a/content/renderer/renderer_blink_platform_impl.cc
|
||||
+++ b/content/renderer/renderer_blink_platform_impl.cc
|
||||
@@ -903,6 +903,12 @@ void RendererBlinkPlatformImpl::WillStopWorkerThread() {
|
||||
@@ -905,6 +905,12 @@ void RendererBlinkPlatformImpl::WillStopWorkerThread() {
|
||||
WorkerThreadRegistry::Instance()->WillStopCurrentWorkerThread();
|
||||
}
|
||||
|
||||
|
@ -43,10 +43,10 @@ index e54e804b10fa03bf787ca182c42020a778cddc40..d3ca239403d73cc4150e44f0f447f005
|
|||
const v8::Local<v8::Context>& worker) {
|
||||
GetContentClient()->renderer()->DidInitializeWorkerContextOnWorkerThread(
|
||||
diff --git a/content/renderer/renderer_blink_platform_impl.h b/content/renderer/renderer_blink_platform_impl.h
|
||||
index b4fc08dc16842e4f37775739653732a812a33751..11fa54d4a00c1659e55b61d68cbd1684337e0409 100644
|
||||
index c2c2b533e42cfcc8c3ecdde1ab6ed9bc2a353b5e..b2238f512b30e64399a901a3c9f430e5be54c27c 100644
|
||||
--- a/content/renderer/renderer_blink_platform_impl.h
|
||||
+++ b/content/renderer/renderer_blink_platform_impl.h
|
||||
@@ -197,6 +197,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl {
|
||||
@@ -200,6 +200,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl {
|
||||
void DidStartWorkerThread() override;
|
||||
void WillStopWorkerThread() override;
|
||||
void WorkerContextCreated(const v8::Local<v8::Context>& worker) override;
|
||||
|
@ -55,10 +55,10 @@ index b4fc08dc16842e4f37775739653732a812a33751..11fa54d4a00c1659e55b61d68cbd1684
|
|||
const blink::WebSecurityOrigin& script_origin) override;
|
||||
blink::ProtocolHandlerSecurityLevel GetProtocolHandlerSecurityLevel(
|
||||
diff --git a/third_party/blink/public/platform/platform.h b/third_party/blink/public/platform/platform.h
|
||||
index eee2a8d0176f335139c2ac587f783b22d4157abd..63c51ba32eaaa7bfdb0a5c2045297893ace6b4cf 100644
|
||||
index dfc5c935005bf8fb59d4bf5dd6dcb31468128cd6..4b8c2223d4d7eebe88c54d232ac8f8e290f14dd6 100644
|
||||
--- a/third_party/blink/public/platform/platform.h
|
||||
+++ b/third_party/blink/public/platform/platform.h
|
||||
@@ -672,6 +672,7 @@ class BLINK_PLATFORM_EXPORT Platform {
|
||||
@@ -675,6 +675,7 @@ class BLINK_PLATFORM_EXPORT Platform {
|
||||
virtual void DidStartWorkerThread() {}
|
||||
virtual void WillStopWorkerThread() {}
|
||||
virtual void WorkerContextCreated(const v8::Local<v8::Context>& worker) {}
|
||||
|
@ -67,7 +67,7 @@ index eee2a8d0176f335139c2ac587f783b22d4157abd..63c51ba32eaaa7bfdb0a5c2045297893
|
|||
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 f78547d6087ed46faa200a9942dcf94a70138704..1a2d78f86b1495fbbae8e28fc95b0e761682e503 100644
|
||||
index 59d45baa40d92cab583b8d7795a79ba0e251f60c..ac513f34fbf7c80c5aaa6d0121a845743a6a4df6 100644
|
||||
--- a/third_party/blink/renderer/core/workers/worker_thread.cc
|
||||
+++ b/third_party/blink/renderer/core/workers/worker_thread.cc
|
||||
@@ -822,6 +822,12 @@ void WorkerThread::PrepareForShutdownOnWorkerThread() {
|
||||
|
|
|
@ -19,10 +19,10 @@ that clearly establishes the worker script is ready for evaluation with the scop
|
|||
initialized.
|
||||
|
||||
diff --git a/content/public/renderer/content_renderer_client.h b/content/public/renderer/content_renderer_client.h
|
||||
index d07ef9333059319869506f8c9eb347f546b5084d..d82da492ba468ddb9d267b5c5ac2df3d7342db10 100644
|
||||
index 64c10021f5d0e58d9fcb740d5a56651d989503df..cacb4effd675db544a26198d056d5c45edaeff22 100644
|
||||
--- a/content/public/renderer/content_renderer_client.h
|
||||
+++ b/content/public/renderer/content_renderer_client.h
|
||||
@@ -407,6 +407,11 @@ class CONTENT_EXPORT ContentRendererClient {
|
||||
@@ -408,6 +408,11 @@ class CONTENT_EXPORT ContentRendererClient {
|
||||
virtual void DidInitializeWorkerContextOnWorkerThread(
|
||||
v8::Local<v8::Context> context) {}
|
||||
|
||||
|
@ -35,10 +35,10 @@ index d07ef9333059319869506f8c9eb347f546b5084d..d82da492ba468ddb9d267b5c5ac2df3d
|
|||
// from the worker thread.
|
||||
virtual void WillDestroyWorkerContextOnWorkerThread(
|
||||
diff --git a/content/renderer/renderer_blink_platform_impl.cc b/content/renderer/renderer_blink_platform_impl.cc
|
||||
index d3ca239403d73cc4150e44f0f447f0058495f105..15444c470a92bd06f141acc06286a3d7c78e673a 100644
|
||||
index 4149b272f3403678d275f29c5a08ea1398093cc6..c13d5115cf0f3b34dedea8dd49e21a63025d1c4f 100644
|
||||
--- a/content/renderer/renderer_blink_platform_impl.cc
|
||||
+++ b/content/renderer/renderer_blink_platform_impl.cc
|
||||
@@ -915,6 +915,12 @@ void RendererBlinkPlatformImpl::WorkerContextCreated(
|
||||
@@ -917,6 +917,12 @@ void RendererBlinkPlatformImpl::WorkerContextCreated(
|
||||
worker);
|
||||
}
|
||||
|
||||
|
@ -52,10 +52,10 @@ index d3ca239403d73cc4150e44f0f447f0058495f105..15444c470a92bd06f141acc06286a3d7
|
|||
const blink::WebSecurityOrigin& script_origin) {
|
||||
return GetContentClient()->renderer()->AllowScriptExtensionForServiceWorker(
|
||||
diff --git a/content/renderer/renderer_blink_platform_impl.h b/content/renderer/renderer_blink_platform_impl.h
|
||||
index 11fa54d4a00c1659e55b61d68cbd1684337e0409..ec1e49502b1a388aa8be1c95c24c772e586ca0e6 100644
|
||||
index b2238f512b30e64399a901a3c9f430e5be54c27c..6231d97d52de2245c6f9396d9769554fd590c128 100644
|
||||
--- a/content/renderer/renderer_blink_platform_impl.h
|
||||
+++ b/content/renderer/renderer_blink_platform_impl.h
|
||||
@@ -197,6 +197,8 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl {
|
||||
@@ -200,6 +200,8 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl {
|
||||
void DidStartWorkerThread() override;
|
||||
void WillStopWorkerThread() override;
|
||||
void WorkerContextCreated(const v8::Local<v8::Context>& worker) override;
|
||||
|
@ -65,10 +65,10 @@ index 11fa54d4a00c1659e55b61d68cbd1684337e0409..ec1e49502b1a388aa8be1c95c24c772e
|
|||
bool AllowScriptExtensionForServiceWorker(
|
||||
const blink::WebSecurityOrigin& script_origin) override;
|
||||
diff --git a/third_party/blink/public/platform/platform.h b/third_party/blink/public/platform/platform.h
|
||||
index 63c51ba32eaaa7bfdb0a5c2045297893ace6b4cf..cf3668e4d4d57de8a400c78ae5d36956a0f63622 100644
|
||||
index 4b8c2223d4d7eebe88c54d232ac8f8e290f14dd6..bfa276bb563f4a7f54da6c2b82cfb0c8f830a7dd 100644
|
||||
--- a/third_party/blink/public/platform/platform.h
|
||||
+++ b/third_party/blink/public/platform/platform.h
|
||||
@@ -672,6 +672,8 @@ class BLINK_PLATFORM_EXPORT Platform {
|
||||
@@ -675,6 +675,8 @@ class BLINK_PLATFORM_EXPORT Platform {
|
||||
virtual void DidStartWorkerThread() {}
|
||||
virtual void WillStopWorkerThread() {}
|
||||
virtual void WorkerContextCreated(const v8::Local<v8::Context>& worker) {}
|
||||
|
|
|
@ -10,10 +10,10 @@ to handle this without patching, but this is fairly clean for now and no longer
|
|||
patching legacy devtools code.
|
||||
|
||||
diff --git a/front_end/entrypoints/main/MainImpl.ts b/front_end/entrypoints/main/MainImpl.ts
|
||||
index d3d389e6c02ca3a7fb8c3011e878809252299199..51ab0bdbfd300be52bded05a051d2215a97ff791 100644
|
||||
index 1dbbb7ad02d287e476a0c29808daacf11be7ea84..b175ae60def58337d245e122918c3de7ebc00e77 100644
|
||||
--- a/front_end/entrypoints/main/MainImpl.ts
|
||||
+++ b/front_end/entrypoints/main/MainImpl.ts
|
||||
@@ -722,6 +722,8 @@ export class MainImpl {
|
||||
@@ -721,6 +721,8 @@ export class MainImpl {
|
||||
globalThis.Main = globalThis.Main || {};
|
||||
// @ts-expect-error Exported for Tests.js
|
||||
globalThis.Main.Main = MainImpl;
|
||||
|
|
|
@ -48,3 +48,4 @@ fix_task_starvation_in_inspector_context_test.patch
|
|||
fix_expose_readfilesync_override_for_modules.patch
|
||||
chore_remove_protocol_maybe_from_node_string.patch
|
||||
fix_-wmismatched-new-delete_in_debug_utils_cc.patch
|
||||
fix_array_out-of-bounds_read_in_boyer-moore_search.patch
|
||||
|
|
|
@ -0,0 +1,119 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Shelley Vohr <shelley.vohr@gmail.com>
|
||||
Date: Thu, 10 Jul 2025 08:36:12 +0000
|
||||
Subject: fix: array out-of-bounds read in Boyer-Moore search
|
||||
|
||||
Refs https://chromium-review.googlesource.com/c/chromium/src/+/6703757
|
||||
|
||||
The above CL enabled array bounds sanitization, which triggered a crash in a Node.js
|
||||
test which exposed an issue in Node.js implementation of Boyer-Moore string search.
|
||||
|
||||
Some Boyer-Moore search impl functions were using "biased pointer" arithmetic to
|
||||
create array pointers that point outside the actual array bounds.
|
||||
|
||||
When start_ is large this creates pointers far outside the valid memory range.
|
||||
While this worked by accident in practice, it's undefined behavior that the CL
|
||||
correctly prohibits.
|
||||
|
||||
diff --git a/deps/nbytes/include/nbytes.h b/deps/nbytes/include/nbytes.h
|
||||
index b012729c6cca8e42c94fd9b6a9c72301b4370de4..fec831840fc00eba27dd0b44e628b870301b6f10 100644
|
||||
--- a/deps/nbytes/include/nbytes.h
|
||||
+++ b/deps/nbytes/include/nbytes.h
|
||||
@@ -548,7 +548,11 @@ size_t StringSearch<Char>::BoyerMooreSearch(Vector subject,
|
||||
size_t start = start_;
|
||||
|
||||
int *bad_char_occurrence = bad_char_shift_table_;
|
||||
- int *good_suffix_shift = good_suffix_shift_table_ - start_;
|
||||
+
|
||||
+ auto good_suffix_get = [&](size_t idx) -> int {
|
||||
+ if (idx < start || idx - start > kBMMaxShift) return 0;
|
||||
+ return good_suffix_shift_table_[idx - start];
|
||||
+ };
|
||||
|
||||
Char last_char = pattern_[pattern_length - 1];
|
||||
size_t index = start_index;
|
||||
@@ -575,7 +579,7 @@ size_t StringSearch<Char>::BoyerMooreSearch(Vector subject,
|
||||
index +=
|
||||
pattern_length - 1 - CharOccurrence(bad_char_occurrence, last_char);
|
||||
} else {
|
||||
- int gs_shift = good_suffix_shift[j + 1];
|
||||
+ int gs_shift = good_suffix_get(j + 1);
|
||||
int bc_occ = CharOccurrence(bad_char_occurrence, c);
|
||||
int shift = j - bc_occ;
|
||||
if (gs_shift > shift) {
|
||||
@@ -596,17 +600,22 @@ void StringSearch<Char>::PopulateBoyerMooreTable() {
|
||||
const size_t start = start_;
|
||||
const size_t length = pattern_length - start;
|
||||
|
||||
- // Biased tables so that we can use pattern indices as table indices,
|
||||
- // even if we only cover the part of the pattern from offset start.
|
||||
- int *shift_table = good_suffix_shift_table_ - start_;
|
||||
- int *suffix_table = suffix_table_ - start_;
|
||||
+ auto shift_get = [&](size_t idx) -> int& {
|
||||
+ if (idx < start) abort();
|
||||
+ return good_suffix_shift_table_[idx - start];
|
||||
+ };
|
||||
+
|
||||
+ auto suffix_get = [&](size_t idx) -> int& {
|
||||
+ if (idx < start) abort();
|
||||
+ return suffix_table_[idx - start];
|
||||
+ };
|
||||
|
||||
// Initialize table.
|
||||
for (size_t i = start; i < pattern_length; i++) {
|
||||
- shift_table[i] = length;
|
||||
+ shift_get(i) = length;
|
||||
}
|
||||
- shift_table[pattern_length] = 1;
|
||||
- suffix_table[pattern_length] = pattern_length + 1;
|
||||
+ shift_get(pattern_length) = 1;
|
||||
+ suffix_get(pattern_length) = pattern_length + 1;
|
||||
|
||||
if (pattern_length <= start) {
|
||||
return;
|
||||
@@ -620,22 +629,22 @@ void StringSearch<Char>::PopulateBoyerMooreTable() {
|
||||
while (i > start) {
|
||||
Char c = pattern_[i - 1];
|
||||
while (suffix <= pattern_length && c != pattern_[suffix - 1]) {
|
||||
- if (static_cast<size_t>(shift_table[suffix]) == length) {
|
||||
- shift_table[suffix] = suffix - i;
|
||||
+ if (static_cast<size_t>(shift_get(suffix)) == length) {
|
||||
+ shift_get(suffix) = suffix - i;
|
||||
}
|
||||
- suffix = suffix_table[suffix];
|
||||
+ suffix = suffix_get(suffix);
|
||||
}
|
||||
- suffix_table[--i] = --suffix;
|
||||
+ suffix_get(--i) = --suffix;
|
||||
if (suffix == pattern_length) {
|
||||
// No suffix to extend, so we check against last_char only.
|
||||
while ((i > start) && (pattern_[i - 1] != last_char)) {
|
||||
- if (static_cast<size_t>(shift_table[pattern_length]) == length) {
|
||||
- shift_table[pattern_length] = pattern_length - i;
|
||||
+ if (static_cast<size_t>(shift_get(pattern_length)) == length) {
|
||||
+ shift_get(pattern_length) = pattern_length - i;
|
||||
}
|
||||
- suffix_table[--i] = pattern_length;
|
||||
+ suffix_get(--i) = pattern_length;
|
||||
}
|
||||
if (i > start) {
|
||||
- suffix_table[--i] = --suffix;
|
||||
+ suffix_get(--i) = --suffix;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -643,11 +652,11 @@ void StringSearch<Char>::PopulateBoyerMooreTable() {
|
||||
// Build shift table using suffixes.
|
||||
if (suffix < pattern_length) {
|
||||
for (size_t i = start; i <= pattern_length; i++) {
|
||||
- if (static_cast<size_t>(shift_table[i]) == length) {
|
||||
- shift_table[i] = suffix - start;
|
||||
+ if (static_cast<size_t>(shift_get(i)) == length) {
|
||||
+ shift_get(i) = suffix - start;
|
||||
}
|
||||
if (i == suffix) {
|
||||
- suffix = suffix_table[suffix];
|
||||
+ suffix = suffix_get(suffix);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -169,7 +169,6 @@ void ElectronContentClient::AddPlugins(
|
|||
|
||||
content::ContentPluginInfo pdf_info;
|
||||
pdf_info.is_internal = true;
|
||||
pdf_info.is_out_of_process = true;
|
||||
pdf_info.name = kPDFInternalPluginName;
|
||||
pdf_info.description = kPDFPluginDescription;
|
||||
// This isn't a real file path; it's just used as a unique identifier.
|
||||
|
|
|
@ -365,7 +365,7 @@ struct Converter<net::SecureDnsMode> {
|
|||
|
||||
namespace electron::api {
|
||||
|
||||
gin::WrapperInfo App::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
gin::DeprecatedWrapperInfo App::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
|
||||
namespace {
|
||||
|
||||
|
|
|
@ -57,7 +57,7 @@ enum class JumpListResult : int;
|
|||
namespace api {
|
||||
|
||||
class App final : public ElectronBrowserClient::Delegate,
|
||||
public gin::Wrappable<App>,
|
||||
public gin::DeprecatedWrappable<App>,
|
||||
public gin_helper::EventEmitterMixin<App>,
|
||||
private BrowserObserver,
|
||||
private content::GpuDataManagerObserver,
|
||||
|
@ -67,7 +67,7 @@ class App final : public ElectronBrowserClient::Delegate,
|
|||
static App* Get();
|
||||
|
||||
// gin::Wrappable
|
||||
static gin::WrapperInfo kWrapperInfo;
|
||||
static gin::DeprecatedWrapperInfo kWrapperInfo;
|
||||
gin::ObjectTemplateBuilder GetObjectTemplateBuilder(
|
||||
v8::Isolate* isolate) override;
|
||||
const char* GetTypeName() override;
|
||||
|
|
|
@ -18,7 +18,8 @@
|
|||
|
||||
namespace electron::api {
|
||||
|
||||
gin::WrapperInfo AutoUpdater::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
gin::DeprecatedWrapperInfo AutoUpdater::kWrapperInfo = {
|
||||
gin::kEmbedderNativeGin};
|
||||
|
||||
AutoUpdater::AutoUpdater() {
|
||||
auto_updater::AutoUpdater::SetDelegate(this);
|
||||
|
|
|
@ -19,7 +19,7 @@ class Handle;
|
|||
|
||||
namespace electron::api {
|
||||
|
||||
class AutoUpdater final : public gin::Wrappable<AutoUpdater>,
|
||||
class AutoUpdater final : public gin::DeprecatedWrappable<AutoUpdater>,
|
||||
public gin_helper::EventEmitterMixin<AutoUpdater>,
|
||||
public auto_updater::Delegate,
|
||||
private WindowListObserver {
|
||||
|
@ -27,7 +27,7 @@ class AutoUpdater final : public gin::Wrappable<AutoUpdater>,
|
|||
static gin::Handle<AutoUpdater> Create(v8::Isolate* isolate);
|
||||
|
||||
// gin::Wrappable
|
||||
static gin::WrapperInfo kWrapperInfo;
|
||||
static gin::DeprecatedWrapperInfo kWrapperInfo;
|
||||
gin::ObjectTemplateBuilder GetObjectTemplateBuilder(
|
||||
v8::Isolate* isolate) override;
|
||||
const char* GetTypeName() override;
|
||||
|
|
|
@ -274,7 +274,7 @@ std::string StringToCookieSameSite(const std::string* str_ptr,
|
|||
|
||||
} // namespace
|
||||
|
||||
gin::WrapperInfo Cookies::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
gin::DeprecatedWrapperInfo Cookies::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
|
||||
Cookies::Cookies(ElectronBrowserContext* browser_context)
|
||||
: browser_context_{browser_context} {
|
||||
|
|
|
@ -33,14 +33,14 @@ class ElectronBrowserContext;
|
|||
|
||||
namespace api {
|
||||
|
||||
class Cookies final : public gin::Wrappable<Cookies>,
|
||||
class Cookies final : public gin::DeprecatedWrappable<Cookies>,
|
||||
public gin_helper::EventEmitterMixin<Cookies> {
|
||||
public:
|
||||
static gin::Handle<Cookies> Create(v8::Isolate* isolate,
|
||||
ElectronBrowserContext* browser_context);
|
||||
|
||||
// gin::Wrappable
|
||||
static gin::WrapperInfo kWrapperInfo;
|
||||
static gin::DeprecatedWrapperInfo kWrapperInfo;
|
||||
gin::ObjectTemplateBuilder GetObjectTemplateBuilder(
|
||||
v8::Isolate* isolate) override;
|
||||
const char* GetTypeName() override;
|
||||
|
|
|
@ -143,7 +143,8 @@ class DataPipeReader {
|
|||
|
||||
} // namespace
|
||||
|
||||
gin::WrapperInfo DataPipeHolder::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
gin::DeprecatedWrapperInfo DataPipeHolder::kWrapperInfo = {
|
||||
gin::kEmbedderNativeGin};
|
||||
|
||||
DataPipeHolder::DataPipeHolder(const network::DataElement& element)
|
||||
: id_(base::NumberToString(++g_next_id)) {
|
||||
|
|
|
@ -20,10 +20,10 @@ class Handle;
|
|||
namespace electron::api {
|
||||
|
||||
// Retains reference to the data pipe.
|
||||
class DataPipeHolder final : public gin::Wrappable<DataPipeHolder> {
|
||||
class DataPipeHolder final : public gin::DeprecatedWrappable<DataPipeHolder> {
|
||||
public:
|
||||
// gin::Wrappable
|
||||
static gin::WrapperInfo kWrapperInfo;
|
||||
static gin::DeprecatedWrapperInfo kWrapperInfo;
|
||||
const char* GetTypeName() override;
|
||||
|
||||
static gin::Handle<DataPipeHolder> Create(
|
||||
|
|
|
@ -24,7 +24,7 @@ using content::DevToolsAgentHost;
|
|||
|
||||
namespace electron::api {
|
||||
|
||||
gin::WrapperInfo Debugger::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
gin::DeprecatedWrapperInfo Debugger::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
|
||||
Debugger::Debugger(v8::Isolate* isolate, content::WebContents* web_contents)
|
||||
: content::WebContentsObserver(web_contents), web_contents_(web_contents) {}
|
||||
|
|
|
@ -32,7 +32,7 @@ class Promise;
|
|||
|
||||
namespace electron::api {
|
||||
|
||||
class Debugger final : public gin::Wrappable<Debugger>,
|
||||
class Debugger final : public gin::DeprecatedWrappable<Debugger>,
|
||||
public gin_helper::EventEmitterMixin<Debugger>,
|
||||
public content::DevToolsAgentHostClient,
|
||||
private content::WebContentsObserver {
|
||||
|
@ -41,7 +41,7 @@ class Debugger final : public gin::Wrappable<Debugger>,
|
|||
content::WebContents* web_contents);
|
||||
|
||||
// gin::Wrappable
|
||||
static gin::WrapperInfo kWrapperInfo;
|
||||
static gin::DeprecatedWrapperInfo kWrapperInfo;
|
||||
gin::ObjectTemplateBuilder GetObjectTemplateBuilder(
|
||||
v8::Isolate* isolate) override;
|
||||
const char* GetTypeName() override;
|
||||
|
|
|
@ -218,7 +218,8 @@ struct Converter<electron::api::DesktopCapturer::Source> {
|
|||
|
||||
namespace electron::api {
|
||||
|
||||
gin::WrapperInfo DesktopCapturer::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
gin::DeprecatedWrapperInfo DesktopCapturer::kWrapperInfo = {
|
||||
gin::kEmbedderNativeGin};
|
||||
|
||||
DesktopCapturer::DesktopCapturer(v8::Isolate* isolate) {}
|
||||
|
||||
|
@ -521,7 +522,8 @@ bool DesktopCapturer::IsDisplayMediaSystemPickerAvailable() {
|
|||
|
||||
gin::ObjectTemplateBuilder DesktopCapturer::GetObjectTemplateBuilder(
|
||||
v8::Isolate* isolate) {
|
||||
return gin::Wrappable<DesktopCapturer>::GetObjectTemplateBuilder(isolate)
|
||||
return gin::DeprecatedWrappable<DesktopCapturer>::GetObjectTemplateBuilder(
|
||||
isolate)
|
||||
.SetMethod("startHandling", &DesktopCapturer::StartHandling);
|
||||
}
|
||||
|
||||
|
|
|
@ -21,7 +21,7 @@ class Handle;
|
|||
|
||||
namespace electron::api {
|
||||
|
||||
class DesktopCapturer final : public gin::Wrappable<DesktopCapturer>,
|
||||
class DesktopCapturer final : public gin::DeprecatedWrappable<DesktopCapturer>,
|
||||
public gin_helper::Pinnable<DesktopCapturer>,
|
||||
private DesktopMediaListObserver {
|
||||
public:
|
||||
|
@ -44,7 +44,7 @@ class DesktopCapturer final : public gin::Wrappable<DesktopCapturer>,
|
|||
bool fetch_window_icons);
|
||||
|
||||
// gin::Wrappable
|
||||
static gin::WrapperInfo kWrapperInfo;
|
||||
static gin::DeprecatedWrapperInfo kWrapperInfo;
|
||||
gin::ObjectTemplateBuilder GetObjectTemplateBuilder(
|
||||
v8::Isolate* isolate) override;
|
||||
const char* GetTypeName() override;
|
||||
|
|
|
@ -68,7 +68,8 @@ const void* kElectronApiDownloadItemKey = &kElectronApiDownloadItemKey;
|
|||
|
||||
} // namespace
|
||||
|
||||
gin::WrapperInfo DownloadItem::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
gin::DeprecatedWrapperInfo DownloadItem::kWrapperInfo = {
|
||||
gin::kEmbedderNativeGin};
|
||||
|
||||
// static
|
||||
DownloadItem* DownloadItem::FromDownloadItem(download::DownloadItem* item) {
|
||||
|
|
|
@ -25,7 +25,7 @@ class Handle;
|
|||
|
||||
namespace electron::api {
|
||||
|
||||
class DownloadItem final : public gin::Wrappable<DownloadItem>,
|
||||
class DownloadItem final : public gin::DeprecatedWrappable<DownloadItem>,
|
||||
public gin_helper::Pinnable<DownloadItem>,
|
||||
public gin_helper::EventEmitterMixin<DownloadItem>,
|
||||
private download::DownloadItem::Observer {
|
||||
|
@ -36,7 +36,7 @@ class DownloadItem final : public gin::Wrappable<DownloadItem>,
|
|||
static DownloadItem* FromDownloadItem(download::DownloadItem* item);
|
||||
|
||||
// gin::Wrappable
|
||||
static gin::WrapperInfo kWrapperInfo;
|
||||
static gin::DeprecatedWrapperInfo kWrapperInfo;
|
||||
gin::ObjectTemplateBuilder GetObjectTemplateBuilder(
|
||||
v8::Isolate* isolate) override;
|
||||
const char* GetTypeName() override;
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
|
||||
namespace electron::api {
|
||||
|
||||
gin::WrapperInfo Extensions::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
gin::DeprecatedWrapperInfo Extensions::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
|
||||
Extensions::Extensions(v8::Isolate* isolate,
|
||||
ElectronBrowserContext* browser_context)
|
||||
|
|
|
@ -22,7 +22,7 @@ class ElectronBrowserContext;
|
|||
|
||||
namespace api {
|
||||
|
||||
class Extensions final : public gin::Wrappable<Extensions>,
|
||||
class Extensions final : public gin::DeprecatedWrappable<Extensions>,
|
||||
public gin_helper::EventEmitterMixin<Extensions>,
|
||||
private extensions::ExtensionRegistryObserver {
|
||||
public:
|
||||
|
@ -31,7 +31,7 @@ class Extensions final : public gin::Wrappable<Extensions>,
|
|||
ElectronBrowserContext* browser_context);
|
||||
|
||||
// gin::Wrappable
|
||||
static gin::WrapperInfo kWrapperInfo;
|
||||
static gin::DeprecatedWrapperInfo kWrapperInfo;
|
||||
gin::ObjectTemplateBuilder GetObjectTemplateBuilder(
|
||||
v8::Isolate* isolate) override;
|
||||
const char* GetTypeName() override;
|
||||
|
|
|
@ -49,7 +49,8 @@ bool MapHasMediaKeys(
|
|||
|
||||
namespace electron::api {
|
||||
|
||||
gin::WrapperInfo GlobalShortcut::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
gin::DeprecatedWrapperInfo GlobalShortcut::kWrapperInfo = {
|
||||
gin::kEmbedderNativeGin};
|
||||
|
||||
GlobalShortcut::GlobalShortcut() {}
|
||||
|
||||
|
@ -225,7 +226,8 @@ gin::Handle<GlobalShortcut> GlobalShortcut::Create(v8::Isolate* isolate) {
|
|||
// static
|
||||
gin::ObjectTemplateBuilder GlobalShortcut::GetObjectTemplateBuilder(
|
||||
v8::Isolate* isolate) {
|
||||
return gin::Wrappable<GlobalShortcut>::GetObjectTemplateBuilder(isolate)
|
||||
return gin::DeprecatedWrappable<GlobalShortcut>::GetObjectTemplateBuilder(
|
||||
isolate)
|
||||
.SetMethod("registerAll", &GlobalShortcut::RegisterAll)
|
||||
.SetMethod("register", &GlobalShortcut::Register)
|
||||
.SetMethod("isRegistered", &GlobalShortcut::IsRegistered)
|
||||
|
|
|
@ -22,12 +22,12 @@ class Handle;
|
|||
namespace electron::api {
|
||||
|
||||
class GlobalShortcut final : private ui::GlobalAcceleratorListener::Observer,
|
||||
public gin::Wrappable<GlobalShortcut> {
|
||||
public gin::DeprecatedWrappable<GlobalShortcut> {
|
||||
public:
|
||||
static gin::Handle<GlobalShortcut> Create(v8::Isolate* isolate);
|
||||
|
||||
// gin::Wrappable
|
||||
static gin::WrapperInfo kWrapperInfo;
|
||||
static gin::DeprecatedWrapperInfo kWrapperInfo;
|
||||
gin::ObjectTemplateBuilder GetObjectTemplateBuilder(
|
||||
v8::Isolate* isolate) override;
|
||||
const char* GetTypeName() override;
|
||||
|
|
|
@ -130,7 +130,8 @@ struct Converter<in_app_purchase::Product> {
|
|||
|
||||
namespace electron::api {
|
||||
|
||||
gin::WrapperInfo InAppPurchase::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
gin::DeprecatedWrapperInfo InAppPurchase::kWrapperInfo = {
|
||||
gin::kEmbedderNativeGin};
|
||||
|
||||
#if BUILDFLAG(IS_MAC)
|
||||
// static
|
||||
|
|
|
@ -22,14 +22,14 @@ class Handle;
|
|||
|
||||
namespace electron::api {
|
||||
|
||||
class InAppPurchase final : public gin::Wrappable<InAppPurchase>,
|
||||
class InAppPurchase final : public gin::DeprecatedWrappable<InAppPurchase>,
|
||||
public gin_helper::EventEmitterMixin<InAppPurchase>,
|
||||
private in_app_purchase::TransactionObserver {
|
||||
public:
|
||||
static gin::Handle<InAppPurchase> Create(v8::Isolate* isolate);
|
||||
|
||||
// gin::Wrappable
|
||||
static gin::WrapperInfo kWrapperInfo;
|
||||
static gin::DeprecatedWrapperInfo kWrapperInfo;
|
||||
gin::ObjectTemplateBuilder GetObjectTemplateBuilder(
|
||||
v8::Isolate* isolate) override;
|
||||
const char* GetTypeName() override;
|
||||
|
|
|
@ -50,7 +50,7 @@ struct Converter<SharingItem> {
|
|||
|
||||
namespace electron::api {
|
||||
|
||||
gin::WrapperInfo Menu::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
gin::DeprecatedWrapperInfo Menu::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
|
||||
Menu::Menu(gin::Arguments* args)
|
||||
: model_(std::make_unique<ElectronMenuModel>(this)) {
|
||||
|
|
|
@ -24,7 +24,7 @@ namespace electron::api {
|
|||
class BaseWindow;
|
||||
class WebFrameMain;
|
||||
|
||||
class Menu : public gin::Wrappable<Menu>,
|
||||
class Menu : public gin::DeprecatedWrappable<Menu>,
|
||||
public gin_helper::EventEmitterMixin<Menu>,
|
||||
public gin_helper::Constructible<Menu>,
|
||||
public gin_helper::Pinnable<Menu>,
|
||||
|
@ -37,7 +37,7 @@ class Menu : public gin::Wrappable<Menu>,
|
|||
static const char* GetClassName() { return "Menu"; }
|
||||
|
||||
// gin::Wrappable
|
||||
static gin::WrapperInfo kWrapperInfo;
|
||||
static gin::DeprecatedWrapperInfo kWrapperInfo;
|
||||
const char* GetTypeName() override;
|
||||
|
||||
#if BUILDFLAG(IS_MAC)
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue