History log of /frameworks/base/tools/layoutlib/bridge/src/android/graphics/PathMeasure_Delegate.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
b9c48d8f49d35e2682c7205a9d8d5fcc25d7c736 18-Dec-2015 Diego Perez <diegoperez@google.com> New path interpolation to paint vector drawables

Before this CL, PathMeasure_Delegate would use Path_Delegate.approximate
to get a path segment to draw. Path_Delegate.approximate uses a
flattening iterator to do the path approximation.
Unfortunately, because we do not control the stroke mode while painting,
in some cases the approximation would draw unwanted artifacts caused by
the rough approximation and the use of wrong miter values.
This CL does a much better calculation of the path and interpolates the
segments of the curves instead of replacing them with line segments.

This also fixes an issue with the calculation of empty paths.

Bug: http://b.android.com/187256

Change-Id: I450f7aa4c3d9efcbf902a40c3b4d6d388546893f
/frameworks/base/tools/layoutlib/bridge/src/android/graphics/PathMeasure_Delegate.java
29ed07524ce0fc2e5950f5340d306247145d0efa 14-Oct-2015 Diego Perez <diegoperez@google.com> Add support for Choreographer animations

First step to add support for Choreographer based animations. The
Choreographer_Delegate avoid using a handler so the animation callbacks
can be called on-demand (by using doFrame). This allows things like
frame by frame animation or selecting a specific frame, and doesn't need
a separate thread to run.

The CL also changes the System and SystemClock implementations to allow
to set specific times. Because animations heavily rely on the system
time, this allows controlling it. It can also be useful to ensure that
the rendering produces a deterministic result when using controls like
the Calendar widget.

Change-Id: Iff221d2698a82075cafbb60f341be01741f7aa13
/frameworks/base/tools/layoutlib/bridge/src/android/graphics/PathMeasure_Delegate.java
081cebf52b19e848c07fb781b35fa1f96695c311 07-Oct-2015 Diego Perez <diegoperez@google.com> Implement Path.approximate and add PathMeasure support

PathMeasure is needed to use the trimPath* properties in drawables.
These properties are used in the vector drawable for indeterminate
progress bars in Material so this is needed to be able to render them
correctly in the preview.
PathMeasure makes use of Path.approximate to calculate which segments to
paint.

Change-Id: Ic513f0a30a6aac0317f7c13cd75e9154c37405c8
/frameworks/base/tools/layoutlib/bridge/src/android/graphics/PathMeasure_Delegate.java