Sometimes an animator will be interrupted before it starts
during a transition and the onAnimatorEnd will not be called.
In this case, we must set the final state in the onTransitionEnd.
Bug 20416564
Change-Id: I388895215ba2b1c500de3a5afcae8db1fea288f7
We now correctly throw an IllegalAccessException for non-public accesses,
but we were relying on the old incorrect behavior during inflation. This
CL forces constructors to be accessible so that we emulate the old
behavior and don't crash.
Where we were already doing this, the CL moves the setAccessible() call
immediately after the getConstructor() call, since there's no point in
calling it multiple times.
Bug: 20810495
Change-Id: I63dfcb857e445f688080eea05e86ef22760ed49f
Bug 19273502
When a transition runs several animators and is interrupted,
some animators may not have been started. Those animators
that haven't been started will not reset their contents
the same as if the animator was canceled. Fade modifies
transitionAlpha and if it is interrupted prior to the
animator starting, the transitionAlpha doesn't get reset.
Change-Id: I8a49b4fbb7151aadc43d7b10e6acbae9578e5cc4
Previously it was okay to call dismiss/show in quick succession since
the window was removed synchronously. Adding transitions introduced a
delay between dismiss() and actually removing the window, which broke
this behavior.
Change-Id: I0de8ae0a551dcb2eb8b8a50356c308b654ebdc6f
ChangeScroll is already publicly usable via transition
xml files. This directly unhides the java class.
Bug: 18777272
Change-Id: I3b9982dc4ff3f4e8752b39ee6eb67b617073e2ff
Bug 17765948
Added the XML attribute for the resizeClip property of
ChangeBounds. Also updated support for resizing a view
using its clip bounds and position to fix the TODO.
Change-Id: I358d07d6a28fed4b7f39f9ccb9d89b9325f64239
Bug 17936593
Instead of calling setLeft(), setTop(), setRight(), setBottom()
separately, make one call that does all at the same time.
Change-Id: I986274f3a98b3136e71204501ffc272986ad31dd
Bug 18092208
When a transition is determining whether or not it should be
canceled, the old values and new values are compared. Previously,
the if a value was in the old values, but not in the new values
then the value was considered changed. This discounts that
transitions sometimes don't target views and it may be that
no value was populated.
Change-Id: I8210ba1e44921fadedf9ead571d380ad34e73d3f
bug:17683930
This means that GONE views with empty bounds don't trigger
ChangeBounds animations the first time they're shown.
Change-Id: I6503c5b0a790d3d31f7566fab27a0b12c5f61f26
Bug 17762118
When ChangeTransform is used on a View, its intermediate values
are being set, but not cleared after the transition completes
unless it uses a GhostView. This CL clears the intermediate
values when the animation ends if no GhostView is used.
Change-Id: I2590d9c2bc36d31023b3e1af94d2bd72c9589eb5
So that SharedElementCallback can setup initial imageView scale
type properly to run transition against.
b/17703309
Change-Id: I0ab212e0413fd666de605bc51ef64c8d66e4d09d
Bug 17499864
When hasOverlappingRendering() is true, a layer is used to
to fade views because performance can be much worse then.
When hasOverlappingRendering() is false, the performance
is not hurt and a layer is not used.
Change-Id: If3fb1c23ffc8d0bef85c9d16df6c26ff4bbd49ac
Have maximum size for Visibility transition bitmaps.
Also changed Visibility to avoid transitioning out child views
while transitioning out their parents.
Also moved view-to-bitmap code to common utility.
Bug 17469198
Change-Id: I05f069a267539b479da1b39cdad2cc9270c5c381