diff options
author | bors-servo <lbergstrom+bors@mozilla.com> | 2016-06-01 19:22:22 -0500 |
---|---|---|
committer | bors-servo <lbergstrom+bors@mozilla.com> | 2016-06-01 19:22:22 -0500 |
commit | cc7953e25eaf6221a0e6e31af43214d0807185eb (patch) | |
tree | a3f3f6f9849acc1f2d203d5351b15f5857621cb7 | |
parent | 0594d58bc8e074facacb26b6d8d3fab2083771d0 (diff) | |
parent | 7e4cf6a4dc5116e41ae590e020c06399b61c2e19 (diff) | |
download | servo-cc7953e25eaf6221a0e6e31af43214d0807185eb.tar.gz servo-cc7953e25eaf6221a0e6e31af43214d0807185eb.zip |
Auto merge of #11035 - mrobinson:no-stacking-contexts-for-text-fragments, r=pcwalton
Do not create stacking contexts for text fragments
Without this change, each text fragment in a block that establishes a
stacking context will establish its own stacking context. This is
unnecessary and increases the amount of work done during display list
construction. This change should not change output, but should improve
performance.
<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11035)
<!-- Reviewable:end -->
41 files changed, 13 insertions, 113 deletions
diff --git a/components/layout/fragment.rs b/components/layout/fragment.rs index 9868e141df1..1de7a6ee86f 100644 --- a/components/layout/fragment.rs +++ b/components/layout/fragment.rs @@ -2207,6 +2207,13 @@ impl Fragment { /// Returns true if this fragment establishes a new stacking context and false otherwise. pub fn establishes_stacking_context(&self) -> bool { + // Text fragments shouldn't create stacking contexts. + match self.specific { + SpecificFragmentInfo::ScannedText(_) | + SpecificFragmentInfo::UnscannedText(_) => return false, + _ => {} + } + if self.flags.contains(HAS_LAYER) { return true } diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/css-transforms-3d-on-anonymous-block-001.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/css-transforms-3d-on-anonymous-block-001.htm.ini index 59ea4059dbe..605b45575ea 100644 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/css-transforms-3d-on-anonymous-block-001.htm.ini +++ b/tests/wpt/metadata-css/css-transforms-1_dev/html/css-transforms-3d-on-anonymous-block-001.htm.ini @@ -1,3 +1,4 @@ [css-transforms-3d-on-anonymous-block-001.htm] type: reftest - expected: FAIL + expected: + if os == "linux": FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-abspos-002.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/regions-transforms-019.htm.ini index 77459841bd5..705f98cc30b 100644 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-abspos-002.htm.ini +++ b/tests/wpt/metadata-css/css-transforms-1_dev/html/regions-transforms-019.htm.ini @@ -1,3 +1,3 @@ -[transform-abspos-002.htm] +[regions-transforms-019.htm] type: reftest expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-abspos-007.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-abspos-007.htm.ini deleted file mode 100644 index 0d1a4c62cd7..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-abspos-007.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-abspos-007.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-applies-to-002.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-applies-to-002.htm.ini deleted file mode 100644 index 772cf9743c1..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-applies-to-002.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-applies-to-002.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-001.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-001.htm.ini deleted file mode 100644 index 37ed085b9cc..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-001.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-input-001.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-003.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-003.htm.ini deleted file mode 100644 index f9371d449b5..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-003.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-input-003.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-004.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-004.htm.ini deleted file mode 100644 index 48d3aeb0999..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-004.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-input-004.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-005.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-005.htm.ini deleted file mode 100644 index 9d5a181a35e..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-005.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-input-005.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-006.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-006.htm.ini deleted file mode 100644 index 7e989ce666e..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-006.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-input-006.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-007.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-007.htm.ini deleted file mode 100644 index 94db9087128..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-007.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-input-007.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-008.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-008.htm.ini deleted file mode 100644 index 05768ab4ad6..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-008.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-input-008.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-009.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-009.htm.ini deleted file mode 100644 index f93df01a325..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-009.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-input-009.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-010.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-010.htm.ini deleted file mode 100644 index daf44462efc..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-010.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-input-010.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-011.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-011.htm.ini deleted file mode 100644 index 8180f6b82f3..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-011.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-input-011.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-012.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-012.htm.ini deleted file mode 100644 index 0e69b17aace..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-012.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-input-012.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-013.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-013.htm.ini deleted file mode 100644 index 036a91d280a..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-013.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-input-013.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-014.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-014.htm.ini deleted file mode 100644 index 6526e48aa60..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-014.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-input-014.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-015.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-015.htm.ini deleted file mode 100644 index 410a0fcd4f2..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-015.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-input-015.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-016.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-016.htm.ini deleted file mode 100644 index 210c746e1d3..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-input-016.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-input-016.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-origin-003.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-origin-003.htm.ini deleted file mode 100644 index 3b872de3437..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-origin-003.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-origin-003.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-origin-004.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-origin-004.htm.ini deleted file mode 100644 index 4f3804595ed..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-origin-004.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-origin-004.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-origin-005.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-origin-005.htm.ini deleted file mode 100644 index bf7894566e0..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-origin-005.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-origin-005.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-origin-006.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-origin-006.htm.ini deleted file mode 100644 index ccb2d1684f1..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-origin-006.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-origin-006.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-propagate-inherit-boolean-001.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-propagate-inherit-boolean-001.htm.ini deleted file mode 100644 index ab6b910c46a..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-propagate-inherit-boolean-001.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-propagate-inherit-boolean-001.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-transformable-inline-block.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-transformable-inline-block.htm.ini new file mode 100644 index 00000000000..405256c2282 --- /dev/null +++ b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-transformable-inline-block.htm.ini @@ -0,0 +1,3 @@ +[transform-transformable-inline-block.htm] + type: reftest + expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translate-001.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translate-001.htm.ini deleted file mode 100644 index f637f9c15e4..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translate-001.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-translate-001.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translate-002.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translate-002.htm.ini deleted file mode 100644 index ec3ddd87d53..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translate-002.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-translate-002.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translate-003.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translate-003.htm.ini deleted file mode 100644 index d30862d31e1..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translate-003.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-translate-003.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translate-004.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translate-004.htm.ini deleted file mode 100644 index cf8cf6aa84b..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translate-004.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-translate-004.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translate-005.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translate-005.htm.ini deleted file mode 100644 index 2e618eadb6c..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translate-005.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-translate-005.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatex-001.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatex-001.htm.ini deleted file mode 100644 index 15c47b2a0ba..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatex-001.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-translatex-001.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatex-002.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatex-002.htm.ini deleted file mode 100644 index 8dacbce3916..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatex-002.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-translatex-002.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatex-003.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatex-003.htm.ini deleted file mode 100644 index 26844b670a8..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatex-003.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-translatex-003.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatex-004.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatex-004.htm.ini deleted file mode 100644 index f9c6d1489f5..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatex-004.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-translatex-004.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatex-005.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatex-005.htm.ini deleted file mode 100644 index fbd9d70ad06..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatex-005.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-translatex-005.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatey-001.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatey-001.htm.ini deleted file mode 100644 index 2f8d60a36b4..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatey-001.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-translatey-001.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatey-002.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatey-002.htm.ini deleted file mode 100644 index f04687453cb..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatey-002.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-translatey-002.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatey-003.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatey-003.htm.ini deleted file mode 100644 index edbffe30ec2..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatey-003.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-translatey-003.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatey-004.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatey-004.htm.ini deleted file mode 100644 index dcf577a7a9a..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatey-004.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-translatey-004.htm] - type: reftest - expected: FAIL diff --git a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatey-005.htm.ini b/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatey-005.htm.ini deleted file mode 100644 index 8863865b02b..00000000000 --- a/tests/wpt/metadata-css/css-transforms-1_dev/html/transform-translatey-005.htm.ini +++ /dev/null @@ -1,3 +0,0 @@ -[transform-translatey-005.htm] - type: reftest - expected: FAIL |