Auto merge of #12757 - emilio:stylo, r=bholley,pcwalton

stylo: Stop restyling display: none elements, remove the has_changed hack that made us use ReconstructFrame unconditionally.

<!-- 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: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

r? @bholley

<!-- 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/12757)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2016-08-10 21:02:30 -05:00 committed by GitHub
commit 1b2450339c
19 changed files with 543 additions and 180 deletions

View file

@ -1,5 +0,0 @@
[hidden-container-001.htm]
type: testharness
[transition within display:none / values]
expected: FAIL

View file

@ -4420,6 +4420,18 @@
"url": "/_mozilla/css/pseudo_element_a.html"
}
],
"css/pseudo_element_restyle_no_rules.html": [
{
"path": "css/pseudo_element_restyle_no_rules.html",
"references": [
[
"/_mozilla/css/pseudo_element_restyle_no_rules_ref.html",
"=="
]
],
"url": "/_mozilla/css/pseudo_element_restyle_no_rules.html"
}
],
"css/pseudo_inherit.html": [
{
"path": "css/pseudo_inherit.html",
@ -13586,6 +13598,18 @@
"url": "/_mozilla/css/pseudo_element_a.html"
}
],
"css/pseudo_element_restyle_no_rules.html": [
{
"path": "css/pseudo_element_restyle_no_rules.html",
"references": [
[
"/_mozilla/css/pseudo_element_restyle_no_rules_ref.html",
"=="
]
],
"url": "/_mozilla/css/pseudo_element_restyle_no_rules.html"
}
],
"css/pseudo_inherit.html": [
{
"path": "css/pseudo_inherit.html",

View file

@ -0,0 +1,20 @@
<!doctype html>
<meta charset="utf-8">
<title>Pseudo-Element is restyled correctly when matching rules become empty</title>
<link rel="match" href="pseudo_element_restyle_no_rules_ref.html">
<style>
p.whatever::before { content: " hey "; }
</style>
<p>
test.
<script>
var p = document.querySelector('p');
var toggle = function() {
p.className = p.className == "whatever" ? "" : "whatever";
};
toggle();
// Ensure a restyle happens.
p.offsetTop;
toggle()
</script>

View file

@ -0,0 +1,5 @@
<!doctype html>
<meta charset="utf-8">
<title>CSS Test reference.</title>
<p>
test.