summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/broadcast_channel/01_broadcast_channel.js2
-rw-r--r--ext/web/13_message_port.js3
-rw-r--r--ext/websocket/01_websocket.js3
-rw-r--r--runtime/js/11_workers.js3
-rw-r--r--runtime/js/99_main.js2
-rw-r--r--tools/wpt/expectation.json6
6 files changed, 16 insertions, 3 deletions
diff --git a/ext/broadcast_channel/01_broadcast_channel.js b/ext/broadcast_channel/01_broadcast_channel.js
index d92aef072..ab315eaa6 100644
--- a/ext/broadcast_channel/01_broadcast_channel.js
+++ b/ext/broadcast_channel/01_broadcast_channel.js
@@ -8,6 +8,7 @@ import * as webidl from "ext:deno_webidl/00_webidl.js";
import {
defineEventHandler,
EventTarget,
+ setIsTrusted,
setTarget,
} from "ext:deno_web/02_event.js";
import DOMException from "ext:deno_web/01_dom_exception.js";
@@ -56,6 +57,7 @@ function dispatch(source, name, data) {
data: core.deserialize(data), // TODO(bnoordhuis) Cache immutables.
origin: "http://127.0.0.1",
});
+ setIsTrusted(event, true);
setTarget(event, channel);
channel.dispatchEvent(event);
};
diff --git a/ext/web/13_message_port.js b/ext/web/13_message_port.js
index 08f668b2d..40145db78 100644
--- a/ext/web/13_message_port.js
+++ b/ext/web/13_message_port.js
@@ -14,6 +14,7 @@ import {
EventTarget,
MessageEvent,
setEventTargetData,
+ setIsTrusted,
} from "ext:deno_web/02_event.js";
import DOMException from "ext:deno_web/01_dom_exception.js";
const primordials = globalThis.__bootstrap.primordials;
@@ -155,6 +156,7 @@ class MessagePort extends EventTarget {
transferables = v[1];
} catch (err) {
const event = new MessageEvent("messageerror", { data: err });
+ setIsTrusted(event, true);
this.dispatchEvent(event);
return;
}
@@ -165,6 +167,7 @@ class MessagePort extends EventTarget {
(t) => ObjectPrototypeIsPrototypeOf(MessagePortPrototype, t),
),
});
+ setIsTrusted(event, true);
this.dispatchEvent(event);
}
this[_enabled] = false;
diff --git a/ext/websocket/01_websocket.js b/ext/websocket/01_websocket.js
index 3f4e16b90..71abb0830 100644
--- a/ext/websocket/01_websocket.js
+++ b/ext/websocket/01_websocket.js
@@ -17,6 +17,7 @@ import {
Event,
EventTarget,
MessageEvent,
+ setIsTrusted,
} from "ext:deno_web/02_event.js";
import { Blob, BlobPrototype } from "ext:deno_web/09_file.js";
import { getLocationHref } from "ext:deno_web/12_location.js";
@@ -430,6 +431,7 @@ class WebSocket extends EventTarget {
data: op_ws_get_buffer_as_string(rid),
origin: this[_url],
});
+ setIsTrusted(event, true);
dispatch(this, event);
break;
}
@@ -450,6 +452,7 @@ class WebSocket extends EventTarget {
origin: this[_url],
[_skipInternalInit]: true,
});
+ setIsTrusted(event, true);
dispatch(this, event);
break;
}
diff --git a/runtime/js/11_workers.js b/runtime/js/11_workers.js
index e04690005..f5548d8d1 100644
--- a/runtime/js/11_workers.js
+++ b/runtime/js/11_workers.js
@@ -22,6 +22,7 @@ import {
ErrorEvent,
EventTarget,
MessageEvent,
+ setIsTrusted,
} from "ext:deno_web/02_event.js";
import {
deserializeJsMessageData,
@@ -187,6 +188,7 @@ class Worker extends EventTarget {
cancelable: false,
data: err,
});
+ setIsTrusted(event, true);
this.dispatchEvent(event);
return;
}
@@ -198,6 +200,7 @@ class Worker extends EventTarget {
(t) => ObjectPrototypeIsPrototypeOf(MessagePortPrototype, t),
),
});
+ setIsTrusted(event, true);
this.dispatchEvent(event);
}
};
diff --git a/runtime/js/99_main.js b/runtime/js/99_main.js
index 483ca9012..dc6839646 100644
--- a/runtime/js/99_main.js
+++ b/runtime/js/99_main.js
@@ -154,6 +154,7 @@ async function pollForMessages() {
ObjectPrototypeIsPrototypeOf(messagePort.MessagePortPrototype, t),
),
});
+ event.setIsTrusted(msgEvent, true);
try {
globalDispatchEvent(msgEvent);
@@ -167,6 +168,7 @@ async function pollForMessages() {
error: e,
});
+ event.setIsTrusted(errorEvent, true);
globalDispatchEvent(errorEvent);
if (!errorEvent.defaultPrevented) {
throw e;
diff --git a/tools/wpt/expectation.json b/tools/wpt/expectation.json
index 946f374eb..19075e224 100644
--- a/tools/wpt/expectation.json
+++ b/tools/wpt/expectation.json
@@ -6399,8 +6399,8 @@
"Channel_postMessage_with_transfer_incoming_messages.any.worker.html": true,
"Channel_postMessage_with_transfer_outgoing_messages.any.html": true,
"Channel_postMessage_with_transfer_outgoing_messages.any.worker.html": true,
- "MessageEvent-trusted.any.html": false,
- "MessageEvent-trusted.any.worker.html": false,
+ "MessageEvent-trusted.any.html": true,
+ "MessageEvent-trusted.any.worker.html": true,
"MessageEvent-trusted.window.html": false,
"MessageEvent.any.html": true,
"MessageEvent.any.worker.html": true,
@@ -9688,4 +9688,4 @@
"media-sniff.window.html": false
}
}
-} \ No newline at end of file
+}