refactor(theme): update color references to use AppColors for consistency across components

This commit is contained in:
GitHub Copilot committed 2026-03-26 11:46:41 +01:00
1 parent 1b39aed8a5
commit 0c9d0e50ec
7 files changed
+37 -58

No files matched your search

+5 -5
View File
@@ -196,8 +196,8 @@ class _HeroCarouselState extends State<HeroCarousel>
begin: Alignment.topCenter,
end: Alignment.bottomCenter,
colors: [
Colors.black.withOpacity(0.3),
Colors.black.withOpacity(0.8),
AppColors.background.withOpacity(0.3),
AppColors.background.withOpacity(0.8),
],
),
),
@@ -223,7 +223,7 @@ class _HeroCarouselState extends State<HeroCarousel>
style: GoogleFonts.inter(
fontSize: 12,
fontWeight: FontWeight.w700,
color: Colors.black,
color: AppColors.primary,
letterSpacing: 0.5,
),
),
@@ -285,14 +285,14 @@ class _HeroCarouselState extends State<HeroCarousel>
child: Row(
mainAxisSize: MainAxisSize.min,
children: [
const Icon(Icons.play_arrow, color: Colors.black),
const Icon(Icons.play_arrow, color: AppColors.textPrimary),
const SizedBox(width: 8),
Text(
'Play',
style: GoogleFonts.inter(
fontSize: 16,
fontWeight: FontWeight.w700,
color: Colors.black,
color: AppColors.primary,
),
),
],
+6 -5
View File
@@ -1,4 +1,5 @@
import 'package:flutter/material.dart';
import '../theme/app_colors.dart';
class ThemedLoading extends StatelessWidget {
const ThemedLoading({super.key});
@@ -11,8 +12,8 @@ class ThemedLoading extends StatelessWidget {
begin: Alignment.topLeft,
end: Alignment.bottomRight,
colors: [
Color(0xFF0F1014), // Deep Space Dark
Color(0xFF181920), // Soft Eerie Black
AppColors.background,
AppColors.backgroundAlt,
],
),
),
@@ -21,15 +22,15 @@ class ThemedLoading extends StatelessWidget {
mainAxisSize: MainAxisSize.min,
children: [
const CircularProgressIndicator(
color: Color(0xFF007AFF), // Electric Blue (AppColors.primary)
color: AppColors.primary,
strokeWidth: 3,
),
const SizedBox(height: 16),
Text(
'Loading...',
style: TextStyle(
fontFamily: 'Outfit', // Match AppTheme
color: Colors.white.withOpacity(0.7),
fontFamily: 'Outfit',
color: AppColors.textSecondary,
fontSize: 14,
),
),
+5 -6
View File
@@ -26,14 +26,13 @@ class AdminPanel extends StatelessWidget {
extendBodyBehindAppBar: true,
body: Container(
decoration: const BoxDecoration(
gradient: RadialGradient(
center: Alignment.center,
radius: 1.5,
gradient: LinearGradient(
begin: Alignment.topCenter,
end: Alignment.bottomCenter,
colors: [
Color(0xFF2C2C2E), // Dark Grey (Apple TV Surface)
Color(0xFF000000), // Pure Black
AppColors.surfaceVariant,
AppColors.background,
],
stops: [0.0, 1.0],
),
),
child: const AdminContent(),
+3 -11
View File
@@ -54,15 +54,7 @@ class _LoginScreenState extends ConsumerState<LoginScreen> {
// 1. Cinematic Background (Abstract Gradient)
Container(
decoration: const BoxDecoration(
gradient: LinearGradient(
begin: Alignment.topLeft,
end: Alignment.bottomRight,
colors: [
Color(0xFF0D0D0D), // Almost Black
Color(0xFF1A1A1A), // Dark Grey
Color(0xFF0F0F0F), // Deep Dark
],
),
gradient: AppColors.backgroundGradient,
),
),
@@ -121,7 +113,7 @@ class _LoginScreenState extends ConsumerState<LoginScreen> {
gradient: const LinearGradient(
begin: Alignment.topLeft,
end: Alignment.bottomRight,
colors: [Color(0xFF2C2C2E), Color(0xFF000000)],
colors: [AppColors.surfaceVariant, AppColors.background],
),
borderRadius: BorderRadius.circular(32),
boxShadow: [
@@ -134,7 +126,7 @@ class _LoginScreenState extends ConsumerState<LoginScreen> {
),
child: const Icon(
Icons.play_arrow_rounded,
color: Colors.white,
color: AppColors.textPrimary,
size: 64,
),
),
@@ -45,14 +45,7 @@ class _DashboardScreenState extends ConsumerState<DashboardScreen> {
Positioned.fill(
child: Container(
decoration: const BoxDecoration(
gradient: LinearGradient(
begin: Alignment.topLeft,
end: Alignment.bottomRight,
colors: [
Color(0xFF0F1014), // Deep Space Blue-Grey
Color(0xFF181920), // Darker shade
],
),
gradient: AppColors.backgroundGradient,
),
),
),
@@ -29,7 +29,7 @@ class PlaylistSelectionScreen extends ConsumerWidget {
'Select Playlist',
style: GoogleFonts.roboto(
fontWeight: FontWeight.w600,
color: Colors.white,
color: AppColors.textPrimary,
),
),
backgroundColor: Colors.transparent,
@@ -38,12 +38,12 @@ class PlaylistSelectionScreen extends ConsumerWidget {
if (currentUser?.isAdmin ?? false)
IconButton(
icon:
const Icon(Icons.admin_panel_settings, color: Colors.white70),
const Icon(Icons.admin_panel_settings, color: AppColors.textSecondary),
onPressed: () => context.go('/admin'),
tooltip: 'Admin Panel',
),
IconButton(
icon: const Icon(Icons.logout, color: Colors.white70),
icon: const Icon(Icons.logout, color: AppColors.textSecondary),
onPressed: () async {
await ref.read(authProvider.notifier).logout();
if (context.mounted) {
@@ -56,14 +56,7 @@ class PlaylistSelectionScreen extends ConsumerWidget {
),
body: Container(
decoration: const BoxDecoration(
gradient: LinearGradient(
begin: Alignment.topLeft,
end: Alignment.bottomRight,
colors: [
Color(0xFF0F1014), // Deep Space Dark
Color(0xFF181920), // Soft Eerie Black
],
),
gradient: AppColors.backgroundGradient,
),
child: playlistsAsync.when(
loading: () => const Center(
@@ -80,7 +73,7 @@ class PlaylistSelectionScreen extends ConsumerWidget {
'Error loading playlists',
style: GoogleFonts.outfit(
fontSize: 18,
color: Colors.white70,
color: AppColors.textSecondary,
),
),
const SizedBox(height: 8),
@@ -88,7 +81,7 @@ class PlaylistSelectionScreen extends ConsumerWidget {
onPressed: () => ref.refresh(playlistsProvider),
style: ElevatedButton.styleFrom(
backgroundColor: AppColors.primary,
foregroundColor: Colors.white,
foregroundColor: AppColors.textPrimary,
),
child: Text('Retry', style: GoogleFonts.inter()),
),
+11 -10
View File
@@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:google_fonts/google_fonts.dart';
import 'dart:ui';
import '../../core/theme/app_colors.dart';
class MobileScaffold extends ConsumerWidget {
final Widget child;
@@ -19,19 +20,19 @@ class MobileScaffold extends ConsumerWidget {
Widget build(BuildContext context, WidgetRef ref) {
return Scaffold(
extendBody: true,
backgroundColor: Colors.black, // Base color
backgroundColor: AppColors.background,
body: Stack(
fit: StackFit.expand,
children: [
// Global Background
Container(
decoration: const BoxDecoration(
gradient: RadialGradient(
center: Alignment.center,
radius: 1.5,
gradient: LinearGradient(
begin: Alignment.topCenter,
end: Alignment.bottomCenter,
colors: [
Color(0xFF1C1C1E),
Color(0xFF000000),
AppColors.surfaceVariant,
AppColors.background,
],
),
),
@@ -46,10 +47,10 @@ class MobileScaffold extends ConsumerWidget {
filter: ImageFilter.blur(sigmaX: 20, sigmaY: 20),
child: Container(
decoration: BoxDecoration(
color: const Color(0xFF1C1C1E).withOpacity(0.85),
color: AppColors.surface.withOpacity(0.9),
border: Border(
top: BorderSide(
color: Colors.white.withOpacity(0.1),
color: AppColors.border,
width: 0.5,
),
),
@@ -60,8 +61,8 @@ class MobileScaffold extends ConsumerWidget {
backgroundColor: Colors.transparent,
type: BottomNavigationBarType.fixed,
elevation: 0,
selectedItemColor: Colors.white,
unselectedItemColor: Colors.white38,
selectedItemColor: AppColors.primary,
unselectedItemColor: AppColors.textSecondary,
selectedLabelStyle:
GoogleFonts.inter(fontWeight: FontWeight.w600, fontSize: 11),
unselectedLabelStyle: