reorder delegate calls before blur, DRY animation