servo/components/layout
bors-servo cb4e3cb16a
Auto merge of #26758 - jdm:stacking-context-transform-zero, r=mrobinson
Don't create empty stacking contexts in display lists

A recent change to euclid exposed that our display lists can contain Rects that contain NaN values. These NaNs originate from creating stacking contexts with transforms that scale the horizontal or vertical dimensions to 0. WebRender isn't prepared to handle these, so we need to not produce these empty stacking contexts when building the display list.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #26592 and fix #26590
- [x] There are tests for these changes
2020-06-09 13:37:30 -04:00
..
display_list layout: Don't built stacking contexts or display lists for empty blocks. 2020-06-09 11:27:23 -04:00
tests Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
block.rs Rustfmt recent changes. 2019-12-16 14:23:56 +01:00
Cargo.toml Remove some unused dependency declarations 2020-05-29 00:04:34 +02:00
construct.rs Add a 'dom lifetime to GetLayoutData 2020-03-26 13:17:46 +01:00
context.rs Move most animation processing to script 2020-05-12 10:22:14 +02:00
data.rs Replace OpaqueStyleAndLayoutData by StyleAndOpaqueLayoutData 2020-04-06 23:06:13 +02:00
flex.rs Servo build fixes. 2019-12-16 14:23:56 +01:00
floats.rs style: Rename MozLength to Size, and MaxLength to MaxSize. 2019-02-12 02:28:00 +01:00
flow.rs layout: Don't built stacking contexts or display lists for empty blocks. 2020-06-09 11:27:23 -04:00
flow_list.rs Some further removals 2019-05-30 20:27:19 +02:00
flow_ref.rs Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
fragment.rs layout: Don't built stacking contexts or display lists for empty blocks. 2020-06-09 11:27:23 -04:00
generated_content.rs Fix Servo build and unify display representation. 2019-08-15 17:11:08 +02:00
incremental.rs Remove LayoutDamageComputation 2019-01-14 16:10:26 +01:00
inline.rs layout: Don't built stacking contexts or display lists for empty blocks. 2020-06-09 11:27:23 -04:00
layout_debug.rs Fix deprecation warnings 2019-01-28 11:32:40 +01:00
lib.rs Move most animation processing to script 2020-05-12 10:22:14 +02:00
linked_list.rs Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
list_item.rs Update euclid. 2019-07-23 23:09:55 +02:00
model.rs Servo build fixes. 2019-12-16 14:23:56 +01:00
multicol.rs Servo build fixes. 2019-12-16 14:23:56 +01:00
opaque_node.rs Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
parallel.rs Update rayon to dedupe crossbeam-epoch 2019-07-12 21:01:33 +02:00
persistent_list.rs Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
query.rs Don't go through the layout thread to retrieve a node's primary style 2020-04-07 14:34:47 +02:00
sequential.rs Update webrender. 2020-05-11 17:41:56 -04:00
table.rs style: Miscellaneous Servo build fixes. 2020-02-12 02:43:23 +01:00
table_caption.rs Update euclid. 2019-07-23 23:09:55 +02:00
table_cell.rs Add a 'dom lifetime to GetLayoutData 2020-03-26 13:17:46 +01:00
table_colgroup.rs Servo build fixes. 2019-12-16 14:23:56 +01:00
table_row.rs style: Miscellaneous Servo build fixes. 2020-02-12 02:43:23 +01:00
table_rowgroup.rs Update euclid. 2019-07-23 23:09:55 +02:00
table_wrapper.rs Update euclid. 2019-07-23 23:09:55 +02:00
text.rs layout: Resolve word_spacing ahead of time. 2020-02-12 02:43:23 +01:00
traversal.rs layout: Don't built stacking contexts or display lists for empty blocks. 2020-06-09 11:27:23 -04:00
wrapper.rs Implement concept of dirty root 2020-05-19 16:26:36 +02:00