setThemeData method

ThemeData? setThemeData(
  1. BuildContext context
)

Assigning the Material theme

Implementation

ThemeData? setThemeData(BuildContext context) {
  // Retain the original theme
  App.baseTheme ??= Theme.of(context);

  ThemeData? themeData = _theme ?? onTheme();

  if (_allowChangeTheme) {
    // If a saved preference
    final theme = App.themeData;
    if (theme != null) {
      themeData = theme;
    }
  }

  if (themeData == null) {
    // possibly Cupertino can provide
    final cupertinoThemeData = _iOSTheme ?? oniOSTheme() ?? App.iOSThemeData;

    if (cupertinoThemeData == null) {
      // The original theme
      App.themeData ??= App.baseTheme;
      themeData = App.themeData;
    } else {
      // Cupertino values
      App.themeData = cupertinoThemeData;
      themeData = App.themeData;
    }
  } else {
    App.themeData = themeData;
  }
  return themeData;
}