fix(i18n): 去掉印尼语内容完整性过滤,缺失时回退中文

This commit is contained in:
Vicky committed 2026-10-31 00:02:53 +08:00
1 parent c307903c42
commit 3bc79ad8e2
12 files changed
+17 -123

No files matched your search

@@ -4,7 +4,6 @@ import 'package:flutter/material.dart';
import '../../../core/data/models/drama.dart';
import '../../../core/formatting/error_text.dart';
import '../../../core/formatting/content_locale_guard.dart';
import '../../../core/theme/app_colors.dart';
import '../../../core/widgets/empty_state.dart';
import '../../../l10n/app_localizations.dart';
@@ -34,18 +33,10 @@ class DiscoverSearchResults extends StatelessWidget {
@override
Widget build(BuildContext context) {
final l10n = AppLocalizations.of(context)!;
final visibleResults = visibleDramasForLocale(
results,
Localizations.localeOf(context).languageCode,
);
if (!loading && error == null && visibleResults.isNotEmpty) {
if (!loading && error == null && results.isNotEmpty) {
return SliverPadding(
padding: _topPadding,
sliver: SliverDramaGrid(
l10n: l10n,
dramas: visibleResults,
onOpen: onOpen,
),
sliver: SliverDramaGrid(l10n: l10n, dramas: results, onOpen: onOpen),
);
}
return SliverPadding(
@@ -7,7 +7,6 @@ import 'package:provider/provider.dart';
import '../../../core/data/models/drama.dart';
import '../../../core/data/services/category_controller.dart';
import '../../../core/formatting/content_locale_guard.dart';
import '../../../core/theme/app_dimens.dart';
import '../../../core/widgets/app_pull_to_refresh.dart';
import '../../../core/widgets/drama_grid_skeleton.dart';
@@ -78,10 +77,7 @@ class _HomeCategoryDramasState extends State<HomeCategoryDramas> {
final controller = context.watch<CategoryController>();
final categoryId = widget.lockedCategoryId ?? '';
final slot = categoryId.isEmpty ? null : controller.slotOf(categoryId);
final dramas = visibleDramasForLocale(
slot?.dramas ?? const <Drama>[],
Localizations.localeOf(context).languageCode,
);
final dramas = slot?.dramas ?? const <Drama>[];
return Column(
children: [
Expanded(
+3 -13
View File
@@ -12,7 +12,6 @@ import '../../../core/data/services/catalog_controller.dart';
import '../../../core/data/services/category_controller.dart';
import '../../../core/data/services/home_feed_controller.dart';
import '../../../core/data/services/wallet_controller.dart';
import '../../../core/formatting/content_locale_guard.dart';
import '../../../core/theme/app_colors.dart';
import '../../../core/theme/app_dimens.dart';
import '../../../core/widgets/app_pull_to_refresh.dart';
@@ -195,10 +194,7 @@ class _HomeFeedGridState extends State<HomeFeedGrid> {
mainAxisSpacing: AppDimens.homeGridRowGap,
);
}
final dramas = _dramasFor(
category,
Localizations.localeOf(context).languageCode,
);
final dramas = _dramasFor(category);
if (widget.feedController.loadingFirstPage && dramas.isEmpty) {
return const DramaGridSkeleton(
key: Key('home-grid-skeleton'),
@@ -328,14 +324,8 @@ class _HomeFeedGridState extends State<HomeFeedGrid> {
];
}
List<Drama> _dramasFor(
HomeGridCategoryShortcut category,
String languageCode,
) {
final dramas = visibleDramasForLocale(
widget.feedController.dramas,
languageCode,
);
List<Drama> _dramasFor(HomeGridCategoryShortcut category) {
final dramas = widget.feedController.dramas;
final categoryName = category.categoryName.toLowerCase();
if (categoryName.isEmpty) return dramas;
final matched = dramas
@@ -9,7 +9,6 @@ import '../../core/data/models/drama.dart';
import '../../core/data/models/home_feed.dart';
import '../../core/data/remote/catalog_api.dart';
import '../../core/data/services/category_controller.dart';
import '../../core/formatting/content_locale_guard.dart';
import '../../core/theme/app_colors.dart';
import '../../core/widgets/app_pull_to_refresh.dart';
import '../../core/widgets/empty_state.dart';
@@ -285,10 +284,7 @@ class _ChannelFeedState extends State<_ChannelFeed>
super.build(context);
final categories = context.watch<CategoryController>();
final slot = categories.slotOf(widget.categoryId);
final dramas = visibleDramasForLocale(
slot.dramas,
Localizations.localeOf(context).languageCode,
);
final dramas = slot.dramas;
final showCarousel = widget.isFeatured && widget.banners.isNotEmpty;
final bottomInset = MediaQuery.of(context).padding.bottom;
+1 -5
View File
@@ -13,7 +13,6 @@ import '../../core/data/services/download_controller.dart';
import '../../core/data/services/home_feed_controller.dart';
import '../../core/data/services/playlist_controller.dart';
import '../../core/data/services/wallet_controller.dart';
import '../../core/formatting/content_locale_guard.dart';
import '../../core/theme/app_colors.dart';
import '../../core/widgets/empty_state.dart';
import '../../l10n/app_localizations.dart';
@@ -299,10 +298,7 @@ class _RecommendPageState extends State<RecommendPage>
Widget _recommendFeed(BuildContext context) {
final feed = widget.feedController;
final dramas = visibleDramasForLocale(
widget.feedController.dramas,
Localizations.localeOf(context).languageCode,
);
final dramas = widget.feedController.dramas;
if (dramas.isNotEmpty) {
return PlayerPage(
key: const Key('recommend-feed-player'),
@@ -10,7 +10,6 @@ import '../../../core/data/models/drama.dart';
import '../../../core/data/remote/catalog_api.dart';
import '../../../core/data/services/all_dramas_controller.dart';
import '../../../core/data/services/home_feed_controller.dart';
import '../../../core/formatting/content_locale_guard.dart';
import '../../../core/theme/app_colors.dart';
import '../../../core/theme/app_dimens.dart';
import '../../../core/widgets/app_pull_to_refresh.dart';
@@ -108,10 +107,7 @@ class _AllDramasFilterGridState extends State<AllDramasFilterGrid> {
}
Widget _dramaList(AppLocalizations l10n, double itemExtent) {
final dramas = visibleDramasForLocale(
_dramas,
Localizations.localeOf(context).languageCode,
);
final dramas = _dramas;
return NotificationListener<ScrollNotification>(
onNotification: _onScroll,
child: AppPullToRefresh(
@@ -4,7 +4,6 @@ import 'package:flutter/material.dart';
import '../../../core/data/models/drama.dart';
import '../../../core/data/models/playlist_detail.dart';
import '../../../core/formatting/content_locale_guard.dart';
import '../../../core/theme/app_colors.dart';
import '../../../core/theme/app_dimens.dart';
import '../../../core/widgets/app_pull_to_refresh.dart';
@@ -158,10 +157,7 @@ class _PlaylistDetailPageState extends State<PlaylistDetailPage> {
}
Widget _body(double itemExtent) {
final visibleDramas = visibleDramasForLocale(
_dramas,
Localizations.localeOf(context).languageCode,
);
final visibleDramas = _dramas;
return CustomScrollView(
key: const Key('playlist-detail-scroll'),
physics: AppPullToRefresh.physics,
@@ -8,7 +8,6 @@ import '../../../core/data/models/playlist_detail.dart';
import '../../../core/data/services/category_controller.dart';
import '../../../core/data/services/home_feed_controller.dart';
import '../../../core/data/services/playlist_controller.dart';
import '../../../core/formatting/content_locale_guard.dart';
import '../../../core/theme/app_colors.dart';
import '../../../core/theme/app_dimens.dart';
import '../../../core/widgets/app_pull_to_refresh.dart';
@@ -44,8 +43,7 @@ class RecommendSectionsView extends StatelessWidget {
@override
Widget build(BuildContext context) {
final l10n = AppLocalizations.of(context)!;
final languageCode = Localizations.localeOf(context).languageCode;
final source = visibleDramasForLocale(feedController.dramas, languageCode);
final source = feedController.dramas;
final remote = playlists;
return AppPullToRefresh(
key: const Key('recommend-sections-refresh'),
@@ -165,10 +163,7 @@ class RecommendSectionsView extends StatelessWidget {
subtitle: playlist.localizedDescription(
Localizations.localeOf(context).languageCode,
),
dramas: visibleDramasForLocale(
playlist.dramas,
Localizations.localeOf(context).languageCode,
).take(_sectionPreviewCount).toList(),
dramas: playlist.dramas.take(_sectionPreviewCount).toList(),
onMore: () => onOpenPlaylist?.call(playlist),
),
);