0.0.50
Added
- Add min/max limits to increment/decrement input buttons and disable at bounds
Fixed
- Fixed clip behavior in Dialog overlay widget
- Removed haptic on iOS
Breaking Changes
- [BREAKING] Navigation selection model changed from index-based (
int) to
key-based (Key?) acrossNavigationBar,NavigationRail, and
NavigationSidebar(commits 53d2d8c, 8d3104a, 9ef28a8)indexparameter removed; useselectedKeyinsteadonSelectedcallback signature changed fromValueChanged<int>?to
ValueChanged<Key?>?NavigationItem.indexparameter removed; use the widget'skeyfor
selection identity
- [BREAKING]
NavigationBarItemabstract class removed; children parameters now
acceptList<Widget>instead ofList<NavigationBarItem> - [BREAKING]
NavigationContainerMixin(and itswrapChildrenmethod) removed - [BREAKING]
NavigationChildControlDataandNavigationGroupControlData
classes removed - [BREAKING]
NavigationBar.constraintsparameter removed; useexpandedSize
andcollapsedSizeinstead - [BREAKING] Several
NavigationBarparameters changed from nullable with theme
fallback to non-nullable with explicit defaults:alignment(NavigationBarAlignment?→NavigationBarAlignment, default:
start)labelType(NavigationLabelType?→NavigationLabelType, default:all)labelPosition(NavigationLabelPosition?→NavigationLabelPosition,
default:bottom)labelSize(NavigationLabelSize?→NavigationLabelSize, default:
small)expanded(bool?→bool, default:false)
- [BREAKING]
NavigationBar.expandsparameter removed - [BREAKING]
NavigationGap,NavigationDivider,NavigationLabel, and
NavigationWidgetno longer implementNavigationBarItem
Migration guide:
- Replace
index/onSelectedwithselectedKey/ key-based callback.
// before
NavigationBar(
index: selectedIndex,
onSelected: (index) => setState(() => selectedIndex = index),
children: [
NavigationItem(label: Text('Home'), child: Icon(Icons.home)),
NavigationItem(label: Text('Search'), child: Icon(Icons.search)),
],
)
// after
NavigationBar(
selectedKey: selectedKey,
onSelected: (key) => setState(() => selectedKey = key),
children: [
NavigationItem(key: ValueKey('home'), label: Text('Home'), child: Icon(Icons.home)),
NavigationItem(key: ValueKey('search'), label: Text('Search'), child: Icon(Icons.search)),
],
)- Remove any
NavigationBarItemtype annotations; useWidgetinstead. - Remove any usage of
NavigationContainerMixin,NavigationChildControlData,
orNavigationGroupControlData. - Replace
NavigationBar(constraints: ...)withexpandedSize/
collapsedSize.