From b5537c452271634b6ff3981b0624fa65384abd5b Mon Sep 17 00:00:00 2001 From: Romain Guy Date: Tue, 30 Jun 2009 12:39:18 -0700 Subject: [PATCH] Replace indeterminate progress animated asset with new ones --- api/current.xml | 175 +++++++++++------- core/java/android/app/SearchDialog.java | 5 +- core/java/android/widget/ProgressBar.java | 11 +- core/res/res/drawable/progress_large.xml | 66 +++---- .../res/res/drawable/progress_large_white.xml | 25 +++ core/res/res/drawable/progress_medium.xml | 64 +++---- .../res/drawable/progress_medium_white.xml | 25 +++ core/res/res/drawable/progress_small.xml | 66 +++---- .../res/drawable/progress_small_titlebar.xml | 66 +++---- .../res/res/drawable/progress_small_white.xml | 25 +++ core/res/res/drawable/spinner_black_16.png | Bin 0 -> 291 bytes core/res/res/drawable/spinner_black_48.png | Bin 0 -> 1022 bytes core/res/res/drawable/spinner_black_76.png | Bin 0 -> 1086 bytes core/res/res/drawable/spinner_white_16.png | Bin 0 -> 2968 bytes core/res/res/drawable/spinner_white_48.png | Bin 0 -> 782 bytes core/res/res/drawable/spinner_white_76.png | Bin 0 -> 3745 bytes core/res/res/values/attrs.xml | 6 + core/res/res/values/public.xml | 6 + core/res/res/values/styles.xml | 18 +- core/res/res/values/themes.xml | 10 + .../android/graphics/drawable/Animatable.java | 39 ++++ .../drawable/AnimatedRotateDrawable.java | 27 ++- .../graphics/drawable/AnimationDrawable.java | 2 +- 23 files changed, 384 insertions(+), 252 deletions(-) create mode 100644 core/res/res/drawable/progress_large_white.xml create mode 100644 core/res/res/drawable/progress_medium_white.xml create mode 100644 core/res/res/drawable/progress_small_white.xml create mode 100644 core/res/res/drawable/spinner_black_16.png create mode 100644 core/res/res/drawable/spinner_black_48.png create mode 100644 core/res/res/drawable/spinner_black_76.png create mode 100644 core/res/res/drawable/spinner_white_16.png create mode 100644 core/res/res/drawable/spinner_white_48.png create mode 100644 core/res/res/drawable/spinner_white_76.png create mode 100644 graphics/java/android/graphics/drawable/Animatable.java diff --git a/api/current.xml b/api/current.xml index 673d053e111f9..787fcb41b8c82 100644 --- a/api/current.xml +++ b/api/current.xml @@ -3419,39 +3419,6 @@ visibility="public" > - - - - - - + + + + + + + + + + + + - - - - - - + + + + + + + + + + - - - - - - - - - - - - - - - + diff --git a/core/res/res/drawable/progress_large_white.xml b/core/res/res/drawable/progress_large_white.xml new file mode 100644 index 0000000000000..c690ed4e0e9ae --- /dev/null +++ b/core/res/res/drawable/progress_large_white.xml @@ -0,0 +1,25 @@ + + + diff --git a/core/res/res/drawable/progress_medium.xml b/core/res/res/drawable/progress_medium.xml index 92aebb51a512a..eb1bd50d17d73 100644 --- a/core/res/res/drawable/progress_medium.xml +++ b/core/res/res/drawable/progress_medium.xml @@ -1,43 +1,25 @@ - - - - - - - - - - - - - + diff --git a/core/res/res/drawable/progress_medium_white.xml b/core/res/res/drawable/progress_medium_white.xml new file mode 100644 index 0000000000000..b4f9b318a902a --- /dev/null +++ b/core/res/res/drawable/progress_medium_white.xml @@ -0,0 +1,25 @@ + + + diff --git a/core/res/res/drawable/progress_small.xml b/core/res/res/drawable/progress_small.xml index e5b0021d59cf5..e0ee5e47d8305 100644 --- a/core/res/res/drawable/progress_small.xml +++ b/core/res/res/drawable/progress_small.xml @@ -1,45 +1,25 @@ - - - - - - - - - - - - - - - + diff --git a/core/res/res/drawable/progress_small_titlebar.xml b/core/res/res/drawable/progress_small_titlebar.xml index cf8e41cb373dc..8cfba864b5b2c 100644 --- a/core/res/res/drawable/progress_small_titlebar.xml +++ b/core/res/res/drawable/progress_small_titlebar.xml @@ -1,45 +1,25 @@ - - - - - - - - - - - - - - - + diff --git a/core/res/res/drawable/progress_small_white.xml b/core/res/res/drawable/progress_small_white.xml new file mode 100644 index 0000000000000..8cfba864b5b2c --- /dev/null +++ b/core/res/res/drawable/progress_small_white.xml @@ -0,0 +1,25 @@ + + + diff --git a/core/res/res/drawable/spinner_black_16.png b/core/res/res/drawable/spinner_black_16.png new file mode 100644 index 0000000000000000000000000000000000000000..5ee33cea6fa7d1672d9ad3661782f873b3a02468 GIT binary patch literal 291 zcmV+;0o?wHP)9C6gx9hi7)mC6?hVngrEhrV4Qhc^Y+x pqN(OWm`}>;*G99VY0BTae*xyid7D(8jXeMW002ovPDHLkV1h)RcuD{O literal 0 HcmV?d00001 diff --git a/core/res/res/drawable/spinner_black_48.png b/core/res/res/drawable/spinner_black_48.png new file mode 100644 index 0000000000000000000000000000000000000000..3a681926b537f4fbf5d2f423dc724d03490be0ca GIT binary patch literal 1022 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 M07*qoM6N<$f-`V&hyVZp literal 0 HcmV?d00001 diff --git a/core/res/res/drawable/spinner_white_76.png b/core/res/res/drawable/spinner_white_76.png new file mode 100644 index 0000000000000000000000000000000000000000..f53e8ffdb193c4e3f49c599956f043649e508e5b GIT binary patch literal 3745 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 LNkvXXu0mjfTl@Bl literal 0 HcmV?d00001 diff --git a/core/res/res/values/attrs.xml b/core/res/res/values/attrs.xml index d0701070e3564..3e93b0266e352 100644 --- a/core/res/res/values/attrs.xml +++ b/core/res/res/values/attrs.xml @@ -350,6 +350,12 @@ + + + + + + diff --git a/core/res/res/values/public.xml b/core/res/res/values/public.xml index 14d8dbe20bfe8..2121669c91747 100644 --- a/core/res/res/values/public.xml +++ b/core/res/res/values/public.xml @@ -1120,11 +1120,17 @@ + + + + + + diff --git a/core/res/res/values/styles.xml b/core/res/res/values/styles.xml index 648a7dd691cdf..7d235ec8d4ef9 100644 --- a/core/res/res/values/styles.xml +++ b/core/res/res/values/styles.xml @@ -243,7 +243,7 @@ + + + + + + diff --git a/core/res/res/values/themes.xml b/core/res/res/values/themes.xml index f37d514e6e1d2..bd6e1df10f902 100644 --- a/core/res/res/values/themes.xml +++ b/core/res/res/values/themes.xml @@ -154,6 +154,9 @@ @android:style/Widget.ProgressBar.Small @android:style/Widget.ProgressBar.Small.Title @android:style/Widget.ProgressBar.Large + @android:style/Widget.ProgressBar.Inverse + @android:style/Widget.ProgressBar.Small.Inverse + @android:style/Widget.ProgressBar.Large.Inverse @android:style/Widget.SeekBar @android:style/Widget.RatingBar @android:style/Widget.RatingBar.Indicator @@ -233,6 +236,13 @@ @android:style/Widget.ListView.White @drawable/divider_horizontal_bright @android:style/Widget.TextView.ListSeparator.White + + @android:style/Widget.ProgressBar.Inverse + @android:style/Widget.ProgressBar.Small.Inverse + @android:style/Widget.ProgressBar.Large.Inverse + @android:style/Widget.ProgressBar + @android:style/Widget.ProgressBar.Small + @android:style/Widget.ProgressBar.Large diff --git a/graphics/java/android/graphics/drawable/Animatable.java b/graphics/java/android/graphics/drawable/Animatable.java new file mode 100644 index 0000000000000..9dc62c36d6180 --- /dev/null +++ b/graphics/java/android/graphics/drawable/Animatable.java @@ -0,0 +1,39 @@ +/* + * Copyright (C) 2009 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package android.graphics.drawable; + +/** + * Interface that drawables suporting animations should implement. + */ +public interface Animatable { + /** + * Starts the drawable's animation. + */ + void start(); + + /** + * Stops the drawable's animation. + */ + void stop(); + + /** + * Indicates whether the animation is running. + * + * @return True if the animation is running, false otherwise. + */ + boolean isRunning(); +} diff --git a/graphics/java/android/graphics/drawable/AnimatedRotateDrawable.java b/graphics/java/android/graphics/drawable/AnimatedRotateDrawable.java index 08d295d1820e5..ac96f20bc5274 100644 --- a/graphics/java/android/graphics/drawable/AnimatedRotateDrawable.java +++ b/graphics/java/android/graphics/drawable/AnimatedRotateDrawable.java @@ -35,11 +35,14 @@ import com.android.internal.R; /** * @hide */ -public class AnimatedRotateDrawable extends Drawable implements Drawable.Callback, Runnable { +public class AnimatedRotateDrawable extends Drawable implements Drawable.Callback, Runnable, + Animatable { + private AnimatedRotateState mState; private boolean mMutated; private float mCurrentDegrees; private float mIncrement; + private boolean mRunning; public AnimatedRotateDrawable() { this(null); @@ -80,10 +83,24 @@ public class AnimatedRotateDrawable extends Drawable implements Drawable.Callbac drawable.draw(canvas); canvas.restoreToCount(saveCount); - - nextFrame(); } - + + public void start() { + if (!mRunning) { + mRunning = true; + nextFrame(); + } + } + + public void stop() { + mRunning = false; + unscheduleSelf(this); + } + + public boolean isRunning() { + return mRunning; + } + private void nextFrame() { unscheduleSelf(this); scheduleSelf(this, SystemClock.uptimeMillis() + mState.mFrameDuration); @@ -96,8 +113,8 @@ public class AnimatedRotateDrawable extends Drawable implements Drawable.Callbac if (mCurrentDegrees > (360.0f - mIncrement)) { mCurrentDegrees = 0.0f; } - nextFrame(); invalidateSelf(); + nextFrame(); } @Override diff --git a/graphics/java/android/graphics/drawable/AnimationDrawable.java b/graphics/java/android/graphics/drawable/AnimationDrawable.java index bab1703fbf242..68718c9763eb6 100644 --- a/graphics/java/android/graphics/drawable/AnimationDrawable.java +++ b/graphics/java/android/graphics/drawable/AnimationDrawable.java @@ -71,7 +71,7 @@ import android.util.AttributeSet; * @attr ref android.R.styleable#AnimationDrawableItem_duration * @attr ref android.R.styleable#AnimationDrawableItem_drawable */ -public class AnimationDrawable extends DrawableContainer implements Runnable { +public class AnimationDrawable extends DrawableContainer implements Runnable, Animatable { private final AnimationState mAnimationState; private int mCurFrame = -1; private boolean mMutated;