aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/htmldetailselement.rs
diff options
context:
space:
mode:
Diffstat (limited to 'components/script/dom/htmldetailselement.rs')
-rw-r--r--components/script/dom/htmldetailselement.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/components/script/dom/htmldetailselement.rs b/components/script/dom/htmldetailselement.rs
index 314611707ea..5ec9ab68604 100644
--- a/components/script/dom/htmldetailselement.rs
+++ b/components/script/dom/htmldetailselement.rs
@@ -11,7 +11,7 @@ use crate::dom::document::Document;
use crate::dom::element::AttributeMutation;
use crate::dom::eventtarget::EventTarget;
use crate::dom::htmlelement::HTMLElement;
-use crate::dom::node::{window_from_node, Node};
+use crate::dom::node::{window_from_node, Node, NodeDamage};
use crate::dom::virtualmethods::VirtualMethods;
use crate::task_source::TaskSource;
use dom_struct::dom_struct;
@@ -49,6 +49,10 @@ impl HTMLDetailsElement {
document,
)
}
+
+ pub fn toggle(&self) {
+ self.SetOpen(!self.Open());
+ }
}
impl HTMLDetailsElementMethods for HTMLDetailsElement {
@@ -83,6 +87,7 @@ impl VirtualMethods for HTMLDetailsElement {
}),
window.upcast(),
);
+ self.upcast::<Node>().dirty(NodeDamage::OtherNodeDamage)
}
}
}