Embrace the flexible box model in the widgets

Ok, it makes senses.