aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/shadowroot.rs
diff options
context:
space:
mode:
Diffstat (limited to 'components/script/dom/shadowroot.rs')
-rw-r--r--components/script/dom/shadowroot.rs9
1 files changed, 7 insertions, 2 deletions
diff --git a/components/script/dom/shadowroot.rs b/components/script/dom/shadowroot.rs
index 6e5d344dd46..ad75bf72e5f 100644
--- a/components/script/dom/shadowroot.rs
+++ b/components/script/dom/shadowroot.rs
@@ -28,6 +28,7 @@ use crate::dom::node::{
BindContext, Node, NodeDamage, NodeFlags, NodeTraits, ShadowIncluding, UnbindContext,
};
use crate::dom::stylesheetlist::{StyleSheetList, StyleSheetListOwner};
+use crate::dom::types::EventTarget;
use crate::dom::virtualmethods::VirtualMethods;
use crate::dom::window::Window;
use crate::script_runtime::CanGc;
@@ -218,7 +219,9 @@ impl ShadowRootMethods<crate::DomTypeHolder> for ShadowRoot {
can_gc,
) {
Some(e) => {
- let retargeted_node = self.upcast::<Node>().retarget(e.upcast::<Node>());
+ let retargeted_node = self
+ .upcast::<EventTarget>()
+ .retarget(e.upcast::<EventTarget>());
retargeted_node.downcast::<Element>().map(DomRoot::from_ref)
},
None => None,
@@ -240,7 +243,9 @@ impl ShadowRootMethods<crate::DomTypeHolder> for ShadowRoot {
.elements_from_point(x, y, None, self.document.has_browsing_context(), can_gc)
.iter()
{
- let retargeted_node = self.upcast::<Node>().retarget(e.upcast::<Node>());
+ let retargeted_node = self
+ .upcast::<EventTarget>()
+ .retarget(e.upcast::<EventTarget>());
if let Some(element) = retargeted_node.downcast::<Element>().map(DomRoot::from_ref) {
elements.push(element);
}