1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-29 03:27:44 +00:00

LibWeb: Use fixed-point saturated arithmetics for CSSPixels

Using fixed-point saturated arithmetics for CSSPixels allows to avoid
accumulating floating-point errors.

This implementation is not complete yet: currently saturated
arithmetics implemented only for addition. But it is enough to not
regress any of layout tests we have :)

See https://github.com/SerenityOS/serenity/issues/18566
This commit is contained in:
Aliaksandr Kalenik 2023-07-23 01:09:39 +02:00 committed by Andreas Kling
parent 5cdd03fc53
commit bec07d4af7
136 changed files with 1938 additions and 1844 deletions

View file

@ -4,23 +4,23 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline
Box <div.container> at (9,9) content-size 500x102 flex-container(row) [FFC] children: not-inline
BlockContainer <(anonymous)> (not painted) [BFC] children: inline
TextNode <#text>
BlockContainer <div.box> at (10,10) content-size 229.333333x100 flex-item [BFC] children: inline
BlockContainer <div.box> at (10,10) content-size 229.328125x100 flex-item [BFC] children: inline
line 0 width: 144.546875, height: 17.46875, bottom: 17.46875, baseline: 13.53125
frag 0 from TextNode start: 0, length: 17, rect: [10,10 144.546875x17.46875]
"1 I grow the most"
TextNode <#text>
BlockContainer <(anonymous)> (not painted) [BFC] children: inline
TextNode <#text>
BlockContainer <div.box> at (241.333333,10) content-size 164.666666x100 flex-item [BFC] children: inline
BlockContainer <div.box> at (241.328125,10) content-size 164.65625x100 flex-item [BFC] children: inline
line 0 width: 67.375, height: 17.46875, bottom: 17.46875, baseline: 13.53125
frag 0 from TextNode start: 0, length: 8, rect: [241.333333,10 67.375x17.46875]
frag 0 from TextNode start: 0, length: 8, rect: [241.328125,10 67.375x17.46875]
"2 I grow"
TextNode <#text>
BlockContainer <(anonymous)> (not painted) [BFC] children: inline
TextNode <#text>
BlockContainer <div.box> at (408,10) content-size 100x100 flex-item [BFC] children: inline
BlockContainer <div.box> at (407.984375,10) content-size 100x100 flex-item [BFC] children: inline
line 0 width: 68, height: 17.46875, bottom: 17.46875, baseline: 13.53125
frag 0 from TextNode start: 0, length: 9, rect: [408,10 68x17.46875]
frag 0 from TextNode start: 0, length: 9, rect: [407.984375,10 68x17.46875]
"3 I don't"
TextNode <#text>
BlockContainer <(anonymous)> (not painted) [BFC] children: inline