Function Element.layout
Set element box and lay out element contents.
It computes innerBox
, shrink padding if necessary, and calls
arrangeContent
to lay out the rest.
If you need a custom layout logic, in 99% of situations you should
override arrangeContent
method instead of this one.