diff options
| author | Alan Viverette <alanv@google.com> | 2014-11-25 09:40:54 -0800 |
|---|---|---|
| committer | Alan Viverette <alanv@google.com> | 2014-11-26 00:36:26 +0000 |
| commit | 5ce0ec0efd541362359bfead8e62ade80a0425ca (patch) | |
| tree | b5390baa6df5120b181018bcdfd2c16256a1fca2 /core/java/android/widget/AbsSeekBar.java | |
| parent | 59093d925decaf6ddf2e952de25e3cdd1b492d81 (diff) | |
Revert "Animates AbsSeekBar progress movement from key presses."
Incorrect implementation that broke the Brightness dialog slider. Reverting
to the previous behavior.
This reverts commit c5c9d0af764f590ae0031b5470192a0a08ca42d1.
BUG: 18510040
Change-Id: I201b1da46be964fcf6f041bb92ef79c335c2d23d
Diffstat (limited to 'core/java/android/widget/AbsSeekBar.java')
| -rw-r--r-- | core/java/android/widget/AbsSeekBar.java | 67 |
1 files changed, 10 insertions, 57 deletions
diff --git a/core/java/android/widget/AbsSeekBar.java b/core/java/android/widget/AbsSeekBar.java index d39960f6b915..4800c7f656de 100644 --- a/core/java/android/widget/AbsSeekBar.java +++ b/core/java/android/widget/AbsSeekBar.java @@ -16,7 +16,6 @@ package android.widget; -import android.animation.ObjectAnimator; import android.annotation.Nullable; import android.content.Context; import android.content.res.ColorStateList; @@ -65,9 +64,6 @@ public abstract class AbsSeekBar extends ProgressBar { * progress. */ private int mKeyProgressIncrement = 1; - private ObjectAnimator mPositionAnimator; - private static final int PROGRESS_ANIMATION_DURATION = 250; - private static final int NO_ALPHA = 0xFF; private float mDisabledAlpha; @@ -388,14 +384,15 @@ public abstract class AbsSeekBar extends ProgressBar { void onProgressRefresh(float scale, boolean fromUser) { super.onProgressRefresh(scale, fromUser); - if (!isAnimationRunning()) { - setThumbPos(scale); - } - } + final Drawable thumb = mThumb; + if (thumb != null) { + setThumbPos(getWidth(), thumb, scale, Integer.MIN_VALUE); - @Override - void onAnimatePosition(float scale, boolean fromUser) { - setThumbPos(scale); + // Since we draw translated, the drawable's bounds that it signals + // for invalidation won't be the actual bounds we want invalidated, + // so just invalidate this whole view. + invalidate(); + } } @Override @@ -440,18 +437,6 @@ public abstract class AbsSeekBar extends ProgressBar { return max > 0 ? getProgress() / (float) max : 0; } - private void setThumbPos(float scale) { - final Drawable thumb = mThumb; - if (thumb != null) { - setThumbPos(getWidth(), thumb, scale, Integer.MIN_VALUE); - // Since we draw translated, the drawable's bounds that it signals - // for invalidation won't be the actual bounds we want invalidated, - // so just invalidate this whole view. - invalidate(); - - } - } - /** * Updates the thumb drawable bounds. * @@ -714,13 +699,13 @@ public abstract class AbsSeekBar extends ProgressBar { switch (keyCode) { case KeyEvent.KEYCODE_DPAD_LEFT: if (progress <= 0) break; - animateSetProgress(progress - mKeyProgressIncrement); + setProgress(progress - mKeyProgressIncrement, true); onKeyChange(); return true; case KeyEvent.KEYCODE_DPAD_RIGHT: if (progress >= getMax()) break; - animateSetProgress(progress + mKeyProgressIncrement); + setProgress(progress + mKeyProgressIncrement, true); onKeyChange(); return true; } @@ -729,38 +714,6 @@ public abstract class AbsSeekBar extends ProgressBar { return super.onKeyDown(keyCode, event); } - boolean isAnimationRunning() { - return mPositionAnimator != null && mPositionAnimator.isRunning(); - } - - /** - * @hide - */ - @Override - public void setProgress(int progress, boolean fromUser) { - if (isAnimationRunning()) { - mPositionAnimator.cancel(); - } - super.setProgress(progress, fromUser); - } - - void animateSetProgress(int progress) { - float curProgress = isAnimationRunning() ? getAnimationPosition() : getProgress(); - - if (progress < 0) { - progress = 0; - } else if (progress > getMax()) { - progress = getMax(); - } - setProgressValueOnly(progress); - - mPositionAnimator = ObjectAnimator.ofFloat(this, "animationPosition", curProgress, - progress); - mPositionAnimator.setDuration(PROGRESS_ANIMATION_DURATION); - mPositionAnimator.setAutoCancel(true); - mPositionAnimator.start(); - } - @Override public void onInitializeAccessibilityEvent(AccessibilityEvent event) { super.onInitializeAccessibilityEvent(event); |
