androidx_graphics_shapes 1.6.0
androidx_graphics_shapes: ^1.6.0 copied to clipboard
A library for easy creation, transformation, and morphing of rounded polygonal shapes. Contains predefined Material Design shapes that can be used at various components.
1.6.0 #
-
Introduced a new abstract
DynamicPathBorderclass, which allows implementing bounds-dependent path borders while handling the painting logic automatically.- This change adds proper
BorderSidesupport to bothRoundedPolygonBorderandMorphBorder, including proper stroke alignment. - New
strokeCap,strokeJoinandstrokeMiterLimitproperties allow customizing how the shape's outline will be painted. This change was propagated down toStaticPathBorder,RoundedPolygonBorderandMorphBorderas well. - The
DynamicPathBorder.paintPathStroke()static method provides painting logic to help paint path strokes on aCanvas, e.g. inCustomPainter.paint(),RenderObject.paint(), etc.
- This change adds proper
-
Renamed
PathBordertoStaticPathBorderand changed its superclass toDynamicPathBorder. -
Added
Object.toString()overrides for all custom borders:DynamicPathBorder,StaticPathBorder,RoundedPolygonBorderandMorphBorder. -
Added documentation clarifying the normalized path requirements to
StaticPathBorder.path. -
Removed deprecated internal extensions:
RoundedPolygonInternalExtensionandMorphInternalExtension.- Code that previously relied on these extension must switch to the public extensions:
RoundedPolygonExtensionandMorphExtensionrespectively.
- Code that previously relied on these extension must switch to the public extensions:
-
Bumped minimum SDK versions to Dart 3.12 and Flutter 3.44.
-
Cleaned up internal code.
-
Reformatted the library with Dart 3.12 formatter changes.
-
Reformatted the changelog.
1.5.0 #
-
Changed
RoundedPolygonExtension.transformedWithMatrix4()to always perform perspective transform. Removed theusePerspectiveTransformparameter. -
Fixed
RoundedPolygon.hashCodereturning different hash codes for equal objects. Thefeatureslist is now being properly hashed by values. -
Replaced usages of
listEquals()andObject.hashAll()withListEquality().equals()andListEquality().hash(). -
Minor optimizations, as well as internal and code style changes.
1.4.0+1 #
- Added missing 1.4.0 changelog entries.
1.4.0 #
-
Bumped minimum Dart SDK to 3.11 and Flutter to 3.41.
-
Marked internal extension methods on
RoundedPolygonandMorphas deprecated. -
Fixed
RoundedPolygonBorder.copyWith()skippingsideandsquashproperties. -
Exposed
PathBorderfor public use. -
Added
transformedWithMatrix2(),transformedWithMatrix3()andtransformedWithMatrix4()methods toRoundedPolygonExtension. -
Added more arguments to
RoundedPolygonExtension.toPath()andMorphExtension.toPath()methods. -
Optimized internal calculations and algorithms in the
material_shapeslibrary only.
1.3.2 #
- Downgraded the dependency constraint of
metato^1.17.0to match the version pinned by the stable SDK.
1.3.1 #
-
Removed usages of the
@immutableannotation. -
Internal changes.
-
Addressed linter feedback.
-
Upgraded dependencies.
1.3.0 #
-
Added path caching to
RoundedPolygonBorderandMorphBorderso they are no longer const-constructable. -
Implemented morphing between
RoundedPolygonBordershapes and betweenMorphBordershapes (with the samemorphvalues). -
Exposed
startandendproperties ofMorphas internal members. -
Internal updates to
MaterialShapes. -
Added inline pragmas to internal utils.
1.2.0 #
-
CornerRounding()now uses positional parameters. For named parameters,CornerRounding.from()can be used. -
Internal code style changes.
1.1.1 #
-
Updated
README.mdwith expanded information. -
Added an empty
example/main.dartfor future implementation. -
Added documentation comments for more items.
1.1.0 #
-
Optimized
Pointinternal implementation for raw construction, making it an extension type. -
Optimized
Cubic.fromPoints()internal constructor implementation. -
Added identity equality checks for
MutableCubic, making every instance of the class only be equal to itself. -
Changed
startAngletype frominttodoublein various APIs. -
Previously mutable static members of
MaterialShapes(i.e.MaterialShapes.circle,MaterialShapes.squareetc.) are nowfinal. -
Applied dot shorthands across the library.
-
Improve overall code style and clarity.
1.0.0 #
- Initial version.