aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom
diff options
context:
space:
mode:
authorbors-servo <lbergstrom+bors@mozilla.com>2017-05-26 10:10:36 -0500
committerGitHub <noreply@github.com>2017-05-26 10:10:36 -0500
commit8747ccc9e853bcede73b838634992638655934f5 (patch)
treef07f8c9be8e3ff23974f3c80c15e323972273bbc /components/script/dom
parentdbadf5a8b658214a30f2c24b444952962a4b97aa (diff)
parent510bea7a7add6669a264acf4e3ac44995a9122b3 (diff)
downloadservo-8747ccc9e853bcede73b838634992638655934f5.tar.gz
servo-8747ccc9e853bcede73b838634992638655934f5.zip
Auto merge of #16920 - synlestidae:servo-16705, r=asajeffrey
Implement window.closed <!-- Please describe your changes on the following line: --> Implements #16705. window.closed should evaluate to true if BrowsingContext is discarded --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: --> - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [X] These changes fix #16705 (github issue number if applicable). <!-- Either: --> - [X] There are tests for these changes OR - [ ] These changes do not require tests because _____ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16920) <!-- Reviewable:end -->
Diffstat (limited to 'components/script/dom')
-rw-r--r--components/script/dom/webidls/Window.webidl2
-rw-r--r--components/script/dom/window.rs7
2 files changed, 8 insertions, 1 deletions
diff --git a/components/script/dom/webidls/Window.webidl b/components/script/dom/webidls/Window.webidl
index 548821ac971..3c962f2795e 100644
--- a/components/script/dom/webidls/Window.webidl
+++ b/components/script/dom/webidls/Window.webidl
@@ -23,7 +23,7 @@
//[Replaceable] readonly attribute BarProp toolbar;
attribute DOMString status;
void close();
- //readonly attribute boolean closed;
+ readonly attribute boolean closed;
//void stop();
//void focus();
//void blur();
diff --git a/components/script/dom/window.rs b/components/script/dom/window.rs
index 7d25b985c2c..b4459bf15db 100644
--- a/components/script/dom/window.rs
+++ b/components/script/dom/window.rs
@@ -509,6 +509,13 @@ impl WindowMethods for Window {
}
}
+ // https://html.spec.whatwg.org/multipage/#dom-window-closed
+ fn Closed(&self) -> bool {
+ self.window_proxy.get()
+ .map(|ref proxy| proxy.is_browsing_context_discarded())
+ .unwrap_or(true)
+ }
+
// https://html.spec.whatwg.org/multipage/#dom-window-close
fn Close(&self) {
self.main_thread_script_chan()