History log of /frameworks/base/libs/hwui/RecordingCanvas.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
cd1c3eba69d044b551cededad75474038f919890 14-Apr-2016 John Reck <jreck@google.com> Add a callback for when a gl functor is released

Bug: 27709981

Change-Id: Id5be3e8f88d6d84a9c59c7ed23e7e8862feefbe8
/frameworks/base/libs/hwui/RecordingCanvas.cpp
d645640180c25c2711e99aa82ec629155f8e91ba 11-Apr-2016 Chris Craik <ccraik@google.com> Apply clip at reorder barriers to shadows

Fixes: 28004930

Change-Id: I208b78430c770a3135afd68c53cf8ff3fba50c52
/frameworks/base/libs/hwui/RecordingCanvas.cpp
1d8e194661085f9a18ab1b3cd12f9e19d3a86be5 03-Mar-2016 Doris Liu <tianliu@google.com> Make AVD thread safe

This CL introduces staging properties to VectorDrawable, which holds
properties coming from UI thread. When staging properties are changed,
they are marked dirty, and the staging properties then get pushed to
RenderThread at sync point. In cases where no staging property has
been changed, at sync point we sync the render thread properties back
to staging properties to reflect the latest render thread animation
value change.

Also, update Vector Drawable bitmap only when it's dirty

Bug: 27343970
Bug: 27385912
Bug: 27263667
Bug: 27927674
Bug: 27774383

Change-Id: Ia864f5400a53a08dbfb284fae581fb1aac4fff87
/frameworks/base/libs/hwui/RecordingCanvas.cpp
aafb01d8ade0def3f51b74ae3bbc610c4ab33044 26-Mar-2016 Chris Craik <ccraik@google.com> Consume TextureView matrix safely

Fixes: 27825042

TextureView's matrix may not be set at record time - delay using it
until on RenderThread, when deferring the op.

Change-Id: Icf8b55d656e304ec049ca803b042dc2359482db2
/frameworks/base/libs/hwui/RecordingCanvas.cpp
a204848b1dc63877a12e2d24108e9d8e1e691e28 25-Mar-2016 Chris Craik <ccraik@google.com> Create first class unbounded ColorOp

bug:27810783

Previous drawColor->drawPaint conversion failed to preserve unbounded
nature of drawColor from old pipeline.

Change-Id: Ifd7a7b9d645f0887e252e48ca95d3195ee31615f
/frameworks/base/libs/hwui/RecordingCanvas.cpp
417ed6d4337e5409d52f58cc93677c8715193f32 23-Mar-2016 John Reck <jreck@google.com> Fix missing first frame

Bug: 26776366
Change-Id: I46258c0ff35fdefe5c9f2ee610c904b2dbe8c5d9
/frameworks/base/libs/hwui/RecordingCanvas.cpp
dccca44ffda4836b56a21da95a046c9708ffd49c 21-Mar-2016 sergeyv <sergeyv@google.com> Reland: Move text logic from jni to hwui level

Initial CL: https://googleplex-android-review.git.corp.google.com/#/c/886854/

Change-Id: I9dfd85fe1d2a2c44f4360c8a29fd58d80e6f31c8
/frameworks/base/libs/hwui/RecordingCanvas.cpp
6847953955502caa0bd0ba255d879a89aeccbd24 21-Mar-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Revert "Move text logic from jni to hwui level"" into nyc-dev
afbd0f1fef46ef0ddf633dfde0de724db3da1405 21-Mar-2016 Sergei Vasilinetc <sergeyv@google.com> Revert "Move text logic from jni to hwui level"

This reverts commit a7f6bba1a3565c19715e878dfe7f0e01022944ff.

Change-Id: If4f36f87a85411b6128fd92d391313803ccaf9dd
/frameworks/base/libs/hwui/RecordingCanvas.cpp
49658d43802dc74c0ad68b7f5ba509832c1dec81 21-Mar-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Move text logic from jni to hwui level" into nyc-dev
4c3980b6e43cc7c0541f54b8e7e2d9d6108be622 15-Mar-2016 Chris Craik <ccraik@google.com> Handle unbounded drawPaint/drawGLFunction operations safely

bug:26591194

Also, revert to using current clip bounds as drawColor/drawPaint bounds
for simplicity in new pipeline.

Change-Id: I1a6b3f9716b564b46df41d57dfe14475fdd24de0
/frameworks/base/libs/hwui/RecordingCanvas.cpp
a7f6bba1a3565c19715e878dfe7f0e01022944ff 16-Mar-2016 sergeyv <sergeyv@google.com> Move text logic from jni to hwui level

bug:25865834
Change-Id: I2d8c9c9544afcb5ce1784f732aed3e54e0eda372
/frameworks/base/libs/hwui/RecordingCanvas.cpp
2dbb4c46ee648c64bb977b6839374d73b5a605d9 12-Mar-2016 Chris Craik <ccraik@google.com> Unrounded round rects are just rects

Change-Id: I66517390943192e4725251b316a3d8c332c2b77d
/frameworks/base/libs/hwui/RecordingCanvas.cpp
e83cca3a3a235cf343c81ddff68e6a944ba91647 11-Mar-2016 Chris Craik <ccraik@google.com> Merge "Fix node rejection crash" into nyc-dev
1367d2550ebce40f45b16dc651bc3d8d22930801 11-Mar-2016 Chris Craik <ccraik@google.com> Fix node rejection crash

bug:27598131
Change-Id: Iea05c22ec10f92beef9c47236929eb5f860d84f9
/frameworks/base/libs/hwui/RecordingCanvas.cpp
223e3b6c2b53a66b4efd8040edfe23ed1a5c925e 10-Mar-2016 Chris Craik <ccraik@google.com> Fix WebView disappearing

bug:27528563

Change-Id: Ib9fefa18ef9fb8eb11edd097cbadf8ab2b911576
/frameworks/base/libs/hwui/RecordingCanvas.cpp
a154f473076ca1574045f5044fe8af6cd1625316 03-Mar-2016 Chris Craik <ccraik@google.com> Improve handling of undefined-at-record-time bounds in new ops

bug:26591194
Change-Id: Ifc695d285d688903e2ef6aa3f0cb9e7ebf1f68d6
/frameworks/base/libs/hwui/RecordingCanvas.cpp
261725fdb2962271c222a049fcdf57bbdc8363c7 29-Feb-2016 Chris Craik <ccraik@google.com> Fix matrix mapping of negative rects

bug:27381362

Also rejects ops with empty clip at record time, and short circuits clip
intersection, when one is empty.

Change-Id: I842612da14ad8fd9f1ba5e9e4fd027ba4e08d365
/frameworks/base/libs/hwui/RecordingCanvas.cpp
388e43f4193bd2f1fd3687fada6bddab623f9a8c 24-Feb-2016 Chris Craik <ccraik@google.com> Merge "Fix drawColor/drawPaint bounds" into nyc-dev
339fc0a1d213fed1201443838a9536651ad2ca3b 22-Feb-2016 Chris Craik <ccraik@google.com> Merge "Add create_trivial_array" into nyc-dev
caa24184735a607e87077c73262a42acdea7b8fb 20-Feb-2016 Chris Craik <ccraik@google.com> Support drawing circles with drawArc in new pipeline

bug:26764636

Change-Id: I37d2384fa5e6c1074bb8de85821d58c15659b762
/frameworks/base/libs/hwui/RecordingCanvas.cpp
7a89600bac7ab889a5ba8a994c57d677de0e45d5 20-Feb-2016 Chris Craik <ccraik@google.com> Add create_trivial_array

Change-Id: I5e4236ff59fdaceb95105c5590f4deeda6d0b4c8
/frameworks/base/libs/hwui/RecordingCanvas.cpp
1713c7773cea83a9c1ba7e08c73434df33ca6f4b 19-Feb-2016 Chris Craik <ccraik@google.com> Fix drawColor/drawPaint bounds

bug:26591194

Change-Id: Icda9b6e6cdd0c12a10e06469ace02b4a89df044b
/frameworks/base/libs/hwui/RecordingCanvas.cpp
7df9ff2a08fd4bbd9b2e734a357cffcf64675df9 11-Feb-2016 John Reck <jreck@google.com> Fix all LA memory leaks forever!

Bug: 27072626

Or at least fix this one and make it harder to leak
going forward. static_asserts are cool, use them liberally

Also makes allocation via LA (slightly) faster by fixing create*
variants to use rvalue references & std::forward, preventing
an accidental pass-by-value

Change-Id: I18fd696a93dd6ea49c8d8c587d4c8bee56dbfdf5
/frameworks/base/libs/hwui/RecordingCanvas.cpp
e537330ead4111cae74668bbc25a332e186d6c91 11-Feb-2016 John Reck <jreck@google.com> Revert "Fix all LA memory leaks forever!"

This reverts commit 499d83f21e7ffb687788bba1668b05fe38f6ebaf.

Change-Id: Ia893ae16ebbeae68e49cd13a20587104b73d39a0
/frameworks/base/libs/hwui/RecordingCanvas.cpp
499d83f21e7ffb687788bba1668b05fe38f6ebaf 11-Feb-2016 John Reck <jreck@google.com> Fix all LA memory leaks forever!

Bug: 27072626

Or at least fix this one and make it harder to leak
going forward. static_asserts are cool, use them liberally

Also makes allocation via LA (slightly) faster by fixing create*
variants to use rvalue references & std::forward, preventing
an accidental pass-by-value

Change-Id: I5e0e36e72c6dd93324194ebf9a95f8204f05f261
/frameworks/base/libs/hwui/RecordingCanvas.cpp
766431aa57c16ece8842287a92b2e7208e3b8ac3 04-Feb-2016 Doris Liu <tianliu@google.com> Revert "Revert "VectorDrawable native rendering - Step 4 of MANY""

This reverts commit 5a11e8d0ba21624025b89ac63bbd18befa55be0e.

Change-Id: I7a48b59c4f930dad65ddc8590c25a12636244ea2
/frameworks/base/libs/hwui/RecordingCanvas.cpp
5a11e8d0ba21624025b89ac63bbd18befa55be0e 04-Feb-2016 Doris Liu <tianliu@google.com> Revert "VectorDrawable native rendering - Step 4 of MANY"

b/26949340 and b/26975469, b/26975079 as well

This reverts commit f276acd98457bcaabc9e79a17a736b3b484f005e.

Change-Id: I4b55177daf0d289bc03604c71fd4bf579f65073a
/frameworks/base/libs/hwui/RecordingCanvas.cpp
6f485569fa3d6047dcffd068aebf361e3598783c 30-Jul-2015 Derek Sollenberger <djsollen@google.com> Update Canvas API with view system calls.

Refactor DisplayListCanvas, RecordingCanvas, and SkiaCanvas
to share a common API.

Change-Id: I0268ec2749ea5d13a3a72bb2784ed6a9911383d9
/frameworks/base/libs/hwui/RecordingCanvas.cpp
f276acd98457bcaabc9e79a17a736b3b484f005e 07-Jan-2016 Doris Liu <tianliu@google.com> VectorDrawable native rendering - Step 4 of MANY

This CL runs VectorDrawable animation on RenderThread. The changes in this CL
include:
- Convert all the animators in AnimatorSet for AVD into a set of RenderNodeAnimators.
- Hook up the new animators with RenderThread
- Add drawOp in RecordingCanvas for drawing VD so that during the animation
on RenderThread, all the property changes on VD can be reflected on the screen.

TODO:
- Implement reverse and reset for AVD.

Change-Id: I2df1d754f2db0ad098d9c15dde4bb2bdfafc2315
/frameworks/base/libs/hwui/RecordingCanvas.cpp
eecff56fed5dd5206acfbc5007b4912081b36d3b 21-Dec-2015 Florin Malita <fmalita@google.com> Add internal Canvas save flags

Skia's SkCanvas::SaveFlags are being deprecated. This CL introduces
the equivalent android::SaveFlags, converts all internal clients to
the new enum, and switches the saveLayer glue to the
SaveLayerRec-based API.

Change-Id: Icb1785f4e7c0f652b1f04b34a1e3ccb063c408f3
/frameworks/base/libs/hwui/RecordingCanvas.cpp
b87eadda1818034ce03d85f30388384d1ac65916 06-Jan-2016 Chris Craik <ccraik@google.com> Partial unclipped save layer support

Not yet implemented in renderer.

Change-Id: I491ec6e7886bfa313d1db71dd5981690d45b78a9
/frameworks/base/libs/hwui/RecordingCanvas.cpp
e4db79de127cfe961195f52907af8451026eaa20 23-Dec-2015 Chris Craik <ccraik@google.com> Stencil support in new recorder/reorderer

bug:22480459
bug:26358504

Adds complex (non-rectangular) clipping support, and overdraw
visualization. Doesn't support stencil clipping in layers.

Change-Id: I8d10c7f1d2769ab5756774ca672344cc09901f87
/frameworks/base/libs/hwui/RecordingCanvas.cpp
d2dfd8f128b632ed99418ab2b32949c939a9a369 16-Dec-2015 Chris Craik <ccraik@google.com> Add TextureView support to new renderer/reorderer

bug:22480459

Change-Id: I2e4c0bc6b904706132f3f5087ededc9cac9b40fb
/frameworks/base/libs/hwui/RecordingCanvas.cpp
d7448e65e243754f31890baef29dff187dc2e5e5 15-Dec-2015 Chris Craik <ccraik@google.com> Add TextOnPath support to new reorderer/renderer

bug:22480459

Change-Id: I302048ec09901420c15003e21e44a551cc59c7ad
/frameworks/base/libs/hwui/RecordingCanvas.cpp
e29ce6f51d681af7649c0a7cddee97c471e43eb5 11-Dec-2015 Chris Craik <ccraik@google.com> Add functor support to new reorderer/renderer

bug:22480459

Change-Id: I95df7e0504f62d254e8ffbd8d65ed5d763080b9c
/frameworks/base/libs/hwui/RecordingCanvas.cpp
4c1b495f4f9b05e34a2583eb4537cebdda981d4f 15-Dec-2015 Chris Craik <ccraik@google.com> Merge "Avoid unneeded rect params"
5430ab220b231a96b71c3e030d0303d9ce008b05 11-Dec-2015 Chris Craik <ccraik@google.com> Avoid unneeded rect params

Change-Id: I2d8dcf6b09fdc554a403ac74763bf856b5f5d9fa
/frameworks/base/libs/hwui/RecordingCanvas.cpp
268a9c0f29c16a64d5819c7dbe8b0633baedab83 10-Dec-2015 Chris Craik <ccraik@google.com> Add property animations to new reorderer/renderer

bug:22480459

Change-Id: Id8091038004245a56deb48bf3625edfd08ab8681
/frameworks/base/libs/hwui/RecordingCanvas.cpp
f09ff5aa57bff01cb17595fb7ca8e48d238a6acd 09-Dec-2015 Chris Craik <ccraik@google.com> Add bitmapmesh, rect, and patch rendering

bug:22480459

Change-Id: Id9e9146997dd018b3e4e785c2bc13689e3cf7c3c
/frameworks/base/libs/hwui/RecordingCanvas.cpp
386aa031793bb037ec43b6cdbd8908c343cc86cb 08-Dec-2015 Chris Craik <ccraik@google.com> Add more shape drawing to new reorderer/renderer

bug:22480459

Add support for outsetting final bounds based on stroke.

Change-Id: I659318ccec51882bba1906ce3c7042288ce35c30
/frameworks/base/libs/hwui/RecordingCanvas.cpp
15c3f19a445b8df575911a16e8a6dba755a084b5 03-Dec-2015 Chris Craik <ccraik@google.com> Merged op dispatch in OpReorderer

bug:22480459

Also switches std::functions to function pointers on OpReorderer, and
switches AssetAtlas' entry getter methods to using pixelRef pointers,
so it's clear they're the keys.

Change-Id: I3040ce5ff4e178a8364e0fd7ab0876ada7d4de05
/frameworks/base/libs/hwui/RecordingCanvas.cpp
54fa17f667c285a5c9225e238c8132dfe830ef36 25-Nov-2015 Chris Craik <ccraik@google.com> Add ListView rendering benchmark

Also fixes a bug in DrawRenderNodeOp recording, which was triggered by
the new test.

Change-Id: I328f2ed908495eb95ca8ce87a365d02650e72cd5
/frameworks/base/libs/hwui/RecordingCanvas.cpp
a1717271caac5e8ea3808c331d4141ac01a42134 19-Nov-2015 Chris Craik <ccraik@google.com> Initial text support in new reorderer/renderer

Removes obsolete drawPosText codepath, and unifies text decoration behavior.

Change-Id: I9c563249ab688a3394445a0e7fe1b9d0661f6f7c
/frameworks/base/libs/hwui/RecordingCanvas.cpp
98787e6c9b2c10b1ab7820bdac168686025b924a 13-Nov-2015 Chris Craik <ccraik@google.com> Finish shadow support in new reorderer/renderer

Now passes alphas and light radius, and correctly transforms light
center for layers.

Also fixes begin-frame/layer clears to be damage rect aware.

Change-Id: I3b1415cd7bf1518c510145ebebdb745f494a2542
/frameworks/base/libs/hwui/RecordingCanvas.cpp
161f54b2d4160b8d3f3da9eba5746da5162e4821 05-Nov-2015 Chris Craik <ccraik@google.com> Add z-reordering support to OpReorderer

Change-Id: I3fa969fe53cf648d145810f69fa7dada376c0b9a
/frameworks/base/libs/hwui/RecordingCanvas.cpp
0b7e8245db728d127ada698be63d78b33fc6e4da 29-Oct-2015 Chris Craik <ccraik@google.com> Initial HW layer support in new reorderer/renderer

Shares vast majority of clipped savelayer code, with only minor
differences in lifecycle.

Doesn't yet handle fill region, resize, or window transform.

Change-Id: Iabdd71811590d2b937eb11e1b01ce556ade54a5a
/frameworks/base/libs/hwui/RecordingCanvas.cpp
f35b989d26bb98900f6c5fa2e586326b30b6e161 31-Jul-2015 Leon Scroggins III <scroggo@google.com> Merge six commits from master-skia to master

Also corrects some code under development behind the HWUI_NEW_OPS flags
to match the updated Skia API.

Include external/skia/include/private
use SrcConstraint for drawBitmapRect
clean up to allow removal of flags for SCALAR_DIV and IMAGEINFO_FIELDS
don't call DEPRECATED getDevice()
update to newer API for drawBitmapRect
asABitmap is deprecated, used isABitmap

previous-Change-Id: I12208855a95948897077b1c1549eb35416cc801e
previous-Change-Id: I5044f0f61315fe48c60d7af5e261a7d0ed574f56
previous-Change-Id: Ic34a3ba77b3f9e091fa7aaba75018a307abacdab
previous-Change-Id: I79f8dd779920565d1204f7fe67b3286b1bbf4e9b
previous-Change-Id: Ic04d1f8274f6a862ea00f8d241363cf31f5ec1ec
previous-Change-Id: I9e4ae257a1976c74302b6a73f17405174ae58cec
previous-Change-Id: I85de3462ad1e4877784df38edc4bcd0acbd24e5e
Change-Id: Ide8e2f669e91a13c32521af3a16efdaa085c81d0
/frameworks/base/libs/hwui/RecordingCanvas.cpp
6fe991e5e76f9af9dab960100d5768d96d5f4daa 20-Oct-2015 Chris Craik <ccraik@google.com> Work to support saveLayer in new pipeline

clipped SaveLayers will now be pulled to the beginning of the frame,
prior to drawing FBO 0. This will remove the need for switching FBOs
mid-frame.

Change-Id: I4d8dc1f845e84e9b49d5acdf4f4703eef4a9cb06
/frameworks/base/libs/hwui/RecordingCanvas.cpp
b36af87f8275f4b982906f88193ec27600f2746a 16-Oct-2015 Chris Craik <ccraik@google.com> Use LinearStdAllocator in DisplayList

bug:24300128

This removes most of the remaining calls to malloc when
recording DisplayLists.

Change-Id: If928bd53dac0f145aadc436a62759086b67da0ed
/frameworks/base/libs/hwui/RecordingCanvas.cpp
003cc3dec8e2a92e51086fbcd5ee1bb236efa701 16-Oct-2015 Chris Craik <ccraik@google.com> Rename DisplayListData to DisplayList

Change-Id: I25f6bb88ffdf9baf7e8e4e2a294aa8c9d2a4605b
/frameworks/base/libs/hwui/RecordingCanvas.cpp
b565df13a9e5c7b1d7d93bdfa4a793752d66d3cc 05-Oct-2015 Chris Craik <ccraik@google.com> 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
/frameworks/base/libs/hwui/RecordingCanvas.cpp