add animation callback