implements icon
fix animation
do some relayout