This commit is contained in:
Forrest 2026-08-05 21:57:06 -04:00
parent 2ce32cac4e
commit b6639fb1c9
26 changed files with 454 additions and 204 deletions

View file

@ -9,16 +9,18 @@ import 'tokens.dart';
/// (a close analog to the terminal fonts in Timbre's screenshots). The [accent]
/// is passed in so the theme rebuilds when album-art extraction changes it.
ThemeData buildTimbreTheme(Color accent) {
final mono = GoogleFonts.jetBrainsMonoTextTheme(
ThemeData.dark().textTheme,
).apply(
final brightness = TimbreColors.brightness;
final base = brightness == Brightness.light
? ThemeData.light()
: ThemeData.dark();
final mono = GoogleFonts.jetBrainsMonoTextTheme(base.textTheme).apply(
bodyColor: TimbreColors.foreground,
displayColor: TimbreColors.foreground,
);
final scheme = ColorScheme.fromSeed(
seedColor: accent,
brightness: Brightness.dark,
brightness: brightness,
surface: TimbreColors.surface,
).copyWith(
primary: accent,
@ -28,7 +30,7 @@ ThemeData buildTimbreTheme(Color accent) {
return ThemeData(
useMaterial3: true,
brightness: Brightness.dark,
brightness: brightness,
scaffoldBackgroundColor: TimbreColors.background,
canvasColor: TimbreColors.background,
colorScheme: scheme,
@ -38,7 +40,7 @@ ThemeData buildTimbreTheme(Color accent) {
splashFactory: NoSplash.splashFactory,
highlightColor: Colors.transparent,
// Keep chrome flat and quiet — the content (and accent) carry the look.
appBarTheme: const AppBarTheme(
appBarTheme: AppBarTheme(
backgroundColor: TimbreColors.background,
surfaceTintColor: Colors.transparent,
elevation: 0,