Cancel animation and jump to current state if not animating picker

Bug: 28629631
Change-Id: I0e1b3c2f2c774e027f2df8c9ab75c7a89bd2ddb7
diff --git a/core/java/android/widget/RadialTimePickerView.java b/core/java/android/widget/RadialTimePickerView.java
index 8c8d38f..02ee2df 100644
--- a/core/java/android/widget/RadialTimePickerView.java
+++ b/core/java/android/widget/RadialTimePickerView.java
@@ -658,6 +658,13 @@
 
         if (animate) {
             animatePicker(hours, ANIM_DURATION_NORMAL);
+        } else {
+            // If we have a pending or running animator, cancel it.
+            if (mHoursToMinutesAnimator != null && mHoursToMinutesAnimator.isStarted()) {
+                mHoursToMinutesAnimator.cancel();
+                mHoursToMinutesAnimator = null;
+            }
+            mHoursToMinutes = hours ? 0.0f : 1.0f;
         }
 
         initData();