aboutsummaryrefslogtreecommitdiffstats
path: root/components/script
diff options
context:
space:
mode:
Diffstat (limited to 'components/script')
-rw-r--r--components/script/dom/document.rs9
-rw-r--r--components/script/dom/keyboardevent.rs7
-rw-r--r--components/script/dom/rtcpeerconnection.rs9
-rw-r--r--components/script/dom/rtctrackevent.rs11
-rw-r--r--components/script/script_thread.rs2
5 files changed, 23 insertions, 15 deletions
diff --git a/components/script/dom/document.rs b/components/script/dom/document.rs
index b0a3436d930..0ac3d9bad37 100644
--- a/components/script/dom/document.rs
+++ b/components/script/dom/document.rs
@@ -1817,7 +1817,11 @@ impl Document {
}
/// The entry point for all key processing for web content
- pub fn dispatch_key_event(&self, keyboard_event: ::keyboard_types::KeyboardEvent) {
+ pub fn dispatch_key_event(
+ &self,
+ keyboard_event: ::keyboard_types::KeyboardEvent,
+ can_gc: CanGc,
+ ) {
let focused = self.get_focused_element();
let body = self.GetBody();
@@ -1842,6 +1846,7 @@ impl Document {
keyboard_event.modifiers,
0,
keyboard_event.key.legacy_keycode(),
+ can_gc,
);
let event = keyevent.upcast::<Event>();
event.fire(target);
@@ -1869,6 +1874,7 @@ impl Document {
keyboard_event.modifiers,
keyboard_event.key.legacy_charcode(),
0,
+ can_gc,
);
let ev = event.upcast::<Event>();
ev.fire(target);
@@ -4677,6 +4683,7 @@ impl DocumentMethods for Document {
))),
"keyboardevent" => Ok(DomRoot::upcast(KeyboardEvent::new_uninitialized(
&self.window,
+ can_gc,
))),
"messageevent" => Ok(DomRoot::upcast(MessageEvent::new_uninitialized(
self.window.upcast(),
diff --git a/components/script/dom/keyboardevent.rs b/components/script/dom/keyboardevent.rs
index fbf1268b2d2..f8454a54905 100644
--- a/components/script/dom/keyboardevent.rs
+++ b/components/script/dom/keyboardevent.rs
@@ -54,8 +54,8 @@ impl KeyboardEvent {
}
}
- pub fn new_uninitialized(window: &Window) -> DomRoot<KeyboardEvent> {
- Self::new_uninitialized_with_proto(window, None, CanGc::note())
+ pub fn new_uninitialized(window: &Window, can_gc: CanGc) -> DomRoot<KeyboardEvent> {
+ Self::new_uninitialized_with_proto(window, None, can_gc)
}
fn new_uninitialized_with_proto(
@@ -87,6 +87,7 @@ impl KeyboardEvent {
modifiers: Modifiers,
char_code: u32,
key_code: u32,
+ can_gc: CanGc,
) -> DomRoot<KeyboardEvent> {
Self::new_with_proto(
window,
@@ -104,7 +105,7 @@ impl KeyboardEvent {
modifiers,
char_code,
key_code,
- CanGc::note(),
+ can_gc,
)
}
diff --git a/components/script/dom/rtcpeerconnection.rs b/components/script/dom/rtcpeerconnection.rs
index f417def0605..1ae0cc54637 100644
--- a/components/script/dom/rtcpeerconnection.rs
+++ b/components/script/dom/rtcpeerconnection.rs
@@ -290,7 +290,14 @@ impl RTCPeerConnection {
return;
}
let track = MediaStreamTrack::new(&self.global(), id, ty);
- let event = RTCTrackEvent::new(&self.global(), atom!("track"), false, false, &track);
+ let event = RTCTrackEvent::new(
+ &self.global(),
+ atom!("track"),
+ false,
+ false,
+ &track,
+ CanGc::note(),
+ );
event.upcast::<Event>().fire(self.upcast());
}
diff --git a/components/script/dom/rtctrackevent.rs b/components/script/dom/rtctrackevent.rs
index 681b506faf7..49626d27095 100644
--- a/components/script/dom/rtctrackevent.rs
+++ b/components/script/dom/rtctrackevent.rs
@@ -40,16 +40,9 @@ impl RTCTrackEvent {
bubbles: bool,
cancelable: bool,
track: &MediaStreamTrack,
+ can_gc: CanGc,
) -> DomRoot<RTCTrackEvent> {
- Self::new_with_proto(
- global,
- None,
- type_,
- bubbles,
- cancelable,
- track,
- CanGc::note(),
- )
+ Self::new_with_proto(global, None, type_, bubbles, cancelable, track, can_gc)
}
fn new_with_proto(
diff --git a/components/script/script_thread.rs b/components/script/script_thread.rs
index 797108a0ee4..fec964ce312 100644
--- a/components/script/script_thread.rs
+++ b/components/script/script_thread.rs
@@ -1624,7 +1624,7 @@ impl ScriptThread {
},
CompositorEvent::KeyboardEvent(key_event) => {
- document.dispatch_key_event(key_event);
+ document.dispatch_key_event(key_event, can_gc);
},
CompositorEvent::IMEDismissedEvent => {