Skip to content

Commit 1e419e2

Browse files
committed
refactor(ads): update demo ad widgets to use localization
- Replace hardcoded strings with localized versions in banner, interstitial, and native ad widgets - Add import for AppLocalizations in all affected files - Update text content to use localized strings from AppLocalizations
1 parent bd4efcb commit 1e419e2

File tree

3 files changed

+10
-8
lines changed

3 files changed

+10
-8
lines changed

lib/ads/widgets/demo_banner_ad_widget.dart

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import 'package:core/core.dart';
22
import 'package:flutter/material.dart';
3+
import 'package:flutter_news_app_mobile_client_full_source_code/l10n/app_localizations.dart';
34
import 'package:ui_kit/ui_kit.dart';
45

56
/// {@template demo_banner_ad_widget}
@@ -37,7 +38,7 @@ class DemoBannerAdWidget extends StatelessWidget {
3738
width: double.infinity,
3839
child: Center(
3940
child: Text(
40-
'BANNER AD (DEMO)',
41+
AppLocalizations.of(context).demoBannerAdText,
4142
style: theme.textTheme.titleMedium?.copyWith(
4243
color: theme.colorScheme.onSurfaceVariant,
4344
),

lib/ads/widgets/demo_interstitial_ad_dialog.dart

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import 'package:flutter/material.dart';
22
import 'package:go_router/go_router.dart';
3+
import 'package:flutter_news_app_mobile_client_full_source_code/l10n/app_localizations.dart';
34
import 'package:ui_kit/ui_kit.dart';
45

56
/// {@template demo_interstitial_ad_dialog}
@@ -25,15 +26,15 @@ class DemoInterstitialAdDialog extends StatelessWidget {
2526
mainAxisAlignment: MainAxisAlignment.center,
2627
children: [
2728
Text(
28-
'INTERSTITIAL AD (DEMO)',
29+
AppLocalizations.of(context).demoInterstitialAdText,
2930
style: theme.textTheme.titleLarge?.copyWith(
3031
color: theme.colorScheme.onSurface,
3132
),
3233
textAlign: TextAlign.center,
3334
),
3435
const SizedBox(height: AppSpacing.md),
3536
Text(
36-
'This is a full-screen advertisement placeholder.',
37+
AppLocalizations.of(context).demoInterstitialAdDescription,
3738
style: theme.textTheme.bodyMedium?.copyWith(
3839
color: theme.colorScheme.onSurfaceVariant,
3940
),

lib/ads/widgets/demo_native_ad_widget.dart

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import 'package:core/core.dart';
22
import 'package:flutter/material.dart';
3+
import 'package:flutter_news_app_mobile_client_full_source_code/l10n/app_localizations.dart';
34
import 'package:ui_kit/ui_kit.dart';
45

56
/// {@template demo_native_ad_widget}
@@ -10,17 +11,15 @@ import 'package:ui_kit/ui_kit.dart';
1011
/// {@endtemplate}
1112
class DemoNativeAdWidget extends StatelessWidget {
1213
/// {@macro demo_native_ad_widget}
13-
const DemoNativeAdWidget({
14-
this.headlineImageStyle,
15-
super.key,
16-
});
14+
const DemoNativeAdWidget({this.headlineImageStyle, super.key});
1715

1816
/// The user's preference for feed layout, used to determine the ad's visual size.
1917
final HeadlineImageStyle? headlineImageStyle;
2018

2119
@override
2220
Widget build(BuildContext context) {
2321
final theme = Theme.of(context);
22+
final l10n = AppLocalizations.of(context);
2423

2524
// Determine the height based on the headlineImageStyle, mimicking real ad widgets.
2625
final double adHeight = headlineImageStyle == HeadlineImageStyle.largeThumbnail
@@ -37,7 +36,7 @@ class DemoNativeAdWidget extends StatelessWidget {
3736
width: double.infinity,
3837
child: Center(
3938
child: Text(
40-
'NATIVE AD (DEMO)',
39+
l10n.demoNativeAdText,
4140
style: theme.textTheme.titleMedium?.copyWith(
4241
color: theme.colorScheme.onSurfaceVariant,
4342
),
@@ -48,3 +47,4 @@ class DemoNativeAdWidget extends StatelessWidget {
4847
);
4948
}
5049
}
50+

0 commit comments

Comments
 (0)