about summary refs log tree commit diff stats
path: root/test/layout
Commit message (Collapse)AuthorAgeFilesLines
* 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.)