2022-09-26 13:51:18 +02:00
|
|
|
import 'package:flutter/material.dart';
|
|
|
|
|
2023-11-02 18:26:50 +01:00
|
|
|
ThemeData lightTheme(ColorScheme? dynamicColorScheme) => ThemeData(
|
2022-09-26 13:51:18 +02:00
|
|
|
useMaterial3: true,
|
2023-11-02 18:26:50 +01:00
|
|
|
colorScheme: dynamicColorScheme,
|
2022-09-26 13:51:18 +02:00
|
|
|
snackBarTheme: SnackBarThemeData(
|
|
|
|
behavior: SnackBarBehavior.floating,
|
|
|
|
shape: RoundedRectangleBorder(
|
|
|
|
borderRadius: BorderRadius.circular(5)
|
|
|
|
),
|
|
|
|
elevation: 4,
|
|
|
|
),
|
2023-11-02 18:26:50 +01:00
|
|
|
brightness: Brightness.light, listTileTheme: ListTileThemeData(
|
2022-10-21 11:26:14 +02:00
|
|
|
tileColor: Colors.transparent,
|
2022-11-05 02:35:35 +01:00
|
|
|
textColor: dynamicColorScheme != null ? dynamicColorScheme.onSurfaceVariant : const Color.fromRGBO(117, 117, 117, 1),
|
|
|
|
iconColor: dynamicColorScheme != null ? dynamicColorScheme.onSurfaceVariant : const Color.fromRGBO(117, 117, 117, 1),
|
2022-09-26 13:51:18 +02:00
|
|
|
),
|
2024-06-17 13:56:02 +02:00
|
|
|
cardTheme: CardTheme(
|
|
|
|
surfaceTintColor: dynamicColorScheme?.surfaceTint
|
|
|
|
),
|
|
|
|
popupMenuTheme: PopupMenuThemeData(
|
|
|
|
surfaceTintColor: dynamicColorScheme?.surfaceTint
|
|
|
|
),
|
|
|
|
navigationBarTheme: NavigationBarThemeData(
|
|
|
|
surfaceTintColor: dynamicColorScheme?.surfaceTint
|
2024-06-17 17:16:08 +02:00
|
|
|
),
|
2024-09-11 19:05:07 +02:00
|
|
|
dialogTheme: DialogTheme(
|
|
|
|
surfaceTintColor: dynamicColorScheme?.surfaceTint
|
|
|
|
),
|
2025-03-23 19:18:43 +01:00
|
|
|
// DISABLE PREDICTIVE BACK GESTURE
|
|
|
|
// pageTransitionsTheme: const PageTransitionsTheme(
|
|
|
|
// builders: {
|
|
|
|
// TargetPlatform.android: PredictiveBackPageTransitionsBuilder()
|
|
|
|
// }
|
|
|
|
// )
|
2022-09-26 13:51:18 +02:00
|
|
|
);
|
|
|
|
|
2023-11-02 18:26:50 +01:00
|
|
|
ThemeData darkTheme(ColorScheme? dynamicColorScheme) => ThemeData(
|
|
|
|
useMaterial3: true,
|
2023-01-26 22:43:00 +01:00
|
|
|
colorScheme: dynamicColorScheme,
|
2023-11-02 18:26:50 +01:00
|
|
|
snackBarTheme: SnackBarThemeData(
|
|
|
|
behavior: SnackBarBehavior.floating,
|
|
|
|
shape: RoundedRectangleBorder(
|
|
|
|
borderRadius: BorderRadius.circular(5)
|
|
|
|
),
|
|
|
|
elevation: 4,
|
|
|
|
),
|
2023-01-26 22:43:00 +01:00
|
|
|
brightness: Brightness.dark,
|
2022-11-05 02:35:35 +01:00
|
|
|
listTileTheme: ListTileThemeData(
|
2022-10-21 11:26:14 +02:00
|
|
|
tileColor: Colors.transparent,
|
2022-11-05 02:35:35 +01:00
|
|
|
textColor: dynamicColorScheme != null ? dynamicColorScheme.onSurfaceVariant : const Color.fromRGBO(187, 187, 187, 1),
|
|
|
|
iconColor: dynamicColorScheme != null ? dynamicColorScheme.onSurfaceVariant : const Color.fromRGBO(187, 187, 187, 1),
|
2022-09-26 13:51:18 +02:00
|
|
|
),
|
2024-06-17 13:56:02 +02:00
|
|
|
cardTheme: CardTheme(
|
|
|
|
surfaceTintColor: dynamicColorScheme?.surfaceTint
|
2024-06-17 13:56:59 +02:00
|
|
|
),
|
|
|
|
popupMenuTheme: PopupMenuThemeData(
|
|
|
|
surfaceTintColor: dynamicColorScheme?.surfaceTint
|
|
|
|
),
|
|
|
|
navigationBarTheme: NavigationBarThemeData(
|
|
|
|
surfaceTintColor: dynamicColorScheme?.surfaceTint
|
2024-06-17 17:16:08 +02:00
|
|
|
),
|
2024-09-11 19:05:07 +02:00
|
|
|
dialogTheme: DialogTheme(
|
|
|
|
surfaceTintColor: dynamicColorScheme?.surfaceTint
|
|
|
|
),
|
2025-03-23 19:18:43 +01:00
|
|
|
// DISABLE PREDICTIVE BACK GESTURE
|
|
|
|
// pageTransitionsTheme: const PageTransitionsTheme(
|
|
|
|
// builders: {
|
|
|
|
// TargetPlatform.android: PredictiveBackPageTransitionsBuilder()
|
|
|
|
// }
|
|
|
|
// )
|
2022-09-26 13:51:18 +02:00
|
|
|
);
|
|
|
|
|
2023-11-02 18:26:50 +01:00
|
|
|
ThemeData lightThemeOldVersions(MaterialColor primaryColor) => ThemeData(
|
|
|
|
useMaterial3: true,
|
|
|
|
colorSchemeSeed: primaryColor,
|
|
|
|
snackBarTheme: SnackBarThemeData(
|
|
|
|
behavior: SnackBarBehavior.floating,
|
|
|
|
shape: RoundedRectangleBorder(
|
|
|
|
borderRadius: BorderRadius.circular(5)
|
|
|
|
),
|
|
|
|
elevation: 4,
|
|
|
|
),
|
2022-09-26 13:51:18 +02:00
|
|
|
listTileTheme: const ListTileThemeData(
|
2022-10-21 11:26:14 +02:00
|
|
|
tileColor: Colors.transparent,
|
2022-11-05 02:35:35 +01:00
|
|
|
textColor: Color.fromRGBO(117, 117, 117, 1),
|
|
|
|
iconColor: Color.fromRGBO(117, 117, 117, 1),
|
2022-09-26 13:51:18 +02:00
|
|
|
),
|
2023-01-25 20:51:23 +01:00
|
|
|
brightness: Brightness.light,
|
2025-03-23 19:18:43 +01:00
|
|
|
// DISABLE PREDICTIVE BACK GESTURE
|
|
|
|
// pageTransitionsTheme: const PageTransitionsTheme(
|
|
|
|
// builders: {
|
|
|
|
// TargetPlatform.android: PredictiveBackPageTransitionsBuilder()
|
|
|
|
// }
|
|
|
|
// )
|
2022-09-26 13:51:18 +02:00
|
|
|
);
|
|
|
|
|
2023-11-02 18:26:50 +01:00
|
|
|
ThemeData darkThemeOldVersions(MaterialColor primaryColor) => ThemeData(
|
|
|
|
useMaterial3: true,
|
|
|
|
colorSchemeSeed: primaryColor,
|
|
|
|
snackBarTheme: SnackBarThemeData(
|
|
|
|
contentTextStyle: const TextStyle(
|
|
|
|
color: Colors.white
|
|
|
|
),
|
|
|
|
behavior: SnackBarBehavior.floating,
|
|
|
|
shape: RoundedRectangleBorder(
|
|
|
|
borderRadius: BorderRadius.circular(5)
|
|
|
|
),
|
|
|
|
elevation: 4,
|
|
|
|
),
|
2022-11-05 02:35:35 +01:00
|
|
|
listTileTheme: const ListTileThemeData(
|
|
|
|
tileColor: Colors.transparent,
|
|
|
|
textColor: Color.fromRGBO(187, 187, 187, 1),
|
|
|
|
iconColor: Color.fromRGBO(187, 187, 187, 1),
|
|
|
|
),
|
2022-09-26 13:51:18 +02:00
|
|
|
brightness: Brightness.dark,
|
2025-03-23 19:18:43 +01:00
|
|
|
// DISABLE PREDICTIVE BACK GESTURE
|
|
|
|
// pageTransitionsTheme: const PageTransitionsTheme(
|
|
|
|
// builders: {
|
|
|
|
// TargetPlatform.android: PredictiveBackPageTransitionsBuilder()
|
|
|
|
// }
|
|
|
|
// )
|
2022-09-26 13:51:18 +02:00
|
|
|
);
|