s_gridview 2.0.1
s_gridview: ^2.0.1 copied to clipboard
A lightweight, customizable grid-like Flutter widget with index-based scrolling and tappable scroll indicators
2.0.1 #
- README updated to show example GIF
2.0.0 #
π Major Features #
- Tappable Scroll Indicators: Indicators are now interactive! Tap the top/left indicator to scroll backward, or bottom/right indicator to scroll forward.
- Configurable Scroll Distance: New
indicatorScrollFractionparameter (0.1 to 2.0) allows users to control how far each indicator tap scrolls as a fraction of the viewport (e.g., 0.5 = half viewport, 1.0 = full viewport, 2.0 = two viewports). - Smart Edge Behavior: New
initialIndicatorJumpparameter provides intuitive navigation at list edges - configurable initial jump when tapping forward from the start or backward from the end. - Viewport-Aligned Scrolling: Smooth, gradual scrolling based on viewport dimensions rather than discrete item jumps.
π οΈ Improvements #
- Production Optimizations: Removed debug logging, improved documentation, refactored code for better maintainability.
- Flutter Web Support: Comprehensive mounted checks to prevent disposed view errors during hot reload.
- Manual Scroll Tracking: Indicators now accurately track position after user drag/scroll gestures.
- Tap Debouncing: Prevents rapid-fire taps from causing conflicting scroll animations.
π Breaking Changes #
- Indicator tap behavior is now enabled by default. Set
showScrollIndicators: falseto disable if needed. - Scroll animations are now viewport-aligned instead of item-based (provides smoother UX).
π Bug Fixes #
- Fixed double-tap requirement on first indicator press at startup.
- Fixed indicator position tracking after manual scrolls.
- Fixed disposed view rendering errors on Flutter web hot reload.
1.0.2 #
README.mdupdated
1.0.1 #
- Added detailed documentation, README polish, and an interactive example that demonstrates orientation changes, indicator toggles, auto-scroll, and programmatic controller usage.
- Documented the exported API so pub.flutter-io.cn recognizes the library, class, constructor, and key setters.
- Stabilized widget tests by executing
jumpTomanually instead of awaitingscrollToIndex, and noted the rationale in the test comments.
1.0.0 #
- Version 1.0.0
Added #
- Public
SGridViewwidget with customizable cross-axis item count and layout - Index-based scrolling using
IndexedScrollController(viaindexscroll_listview_builder) - Optional scroll indicators when more rows are present for improved UX
- Support for custom padding, scroll controller injection, and automatic scroll-to-index
Fixed #
- Initial release; no bug fixes yet
0.0.1 #
- Initial release