FlexSubThemesData class

Parameters used by FlexColorScheme to configure its used FlexSubThemes.

To enable the optional component theming feature in FlexColorScheme, pass in at least a default FlexSubThemesData to its subThemesData property. This gives you the default opinionated component theming setup.

The list of properties in the flat configuration class is very large. While it can be a bit tricky to maintain it, using it is easy and a convenient way to adjust commonly used properties on UI component widgets, by using a simple flat list of property values.

No need for deep ShapeBorder definitions for a simple border radius change, nor for the complex MaterialState properties. Well, not as long as the offered config options covers what you need.

A common use case for FlexSubThemes and FlexSubThemesData is easy customization of default border radius on all Flutter SDK Widgets and elements that supports border radius, typically via ShapeBorder but also some via BorderRadiusGeometry. The global border radius used by all widgets can be adjusted by giving defaultRadius the desired radius.

The following widgets have rounded corners, but are excluded from the global border radius impact:

  • Tooltip, generally so small that larger prominent rounding is not a good fit.
  • Scrollbar, rounding on edges of scrollbars are left to platform default.
  • The AppBar and BottomAppBar shape properties are left to defaults.
  • The floating SnackBar can be themed to also include border radius, but the none floating one should remain straight. This separation cannot can be done via current flutter theming features. If you use Material 3 this may not be problem since an M3 app is not supposed to use the fixed style SnackBar, so if you only use the floating one, you can modify its border radius. The M3 guide mentions it should never be stadium shaped, so consider keeping the radius modest, e.g. 10 or lower.
  • PopupMenuButton, menus in general like DropdownMenu and MenuAnchor, can get a border radius, but not via global default. Values above 10 are not a good idea, but up to 8 still works pretty well.
  • The selected item indicators on NavigationBar and NavigationRail are not impacted by global border radius setting, but can be modified via own properties.
  • The selected item indicator on NavigationDrawer is large and is thus included in elements impacted by the global border radius setting.
  • By default the very distinct FloatingActionButton is not impacted by the global border radius, but there is flag that can be set to include it.

By design the shape border radius rounding on included and supported sub-themes that use shapes, default to the border radius defined by the Material 3 guide per widget, see Material 3 Design guide. This is done also in Material 2 mode. This can give your Material 2 app a more modern look without using the Material 3 mode in Flutter ThemeData. If you want the actual border radius used in Material 2 for a Material 2 using application, set defaultRadius to 4 dp.

Additionally, the sub-theming offers a consistent button design on all buttons, including ToggleButtons that is styled to match size of OutlinedButton concerning the outline and the selected button color to ElevatedButton color. Hover and Focus colors are also matched. It is also size matched with the other buttons, and includes a theme implementation that makes it implement VisualDensity, which it does not do out of the box in the SDK.

On most sub-themes the used default colors from the theme's colorScheme for each component's color properties can be changed with an enum based SchemeColor selection value.

If the options included in FlexColorScheme are not enough, you can always modify any FlexColorScheme produced ThemeData object with ThemeData.copyWith to add custom component sub-theme designs that FlexColorScheme does not include or support directly.

It is not in-scope to provide every option possible via Flutter SDK component sub-themes to be configurable via FlexSubThemesData. Only a sub-set of commonly used properties are available as convenient sub-theme settings via this flat and easy to use configuration class.

Feel free to suggest additional sub-theming features in the repo https://github.com/rydmike/flex_color_scheme/issues as a new feature proposal.

These are the current custom and opinionated component themes available in FlexSubThemes as static theming helpers:

FlexColorScheme uses the FlexSubThemesData class to configure the opt-in sub-themes, based on the setup information provided via FlexColorScheme.subThemesData by passing properties defined in it to the above helpers that are then used to define the component sub-themes for the produced ThemeData.

Mixed in types
Annotations

Constructors

FlexSubThemesData({bool interactionEffects = true, bool tintedDisabledControls = true, int? blendOnLevel, bool blendOnColors = true, bool useFlutterDefaults = false, FlexAdaptive? adaptiveRemoveElevationTint, FlexAdaptive? adaptiveElevationShadowsBack, FlexAdaptive? adaptiveAppBarScrollUnderOff, FlexAdaptive? adaptiveRadius, FlexAdaptive? adaptiveSplash, FlexSplashType? splashType, FlexSplashType? splashTypeAdaptive, bool blendTextTheme = false, bool? useTextTheme, bool useM2StyleDividerInM3 = false, double? defaultRadius, double? defaultRadiusAdaptive, Size? buttonMinSize, bool? alignedDropdown, EdgeInsetsGeometry? buttonPadding, double? thickBorderWidth, double? thinBorderWidth, double? textButtonRadius, SchemeColor? textButtonSchemeColor, MaterialStateProperty<TextStyle?>? textButtonTextStyle, double? filledButtonRadius, SchemeColor? filledButtonSchemeColor, MaterialStateProperty<TextStyle?>? filledButtonTextStyle, double? elevatedButtonRadius, double? elevatedButtonElevation, SchemeColor? elevatedButtonSchemeColor, SchemeColor? elevatedButtonSecondarySchemeColor, MaterialStateProperty<TextStyle?>? elevatedButtonTextStyle, double? outlinedButtonRadius, SchemeColor? outlinedButtonSchemeColor, SchemeColor? outlinedButtonOutlineSchemeColor, double? outlinedButtonBorderWidth, double? outlinedButtonPressedBorderWidth, MaterialStateProperty<TextStyle?>? outlinedButtonTextStyle, double? toggleButtonsRadius, SchemeColor? toggleButtonsSchemeColor, SchemeColor? toggleButtonsUnselectedSchemeColor, SchemeColor? toggleButtonsBorderSchemeColor, double? toggleButtonsBorderWidth, double? segmentedButtonRadius, SchemeColor? segmentedButtonSchemeColor, SchemeColor? segmentedButtonUnselectedSchemeColor, SchemeColor? segmentedButtonUnselectedForegroundSchemeColor, SchemeColor? segmentedButtonBorderSchemeColor, double? segmentedButtonBorderWidth, SchemeColor? materialButtonSchemeColor, SchemeColor? switchSchemeColor, SchemeColor? switchThumbSchemeColor, bool? switchThumbFixedSize, SchemeColor? checkboxSchemeColor, SchemeColor? radioSchemeColor, bool unselectedToggleIsColored = false, SchemeColor? sliderBaseSchemeColor, SchemeColor? sliderIndicatorSchemeColor, bool sliderValueTinted = false, FlexSliderIndicatorType? sliderValueIndicatorType, ShowValueIndicator? sliderShowValueIndicator, double? sliderTrackHeight, double? inputDecoratorRadius, SchemeColor? inputDecoratorSchemeColor, bool inputDecoratorIsFilled = true, Color? inputDecoratorFillColor, int? inputDecoratorBackgroundAlpha, SchemeColor? inputDecoratorBorderSchemeColor, FlexInputBorderType? inputDecoratorBorderType, bool inputDecoratorFocusedHasBorder = true, bool inputDecoratorUnfocusedHasBorder = true, bool inputDecoratorUnfocusedBorderIsColored = true, double? inputDecoratorBorderWidth, double? inputDecoratorFocusedBorderWidth, SchemeColor? inputDecoratorPrefixIconSchemeColor, SchemeColor? inputCursorSchemeColor, SchemeColor? inputSelectionSchemeColor, double? inputSelectionOpacity, SchemeColor? inputSelectionHandleSchemeColor, double? fabRadius, bool fabUseShape = false, bool fabAlwaysCircular = false, SchemeColor? fabSchemeColor, double? chipRadius, SchemeColor? chipSchemeColor, SchemeColor? chipSelectedSchemeColor, SchemeColor? chipDeleteIconSchemeColor, double? cardRadius, double? cardElevation, double? popupMenuRadius, double? popupMenuElevation, SchemeColor? popupMenuSchemeColor, double? popupMenuOpacity, TextStyle? dropdownMenuTextStyle, double? menuRadius, double? menuElevation, SchemeColor? menuSchemeColor, double? menuOpacity, EdgeInsetsGeometry? menuPadding, SchemeColor? menuBarBackgroundSchemeColor, double? menuBarRadius, double? menuBarElevation, Color? menuBarShadowColor, SchemeColor? menuItemBackgroundSchemeColor, SchemeColor? menuItemForegroundSchemeColor, SchemeColor? menuIndicatorBackgroundSchemeColor, SchemeColor? menuIndicatorForegroundSchemeColor, double? menuIndicatorRadius, double? tooltipRadius, Duration? tooltipWaitDuration, Duration? tooltipShowDuration, SchemeColor? tooltipSchemeColor, double? tooltipOpacity, FlexAdaptive? adaptiveDialogRadius, double? dialogRadius, double? dialogRadiusAdaptive, double? dialogElevation, SchemeColor? dialogBackgroundSchemeColor, bool? useInputDecoratorThemeInDialogs, SchemeColor? datePickerHeaderBackgroundSchemeColor, double? datePickerDialogRadius, double? timePickerDialogRadius, double? timePickerElementRadius, double? snackBarRadius, double? snackBarElevation, SchemeColor? snackBarBackgroundSchemeColor, SchemeColor? snackBarActionSchemeColor, SchemeColor? appBarBackgroundSchemeColor, bool? appBarCenterTitle, double? appBarScrolledUnderElevation, SchemeColor? bottomAppBarSchemeColor, SchemeColor? tabBarItemSchemeColor, SchemeColor? tabBarUnselectedItemSchemeColor, double? tabBarUnselectedItemOpacity, SchemeColor? tabBarIndicatorSchemeColor, TabBarIndicatorSize? tabBarIndicatorSize, double? tabBarIndicatorWeight, double? tabBarIndicatorTopRadius, Color? tabBarDividerColor, double? drawerRadius, double? drawerElevation, SchemeColor? drawerBackgroundSchemeColor, double? drawerWidth, double? drawerIndicatorRadius, double? drawerIndicatorWidth, SchemeColor? drawerIndicatorSchemeColor, double? drawerIndicatorOpacity, SchemeColor? drawerSelectedItemSchemeColor, SchemeColor? drawerUnselectedItemSchemeColor, SchemeColor? bottomSheetBackgroundColor, SchemeColor? bottomSheetModalBackgroundColor, double? bottomSheetRadius, double? bottomSheetElevation, double? bottomSheetModalElevation, TextStyle? bottomNavigationBarLabelTextStyle, double? bottomNavigationBarSelectedLabelSize, double? bottomNavigationBarUnselectedLabelSize, SchemeColor? bottomNavigationBarSelectedLabelSchemeColor, SchemeColor? bottomNavigationBarUnselectedLabelSchemeColor, bool? bottomNavigationBarMutedUnselectedLabel = true, double? bottomNavigationBarSelectedIconSize, double? bottomNavigationBarUnselectedIconSize, SchemeColor? bottomNavigationBarSelectedIconSchemeColor, SchemeColor? bottomNavigationBarUnselectedIconSchemeColor, bool? bottomNavigationBarMutedUnselectedIcon = true, SchemeColor? bottomNavigationBarBackgroundSchemeColor, double? bottomNavigationBarOpacity, double? bottomNavigationBarElevation, bool bottomNavigationBarShowSelectedLabels = true, bool bottomNavigationBarShowUnselectedLabels = true, BottomNavigationBarType? bottomNavigationBarType, BottomNavigationBarLandscapeLayout? bottomNavigationBarLandscapeLayout, TextStyle? navigationBarLabelTextStyle, double? navigationBarSelectedLabelSize, double? navigationBarUnselectedLabelSize, SchemeColor? navigationBarSelectedLabelSchemeColor, SchemeColor? navigationBarUnselectedLabelSchemeColor, bool? navigationBarMutedUnselectedLabel = true, double? navigationBarSelectedIconSize, double? navigationBarUnselectedIconSize, SchemeColor? navigationBarSelectedIconSchemeColor, SchemeColor? navigationBarUnselectedIconSchemeColor, bool? navigationBarMutedUnselectedIcon = true, SchemeColor? navigationBarIndicatorSchemeColor, double? navigationBarIndicatorOpacity, double? navigationBarIndicatorRadius, SchemeColor? navigationBarBackgroundSchemeColor, double? navigationBarOpacity, double? navigationBarElevation, double? navigationBarHeight, NavigationDestinationLabelBehavior? navigationBarLabelBehavior, FlexAdaptive? adaptiveRemoveNavigationBarTint, TextStyle? navigationRailLabelTextStyle, double? navigationRailSelectedLabelSize, double? navigationRailUnselectedLabelSize, SchemeColor? navigationRailSelectedLabelSchemeColor, SchemeColor? navigationRailUnselectedLabelSchemeColor, bool? navigationRailMutedUnselectedLabel = true, double? navigationRailSelectedIconSize, double? navigationRailUnselectedIconSize, SchemeColor? navigationRailSelectedIconSchemeColor, SchemeColor? navigationRailUnselectedIconSchemeColor, bool? navigationRailMutedUnselectedIcon = true, bool? navigationRailUseIndicator = true, SchemeColor? navigationRailIndicatorSchemeColor, double? navigationRailIndicatorOpacity, double? navigationRailIndicatorRadius, SchemeColor? navigationRailBackgroundSchemeColor, double? navigationRailOpacity, double? navigationRailElevation, NavigationRailLabelType? navigationRailLabelType, double? navigationRailGroupAlignment})
Default constructor, used to make an immutable FlexSubThemesData object.
const

Properties

adaptiveAppBarScrollUnderOff FlexAdaptive?
Controls if the AppBar scroll under elevation tint feature is used in Material 3 theming on the AppBar.
final
adaptiveDialogRadius FlexAdaptive?
Controls if the dialogRadiusAdaptive is used instead of dialogRadius on configured platforms.
final
adaptiveElevationShadowsBack FlexAdaptive?
Controls shadow usage on elevated surfaces in Material 3 theming.
final
adaptiveRadius FlexAdaptive?
Controls if the defaultRadiusAdaptive is used instead of defaultRadius on configured platforms.
final
adaptiveRemoveElevationTint FlexAdaptive?
Controls adaptive elevation tint color usage in Material 3 theming.
final
adaptiveRemoveNavigationBarTint FlexAdaptive?
Controls adaptive elevation tint color usage on the NavigationBar.
final
adaptiveSplash FlexAdaptive?
Controls if the splashTypeAdaptive is used instead of splashType on configured platforms.
final
alignedDropdown bool?
If true, then a DropdownButton and DropdownButtonFormField menu's width will match the button's width.
final
appBarBackgroundSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the AppBar background uses.
final
appBarCenterTitle bool?
Whether the AppBar title should be centered.
final
appBarScrolledUnderElevation double?
The elevation that will be used if this app bar has something scrolled underneath it.
final
blendOnColors bool
Set to true to enable blendOnLevel based onColor blending also on onPrimary, onSecondary and onTertiary colors.
final
blendOnLevel int?
Sets the blend level strength of container color used on its onColor.
final
blendTextTheme bool
Use selection surfaceMode and blendLevel in FlexColorScheme.light and FlexColorScheme.dark to also blend primary color into text themes for both ThemeData.textTheme and ThemeData.primaryTextTheme.
final
bottomAppBarSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the BottomAppBar uses as background color.
final
bottomNavigationBarBackgroundSchemeColor SchemeColor?
Select which color from the theme's ColorScheme to use as background color for the BottomNavigationBar.
final
bottomNavigationBarElevation double?
Elevation of BottomNavigationBar.
final
bottomNavigationBarLabelTextStyle TextStyle?
Optional text style for the BottomNavigationBar labels.
final
bottomNavigationBarLandscapeLayout BottomNavigationBarLandscapeLayout?
The arrangement of the bottom navigation bar's items when the enclosing MediaQueryData.orientation is Orientation.landscape.
final
bottomNavigationBarMutedUnselectedIcon bool?
If true, the unselected icon in the BottomNavigationBar use a more muted color version of the color defined by bottomNavigationBarUnselectedIconSchemeColor. The muting is unselected color with blendAlpha(unselected color, kUnselectedBackgroundPrimaryAlphaBlend) and withAlpha(kUnselectedAlphaBlend).
final
bottomNavigationBarMutedUnselectedLabel bool?
If true, the unselected label in the BottomNavigationBar use a more muted color version of the color defined by bottomNavigationBarUnselectedLabelSchemeColor. The muting is unselected color with blendAlpha(unselected color, kUnselectedBackgroundPrimaryAlphaBlend) and withAlpha(kUnselectedAlphaBlend).
final
bottomNavigationBarOpacity double?
BottomNavigationBar background opacity.
final
bottomNavigationBarSelectedIconSchemeColor SchemeColor?
Select which color from the theme's ColorScheme to use as base for the BottomNavigationBar's selected item icon color.
final
bottomNavigationBarSelectedIconSize double?
The size of the icon on selected BottomNavigationBar item.
final
bottomNavigationBarSelectedLabelSchemeColor SchemeColor?
Select which color from the theme's ColorScheme to use as base for the BottomNavigationBar's selected label text color.
final
bottomNavigationBarSelectedLabelSize double?
The size of the text label on selected BottomNavigationBar item.
final
bottomNavigationBarShowSelectedLabels bool
Whether the labels are shown for the selected BottomNavigationBarItem.
final
bottomNavigationBarShowUnselectedLabels bool
Whether the labels are shown for the unselected BottomNavigationBarItems.
final
bottomNavigationBarType BottomNavigationBarType?
Defines the layout and behavior of a BottomNavigationBar.
final
bottomNavigationBarUnselectedIconSchemeColor SchemeColor?
Select which color from the passed in ColorScheme to use as base for the BottomNavigationBar's unselected items icon color.
final
bottomNavigationBarUnselectedIconSize double?
The size of the icon on unselected BottomNavigationBar items.
final
bottomNavigationBarUnselectedLabelSchemeColor SchemeColor?
Select which color from the theme's ColorScheme to use as base for the BottomNavigationBar's unselected label text color.
final
bottomNavigationBarUnselectedLabelSize double?
The size of the text label on unselected BottomNavigationBar items.
final
bottomSheetBackgroundColor SchemeColor?
Defines which Theme based ColorScheme based color that the BottomSheet uses as background color when presented as a none modal bottom sheet.
final
bottomSheetElevation double?
Elevation of none modal BottomSheet.
final
bottomSheetModalBackgroundColor SchemeColor?
Defines which Theme based ColorScheme based color that the BottomSheet uses as background color when presented as a modal bottom sheet.
final
bottomSheetModalElevation double?
Elevation of modal BottomSheet.
final
bottomSheetRadius double?
Border radius value for BottomSheet.
final
buttonMinSize Size?
Minimum button size for all buttons.
final
buttonPadding EdgeInsetsGeometry?
Padding on TextButton, ElevatedButton and OutlinedButton.
final
cardElevation double?
Elevation of Card.
final
cardRadius double?
Border radius value for Card.
final
checkboxSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the Checkbox and CheckboxListTile use as base themed color.
final
chipDeleteIconSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the Chips use as color of the delete icon.
final
chipRadius double?
Border radius value for Chip widgets.
final
chipSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the Chips use as their base tint color.
final
chipSelectedSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the Chips use as their selected color.
final
datePickerDialogRadius double?
Border radius value for DatePickerDialog.
final
datePickerHeaderBackgroundSchemeColor SchemeColor?
The background color of the header in a DatePickerDialog.
final
defaultRadius double?
Border radius used on all widgets when FlexColorScheme use its FlexSubThemesData to configure sub-themes with FlexSubThemes.
final
defaultRadiusAdaptive double?
The defaultRadiusAdaptive has the same definition and usage defaultRadius, but is used as default radius on platforms as configured by adaptiveRadius.
final
dialogBackgroundSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color dialogs use as as their background color.
final
dialogElevation double?
Elevation of Dialog.
final
dialogRadius double?
Border radius value for Dialog.
final
dialogRadiusAdaptive double?
The defaultRadiusAdaptive has the same definition and usage dialogRadius, but is used as default radius on platforms as configured by adaptiveRadius.
final
drawerBackgroundSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color Drawer uses as as its background color.
final
drawerElevation double?
Elevation of Drawer and NavigationDrawer.
final
drawerIndicatorOpacity double?
Defines the opacity used on the NavigationDrawer's indicator color.
final
drawerIndicatorRadius double?
Border radius of the selection indicator on the NavigationDrawer.
final
drawerIndicatorSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color NavigationDrawer uses as as its background color on the selection indicator.
final
drawerIndicatorWidth double?
Defines the width of NavigationDrawer's indicator.
final
drawerRadius double?
Border radius value for Drawer, also used by NavigationDrawer.
final
drawerSelectedItemSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color NavigationDrawer uses as as its selected item color.
final
drawerUnselectedItemSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color NavigationDrawer uses as as its unselected item color.
final
drawerWidth double?
Defines the width of Drawer and NavigationDrawer.
final
The TextStyle of the text entry in a DropDownMenu.
final
elevatedButtonElevation double?
Elevation of ElevatedButton.
final
elevatedButtonRadius double?
Border radius value for ElevatedButton.
final
elevatedButtonSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color, that the ElevatedButton used as its main color.
final
elevatedButtonSecondarySchemeColor SchemeColor?
Defines which Theme based ColorScheme based color, that the ElevatedButton uses as its secondary color.
final
elevatedButtonTextStyle MaterialStateProperty<TextStyle?>?
The style for the ElevatedButton's Text widget descendants.
final
fabAlwaysCircular bool
Always use circular Shape on Floating Actions Button.
final
fabRadius double?
Border radius value for FloatingActionButton.
final
fabSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the Floating Action Buttons (FABs) use as their base color.
final
fabUseShape bool
Use shape theming on Floating Action Button (FAB).
final
filledButtonRadius double?
Border radius override value for FilledButton.
final
filledButtonSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the FilledButton use as its base theme color.
final
filledButtonTextStyle MaterialStateProperty<TextStyle?>?
The style for the FilledButton's Text widget descendants.
final
hashCode int
Override for hashcode, dart.ui Jenkins based.
no setteroverride
inputCursorSchemeColor SchemeColor?
The SchemeColor based color of the cursor in the text field.
final
inputDecoratorBackgroundAlpha int?
Defines the alpha, opacity channel value used as opacity on effective InputDecorator background color.
final
inputDecoratorBorderSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the input decorator uses as color for the border color when they are used.
final
inputDecoratorBorderType FlexInputBorderType?
Determines the type of border InputDecorator uses.
final
inputDecoratorBorderWidth double?
The border width of unfocused InputDecoration when it has a border.
final
inputDecoratorFillColor Color?
Determines the color of the filled InputDecorator.
final
inputDecoratorFocusedBorderWidth double?
The border width of focused InputDecoration when it has a border.
final
inputDecoratorFocusedHasBorder bool
Determines if the InputDecorator focused state has a border.
final
inputDecoratorIsFilled bool
Determines if the InputDecorator is filled with a color.
final
inputDecoratorPrefixIconSchemeColor SchemeColor?
The icon color of the prefixIcon in a focused InputDecoration.
final
inputDecoratorRadius double?
Border radius value for InputDecoration.
final
inputDecoratorSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the input decorator uses as color for the border and fill color when they are used.
final
inputDecoratorUnfocusedBorderIsColored bool
Determines if the InputDecorator unfocused state has a colored border.
final
inputDecoratorUnfocusedHasBorder bool
Determines if the InputDecorator unfocused state has a border.
final
inputSelectionHandleSchemeColor SchemeColor?
The SchemeColor based color of the selection handles on the text field.
final
inputSelectionOpacity double?
The opacity applied to selectionSchemeColor.
final
inputSelectionSchemeColor SchemeColor?
The SchemeColor based background color of selected text.
final
interactionEffects bool
Flag used to enable color tinted hover, focus, highlight, selected, pressed and splash interaction state effects.
final
materialButtonSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color, that the old MaterialButton use as its main theme color.
final
Select which color from active ColorScheme to use as background color for the MenuBar.
final
The elevation of the MenuBar container.
final
The border radius of the MenuBar container.
final
The shadow color of the MenuBar container.
final
The elevation of Menu containers.
final
Select which color from the active ColorScheme to use as the highlighted SubmenuButtons and MenuItemButtons indicator background color.
final
Select which color from active ColorScheme use as the highlighted SubmenuButtons and MenuItemButtons indicator foreground color.
final
The themed corner border radius of SubmenuButtons and MenuItemButtons.
final
Select which color from active ColorScheme to use as SubmenuButtons and MenuItemButtons background color for unselected, not hovered, menu items.
final
Select which color from active ColorScheme to use as SubmenuButtons and MenuItemButtons foreground color.
final
Menu background opacity.
final
The padding between the menu's boundary and its child.
final
The border radius of Menu containers.
final
The ColorScheme based color used as background color on MenuBar, MenuAnchor and DropDownMenu.
final
Select which color from the theme's ColorScheme to use as background color for the NavigationBar.
final
The z-coordinate to be used for the NavigationBar's elevation.
final
Height of the container for the Material 3 NavigationBar.
final
Opacity used on the NavigationBar indicator.
final
Border radius of the selection indicator on the NavigationBar.
final
Select which color from the theme ColorScheme to use as base for the NavigationBar's selected item indicator.
final
Specifies when each NavigationDestination's label should appear.
final
Optional text style for the NavigationBar labels.
final
If true, the unselected icon in the NavigationBar use a more muted color version of the color defined by navigationBarUnselectedIconSchemeColor. The muting is unselected color with blendAlpha(unselected color, kUnselectedBackgroundPrimaryAlphaBlend) and withAlpha(kUnselectedAlphaBlend).
final
If true, the unselected label in the NavigationBar use a more muted color version of the color defined by navigationBarUnselectedLabelSchemeColor. The muting is unselected color with blendAlpha(unselected color, kUnselectedBackgroundPrimaryAlphaBlend) and withAlpha(kUnselectedAlphaBlend).
final
NavigationBar background opacity.
final
Select which color from the theme's ColorScheme to use as base for the NavigationBar's selected item icon color.
final
The size of the icon on selected NavigationBar item.
final
Select which color from the passed in ColorScheme to use as base for the NavigationBar's label text color.
final
The size of the text label on selected NavigationBar item.
final
Select which color from the theme's ColorScheme to use as base for the NavigationBar's unselected item icon color.
final
The size of the icon on unselected NavigationBar items.
final
Select which color from the theme's ColorScheme to use as base for the NavigationBar's unselected label text color.
final
The size of the text label on unselected NavigationBar items.
final
Select which color from the theme's ColorScheme to use as background color for the NavigationRail.
final
The z-coordinate to be used for the NavigationRail's elevation.
final
The vertical alignment for the group of destinations within a NavigationRail.
final
Opacity used on the NavigationBar indicator.
final
Border radius of the selection indicator on the NavigationRail.
final
Select which color from the theme ColorScheme to use as base for the selected NavigationRails's highlighted item.
final
Optional text style for the NavigationRail labels.
final
Defines the layout and behavior of the labels for the un-extended NavigationRail.
final
If true, the unselected icon in the NavigationRail use a more muted color version of the color defined by navigationBarUnselectedIconSchemeColor. The muting is unselected color with blendAlpha(unselected color, kUnselectedBackgroundPrimaryAlphaBlend) and withAlpha(kUnselectedAlphaBlend).
final
If true, the unselected label in the NavigationRail use a more muted color version of the color defined by navigationRailUnselectedLabelSchemeColor. The muting is unselected color with blendAlpha(unselected color, kUnselectedBackgroundPrimaryAlphaBlend) and withAlpha(kUnselectedAlphaBlend).
final
NavigationRail background opacity.
final
Select which color from the theme's ColorScheme to use as base for the NavigationRail's selected item icon color.
final
The size of the icon on selected NavigationRail item.
final
Select which color from the theme's ColorScheme to use as base for the NavigationRail's selected label text color.
final
The size of the text label on selected NavigationRail item.
final
Select which color from the passed in ColorScheme to use as base for the NavigationRail's unselected items icon color.
final
The size of the icon on unselected NavigationRail items.
final
Select which color from the theme's ColorScheme to use as base for the NavigationRails's unselected label text color.
final
The size of the text label on unselected NavigationRail items.
final
Whether or not the selected NavigationRail item should include a NavigationIndicator.
final
outlinedButtonBorderWidth double?
The border width of the OutlineButton.
final
outlinedButtonOutlineSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color, that the OutlinedButton uses as its outline color.
final
outlinedButtonPressedBorderWidth double?
The border width of the pressed OutlineButton.
final
outlinedButtonRadius double?
Border radius value for OutlinedButton.
final
outlinedButtonSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color, that the OutlinedButton use as its main theme color.
final
outlinedButtonTextStyle MaterialStateProperty<TextStyle?>?
The style for the OutlinedButton's Text widget descendants.
final
popupMenuElevation double?
Default elevation of PopupMenuButton.
final
popupMenuOpacity double?
Popup menu background opacity.
final
popupMenuRadius double?
Border radius override value for the menu on PopupMenuButton.
final
popupMenuSchemeColor SchemeColor?
The ColorScheme based color used as background color on PopupMenuButton.
final
radioSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the Radio and RadioListTile use as base themed color.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
segmentedButtonBorderSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the SegmentedButton use as its border themed color.
final
segmentedButtonBorderWidth double?
The border width of SegmentedButton.
final
segmentedButtonRadius double?
Border radius value for SegmentedButton.
final
segmentedButtonSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color a selected SegmentedButton use as its background theme color.
final
segmentedButtonUnselectedForegroundSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the SegmentedButton use as the foreground color for unselected buttons.
final
segmentedButtonUnselectedSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the SegmentedButton use as the background color for unselected buttons.
final
sliderBaseSchemeColor SchemeColor?
The ColorScheme based color used on the Slider as its overall base color.
final
sliderIndicatorSchemeColor SchemeColor?
The ColorScheme based color used on the Slider indicator color.
final
sliderShowValueIndicator ShowValueIndicator?
Whether the value indicator should be shown for different types of sliders.
final
sliderTrackHeight double?
The height of the Slider track.
final
sliderValueIndicatorType FlexSliderIndicatorType?
Enum used to select the type of built-in value indicator used by Slider.
final
sliderValueTinted bool
If true, the value indicator becomes a tinted high contrast version of current sliderIndicatorSchemeColor, with a bit of opacity.
final
snackBarActionSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the SnackBar actions use as their color.
final
snackBarBackgroundSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the SnackBars use as their base color. Typically one of inverse brightness compared to theme's surface color brightness.
final
snackBarElevation double?
Elevation of SnackBar.
final
snackBarRadius double?
Corner radius of the SnackBar.
final
splashType FlexSplashType?
Controls the type of splash factory ThemeData.splashFactory will use.
final
splashTypeAdaptive FlexSplashType?
Controls the type splash factory ThemeData.splashFactory will use on platforms defined by adaptiveSplash.
final
switchSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the Switch and SwitchListTile use as base themed color.
final
switchThumbFixedSize bool?
Set to true to keep the Switch thumb size fixed.
final
switchThumbSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the Switch and SwitchListTile use as themed thumb color.
final
tabBarDividerColor Color?
The color of the divider.
final
tabBarIndicatorSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the TabBar indicator uses.
final
tabBarIndicatorSize TabBarIndicatorSize?
Defines how the selected tab indicator's size is computed.
final
tabBarIndicatorTopRadius double?
The top left and right corner radius of the underline border indicator on the TabBar.
final
tabBarIndicatorWeight double?
The thickness of the underline border indicator on the TabBar.
final
tabBarItemSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the TabBar items use.
final
tabBarUnselectedItemOpacity double?
Defines the opacity used on the TabBar unselected items.
final
tabBarUnselectedItemSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the TabBar unselected items use.
final
textButtonRadius double?
Border radius override value for TextButton.
final
textButtonSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the TextButton use as its base theme color.
final
textButtonTextStyle MaterialStateProperty<TextStyle?>?
The style for the TextButton's Text widget descendants.
final
thickBorderWidth double?
Default for thicker border width state of Widgets with an outline border.
final
thinBorderWidth double?
Default for normal border width of Widgets with an outline border.
final
timePickerDialogRadius double?
Border radius value for TimePickerDialog.
final
timePickerElementRadius double?
Default border radius on time entry elements in TimePickerDialog.
final
tintedDisabledControls bool
Use color tint on disabled controls.
final
toggleButtonsBorderSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the ToggleButtons use as its border themed color.
final
toggleButtonsBorderWidth double?
The border width of ToggleButtons.
final
toggleButtonsRadius double?
Border radius value for ToggleButtons.
final
toggleButtonsSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the ToggleButtons use as its base theme color.
final
toggleButtonsUnselectedSchemeColor SchemeColor?
Defines which Theme based ColorScheme based color the ToggleButtons use as the foreground color for unselected toggle buttons.
final
tooltipOpacity double?
Tooltip background opacity.
final
tooltipRadius double?
Border radius value for Tooltips.
final
tooltipSchemeColor SchemeColor?
The ColorScheme based color used as background color on Tooltips.
final
tooltipShowDuration Duration?
The length of time that the tooltip will be shown once it has appeared.
final
tooltipWaitDuration Duration?
The length of time that a pointer must hover over a tooltip's widget before the tooltip will be shown.
final
unselectedToggleIsColored bool
Defines is unselected Switch, Checkbox and Radio also use their themed color.
final
useFlutterDefaults bool
Set to true to use Flutter SDK default component theme designs.
final
useInputDecoratorThemeInDialogs bool?
Set to true to use the app overall app InputDecoration theme in dialogs themes.
final
useM2StyleDividerInM3 bool
Determines if M2 style opacity based divider is used in Material 3.
final
useTextTheme bool?
Determines if Material-3 TextTheme and Typography is used.
final

Methods

copyWith({bool? interactionEffects, bool? tintedDisabledControls, int? blendOnLevel, bool? blendOnColors, bool? useFlutterDefaults, FlexAdaptive? adaptiveRemoveElevationTint, FlexAdaptive? adaptiveElevationShadowsBack, FlexAdaptive? adaptiveAppBarScrollUnderOff, FlexAdaptive? adaptiveRadius, FlexAdaptive? adaptiveSplash, FlexSplashType? splashType, FlexSplashType? splashTypeAdaptive, bool? blendTextTheme, bool? useTextTheme, bool? useM2StyleDividerInM3, double? defaultRadius, double? defaultRadiusAdaptive, Size? buttonMinSize, bool? alignedDropdown, EdgeInsetsGeometry? buttonPadding, double? thickBorderWidth, double? thinBorderWidth, double? textButtonRadius, SchemeColor? textButtonSchemeColor, MaterialStateProperty<TextStyle?>? textButtonTextStyle, double? filledButtonRadius, SchemeColor? filledButtonSchemeColor, MaterialStateProperty<TextStyle?>? filledButtonTextStyle, double? elevatedButtonRadius, double? elevatedButtonElevation, SchemeColor? elevatedButtonSchemeColor, SchemeColor? elevatedButtonSecondarySchemeColor, MaterialStateProperty<TextStyle?>? elevatedButtonTextStyle, double? outlinedButtonRadius, SchemeColor? outlinedButtonSchemeColor, SchemeColor? outlinedButtonOutlineSchemeColor, MaterialStateProperty<TextStyle?>? outlinedButtonTextStyle, double? outlinedButtonBorderWidth, double? outlinedButtonPressedBorderWidth, double? toggleButtonsRadius, SchemeColor? toggleButtonsSchemeColor, SchemeColor? toggleButtonsUnselectedSchemeColor, SchemeColor? toggleButtonsBorderSchemeColor, double? toggleButtonsBorderWidth, double? segmentedButtonRadius, SchemeColor? segmentedButtonSchemeColor, SchemeColor? segmentedButtonUnselectedSchemeColor, SchemeColor? segmentedButtonUnselectedForegroundSchemeColor, SchemeColor? segmentedButtonBorderSchemeColor, double? segmentedButtonBorderWidth, SchemeColor? materialButtonSchemeColor, SchemeColor? switchSchemeColor, SchemeColor? switchThumbSchemeColor, bool? switchThumbFixedSize, SchemeColor? checkboxSchemeColor, SchemeColor? radioSchemeColor, bool? unselectedToggleIsColored, SchemeColor? sliderBaseSchemeColor, SchemeColor? sliderIndicatorSchemeColor, bool? sliderValueTinted, FlexSliderIndicatorType? sliderValueIndicatorType, ShowValueIndicator? sliderShowValueIndicator, double? sliderTrackHeight, double? inputDecoratorRadius, SchemeColor? inputDecoratorSchemeColor, bool? inputDecoratorIsFilled, Color? inputDecoratorFillColor, int? inputDecoratorBackgroundAlpha, SchemeColor? inputDecoratorBorderSchemeColor, FlexInputBorderType? inputDecoratorBorderType, bool? inputDecoratorFocusedHasBorder, bool? inputDecoratorUnfocusedHasBorder, bool? inputDecoratorUnfocusedBorderIsColored, double? inputDecoratorBorderWidth, double? inputDecoratorFocusedBorderWidth, SchemeColor? inputDecoratorPrefixIconSchemeColor, SchemeColor? inputCursorSchemeColor, SchemeColor? inputSelectionSchemeColor, double? inputSelectionOpacity, SchemeColor? inputSelectionHandleSchemeColor, double? fabRadius, bool? fabUseShape, bool? fabAlwaysCircular, SchemeColor? fabSchemeColor, double? chipRadius, SchemeColor? chipSchemeColor, SchemeColor? chipSelectedSchemeColor, SchemeColor? chipDeleteIconSchemeColor, double? cardRadius, double? cardElevation, double? popupMenuRadius, double? popupMenuElevation, SchemeColor? popupMenuSchemeColor, double? popupMenuOpacity, TextStyle? dropdownMenuTextStyle, double? menuRadius, double? menuElevation, SchemeColor? menuSchemeColor, double? menuOpacity, EdgeInsetsGeometry? menuPadding, SchemeColor? menuBarBackgroundSchemeColor, double? menuBarRadius, double? menuBarElevation, Color? menuBarShadowColor, SchemeColor? menuItemBackgroundSchemeColor, SchemeColor? menuItemForegroundSchemeColor, SchemeColor? menuIndicatorBackgroundSchemeColor, SchemeColor? menuIndicatorForegroundSchemeColor, double? menuIndicatorRadius, double? tooltipRadius, Duration? tooltipWaitDuration, Duration? tooltipShowDuration, SchemeColor? tooltipSchemeColor, double? tooltipOpacity, FlexAdaptive? adaptiveDialogRadius, double? dialogRadius, double? dialogRadiusAdaptive, double? dialogElevation, SchemeColor? dialogBackgroundSchemeColor, bool? useInputDecoratorThemeInDialogs, SchemeColor? datePickerHeaderBackgroundSchemeColor, double? datePickerDialogRadius, double? timePickerDialogRadius, double? timePickerElementRadius, double? snackBarRadius, double? snackBarElevation, SchemeColor? snackBarBackgroundSchemeColor, SchemeColor? snackBarActionSchemeColor, SchemeColor? appBarBackgroundSchemeColor, bool? appBarCenterTitle, double? appBarScrolledUnderElevation, SchemeColor? bottomAppBarSchemeColor, SchemeColor? tabBarItemSchemeColor, SchemeColor? tabBarUnselectedItemSchemeColor, double? tabBarUnselectedItemOpacity, SchemeColor? tabBarIndicatorSchemeColor, TabBarIndicatorSize? tabBarIndicatorSize, double? tabBarIndicatorWeight, double? tabBarIndicatorTopRadius, Color? tabBarDividerColor, double? drawerRadius, double? drawerElevation, SchemeColor? drawerBackgroundSchemeColor, double? drawerWidth, double? drawerIndicatorWidth, double? drawerIndicatorRadius, SchemeColor? drawerIndicatorSchemeColor, double? drawerIndicatorOpacity, SchemeColor? drawerSelectedItemSchemeColor, SchemeColor? drawerUnselectedItemSchemeColor, SchemeColor? bottomSheetBackgroundColor, SchemeColor? bottomSheetModalBackgroundColor, double? bottomSheetRadius, double? bottomSheetElevation, double? bottomSheetModalElevation, TextStyle? bottomNavigationBarLabelTextStyle, double? bottomNavigationBarSelectedLabelSize, double? bottomNavigationBarUnselectedLabelSize, SchemeColor? bottomNavigationBarSelectedLabelSchemeColor, SchemeColor? bottomNavigationBarUnselectedLabelSchemeColor, bool? bottomNavigationBarMutedUnselectedLabel, double? bottomNavigationBarSelectedIconSize, double? bottomNavigationBarUnselectedIconSize, SchemeColor? bottomNavigationBarSelectedIconSchemeColor, SchemeColor? bottomNavigationBarUnselectedIconSchemeColor, bool? bottomNavigationBarMutedUnselectedIcon, SchemeColor? bottomNavigationBarBackgroundSchemeColor, double? bottomNavigationBarOpacity, double? bottomNavigationBarElevation, bool? bottomNavigationBarShowSelectedLabels, bool? bottomNavigationBarShowUnselectedLabels, BottomNavigationBarType? bottomNavigationBarType, BottomNavigationBarLandscapeLayout? bottomNavigationBarLandscapeLayout, TextStyle? navigationBarLabelTextStyle, double? navigationBarSelectedLabelSize, double? navigationBarUnselectedLabelSize, SchemeColor? navigationBarSelectedLabelSchemeColor, SchemeColor? navigationBarUnselectedLabelSchemeColor, bool? navigationBarMutedUnselectedLabel, double? navigationBarSelectedIconSize, double? navigationBarUnselectedIconSize, SchemeColor? navigationBarSelectedIconSchemeColor, SchemeColor? navigationBarUnselectedIconSchemeColor, bool? navigationBarMutedUnselectedIcon, SchemeColor? navigationBarIndicatorSchemeColor, double? navigationBarIndicatorOpacity, double? navigationBarIndicatorRadius, SchemeColor? navigationBarBackgroundSchemeColor, double? navigationBarOpacity, double? navigationBarElevation, double? navigationBarHeight, NavigationDestinationLabelBehavior? navigationBarLabelBehavior, FlexAdaptive? adaptiveRemoveNavigationBarTint, TextStyle? navigationRailLabelTextStyle, double? navigationRailSelectedLabelSize, double? navigationRailUnselectedLabelSize, SchemeColor? navigationRailSelectedLabelSchemeColor, SchemeColor? navigationRailUnselectedLabelSchemeColor, bool? navigationRailMutedUnselectedLabel, double? navigationRailSelectedIconSize, double? navigationRailUnselectedIconSize, SchemeColor? navigationRailSelectedIconSchemeColor, SchemeColor? navigationRailUnselectedIconSchemeColor, bool? navigationRailMutedUnselectedIcon, bool? navigationRailUseIndicator, SchemeColor? navigationRailIndicatorSchemeColor, double? navigationRailIndicatorOpacity, double? navigationRailIndicatorRadius, SchemeColor? navigationRailBackgroundSchemeColor, double? navigationRailOpacity, double? navigationRailElevation, NavigationRailLabelType? navigationRailLabelType, double? navigationRailGroupAlignment}) FlexSubThemesData
Copy the object with one or more provided properties changed.
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Flutter debug properties override, includes toString.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) String
A string representation of this object.
inherited
toStringShort() String
A brief description of this object, usually just the runtimeType and the hashCode.
inherited

Operators

operator ==(Object other) bool
Override for equality operator.
override