mirror of
https://github.com/R0m1k3/xtremflow.git
synced 2026-10-12 01:36:20 +02:00
fix: resolve all compile errors from Stitch theme merge
- Add missing AppTheme animation constants (durationSm/Md/Lg/Xl, curveSmooth) to satisfy remote widget references. - Replace deprecated GlassContainer(opacity:) with .glass()/.floating()/.base() in login_screen, live_tv_tab, mobile_live_tv_tab, player_screen, dashboard_screen. - Fix const-eval errors by removing const from BorderSide/Text/BoxDecoration using AppColors.focusColor and AppColors.border (runtime getters). - Fix subtitle_service.dart: padEnd → padRight (Dart String API). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
1 parent
60228f5576
commit
b985f11704
7 files changed
+14
-14
No files matched your search
@@ -31,7 +31,12 @@ class AppTheme {
|
||||
// ============ ANIMATION ============
|
||||
static const Duration durationFast = Duration(milliseconds: 200);
|
||||
static const Duration durationNormal = Duration(milliseconds: 300);
|
||||
static const Duration durationSm = Duration(milliseconds: 200);
|
||||
static const Duration durationMd = Duration(milliseconds: 300);
|
||||
static const Duration durationLg = Duration(milliseconds: 400);
|
||||
static const Duration durationXl = Duration(milliseconds: 500);
|
||||
static const Curve curveDefault = Curves.fastOutSlowIn;
|
||||
static const Curve curveSmooth = Curves.fastOutSlowIn;
|
||||
|
||||
// ============ TYPOGRAPHY HELPERS ============
|
||||
static TextStyle _spaceGrotesk({
|
||||
|
||||
@@ -558,7 +558,7 @@ class _UsersTab extends ConsumerWidget {
|
||||
.withOpacity(0.2),
|
||||
borderRadius: BorderRadius.circular(50),
|
||||
),
|
||||
child: const Text(
|
||||
child: Text(
|
||||
'ADMIN',
|
||||
style: TextStyle(
|
||||
fontSize: 10,
|
||||
|
||||
@@ -163,11 +163,10 @@ class _LoginScreenState extends ConsumerState<LoginScreen> {
|
||||
const SizedBox(height: 48),
|
||||
|
||||
// Login Form Container
|
||||
GlassContainer(
|
||||
GlassContainer.floating(
|
||||
width: 500,
|
||||
padding: const EdgeInsets.all(48), // Spacious padding
|
||||
borderRadius: 24,
|
||||
opacity: 0.7,
|
||||
child: Form(
|
||||
key: _formKey,
|
||||
child: Column(
|
||||
@@ -332,7 +331,7 @@ class _LoginScreenState extends ConsumerState<LoginScreen> {
|
||||
),
|
||||
focusedBorder: OutlineInputBorder(
|
||||
borderRadius: BorderRadius.circular(12),
|
||||
borderSide: const BorderSide(color: AppColors.focusColor, width: 2),
|
||||
borderSide: BorderSide(color: AppColors.focusColor, width: 2),
|
||||
),
|
||||
contentPadding:
|
||||
const EdgeInsets.symmetric(horizontal: 20, vertical: 20),
|
||||
|
||||
@@ -170,7 +170,7 @@ class SubtitleService {
|
||||
final minutes = int.parse(parts[1]);
|
||||
final secondsParts = parts[2].split('.');
|
||||
final seconds = int.parse(secondsParts[0]);
|
||||
final milliseconds = int.parse(secondsParts[1].padEnd(3, '0'));
|
||||
final milliseconds = int.parse(secondsParts[1].padRight(3, '0'));
|
||||
|
||||
return Duration(
|
||||
hours: hours,
|
||||
|
||||
@@ -99,9 +99,8 @@ class _LiveTVTabState extends ConsumerState<LiveTVTab>
|
||||
// HEADER (Glass)
|
||||
Padding(
|
||||
padding: const EdgeInsets.fromLTRB(24, 16, 24, 16),
|
||||
child: GlassContainer(
|
||||
child: GlassContainer.glass(
|
||||
borderRadius: 16,
|
||||
opacity: 0.6,
|
||||
padding:
|
||||
const EdgeInsets.symmetric(horizontal: 20, vertical: 12),
|
||||
child: Row(
|
||||
@@ -288,9 +287,8 @@ class _LiveTVTabState extends ConsumerState<LiveTVTab>
|
||||
});
|
||||
},
|
||||
borderRadius: 16,
|
||||
child: GlassContainer(
|
||||
child: GlassContainer.base(
|
||||
borderRadius: 16,
|
||||
opacity: 0.2, // Darker glass
|
||||
padding: const EdgeInsets.all(0),
|
||||
child: Stack(
|
||||
children: [
|
||||
|
||||
@@ -144,9 +144,8 @@ class _MobileLiveTVTabState extends ConsumerState<MobileLiveTVTab> {
|
||||
// Header & Search
|
||||
Padding(
|
||||
padding: const EdgeInsets.all(16),
|
||||
child: GlassContainer(
|
||||
child: GlassContainer.glass(
|
||||
borderRadius: 16,
|
||||
opacity: 0.1,
|
||||
padding:
|
||||
const EdgeInsets.symmetric(horizontal: 16, vertical: 8),
|
||||
child: Row(
|
||||
@@ -352,9 +351,8 @@ class _MobileChannelTile extends StatelessWidget {
|
||||
? '/api/xtream/${channel.streamIcon}'
|
||||
: null;
|
||||
|
||||
return GlassContainer(
|
||||
return GlassContainer.glass(
|
||||
borderRadius: 12,
|
||||
opacity: 0.15,
|
||||
padding: EdgeInsets.zero,
|
||||
child: InkWell(
|
||||
onTap: onTap,
|
||||
|
||||
@@ -42,7 +42,7 @@ class MobileScaffold extends ConsumerWidget {
|
||||
],
|
||||
),
|
||||
bottomNavigationBar: Container(
|
||||
decoration: const BoxDecoration(
|
||||
decoration: BoxDecoration(
|
||||
color: AppColors.surface,
|
||||
border: Border(
|
||||
top: BorderSide(
|
||||
|
||||
Reference in new issue
Block a user