forui 0.13.1
forui: ^0.13.1 copied to clipboard
Beautifully designed, minimalistic widgets for desktop & touch devices.
0.13.1 #
- Fix
FSelectTilemixing inFItemMixininstead ofFTileMixin. - Fix
SelectMenuTilemixing inFItemMixininstead ofFTileMixin.
0.13.0 #
This update focuses on polishing & improving the usability of existing widgets.
Animations #
We've updated the animations in Forui to feel more nature and be origin aware. This should make the animations feel more polished.
Blur & glassmorphic support #
We've updated most overlay widgets to support background blur & glassmorphic styles. This is disabled by default. It can
be enabled by setting a barrierFilter & backgroundFilter in the widget's style.
Styles #
We've updated styles to be easier to configure and use without the CLI. All widgets now accept a style builder function rather than a style object. Similarly, all nested styles inside styles have been replaced with style builder functions. This makes it easier to customize styles based on the existing styles.
Previously:
FFCheckbox(
style: context.theme.checkBoxStyle.copyWith(
tappableStyle: context.theme.checkBoxStyle.copyWith(...),
),
);
Now:
FFCheckbox(
style: (style) => style.copyWith(
tappableStyle: (style) => style.copyWith(...),
),
);
In most cases, this is not a breaking change. Styles have been updated to implement the call function. This means
that you can still pass in a style object as before.
// Long-form
FFCheckbox(
style: (style) => FCheckBoxStyle(...),
);
// Short-form
FFCheckbox(
style: FCheckBoxStyle(...),
);
FThemeData #
- Add
FColors.systemOverlayStyle.
FAccordion #
-
Add
FAccordionItemStyle.expandDuration. -
Add
FAccordionItemStyle.expandCurve. -
Add
FAccordionItemStyle.collapseDuration. -
Add
FAccordionItemStyle.collapseCurve. -
Refine
FAccordion's collapsible animation. -
Breaking Change
FAccordionStyle.iconStyle's default icon color fromprimarytomutedForeground. -
Breaking Remove
FAccordionItemStyle.animationDuration- useFAccordionItemStyle.expandDurationinstead.
FAlert #
- Breaking Change
FAlertStyle.primary's signature - passFAlertStyle.primary()instead ofFAlert.primarytoFAlert. - Breaking Change
FAlertStyle.destructive's signature - passFAlertStyle.destructive()instead ofFAlert.destructivetoFAlert.
FBadge #
- Breaking Change
FBadgeStyle.primary's signature - passFBadgeStyle.primary()instead ofFBadgeStyle.primarytoFBadgeStyle. - Breaking Change
FBadgeStyle.secondary's signature - passFBadgeStyle.secondary()instead ofFBadgeStyle.secondarytoFBadgeStyle. - Breaking Change
FBadgeStyle.destructive's signature - passFBadgeStyle.destructive()instead ofFBadgeStyle.destructivetoFBadgeStyle. - Breaking Change
FBadgeStyle.outline's signature - passFBadgeStyle.outline()instead ofFBadgeStyle.outlinetoFBadgeStyle.
FBottomNavigationBar #
- Add
FBottomNavigationBarStyle.backgroundFilter.
FBreadcrumb #
We've added support for an alternative popover menu which uses FItem and more closely resembles Shadcn/ui's popover
menu suited for desktop.
-
Add
FBreadcrumbItem.collapsedTiles(...). -
Breaking Change
FBreadcrumbItem.collapsedto useFIteminstead ofFTile- useFBreadcrumb.collapsedTiles(...)instead.
FButton #
-
Add
FButton.actions. -
Add
FButton.shortcuts. -
Add
mainAxisAlignmenttoFButton(...). -
Add
crossAxisAlignmenttoFButton(...). -
Add
textBaselinetoFButton(...). -
Add
FButtonContentStyle.spacing. -
Breaking Change
instrinicWidthinFButton(...)tomainAxisSize. -
Breaking Change
FButtonStyle.primary's signature - passFButtonStyle.primary()instead ofFButtonStyle.primarytoFButtonStyle. -
Breaking Change
FButtonStyle.secondary's signature - passFButtonStyle.secondary()instead ofFButtonStyle.secondarytoFButtonStyle. -
Breaking Change
FButtonStyle.destructive's signature - passFButtonStyle.destructive()instead ofFButtonStyle.destructivetoFButtonStyle. -
Breaking Change
FButtonStyle.outline's signature - passFButtonStyle.outline()instead ofFButtonStyle.outlinetoFButtonStyle. -
Breaking Change
FButtonStyle.ghost's signature - passFButtonStyle.ghost()instead ofFButtonStyle.ghosttoFButtonStyle.
FDialog #
- Add
showFDialog. - Add
FDialog.animation. - Add
FDialogRoute. - Add
FDialogStyle.barrierFilter. - Add
FDialogStyle.backgroundFilter. - Add
FDialogStyle.entranceExitDuration. - Add
FDialogStyle.entranceCurve. - Add
FDialogStyle.exitCurve. - Add
FDialogStyle.fadeTween. - Add
FDialogStyle.scaleTween.
FHeader #
- Add
FHeaderStyle.backgroundFilter. - Add
FHeaderStyle.decoration.
FItem (new) #
An FItem is typically used to group related information together. It is a more generic version of FTile that is used
to build more complex widgets.
- Add
FItem. - Add
FItemData. - Add
FItemDivider. - Add
FItemGroup. - Add
FItemStyle. - Add
FItemContentStyle.
FPopover #
-
Add
FPopover.barrierSemanticsLabel. -
Add
FPopover.barrierSemanticsDismissible. -
Add
FPopover.builder. -
Add
FPopoverStyle.barrierFilter. -
Add
FPopoverStyle.backgroundFilter. -
Change
FPopover's animation to be origin aware. -
Change
FPopover(...)'scontrollerto be optional. -
Breaking Change
FPopover.hideOnTapOutsidedefault value fromFHidePopoverRegion.anywheretoFHidePopoverRegion.excludeTarget. -
Breaking Change
FPopover.popoverBuilder's signature fromValueWidgetBuilder<FPopoverStyle>toWidget Function(BuildContext, FPopoverController). -
Breaking Remove
FPopover.automatic- This was a bad abstraction in hindsight, useFPopover.newinstead.
FPopoverMenu #
We've added support for an alternative popover menu which uses FItem and more closely resembles Shadcn/ui's popover
menu suited for desktop.
-
Add
FPopoverMenu.tiles(...) -
Add
FPopoverMenu.barrierSemanticsLabel. -
Add
FPopoverMenu.barrierSemanticsDismissible. -
Add
FPopoverMenu.builder. -
Add
FPopoverMenu.menuBuilder. -
Change
FPopoverMenu's animation to be origin aware. -
Change
FPopoverMenu(...)'scontrollerto be optional. -
Breaking Remove
FPopoverMenu.automatic- This was a bad abstraction in hindsight, useFPopoverMenu.newinstead. -
Breaking Change
FPopoverMenu(...)to useFItems instead ofFTiles - useFPopoverMenu.tiles(...)instead.
FPortal #
-
Add
FPortal.barrier. -
Add
FPortal.builder(...). -
Change
FPortal.controllerto be optional. -
Breaking Change
FPortal.portalBuilder's signature fromWidgetBuildertoWidget Function(BuildContext, FPortalController).
FSelect #
We've updated FSelect to support dividers & FSelectItem to support prefixes & subtitles.
-
Add
FSelect.divider. -
Add
FSelectSection.divider. -
Add
FSelectItem.prefix. -
Add
FSelectItem.subtitle. -
Add
FSelectItemStyle.prefixIconStyle. -
Add
FSelectItemStyle.prefixIconSpacing. -
Add
FSelectItemStyle.titleSpacing -
Add
FSelectItemStyle.subtitleStyle. -
Breaking Rename
FSelectItem.childtoFSelectItem.title. -
Breaking Rename
FSelectItemStyle.textStyletoFSelectItem.titleTextStyle. -
Breaking Rename
FSelectItemStyle.iconStyletoFSelectItem.suffixIconStyle. -
Fix
FSelect.search(...)always focusing on 1st item even when there is a selected item. -
Fix
FSelect.search(...)expanding items unnecessarily.
FSelectMenuTile #
-
Add
FSelectMenuTile.actions. -
Add
FSelectMenuTile.barrierSemanticsLabel. -
Add
FSelectMenuTile.barrierSemanticsDismissible. -
Add
FSelectMenuTile.detailsBuilder. -
Add
FSelectMenuTile.shortcuts. -
Change
FSelectMenuTile.selectControllerto be optional.
FSheet #
- Change
FSSheet's transition animation. - Breaking Change
FSheetStyle.barrierColortoFSheetStyle.barrierFilter. - Breaking Remove
FSheetStyle.backgroundColor.
FSidebar #
-
Add
FSidebarStyle.backgroundFilter. -
Add
FSidebarStyle.decoration. -
Add
FSidebarItemStyle.expandDuration. -
Add
FSidebarItemStyle.expandCurve. -
Add
FSidebarItemStyle.collapseDuration. -
Add
FSidebarItemStyle.collapseCurve. -
Refine
FSidebar's collapsible animation. -
Breaking Change
FSidebarto not bounce. -
Breaking Change
FSidebar.childto be non-nullable. -
Breaking Change
FSidebarStyle.widthtoFSidebarStyle.constraints. -
Breaking Remove
FSidebarStyle.bordeColor- useFSidebarStyle.decorationinstead. -
Breaking Remove
FSidebarStyle.bordeWidth- useFSidebarStyle.decorationinstead. -
Breaking Remove
FSidebarItemStyle.collapsibleAnimationDuration- useFSidebarItemStyle.expandDurationinstead. -
Fix
FSidebarItem's style not updating when passed in style changes.
FTappable #
-
Add
FTappable.actions. -
Add
FTappable.shortcuts. -
Add
FTappableStyle.bounceDuration. -
Add
FTappableStyle.bounceDownCurve. -
Add
FTappableStyle.bounceUpCurve. -
Breaking Rename
FTappableStyle.animationTweentoFTappableStyle.bounceTween. -
Breaking Remove
FTappableAnimations- useFTappableStyle.defaultBounceTweenandFTappableStyle.noBounceTweeninstead.
FTile #
We have refactored FTile's implementation to be simpler & its styling to be easier to understand & use. It now uses
FItem internally.
-
Add
FTile.actions. -
Add
FTile.shortcuts. -
Add
FTile.raw(...). -
Add
FTileGroupStyle.border. -
Add
FTileGroupStyle.divierColor. -
Add
FTileGroupStyle.dividerWidth. -
Breaking Change
FTileGroupto render the border even if it contains no groups/tiles - while this isn't desirable this allows us to draw the border in a single pass rather than having each tile draw its part of the border and stitching the results. -
Breaking Change
FTileto default toFThemeData.tileStyleinstead ofFThemeData.tileGroupStyle.tileStylewhenFTileis not inside aFTileGroup. -
Breaking Remove
FTileGroupStyle.borderColor- useFTileGroupStyle.borderinstead. -
Breaking Remove
FTileGroupStyle.borderWidth- useFTileGroupStyle.borderinstead. -
Breaking Change
prefixIcontoprefixin FTile(...)`. -
Breaking Change
suffixIcontosuffixin FTile(...)`. -
Breaking Change
FTileto ignoreWidgetStates when neitheronPressnororLongPressis given. -
Change
FTile's focused outline to be a rounded rectangle even if the tile is inside aFTileGroup. -
Change
FTileto no longer wrap its content inside aFTileDataif it is not part of aFTileGroup. -
Breaking Remove
FTileDivider- useFItemDividerinstead. -
Breaking Remove
FTileData- useFItemDatainstead. -
Breaking Remove
FTileGroupData- useFItemDatas instead. -
Breaking Change
FTileStyleto extendFItemStyle. -
Breaking Remove
FTileStateStyle. -
Breaking Remove
FTileStateStyle.backgroundColor- useFTileStyle.decorationinstead. -
Breaking Remove
FTileStateStyle.borderColor- useFTileStyle.decorationinstead. -
Breaking Remove
FTileStateStyle.borderRadius- useFTileStyle.decorationinstead. -
Fix
FTileGroup.merge(...)ignoringphysicsproperty. -
Fix
FTile's focused outline being drawn even when explicitly disabled.
FToast #
We've made toasts dismissable by swiping.
-
Add
swipeToDismisstoshowFToast(...). -
Add
swipeToDismisstoshowRawFToast(...). -
Add
FToastStyle.backgroundFilter. -
Add
FToasterStyle.swipeCompletionDuration. -
Add
FToasterStyle.swipeCompletionCurve. -
Fix
FToasterauto-dismissing when hovering over non-first toast when expanded. -
Fix
FToasterexpanded state persisting after all toasts has been dismissed on touch devices. -
Fix
showFToast&showRawFToastnot using custom style passed toFToaster.
FTooltip #
-
Add
FTooltip.builder. -
Add
FTooltipStyle.backgroundFilter. -
Breaking Replace
FTooltipStyle.marginwithFTooltip.spacing. -
Breaking Change
FTooltip.tipBuilder's signature fromValueWidgetBuilder<FTooltipStyle>toWidget Function(BuildContext, FTooltipController). -
Change
FTooltip's animation to be origin aware.
FScaffold #
- Add
FScaffold.toasterSwipeToDismiss. - Add
FScaffold.systemOverlayStyle.
FSelectMenuTile #
- Breaking Change
FSelectMenuTile.prefixIcontoFSelectMenuTile.suffix. - Breaking Change
FSelectMenuTile.suffixIcontoFSelectMenuTile.suffix.
FSelectTile #
- Breaking Change
prefixIcontoprefixin FSelectTile.suffix(...)`. - Breaking Change
suffixIcontosuffixin FSelectTile(...)`.
Others #
-
Add
FAnimatedModalBarrier. -
Add
FModalBarrier. -
Add
FPaginationStyle.focusedOutlineStyle. -
Add
FLocalizations.popoverSemanticsLabel. -
Add
FSelectTile.actions. -
Add
FSelectTile.shortcuts. -
Breaking Remove
defaultFontFamilyfromFTypography.copyWith(...). -
Breaking Change
FSelectTileGroup.dividerfromFTileDividertoFItemDivider. -
Breaking Change
FSelectMenuTile.autoHidedefault value fromfalsetotrue. -
Breaking Change
FSelectMenuTile.dividerfromFTileDividertoFItemDivider. -
Breaking Remove
FTransformable. -
Fix
FTappablepersisting pressed effect even after pointer is moved outside the widget. -
Fix
FTextFormFieldnot passing correct value to validator when no controller is provided.
0.12.0 #
Bumps minimum Flutter SDK version to 3.32.0.
CLI #
-
Add
icon-mappingsnippet. -
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
FDateFieldnot closing calendar popover when enter is pressed.
FScaffold #
- Add
FScaffold.sidebar. - add
FScaffold.toasterSwipeToDismiss. - Add
FScaffoldStyle.sidebarBackgroundColor.
FSelect #
-
Add
FSelect.searchFromMap(...). -
Add
FSelectItem.raw(...). -
Add
FSelectSection.fromMap(...). -
Breaking Change
formatinFSelect.new(...)to be required. -
Breaking Change
formatinFSelect.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
toggleableparameter toFCalendarController.date(...). -
Add
toggleableparameter toFLineCalendar(...). -
Add
FPopover.shortcuts. -
Add
FTabs.onPress. -
Breaking Change
FLineCalendarto be un-toggleable by default. -
Breaking Change
FThemeData.headerStyletoFThemeData.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.pressablenot 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 WidgetStates, becoming more customizable and
concise.
- Breaking Rename
FThemeData.colorSchemetoFThemeData.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 semanticLabels
have been renamed to semanticsLabel for consistency.
- Breaking Rename
semanticLabeltosemanticsLabelinFAvatar.new. - Breaking Rename
semanticLabeltosemanticsLabelinFBreadcrumb.collapsed. - Breaking Rename
FCheckbox.semanticLabeltoFCheckbox.semanticsLabel. - Breaking Rename
FDialog.semanticLabeltoFDialog.semanticsLabel. - Breaking Rename
FHeaderAction.semanticLabeltoFHeaderAction.semanticsLabel. - Breaking Rename
FPopover.semanticLabeltoFPopover.semanticsLabel. - Breaking Rename
FPopoverMenu.semanticLabeltoFPopoverMenu.semanticsLabel. - Breaking Rename
FRadio.semanticLabeltoFRadio.semanticsLabel. - Breaking Rename
FSelectGroupItem.semanticLabeltoFSelectGroupItem.semanticsLabel. - Breaking Rename
FSelectMenuTile.semanticLabeltoFSelectMenuTile.semanticsLabel. - Breaking Rename
FSelectTile.semanticLabeltoFSelectTile.semanticsLabel. - Breaking Rename
FSelectTileGroup.semanticLabeltoFSelectTileGroup.semanticsLabel. - Breaking Rename
FSwitch.semanticLabeltoFSwitch.semanticsLabel. - Breaking Rename
FTappable.semanticLabeltoFTappable.semanticsLabel. - Breaking Rename
FTile.semanticLabeltoFTile.semanticsLabel. - Breaking Rename
FTileGroup.semanticLabeltoFTileGroup.semanticsLabel.
FAccordion #
-
Add
FAccordionItemMixin. -
Breaking Change
FAccordion.itemstoFAccordion.children. -
Change
FAccordion.childrenfromList<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.tappableStyletoFBottomNavigationBarItemStyle.tappableStyle. -
Breaking Move
FBottomNavigationBarStyle.focusedOutlineStyletoFBottomNavigationBarItemStyle.focusedOutlineStyle.
FButton #
-
Add
FButton.onChange. -
Add
FButton.onHoverChange. -
Add
FButton.selected. -
Add
intrinsicWidthtoFButton(...). -
Breaking Change
FButton(label: ...)toFBadge(child: ...).
FBreadcrumb #
-
Add
traversalEdgeBehaviortoFBreadcrumbItem.collapsed. -
Add
autofocustoFBreadcrumbItem(...). -
Add
focusNodetoFBreadcrumbItem(...). -
Add
onFocusChangetoFBreadcrumbItem(...). -
Add
onHoverChangetoFBreadcrumbItem(...). -
Add
onStateChangetoFBreadcrumbItem(...). -
Add
spacingtoFBreadcrumbItem.collapsed(...). -
Add
offsettoFBreadcrumbItem.collapsed(...). -
Add
onHoverChangetoFBreadcrumbItem.collapsed(...). -
Add
onStateChangetoFBreadcrumbItem.collapsed(...). -
Add
FBreadcrumbStyle.focusedOutlineStyle. -
Breaking Change
focusNodefromFocusNodetoFocusScopeNodeinFBreadcrumbItem.collapsed. -
Breaking Remove
directionPaddingfromFBreadcrumbItem.collapsed(...).
FDateField #
-
Add
FDateField.builder. -
Add
FDateField.initialDate. -
Add
FDateField.onChange. -
Add
spacingtoFDateField.calendar(...). -
Add
offsettoFDateField.calendar(...). -
Add
spacingtoFDateField(...). -
Add
offsettoFDateField(...). -
Breaking Remove
directionalPaddingfromFDateField.calendar(...). -
Breaking Remove
directionalPaddingfromFDateField(...).
FDialog #
-
Breaking Change
FDialogto not automatically wrap actions inInstrinicWidth. -
Breaking Change
FDialogto not automatically wrap body inIntrinsicWidth. -
Breaking Move
FDialog.insetAnimationDurationtoFDialogStyle.insetAnimationDuration. -
Breaking Move
FDialog.insetAnimationCurvetoFDialogStyle.insetAnimationCurve. -
Breaking Combine
FDialogStyle.minWidthandFDialogStyle.maxWidthintoFDialog.constraints.. -
Breaking Combine
FDialogStyle.minWidthandFDialogStyle.maxWidthtoFDialog.constraints.. -
- Fix
FDialognot handling infinitely sized body correctly.
- Fix
FHeader #
-
Add
FHeaderAction.onHoverChange. -
Add
FHeaderAction.onStateChange. -
Add
FHeaderAction.selected. -
Add
titleAlignmenttoFHeader.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
FHeaderspacing 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'sIconThemeDatainstead. - Breaking Replace
FAssetswithFIcons. - Breaking Replace
FAccordionStyleiconColorandiconSizewithiconStyle. - Breaking Replace
FBottomNavigationBarItemStyleactiveIconColor,inactiveIconColorandiconSizewithselectedIconStyleandunselectedIconStyle. - Breaking Replace
FBottomNavigationBarItemStyleactiveTextStyleandinactiveTextStylewithselectedTextStyleandunselectedTextStyle. - Breaking Replace
FButtonIconContentStyleenabledColor,disabledColorandiconSizewithenabledStyleanddisabledStyle. - Breaking Replace
FButtonContentStyleenabledIconColor,disabledIconColorandiconSizewithenabledIconStyleanddisabledIconStyle. - Breaking Replace
FButtonIconContentStyleenabledColor,disabledColorandiconSizewithenabledStyleanddisabledStyle. - Breaking Remove
FCalendarHeaderStyleenabledIconColoranddisabledIconColor- configurebuttonStyle.iconContentStyleinstead. - Breaking Change
FDateFieldStyle.iconStylefromFIconStyletoIconThemeData. - Breaking Replace
FHeaderActionStyleenabledColor,disabledColorandsizewithenabledStyleanddisabledStyle. - Breaking Change
FPaginationStyle.iconStylefromFIconStyletoIconThemeData. - Breaking Change
FTileContentStateStyle.prefixIconStylefromFIconStyletoIconThemeData. - Breaking Change
FTileContentStateStyle.suffixIconStylefromFIconStyletoIconThemeData. - Breaking Change
FTimeFieldStyle.iconStylefromFIconStyletoIconThemeData. - Breaking Replace
FAlertCustomStyleiconColorandiconSizewithiconStyle. - Breaking Change
FBreadcrumbStyle.iconStylefromFIconStyletoIconThemeData. - Breaking Replace
FCheckboxStateStyleiconColorwithiconStyle.
FLineCalendar #
- Add
FLineCalendar.onChange. - Add
FLineCalendar.initialSelection. - Add
FLineCalendar.physics. - Add
FLineCalendar.keyboardDismissBehavior. - Change
FLineCalendar.controllerto be optional. - Breaking Rename
FLineCalendar.initialDateAlignmenttoFLineCalendar.initialScrollAlignment. - Breaking Rename
FLineCalendar.initialtoFLineCalendar.initialScroll.
FPagination #
-
Add
FPagination.initialPage. -
Add
FPagination.pages. -
Change
FPagination.controllerto be optional. -
Change
FPagination.onChangefromVoidCallback?toValueChanged<int>? -
Breaking Change
FPaginationControllerto requirepagesparameter.
FPopover & FPopoverMenu. #
The traversal-edge behavior of FPopover and Forui widgets that depend on it have been fixed.
-
Add
FPopover.traversalEdgeBehavior. -
Add
traversalEdgeBehaviortoFPopoverMenu. -
Add
FPopover.constraints. -
Add
FPopover.spacing. -
Add
FPopover.offset. -
Add
FPopover.groupId. -
Add
FPopoverMenu.spacing. -
Add
FPopoverMenu.offset. -
Add
FPopoverMenu.groupId. -
Breaking Change
FPopover.focusNodefromFocusNodetoFocusScopeNode. -
Breaking Change
FPopoverMenu.focusNodefromFocusNodetoFocusScopeNode. -
Breaking Remove
FPopover.directionPadding. -
Breaking Remove
FPopoverMenu.directionPadding. -
Fix
FPopoverunconditionally 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
FPortalnot positioning portals correctly when wrapped in aRepaintBoundary/Padding. - Fix
FPortalnot updating portals when child's offset/size changes. - Fix
FPortaldisplaying 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
FProgressStyletoFLinearProgressStyle. - 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
FSelectTileGroupControllertypedef. -
Add
FSelectMenuTileControllertypedef. -
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
FSelectGroupItemwithFCheckbox.grouped(...)andFRadio.grouped(...). -
Breaking Replace
FSelectGroupControllerwith a typedef ofFMultiValueNotifier. -
Breaking Remove
FMultiSelectGroupController- useFSelectGroupController(...)instead. -
Breaking Remove
FRadioSelectGroupController- useFSelectGroupController.radio(...)instead. -
Breaking Rename
FSelectTileGroup.groupControllertoFSelectTileGroup.selectController. -
Breaking Rename
FSelectMenuTile.groupControllertoFSelectMenuTile.selectController. -
Breaking Rename
FSelectMenuTile.menuTileBuildertoFSelectMenuTile.menuBuilder. -
Fix
FSelectGroupnot setting itsFormField's initial value.
FSelectMenuTile #
-
Add
FSelectMenuTile.traversalEdgeBehavior. -
Add
FSelectMenuTile.spacing. -
Add
FSelectMenuTile.offset. -
Breaking Change
focusNodefromFocusNodetoFocusScopeNodeinFSelectMenuTile. -
Breaking Remove
FSelectMenuTile.directionalPadding.
FSelectTile & FSelectTileGroup #
-
Add
FSelectTile.onHoverChange. -
Add
FSelectTile.onStatesChange. -
Fix
FSelectTileGroupnot setting itsFormField's initial value.
FSlider #
-
Add
FSlider.initialSelection. -
Add
FSlider.onChange. -
Change
FSlider.controllerto be optional. -
Fix
FSlidernot setting itsFormField's initial value.
FTabs #
-
Add
FTabs.physics. -
Breaking Change
FTabs(tabs: ...)toFTabs(children: ...). -
Breaking Rename
FTabs.onPresstoFTabs.onChangeto 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.semanticsSelectedwithFTappable.selected. -
Breaking Rename
FTappabletoFTappable.static. -
Breaking Rename
FTappable.animatedtoFTappable. -
Breaking Split
FTappableData.hoveredintoFTappableData.hoveredandFTappableData.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.filledandFTextField.fillColor. Thanks @MrHeer! -
Add
FTextFormField. -
Breaking Change
FTextFieldto not support form-related operations. UseFTextFormFieldinstead. -
Fix
FTextFieldnot 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
spacingtoFTimeField.picker(...). -
Add
offsettoFTimeField.picker(...). -
Breaking Remove
directionalPaddingfromFTimeField.picker(...).
Others #
-
Breaking Rename
FAlertStyletoFBaseAlertStyle. -
Breaking Rename
FAlertCustomStyletoFAlertStyle. -
Breaking Move constants in
FBaseAlertStyletoFAlertStyle. -
Breaking Change
FBadge(label: ...)toFBadge(child: ...). -
Add
FCardContentStyle.imageSpacing. -
Add
FCardContentStyle.subtitleSpacing. -
Add
FLerpBorderRadius. -
Add
FPicker.onChange. -
Add
FResizable.onChange. -
Fix
FResizablenot 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
AlignmenttoAlignmentGeometry. - Change most occurrences of
BorderRadiustoBorderRadiusGeometry. - Change most occurrences of
EdgeInsetstoEdgeInsetsGeometry. - Breaking Rename
FDatePickertoFDateField. - Breaking Rename
FDatePickerControllertoFDateFieldController. - Breaking Rename
FDatePickerController.calendartoFDateFieldController.popover. - Breaking Rename
FDatePickerCalendarPropertiestoFDateFieldCalendarProperties. - Breaking Rename
FLocalizations.datePickerHinttoFLocalizations.dateFieldHint. - Breaking Rename
FLocalizations.datePickerInvalidDateErrortoFLocalizations.dateFieldInvalidDateError. - Breaking Change
FThemeData(...)to automatically configure styles not passed in. - Breaking Remove
FThemeData.inherit. UseFThemeData(...)instead. - Breaking Remove FTextField.scribbleEnabled. Use
stylusHandwritingEnabledinstead. - Breaking Change
FDialogContentStyle.actionPaddingtoFDialogContentStyle.actionSpacing. - Breaking Change default
FPickerStyle.textStylesize fromlgtobase. - Breaking Change
FTimePickerto useFTimePickerStyleinstead ofFPickerStyle. - Breaking Rename
FLocalizations.sheetLabeltoFLocalizations.sheetSemanticsLabel. - Breaking Rename
FBadgeStyletoFBaseBadgeStyle. - Breaking Rename
FBadgeCustomStyletoFBadgeStyle. - Breaking Move constants in
FBaseBadgeStyletoFBadgeStyle. - Breaking Rename
FButtonStyletoFBaseButtonStyle. - Breaking Rename
FButtonCustomStyletoFButtonStyle. - Breaking Move constants in
FBaseButtonStyletoFButtonStyle.
Fixes #
- Fix
FDateField.inputto show default icon. - Fix
FTabnot updating when using controller to switch tabs. - Fix
FPickerincorrectly detecting number of wheels when controller is not given and placeholder is used. - Fix
FDateFieldnot handlingbg,en,sr,sr_Latnandzulocales properly. - Fix
FDateFieldnot updating when locale changes. - Fix
FHeadernot 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
animationTweentoFTappable.animated(...). - Add
FValueNotifier.addValueListener(...). - Add
FValueNotifier.removeValueListener(...).
Changes #
- Breaking Change
FPopover.hideOnTapOutside's type frombooltoFHidePopoverRegion. The default behavior for hiding behavior forFPopover()has changed from excluding the target to not. - Breaking Change
FPopoverStyle.shadowtoFStyle.shadow. - Breaking Change
FPopoverMenu.tappable(...)toFPopoverMenu.automatic(...). - Breaking Change
FPopover.controller(...)toFPopover.popoverController(...). - Breaking Change
FPopover.tappable(...)toFPopover.automatic(...). - Breaking Change
FPopover.followerAnchortoFPopover.popoverAnchor. - Breaking Change
FPopover.targetAnchortoFPopover.childAnchor. - Breaking Change
FPortal.followerAnchortoFPortal.portalAnchor. - Breaking Change
FPortal.targetAnchortoFPortal.childAnchor. - Breaking Change
FPortal.followerBuildertoFPortal.portalBuilder. - Breaking Change
FPortalFollowerShifttoFPortalShift. - Breaking Remove
onChangeparameter fromFSelectTile. This was accidentally include from early prototyping. - Breaking Change
FSelectGroupController.select(...)toFSelectGroupController.update(...) - Breaking Change
FSelectGroupControllerto be aValueNotifier. - Breaking Change
FTileGroup.prefixfromWidgettoValueWidgetBuilder<FTextFieldStateStyle>. - Breaking Change
FTileGroup.suffixfromWidgettoValueWidgetBuilder<FTextFieldStateStyle>. - Breaking Change
FTileGroup.controllertoFTileGroup.scrollController.
Fixes #
- Fix
FCalendarrebuilding whenever the giveninitialTypeand/orinitialMonthchanges. - 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
FPopovernot handling focus changes in popover properly. - Fix
FTabs's scrollable alignment not being correct. - Fix
FTappableremaining in a hovered or touched state when itsonPress/onLongPresscallbacks were nulled after being non-null. - Fix
FTextFieldignoringenableInteractiveSelectionparameter. - Fix
FTextFieldignoringFTextFieldStyle.cursorColor.
0.8.0 #
Bump minimum Flutter version to 3.27.0.
Additions #
-
Add
showFSheet(...). -
Add
showFPersistentSheet(...). -
Add
FModalSheetRoute. -
Add
FSheets. -
Add
FSheetsinternally toFScaffold. -
Add
truncateAndStripTimezonetoFCalendarController.date(...). -
Add
truncateAndStripTimezonetoFCalendarController.dates(...). -
Add
truncateAndStripTimezonetoFCalendarController.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.startto be optional and default to 1st January 1900. -
Change
FCalendar.endto be optional and default to 1st January 2100. -
Change
FThemeto internally extendInheritedTheme. -
Change
FTileGroupto be scrollable. -
Change
FPopoverMenuto be scrollable. -
Change
FSelectTileGroupto be scrollable. -
Change
FSelectMenuTileto be scrollable. -
Change
ThemeBuildContexttoFThemeBuildContext. -
Breaking Change
LayouttoFLayout. -
Breaking Change
FLocalizations.of(...)to returnFLocalizations?instead ofFLocalizations- doFLocalizations.of(...) ?? FDefaultLocalizations(). This change is sadly needed as Flutter now forcefully regeneratesFLocalizationseach timeflutter pub getis called. -
Breaking Change
FTileData.indextoFTileData.last. -
Breaking Change
FPopoverMenu.controllertoFPopoverMenu.popoverController. -
Breaking Change
FSelectTileGroup.controllertoFSelectTileGroup.groupController. -
Breaking Change
FPopoverController.durationtoFPopoverController.animationDuration. -
Breaking Change
FTooltipController.durationtoFTooltipController.animationDuration. -
Breaking Change
FTabController.ignoreDirectionalPaddingtoFTabController.directionPadding. -
Breaking Change
FPopover.ignoreDirectionalPaddingtoFPopover.directionPadding- the value should be inverted.* -
Breaking Change
FPopoverMenu.ignoreDirectionalPaddingtoFPopoverMenu.directionPadding- the value should be inverted. -
Breaking Change
FSelectMenuTile.ignoreDirectionalPaddingtoFSelectMenuTile.directionPadding- the value should be inverted.
Fixes #
- Resolved an issue where
FLabelexhibited incorrect padding when used withAxis.horizontaland 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
focusedOutlineStyletoFAccordionStyle- this only affect users which use the primary constructor. -
Breaking Add
focusedOutlineStyletoFBottomNavigationBar- this only affect users which use the primary constructor. -
Breaking Add
focusedOutlineStyletoFButtonStyle- this only affect users which use the primary constructor. -
Breaking Add
focusedOutlineStyletoFHeaderActionStyle- this only affect users which use the primary constructor. -
Breaking Add
focusedOutlineStyletoFResizableDividerStyle- this only affect users which use the primary constructor. -
Breaking Add
focusedOutlineStyletoFCheckboxStyle- this only affect users which use the primary constructor. -
Breaking Add
focusedOutlineStyletoFRadioStyle- this only affect users which use the primary constructor. -
Breaking Add
focusedBordertoFTileStyle- this only affect users which use the primary constructor. -
Breaking Add
focusedDividerStyletoFTileStyle- this only affect users which use the primary constructor. -
Breaking Add
focusedOutlineStyletoFTabsStyle- this only affect users which use the primary constructor. -
Breaking Add
focusedOutlineStyletoFSliderThumbStyle- 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
FSliderto default to the current text direction instead ofLayout.ltr. -
Change
FCalendarto support localization.
Fixes #
-
Change FButton's animation to only start on mouse down and up.
-
Fix
FLabelnot showing error message if label and description are null. -
Fix
FSelectGroupnot 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
FCalendaryear picker to update the header whenever a year is selected. -
Increase
FCalendar's default text size fromFTypography.smtoFTypography.base. -
Breaking Change
FBottomNavigationBarItem.labelfromStringtoWidget. -
Breaking Split
FCalendarHeaderStyle.iconColorintoFCalendarHeaderStyle.enabledIconColorandFCalendarHeaderStyle.disabledIconColor. -
Breaking Change
FTextFieldto useFLabel. -
Breaking Remove
FTextFieldErrorStyle.animatioDuration. -
Breaking Rename
FLabelStateStyletoFLabelStateStyles. -
Breaking Rename
FTextField.onSavetoFTextField.onSaved. -
Breaking Remove FAlertIcon & FAlertIconStyle - use
FIconinstead. -
Breaking Remove FButtonIcon & FAlertIconStyle - use
FIconinstead. -
Breaking Change FButtonCustomStyle to better represent the style's layout - this will only affect users that create a custom
FButtonCustomStyle. -
Breaking Change
FBottomNavigationBarItem.iconfromSvgAssettoWidget- wrap the asset inFIconinstead. -
Breaking Change
FHeaderAction.iconfromSvgAssettoWidget- wrap the asset inFIconinstead. -
Breaking Change
FSelectGroup.builderparameters. -
Breaking Change
FBadgeCustomStyle.contenttoFBadgeCustomStyle.contentStyle. -
Breaking Change
FAvatarStyle.texttoFAvatarStyle.textStyle. -
Breaking Change
FDialogStyle.horizontaltoFDialogStyle.horizontalStyle. -
Breaking Change
FDialogStyle.selectedLabeltoFDialogStyle.selectedLabelTextStyle. -
Breaking Change
FDialogStyle.unselectedLabeltoFDialogStyle.unselectedLabelTextStyle. -
Breaking Change
FDividerStyle.horizontaltoFDividerStyle.horizontalStyle. -
Breaking Change
FDividerStyle.verticaltoFDividerStyle.verticalStyle. -
Breaking Change
FDialogStyle.indicatortoFDialogStyle.indicatorDecoration. -
Breaking Change
FHeader.leftActionstoFHeader.prefixActions. -
Breaking Change
FHeader.rightActionstoFHeader.suffixActions. -
Breaking Change
FLabelStyle.horizontaltoFLabelStyle.horizontalStyle. -
Breaking Change
FLabelStyle.verticaltoFLabelStyle.verticalStyle. -
Breaking Change
FButtonStyles.outline's background to transparent.
Fixes #
-
Fix
FBottomNavigationBaritems hit region being smaller than intended. -
Fix
FCalendarshowing focused outline when pressing and long pressing a date. -
Fix
FCalendaryear and month picker applying incorrect initial top padding. -
Fix
FCalendaryear and month picker incorrectly calculating start and end dates. -
Fix
FTextfieldbeing vertically larger than intended. -
Fix
FTextfielddescription text's odd transition animation whenever an error occurs. -
Fix
FSwitchnot using correct label style. -
Fix
FCheckbox,FRadio,FSelectGroup,FSwitchandFTextFieldstyles causing the widget inspector to crash. -
Fix
FSelectGroupnot applying correct style if a custom widget-specific style is given.
0.5.1 #
#
- Fix
FTabsnot 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.heighttoFAlertIconStyle.size. -
Breaking: Rename
FBottomNavigationBar.itemstoFBottomNavigationBar.children. -
Breaking: Remove
FBottomNavigationBar.raw(...)- use the default constructor instead. -
Breaking: Rename
FButtonIconStyle.heighttoFButtonIconStyle.size. -
Breaking: Change
FDivider.verticaltoFDivider.axis. -
Change
FResizableto resize byFResizable.resizePercentagewhen using a keyboard. -
Breaking: Change
FResiableDividerStyle.thicknesstoFResizableDividerStyle.width. -
Change
FTextFieldStyleto inherit fromFFormFieldStyle. -
Change
FTextFieldto display error under description instead of replacing it. -
Breaking: Change
FTextField.helptoFTextField.description. -
Breaking: Change how
FTextFieldStylestores various state-dependent styles. -
Breaking: Remove
FTextField.error- useFTextField.forceErrorTextinstead. -
Change
FTabControllerto implementChangeNotifierinstead ofListenable. -
Breaking: Flattened
FStyle.formFieldStyle- useFStyle.enabledFormFieldStyle,FStyle.disabledFormFieldStyle, andFStyle.errorFormFieldStyle. -
Improve platform detection for web when initializing platform-specific variables.
-
Breaking:
FCheckboxandFSwitchno longer wrapsFormField- consider wrapping them in aFormFieldif required. -
Breaking: Require
FThemeto be wrapped in aCupertinoApp,MaterialApporWidgetsApp.
Fixes #
-
Fix
FResizablenot rendering properly in an expanded widget when its crossAxisExtent is null. -
Fix
FTextFieldnot changing error text color when an error occurs. -
Fix
FTextFielderror message replacing the description text. -
Fix
FCheckboxStyle.inherit(...)icon color inheriting from the wrong color. -
Fix
FTabsnot handling indexes properly.
0.4.0 #
Additions #
-
Add
FAvatar. -
Breaking: Add
FCalendarEntryStyle.focusedBorderColor. This only affects users that customizedFCalendarEntryStyle. -
Add
FResizable. -
Add
imageparameter toFCard.
Changes #
-
Change number of years displayed per page in
FCalendarfrom 12 to 15. -
Breaking: Move
FCalendar.enabledtoFCalendarController.selectable(...). -
Breaking: Rename
FCalendarController.contains(...)toFCalendarController.selected(...). -
Breaking: Rename
FCalendarController.onPress(...)toFCalendarController.select(...). -
Breaking: Rename
FCalendarEntryStyle.focusedBackgroundColortoFCalendarEntryStyle.hoveredBackgroundColor. This only affects users that customizedFCalendarEntryStyle. -
Breaking: Rename
FCalendarEntryStyle.focusedTextStyletoFCalendarEntryStyle.hoveredTextStyle. This only affects users that customizedFCalendarEntryStyle. -
Breaking: Move
FCalendarSingleValueControllertoFCalendarController.date(...). -
Breaking: Move
FCalendarMultiValueControllertoFCalendarController.dates(...). -
Breaking: Rename
FCalendarSingleRangeControllertoFCalendarRangeController.range(...). -
Breaking: Rename
FSeparatortoFDivider. -
Breaking: Remove
colorScheme,typographyandstyleparameters 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 theFThemeDatawas updated. This should only affect people that customizeFThemeData. Use theFThemeData.inherit(...)constructor instead.
Fixes #
-
Fix
FCalendardates &FButtons not being toggleable usingEnterkey. -
Fix
FCalendardates sometimes not being navigable using arrow keys.
0.3.0 #
0.2.0 #
Additions #
-
Add
FCheckbox. -
Add
FHeader.nested. -
Add
FProgress.
Enhancements #
-
Breaking Move
FHeaderStyletoFHeaderStyles.rootStyle. -
Breaking Move
FHeaderActionStyle.paddingtoFRootHeaderStyle.actionSpacing. -
Breaking Suffix style parameters with
Style, i.e.FRootHeaderStyle.actionhas 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
FTextFieldto be usable inForms. -
Change
FTextFieldStyle's default vertical content padding from5to15. -
Split exports in
forui.dartinto sub-libraries.
Fixes #
-
Fix missing
keyparameter inFTextFieldconstructors. -
Breaking
FButton.prefixIconandFButton.suffixIconhave been renamed toFButton.prefixandFButton.suffix. -
Fix padding inconsistencies in
FCardandFDialog.
0.1.0 #
- Initial release! 🚀