diff --git a/api/current.txt b/api/current.txt index fdf9b843d114c..7777db8753c36 100644 --- a/api/current.txt +++ b/api/current.txt @@ -34414,7 +34414,7 @@ package android.view { } public final class ViewAnimationUtils { - method public static final android.animation.ValueAnimator createCircularReveal(android.view.View, int, int, float, float); + method public static final android.animation.Animator createCircularReveal(android.view.View, int, int, float, float); } public class ViewConfiguration { diff --git a/core/java/android/animation/Animator.java b/core/java/android/animation/Animator.java index 95f83aca3eccb..5f80ed783d509 100644 --- a/core/java/android/animation/Animator.java +++ b/core/java/android/animation/Animator.java @@ -433,4 +433,39 @@ public abstract class Animator implements Cloneable { */ void onAnimationResume(Animator animation); } + + /** + *
Whether or not the Animator is allowed to run asynchronously off of + * the UI thread. This is a hint that informs the Animator that it is + * OK to run the animation off-thread, however the Animator may decide + * that it must run the animation on the UI thread anyway. + * + *
Regardless of whether or not the animation runs asynchronously, all + * listener callbacks will be called on the UI thread.
+ * + *To be able to use this hint the following must be true:
+ *- * The View is prevented from drawing within the circle, so the content - * behind the View shows through. - * - * @param centerX The x coordinate of the center of the animating circle. - * @param centerY The y coordinate of the center of the animating circle. - * @param startRadius The starting radius of the animating circle. - * @param endRadius The ending radius of the animating circle. - * - * @hide - */ - public final ValueAnimator createClearCircleAnimator(int centerX, int centerY, - float startRadius, float endRadius) { - return new RevealAnimator(this, centerX, centerY, startRadius, endRadius, true); - } - /** * Returns the current StateListAnimator if exists. * diff --git a/core/java/android/view/ViewAnimationUtils.java b/core/java/android/view/ViewAnimationUtils.java index bee35ae1c3ef3..0a53b91819061 100644 --- a/core/java/android/view/ViewAnimationUtils.java +++ b/core/java/android/view/ViewAnimationUtils.java @@ -16,8 +16,8 @@ package android.view; +import android.animation.Animator; import android.animation.RevealAnimator; -import android.animation.ValueAnimator; /** * Defines common utilities for working with View's animations. @@ -36,7 +36,7 @@ public final class ViewAnimationUtils { * @param startRadius The starting radius of the animating circle. * @param endRadius The ending radius of the animating circle. */ - public static final ValueAnimator createCircularReveal(View view, + public static final Animator createCircularReveal(View view, int centerX, int centerY, float startRadius, float endRadius) { return new RevealAnimator(view, centerX, centerY, startRadius, endRadius, false); } diff --git a/packages/SystemUI/src/com/android/systemui/qs/CircularClipper.java b/packages/SystemUI/src/com/android/systemui/qs/CircularClipper.java index 327ed6a4e6d61..90275c1fc1fb2 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/CircularClipper.java +++ b/packages/SystemUI/src/com/android/systemui/qs/CircularClipper.java @@ -19,7 +19,6 @@ package com.android.systemui.qs; import android.animation.Animator; import android.animation.Animator.AnimatorListener; import android.animation.AnimatorListenerAdapter; -import android.animation.ValueAnimator; import android.view.View; import android.view.ViewAnimationUtils; @@ -28,7 +27,7 @@ public class CircularClipper { private final View mTarget; - private ValueAnimator mAnimator; + private Animator mAnimator; public CircularClipper(View target) { mTarget = target; diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/ActivatableNotificationView.java b/packages/SystemUI/src/com/android/systemui/statusbar/ActivatableNotificationView.java index c02a5987b94e8..944a407972014 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/ActivatableNotificationView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/ActivatableNotificationView.java @@ -244,7 +244,7 @@ public abstract class ActivatableNotificationView extends ExpandableOutlineView int widthHalf = mBackgroundNormal.getWidth()/2; int heightHalf = mBackgroundNormal.getActualHeight()/2; float radius = (float) Math.sqrt(widthHalf*widthHalf + heightHalf*heightHalf); - ValueAnimator animator = + Animator animator = ViewAnimationUtils.createCircularReveal(mBackgroundNormal, widthHalf, heightHalf, 0, radius); mBackgroundNormal.setVisibility(View.VISIBLE); diff --git a/tests/HwAccelerationTest/src/com/android/test/hwui/RevealActivity.java b/tests/HwAccelerationTest/src/com/android/test/hwui/RevealActivity.java index d27be6932530c..3360e3036205b 100644 --- a/tests/HwAccelerationTest/src/com/android/test/hwui/RevealActivity.java +++ b/tests/HwAccelerationTest/src/com/android/test/hwui/RevealActivity.java @@ -16,7 +16,7 @@ package com.android.test.hwui; -import android.animation.ValueAnimator; +import android.animation.Animator; import android.app.Activity; import android.content.Context; import android.graphics.Canvas; @@ -54,7 +54,7 @@ public class RevealActivity extends Activity implements OnClickListener { @Override public void onClick(View view) { - ValueAnimator animator = ViewAnimationUtils.createCircularReveal(view, + Animator animator = ViewAnimationUtils.createCircularReveal(view, view.getWidth() / 2, view.getHeight() / 2, 0, Math.max(view.getWidth(), view.getHeight())); animator.setDuration(DURATION);