Don't set the callback until we're all done making changes.
Bug: 30902893
Change-Id: Ia1560692a83ecb2c50f5e77fa4d1e8155a78a204
(cherry picked from commit b46ba3b2b0)
Pdfium is not thread safe and uses global variables, hence no
parallel call pdfium is safe
Fixes: 28705066
Change-Id: I04309ee691bd9cea37587e0af5be2c07ce8c9f2c
(cherry picked from commit 0768a7dc45)
When AVD fall back on UI thread, in addition to transfer the pending
actions from RT animator to UI animator, we also need to transfer
the listener, if any.
BUG: 30901495
Change-Id: Ib4a7ebb2996a02596bb5789704617c894a5dd474
Bug: 30342017
Upload recents thumbnails in the
dead gaps between frames instead of
at the start of a frame. This eliminates
jank caused by the large texture
upload.
Change-Id: I507cd286d199109c7a9a1511d68ba5ab5d28069f
It is a useful APIs that applications can benefit from for a
number of use cases. Since apps have currently no way of
inspecting the content of a path, this allows them to
perform interpolation along paths.
Change-Id: I79bcba38a0ed806c418ed25d36ea25af8721d9c1
This CL fixes an issue where one of the constructors creates a
native tree object without registering the allocation of its
root group with the NativeAllocationRegistry.
BUG: 28943866
Change-Id: Ic8db3f2fa8036dfabdbc1a1fcbd58d08a0379e2d
In another word, create another cached bitmap, when the current VectorDrawable
will look differently when state changed.
Bug: 29870392
Bug: 29854240
Change-Id: I7a5ef91091e547a930368286defc7ab96aeb9471
(cherry picked from commit 4f1acfb5f5)
In another word, create another cached bitmap, when the current VectorDrawable
will look differently when state changed.
b/29870392
Change-Id: I7a5ef91091e547a930368286defc7ab96aeb9471
AVD will fall back to UI thread animation if the host view is
rendering onto a SW layer.
BUG: 27617346
Change-Id: I5b644529048a0c30aada3abf2f4e95e40760936d
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
(cherry picked from commit 94db09917a)
This CL changes the target of VD specific animators to VectorDrawable,
instead of RenderNode. The benefit of doing so is that animators can
now detect whether the animation is meaningful by checking whether
their VD target is in the display list. If not, that means the VD is
not drawing for the current frame, in which case we can be smarter
and more power efficient by removing the animator from the list and
posting a delayed onFinished listener callback.
By setting VD as the animation target, when an ImageView decides to
update its drawable from one AVD to something else, we'll be able
to detect that the previous AVD is no longer in the display list,
and stop providing animation pulse to the stale AVD, which is
something we couldn't do previously. This change also
handles the case where one AVD instance could be drawn in two
different views.
Bug: 27441375
Change-Id: Iaad1ed09cfd526276b95db0dd695275c28e074e8