History log of /frameworks/base/core/java/android/animation/PropertyValuesHolder.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
a282745fb8904645d54562d3857626f69f2e95e8 09-Jun-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Simplify KeyframeSet to avoid caching."
a6b967cfc54408f6ee78ae0e4695eca6efd62e89 03-Jun-2016 Doris Liu <tianliu@google.com> Support Keyframe definition for AVD on RT

BUG: 27441613
Change-Id: Iece386f65f3704d1b7caa2b3690a8d3048ccf6e2
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
2c0f9885e59f0520bf17fb90867fd6f620d89fa5 27-Apr-2016 George Mount <mount@google.com> Simplify KeyframeSet to avoid caching.

Bug 27367940


Change-Id: I76426def5d4b46c0a0ba534fd952f6c41725c74a
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
94db09917a17976135e2c63d8e4171c54730c079 01-Jun-2016 Doris Liu <tianliu@google.com> Throw Exception for wrong valueType with API guard

Previously, wrong valueType error is swallowed in jni. As a result,
some animations are quietly skipped without letting developers know.
This CL maintains that behavior for pre-N, and throws Exception
to notify developers of the error for N and above.

Bug: 29009391
Change-Id: I3e8f003cdb97d214da72af3f93a84f64797b1c2c
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
9f3b31b9530a2121b4557fc312972c4faa133d5e 20-May-2016 Doris Liu <tianliu@google.com> Improve the property modification effiency of VectorDrawable animators

Previously, the VectorDrawable animators modify the VD properties by
doing reflection based on the property name. This CL avoids the overhead
of calling reflection by wrapping the setters of VD objects in
Float/IntProperty.

Bug: 28124049
Change-Id: I562c8d749fdfe508564c82a700a92e835cdd9ff4
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
fa21bdfd5a8a5da3ec0530f7cc884994f92dc597 22-Apr-2016 Chet Haase <chet@google.com> Document behavior of object references in Animator classes

Animators that are created with Object values may have undefined
behavior when those objects are changed outside of the animator itself.
For example, an animator created with a start Rect and end Rect
will animate the bounds between those two objects. But if the caller
changes either the start or end rect before or during the animation,
that will affect the values used on every frame of the animation.

Issue #28304520 Strange interpolation of property values holder values

Change-Id: Id6ac19c8369ae34450e6b53d68f5e492b27c577e
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
d98f4ba86c02714d94ec3b6f35345cb0b04f7778 14-Mar-2016 George Mount <mount@google.com> Add @SafeVarargs for methods using typevar varargs.

Bug 27142336
Using a type variable in a varargs leads to a javac warning
because type variables are treated as Object after compilation.
Because these uses do not require a specific typed array, we
can use @SafeVarargs to suppress the warning.

Change-Id: I860bcc79667a9c85c381c7994fd1d798209d7c66
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
766431aa57c16ece8842287a92b2e7208e3b8ac3 04-Feb-2016 Doris Liu <tianliu@google.com> Revert "Revert "VectorDrawable native rendering - Step 4 of MANY""

This reverts commit 5a11e8d0ba21624025b89ac63bbd18befa55be0e.

Change-Id: I7a48b59c4f930dad65ddc8590c25a12636244ea2
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
5a11e8d0ba21624025b89ac63bbd18befa55be0e 04-Feb-2016 Doris Liu <tianliu@google.com> Revert "VectorDrawable native rendering - Step 4 of MANY"

b/26949340 and b/26975469, b/26975079 as well

This reverts commit f276acd98457bcaabc9e79a17a736b3b484f005e.

Change-Id: I4b55177daf0d289bc03604c71fd4bf579f65073a
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
f276acd98457bcaabc9e79a17a736b3b484f005e 07-Jan-2016 Doris Liu <tianliu@google.com> VectorDrawable native rendering - Step 4 of MANY

This CL runs VectorDrawable animation on RenderThread. The changes in this CL
include:
- Convert all the animators in AnimatorSet for AVD into a set of RenderNodeAnimators.
- Hook up the new animators with RenderThread
- Add drawOp in RecordingCanvas for drawing VD so that during the animation
on RenderThread, all the property changes on VD can be reflected on the screen.

TODO:
- Implement reverse and reset for AVD.

Change-Id: I2df1d754f2db0ad098d9c15dde4bb2bdfafc2315
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
406a02b59d3a8f9890509200f048c23c3b3200b7 12-Jan-2016 Chet Haase <chet@google.com> Don't double-set keyframe values when Property exists

There is logic in PVH.setupValue() that sets the value of
the appropriate keyframe from a Property, if that Property object
exists for the animator. But after that is done, it goes ahead and sets
the same keyframe value based on the getter for the target object.
This is not only redundant; it is wrong (in the odd situation in which
a getter would return something different than Property.get()).

The solution is to return early once we've set the value with the
Property object.

Issue #26471646 PropertyValuesHolder uses reflection in setupValue when a Property is being used

Change-Id: I12634a25661400f13f44872ba17625b32e93ca19
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
08c7116ab9cd04ad6dd3c04aa1017237e7f409ac 28-Feb-2015 John Spurlock <jspurlock@google.com> Remove unused imports in frameworks/base.

Change-Id: I031443de83f93eb57a98863001826671b18f3b17
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
691487d2c370dc2c7dbf360a25244b99651c18af 11-Nov-2014 George Mount <mount@google.com> Remove unnecessary reflection lookup in Animators.

Bug 17978210

When Properties are used with PropertyValuesHolders or
ObjectAnimators, the reflection lookup for getters and
setters is unnecessary.

Fixed problem in which static maps were being protected
by instance locks.

Fixed problem where we were repeatedly doing a
reflection lookup on methods that don't exist.

Change-Id: Ic0a1b62357f3aaaa4c900fef6087583ad0e964b6
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
d422dc358f0100106dc07d7b903201eb9b043b11 25-Sep-2014 Yigit Boyar <yboyar@google.com> Added a generic configuration and theme based cache

For now, only animators use it but we can consider migrating
drawable cache to it as well.

Bug: 17456416
Change-Id: I571b96856805edb171f0fc52e6bff5a365f46b70
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
984011f6850fd4b6ad4db6d6022bd475d7a2c712 21-Aug-2014 George Mount <mount@google.com> Use optimized Keyframes for Path animations.

Bug 17005728

Change-Id: I2e109ed1a3e768e1e0286fc3950516f16509e591
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
8619f48fb353740f7fd3f6eaa86fe493377e6cad 16-Jul-2014 Yigit Boyar <yboyar@google.com> Change Animators to reset values when restarted if their target changes

Bug: 15710503
Change-Id: Ib39bf0e13199978ffb389111c225beb30312c965
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
4ae3e6af08919e31174e049d2509e73a9bebb2b3 15-Jul-2014 Chet Haase <chet@google.com> Set existing TypeEvaluator on new KeyframeSet when changing object values

This avoids NullPointerException crash when changing values without
first canceling a running animator.

Issue #16245303 KeyframeSet crash on null keyframe or evaluator

Change-Id: I50ce5223310fe87e3382c446e2d36d93ae38a8fe
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
42516d19db936b10874c27e16eeacda041af01f9 20-May-2014 George Mount <mount@google.com> API Review: split out BidirectionalTypeConverter.

Bug 14997858

Change-Id: I1f2ccf7c4e60320c8df759702a8f2fa24fd3acd2
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
fbb35fb39eb74c6fa7ba6804faeaccb80483be14 17-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> AArch64: Use of long for pointers in PropertyValuesHolder

Long is used in PropertyValuesHolder class to store native pointers
as they can be 64-bit. Note that jmethodID, a pointer to structures,
is also carried in long rather than int to support 64-bit system.

Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>

(cherry picked from commit 0141e884344a5c267239079d615e1c9d9898a222)

Change-Id: I80408a7227427732db0d8b4c960bcb849b7c8060
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
c96c7b2e54965e30c8fb82295f1ca9f891ebd5e7 23-Aug-2013 George Mount <mount@google.com> Add animations along a Path.

Change-Id: If03bd10a3961ff874e33489e1253146b8dadca33
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
4eed52944c0fcb3afa7369aba60fb5c655580286 30-Aug-2013 George Mount <mount@google.com> Support for multiple value animations.

Bug 2805977
Support for multi-value setters in ObjectAnimator.

Change-Id: I7854dfcb82372afc6d9afb4c50a289ff9d41574e
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
16d2c9cc6bd67131d9921fbc14a69d88f48f48ca 17-Sep-2013 George Mount <mount@google.com> Setter values can now have different type than animated values.

Add TypeConverter to convert animated values type to target
setter type.

Change-Id: I7f0581b18a5321b4aafd7e47f147a81573c45061
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
d82c8ac4db7091d2e976af4c89a1734465d20cd2 26-Aug-2013 Chet Haase <chet@google.com> Transition API changes from API council recommendations

Issue #10460684 KLP API Review: android.view.transition and android.animation
Issue #10570740 Transitions: inflate transition targets from xml

Change-Id: I7a3f6d3aece2fcafc5efd555d033f79e86635c98
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
db4101c7d5a2af174bdc61dc706329faabaeb5c6 03-May-2012 Chet Haase <chet@google.com> Better error logs for faulty ObjectAnimators

Previously, if you set up an ObjectAnimator with the name of a property
which could not be resolved to an existing method (e.g., "foo" becomes "getFoo()"
or "setFoo()"), the errors in the log could be a bit obscure and the animation might
just crash sometime later with an unexplained NPE. This change provides a more
detailed log message detailing the actual method/class involved.

Issue #5990756 NullPointerException on no such property

Change-Id: Ic5bf7069c4879623e00ab8a794b799773cce487c
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
b39f051631250c49936a475d0e64584afb7f1b93 24-May-2011 Chet Haase <chet@google.com> Add 'Property' object

This change adds a generic Property facility to the SDK, which allows an
easy way to reference fields (private or otherwise) in a general way.
For example, animations can use this facility to animate 'properties'
on target objects in a way that is more code- and compiler-friendly than
the existing String-based approach (for objects which have implemented
Properties, of course). The animator classes have been updated to use
this new approach (in addition to Strings, which are still more generally
useful for objects which have get/set functions but not Property objects).

The change also includes new Property objects on View (which can now be
used in creating animations on Views).

There is an unrelated change on GLES20RecordingCanvas to change the way we
cache bitmaps, which avoids spurious garbage by using an ArrayList instead of
a HashSet.

Change-Id: I167b43a3fca20e7695b1a23ca81274367539acda
/frameworks/base/core/java/android/animation/PropertyValuesHolder.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/PropertyValuesHolder.java
b2ab04ffb6894f399d5c9ceb15f64eb17b654426 16-Jan-2011 Chet Haase <chet@google.com> Remove obsolete DoubleEvaluator

Change-Id: I4407468599061ff35c68589988fb1e897de28c69
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
37f74cad46c6f1799aec3c52e8f47598237f43d4 09-Dec-2010 Chet Haase <chet@google.com> Add ability to reuse bitmaps when loading new content

Change-Id: Ic5f5f40ee39787403977fb372b335dc21cf07243
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
a52a5e7c4cc8c6224108314e51c0f3079cc968c1 07-Dec-2010 Makoto Onuki <omakoto@google.com> Add space after property name in error message

Change-Id: I15c1acc468ff17a1ebd1bc28288d0ac7113748b2
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
1a8e404743a27da08d0f2df5480c51725c9b001a 07-Dec-2010 Chet Haase <chet@google.com> Remove broken doc link to removed method

Change-Id: Id1b1ab8e15d9af9fa38946cc5c673062a4b5a72d
/frameworks/base/core/java/android/animation/PropertyValuesHolder.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/PropertyValuesHolder.java
6e0ecb4eed5cd2e1f15766d7028467129974a12d 04-Nov-2010 Chet Haase <chet@google.com> Adding JNI methods as a faster reflection mechanism

This approach is only for the common cases of void-return,
single-argument float/int methods.

Change-Id: Ifb31535a6f717b85417eced93c579be6e461e039
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
691ac26817d489d9770aa6ba7b098ff17e8be99a 04-Nov-2010 Chet Haase <chet@google.com> Fixed problem with setting updated values on existing animators

The previous version of PropertyValuesHolder handled construction fine,
but setting new values did not result in things getting completely set
up correctly for interpolation between those new values.

Change-Id: Ibffb16e58b4fe76b8d1cad6f0224ffd4d5404c05
/frameworks/base/core/java/android/animation/PropertyValuesHolder.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/PropertyValuesHolder.java
fec30790e8caeb02db0618ec06eba7408efe2307 14-Oct-2010 Chet Haase <chet@google.com> Removed obsolete trace statements

Change-Id: I98041460da3109201b13b00ff553eb3e7290debb
/frameworks/base/core/java/android/animation/PropertyValuesHolder.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/PropertyValuesHolder.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/PropertyValuesHolder.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/PropertyValuesHolder.java
a18a86b43e40e3c15dcca0ae0148d641be9b25fe 07-Sep-2010 Chet Haase <chet@google.com> Rename several animation classes

Change-Id: I6a4544875090db485163c8d56de8718f56d267c7
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
21cd1389d2ef218b20994b617c57af120841a57f 02-Sep-2010 Chet Haase <chet@google.com> Add transition effects for layout changes on ViewGroups

Change-Id: Ibefcca5692450188fbcec608f3f7e36be1213b21
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
602e4d3824bf8b9cb9f817375d195b969712176a 16-Aug-2010 Chet Haase <chet@google.com> Adding animation facilities to simplify layout transitions

Change-Id: I70992a0dff6a75727f51abcfdfc7d7f2c2a8c101
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java
d953d08e9299072130d9f4411cbcf6678bbce822 17-Aug-2010 Chet Haase <chet@google.com> multiple-property animations

Change-Id: Ida9440dad165f3450ff62862fc1627e138595e5f
/frameworks/base/core/java/android/animation/PropertyValuesHolder.java