forui 0.12.0
forui: ^0.12.0 copied to clipboard
Beautifully designed, minimalistic widgets for desktop & touch devices.
0.12.0 #
Bumps minimum Flutter SDK version to 3.32.0.
CLI #
-
Add
icon-mapping
snippet. -
Breaking Improve how style aliases are generated - Certain style aliases may be removed or renamed.
-
Fix style suggestions always displaying actual style name instead of alias.
FCollapsible
(new) #
A widget that collapses and expands its child.
- Add
FCollapsible
.
FDateField
#
-
Enhance
FDateField.calendar
's focus management. -
Fix
FDateField
not closing calendar popover when enter is pressed.
FScaffold
#
- Add
FScaffold.sidebar
. - Add
FScaffoldStyle.sidebarBackgroundColor
.
FSelect
#
-
Add
FSelect.searchFromMap(...)
. -
Add
FSelectItem.raw(...)
. -
Add
FSelectSection.fromMap(...)
. -
Breaking Change
format
inFSelect.new(...)
to be required. -
Breaking Change
format
inFSelect.search(...)
to be required. -
Breaking Remove
FSelect.defaultFormat
. -
Breaking Change
FSelectItem(...)
to require a String text instead of Widget child.
FSidebar
(new) #
A sidebar widget that usually resides on the side of the screen for navigation.
- Add
FSidebar
. - Add
FSidebarGroup
. - Add
FSidebarItem
.
FTextField
& FTextFormField
#
- Add
FTextField.onTapOutside
. - Add
FTextFormField.onTapOutside
.
FToast
& FToaster
(new) #
An optional toast.
- Add
showFToast(...)
. - Add
showRawFToast(...)
. - Add
FToast
. - Add
FToastStyle
. - Add
FToaster
. - Add
FToasterEntry
. - Add
FToasterExpandBehavior
. - Add
FToasterStyle
.
Others #
-
Add
toggleable
parameter toFCalendarController.date(...)
. -
Add
toggleable
parameter toFLineCalendar(...)
. -
Add
FPopover.shortcuts
. -
Add
FTabs.onPress
. -
Breaking Change
FLineCalendar
to be un-toggleable by default. -
Breaking Change
FThemeData.headerStyle
toFThemeData.headerStyles
. -
Enhance
FSelect
's focus management. -
Enhance
FTimeField.picker
's focus management.
0.11.1 #
- Add optional named parameters with their default values to CLI generated styles.
- Fix
FTileStyle.pressable
not changing background color on press & hold. - Fix typo in CLI generated styles' documentation.
0.11.0 #
Styles #
We added a CLI to generate styles for Forui widgets. See forui.dev/docs/cli for more information.
We made several breaking changes to styles and widgets that rely on state styles to improve consistency and usability
(too many to list sanely). Generally, all styles have been updated to use WidgetState
s, becoming more customizable and
concise.
- Breaking Rename
FThemeData.colorScheme
toFThemeData.colors
. - Breaking Rename all
F<Style>.inherit(colorScheme: ...)
toF<Style>.inherit(colors: ...)
.
Semantics Labels #
Both semanticsLabel
and semanticLabel
were used interchangeably throughout the library. All semanticLabel
s
have been renamed to semanticsLabel
for consistency.
- Breaking Rename
semanticLabel
tosemanticsLabel
inFAvatar.new
. - Breaking Rename
semanticLabel
tosemanticsLabel
inFBreadcrumb.collapsed
. - Breaking Rename
FCheckbox.semanticLabel
toFCheckbox.semanticsLabel
. - Breaking Rename
FDialog.semanticLabel
toFDialog.semanticsLabel
. - Breaking Rename
FHeaderAction.semanticLabel
toFHeaderAction.semanticsLabel
. - Breaking Rename
FPopover.semanticLabel
toFPopover.semanticsLabel
. - Breaking Rename
FPopoverMenu.semanticLabel
toFPopoverMenu.semanticsLabel
. - Breaking Rename
FRadio.semanticLabel
toFRadio.semanticsLabel
. - Breaking Rename
FSelectGroupItem.semanticLabel
toFSelectGroupItem.semanticsLabel
. - Breaking Rename
FSelectMenuTile.semanticLabel
toFSelectMenuTile.semanticsLabel
. - Breaking Rename
FSelectTile.semanticLabel
toFSelectTile.semanticsLabel
. - Breaking Rename
FSelectTileGroup.semanticLabel
toFSelectTileGroup.semanticsLabel
. - Breaking Rename
FSwitch.semanticLabel
toFSwitch.semanticsLabel
. - Breaking Rename
FTappable.semanticLabel
toFTappable.semanticsLabel
. - Breaking Rename
FTile.semanticLabel
toFTile.semanticsLabel
. - Breaking Rename
FTileGroup.semanticLabel
toFTileGroup.semanticsLabel
.
FAccordion
#
-
Add
FAccordionItemMixin
. -
Breaking Change
FAccordion.items
toFAccordion.children
. -
Change
FAccordion.children
fromList<FAccordionItem>
toList<FAccordionIteMixin
.
FBottomNavigationBar
#
The tappable logic has been moved from FBottomNavigationBar
to FBottomNavigationBarItem
to improve
FBottomNavigationBarItem
's usability. Unfortunately, this means that custom navigation items have to implement
FTappable
on their own moving forward.
-
Add
FBottomNavigationBarItem.autofocus
. -
Add
FBottomNavigationBarItem.focusNode
. -
Add
FBottomNavigationBarItem.onFocusChange
. -
Add
FBottomNavigationBarItem.onHoverChange
. -
Add
FBottomNavigationBarItem.onStateChange
. -
Add
FBottomNavigationItemStyle.spacing
. -
Breaking Move
FBottomNavigationBarStyle.tappableStyle
toFBottomNavigationBarItemStyle.tappableStyle
. -
Breaking Move
FBottomNavigationBarStyle.focusedOutlineStyle
toFBottomNavigationBarItemStyle.focusedOutlineStyle
.
FButton
#
-
Add
FButton.onChange
. -
Add
FButton.onHoverChange
. -
Add
FButton.selected
. -
Add
intrinsicWidth
toFButton(...)
. -
Breaking Change
FButton(label: ...)
toFBadge(child: ...)
.
FBreadcrumb
#
-
Add
traversalEdgeBehavior
toFBreadcrumbItem.collapsed
. -
Add
autofocus
toFBreadcrumbItem(...)
. -
Add
focusNode
toFBreadcrumbItem(...)
. -
Add
onFocusChange
toFBreadcrumbItem(...)
. -
Add
onHoverChange
toFBreadcrumbItem(...)
. -
Add
onStateChange
toFBreadcrumbItem(...)
. -
Add
spacing
toFBreadcrumbItem.collapsed(...)
. -
Add
offset
toFBreadcrumbItem.collapsed(...)
. -
Add
onHoverChange
toFBreadcrumbItem.collapsed(...)
. -
Add
onStateChange
toFBreadcrumbItem.collapsed(...)
. -
Add
FBreadcrumbStyle.focusedOutlineStyle
. -
Breaking Change
focusNode
fromFocusNode
toFocusScopeNode
inFBreadcrumbItem.collapsed
. -
Breaking Remove
directionPadding
fromFBreadcrumbItem.collapsed(...)
.
FDateField
#
-
Add
FDateField.builder
. -
Add
FDateField.initialDate
. -
Add
FDateField.onChange
. -
Add
spacing
toFDateField.calendar(...)
. -
Add
offset
toFDateField.calendar(...)
. -
Add
spacing
toFDateField(...)
. -
Add
offset
toFDateField(...)
. -
Breaking Remove
directionalPadding
fromFDateField.calendar(...)
. -
Breaking Remove
directionalPadding
fromFDateField(...)
.
FDialog
#
-
Breaking Change
FDialog
to not automatically wrap actions inInstrinicWidth
. -
Breaking Change
FDialog
to not automatically wrap body inIntrinsicWidth
. -
Breaking Move
FDialog.insetAnimationDuration
toFDialogStyle.insetAnimationDuration
. -
Breaking Move
FDialog.insetAnimationCurve
toFDialogStyle.insetAnimationCurve
. -
Breaking Combine
FDialogStyle.minWidth
andFDialogStyle.maxWidth
intoFDialog.constraints.
. -
Breaking Combine
FDialogStyle.minWidth
andFDialogStyle.maxWidth
toFDialog.constraints.
. -
- Fix
FDialog
not handling infinitely sized body correctly.
- Fix
FHeader
#
-
Add
FHeaderAction.onHoverChange
. -
Add
FHeaderAction.onStateChange
. -
Add
FHeaderAction.selected
. -
Add
titleAlignment
toFHeader.nested(...)
. Thanks @a-man-called-q! -
Change
FHeader(title: ...)
to be optional. -
Change
FHeader.nested(title: ...)
to be optional. -
Breaking Change
FHeader(actions: ...)
toFHeader(suffixes: ...)
. -
Breaking Change
FHeader(prefixActions: ...)
toFHeader(prefixes: ...)
. -
Breaking Change
FHeader(suffixActions: ...)
toFHeader(suffixes: ...)
. -
Fix
FHeader
spacing appearing in incorrect order.
FIcon
(removed) #
FIcon
has been removed in favor of Flutter's Icon
class. FIcon
was designed with only monochrome icons in mind
and is not able to support multicolored icons. This coincides with replacement of FAssets
with FIcons
and svg icons
with font icons. In addition, all iconColor
and iconSize
style properties have been replaced with IconThemeData
.
- Breaking Remove
FIcon
- use Flutter'sIcon
. - Breaking Remove
FIconStyle
- use Flutter'sIconThemeData
instead. - Breaking Replace
FAssets
withFIcons
. - Breaking Replace
FAccordionStyle
iconColor
andiconSize
withiconStyle
. - Breaking Replace
FBottomNavigationBarItemStyle
activeIconColor
,inactiveIconColor
andiconSize
withselectedIconStyle
andunselectedIconStyle
. - Breaking Replace
FBottomNavigationBarItemStyle
activeTextStyle
andinactiveTextStyle
withselectedTextStyle
andunselectedTextStyle
. - Breaking Replace
FButtonIconContentStyle
enabledColor
,disabledColor
andiconSize
withenabledStyle
anddisabledStyle
. - Breaking Replace
FButtonContentStyle
enabledIconColor
,disabledIconColor
andiconSize
withenabledIconStyle
anddisabledIconStyle
. - Breaking Replace
FButtonIconContentStyle
enabledColor
,disabledColor
andiconSize
withenabledStyle
anddisabledStyle
. - Breaking Remove
FCalendarHeaderStyle
enabledIconColor
anddisabledIconColor
- configurebuttonStyle.iconContentStyle
instead. - Breaking Change
FDateFieldStyle.iconStyle
fromFIconStyle
toIconThemeData
. - Breaking Replace
FHeaderActionStyle
enabledColor
,disabledColor
andsize
withenabledStyle
anddisabledStyle
. - Breaking Change
FPaginationStyle.iconStyle
fromFIconStyle
toIconThemeData
. - Breaking Change
FTileContentStateStyle.prefixIconStyle
fromFIconStyle
toIconThemeData
. - Breaking Change
FTileContentStateStyle.suffixIconStyle
fromFIconStyle
toIconThemeData
. - Breaking Change
FTimeFieldStyle.iconStyle
fromFIconStyle
toIconThemeData
. - Breaking Replace
FAlertCustomStyle
iconColor
andiconSize
withiconStyle
. - Breaking Change
FBreadcrumbStyle.iconStyle
fromFIconStyle
toIconThemeData
. - Breaking Replace
FCheckboxStateStyle
iconColor
withiconStyle
.
FLineCalendar
#
- Add
FLineCalendar.onChange
. - Add
FLineCalendar.initialSelection
. - Add
FLineCalendar.physics
. - Add
FLineCalendar.keyboardDismissBehavior
. - Change
FLineCalendar.controller
to be optional. - Breaking Rename
FLineCalendar.initialDateAlignment
toFLineCalendar.initialScrollAlignment
. - Breaking Rename
FLineCalendar.initial
toFLineCalendar.initialScroll
.
FPagination
#
-
Add
FPagination.initialPage
. -
Add
FPagination.pages
. -
Change
FPagination.controller
to be optional. -
Change
FPagination.onChange
fromVoidCallback?
toValueChanged<int>?
-
Breaking Change
FPaginationController
to requirepages
parameter.
FPopover
& FPopoverMenu
. #
The traversal-edge behavior of FPopover
and Forui widgets that depend on it have been fixed.
-
Add
FPopover.traversalEdgeBehavior
. -
Add
traversalEdgeBehavior
toFPopoverMenu
. -
Add
FPopover.constraints
. -
Add
FPopover.spacing
. -
Add
FPopover.offset
. -
Add
FPopover.groupId
. -
Add
FPopoverMenu.spacing
. -
Add
FPopoverMenu.offset
. -
Add
FPopoverMenu.groupId
. -
Breaking Change
FPopover.focusNode
fromFocusNode
toFocusScopeNode
. -
Breaking Change
FPopoverMenu.focusNode
fromFocusNode
toFocusScopeNode
. -
Breaking Remove
FPopover.directionPadding
. -
Breaking Remove
FPopoverMenu.directionPadding
. -
Fix
FPopover
unconditionally callingFPopoverController.hide()
when tapping outside aFPopover
.
FPortal
#
FPortal
has been re-implemented to support size alignment, directional spacing & fix a series of longstanding issues.
- Add
FPortal.viewInsets
. - Add
FPortal.spacing
. - Add
FPortalConstraints
. - Add
FPortalSpacing
. - Fix
FPortal
not positioning portals correctly when wrapped in aRepaintBoundary
/Padding
. - Fix
FPortal
not updating portals when child's offset/size changes. - Fix
FPortal
displaying portal when child is not rendered.
FProgress
#
FProgress
has been updated to support indeterminate progress and fix some longstanding issues.
- Add
FProgress.circularIcon
. - Breaking Change
FProgressStyle
toFLinearProgressStyle
. - Breaking Remove
FButtonSpinner
- useFProgress.circularIcon(...)
instead.
FSelect
(new) #
A select displays a list of options for the user to pick from. It is searchable and supports both async & sync loading of items.
- Add
FSelect
. - Add
FSelectController
.
FSelectGroup
, FSelectGroupController
& controller callbacks #
FSelectGroupController
has been replaced with FMultiValueNotifier
to allow usage across other non-select group
widgets. This applies to all Forui widgets that use FSelectGroupController
.
A new onChange
and onSelect
callback has been added to most Forui widgets.
-
Add
FMultiValueNotifier
. -
Add
FSelectTileGroupController
typedef. -
Add
FSelectMenuTileController
typedef. -
Add
FSelectGroup.onChange
. -
Add
FSelectGroup.onSelect
. -
Add
FSelectTileGroup.onChange
. -
Add
FSelectTileGroup.onSelect
. -
Add
FSelectMenuTile.onChange
. -
Add
FSelectMenuTile.onSelect
. -
Breaking Change
FSelectGroup(items: ...)
toFBadge(children: ...)
. -
Breaking Replace
FSelectGroupItem
withFCheckbox.grouped(...)
andFRadio.grouped(...)
. -
Breaking Replace
FSelectGroupController
with a typedef ofFMultiValueNotifier
. -
Breaking Remove
FMultiSelectGroupController
- useFSelectGroupController(...)
instead. -
Breaking Remove
FRadioSelectGroupController
- useFSelectGroupController.radio(...)
instead. -
Breaking Rename
FSelectTileGroup.groupController
toFSelectTileGroup.selectController
. -
Breaking Rename
FSelectMenuTile.groupController
toFSelectMenuTile.selectController
. -
Breaking Rename
FSelectMenuTile.menuTileBuilder
toFSelectMenuTile.menuBuilder
. -
Fix
FSelectGroup
not setting itsFormField
's initial value.
FSelectMenuTile
#
-
Add
FSelectMenuTile.traversalEdgeBehavior
. -
Add
FSelectMenuTile.spacing
. -
Add
FSelectMenuTile.offset
. -
Breaking Change
focusNode
fromFocusNode
toFocusScopeNode
inFSelectMenuTile
. -
Breaking Remove
FSelectMenuTile.directionalPadding
.
FSelectTile
& FSelectTileGroup
#
-
Add
FSelectTile.onHoverChange
. -
Add
FSelectTile.onStatesChange
. -
Fix
FSelectTileGroup
not setting itsFormField
's initial value.
FSlider
#
-
Add
FSlider.initialSelection
. -
Add
FSlider.onChange
. -
Change
FSlider.controller
to be optional. -
Fix
FSlider
not setting itsFormField
's initial value.
FTabs
#
-
Add
FTabs.physics
. -
Breaking Change
FTabs(tabs: ...)
toFTabs(children: ...)
. -
Breaking Rename
FTabs.onPress
toFTabs.onChange
to better reflect its purpose. -
Breaking Change
FTabEntry(content: ...)
toFTabEntry(child: ...)
.
FTappable
#
FTappable
has been updated to support animations by default. This applies to all Forui widgets that use FTappable
.
The hovered
state has also been split into hovered
and pressed
states.
-
Add
FTappableStyle
. -
Add
FAccordionStyle.tappableStyle
. -
Add
FBottomNavigationBarStyle.tappableStyle
. -
Add
FBreadcrumbStyle.tappableStyle
. -
Add
FButtonStyle.tappableStyle
. -
Add
FCalendarDayPickerStyle.tappableStyle
. -
Add
FCalendarEntryStyle.tappableStyle
. -
Add
FCalendarHeaderStyle.tappableStyle
. -
Add
FHeaderActionStyle.tappableStyle
. -
Add
FLineCalendarStyle.tappableStyle
. -
Add
FPaginationStyle.tappableStyle
. -
Add
FTileStyle.tappableStyle
. -
Add
FTappable.onStateChange
. -
Add
FTappable.onHoverChange
. -
Add
FTappableStyle.cursor
. -
Breaking Replace
FTappable.semanticsSelected
withFTappable.selected
. -
Breaking Rename
FTappable
toFTappable.static
. -
Breaking Rename
FTappable.animated
toFTappable
. -
Breaking Split
FTappableData.hovered
intoFTappableData.hovered
andFTappableData.pressed
. -
Fix
FTappable
's animation sometimes being invoked after it is unmounted.
FTextField
& FTextFormField
(new) #
We've split FTextField
into FTextField
and FTextFormField
. This change was necessary to allow FTextField
to be
used in other widgets and allowing those widgets to properly implement FormField
.
-
Add
FTextField.groupId
. -
Add
FTextField.obscuringCharacter
. Thanks @MrHeer! -
Add
FTextField.filled
andFTextField.fillColor
. Thanks @MrHeer! -
Add
FTextFormField
. -
Breaking Change
FTextField
to not support form-related operations. UseFTextFormField
instead. -
Fix
FTextField
not setting itsFormField
's initial value. -
Fix
FTextField(...)
not setting the max lines to 1 default.
FTile
#
- Add
FTile.onHoverChange
. - Add
FTile.onStateChange
. - Add
FTile.selected
.
FTimeField
#
-
Add
FTimeField.builder
. -
Add
FTimeField.initialTime
. -
Add
FTimeField.onChange
. -
Add
spacing
toFTimeField.picker(...)
. -
Add
offset
toFTimeField.picker(...)
. -
Breaking Remove
directionalPadding
fromFTimeField.picker(...)
.
Others #
-
Breaking Rename
FAlertStyle
toFBaseAlertStyle
. -
Breaking Rename
FAlertCustomStyle
toFAlertStyle
. -
Breaking Move constants in
FBaseAlertStyle
toFAlertStyle
. -
Breaking Change
FBadge(label: ...)
toFBadge(child: ...)
. -
Add
FCardContentStyle.imageSpacing
. -
Add
FCardContentStyle.subtitleSpacing
. -
Add
FLerpBorderRadius
. -
Add
FPicker.onChange
. -
Add
FResizable.onChange
. -
Fix
FResizable
not guarding against precision errors in assertions. -
Breaking Change
FScaffold(content: ...)
toFScaffold(child: ...)
. -
Add
FTimePicker.onChange
.
0.10.0+1 #
Fix bad build caused by generated files not being published.
0.10.0 #
Additions #
- Add
FTextField.counterBuilder
. - Add
FTransformable
. - Add
FTransformables
. - Add
FTextField.clearable
. - Add
FTextField.stylusHandwritingEnabled
. - Add
FPickerWheelMixin
. - Add
FTimeField
. - Add
FTimeFieldController
. - Add
FTimeFieldProperties
. - Add
FThemeData.toApproximateMaterialTheme()
. - Add
FTimePicker
. - Add
FTimePickerStyle
. - Add
FPickerStyle.selectionHeightAdjustment
. - Add
FDateField.clearable
. - Add
FTileGroup.physics
. - Add
FSelectTileGroup.physics
. - Add
FSelectMenuTile.physics
. - Add
FPagination
.
Changes #
- Change all widget styles to use code generated functions.
- Change spacing between
FDateField
's default prefix icon and content. - Change most occurrences of
Alignment
toAlignmentGeometry
. - Change most occurrences of
BorderRadius
toBorderRadiusGeometry
. - Change most occurrences of
EdgeInsets
toEdgeInsetsGeometry
. - Breaking Rename
FDatePicker
toFDateField
. - Breaking Rename
FDatePickerController
toFDateFieldController
. - Breaking Rename
FDatePickerController.calendar
toFDateFieldController.popover
. - Breaking Rename
FDatePickerCalendarProperties
toFDateFieldCalendarProperties
. - Breaking Rename
FLocalizations.datePickerHint
toFLocalizations.dateFieldHint
. - Breaking Rename
FLocalizations.datePickerInvalidDateError
toFLocalizations.dateFieldInvalidDateError
. - Breaking Change
FThemeData(...)
to automatically configure styles not passed in. - Breaking Remove
FThemeData.inherit
. UseFThemeData(...)
instead. - Breaking Remove FTextField.scribbleEnabled. Use
stylusHandwritingEnabled
instead. - Breaking Change
FDialogContentStyle.actionPadding
toFDialogContentStyle.actionSpacing
. - Breaking Change default
FPickerStyle.textStyle
size fromlg
tobase
. - Breaking Change
FTimePicker
to useFTimePickerStyle
instead ofFPickerStyle
. - Breaking Rename
FLocalizations.sheetLabel
toFLocalizations.sheetSemanticsLabel
. - Breaking Rename
FBadgeStyle
toFBaseBadgeStyle
. - Breaking Rename
FBadgeCustomStyle
toFBadgeStyle
. - Breaking Move constants in
FBaseBadgeStyle
toFBadgeStyle
. - Breaking Rename
FButtonStyle
toFBaseButtonStyle
. - Breaking Rename
FButtonCustomStyle
toFButtonStyle
. - Breaking Move constants in
FBaseButtonStyle
toFButtonStyle
.
Fixes #
- Fix
FDateField.input
to show default icon. - Fix
FTab
not updating when using controller to switch tabs. - Fix
FPicker
incorrectly detecting number of wheels when controller is not given and placeholder is used. - Fix
FDateField
not handlingbg
,en
,sr
,sr_Latn
andzu
locales properly. - Fix
FDateField
not updating when locale changes. - Fix
FHeader
not respectingFHeaderStyle.actionSpacing
.
0.9.1+1 #
Fix documentation not publishing.
0.9.1 #
0.9.0 #
Additions #
- Add
FDatePicker
. - Add
FFormProperties
. - Add
FPagination
. - Add
FPicker
. - Add
FPopoverTagRegion
. - Add
FBreadcrumb
. - Add
FTextField.builder
. - Add
FTextField.onTap
. - Add
FTextField.onTapAlwaysCalled
. - Add
FSelectGroupController.onUpdate
. - Add
animationTween
toFTappable.animated(...)
. - Add
FValueNotifier.addValueListener(...)
. - Add
FValueNotifier.removeValueListener(...)
.
Changes #
- Breaking Change
FPopover.hideOnTapOutside
's type frombool
toFHidePopoverRegion
. The default behavior for hiding behavior forFPopover()
has changed from excluding the target to not. - Breaking Change
FPopoverStyle.shadow
toFStyle.shadow
. - Breaking Change
FPopoverMenu.tappable(...)
toFPopoverMenu.automatic(...)
. - Breaking Change
FPopover.controller(...)
toFPopover.popoverController(...)
. - Breaking Change
FPopover.tappable(...)
toFPopover.automatic(...)
. - Breaking Change
FPopover.followerAnchor
toFPopover.popoverAnchor
. - Breaking Change
FPopover.targetAnchor
toFPopover.childAnchor
. - Breaking Change
FPortal.followerAnchor
toFPortal.portalAnchor
. - Breaking Change
FPortal.targetAnchor
toFPortal.childAnchor
. - Breaking Change
FPortal.followerBuilder
toFPortal.portalBuilder
. - Breaking Change
FPortalFollowerShift
toFPortalShift
. - Breaking Remove
onChange
parameter fromFSelectTile
. This was accidentally include from early prototyping. - Breaking Change
FSelectGroupController.select(...)
toFSelectGroupController.update(...)
- Breaking Change
FSelectGroupController
to be aValueNotifier
. - Breaking Change
FTileGroup.prefix
fromWidget
toValueWidgetBuilder<FTextFieldStateStyle>
. - Breaking Change
FTileGroup.suffix
fromWidget
toValueWidgetBuilder<FTextFieldStateStyle>
. - Breaking Change
FTileGroup.controller
toFTileGroup.scrollController
.
Fixes #
- Fix
FCalendar
rebuilding whenever the giveninitialType
and/orinitialMonth
changes. - Fix
FCalendar
's day picker not updating when a new start and/or end date is given. - Fix
FHeader.nested(...)
not rendering the title when no prefix and suffix actions are given. - Fix
FPopover
not handling focus changes in popover properly. - Fix
FTabs
's scrollable alignment not being correct. - Fix
FTappable
remaining in a hovered or touched state when itsonPress
/onLongPress
callbacks were nulled after being non-null. - Fix
FTextField
ignoringenableInteractiveSelection
parameter. - Fix
FTextField
ignoringFTextFieldStyle.cursorColor
.
0.8.0 #
Bump minimum Flutter version to 3.27.0.
Additions #
-
Add
showFSheet(...)
. -
Add
showFPersistentSheet(...)
. -
Add
FModalSheetRoute
. -
Add
FSheets
. -
Add
FSheets
internally toFScaffold
. -
Add
truncateAndStripTimezone
toFCalendarController.date(...)
. -
Add
truncateAndStripTimezone
toFCalendarController.dates(...)
. -
Add
truncateAndStripTimezone
toFCalendarController.range(...)
. -
Add
FCalendar.dayBuilder
. -
Add
FLineCalendar
. -
Add
FTileGroup.builder
. -
Add
FSelectTileGroup.builder
. -
Add
FSelectMenuTile.builder
. -
Add
FScaffold.resizeToAvoidBottomInset
. -
Add
FThemeData.debugLabel
.
Changes #
-
Change
FCalendarController.date(...)
to automatically strip and truncate all DateTimes to dates in UTC timezone. -
Change
FCalendarController.dates(...)
to automatically strip and truncate all DateTimes to dates in UTC timezone. -
Change
FCalendarController.ranges(...)
to automatically strip and truncate all DateTimes to dates in UTC timezone. -
Change
FCalendar.start
to be optional and default to 1st January 1900. -
Change
FCalendar.end
to be optional and default to 1st January 2100. -
Change
FTheme
to internally extendInheritedTheme
. -
Change
FTileGroup
to be scrollable. -
Change
FPopoverMenu
to be scrollable. -
Change
FSelectTileGroup
to be scrollable. -
Change
FSelectMenuTile
to be scrollable. -
Change
ThemeBuildContext
toFThemeBuildContext
. -
Breaking Change
Layout
toFLayout
. -
Breaking Change
FLocalizations.of(...)
to returnFLocalizations?
instead ofFLocalizations
- doFLocalizations.of(...) ?? FDefaultLocalizations()
. This change is sadly needed as Flutter now forcefully regeneratesFLocalizations
each timeflutter pub get
is called. -
Breaking Change
FTileData.index
toFTileData.last
. -
Breaking Change
FPopoverMenu.controller
toFPopoverMenu.popoverController
. -
Breaking Change
FSelectTileGroup.controller
toFSelectTileGroup.groupController
. -
Breaking Change
FPopoverController.duration
toFPopoverController.animationDuration
. -
Breaking Change
FTooltipController.duration
toFTooltipController.animationDuration
. -
Breaking Change
FTabController.ignoreDirectionalPadding
toFTabController.directionPadding
. -
Breaking Change
FPopover.ignoreDirectionalPadding
toFPopover.directionPadding
- the value should be inverted.* -
Breaking Change
FPopoverMenu.ignoreDirectionalPadding
toFPopoverMenu.directionPadding
- the value should be inverted. -
Breaking Change
FSelectMenuTile.ignoreDirectionalPadding
toFSelectMenuTile.directionPadding
- the value should be inverted.
Fixes #
- Resolved an issue where
FLabel
exhibited incorrect padding when used withAxis.horizontal
and RTL layouts.
0.7.0 #
This update adds responsive breakpoints, focused outlines & localization! It also introduces several new tile widgets.
Additions #
-
Add
FButtonSpinner
. -
Add
FBreakpoints
. -
Add
FIcon.empty()
. -
Add
FTappable
. -
Add
FTile
. -
Add
FTileGroup
. -
Add
FSelectMenuTile
. -
Add
FSelectTile
. -
Add
FSelectTileGroup
. -
Add
FCalendarDayPickerStyle.tileSize
. -
Add
FPopover.ignoreDirectionalPadding
. -
Add
FPopover.tappable(...)
. -
Add
FPopoverMenu
. -
Add
FPortal.offset
. -
Add
FLocalizations
. -
Add
FFocusedOutline
. -
Add
FDialog.adaptive(...)
. -
Breaking Add
focusedOutlineStyle
toFAccordionStyle
- this only affect users which use the primary constructor. -
Breaking Add
focusedOutlineStyle
toFBottomNavigationBar
- this only affect users which use the primary constructor. -
Breaking Add
focusedOutlineStyle
toFButtonStyle
- this only affect users which use the primary constructor. -
Breaking Add
focusedOutlineStyle
toFHeaderActionStyle
- this only affect users which use the primary constructor. -
Breaking Add
focusedOutlineStyle
toFResizableDividerStyle
- this only affect users which use the primary constructor. -
Breaking Add
focusedOutlineStyle
toFCheckboxStyle
- this only affect users which use the primary constructor. -
Breaking Add
focusedOutlineStyle
toFRadioStyle
- this only affect users which use the primary constructor. -
Breaking Add
focusedBorder
toFTileStyle
- this only affect users which use the primary constructor. -
Breaking Add
focusedDividerStyle
toFTileStyle
- this only affect users which use the primary constructor. -
Breaking Add
focusedOutlineStyle
toFTabsStyle
- this only affect users which use the primary constructor. -
Breaking Add
focusedOutlineStyle
toFSliderThumbStyle
- this only affect users which use the primary constructor.
Changes #
-
Breaking Change
FPopover()
to not automatically wrap a target in aGestureDetector
- useFPopover.tappable(...)
instead. -
Breaking Change
FSlider
to default to the current text direction instead ofLayout.ltr
. -
Change
FCalendar
to support localization.
Fixes #
-
Change FButton's animation to only start on mouse down and up.
-
Fix
FLabel
not showing error message if label and description are null. -
Fix
FSelectGroup
not properly disposing callbacks.
0.6.1 #
- Fix range slider not displaying tooltip for minimum thumb.
0.6.0 #
Additions #
-
Add
FAccordion
. -
Add
FSlider
. -
Add
FButtonStyles.ghost
. -
Add
FButtonCustomStyle.enabledHoverBoxDecoration
. -
Add
FTextField.contentInsertionConfiguration
. -
Add
FTextField.mouseCursor
. -
Add
FTextField.forceErrorText
. -
Add
FIcon
. -
Add
FColorScheme.disable(...)
. -
Add
FColorScheme.disableOpacity
. -
Add
FColorScheme.hover(...)
. -
Add
FColorScheme.enabledHoveredOpacity
. -
Add
FChangeNotifier
. -
Add
FValueNotifier
.
Changes #
-
Change button to change color when hovering over it.
-
Change
FCalendar
year picker to update the header whenever a year is selected. -
Increase
FCalendar
's default text size fromFTypography.sm
toFTypography.base
. -
Breaking Change
FBottomNavigationBarItem.label
fromString
toWidget
. -
Breaking Split
FCalendarHeaderStyle.iconColor
intoFCalendarHeaderStyle.enabledIconColor
andFCalendarHeaderStyle.disabledIconColor
. -
Breaking Change
FTextField
to useFLabel
. -
Breaking Remove
FTextFieldErrorStyle.animatioDuration
. -
Breaking Rename
FLabelStateStyle
toFLabelStateStyles
. -
Breaking Rename
FTextField.onSave
toFTextField.onSaved
. -
Breaking Remove FAlertIcon & FAlertIconStyle - use
FIcon
instead. -
Breaking Remove FButtonIcon & FAlertIconStyle - use
FIcon
instead. -
Breaking Change FButtonCustomStyle to better represent the style's layout - this will only affect users that create a custom
FButtonCustomStyle
. -
Breaking Change
FBottomNavigationBarItem.icon
fromSvgAsset
toWidget
- wrap the asset inFIcon
instead. -
Breaking Change
FHeaderAction.icon
fromSvgAsset
toWidget
- wrap the asset inFIcon
instead. -
Breaking Change
FSelectGroup.builder
parameters. -
Breaking Change
FBadgeCustomStyle.content
toFBadgeCustomStyle.contentStyle
. -
Breaking Change
FAvatarStyle.text
toFAvatarStyle.textStyle
. -
Breaking Change
FDialogStyle.horizontal
toFDialogStyle.horizontalStyle
. -
Breaking Change
FDialogStyle.selectedLabel
toFDialogStyle.selectedLabelTextStyle
. -
Breaking Change
FDialogStyle.unselectedLabel
toFDialogStyle.unselectedLabelTextStyle
. -
Breaking Change
FDividerStyle.horizontal
toFDividerStyle.horizontalStyle
. -
Breaking Change
FDividerStyle.vertical
toFDividerStyle.verticalStyle
. -
Breaking Change
FDialogStyle.indicator
toFDialogStyle.indicatorDecoration
. -
Breaking Change
FHeader.leftActions
toFHeader.prefixActions
. -
Breaking Change
FHeader.rightActions
toFHeader.suffixActions
. -
Breaking Change
FLabelStyle.horizontal
toFLabelStyle.horizontalStyle
. -
Breaking Change
FLabelStyle.vertical
toFLabelStyle.verticalStyle
. -
Breaking Change
FButtonStyles.outline
's background to transparent.
Fixes #
-
Fix
FBottomNavigationBar
items hit region being smaller than intended. -
Fix
FCalendar
showing focused outline when pressing and long pressing a date. -
Fix
FCalendar
year and month picker applying incorrect initial top padding. -
Fix
FCalendar
year and month picker incorrectly calculating start and end dates. -
Fix
FTextfield
being vertically larger than intended. -
Fix
FTextfield
description text's odd transition animation whenever an error occurs. -
Fix
FSwitch
not using correct label style. -
Fix
FCheckbox
,FRadio
,FSelectGroup
,FSwitch
andFTextField
styles causing the widget inspector to crash. -
Fix
FSelectGroup
not applying correct style if a custom widget-specific style is given.
0.5.1 #
#
- Fix
FTabs
not showing correct tab entry when switching tabs. Issue #203.
0.5.0 #
The minimum Flutter version has been increased from 3.19.0
to 3.24.0
.
Additions #
-
Add
FButton.icon(...)
. -
Add
FBottomNavigationBarData
. -
Add
FButtonData
. -
Add
FCalendarHeaderStyle.buttonStyle
. -
Add
FFormFieldStyle
. -
Add
FHeaderData
. -
Add
FResizable.semanticFormatterCallback
. -
Add
FLabel
. -
Add label and description to
FCheckbox
. -
Add label and description to
FSwitch
. -
Add
FPortal
. -
Add
FPopover
. -
Add
FTooltip
. -
Add
FSelectGroup
. -
Add
FRadio
.
Changes #
-
Breaking: Change
FAlertIconStyle.height
toFAlertIconStyle.size
. -
Breaking: Rename
FBottomNavigationBar.items
toFBottomNavigationBar.children
. -
Breaking: Remove
FBottomNavigationBar.raw(...)
- use the default constructor instead. -
Breaking: Rename
FButtonIconStyle.height
toFButtonIconStyle.size
. -
Breaking: Change
FDivider.vertical
toFDivider.axis
. -
Change
FResizable
to resize byFResizable.resizePercentage
when using a keyboard. -
Breaking: Change
FResiableDividerStyle.thickness
toFResizableDividerStyle.width
. -
Change
FTextFieldStyle
to inherit fromFFormFieldStyle
. -
Change
FTextField
to display error under description instead of replacing it. -
Breaking: Change
FTextField.help
toFTextField.description
. -
Breaking: Change how
FTextFieldStyle
stores various state-dependent styles. -
Breaking: Remove
FTextField.error
- useFTextField.forceErrorText
instead. -
Change
FTabController
to implementChangeNotifier
instead ofListenable
. -
Breaking: Flattened
FStyle.formFieldStyle
- useFStyle.enabledFormFieldStyle
,FStyle.disabledFormFieldStyle
, andFStyle.errorFormFieldStyle
. -
Improve platform detection for web when initializing platform-specific variables.
-
Breaking:
FCheckbox
andFSwitch
no longer wrapsFormField
- consider wrapping them in aFormField
if required. -
Breaking: Require
FTheme
to be wrapped in aCupertinoApp
,MaterialApp
orWidgetsApp
.
Fixes #
-
Fix
FResizable
not rendering properly in an expanded widget when its crossAxisExtent is null. -
Fix
FTextField
not changing error text color when an error occurs. -
Fix
FTextField
error message replacing the description text. -
Fix
FCheckboxStyle.inherit(...)
icon color inheriting from the wrong color. -
Fix
FTabs
not handling indexes properly.
0.4.0 #
Additions #
-
Add
FAvatar
. -
Breaking: Add
FCalendarEntryStyle.focusedBorderColor
. This only affects users that customizedFCalendarEntryStyle
. -
Add
FResizable
. -
Add
image
parameter toFCard
.
Changes #
-
Change number of years displayed per page in
FCalendar
from 12 to 15. -
Breaking: Move
FCalendar.enabled
toFCalendarController.selectable(...)
. -
Breaking: Rename
FCalendarController.contains(...)
toFCalendarController.selected(...)
. -
Breaking: Rename
FCalendarController.onPress(...)
toFCalendarController.select(...)
. -
Breaking: Rename
FCalendarEntryStyle.focusedBackgroundColor
toFCalendarEntryStyle.hoveredBackgroundColor
. This only affects users that customizedFCalendarEntryStyle
. -
Breaking: Rename
FCalendarEntryStyle.focusedTextStyle
toFCalendarEntryStyle.hoveredTextStyle
. This only affects users that customizedFCalendarEntryStyle
. -
Breaking: Move
FCalendarSingleValueController
toFCalendarController.date(...)
. -
Breaking: Move
FCalendarMultiValueController
toFCalendarController.dates(...)
. -
Breaking: Rename
FCalendarSingleRangeController
toFCalendarRangeController.range(...)
. -
Breaking: Rename
FSeparator
toFDivider
. -
Breaking: Remove
colorScheme
,typography
andstyle
parameters fromFThemeData.copyWith(...)
. The problem was widget-specific styles not being re-created after the removed parameters were updated. This led to unintuitive behavior where the style of a widget was not updated when theFThemeData
was updated. This should only affect people that customizeFThemeData
. Use theFThemeData.inherit(...)
constructor instead.
Fixes #
-
Fix
FCalendar
dates &FButton
s not being toggleable usingEnter
key. -
Fix
FCalendar
dates sometimes not being navigable using arrow keys.
0.3.0 #
0.2.0 #
Additions #
-
Add
FCheckbox
. -
Add
FHeader.nested
. -
Add
FProgress
.
Enhancements #
-
Breaking Move
FHeaderStyle
toFHeaderStyles.rootStyle
. -
Breaking Move
FHeaderActionStyle.padding
toFRootHeaderStyle.actionSpacing
. -
Breaking Suffix style parameters with
Style
, i.e.FRootHeaderStyle.action
has been renamed toFRootHeaderStyle.actionStyle
. -
Breaking Raw fields have been removed, wrap strings with the Text() widget. E.g.
FButton(label: 'Hello')
orFButton(rawLabel: 'Hello')
should be replaced withFButton(label: Text('Hello'))
. -
Change
FTextField
to be usable inForm
s. -
Change
FTextFieldStyle
's default vertical content padding from5
to15
. -
Split exports in
forui.dart
into sub-libraries.
Fixes #
-
Fix missing
key
parameter inFTextField
constructors. -
Breaking
FButton.prefixIcon
andFButton.suffixIcon
have been renamed toFButton.prefix
andFButton.suffix
. -
Fix padding inconsistencies in
FCard
andFDialog
.
0.1.0 #
- Initial release! 🚀