mirror of
https://github.com/servo/servo.git
synced 2025-08-07 06:25:32 +01:00
Previously, layout was handling scrollable overflow and srolling area calculation separately, only excluding the "unreachable scrollable overflow region" at the last step. In addition, `position: absolute` was not included in scrollable overflow calculation. This change combines the two concepts into a single scrollable overflow calculation and starts taking into account `position: absolute`. Finally, `BoxFragment::scrollable_overflow_for_parent` is converted to use early returns which reduces the amount of indentation. Fixes #35928. Fixes #37204. Testing: This causes some WPT test to pass, but also two to start failing: - `/css/css-masking/clip-path/clip-path-fixed-scroll.html`: This seems to fail because script is scrolling past the boundaries of the document. This is a failure that was uncovered by the fixed element now being added to the page's scroll area. - `/css/css-overflow/overflow-outside-padding.html`: One test has started to fail here because now the absolutely positioned element is included in the scroll area, and I think there is an issue with how we are placing RTL items with negative margins. Signed-off-by: Martin Robinson <mrobinson@igalia.com>
24 lines
401 B
INI
Vendored
24 lines
401 B
INI
Vendored
[positon-absolute-scrollable-overflow-001.html]
|
|
[.containing-block 1]
|
|
expected: FAIL
|
|
|
|
[.containing-block 2]
|
|
expected: FAIL
|
|
|
|
[.containing-block 3]
|
|
expected: FAIL
|
|
|
|
[.containing-block 4]
|
|
expected: FAIL
|
|
|
|
[.containing-block 8]
|
|
expected: FAIL
|
|
|
|
[.containing-block 9]
|
|
expected: FAIL
|
|
|
|
[.containing-block 10]
|
|
expected: FAIL
|
|
|
|
[.containing-block 11]
|
|
expected: FAIL
|