diff options
author | bors-servo <lbergstrom+bors@mozilla.com> | 2017-05-26 10:10:36 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-05-26 10:10:36 -0500 |
commit | 8747ccc9e853bcede73b838634992638655934f5 (patch) | |
tree | f07f8c9be8e3ff23974f3c80c15e323972273bbc /components/script/dom | |
parent | dbadf5a8b658214a30f2c24b444952962a4b97aa (diff) | |
parent | 510bea7a7add6669a264acf4e3ac44995a9122b3 (diff) | |
download | servo-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.webidl | 2 | ||||
-rw-r--r-- | components/script/dom/window.rs | 7 |
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() |