mirror of
https://github.com/electron/electron.git
synced 2026-04-10 03:01:51 -04:00
(cherry picked from commit 84d0e827a3)
Co-authored-by: Keeley Hammond <VerteDinde@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
fd629c16cb
commit
4b2d791212
@@ -116,49 +116,6 @@ v8::Local<v8::Promise> WebFrameMain::ExecuteJavaScript(
|
||||
return handle;
|
||||
}
|
||||
|
||||
v8::Local<v8::Promise> WebFrameMain::ExecuteJavaScriptInIsolatedWorld(
|
||||
gin::Arguments* args,
|
||||
int world_id,
|
||||
const base::string16& code) {
|
||||
gin_helper::Promise<base::Value> promise(args->isolate());
|
||||
v8::Local<v8::Promise> handle = promise.GetHandle();
|
||||
|
||||
// Optional userGesture parameter
|
||||
bool user_gesture;
|
||||
if (!args->PeekNext().IsEmpty()) {
|
||||
if (args->PeekNext()->IsBoolean()) {
|
||||
args->GetNext(&user_gesture);
|
||||
} else {
|
||||
args->ThrowTypeError("userGesture must be a boolean");
|
||||
return handle;
|
||||
}
|
||||
} else {
|
||||
user_gesture = false;
|
||||
}
|
||||
|
||||
if (render_frame_disposed_) {
|
||||
promise.RejectWithErrorMessage(
|
||||
"Render frame was disposed before WebFrameMain could be accessed");
|
||||
return handle;
|
||||
}
|
||||
|
||||
if (user_gesture) {
|
||||
auto* ftn = content::FrameTreeNode::From(render_frame_);
|
||||
ftn->UpdateUserActivationState(
|
||||
blink::mojom::UserActivationUpdateType::kNotifyActivation,
|
||||
blink::mojom::UserActivationNotificationType::kTest);
|
||||
}
|
||||
|
||||
render_frame_->ExecuteJavaScriptForTests(
|
||||
code,
|
||||
base::BindOnce([](gin_helper::Promise<base::Value> promise,
|
||||
base::Value value) { promise.Resolve(value); },
|
||||
std::move(promise)),
|
||||
world_id);
|
||||
|
||||
return handle;
|
||||
}
|
||||
|
||||
bool WebFrameMain::Reload() {
|
||||
if (!CheckRenderFrame())
|
||||
return false;
|
||||
@@ -365,8 +322,6 @@ v8::Local<v8::ObjectTemplate> WebFrameMain::FillObjectTemplate(
|
||||
v8::Local<v8::ObjectTemplate> templ) {
|
||||
return gin_helper::ObjectTemplateBuilder(isolate, templ)
|
||||
.SetMethod("executeJavaScript", &WebFrameMain::ExecuteJavaScript)
|
||||
.SetMethod("executeJavaScriptInIsolatedWorld",
|
||||
&WebFrameMain::ExecuteJavaScriptInIsolatedWorld)
|
||||
.SetMethod("reload", &WebFrameMain::Reload)
|
||||
.SetMethod("_send", &WebFrameMain::Send)
|
||||
.SetMethod("_postMessage", &WebFrameMain::PostMessage)
|
||||
|
||||
@@ -79,10 +79,6 @@ class WebFrameMain : public gin::Wrappable<WebFrameMain>,
|
||||
|
||||
v8::Local<v8::Promise> ExecuteJavaScript(gin::Arguments* args,
|
||||
const base::string16& code);
|
||||
v8::Local<v8::Promise> ExecuteJavaScriptInIsolatedWorld(
|
||||
gin::Arguments* args,
|
||||
int world_id,
|
||||
const base::string16& code);
|
||||
bool Reload();
|
||||
void Send(v8::Isolate* isolate,
|
||||
bool internal,
|
||||
|
||||
Reference in New Issue
Block a user