Boxes have been a mainstay of how user interfaces are built with GTK; all UIs are constructed by packing controls into boxes, grids, and bins, and controlling the alignment and expansion flags until they reach the desired layout.
This is going to change with the next major release of GTK, 4.0. With the introduction of layout managers, we don't need complex containers with a single layout policy; additionally, GTK is going to support constraint-based layouts, which describe the arrangement of UI elements not by their packing structure but by the relationships between their various attributes.
In this presentation we're going to outline how composite widgets are going to be assembled in the future of GTK applications, and we're going to look at various techniques to achieve complex UI layouts. Additionally, we'll have a look at how tooling can improve to ensure that GTK application maintainers have access to the best developer experience possible.