about summary refs log tree commit diff stats
path: root/test/layout
Commit message (Collapse)AuthorAgeFilesLines
* layout: remove line-heightbptato2024-09-214-12/+2
| | | | | This was a bad idea that, despite my best efforts, never worked properly.
* layout: fix table height constraint typebptato2024-08-302-0/+26
| | | | | it's really min-height, not height; consistency is not CSS's strong suit...
* layout: fix whitespace weirdnessbptato2024-08-232-0/+6
| | | | | avoid adding whitespace to the previous atom if it's not on the current line
* xhr: more progressbptato2024-08-151-4/+4
| | | | | | | | | | * add responseText, response * add net tests -> currently sync XHR only; should find a way to do async tests... * update monoucha -> simplified & updated some related code that no longer worked properly
* cssvalues, sheet: fix some more case sensitivity bugsbptato2024-08-021-1/+1
|
* cssvalues, twtstr, mediaquery: refactor & fixesbptato2024-08-022-0/+10
| | | | | | | * cssvalues, twtstr: unify enum parsing code paths, parse enums by bisearch instead of hash tables * mediaquery: refactor (long overdue), fix range comparison syntax parsing, make ident comparisons case-insensitive (as they should be)
* layout: inline table fixesbptato2024-07-273-1/+34
| | | | | | | * properly wrap inline internal table boxes in inline-table (instead of block-level table) * fix missing baseline in table wrapper boxes * fix wrong wrapping of misparented table/row/row group children
* layout: position: relative, absolute fixesbptato2024-07-262-0/+11
| | | | | | | | | | * support position: absolute on flex items * proper top/bottom/left/right calculation for position: relative * push positioned flex box sizes to positioned stack Still not perfect: position: absolute should always resolve percentage sizes and top/bottom/left/right, meaning absolute layout needs to be delayed until its containing box is fully layouted.
* layout: fix incorrect absolute positioningbptato2024-07-252-0/+71
| | | | It was broken for parent boxes with indefinite sizes.
* layout: min/max sizing fixesbptato2024-07-252-0/+2
| | | | | | | * fix max size trumping min size * respect min-width/max-width/min-height/max-height for images * fix xminwidth calculation for percentage-sized images with an indefinite containing size
* layout: fix various flex column sizing bugsbptato2024-07-224-0/+18
| | | | | | * fix flex column item width not being stretched * set minimum flex column height to the layouted item's height (to avoid overlap)
* layout: fix positioning bugbptato2024-07-022-0/+4
| | | | | top/left/right/bottom should only be used in renderdocument with position: absolute.
* layout: flex padding/margin fixesbptato2024-06-304-0/+19
|
* layout: fix text-align + padding coloringbptato2024-06-292-2/+2
|
* layout: inline fixes & improvementsbptato2024-06-274-8/+15
| | | | | | | | | | | | | | | * fix text-align breaking down in the presence of floats * improve (and simplify) background color area painting This greatly simplifies inline layout by removing the additional text-align atom movement code and replacing it with a full re-layout when needed. That re-layout only occurs in (rare) cases where the text is likely to be relatively short anyway, so it's probably a win in any remotely realistic layout. This has also made it possible to at last merge the last three passes (horizontal/vertical alignment and background painting) and drop that weird synchronized tree + vector traversal.
* test: print running test names to the same linebptato2024-06-231-1/+1
|
* layout: avoid shrink-to-fit padding/margin overflowbptato2024-06-232-0/+15
|
* layout: get rid of incorrect hackbptato2024-06-232-0/+7
|
* cssvalues: add "clear" to table wrapper boxbptato2024-06-112-0/+5
| | | | this one is weird but I'm sure the standard is technically right
* renderdocument: handle overlapping double width charsbptato2024-06-022-0/+9
| | | | | See attached test case; previously, this would result in a missing space in visual mode and a crash in dump mode.
* layout: clean up inline tree constructionbptato2024-06-012-0/+5
| | | | | | | Much cleaner than the previous solution. Should also be somewhat less wasteful, as we no longer constantly rebuild the same tree with new branches.
* test: update acid1.color.expectedbptato2024-05-311-1/+1
| | | | | I would prefer it to not cut off the canvas background color, but the current output is just as valid.
* layout: line box sizing fixesbptato2024-05-314-0/+55
| | | | | * do not use inline block computed values for wrapper fragment * fix minimum line box height calculation
* layout: fix a width sizing bugbptato2024-05-302-0/+6
| | | | | | | As expected, the mystery line was just hiding another bug. (In particular, indefinite containing size constraints were not denied in resolveContentWidth, so it only (accidentally) worked with stretched sizes.)
* layout: fix caption margin calculationbptato2024-05-302-0/+19
| | | | | | * merge caption sizing code path with layoutRootBlock * fix caption margins being disregarded * fix incorrect positioning of `caption-side: bottom'
* layout: fix clear on blocks establishing new BFCsbptato2024-05-302-0/+10
| | | | | | | | | | | As per standard: > Adjoining vertical margins collapse, except: > [...] > If the top and bottom margins of an element with clearance are > adjoining, its margins collapse with the adjoining margins of > following siblings but that resulting margin does not collapse with > the bottom margin of the parent block.
* layout: fix crash on inline tablesbptato2024-05-282-0/+3
|
* layout: remove BlockBoxBuidlerbptato2024-05-274-0/+9
| | | | | | | | | | Instead of allocating a separate object for each box, just re-use a single BlockBox on re-layouts. This means that now the (block-level) tree is built in its final form in the first pass. (Inline boxes remain the same as before for now.)
* layout: list item improvements, fix inner markersbptato2024-05-252-0/+11
| | | | | * fix list-style-position: inside * get rid of ListItemBoxBuilder
* test: inline-backgrounds updatebptato2024-05-211-2/+0
| | | | Both outputs suck, but it probably doesn't matter much.
* layout: fix BFC positioning in presence of floatsbptato2024-05-194-0/+47
| | | | | | | | | | | | | Previously, the following printed "2" instead of "12": <div style=float:left>1</div><div style=display:flow-root>2</div> This fixes the above problem in the laziest possible way: we relayout once in the smallest possible space the BFC fits in when floats exist. See the comment in the code for details. As a nice bonus, this also fixes tables overlapping with floated boxes, by pretending that they establish a BFC.
* layout: relative positioning fixesbptato2024-05-182-0/+21
| | | | Fix percentage-based left/right etc.
* test: text-transformbptato2024-05-162-0/+3
|
* layout: another table colwidth fixbptato2024-05-082-0/+8
| | | | | | Turns out we also have to *expand* column width, if the specified column width is too small *and* no unspecified column exists to take the rest of the place.
* layout: table cell resizing fixesbptato2024-05-052-0/+28
|
* layout: fix float size in table cells; remove redundant positioningbptato2024-04-273-1/+12
|
* test: add js & layout testsbptato2024-04-2158-0/+896
(Sadly some layout tests still fail.)
ab192ad4aa2e4'>^
6bad38c2 ^
d9c47c9b ^































6bad38c2 ^
d9c47c9b ^









279737ba ^
d9c47c9b ^
ea261b88 ^
6b1b035d ^
ea261b88 ^
7344a68f ^
ea261b88 ^
7344a68f ^
ea261b88 ^
dd9f6f82 ^
ea261b88 ^
dd9f6f82 ^

2fe5d3e9 ^





dd9f6f82 ^
ea261b88 ^
dd9f6f82 ^
6bad38c2 ^
7344a68f ^
ea261b88 ^
7344a68f ^
6bad38c2 ^
ea261b88 ^

dd9f6f82 ^
279737ba ^

dd9f6f82 ^





6bad38c2 ^
dd9f6f82 ^

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211