Bug: 17317184
Unfortunately this will disable *all* RT animations in a scene,
but we don't have more selective targetting currently
Change-Id: I57e1c0ae43957f45229473bdcdaf34c05825fab7
Bug: 17372309
AnimationContext::startFrame() happens both with and without
the UI thread lock. Pass the TraversalMode into it so
that ThreadedRenderer's subclass can correctly decide
when it is safe to push over mPendingAnimatingRenderNodes, as doing
so outside of the lock is Very Bad.
Change-Id: Ife5dd3a2b46b0a207cd9234c159a674afdbf5efd
bug:15780987
bug:17350602
Also update docs around clipping nesting behavior,
and some Z ordering behavior.
Change-Id: Iaa204350a0adfdcbd8c4b821fb4a9c0ae22f2613
Bug: 17372309
Fixes a case where UI thread and RT thread both used the same method
which wasn't safe for either of them.
Adds additional assertions & logging in unusual circumstances to
try and track down where the issue is occuring from.
Change-Id: I93d31a6fd0c5927259b67bdf96a475944226eee6
Bug: 17208461
There's a potential race condition between HardwareRenderer.destroy()
being called (which calls destroyCanvasAndSurface()) and the renderer
being finalized (which is what calls freePrefetchedLayers), during which
time it's possible we get a TRIM_MEMORY_COMPLETE and destroy the EGL
context.
Fix this race condition by moving stopDrawing() and freePrefetchedLayers()
into destroyCanvasAndSurface() where they should have been in the first
place.
Also, if we hit the assertion failure, dump the current state of
Caches to try and provide more context for the failure.
Change-Id: Ife0ba3562041e8b08e87e3e13640472b3004eed6
Using the vertices, instead of ray casting for the triangulation.
This request a dynamic index buffer associated with vertex buffer,
so we update the VertexBuffer to support it.
The ambient shadow could be 3x-6x times faster for circle and rect now.
b/16712006
b/14257173
Change-Id: I2f22a8fe19bc59acee5c18e4a3a395acd5042a66
Bug: 17228458
Bug: 17317816
Ensure that onStart is called prior to onCancel/onFinished if those
happen prior to the UI-thread handled start delay.
Ensure that onFinished is called if cancel/end is called
Change-Id: I23c16ea1c4f925d59d41ec5281d62dfc0c38595b
bug:15570351
Prevent drawing transformations on a ViewGroup's canvas from directly
affecting the transformation of the children through the renderer,
since it's already baked into mTransformFromParent at record time.
Change-Id: I6310a2260dfe4def0bde1fd2c5b93791a645d586
bug:16012254
This means rendernodes with a Z will no longer be drawn at the end of
their parent's DisplayList, but at the end of the associated reorder
region (DisplayListData::Chunk).
Change-Id: Ia033fee9d9a4db567b2a8d5e90fc57a4d0a64544
Get rid of compuation of the intersection for penumbra and convex hull for umbra.
Use simple circle / normal to compute the penumbra and simple intersection for umbra.
The new way could be 2x to 4x faster from rectangle to round shape.
And this part is roughly half of the shadow computation, or 2/3 of spot shadow
computation.
This improve the spot shadow spikeness too.
b/16712006
b/14976551
Change-Id: I02911784868731369efa73f76fc915bc08248600
bug:17114102
Prevents high contrast text from drawing invisible text.
Also fixes stroked text bounds calculation.
Change-Id: Iaeff51ead8b7b8ef2a1a0ca8b89598564e0d443f