feat(flutter): 应用克莱因蓝主题与印尼语适配

This commit is contained in:
Zhou Weidong committed 2026-10-17 15:58:17 +08:00
1 parent e1147cfcba
commit 10d448c8ba
31 files changed
+891 -521

No files matched your search

+14 -14
View File
@@ -6,6 +6,7 @@ import 'package:provider/provider.dart';
import '../../../core/config/locale_controller.dart';
import '../../../core/data/models/drama.dart';
import '../../../core/formatting/localized_content.dart';
import '../../../core/theme/app_colors.dart';
import '../../../core/widgets/remote_image.dart';
import '../../../l10n/app_localizations.dart';
@@ -30,7 +31,7 @@ class HomeQuickDrawer extends StatelessWidget {
static const _panel = Color(0xFF222225);
static const _card = Color(0xFF303033);
static const _orange = Color(0xFF2F7BFF);
static const _accent = AppColors.blueSoft;
@override
Widget build(BuildContext context) {
@@ -128,7 +129,7 @@ class HomeQuickDrawer extends StatelessWidget {
key: const Key('drawer-open-series'),
onPressed: onOpenSeries,
style: FilledButton.styleFrom(
backgroundColor: _orange,
backgroundColor: _accent,
foregroundColor: Colors.white,
),
icon: const Icon(Icons.play_arrow_rounded),
@@ -192,22 +193,21 @@ class HomeQuickDrawer extends StatelessWidget {
const SizedBox(height: 14),
_SectionCard(
title: l10n.appLanguage,
child: Row(
child: Wrap(
spacing: 8,
runSpacing: 8,
children: [
for (final (code, label) in [
('en', l10n.english),
('zh', l10n.simplifiedChinese),
]) ...[
Expanded(
child: ChoiceChip(
label: Text(label, maxLines: 1),
selected: languageCode == code,
onSelected: (_) =>
context.read<LocaleController>().select(code),
),
('id', l10n.bahasaIndonesia),
])
ChoiceChip(
label: Text(label, maxLines: 1),
selected: languageCode == code,
onSelected: (_) =>
context.read<LocaleController>().select(code),
),
if (code == 'en') const SizedBox(width: 8),
],
],
),
),
@@ -268,7 +268,7 @@ class _QuickAction extends StatelessWidget {
padding: const EdgeInsets.symmetric(vertical: 14, horizontal: 7),
child: Column(
children: [
Icon(icon, color: HomeQuickDrawer._orange, size: 25),
Icon(icon, color: HomeQuickDrawer._accent, size: 25),
const SizedBox(height: 6),
Text(
label,