make sure stateful size always fills remaining space