This change alters the conditions under which the onFrameAvailable
callback gets called by the C++ SurfaceTexture class. The new behavior
is to call the callback whenever a frame gets queued that will be
visible to the buffer consumer. This means that buffers queued in
synchronous mode always trigger the callback, as those buffers will
remain pending until they are consumed. Buffers queued in asynchronous
mode will only trigger the callback if there was not previously an
unconsumed buffer pending.
The new behavior means that a consumer should perform a draw operation
exactly once for every onFrameAvailable call that it recieves. This
change also modifies SurfaceFlinger and the SurfaceTexture JNI to
support of the new behavior.
Change-Id: I8b2c6e00961d3d58b11c6af50b555b6e4c5f5b40
When jumpDrawablesToCurrentState(), finish any alpha animation in
progress. Fixes bug where drawable with enter fade would remain
transparent until next state change.
Change-Id: Ia087f935566a8d78e0efdcb0a1a2f791db05c70e
Note: The integrator of this change to Android internal code-repo will
have to run one extra step 'make update-api' to update 'api/current.txt'
file corresponding to approved API. The AOSP branch didn't have this
file, hence I could not add the same to this change. The updated file
'api/current.txt' has to be submitted along with this change.
Change-Id: I29909e907a2e82d801e16654322190a808c5bda9
Therea re 2 fixes here:
- We sometimes cleared a flag in ViewAncestor too soon that controlled
how invalidated areas were redrawn (related to whether the invalidates
happened on opaque views or not).
- TransitionDrawable was always setting/restoring alpha values on its
drawables every time it was drawn. setAlpha on BitmapDrawable causes
an invalidation, so essentially this was an infinite invalidation/redrawing
loop. The fix was to notice when the animation was done and to simply
draw the appropriate drawable[s].
Change-Id: I1849a5a909b0039a0e9bce0aa3cfc33c50f8f854
- update Callback2 interface
- update Gravity.getAbsoluteGravity() and Gravity.apply() to be more generic
by changing "boolean isRtl" parameter to "int layoutDirection"
- fix BiDiTests for RTL FrameLayout
Change-Id: I97bb456c22d5fd3ecb34f08564ce4dbed37e7459
This adds a new ParcelSurfaceTexture.java class that can be instantiated with
a SurfaceTexture and used to send the corresponding ISurfaceTexture interface
to another process via Binder. The ParcelSurfaceTexture java object can then
be used to create an ANativeWindow based on the SurfaceTextureClient interface.
Change-Id: Ie38ea948b866e52f36a6d0f6cde19b54a8546817
This will be used by slang reflection to type-check parameters to functions
that are of Allocation types (such as what happens with forEach).
BUG=4203264
Change-Id: I2ba94531bbf53becf7695b253e1faa3dff099894
Set up AnimationDrawable with an initial frame when it is
constructed from code (via addFrame()). This is equivalent to
what is done when it is constructed via xml resources.
Change-Id: I86784a241268aa2d03af8edecbc80a7cc3548e19