Be less judgemental when tearing down WebGL rendering contexts
r? nox
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because it relies on the webgl thread behaving badly.
<!-- 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/20877)
<!-- Reviewable:end -->
fix logic in overflow_direction, also add a FIXME
<!-- Please describe your changes on the following line: -->
This PR fix#19477, which the logic is obviously wrong.
However, it is impossible to add a test for this.
Due to #20867, the ` overflow_direction` is a hard code now. It never go to other conditions.
I add a FIXME there, and also add a SPEC link.
---
<!-- 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 #19477(github issue number if applicable).
<!-- Either: -->
- [ ] 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/20868)
<!-- Reviewable:end -->
Fix for document salvageable state
I noticed a bug where if the document was un-salavageable due to the presence of `beforeunload` listeners, this could be overwritten if there were no listeners for `unload`. This could also have happened if an iframe of the document had no listeners while the parent did.
<!-- Please describe your changes on the following line: -->
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).
<!-- Either: -->
- [ ] 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/20837)
<!-- Reviewable:end -->
Pretty much the same setup we have for document.
We have the awkwardness of having to check containing shadow manually for
ShadowRoot because it's not available in TNode (and making it available added a
bit more complexity that wasn't worth it IMO).
Bug: 1464428
Reviewed-by: xidorn
MozReview-Commit-ID: CqOh0sLHf6o
The skew resetting of temp I think fixes a bug in presence of skew in every
direction, but again haven't double-checked.
Bug: 1459403
Reviewed-by: hiro
MozReview-Commit-ID: Bn93CoaG8Bu
Per bug 1322189 we really should. I've copied the setup we have already for
translate / scale, but we should really clean this up a bit more I'd think.
In any case, probably skew should be matched as well...
Bug: 1464615
Reviewed-by: hiro
MozReview-Commit-ID: Jky5k8HVfuH
This patch:
* Makes StyleStructID an enum class, and moves it to the mozilla namespaces.
* Introduces StyleStructConstants with some constants scattered through the
codebase.
* Makes the computed style bits an enum class, and splits mPseudoType and mBits
into their own members, since we were using a uint64_t when we have only a
couple flags and CSSPseudoElementType is a byte. We statically assert that
the number of style structs is less or equal to 32.
* Makes mPseudoTag, mPseudoType and mBits const, since we don't want them to be
mutated from C++, and we still need a few more refactorings (mostly getting
rid of FinishStyle) to avoid mutating ComputedStyle instead.
Bug: 1464060
Reviewed-by: xidorn
MozReview-Commit-ID: 7qsTtASGcYB
Also call them "resolve" since it's the general term for computing something
more specific than what you have.
Though I don't feel strongly about that, feel free to push back.
Bug: 1464595
Reviewed-by: hiro
MozReview-Commit-ID: KtqjzlppZLp
remove misleading spec url
<!-- Please describe your changes on the following line: -->
`pub fn scroll_area(&self)` in `node.rs` is only called by `fn ScrollHeight(&self)` and `fn ScrollWidth(&self)` in `element.rs`.
`scrolltop` and `scrollleft` are actually implemented in `element.rs`.
The misleading spec urls should be removed.
<!-- 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/20864)
<!-- Reviewable:end -->
move test `dom-element-scroll.html` from mozilla to wpt
<!-- Please describe your changes on the following line: -->
The test `dom-element-scroll.html` was originally landed on #19127.
It was designed for testing `scrollLeft` and `scrollTop`.
It is not only for servo. I thought I put a wrong place at that time. It should not be under `mozilla`. It's better placed under `wpt`.
<!-- 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/20858)
<!-- Reviewable:end -->
Increase taskcluster runtime
<!-- Please describe your changes on the following line: -->
Based on the Taskcluster log for
(https://taskcluster-artifacts.net/HkxDh1oKQceXH1fL9RSGow/0/public/logs/live_backing.log),
it looks like the job is running successfully but hitting the max time limit.
Our builds + tests shouldn't take this long to run normally,
but we'll need to set up sccache with cache uploading/downloading
in order to improve most build times.
For now, bump the max run time to 2 hours;
since we complete one build + som tests within an hour,
2 hours should be enough for the second build to finish as well.
Also, add `set -x` for easier debugging.
---
<!-- 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
- [ ] These changes fix #__ (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because they are trying to fix the testing infra
<!-- 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/20841)
<!-- Reviewable:end -->
Basic pinch zoom handling
r? glennw
Basic fix for #20387 and #20109. Note: Without calling `generate_frame`
when updating Webrender's pinch zoom level, rendering doesn't happen
reliably during/after a pinch zoom gesture. I'm not sure whether this
is the correct way to fix that or not.
<!-- 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/20749)
<!-- Reviewable:end -->
Sync WPT with upstream (23-05-2018)
⚠️ Do not merge this PR without verifying that it is not overwriting local changes to web-platform-tests. ⚠️
Automated downstream sync of changes from upstream as of 23-05-2018.
[no-wpt-sync]
<!-- 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/20853)
<!-- Reviewable:end -->