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 from603cafad7e
* 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 | https://chromium-review.googlesource.com/c/chromium/src/+/6516731 * 6694809: dbus: Ensure systemd scope is started before using any portal services | https://chromium-review.googlesource.com/c/chromium/src/+/6694809 * chore: patch chromium * chore: export patches * chore: bump chromium in DEPS to 140.0.7275.0 * 6677511: [pepper] More pepper removal | https://chromium-review.googlesource.com/c/chromium/src/+/6677511 * 6513641: [gin] Rename gin::Wrappable to gin::DeprecatedWrappable | https://chromium-review.googlesource.com/c/chromium/src/+/6513641 * chore: export chromium patches * 6513641: [gin] Rename gin::Wrappable to gin::DeprecatedWrappable | https://chromium-review.googlesource.com/c/chromium/src/+/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 layer https://chromium-review.googlesource.com/c/chromium/src/+/6677314 * 6351556: [source-phase-imports] Support Wasm Source Phase Imports https://chromium-review.googlesource.com/c/chromium/src/+/6351556 * 6700077: [renderer] Avoid calls to deprecated GetIsolate methods https://chromium-review.googlesource.com/c/chromium/src/+/6700077 * 6692873: Reland "Reland "FSA: Only normalize the hardcoded rules once during initialization"" https://chromium-review.googlesource.com/c/chromium/src/+/6692873 * 6686234: [gin] Cleanup NamedPropertyInterceptor for Wrappable https://chromium-review.googlesource.com/c/chromium/src/+/6686234 * chore: export patches * 6667723: Remove content_enable_legacy_ipc GN arg. https://chromium-review.googlesource.com/c/chromium/src/+/6667723 * 6646566: ui: Move NativeWindowTracker to its own directory https://chromium-review.googlesource.com/c/chromium/src/+/6646566 * fix: add missing includes * 6580522: [WAR, DNR] Fix unsafe redirect error to web accessible resource https://chromium-review.googlesource.com/c/chromium/src/+/6580522 * 6680477: Implement `completeCode` endpoint and expose to DevTools https://chromium-review.googlesource.com/c/chromium/src/+/6680477 * 6677511: [pepper] More pepper removal https://chromium-review.googlesource.com/c/chromium/src/+/6677511 * 6696689: Rename views::WidgetFocusManager -> NativeViewFocusManager https://chromium-review.googlesource.com/c/chromium/src/+/6696689 * 6702812: Move wtf/text/string_impl*.* to "blink" namespace https://chromium-review.googlesource.com/c/chromium/src/+/6702812 * chore: fix dialog patch * 6702431: [animation-trigger] Parse timeline-trigger-name https://chromium-review.googlesource.com/c/chromium/src/+/6702431 * 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" https://chromium-review.googlesource.com/c/chromium/src/+/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 commit603cafad7e
) --------- 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
|
@ -31,6 +31,7 @@
|
|||
#include "shell/common/gin_helper/function_template_extensions.h"
|
||||
#include "shell/common/gin_helper/promise.h"
|
||||
#include "shell/common/node_includes.h"
|
||||
#include "shell/common/node_util.h"
|
||||
#include "shell/common/options_switches.h"
|
||||
#include "shell/common/web_contents_utility.mojom.h"
|
||||
#include "shell/renderer/api/context_bridge/object_cache.h"
|
||||
|
@ -328,10 +329,11 @@ class SpellCheckerHolder final : private content::RenderFrameObserver {
|
|||
std::unique_ptr<SpellCheckClient> spell_check_client_;
|
||||
};
|
||||
|
||||
class WebFrameRenderer final : public gin::Wrappable<WebFrameRenderer>,
|
||||
private content::RenderFrameObserver {
|
||||
class WebFrameRenderer final
|
||||
: public gin::DeprecatedWrappable<WebFrameRenderer>,
|
||||
private content::RenderFrameObserver {
|
||||
public:
|
||||
static gin::WrapperInfo kWrapperInfo;
|
||||
static gin::DeprecatedWrapperInfo kWrapperInfo;
|
||||
|
||||
static gin::Handle<WebFrameRenderer> Create(
|
||||
v8::Isolate* isolate,
|
||||
|
@ -347,8 +349,8 @@ class WebFrameRenderer final : public gin::Wrappable<WebFrameRenderer>,
|
|||
// gin::Wrappable:
|
||||
gin::ObjectTemplateBuilder GetObjectTemplateBuilder(
|
||||
v8::Isolate* isolate) override {
|
||||
return gin::Wrappable<WebFrameRenderer>::GetObjectTemplateBuilder(isolate)
|
||||
.SetMethod("getWebFrameId", &WebFrameRenderer::GetWebFrameId)
|
||||
return gin::DeprecatedWrappable<WebFrameRenderer>::GetObjectTemplateBuilder(
|
||||
isolate)
|
||||
.SetMethod("setName", &WebFrameRenderer::SetName)
|
||||
.SetMethod("setZoomLevel", &WebFrameRenderer::SetZoomLevel)
|
||||
.SetMethod("getZoomLevel", &WebFrameRenderer::GetZoomLevel)
|
||||
|
@ -379,9 +381,12 @@ class WebFrameRenderer final : public gin::Wrappable<WebFrameRenderer>,
|
|||
// Frame navigators
|
||||
.SetMethod("findFrameByRoutingId",
|
||||
&WebFrameRenderer::FindFrameByRoutingId)
|
||||
.SetMethod("findFrameByToken", &WebFrameRenderer::FindFrameByToken)
|
||||
.SetMethod("getFrameForSelector",
|
||||
&WebFrameRenderer::GetFrameForSelector)
|
||||
.SetMethod("findFrameByName", &WebFrameRenderer::FindFrameByName)
|
||||
.SetMethod("_findFrameByWindow", &WebFrameRenderer::FindFrameByWindow)
|
||||
.SetProperty("frameToken", &WebFrameRenderer::GetFrameToken)
|
||||
.SetProperty("opener", &WebFrameRenderer::GetOpener)
|
||||
.SetProperty("parent", &WebFrameRenderer::GetFrameParent)
|
||||
.SetProperty("top", &WebFrameRenderer::GetTop)
|
||||
|
@ -528,23 +533,6 @@ class WebFrameRenderer final : public gin::Wrappable<WebFrameRenderer>,
|
|||
web_frame->View()->SetDefaultPageScaleLimits(min_level, max_level);
|
||||
}
|
||||
|
||||
static int GetWebFrameId(v8::Local<v8::Object> content_window) {
|
||||
// Get the WebLocalFrame before (possibly) executing any user-space JS while
|
||||
// getting the |params|. We track the status of the RenderFrame via an
|
||||
// observer in case it is deleted during user code execution.
|
||||
content::RenderFrame* render_frame = GetRenderFrame(content_window);
|
||||
if (!render_frame)
|
||||
return -1;
|
||||
|
||||
blink::WebLocalFrame* frame = render_frame->GetWebFrame();
|
||||
// Parent must exist.
|
||||
blink::WebFrame* parent_frame = frame->Parent();
|
||||
DCHECK(parent_frame);
|
||||
DCHECK(parent_frame->IsWebLocalFrame());
|
||||
|
||||
return render_frame->GetRoutingID();
|
||||
}
|
||||
|
||||
void SetSpellCheckProvider(gin_helper::ErrorThrower thrower,
|
||||
v8::Isolate* isolate,
|
||||
const std::string& language,
|
||||
|
@ -819,14 +807,63 @@ class WebFrameRenderer final : public gin::Wrappable<WebFrameRenderer>,
|
|||
|
||||
v8::Local<v8::Value> FindFrameByRoutingId(v8::Isolate* isolate,
|
||||
int routing_id) {
|
||||
util::EmitDeprecationWarning(isolate,
|
||||
"findFrameByRoutingId() is deprecated, use "
|
||||
"findFrameByToken() instead.");
|
||||
return v8::Null(isolate);
|
||||
}
|
||||
|
||||
v8::Local<v8::Value> FindFrameByToken(v8::Isolate* isolate,
|
||||
std::string frame_token) {
|
||||
auto token = base::Token::FromString(frame_token);
|
||||
if (!token) {
|
||||
return v8::Null(isolate);
|
||||
}
|
||||
auto unguessable_token =
|
||||
base::UnguessableToken::Deserialize(token->high(), token->low());
|
||||
if (!unguessable_token) {
|
||||
return v8::Null(isolate);
|
||||
}
|
||||
auto* web_frame = blink::WebLocalFrame::FromFrameToken(
|
||||
blink::LocalFrameToken(unguessable_token.value()));
|
||||
content::RenderFrame* render_frame =
|
||||
content::RenderFrame::FromRoutingID(routing_id);
|
||||
content::RenderFrame::FromWebFrame(web_frame);
|
||||
if (render_frame)
|
||||
return WebFrameRenderer::Create(isolate, render_frame).ToV8();
|
||||
else
|
||||
return v8::Null(isolate);
|
||||
}
|
||||
|
||||
v8::Local<v8::Value> FindFrameByWindow(v8::Isolate* isolate,
|
||||
v8::Local<v8::Object> content_window) {
|
||||
// Get the WebLocalFrame before (possibly) executing any user-space JS while
|
||||
// getting the |params|. We track the status of the RenderFrame via an
|
||||
// observer in case it is deleted during user code execution.
|
||||
content::RenderFrame* render_frame = GetRenderFrame(content_window);
|
||||
if (!render_frame)
|
||||
return v8::Null(isolate);
|
||||
|
||||
blink::WebLocalFrame* frame = render_frame->GetWebFrame();
|
||||
// Parent must exist.
|
||||
blink::WebFrame* parent_frame = frame->Parent();
|
||||
DCHECK(parent_frame);
|
||||
DCHECK(parent_frame->IsWebLocalFrame());
|
||||
|
||||
return WebFrameRenderer::Create(isolate, render_frame).ToV8();
|
||||
}
|
||||
|
||||
std::string GetFrameToken(v8::Isolate* isolate) {
|
||||
content::RenderFrame* render_frame;
|
||||
if (!MaybeGetRenderFrame(isolate, "frameToken", &render_frame))
|
||||
return "";
|
||||
|
||||
blink::WebLocalFrame* frame = render_frame->GetWebFrame();
|
||||
DCHECK(frame);
|
||||
|
||||
// TODO: use gin serializer?
|
||||
return frame->GetLocalFrameToken().ToString();
|
||||
}
|
||||
|
||||
v8::Local<v8::Value> GetOpener(v8::Isolate* isolate) {
|
||||
content::RenderFrame* render_frame;
|
||||
if (!MaybeGetRenderFrame(isolate, "opener", &render_frame))
|
||||
|
@ -901,16 +938,15 @@ class WebFrameRenderer final : public gin::Wrappable<WebFrameRenderer>,
|
|||
}
|
||||
|
||||
int GetRoutingId(v8::Isolate* isolate) {
|
||||
content::RenderFrame* render_frame;
|
||||
if (!MaybeGetRenderFrame(isolate, "routingId", &render_frame))
|
||||
return 0;
|
||||
|
||||
return render_frame->GetRoutingID();
|
||||
util::EmitDeprecationWarning(
|
||||
isolate, "routingId is deprecated, use frameToken instead.");
|
||||
return -1;
|
||||
}
|
||||
};
|
||||
} // namespace
|
||||
|
||||
gin::WrapperInfo WebFrameRenderer::kWrapperInfo = {gin::kEmbedderNativeGin};
|
||||
gin::DeprecatedWrapperInfo WebFrameRenderer::kWrapperInfo = {
|
||||
gin::kEmbedderNativeGin};
|
||||
|
||||
// static
|
||||
std::set<SpellCheckerHolder*> SpellCheckerHolder::instances_;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue