bounds_changed is better