summaryrefslogtreecommitdiff
path: root/libs/hwui/PathParser.h
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-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-12-28VectorDrawable native rendering - Step 3 of MANYDoris Liu
- Refactored VPathRenderer & VectorDrawableState - Moved all the VD rendering into native - Set up hooks for VD's property changes in JNI for animated VD TODO: JNI calls can be further reduced when we convert the animation in AVD to use RenderNodeAnimator, in which case animation will be driven from native and therefore most of the JNI hooks for changing VD's properties during animation will no longer be needed. Change-Id: I52021f4d7bea057b83ace54085d870dd45acae0f
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