Handle multiple animations better

In the case that someone is laying on the button, this should always
animate cleanly between the two values. There was no reason to calculate
the value when the user commences animation, it's easier to do this when
the view resizes.