resetAllToDefaults method
Reset all values to default values and save as current settings.
Calls setters with notify = false, and calls notifyListeners once after all values have been reset and persisted.
The reset to default actually, sets and persist all property values that deviates from its defined default value. Only values that actually deviate from their default value are changed. The property setters manage this. They are all set with no notification and notifyListeners() is only called once, after all updates have been made.
Does not reset the custom colors to their default, only theme settings. We keep the custom colors at their specified values even if theme settings are reset. There is a separate function to reset the custom colors.
Implementation
Future<void> resetAllToDefaults({
/// If false, theme mode & scheme index are not reset.
bool resetMode = true,
// If false, notifyListeners is not called.
bool doNotify = true,
}) async {
//
// GENERAL SETTINGS.
// ThemeMode, use FlexColorScheme and sub-themes, current scheme, view, etc.
if (resetMode) setThemeMode(Store.defaultThemeMode, false);
setUsedVisualDensity(Store.defaultUsedVisualDensity, false);
setUseFlexColorScheme(Store.defaultUseFlexColorScheme, false);
setUseSubThemes(Store.defaultUseSubThemes, false);
setUseFlutterDefaults(Store.defaultUseFlutterDefaults, false);
//
setAdaptiveRemoveElevationTintLight(Store.defaultAdaptiveRemoveElevationTintLight, false);
setAdaptiveElevationShadowsBackLight(Store.defaultAdaptiveElevationShadowsBackLight, false);
setAdaptiveAppBarScrollUnderOffLight(Store.defaultAdaptiveAppBarScrollUnderOffLight, false);
setAdaptiveRemoveElevationTintDark(Store.defaultAdaptiveRemoveElevationTintDark, false);
setAdaptiveElevationShadowsBackDark(Store.defaultAdaptiveElevationShadowsBackDark, false);
setAdaptiveAppBarScrollUnderOffDark(Store.defaultAdaptiveAppBarScrollUnderOffDark, false);
setAdaptiveRadius(Store.defaultAdaptiveRadius, false);
//
setAdaptiveSplash(Store.defaultAdaptiveSplash, false);
setSplashType(Store.defaultSplashType, false);
setSplashTypeAdaptive(Store.defaultSplashTypeAdaptive, false);
//
// The IsLargeGridView and ViewIndex settings are never reset to default in
// a reset, we always keep the current screen and panel on page/panel view.
setUseTextTheme(Store.defaultUseTextTheme, false);
setUseM2StyleDividerInM3(Store.defaultUseM2StyleDividerInM3, false);
setUseAppFont(Store.defaultUseAppFont, false);
setUsedScheme(Store.defaultUsedScheme, false);
if (resetMode) setSchemeIndex(Store.defaultSchemeIndex, false);
setInteractionEffects(Store.defaultInteractionEffects, false);
setTintedDisabledControls(Store.defaultTintedDisabledControls, false);
//
setDefaultRadius(Store.defaultDefaultRadius, false);
setDefaultRadiusAdaptive(Store.defaultDefaultRadiusAdaptive, false);
setThinBorderWidth(Store.defaultThinBorderWidth, false);
setThickBorderWidth(Store.defaultThickBorderWidth, false);
setTooltipsMatchBackground(Store.defaultTooltipsMatchBackground, false);
//
// Surface and blend SETTINGS.
setSurfaceModeLight(Store.defaultSurfaceModeLight, false);
setSurfaceModeDark(Store.defaultSurfaceModeDark, false);
setBlendLevel(Store.defaultBlendLevel, false);
setBlendLevelDark(Store.defaultBlendLevelDark, false);
setBlendOnLevel(Store.defaultBlendOnLevel, false);
setBlendOnLevelDark(Store.defaultBlendOnLevelDark, false);
setUsedColors(Store.defaultUsedColors, false);
setSwapLegacyColors(Store.defaultSwapLegacyColors, false);
setSwapLightColors(Store.defaultSwapLightColors, false);
setSwapDarkColors(Store.defaultSwapDarkColors, false);
setLightIsWhite(Store.defaultLightIsWhite, false);
setDarkIsTrueBlack(Store.defaultDarkIsTrueBlack, false);
setUseToDarkMethod(Store.defaultUseToDarkMethod, false);
setToDarkSwapPrimaryAndContainer(Store.defaultToDarkSwapPrimaryAndContainer, false);
setDarkMethodLevel(Store.defaultDarkMethodLevel, false);
setBlendLightOnColors(Store.defaultBlendLightOnColors, false);
setBlendDarkOnColors(Store.defaultBlendDarkOnColors, false);
setBlendLightTextTheme(Store.defaultBlendLightTextTheme, false);
setBlendDarkTextTheme(Store.defaultBlendDarkTextTheme, false);
//
// Material 3 and Seed ColorScheme SETTINGS.
setUseMaterial3(Store.defaultUseMaterial3, false);
setPaletteType(Store.defaultPaletteType, false);
setUseKeyColors(Store.defaultUseKeyColors, false);
setUseSecondary(Store.defaultUseSecondary, false);
setUseTertiary(Store.defaultUseTertiary, false);
setKeepPrimary(Store.defaultKeepPrimary, false);
setKeepSecondary(Store.defaultKeepSecondary, false);
setKeepTertiary(Store.defaultKeepTertiary, false);
setKeepPrimaryContainer(Store.defaultKeepPrimaryContainer, false);
setKeepSecondaryContainer(Store.defaultKeepSecondaryContainer, false);
setKeepTertiaryContainer(Store.defaultKeepTertiaryContainer, false);
setKeepDarkPrimary(Store.defaultKeepDarkPrimary, false);
setKeepDarkSecondary(Store.defaultKeepDarkSecondary, false);
setKeepDarkTertiary(Store.defaultKeepDarkTertiary, false);
setKeepDarkPrimaryContainer(Store.defaultKeepDarkPrimaryContainer, false);
setKeepDarkSecondaryContainer(Store.defaultKeepDarkSecondaryContainer, false);
setKeepDarkTertiaryContainer(Store.defaultKeepDarkTertiaryContainer, false);
setUsedFlexToneSetup(Store.defaultUsedFlexToneSetup, false);
setUseM3ErrorColors(Store.defaultUseM3ErrorColors, false);
//
setOnMainsUseBWLight(Store.defaultOnMainsUseBWLight, false);
setOnMainsUseBWDark(Store.defaultOnMainsUseBWDark, false);
setOnSurfacesUseBWLight(Store.defaultOnSurfacesUseBWLight, false);
setOnSurfacesUseBWDark(Store.defaultOnSurfacesUseBWDark, false);
setSurfacesUseBWLight(Store.defaultSurfacesUseBWLight, false);
setSurfacesUseBWDark(Store.defaultSurfacesUseBWDark, false);
//
// InputDecorator SETTINGS.
await setTextFieldToDefaults(false);
//
// AppBar SETTINGS.
setAppBarStyleLight(Store.defaultAppBarStyleLight, false);
setAppBarStyleDark(Store.defaultAppBarStyleDark, false);
setAppBarOpacityLight(Store.defaultAppBarOpacityLight, false);
setAppBarOpacityDark(Store.defaultAppBarOpacityDark, false);
setAppBarElevationLight(Store.defaultAppBarElevationLight, false);
setAppBarElevationDark(Store.defaultAppBarElevationDark, false);
setAppBarScrolledUnderElevationLight(Store.defaultAppBarScrolledUnderElevationLight, false);
setAppBarScrolledUnderElevationDark(Store.defaultAppBarScrolledUnderElevationDark, false);
setBottomAppBarElevationLight(Store.defaultBottomAppBarElevationLight, false);
setBottomAppBarElevationDark(Store.defaultBottomAppBarElevationDark, false);
setTransparentStatusBar(Store.defaultTransparentStatusBar, false);
setAppBarBackgroundSchemeColorLight(Store.defaultAppBarBackgroundSchemeColorLight, false);
setAppBarBackgroundSchemeColorDark(Store.defaultAppBarBackgroundSchemeColorDark, false);
//
// BottomAppBar SETTINGS.
setBottomAppBarSchemeColor(Store.defaultBottomAppBarSchemeColor, false);
//
// TabBar SETTINGS.
setTabBarStyle(Store.defaultTabBarStyle, false);
setTabBarIndicatorLight(Store.defaultTabBarIndicatorLight, false);
setTabBarIndicatorDark(Store.defaultTabBarIndicatorDark, false);
setTabBarItemSchemeColorLight(Store.defaultTabBarItemSchemeColorLight, false);
setTabBarItemSchemeColorDark(Store.defaultTabBarItemSchemeColorDark, false);
setTabBarUnselectedItemSchemeColorLight(Store.defaultTabBarUnselectedItemSchemeColorLight, false);
setTabBarUnselectedItemSchemeColorDark(Store.defaultTabBarUnselectedItemSchemeColorDark, false);
setTabBarUnselectedItemOpacityLight(Store.defaultTabBarUnselectedItemOpacityLight, false);
setTabBarUnselectedItemOpacityDark(Store.defaultTabBarUnselectedItemOpacityDark, false);
setTabBarIndicatorSize(Store.defaultTabBarIndicatorSize, false);
setTabBarIndicatorWeight(Store.defaultTabBarIndicatorWeight, false);
setTabBarIndicatorTopRadius(Store.defaultTabBarIndicatorTopRadius, false);
setTabBarDividerColor(Store.defaultTabBarDividerColor, false);
//
// Drawer SETTINGS.
setDrawerBorderRadius(Store.defaultDrawerBorderRadius, false);
setDrawerElevation(Store.defaultDrawerElevation, false);
setDrawerBackgroundSchemeColor(Store.defaultDrawerBackgroundSchemeColor, false);
setDrawerWidth(Store.defaultDrawerWidth, false);
setDrawerIndicatorWidth(Store.defaultDrawerIndicatorWidth, false);
setDrawerIndicatorBorderRadius(Store.defaultDrawerIndicatorBorderRadius, false);
setDrawerIndicatorSchemeColor(Store.defaultDrawerIndicatorSchemeColor, false);
setDrawerIndicatorOpacity(Store.defaultDrawerIndicatorOpacity, false);
setDrawerSelectedItemSchemeColor(Store.defaultDrawerSelectedItemSchemeColor, false);
setDrawerUnselectedItemSchemeColor(Store.defaultDrawerUnselectedItemSchemeColor, false);
//
// BottomSheet SETTINGS.
setBottomSheetSchemeColor(Store.defaultBottomSheetSchemeColor, false);
setBottomSheetElevation(Store.defaultBottomSheetElevation, false);
setBottomSheetModalSchemeColor(Store.defaultBottomSheetModalSchemeColor, false);
setBottomSheetModalElevation(Store.defaultBottomSheetModalElevation, false);
setBottomSheetBorderRadius(Store.defaultBottomSheetBorderRadius, false);
//
// Android System Navigator bar SETTINGS.
setSysNavBarStyle(Store.defaultSysNavBarStyle, false);
setSysBarOpacity(Store.defaultSysBarOpacity, false);
setUseSysNavDivider(Store.defaultUseSysNavDivider, false);
//
// BottomNavigationBar SETTINGS.
setBottomNavBarBackgroundSchemeColor(Store.defaultBottomNavBarBackgroundSchemeColor, false);
setBottomNavigationBarOpacity(Store.defaultBottomNavigationBarOpacity, false);
setBottomNavigationBarElevation(Store.defaultBottomNavigationBarElevation, false);
setBottomNavBarSelectedSchemeColor(Store.defaultBottomNavBarSelectedItemSchemeColor, false);
setBottomNavBarUnselectedSchemeColor(Store.defaultBottomNavBarUnselectedSchemeColor, false);
setBottomNavBarMuteUnselected(Store.defaultBottomNavBarMuteUnselected, false);
setBottomNavShowSelectedLabels(Store.defaultBottomNavShowSelectedLabels, false);
setBottomNavShowUnselectedLabels(Store.defaultBottomNavShowUnselectedLabels, false);
//
// Menu, MenuBar and MenuButton SETTINGS.
setMenuRadius(Store.defaultMenuRadius, false);
setMenuElevation(Store.defaultMenuElevation, false);
setMenuOpacity(Store.defaultMenuOpacity, false);
setMenuPaddingStart(Store.defaultMenuPaddingStart, false);
setMenuPaddingEnd(Store.defaultMenuPaddingEnd, false);
setMenuPaddingTop(Store.defaultMenuPaddingTop, false);
setMenuPaddingBottom(Store.defaultMenuPaddingBottom, false);
setMenuSchemeColor(Store.defaultMenuSchemeColor, false);
//
setMenuBarBackgroundSchemeColor(Store.defaultMenuBarBackgroundSchemeColor, false);
setMenuBarRadius(Store.defaultMenuBarRadius, false);
setMenuBarElevation(Store.defaultMenuBarElevation, false);
setMenuBarShadowColor(Store.defaultMenuBarShadowColor, false);
//
setMenuItemBackgroundSchemeColor(Store.defaultMenuItemBackgroundSchemeColor, false);
setMenuItemForegroundSchemeColor(Store.defaultMenuItemForegroundSchemeColor, false);
setMenuIndicatorBackgroundSchemeColor(Store.defaultMenuIndicatorBackgroundSchemeColor, false);
setMenuIndicatorForegroundSchemeColor(Store.defaultMenuIndicatorForegroundSchemeColor, false);
setMenuIndicatorRadius(Store.defaultMenuIndicatorRadius, false);
//
// NavigationBar SETTINGS.
setNavBarBackgroundSchemeColor(Store.defaultNavBarBackgroundSchemeColor, false);
setNavBarOpacity(Store.defaultNavBarOpacity, false);
setNavBarElevation(Store.defaultNavigationBarElevation, false);
setNavBarHeight(Store.defaultNavBarHeight, false);
setNavBarSelectedIconSchemeColor(Store.defaultNavBarSelectedIconSchemeColor, false);
setNavBarSelectedLabelSchemeColor(Store.defaultNavBarSelectedLabelSchemeColor, false);
setNavBarUnselectedSchemeColor(Store.defaultNavBarUnselectedSchemeColor, false);
setNavBarMuteUnselected(Store.defaultNavBarMuteUnselected, false);
setNavBarIndicatorSchemeColor(Store.defaultNavBarIndicatorSchemeColor, false);
setNavBarIndicatorOpacity(Store.defaultNavBarIndicatorOpacity, false);
setNavBarIndicatorBorderRadius(Store.defaultNavBarIndicatorBorderRadius, false);
setNavBarLabelBehavior(Store.defaultNavBarLabelBehavior, false);
setAdaptiveRemoveNavigationBarTintLight(Store.defaultAdaptiveRemoveNavigationBarTintLight, false);
setAdaptiveRemoveNavigationBarTintDark(Store.defaultAdaptiveRemoveNavigationBarTintDark, false);
//
// NavigationRail SETTINGS.
setNavRailBackgroundSchemeColor(Store.defaultNavRailBackgroundSchemeColor, false);
setNavRailOpacity(Store.defaultNavRailOpacity, false);
setNavRailElevation(Store.defaultNavRailElevation, false);
setNavRailSelectedIconSchemeColor(Store.defaultNavRailSelectedIconSchemeColor, false);
setNavRailSelectedLabelSchemeColor(Store.defaultNavRailSelectedLabelSchemeColor, false);
setNavRailUnselectedSchemeColor(Store.defaultNavRailUnselectedSchemeColor, false);
setNavRailMuteUnselected(Store.defaultNavRailMuteUnselected, false);
setNavRailLabelType(Store.defaultNavRailLabelType, false);
setNavRailUseIndicator(Store.defaultNavRailUseIndicator, false);
setNavRailIndicatorSchemeColor(Store.defaultNavRailIndicatorSchemeColor, false);
setNavRailIndicatorOpacity(Store.defaultNavRailIndicatorOpacity, false);
setNavRailIndicatorBorderRadius(Store.defaultNavRailIndicatorBorderRadius, false);
//
// Button SETTINGS.
setTextButtonSchemeColor(Store.defaultTextButtonSchemeColor, false);
setTextButtonBorderRadius(Store.defaultTextButtonBorderRadius, false);
//
setFilledButtonSchemeColor(Store.defaultFilledButtonSchemeColor, false);
setFilledButtonBorderRadius(Store.defaultFilledButtonBorderRadius, false);
//
setElevatedButtonSchemeColor(Store.defaultElevatedButtonSchemeColor, false);
setElevatedButtonSecondarySchemeColor(Store.defaultElevatedButtonSecondarySchemeColor, false);
setElevatedButtonBorderRadius(Store.defaultElevatedButtonBorderRadius, false);
//
setOutlinedButtonSchemeColor(Store.defaultOutlinedButtonSchemeColor, false);
setOutlinedButtonOutlineSchemeColor(Store.defaultOutlinedButtonOutlineSchemeColor, false);
setOutlinedButtonBorderRadius(Store.defaultOutlinedButtonBorderRadius, false);
setOutlinedButtonBorderWidth(Store.defaultOutlinedButtonBorderWidth, false);
setOutlinedButtonPressedBorderWidth(Store.defaultOutlinedButtonPressedBorderWidth, false);
//
setToggleButtonsSchemeColor(Store.defaultToggleButtonsSchemeColor, false);
setToggleButtonsUnselectedSchemeColor(Store.defaultToggleButtonsUnselectedSchemeColor, false);
setToggleButtonsBorderSchemeColor(Store.defaultToggleButtonsBorderSchemeColor, false);
setToggleButtonsBorderRadius(Store.defaultToggleButtonsBorderRadius, false);
setToggleButtonsBorderWidth(Store.defaultToggleButtonsBorderWidth, false);
//
setSegmentedButtonSchemeColor(Store.defaultSegmentedButtonSchemeColor, false);
setSegmentedButtonUnselectedSchemeColor(Store.defaultSegmentedButtonUnselectedSchemeColor, false);
setSegmentedButtonUnselectedForegroundSchemeColor(Store.defaultSegmentedButtonUnselectedForegroundSchemeColor, false);
setSegmentedButtonBorderSchemeColor(Store.defaultSegmentedButtonBorderSchemeColor, false);
setSegmentedButtonBorderRadius(Store.defaultSegmentedButtonBorderRadius, false);
setSegmentedButtonBorderWidth(Store.defaultSegmentedButtonBorderWidth, false);
//
// Switch, CheckBox and Radio SETTINGS.
setUnselectedToggleIsColored(Store.defaultUnselectedToggleIsColored, false);
setSwitchSchemeColor(Store.defaultSwitchSchemeColor, false);
setSwitchThumbSchemeColor(Store.defaultSwitchThumbSchemeColor, false);
setSwitchThumbFixedSize(Store.defaultSwitchThumbFixedSize, false);
setCheckboxSchemeColor(Store.defaultCheckboxSchemeColor, false);
setRadioSchemeColor(Store.defaultRadioSchemeColor, false);
//
// Slider SETTINGS.
setSliderBaseSchemeColor(Store.defaultSliderBaseSchemeColor, false);
setSliderIndicatorSchemeColor(Store.defaultSliderIndicatorSchemeColor, false);
setSliderValueTinted(Store.defaultSliderValueTinted, false);
setSliderValueIndicatorType(Store.defaultSliderValueIndicatorType, false);
setSliderShowValueIndicator(Store.defaultSliderShowValueIndicator, false);
setSliderTrackHeight(Store.defaultSliderTrackHeight, false);
//
// Fab SETTINGS.
setFabUseShape(Store.defaultFabUseShape, false);
setFabAlwaysCircular(Store.defaultFabAlwaysCircular, false);
setFabBorderRadius(Store.defaultFabBorderRadius, false);
setFabSchemeColor(Store.defaultFabSchemeColor, false);
//
// Chip SETTINGS.
setChipSchemeColor(Store.defaultChipSchemeColor, false);
setChipSelectedSchemeColor(Store.defaultChipSelectedSchemeColor, false);
setChipDeleteIconSchemeColor(Store.defaultChipDeleteIconSchemeColor, false);
setChipBorderRadius(Store.defaultChipBorderRadius, false);
//
// SnackBar SETTINGS.
setSnackBarElevation(Store.defaultSnackBarElevation, false);
setSnackBarBorderRadius(Store.defaultSnackBarBorderRadius, false);
setSnackBarSchemeColor(Store.defaultSnackBarSchemeColor, false);
setSnackBarActionSchemeColor(Store.defaultSnackBarActionSchemeColor, false);
//
// PopupMenuButton SETTINGS.
setPopupMenuSchemeColor(Store.defaultPopupMenuSchemeColor, false);
setPopupMenuOpacity(Store.defaultPopupMenuOpacity, false);
setPopupMenuBorderRadius(Store.defaultPopupMenuBorderRadius, false);
setPopupMenuElevation(Store.defaultPopupMenuElevation, false);
//
// DropdownButton SETTINGS
setAlignedDropdown(Store.defaultAlignedDropdown, false);
//
// Card SETTINGS.
setCardBorderRadius(Store.defaultCardBorderRadius, false);
//
// Dialog SETTINGS.
setDialogBackgroundSchemeColor(Store.defaultDialogBackgroundSchemeColor, false);
setDatePickerHeaderBackgroundSchemeColor(Store.defaultDatePickerHeaderBackgroundSchemeColor, false);
setUseInputDecoratorThemeInDialogs(Store.defaultUseInputDecoratorThemeInDialogs, false);
setAdaptiveDialogRadius(Store.defaultAdaptiveDialogRadius, false);
setDialogBorderRadius(Store.defaultDialogBorderRadius, false);
setDialogBorderRadiusAdaptive(Store.defaultDialogBorderRadiusAdaptive, false);
setTimePickerDialogBorderRadius(Store.defaultTimePickerDialogBorderRadius, false);
setDatePickerDialogBorderRadius(Store.defaultDatePickerDialogBorderRadius, false);
setTimePickerElementRadius(Store.defaultTimePickerElementRadius, false);
setDialogElevation(Store.defaultDialogElevation, false);
//
// Tooltip SETTINGS.
setTooltipRadius(Store.defaultTooltipRadius, false);
setTooltipWaitDuration(Store.defaultTooltipWaitDuration, false);
setTooltipShowDuration(Store.defaultTooltipShowDuration, false);
setTooltipSchemeColor(Store.defaultTooltipSchemeColor, false);
setTooltipOpacity(Store.defaultTooltipOpacity, false);
//
// Surface tint colors.
setSurfaceTintLight(Store.defaultSurfaceTintLight, false);
setSurfaceTintDark(Store.defaultSurfaceTintDark, false);
//
// Not persisted, locally controlled popup selection for ThemeService,
// resets to actual used platform when settings are reset or app loaded.
setPlatform(null, false);
setFakeIsWeb(null, false);
// Only notify at end, if asked to do so, to do so is default.
if (doNotify) notifyListeners();
}