History log of /frameworks/base/libs/hwui/RecordingCanvas.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
792fb3252f6460acfd82c4e5d7536ca6b787a0e0 03-Mar-2017 Derek Sollenberger <djsollen@google.com> Use SkPaint.nothingToDraw instead of PaintUtils helper.

The PaintUtils helper is now shared between all pipelines and was
missing a quick reject test for drawLoopers which are used in
view.setShadowLayer and supported in the Skia pipelines.

Bug: 35809097
Test: added hwui unit test and verified in DocumentsUI app
Change-Id: I3c4a988f1c42b7f421f78ac3659af1daee910ea2
/frameworks/base/libs/hwui/RecordingCanvas.cpp
3e9999bd866fac71c72e6b484a9836c87c328a08 20-Jan-2017 sergeyv <sergeyv@google.com> Explicitly destroy Layer in DeferredLayerUpdater on destroyHardwareResources()

Change-Id: I0987104eabda9a2a302b9e765213aad48f93aea4
Test: refactoring CL. Existing tests still pass
bug:33753499
/frameworks/base/libs/hwui/RecordingCanvas.cpp
8cd3edfa15cc9cdbffa935d19ab894426b08d174 09-Jan-2017 Greg Daniel <egdaniel@google.com> Break Layer class into Gl and Vulkan subclasses

Test: manual testing
Change-Id: Ibd2beed39de3ac6da7448e96496253cfe427dfbb
/frameworks/base/libs/hwui/RecordingCanvas.cpp
b29b16e5423fe7deab8ebf3da512c6d2192f19b5 04-Jan-2017 Derek Sollenberger <djsollen@google.com> Remove clipRegion from the public API.

This API is difficult to support for printing and has other negative
effects as it does not respect the current matrix/clip.

Test: compile
Bug: 14650725
Change-Id: I71f9bd687d446c7ce8910d755421aad8e09458db
/frameworks/base/libs/hwui/RecordingCanvas.cpp
6e49c9f007c879f05b035c40c0ba543c00f9d0d0 02-Dec-2016 Mike Reed <reed@google.com> switch over clip calls to use SkClipOp instead of SkRegion::Op

Change-Id: I67d23c487b5249bc31d96e3b2393f693c0b2bcff
/frameworks/base/libs/hwui/RecordingCanvas.cpp
98fa4f9e7b33a3004ce9142c9acd4300391b9a0e 25-Oct-2016 sergeyv <sergeyv@google.com> Use Bitmap in Texture.upload

Test: refactoring cl.
bug:32216791

Change-Id: Ib0b16c878d8371e0471e9a502f55626ec5999c60
/frameworks/base/libs/hwui/RecordingCanvas.cpp
ec4a4b13eae2241d1613890c1c1c096bed891845 21-Oct-2016 sergeyv <sergeyv@google.com> Use Bitmap in DisplayList & RecordedOps instead of SkBitmap
Test: refactoring cl.
bug:32216791

Change-Id: I1d8a9a6e772e2176b6c2409409a910478b45f8db
/frameworks/base/libs/hwui/RecordingCanvas.cpp
5fd2a1cb2726afa7d40fe4750e9defd89c24ed37 21-Oct-2016 sergeyv <sergeyv@google.com> Pass Bitmap instead of SkBitmap in drawNinePatch & drawBitmapMesh
Test: refactoring cl.
bug:32216791

Change-Id: I5adcd59daf752d36012456b0a9960c59d07e2e3d
/frameworks/base/libs/hwui/RecordingCanvas.cpp
fc9999505a36c66892d7ccce85187936105f4f36 17-Oct-2016 sergeyv <sergeyv@google.com> Pass Bitmap instead of SkBitmap for bitmap rect operation
Test: refactoring cl.
bug:32216791

Change-Id: I66d19194c57b3aa2c400aa87acffc774a533776a
/frameworks/base/libs/hwui/RecordingCanvas.cpp
aed7f58fb05a25ce2112829e77c0eb5dd268e8a7 15-Oct-2016 sergeyv <sergeyv@google.com> Pass Bitmap instead of SkBitmap in canvas.drawBitmap(Bitmap, float,float,Paint)
Test: refactoring cl.
bug:32216791

Change-Id: If9f9fbc19e683b14cce6c3c268258bd832d495d2
/frameworks/base/libs/hwui/RecordingCanvas.cpp
0154feef22d9fa5490f0285c2c3d83951b12bcc8 19-Oct-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Initial refactoring to enable reuse of SkiaDisplayList on a per RenderNode basis. With Skia renderer we see 30% speed improvement in Invalidate Tree UI Jank test, when SkiaDisplayList objects are reused."
c0e7a90f1f5f98e85dbeda021fac0dff79725933 13-Oct-2016 Stan Iliev <stani@google.com> Initial refactoring to enable reuse of SkiaDisplayList
on a per RenderNode basis. With Skia renderer we
see 30% speed improvement in Invalidate Tree UI Jank test,
when SkiaDisplayList objects are reused.

Test: manually built and run on angler-eng.
Change-Id: Ie4ec50ddb2015150e3ec678dde7ebed0c8d90067
/frameworks/base/libs/hwui/RecordingCanvas.cpp
260ab726486317496bc12a57d599ea96dcde3284 07-Oct-2016 Mike Reed <reed@google.com> use SkBlendMode instead of SkXfermode
use sk_sp versions of paint setters/getters

Change-Id: I86591a0a8ec92e6039776cbf00424ea24f585b28
/frameworks/base/libs/hwui/RecordingCanvas.cpp
97ec95c212579ec3eeb38582309a54b6120bdf32 09-Aug-2016 Chris Craik <ccraik@google.com> Prevent EndLayerOps when Begin was rejected am: 3c53ec51ef am: 152f76ee50
am: 674965822b

Change-Id: Icfa8cb2ad7c97fdbbf37f01abe7b5a22f6b33cfd
3c53ec51efd4bbc3f06cc63dd8efe186e3fb168f 09-Aug-2016 Chris Craik <ccraik@google.com> Prevent EndLayerOps when Begin was rejected

bug:30537130

BeginLayerOps were being rejected in a way that allowed the associated
EndLayerOps to still be recorded. This was a violation of DisplayList
content expectations, and caused crashes in FrameBuilder when trying to
play these DisplayLists back.

Change-Id: I531b840aa5c4ffb1ee458da3f4b366978eaeafbe
/frameworks/base/libs/hwui/RecordingCanvas.cpp
919645aded88b7d9f82b6f05777cbe827f415d1a 27-Jul-2016 Chris Craik <ccraik@google.com> Reject fully transparent paint-fill ops at record time am: 814ee6a921
am: 1cfc4b1f46

Change-Id: I0d04b00ccf3d109ea5ab55ba52122fd4506147ea
814ee6a9218aa339a4757b2c0ba1ad268f8dbc8a 27-Jul-2016 Chris Craik <ccraik@google.com> Reject fully transparent paint-fill ops at record time

bug:30342762

Avoids unnecessary work for each transparent operation.

Change-Id: I80b1eeca34ae32249433fde55e9fe93d02c411db
/frameworks/base/libs/hwui/RecordingCanvas.cpp
afc221499d943386256feb9db46c119ff834bf79 18-Jul-2016 Yuqian Li <liyuqian@google.com> More efficient text rendering on path

Change-Id: I004c15473b527df0f296c54a6a3e9b29505fd9b9
/frameworks/base/libs/hwui/RecordingCanvas.cpp
5e00c7ce063116c11315639f0035aca8ad73e8cc 07-Jul-2016 Chris Craik <ccraik@google.com> Delete old rendering pipeline

fixes: 30002246

Change-Id: I45df0e924708526cee045b14c291bd23aa1a92db
/frameworks/base/libs/hwui/RecordingCanvas.cpp
e4f6d968f51ba3bb867e8e124dca97b7e9c3fea5 28-Jun-2016 Chris Craik <ccraik@google.com> Fix savelayer rounding

bug:29456451

Change-Id: I8022163d2c004510da5db74efdca27582484224d
/frameworks/base/libs/hwui/RecordingCanvas.cpp
718cd3eb70703c43f29ca37907bbf0e153d8cca0 18-May-2016 Doris Liu <tianliu@google.com> Handle hidden RT VectorDrawable animators

This CL changes the target of VD specific animators to VectorDrawable,
instead of RenderNode. The benefit of doing so is that animators can
now detect whether the animation is meaningful by checking whether
their VD target is in the display list. If not, that means the VD is
not drawing for the current frame, in which case we can be smarter
and more power efficient by removing the animator from the list and
posting a delayed onFinished listener callback.

By setting VD as the animation target, when an ImageView decides to
update its drawable from one AVD to something else, we'll be able
to detect that the previous AVD is no longer in the display list,
and stop providing animation pulse to the stale AVD, which is
something we couldn't do previously. This change also
handles the case where one AVD instance could be drawn in two
different views.

Bug: 27441375
Change-Id: Iaad1ed09cfd526276b95db0dd695275c28e074e8
/frameworks/base/libs/hwui/RecordingCanvas.cpp
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