summaryrefslogtreecommitdiffstats
path: root/libs/hwui/CanvasState.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Use path intersection instead of saveLayer+mesh to mask projected ripplesChris Craik2015-05-261-0/+3
| | | | | | | | | | | | | | | | | | | | | 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
* Fix glop rendering within unclipped saveLayersChris Craik2015-02-271-1/+1
| | | | | | | | | bug:19541881 Additionally, clean up GlopBuilders and rename onGetSnapshot() for clarity Change-Id: I0303e4cd61eef87cf80af2d968c4aa67193cd008
* Clipping performance improvementsRob Tsuk2015-01-141-36/+7
| | | | | | | | | | | | Create a ClipArea class to handle tracking clip regions. This class can select the most efficient implementation depending on the types of clipping presented. ClipArea re-used the rectangle and region-based clipping implementations as well as adding a "list of rotated rectangles" approach that is more efficient for rotated views with children. Change-Id: I2133761a2462ebc0852b394220e265974b3086f0
* Add overrides and switch to nullptr keyword for all filesChris Craik2015-01-051-1/+1
| | | | | | | Adds remaining missing overrides and nullptr usages, missed due to an extreme failure in tool usage. Change-Id: I56abd72975a3999ad13330003c348db40f59aebf
* Replace StatefulBaseRenderer inheritance with CanvasState memberTom Hudson2014-11-041-0/+285
Incrementally disentangles DisplayListRenderer and OpenGLRenderer. Introduces abstract CanvasStateClient class to share three functions between the two. Design doc at https://docs.google.com/a/google.com/document/d/1PY1JF7AfPEF2UOUAnETS5j_4_tnJShTAMExvpCJfP8o/edit?usp=sharing. BUG:15672762 R=djsollen@google.com,ccraik@google.com,jreck@google.com Change-Id: Ic9fdffe18808e7d921ad06d01ea1ca25b2ad6f23