90 lines
2.5 KiB
Dart
90 lines
2.5 KiB
Dart
/*import 'package:flutter/material.dart';
|
|
import 'theme_type.dart';
|
|
import 'package:google_fonts/google_fonts.dart';
|
|
|
|
class AppThemes {
|
|
static ThemeData getLightTheme(ThemeType type) {
|
|
final Color seedColor;
|
|
switch (type) {
|
|
case ThemeType.green:
|
|
seedColor = Colors.green;
|
|
break;
|
|
case ThemeType.orange:
|
|
seedColor = Colors.orange;
|
|
break;
|
|
case ThemeType.blue:
|
|
seedColor = Colors.blue;
|
|
break;
|
|
case ThemeType.violet:
|
|
seedColor = Colors.deepPurple;
|
|
break;
|
|
}
|
|
|
|
final colorScheme = ColorScheme.fromSeed(
|
|
seedColor: seedColor,
|
|
brightness: Brightness.light, // Explicitly set for a light theme
|
|
);
|
|
|
|
return ThemeData.from(
|
|
colorScheme: colorScheme,
|
|
useMaterial3: true, // Recommended for modern Flutter apps
|
|
textTheme: GoogleFonts.rubikTextTheme())
|
|
.copyWith(
|
|
scaffoldBackgroundColor: Colors.white,
|
|
bottomNavigationBarTheme: BottomNavigationBarThemeData(
|
|
backgroundColor: colorScheme.surface,
|
|
),
|
|
);
|
|
}
|
|
}*/
|
|
|
|
|
|
import 'package:flutter/material.dart';import 'theme_type.dart';
|
|
import 'package:google_fonts/google_fonts.dart';
|
|
class AppThemes {
|
|
static ThemeData getLightTheme(ThemeType type) {
|
|
final Color seedColor = _getSeedColor(type);
|
|
final colorScheme = ColorScheme.fromSeed(
|
|
seedColor: seedColor,
|
|
brightness: Brightness.light,
|
|
);
|
|
return ThemeData.from(
|
|
colorScheme: colorScheme,
|
|
useMaterial3: true,
|
|
textTheme: GoogleFonts.rubikTextTheme(),
|
|
).copyWith(
|
|
scaffoldBackgroundColor: Colors.white,
|
|
bottomNavigationBarTheme: BottomNavigationBarThemeData(
|
|
backgroundColor: colorScheme.surface,
|
|
),
|
|
);
|
|
}
|
|
static ThemeData getDarkTheme(ThemeType type) {
|
|
final Color seedColor = _getSeedColor(type);
|
|
final colorScheme = ColorScheme.fromSeed(
|
|
seedColor: seedColor,
|
|
brightness: Brightness.dark, // Use dark brightness
|
|
);
|
|
return ThemeData.from(
|
|
colorScheme: colorScheme,
|
|
useMaterial3: true,
|
|
textTheme: GoogleFonts.rubikTextTheme(
|
|
ThemeData(brightness: Brightness.dark).textTheme,
|
|
),
|
|
);
|
|
}
|
|
static Color _getSeedColor(ThemeType type) {
|
|
switch (type) {
|
|
case ThemeType.green:
|
|
return Colors.green;
|
|
case ThemeType.orange:
|
|
return Colors.orange;
|
|
case ThemeType.blue:
|
|
return Colors.blue;
|
|
case ThemeType.violet:
|
|
default:
|
|
return Colors.deepPurple;
|
|
}
|
|
}
|
|
}
|