Chris Craik
10ed692118
Use typedefs to differentiate between flavors of DisplayLists
...
Change-Id: Id3b0a5aa045f2343fb046ca0889b375a7d00e03f
2015-10-15 10:55:15 -07:00
Chris Craik
b565df13a9
Initial commit of new Canvas operation recording / replay
...
Done:
- drawRect, drawBitmap, drawColor, drawPaint, drawRenderNode, drawRegion
- Recording with new DisplayList format
- batching & reordering
- Stateless op reorder
- Stateless op rendering
- Frame lifecycle (clear, geterror, cleanup)
Not done:
- SaveLayer (clipped and unclipped)
- HW layers
- Complex clipping
- Ripple projection
- Z reordering
- Z shadows
- onDefer prefetching (text + task kickoff)
- round rect clip
- linear allocation for std collections
- AssetAtlas support
Change-Id: Iaf98c1a3aeab5fa47cc8f9c6d964420abc0e7691
2015-10-14 16:10:40 -07:00
Teng-Hui Zhu
8d0ec38953
Early return when the scale is 0.
...
b/24534579
Change-Id: Ib3581ec99387ca70ca036026f64857a49657d94b
2015-10-02 10:23:32 -07:00
John Reck
e248bd1b2c
Serializing display lists
...
This is a WIP prototype
Change-Id: Id4bfcf2b7bf905221c3734b7b6887c9b2efd37e6
2015-08-26 16:29:15 -07:00
Chris Craik
71c10ee8be
Merge "Switch several enums to enum classes"
2015-08-21 23:08:39 +00:00
Chris Craik
b9ce116dac
Switch several enums to enum classes
...
Change-Id: I00ecd0b61657196b51704f70ca31a9d1c1ac254e
2015-08-21 23:05:44 +00:00
Chris Craik
3aadd60521
Revert "Revert "Simplify TextureView draw path""
...
Fixed build breakage
This reverts commit d35dcb13115ca1dd8c07e397f43a186cd7fd1a01.
Change-Id: Id3a103fbaac15a05f558bce2161ce17b6e8d2ea3
2015-08-21 10:33:02 -07:00
Bart Sears
3b1c32eb5d
Merge "Revert "Simplify TextureView draw path""
2015-08-20 02:25:30 +00:00
Bart Sears
d35dcb1311
Revert "Simplify TextureView draw path"
...
This reverts commit 20a248934c67b19c8734362dba76a5cc94254686.
Change-Id: Iaa3ebb1d868acbe184080087aec312b43e87e3c7
2015-08-20 02:23:39 +00:00
Chris Craik
87f9c42f54
Merge "Simplify TextureView draw path"
2015-08-20 00:02:09 +00:00
Chris Craik
20a248934c
Simplify TextureView draw path
...
bug:20461288
Change-Id: I239fbd26ab2177481c84feb62a1da68faeb634ac
2015-08-19 16:59:45 -07:00
Chris Craik
e5e6f4837b
Merge "Change setMatrix behavior to only affect canvas-local matrix"
2015-08-19 22:38:07 +00:00
Chris Craik
7c85c54499
Remove Matrix4::load(Matrix4&)
...
bug:22320446
Change-Id: Id6d1cc9b4aea828b0cdf622ad672064d72671f8d
2015-08-19 15:10:25 -07:00
Chris Craik
6daa13c5fa
Change setMatrix behavior to only affect canvas-local matrix
...
bug:22189925
This makes setMatrix(getMatrix()) work as expected, and makes setMatrix()
much more useful without changing behavior relative to a View's parent
hierarchy.
Change-Id: I608613bd27c1b9052ae583f8fd2119cf37a2f6d7
2015-08-19 13:32:15 -07:00
Derek Sollenberger
3c9edc9fae
Merge "Cleanup unused param in RenderNode::computeOrdering"
2015-08-17 12:44:06 +00:00
Derek Sollenberger
f293259c0d
Cleanup unused param in RenderNode::computeOrdering
...
Change-Id: I4012ac7fce446770c5619dc149f6d62741237fc2
2015-08-14 15:11:23 -04:00
John Reck
25f8da9b6a
Merge "Support new EGL extensions"
2015-08-13 15:26:55 +00:00
John Reck
149173d28c
Support new EGL extensions
...
Bug: 21753739
Includes a revert of 13d1b4ab10fbee5e81a2ba1ac59cfae1e51d3ef0
as that only supported EGL_EXT_buffer_age
Change-Id: Ia86a47d19e3355c067934d7764c330b640c6958d
2015-08-12 14:26:05 -07:00
John Reck
c128823940
Fix bug in calculating perspective damage
...
Change-Id: Iacab98cf3525f891012087acf85e4205b5e8f0d0
2015-08-12 13:52:01 -07:00
John Reck
272a685f17
Replace most usages of utils/Vector.h
...
Change-Id: I540d1b3523244d6c71fc52d6fb30555271c25644
2015-07-30 09:51:52 -07:00
John Reck
c052a9a1bb
am a2fd3234: am 3bfe4b47: am 1cd5afc1: am 9317d0b9: am 1fddd3ef: Merge "Mark isInUse per-window" into mnc-dev
...
* commit 'a2fd32348b06b22963fcc7c33179fddbd2394dbf':
Mark isInUse per-window
2015-07-21 22:00:50 +00:00
John Reck
00e79c9947
Mark isInUse per-window
...
Bug: 22509159
Change-Id: I0ae0f1fa582ee38dcb9f24ca20f0b4d0c57ccb32
2015-07-21 10:46:54 -07:00
Chris Craik
5a4690bf26
Clean up unncessary defines
...
LOG_TAG and TRACE_TAG are already defined in the makefile
Change-Id: I9e53e3dacbe018441edd74cb7c8c90846defee74
2015-07-14 13:25:38 -07:00
Tom Hudson
0f6cb32c75
am a5e2946f: am b9d7bba5: am 434b577f: am 8ac76504: am 9613e9b7: Merge "New setLocalMatrix() operation for HWUI" into mnc-dev
...
* commit 'a5e2946f5ab7618997fb317ad9f5f56c160ebee5':
New setLocalMatrix() operation for HWUI
2015-07-10 13:35:27 +00:00
Tom Hudson
ac7b6d33d2
New setLocalMatrix() operation for HWUI
...
Concats any matrix passed through from DisplayListCanvas with the
initialTransform of the containing RenderNode.
BUG:22189925
Change-Id: I5ea54a6e2a29520c79a8860bde7682694e8595d2
2015-07-09 16:15:31 -04:00
Tom Hudson
02a26300fb
Switch framework to new Skia enums
...
Allow Skia to finish deprecating old path operation enumerations.
Change-Id: I61e4489e639043acb78d47994ab62a31f18bd878
2015-06-24 16:56:43 +00:00
John Reck
3f725f0a5a
Fix null deref
...
Bug: 21857172
willHaveFunctor was assuming that either mStagingDisplayList
or mDisplayList would be non-null but this isn't true. Both
can be null in some scenarios (notably after a trimMemory)
Change-Id: Ia2915b84cfc907ec9c7cbec54ed6dc26283ec998
2015-06-16 10:29:31 -07:00
Chris Craik
a766cb2bce
Put WebViews with on a HW layer if stencil/shader clipping is needed
...
bug:17322378
Change-Id: I0de574bf116b30e2ad4194366e19d47d49708902
2015-06-12 13:34:58 -07:00
Chris Craik
4e9d9b2a59
Revert to save-layer based alpha if layer would be too large
...
bug:21011574
Change-Id: I323f2398188ffc2bbed6a98578d25d7e5f6c337d
2015-06-12 11:07:23 -07:00
Chris Craik
bf72eb80d9
Add projection info to RenderNode dumps
...
bug:21502154
Also fixes several issues around DISPLAY_LIST_DEBUG
Change-Id: I726f5bc071f8c037ffe1b224175fe5c1e2b1c5bd
2015-06-08 11:39:02 -07:00
Chris Craik
1cd7e4c3d0
Merge "Use path intersection instead of saveLayer+mesh to mask projected ripples" into mnc-dev
2015-05-28 22:03:08 +00:00
Chris Craik
43a1d31a28
Fix assert when dumping view at 0 alpha
...
bug:21461177
Change-Id: Ib4aba7b9641254012471da44aa804813b9679423
2015-05-27 11:28:15 -07:00
Chris Craik
fca52b7583
Use path intersection instead of saveLayer+mesh to mask projected ripples
...
bug:14297149
SaveLayer's performance cost is high, and proportional to the surface
being projected onto. Since ripples (even unbounded ones) are now
always projected to the arbitrary background content behind them, this
cost is especially important to avoid.
This removes the last semi-secret, saveLayer from the projected
ripple implementation.
Also fixes the HW test app to correctly demonstrate this projection
masking behavior.
Additionaly, alters PathTessellator to gracefully handle
counter-clockwise paths, and simplifies the work done by
ShadowTessellator to ensure all of its paths are counterclockwise.
Change-Id: Ibe9e12812bd10a774e20b1d444a140c368cbba8c
2015-05-26 17:53:16 -07:00
Chris Craik
1a0808e64c
Add back alpha atrace log
...
bug:20922838
Change-Id: I70ccbffdd5f140cd1dd71fbf456fb5b085e74a4a
2015-05-13 16:47:19 -07:00
Chris Craik
8df5ffa9ae
Remove concept of layer alpha override
...
bug:19412691
Change-Id: I9e150fe4a1b2c0cf140519a33c02fd4771ef1c50
2015-04-28 17:47:20 -07:00
Chris Craik
856f0cc3e3
Promote RenderProperties with an alpha to have a RenderLayer
...
bug:20254728
Change-Id: I0bd1d440fe46683b291d4c8ab07a630c34b2eadc
2015-04-27 18:12:07 +00:00
Chris Craik
182952f5ee
Glop based composeLayerRegion/Rect
...
Change-Id: I69440cabca84948e8aaead9479d616ebc2496517
2015-03-09 18:06:32 -07:00
Chris Craik
a7e5367b5c
Fix atrace saveLayer flag logging
...
Change-Id: I5da85284c15316c9db4cc74011b855ef8c2f7cdd
2015-02-23 16:18:38 -08:00
Chris Craik
031888744e
GlopBuilder, and test app refactor
...
Change-Id: I2cd299ccf178007fd5f83bab6c3448f03aec7843
2015-02-04 15:57:59 -08:00
Chris Craik
2ae0733982
Remove DisplayListLogBuffer
...
Change-Id: I001832fc444b6d532f4a382e0a31cc1d8956dbd8
2015-01-21 14:22:39 -08:00
Derek Sollenberger
3d4eed7f1a
Update HWUI to store its own SkBitmap objects
...
This enables us to...
1) simplify the lifecycle/ownership between Java and HWUI
2) remove DisplayListRenderer::drawBitmapData and associated logic
3) track pixel lifecycle using standard SkPixelRef refcounting
4) Remove uncessary calls to ref/unref the bitmap's pixels and colorTable
Change-Id: I3c95078da20995444f6388a029414280fd654318
2015-01-09 13:56:56 -05:00
Mike Reed
71487eb0ce
Merge frameworks/base changes from master-skia to master.
...
Adaptations to changes in Skia upstream since Oct 2014.
(https://code.google.com/p/skia/issues/detail?id=2377 )
cbb922d use new roundOut signature
77082de Call SkColorTable::readColors().
5456ab1 Handle the result of SkMatrix::asAffine.
25cfc78 Remove dependence on SK_LEGACY_PICTURE_SIZE_API.
BUG:18468293
Change-Id: I5a4d274e854298843891410b1ffd5e24f038b88a
2015-01-06 21:41:35 +00:00
Chris Craik
d41c4d8c73
Add overrides and switch to nullptr keyword for all files
...
Adds remaining missing overrides and nullptr usages, missed due to
an extreme failure in tool usage.
Change-Id: I56abd72975a3999ad13330003c348db40f59aebf
2015-01-05 16:49:13 -08:00
Chris Craik
51d6a3db97
Cleanup various clang warnings, use unique_ptrs in several places
...
Change-Id: I347904b25e51fcc7de14b1e72f1acd0f6ba26f3f
2014-12-23 16:53:56 -08:00
Chris Craik
a1c3fdfbc7
am 3f454e7d: am 63c7b246: Merge "Correct layer size formatting in trace" into lmp-mr1-dev automerge: 00905a9
...
* commit '3f454e7d1cf7103e312f67f745f01f00fa49df13':
Correct layer size formatting in trace
2014-12-12 04:30:44 +00:00
Chris Craik
3f454e7d1c
am 63c7b246: Merge "Correct layer size formatting in trace" into lmp-mr1-dev
...
automerge: 00905a9
* commit '00905a984c07ffc9960ce83548631c59aae37ec6':
Correct layer size formatting in trace
2014-12-12 04:25:43 +00:00
Chris Craik
c2379070a4
Correct layer size formatting in trace
...
bug:18722704
Change-Id: Icef9aaa62633b2d86ad250f43d4c8fa5cc0b6842
2014-12-11 14:29:51 -08:00
Chris Craik
e749bd2c72
am a22ab0da: am 9a04480e: am ef124887: Merge "Clip outline to View clip bounds for shadow computation" into lmp-mr1-dev
...
* commit 'a22ab0da6f72b2e52166cc6e11f4c6d44c0fb714':
Clip outline to View clip bounds for shadow computation
2014-12-02 01:45:54 +00:00
Chris Craik
a22ab0da6f
am 9a04480e: am ef124887: Merge "Clip outline to View clip bounds for shadow computation" into lmp-mr1-dev
...
* commit '9a04480e36c42eb63d1d727221ba3ce6a6d533ef':
Clip outline to View clip bounds for shadow computation
2014-12-02 01:39:20 +00:00
Chris Craik
faa79ff9d9
Clip outline to View clip bounds for shadow computation
...
bug:18509823
This allows animations of View clipBounds (and other callers of
setClipBounds) to affect shadows, instead of leaving them floating.
Change-Id: I249fa4b371a170cb0c54001f5b0e0097e109b8b8
2014-12-01 15:47:10 -08:00