xtal_dashboard 0.4.0
xtal_dashboard: ^0.4.0 copied to clipboard
A grid-based dashboard layout library with drag-and-drop reordering, resizing, and physics-based animations.
0.4.0 #
- Add per-item minimum size constraints (
GridItem.minColumnSpan,GridItem.minRowSpan). - Resize operations now respect per-item minimums (effective minimum = stricter of global and per-item).
- Resize ghost visual feedback honors per-item minimum size during drag.
resetSizeOnShelfnow resets to per-item minimum instead of 1×1.- Per-item minimums are preserved through JSON serialization (backward-compatible: omitted when default).
0.3.1 #
- Add
GridItem.toJson()/GridItem.fromJson()for JSON serialization. - Add
DashboardItemData.toJson()to export persistable fields (grid position, size, title).
0.3.0 #
- Add frozen rows (
frozenRows) to pin the top N rows during vertical scroll. - Add
ShelfConfig.resetSizeOnShelfto reset item spans to 1×1 when moved to shelf. - Improve shelf long-press hit area to cover the full preview square.
- Fix drop zone indicator not appearing during drag in frozen mode.
- Fix auto-scroll not activating during drag in frozen mode.
0.2.1 #
- Fix ghost widget overflow during shelf-to-grid transitions by adding
layoutSizeparameter toGhostRenderer.show(). - Ghost child is now wrapped in
FittedBoxwith fixed layout constraints, preventing layout errors when the display size shrinks below the child's minimum size. - Update example app with richer dashboard-style text content in cards.
0.2.0 #
- Add shelf title display with
DashboardItemData.titleandShelfConfig.showTitles. - Add shelf auto-size mode:
ShelfConfig.sizedefaults tonull(auto-size based on titles). - Add
titleStyle,titleOverflow, andtitlePaddingconfiguration for shelf titles. - Fix AnimatedContainer overflow during shelf size transitions (LayoutBuilder clamp).
- Fix title ellipsis in auto-size mode caused by floating-point rounding (add 2px buffer).
0.1.0 #
- Initial release.
- Grid-based dashboard layout with configurable columns, gap, padding, and cell aspect ratio.
- Drag-and-drop reordering with long-press gesture detection.
- Multi-directional resize with edge and corner handles.
- Physics-based spring animations (critically damped and underdamped).
- Shelf/dock system for temporarily parking widgets with animated entry/exit.
- Auto-scroll during drag when pointer approaches viewport edges.
- Customizable ghost widget during drag and resize.
- Collision detection with configurable enable/disable.