diff options
author | Martin Robinson <mrobinson@igalia.com> | 2025-01-07 10:56:02 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-01-07 09:56:02 +0000 |
commit | e42b4b793d52e756e79c8a408b3f7e99219493f5 (patch) | |
tree | 1346ec6841f8e37b00018c836a29fb227f026d41 /components/script/dom/htmldialogelement.rs | |
parent | 17e2ca3f013e2ff8e7d7bca08d93c6c723a2b71d (diff) | |
download | servo-e42b4b793d52e756e79c8a408b3f7e99219493f5.tar.gz servo-e42b4b793d52e756e79c8a408b3f7e99219493f5.zip |
script: Expose `NodeTraits::owner_global` / `Window::as_global_scope` (#34843)
Expose two new helpers and start using them as much as possible.
- `NodeTraits::owner_global`: which gets the `GlobalScope` that currenty
owns a `Node`. This may be different than `.global()` in the case that
the `Node` was adopted by a different `Document`.
- `Window::as_global_scope`: A helper to avoid having to cast so much
when treating a `Window` like a `GlobalScope`.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Diffstat (limited to 'components/script/dom/htmldialogelement.rs')
-rw-r--r-- | components/script/dom/htmldialogelement.rs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/components/script/dom/htmldialogelement.rs b/components/script/dom/htmldialogelement.rs index 644bce31ea5..70a57749add 100644 --- a/components/script/dom/htmldialogelement.rs +++ b/components/script/dom/htmldialogelement.rs @@ -102,7 +102,6 @@ impl HTMLDialogElementMethods<crate::DomTypeHolder> for HTMLDialogElement { fn Close(&self, return_value: Option<DOMString>) { let element = self.upcast::<Element>(); let target = self.upcast::<EventTarget>(); - let win = self.owner_window(); // Step 1 & 2 if element @@ -120,7 +119,8 @@ impl HTMLDialogElementMethods<crate::DomTypeHolder> for HTMLDialogElement { // TODO: Step 4 implement pending dialog stack removal // Step 5 - win.task_manager() + self.owner_global() + .task_manager() .dom_manipulation_task_source() .queue_simple_event(target, atom!("close")); } |