Currently, layout is driven by the predefined bounding box of a view, which isn't very flexible. Introduce a measurement phase where the layouts not only read the views' bounding box, but actually pass in size constraints as well.