2023-07-06 17:18:41 +03:30
|
|
|
import 'package:flutter/material.dart';
|
2023-12-01 12:56:24 +03:30
|
|
|
import 'package:hiddify/core/theme/app_theme_mode.dart';
|
|
|
|
|
import 'package:hiddify/core/theme/theme_extensions.dart';
|
2023-10-24 11:26:57 +02:00
|
|
|
|
2023-09-06 12:56:30 +03:30
|
|
|
class AppTheme {
|
2024-03-19 08:49:04 +00:00
|
|
|
AppTheme(this.mode, this.fontFamily);
|
2023-10-24 11:26:57 +02:00
|
|
|
final AppThemeMode mode;
|
2023-09-06 12:56:30 +03:30
|
|
|
final String fontFamily;
|
|
|
|
|
|
2024-03-19 08:49:04 +00:00
|
|
|
ThemeData lightTheme(ColorScheme? lightColorScheme) {
|
2025-12-26 02:39:35 +03:00
|
|
|
final ColorScheme scheme = lightColorScheme ?? ColorScheme.fromSeed(seedColor: const Color(0xFF293CA0));
|
2024-03-19 08:49:04 +00:00
|
|
|
return ThemeData(
|
2023-07-06 17:18:41 +03:30
|
|
|
useMaterial3: true,
|
2024-03-19 08:49:04 +00:00
|
|
|
colorScheme: scheme,
|
2023-07-24 18:53:02 +03:30
|
|
|
fontFamily: fontFamily,
|
2024-03-19 08:49:04 +00:00
|
|
|
extensions: const <ThemeExtension<dynamic>>{
|
2023-09-06 12:56:30 +03:30
|
|
|
ConnectionButtonTheme.light,
|
|
|
|
|
},
|
2023-07-06 17:18:41 +03:30
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
2024-03-19 08:49:04 +00:00
|
|
|
ThemeData darkTheme(ColorScheme? darkColorScheme) {
|
|
|
|
|
final ColorScheme scheme = darkColorScheme ??
|
|
|
|
|
ColorScheme.fromSeed(
|
|
|
|
|
seedColor: const Color(0xFF293CA0),
|
|
|
|
|
brightness: Brightness.dark,
|
|
|
|
|
);
|
|
|
|
|
return ThemeData(
|
2023-07-06 17:18:41 +03:30
|
|
|
useMaterial3: true,
|
2024-03-19 08:49:04 +00:00
|
|
|
colorScheme: scheme,
|
2025-12-26 02:39:35 +03:00
|
|
|
scaffoldBackgroundColor: mode.trueBlack ? Colors.black : scheme.background,
|
2023-07-24 18:53:02 +03:30
|
|
|
fontFamily: fontFamily,
|
2024-03-19 08:49:04 +00:00
|
|
|
extensions: const <ThemeExtension<dynamic>>{
|
2023-09-06 12:56:30 +03:30
|
|
|
ConnectionButtonTheme.light,
|
|
|
|
|
},
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
}
|