7f9f99ea11051614a7727dfb9f9578b518e76e3c |
|
11-Aug-2011 |
Xavier Ducrohet <xav@android.com> |
Make some methods/fields package private so that layoutlib can access them. Change-Id: I4aeadfbaf8a4f6a459fa19937c21ac23d9e5fb64
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
8b699792b677bd4dd8442b32641ac09d48fdd79c |
|
06-Aug-2011 |
Chet Haase <chet@google.com> |
Fix cancellation of AnimatorSet when child animation has delay Previously, AnimatorSet incorrectly checked whether child animations were 'running' to figure out what to cancel. If a child animation was started, but sitting in a startDelay phase, it was not 'running', so the right cancel/end events would not propagate. The fix is to add a new isStarted() API to Animator, which returns true when the animator has started (but not yet ended), regardless of whether the animator has a startDelay or not. It's basically a superset of the existing isRunning() method, which only returns true when an animator has actually started setting values. Change-Id: I126814cb6637b58295b6d18d9b155235671f99be
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
b8f574a165bf6ec5b316734b367ac274ded4809b |
|
03-Aug-2011 |
Chet Haase <chet@google.com> |
Fix AnimatorSet cancellation issues AnimatorSet was incorrectly ignoring cancel() when it was in the initial startDelay phase. Fix is to change isRunning() to be true if the animator is also in its delay phase. Change-Id: I1a8c877de24fa294beea0ba30d495658255b13b3
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
7dfacdb1c820f955cb3cd6032ff5fbc2dd7d9df5 |
|
12-Jul-2011 |
Chet Haase <chet@google.com> |
Fix Animator cancel() behavior Previously, calling cancel() on an Animator would cause onAnimationCancel events to be sent to all listeners. This was confusing for listeners that were keying off this event for performing other actions, when the original animator wasn't truly canceled (because it wasn't even running, or had already been canceled earlier). This change hinges listener notification on the animator actually running; no events are sent otherwise. Also added the first set of Animator tests to verify that this behavior is correct. Change-Id: I81ab56559b5c0343c8dc7880e1c8235f3020975b
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
d4dd7025a1b356476e119de19a2e2cd5cf50d43c |
|
05-Apr-2011 |
Chet Haase <chet@google.com> |
Fix bug with values in cloned animators. When a ValueAnimator is cloned, we correctly clone the underlying PropertyValuesHolder objects and assign them to the new object. However, we then put values into the new property map using the old values instead of the new ones. This means that the per-property animated values cannot be retrieved with the property names from the cloned animator, because the map refers to the values of the original object, not the cloned object that is actually being animated. Fix is easy: just put the cloned values (which are already being created) into the map. Change-Id: I81282ca1dab6b1767ddc894d57a1110b344b4b0a
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
a00f3865f55c5c9cb74510ee2b239d101230133c |
|
22-Feb-2011 |
Chet Haase <chet@google.com> |
Add ViewPropertyAnimator for easy animation of View properties Change-Id: I2bc52ca16507d8d20004d2d6823e587791272aac
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
154f14508a11627d5a995b6fe2a14a83d794a6fe |
|
24-Feb-2011 |
Chet Haase <chet@google.com> |
Fix bug with bad state in animators Bug 3482310: The playing state was not being correctly set to RUNNING after an animator was start()'d. Instead, we were seeking to the start value (correct), setting the state to SEEKED (also correct), but not resetting the playing state to STOPPED. So when the animation actually started animating values, it didn't recognize that it was starting a STOPPED animation, so it never set its state to RUNNING, and never returned true from isRunning(). Change-Id: Iea92dce98f92f60052d8a9a451094b953f9f0c67
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
e9140a72b1059574046a624b471b2c3a35806496 |
|
17-Feb-2011 |
Chet Haase <chet@google.com> |
Fix invalidation bug with View bounds properties When setLeft/Right/Top/Bottom() functions were called on View, invalidation was only happening at the parent level. When an app is hardware accelerated, this means that the view's display list is not being recreated. So views that were changing size due to these calls were not getting redrawn properly, causing some artifacts in animations (especially LayoutTransition, which calls these setters). Fix is to invalidate the child instead of just the child's bounds in the parent. Change-Id: Ic8b2a5db519345dce617f914c2214738f22031b2
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
add6577a0196258e5a48c5deefcdb12e05c935b3 |
|
10-Feb-2011 |
Chet Haase <chet@google.com> |
Fix animation and layoutTransition issues. There were some subtle timing issues in animators with ending animations that were not completely initialized (possibly because a startDelay'd animator was ended before the delay elapsed). Also, LayoutTransition had bugs around running a transition on a container while a previously-started transition was still in progress. This could result in some minor artifacts or crash bugs, depending on the durations and delays set on the transition animations. Change-Id: Ic6a69601f1ce9a55db15fff6b8ed25950b354491
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
8901ffab294934fc4899143f31bd58f3d58df225 |
|
17-Jan-2011 |
Patrick Dubroy <dubroy@google.com> |
Add a method for clearing all animations on a thread.
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
b2ab04ffb6894f399d5c9ceb15f64eb17b654426 |
|
16-Jan-2011 |
Chet Haase <chet@google.com> |
Remove obsolete DoubleEvaluator Change-Id: I4407468599061ff35c68589988fb1e897de28c69
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
53ee3316bcb3590ff156b3fd7108903c0817c35d |
|
11-Jan-2011 |
Chet Haase <chet@google.com> |
Rename RGBEvaluator to ArgbEvaluator Change-Id: Iee74b475960d623fa757349e4053bd7c58cf5734
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
27c1d4debb3848f5accd5673fffeeacad3e61648 |
|
16-Dec-2010 |
Chet Haase <chet@google.com> |
Fix minor animation and doc issues Change-Id: I0ea077d9434ac3e22e8600f22ca4a24a6a46965c
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
051d35e41f7b21cd8a1608bdce10cf70952c6be4 |
|
14-Dec-2010 |
Chet Haase <chet@google.com> |
Adding TimeAnimator capability (hidden for now) This new class allows listeners to receive callbacks with elapsed time that are sent on the same animation updates as other animators in the system. It will allow simulations that go beyond the current animation system while handling the actual animation timing system and ensuring that those simulations sync up with other typical animations. Change-Id: Iac91c39634218793f6598a7dec5ed71dc9630258
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
e2ab7ccd385cdb6517955c719e1d2b49771bedb6 |
|
07-Dec-2010 |
Chet Haase <chet@google.com> |
Change cancel/end behavior of animations to be synchronous Previously, cancel() and end() calls would simply log a message to be handled later by the animation handler. This caused problems with coordinating complex animations, where some start() events for future animations would occur before end() events for animations already completed. The change is to make these events synchronous (and require them to be called from the appropriate thread), simplifying the code and the usage. Also, fixed various timing and event bugs in AnimatorSet, and removed the getter/setter properties from ObjectAnimator, since an earlier change makes these properties undesirable (because the code will use a faster JNI approach instead of reflection when it can). Change-Id: I05c16645c2a31a92048a6031ddb126eb4312a946
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
730666858692ea396f5ad779654b5d86ff90b6ca |
|
30-Nov-2010 |
Chet Haase <chet@google.com> |
animation bugfix plus xml resources for new View properties There was a bug around animation duration where it was possible, for small durations or large inter-frame times, to calculate fractions outside of the 0-1 range, causing bad value calculations. Unrelated: new View properties for translation, scale, and rotation were added in this release. This commit addes XML resources for those properties. Change-Id: Ieaf5dd729588adb2a40656aa82beecc3576f4af5
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
2970c499388b4dcd1232cd622a9b80b395eeb2b4 |
|
09-Nov-2010 |
Chet Haase <chet@google.com> |
various fixes for animations and javadocs Issues around threading of animations and AnimatorSet bugs are fixed in this change. Unrelated fixes to javadocs in other framework classes are also part of the change. Change-Id: I35f7e03ffdec9143bc2eb155e8f9384798ad35b3
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
7c608f25d494c8a0a671e7373efbb47ca635367e |
|
23-Oct-2010 |
Chet Haase <chet@google.com> |
optimizing for primitive types in animations The animator classes caused autoboxing by converting primitive types (by far the most typical types used in animations) to be converted to their Object equivalents because of various APIs that required Object (like getValue() to get the animated value). This change creates factory methods on some classes instead of the former constructors so that we can create and return private type-specific subclasses which operate directly on the primitive types instead. In particular, float and int are natively supported by the animators now. Support in the APIs for double and long was removed because it seemed like these less common types did not justify the extra baggage of the added API and code. Change-Id: I6008a3883e3d6dd5225005f45f112af148e5a4ea
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
70d4ba15b1f0c1133c5aabc86de828b41e482fff |
|
06-Oct-2010 |
Chet Haase <chet@google.com> |
Performance optimizations for animations and toolkit Change-Id: I316a48273a9cbb428a965e4b849b3e5e9e8202f1
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
e3bc4e6f102fbef760fe0a59dd807363571b0867 |
|
27-Oct-2010 |
Chet Haase <chet@google.com> |
Use ThreadLocal for static Animator variables. Certain fields in Animator are statics, like the list of current animations and the main handler. However, since there may be >1 UI thread per process, these should really be ThreadLocal variables, so that they are local to each UI thread. For example, most animators will cause an invalidation in the view hierarchy, which can only happen in the UI thread for that view. Change-Id: I42be61c781ffac97b527f78ce1ffc2e0cdc42999
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
599ca29986235e07f532c7b112507f6c39b5dba9 |
|
22-Oct-2010 |
Brad Fitzpatrick <bradfitz@android.com> |
Expose (internally only) the number of animations currently running. This will be used for StrictMode to annotate violations with whether or not they janked up an animation. Change-Id: I5bc691f49b74c45279cd2ae044d2a81dcf1204a9
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
5c13d89c1332fcc499379b9064b891187b75ca32 |
|
08-Oct-2010 |
Chet Haase <chet@google.com> |
Optimizing display lists by referencing pointers to resources instead of copying them Change-Id: I81ad3551d74aa1e5bb64d69e33d2eb29a6c1eb6a
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
51b3227c2e08143c2e3dde9d51ae5b6fff36693c |
|
14-Oct-2010 |
Chet Haase <chet@google.com> |
Remove errant minus sign Change-Id: I39a76484884615aa86f4a845eb4637467ec5abc7
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
2794eb3b02e2404d453d3ad22a8a85a138130a07 |
|
13-Oct-2010 |
Chet Haase <chet@google.com> |
Remove generics from Animator APIs Change the manner of constructing Animator-related objects from constructors via generics to factory methods with type-specific method names. Should improve the proliferation of warnings due to generics issues and make the code more readable (less irrelevant angle brackets Floating around). Change-Id: Ib59a7dd72a95d438022e409ddeac48853082b943
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
83d6e8213230fb0805aa019d266842253baeb114 |
|
14-Oct-2010 |
Romain Guy <romainguy@google.com> |
Revert "Remove generics from Animator APIs" This reverts commit 41f041d9986f8a5d45b6cb0b86e881c81a412168.
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
41f041d9986f8a5d45b6cb0b86e881c81a412168 |
|
13-Oct-2010 |
Chet Haase <chet@google.com> |
Remove generics from Animator APIs Change the manner of constructing Animator-related objects from constructors via generics to factory methods with type-specific method names. Should improve the proliferation of warnings due to generics issues and make the code more readable (less irrelevant angle brackets Floating around). Change-Id: I7c1776b15f3c9f245c09fb7de6dc005fdba58fe2
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
608fc3cbed6062f29cd512c08aacb8c1632a8851 |
|
11-Oct-2010 |
Chet Haase <chet@google.com> |
Double the performance of animations. There is a hard-coded limit to the frame rate of animations; this commit increases that rate by changing the inter-frame delay from 30 ms to 10 ms (although the actual delay will be determined by the maximum refresh rate of the system and the system load). For example, the effective maximum on current devices is 55 fps, or a delay of about 16 ms. Change-Id: Id96a41cef36851e2d9508a98934f4b25595251ea
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
e0ee2e9f3102c3c14c873a75a7b04e49787e0fb9 |
|
07-Oct-2010 |
Chet Haase <chet@google.com> |
New TimeInterpolator interface for android.animation package. The new animation package's reliance on the old Interpolator interface (in android.view.animation) was an eyesore. Adding TimeInterpolator, and having the old Interpolator interface extend it, allows the new Animator classes to break the tie to the older animation package completely. However, developers can still use the older Interpolator-based classes, such as AccelerateInterpolator, because they all implicitly extend the new TimeInterpolator class. Change-Id: I41132fa56167ba564f4839113289114d0ea31a92
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
0e0590bf3cb32e73f423c0fe39a180d4b3c4343d |
|
26-Sep-2010 |
Chet Haase <chet@google.com> |
bug fixes in animation classes Change-Id: I5465bc95032c94851b8cf4e4db3477f546e8b0d1
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
3060421045d4d9e411797f91bb509824b03e33fb |
|
23-Sep-2010 |
Jim Miller <jaggies@google.com> |
Add new WaveView widget to framework and integrate into LockScreen. This adds a new "Energy Wave" widget to the internal widgets and integrates it into LockScreen. ValueAnimator needed a slight modification since it expects to be run inside of Activities with a Looper. Additionally, this adds an API, removeAllUpdateListeners(), which is needed to properly recycle ValueAnimator objects. Some minor code cleanup and UI tweaks after review. Changed delay timeout from 1.3s to 0.5s. Change-Id: Ibcf015e61fa8ba79d62f2019f1b29ace7caa00c8
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
b20db3ec34e846010f389880b2cfab4d7bf79820 |
|
10-Sep-2010 |
Chet Haase <chet@google.com> |
Make fragment animations work when fragments go away Change-Id: I136de6ef910cc02b8181fcfa065bdb0770841396
/frameworks/base/core/java/android/animation/ValueAnimator.java
|
a18a86b43e40e3c15dcca0ae0148d641be9b25fe |
|
07-Sep-2010 |
Chet Haase <chet@google.com> |
Rename several animation classes Change-Id: I6a4544875090db485163c8d56de8718f56d267c7
/frameworks/base/core/java/android/animation/ValueAnimator.java
|