pin_ui 0.2.0
pin_ui: ^0.2.0 copied to clipboard
Widgets for implementing PIN code related screens in Flutter applications
0.2.0 #
Breaking Changes #
- PinpadExtraKey: Changed
childproperty tobuilderfunction with signatureWidget Function(bool isPressed, bool isPointed)for proper press/point state handling - PinpadKey: Changed
childproperty tobuilderfunction with signatureWidget Function(bool isPressed, bool isPointed)
Bug Fixes #
- Fixed null check error when interrupting idle animation in
PinIndicatorAnimationController - Fixed
LateInitializationErrorcrash inSuccessKickPinIndicatorwhen widget disposed before animation initialized - Fixed
LateInitializationErrorcrash inSuccessFillLastPinIndicatorwhen widget disposed quickly - Fixed
LateInitializationErrorcrash inLoadingTravelPinIndicatorwhen widget disposed during initialization - Fixed memory leak in
SuccessCollapsePinIndicatorwhere anonymousAnimationControllerwas created but never disposed - Fixed memory leak in
LoadingCollapsePinIndicatorwith same anonymous controller issue - Fixed
stop()method ignoringignoreOnInterruptCallbacksflag for currently playing animation - Fixed
animateIdle()callingonCompletecallback on every repeat iteration instead of only the last one - Fixed wrong decoration used for disabled pinpad keys (was using default instead of disabled)
- Fixed
PinIndicatorAnimationControllerbeing unnecessarily created on every widget build when controller is null - Fixed potential ID collision in animation identifier generation when multiple animations queued in same microsecond
- Fixed
initializeVibration()throwing error when called multiple times
Improvements #
- Added
mountedchecks in wave animation widgets to prevent crashes when widget is disposed during animation - Improved
PinpadKeyWrapperto provide bothisPressedandisPointedstates to builder - Updated
PointDetectorBuilderwith proper pointer exit handling and improved state management - Refactored
PressDetectorBuilderto call callbacks beforesetStatefor more predictable timing PinpadTextKeynow requires bothisPressed && isPointedto show pressed style (better UX when dragging finger)
Documentation #
- Added missing
Loading Wave Fadeanimation to README animations table - Added Table of Contents to README for easier navigation
- Fixed invalid Dart syntax in README code examples (changed
=to:for named parameters) - Fixed multiple typos: "myDecoratino", "contoller", "onInterruct", "Fell free", "backed", "smother", "stoped", "imminently", "staff"
- Fixed incomplete sentence in "Animations priority" section
- Fixed grammar issues in README
Dependencies #
- Updated
vibrationfrom ^2.0.0 to ^3.1.4 - Updated
flutter_lintsfrom ^4.0.0 to ^6.0.0
Other #
- Removed deprecated
package_api_docslint rule from analysis_options.yaml - Removed unnecessary
library pin_ui;declaration - Replaced deprecated
withOpacity()withwithValues(alpha:)for Flutter 3.27+ compatibility
0.1.0+1 #
- Add another example project link
0.1.0 #
- Update README
- Fix controller's queue logic
- Add loading wave fade animation
0.0.1 #
- Initial release: Pinpad and PinIndicator (24 animations)