summaryrefslogtreecommitdiff
path: root/libs/hwui/PathParser.cpp
AgeCommit message (Collapse)Author
2020-04-16Add explicit dependencies on jni_headersOrion Hodson
Preparation for removing implicit include paths for jni.h from soong. Also remove unnecessary jni.h includes from PathParser.{h,cpp}. Bug: 152482542 Test: lunch aosp_x86_64 && m checkbuild Change-Id: Ib18afa3d2c93ed3ce69204286d5177991100fd7e Exempt-From-Owner-Approval: build refactoring
2018-12-03Remove ; from closing namespaces in libs/hwuiChris Blume
When closing a namespace a } is sufficient. It doesn't need to be }; like closing a class or enum. Within frameworks/base/libs/hwui there is a mix between } and }; when closing a namespace. There are even mixes between a .h and the corresponding .cpp files. In a separate CL I was asked to not close with };. That was a good comment. I adopted the style from nearby code. This CL cleans up the nearby code. Test: I made sure the code still built as expected. Change-Id: Ieb314a4f48d6e33752463f3be4361fdc9be97482
2018-05-09A better HW Bitmap uploaderJohn Reck
Move all HW bitmap upload operations off of RenderThread. Ensure EGL context outlives all upload requests Bug: 79250950 Test: builds, boots, systrace is good, CTS bitmap tests pass Change-Id: I5ace6c516d33b1afdf1a407cd8b183f6b60c22c1
2018-03-26More path validation for better error messageDoris Liu
BUG: 73759524 Test: Unit test updated Change-Id: I2774450174ad6490a1d5e6c81766a2982c2aa6f1
2017-11-03Format the world (or just HWUI)John Reck
Test: No code changes, just ran through clang-format Change-Id: Id23aa4ec7eebc0446fe3a30260f33e7fd455bb8c
2016-04-12Allow leading spaces in path string (to keep behavior consistent)Doris Liu
Bug: 28132454 Change-Id: Iee799c13a85738db3d6940aca0fe917f284fa651
2016-04-08Improve error logging for parsing failuresDoris Liu
Bug: 27043594 Change-Id: I901b65f734c49444a78e0714e007e15e2340ab9d
2015-11-18VectorDrawable native rendering - Step 2 of MANYDoris Liu
Introduced PathData in Java, which is effectively a thin layer around the native instance. PathData holds the verbs and points which is being used in path morphing/interpolation. The verbs and points can be interpreted into skia path commands, which is now done in native and therefore saves a handful of JNI calls during path creation. Removed the old PathDataNode mechanism and changed the PathEvaluator to use PathData instead. Also added tests and a microbench. Also ran CTS tests for VectorDrawable and AnimatedVectorDrawable, and passed all of the existing tests. Change-Id: Ia166f5172ff031fe18b154327967f911a62caec1
2015-11-13Add error check for float parsing and fix testsDoris Liu
Change-Id: Ia4f4863d415536b3796edbcdb83c951b6cff02cf
2015-11-11Add hooks in JNI to start using native path parsingDoris Liu
Change-Id: Iaa0d3c2c1936c248146ed7f186a13e8e79be818e
2015-11-10VectorDrawable native rendering - Step 1 of MANYDoris Liu
Implement path parsing from string to skia path in native. The parsing contains two main stages: 1) Parse string into a list of nodes that contains one operation (such as move) and a vector of floats as params for that operation. 2) Interpret the operations defined in the nodes into SkPath operations, and create a skia path Also provided unit test for parsing a string path into a list of nodes, and then to a skia path. Change-Id: I0ce13df5e3bb90987dcdc80fe8b039af175ad2e2