style(ui): 统一页面字号间距与状态样式

This commit is contained in:
Zhou Weidong committed 2026-10-19 10:21:28 +08:00
1 parent df5fbe5b08
commit c5bfd006fa
23 files changed
+542 -569

No files matched your search

+32 -19
View File
@@ -15,6 +15,7 @@ import '../../core/formatting/error_text.dart';
import '../../core/formatting/localized_date_time.dart';
import '../../core/platform/haptics.dart';
import '../../core/theme/app_colors.dart';
import '../../core/theme/app_dimens.dart';
import '../../core/theme/app_theme.dart';
import '../../core/widgets/auth_gate.dart';
import '../../core/widgets/empty_state.dart';
@@ -41,7 +42,10 @@ class WatchRecordsPage extends StatelessWidget {
foregroundColor: Colors.white,
title: Text(l10n.watchHistory),
),
body: signedIn ? const _WatchRecordsBody() : const AuthGatePanel(),
body: SafeArea(
top: false,
child: signedIn ? const _WatchRecordsBody() : const AuthGatePanel(),
),
),
);
}
@@ -207,16 +211,19 @@ class _RecordTile extends StatelessWidget {
if (drama == null || record.detailLoading) {
return Container(
key: ValueKey('watch-record-${record.dramaId}'),
height: 112,
height: AppDimens.watchPlaceholderHeight,
decoration: BoxDecoration(
color: AppColors.card,
borderRadius: BorderRadius.circular(12),
borderRadius: BorderRadius.circular(AppDimens.innerRadius),
),
child: const Center(
child: SizedBox(
width: 22,
height: 22,
child: CircularProgressIndicator(strokeWidth: 2),
child: const Padding(
padding: EdgeInsets.all(AppDimens.innerPadding),
child: Center(
child: SizedBox(
width: 22,
height: 22,
child: CircularProgressIndicator(strokeWidth: 2),
),
),
),
);
@@ -227,12 +234,12 @@ class _RecordTile extends StatelessWidget {
return Material(
key: ValueKey('watch-record-${record.dramaId}'),
color: AppColors.card,
borderRadius: BorderRadius.circular(12),
borderRadius: BorderRadius.circular(AppDimens.innerRadius),
clipBehavior: Clip.antiAlias,
child: InkWell(
onTap: onOpen,
child: Padding(
padding: const EdgeInsets.all(9),
padding: const EdgeInsets.all(AppDimens.innerPadding),
child: Row(
children: [
ClipRRect(
@@ -250,7 +257,7 @@ class _RecordTile extends StatelessWidget {
overflow: TextOverflow.ellipsis,
style: const TextStyle(
color: Colors.white,
fontSize: 15,
fontSize: AppDimens.listTitle,
fontWeight: FontWeight.w700,
),
),
@@ -260,15 +267,21 @@ class _RecordTile extends StatelessWidget {
key: ValueKey('watch-record-episode-${record.dramaId}'),
style: const TextStyle(
color: AppColors.muted,
fontSize: 12,
fontSize: AppDimens.caption,
),
),
const SizedBox(height: 7),
ClipRRect(
borderRadius: BorderRadius.circular(4),
borderRadius: BorderRadius.circular(
AppDimens.progressRadius,
),
child: LinearProgressIndicator(
minHeight: 4,
minHeight: AppDimens.progressHeight,
value: record.progress.fraction,
backgroundColor: Colors.white24,
valueColor: const AlwaysStoppedAnimation(
AppColors.blueSoft,
),
),
),
const SizedBox(height: 6),
@@ -279,7 +292,7 @@ class _RecordTile extends StatelessWidget {
),
style: const TextStyle(
color: AppColors.blueSoft,
fontSize: 11,
fontSize: AppDimens.caption,
),
),
if (record.progress.updatedAt != null)
@@ -292,8 +305,8 @@ class _RecordTile extends StatelessWidget {
),
key: ValueKey('watch-record-updated-${record.dramaId}'),
style: const TextStyle(
color: Color(0xFF8D8990),
fontSize: 11,
color: AppColors.muted,
fontSize: AppDimens.caption,
),
),
],
@@ -324,10 +337,10 @@ class _FailedRecordTile extends StatelessWidget {
final l10n = AppLocalizations.of(context)!;
return Container(
key: ValueKey('watch-record-failed-${record.dramaId}'),
padding: const EdgeInsets.all(14),
padding: const EdgeInsets.all(AppDimens.innerPadding),
decoration: BoxDecoration(
color: AppColors.card,
borderRadius: BorderRadius.circular(12),
borderRadius: BorderRadius.circular(AppDimens.innerRadius),
),
child: Row(
children: [