Properly listen to insets
Various improvements and new widget types