1564 Commits

Author SHA1 Message Date
John Reck
3207ffe120 Merge "Disable RT-anim for AnimatorSet" into lmp-dev 2014-09-06 00:22:25 +00:00
John Reck
f5945a0c8b Disable RT-anim for AnimatorSet
Bug: 17317184

 Unfortunately this will disable *all* RT animations in a scene,
 but we don't have more selective targetting currently

Change-Id: I57e1c0ae43957f45229473bdcdaf34c05825fab7
2014-09-05 15:58:26 -07:00
John Reck
4e849178ef Merge "Fix race condition" into lmp-dev 2014-09-05 22:38:42 +00:00
Chris Craik
83eb430270 Merge "Add shadow/clipping properties to HierarchyViewer" into lmp-dev 2014-09-05 22:36:41 +00:00
John Reck
ec845a215e Fix race condition
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
2014-09-05 15:23:38 -07:00
Chris Craik
5c75c52e04 Add shadow/clipping properties to HierarchyViewer
bug:15777980

Change-Id: Ic3d24326f585d2d2b9889486f0ed322eb98b5af8
2014-09-05 15:23:08 -07:00
Chris Craik
599e254ea3 Additional layer logging, and added mutex
bug:17208461
Change-Id: I006d432a3b633235dde0b81ad2bf28b835b5335f
2014-09-05 15:17:11 -07:00
John Reck
6dad93eff6 Merge "Yet more layer tracking logging" into lmp-dev 2014-09-05 01:06:08 +00:00
John Reck
443a714fa7 Yet more layer tracking logging
Bug: 17208461

Change-Id: I55e7d0921eb565867e966d68b798b7b92c391b55
2014-09-04 17:40:05 -07:00
Chris Craik
2d3f9033f8 Merge "Prioritize reveal clipping over Outline clipping" into lmp-dev 2014-09-04 21:06:10 +00:00
Chris Craik
e83cbd4518 Prioritize reveal clipping over Outline clipping
bug:15780987
bug:17350602

Also update docs around clipping nesting behavior,
and some Z ordering behavior.

Change-Id: Iaa204350a0adfdcbd8c4b821fb4a9c0ae22f2613
2014-09-04 14:05:10 -07:00
Derek Sollenberger
e23b8dd58f Merge "Remove invalid premul step from HWUI's matrix color filter." into lmp-dev 2014-09-04 15:01:28 +00:00
John Reck
e2478d45cc Fix some wrong-thread issues around animator management
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
2014-09-03 17:37:59 -07:00
John Reck
17035b0211 Have destroy call freePrefetchedLayers
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
2014-09-03 11:13:53 -07:00
John Reck
3d3f5f8c68 Merge "Implement TODO" into lmp-dev 2014-09-02 22:58:51 +00:00
John Reck
1661715d40 Implement TODO
Change-Id: I551ad0dab6356baa4c7787718b54d5b7337a3f26
2014-09-02 15:44:14 -07:00
Chris Craik
0fd79c955b Merge "Fix precision issues for roundrect clipping" into lmp-dev 2014-09-02 19:25:09 +00:00
ztenghui
26131368ec Fix the (0,0) vector case for extra vertices computation
TODO: Figure out why we have collided vertices from input polygon.

b/17340792

Change-Id: I6636ff957ef17514bd11cf290ccc0a2c302aca0b
2014-09-01 17:23:27 -07:00
Chris Craik
68a73e8700 Fix precision issues for roundrect clipping
bug:16984008
Change-Id: I941232d569293717f6bcd249d9e01f72a7409d2e
2014-08-29 17:06:27 -07:00
ztenghui
cbf4c08796 Merge "Ambient shadow tessellation improvement." into lmp-dev 2014-08-29 21:36:03 +00:00
ztenghui
d5e8ade498 Ambient shadow tessellation improvement.
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
2014-08-29 13:40:42 -07:00
John Reck
7da70ed6a5 Merge "Listener callbacks ordering fixups" into lmp-dev 2014-08-29 17:59:24 +00:00
John Reck
4d2c47206a Listener callbacks ordering fixups
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
2014-08-29 10:40:56 -07:00
John Reck
dff9957cc2 Free prefetched layers on TRIM_MEMORY
Bug: 17208461

Change-Id: I831c10d29d5920274b90e11a67d6cd106972a058
2014-08-29 09:59:43 -07:00
John Reck
80068b735e Merge "Track buildLayer calls, destroy if unused" into lmp-dev 2014-08-28 23:04:32 +00:00
John Reck
998a6d8189 Track buildLayer calls, destroy if unused
Bug: 17208461

Change-Id: Ibdb104a493285d77a6891c5e74e38a52c7014da9
2014-08-28 15:55:26 -07:00
Chris Craik
bf939b2671 Merge "Update transform isolation to handle command chunks" into lmp-dev 2014-08-28 17:27:24 +00:00
John Reck
c7e2993628 Fix log line
Change-Id: I290491f559281c7b3d1d132495ea2fffcfaf4725
2014-08-28 09:56:20 -07:00
John Reck
d0cd9db316 Actually end animators on tree destruction
Bug: 17313962

Change-Id: I66b86d50b415f9aa33da23297f22e2cf7f96f565
2014-08-28 08:43:39 -07:00
John Reck
4c5a27b5f6 Merge "Animator stuff" into lmp-dev 2014-08-28 01:38:58 +00:00
John Reck
119907cd25 Animator stuff
Bug: 17228458

Change-Id: Id884a429a512f9cd2be0ed16dbd0f10e92b4440d
2014-08-27 17:44:25 -07:00
Chris Craik
c3e75f9d54 Update transform isolation to handle command chunks
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
2014-08-27 15:43:42 -07:00
Chris Craik
1d47742333 Crash instead of leaking layers/textures between GL contexts
bug:17208461
Change-Id: I4d58f301cf0f5e8145e808a5d6ade4de7801970b
2014-08-26 17:30:15 -07:00
ztenghui
bed17d21b0 Merge "Correctly detect the wrong Z value for the light" into lmp-dev 2014-08-26 18:18:31 +00:00
ztenghui
3bd3fa1f1d Correctly detect the wrong Z value for the light
b/17221975

Change-Id: I2b46da95ad12ca5260d7fe9514a75558b6b6393b
2014-08-26 10:45:27 -07:00
John Reck
1698297daf Merge "DO NOT MERGE Copy shaders" into lmp-dev 2014-08-26 14:53:34 +00:00
Chris Craik
8afd0f245c Create z reordering boundaries around dispatchDraw
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
2014-08-25 15:35:40 -07:00
John Reck
c1469f39b5 DO NOT MERGE Copy shaders
Bug: 16733996

Change-Id: I84afc1b24a23dd6ddf5ab48fb2bfcbe779f8d3e3
2014-08-25 15:27:11 -07:00
ztenghui
190ead730f Merge "Improve the spot shadow computation." into lmp-dev 2014-08-22 21:04:49 +00:00
ztenghui
c50a03d78a Improve the spot shadow computation.
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
2014-08-22 13:51:16 -07:00
Chris Craik
759f780af0 Merge "Enable scissor for rounded outline clips" into lmp-dev 2014-08-21 20:48:53 +00:00
Chris Craik
79d26c72aa Enable scissor for rounded outline clips
bug:17164074

Change-Id: I83ca428f4d7651c6774ab81ac390477fb90c5d38
2014-08-21 13:47:08 -07:00
John Reck
7d37344915 Merge "Don't run animators in buildLayer" into lmp-dev 2014-08-21 20:26:18 +00:00
Chris Craik
88180d269e Merge "Fix layer shadow transform crash" into lmp-dev 2014-08-21 19:03:25 +00:00
John Reck
9eb9f6f8cb Don't run animators in buildLayer
Bug: 17172689

Change-Id: Ib47d589c002543327fa336718440f9f8c95524e0
2014-08-21 11:23:05 -07:00
Chris Craik
c71bfcaa18 Fix layer shadow transform crash
bug:17180252

Change-Id: Ia648b8c98a217a3a4973917bf255d1397802cbbe
2014-08-21 10:18:59 -07:00
Derek Sollenberger
79c9f91689 Remove invalid premul step from HWUI's matrix color filter.
bug: 16186699
Change-Id: Ia0b828e76ce4831ee9e3b4f54c697e6017f1604d
2014-08-18 15:54:13 -04:00
Chris Craik
83f75c88a0 Merge "Early reject drawText calls that will not draw" into lmp-dev 2014-08-19 02:43:23 +00:00
Chris Craik
947eabf42d Early reject drawText calls that will not draw
bug:17114102

Prevents high contrast text from drawing invisible text.

Also fixes stroked text bounds calculation.

Change-Id: Iaeff51ead8b7b8ef2a1a0ca8b89598564e0d443f
2014-08-19 14:14:38 -07:00
John Reck
3e8249568c Implement full View.buildLayer
Bug: 17152292

Change-Id: Ia3cc2aadf72fe14517f50762fc634794df51ad5a
2014-08-20 15:54:07 -07:00