When does viewport bounds gets recalculated?

The demo app has a problem: if you vertically shrink the window using the bottom edge and move it to position y0, then drag the bottom edge again to another position y1, parts of the document after y0 will not be rendered due to the fact the viewport bounds are not recalculated when frame height changes.

My fix to this problem is to remove the check that inspects whether the text container width changed and always set the value of the text container size used by the text layout manager whenever frame size changes: this does fix the problem mentioned above.

However, I would like to know exactly when will the text layout manager recalculate the viewport bounds. This is not documented anywhere, nor in the video.

Replies

Wrong question! Why? Because even

:root {
	container-type: size;
	contain: strict;
	max-width: 100vi; /* you can try 100vw and … */
	max-height: 100vb; /* 100vh too */
	width: 100%;
	height: 100%;
}

doesn’t stop safari from painting elements at “120vi“ or such things. Somewhere outsides from the legal region! Firefox does a bit(!) better, but is unable to calculate even simple things (more worse than Safari). And: moving this restricting part of CSS to some child (body?) is breaking him down too. Forget the thought, you have a piece of control! Go back to table-layout!