Simon Sapin
6f3c5ce773
Rename BlockLevelKind
to NonReplacedContents
2019-12-13 13:59:15 +01:00
Simon Sapin
58b7005a9b
Make for_maybe_position_relative
take care of relative adjustment.
2019-12-13 13:13:50 +01:00
Simon Sapin
04b701b9e0
Move call to for_maybe_position_relative
out of layout_in_flow_non_replaced_block_level
2019-12-13 12:41:58 +01:00
Simon Sapin
672d971d58
Regroup branches specific to SameFormattingContextBlock
2019-12-13 12:33:07 +01:00
Simon Sapin
c0962aa3fc
Replace the closure in layout_in_flow_non_replaced_block_level
with an enum
2019-12-13 12:09:51 +01:00
Simon Sapin
5ebddf19e6
Layout position: fixed
in the initial containing block
2019-12-12 22:50:11 +01:00
Simon Sapin
c44ee516a1
Give PositioningContext
more responsibilities
...
Iits details are now private to the module.
It has a couple methods that take closures to make sure that "before" and "after" steps are done together:
* In an absolutely positioned box, take care of nested abspos (establish a new containing block, etc.)
* For a box that *might* be `position: relative`, optionally take care of the same.
2019-12-12 22:50:11 +01:00
Simon Sapin
1c8d14ac0d
Upgrade rayon_croissant to 0.2.0
2019-12-12 18:57:18 +01:00
Simon Sapin
9edda952c9
Make adjust_static_positions a method of PositioningContext
2019-12-12 15:43:50 +01:00
Simon Sapin
b43a3de51d
Introduce PositioningContext
2019-12-12 15:37:01 +01:00
Simon Sapin
c895e3d236
Disable use of rayon with --layout-threads 1
instead of panicking
2019-12-10 18:41:24 +01:00
Simon Sapin
14ddf39215
Rename ReplacedContent::used_size to used_size_as_if_inline_element
2019-12-10 15:11:53 +01:00
Simon Sapin
c40583b644
Move replaced box used size computation to a method of ReplacedContents
2019-12-10 12:36:43 +01:00
Simon Sapin
ce7e84be72
Replace percent_resolved_*
functions with methods
2019-12-10 12:36:43 +01:00
Simon Sapin
a2c2b294d5
Move clamp_*
functions to methods of Length
2019-12-10 12:36:43 +01:00
Simon Sapin
fa1adf2ad3
Containing blocks contains styles rather than just a writing mode
2019-12-07 14:25:16 +01:00
Simon Sapin
40ad9a722d
Use the WritingMode bitflags from Stylo
2019-12-07 12:45:36 +01:00
bors-servo
e70397d90a
Auto merge of #25033 - servo:intrinsic, r=nox
...
Add support for inline-block and for computing min/max-content
2019-12-04 16:23:33 -05:00
Anthony Ramine
4ebdc39ecd
Add some helpers to resolve percentages of box sizes
2019-12-04 17:24:45 +01:00
Anthony Ramine
48ceb56339
Implement size extremums
2019-12-04 10:32:58 +01:00
Simon Sapin
34e8cda801
Rename ReplacedContent::layout to make_fragments and simplify its API
2019-12-03 15:11:35 +01:00
Simon Sapin
aa925a5984
Un-allow and fix warnings in components/layout_2020
2019-12-02 16:32:34 +01:00
Anthony Ramine
5a360ac63d
Start supporting images in layout 2020
2019-12-01 10:56:33 +01:00
Anthony Ramine
f24e8d0557
Fix inline margins of in flow blocks in 2020
2019-12-01 10:52:34 +01:00
Anthony Ramine
858bc5aca6
Split FlowChildren in IndependentLayout and FlowLayout
...
The result of doing the layout of an independent formatting context
should be unconcerned with margin collapsing.
2019-11-26 16:36:24 +01:00
Simon Sapin
b2b3ea992c
Make IndependentFormattingContext a struct that owns styles
...
… and has a private enum for its contents.
Privacy forces the rest of the code to go through methods
rather than matching on the enum,
reducing accidental layout-mode-specific behavior.
2019-11-26 15:42:27 +01:00
Anthony Ramine
1446756774
Pass a LayoutContext to TextRun::layout in 2020
2019-11-25 10:54:46 +01:00
Simon Sapin
e38cc1a549
2020: run layout after box construction
2019-10-24 10:43:08 +02:00
Simon Sapin
1bb85ed05b
Make some of layout_2020 private
2019-10-04 17:51:05 +02:00
Anthony Ramine
ec74204fa0
Call BoxTreeRoot::construct from layout_thread_2020
2019-10-04 10:03:42 +02:00
Anthony Ramine
4444c5a2ad
Import victor's layout system 🍷
2019-09-11 10:36:30 +02:00
Simon Sapin
86904757e6
Import files from Victor
...
fdb11f3e87
2019-09-11 10:06:35 +02:00