Skip to content

Commit 4e65f1d

Browse files
committed
intl: Convert strings in about_zulip.dart to pull from translations
This commit showcases how to add new translation entries as well as how to insert them into widget rendering code.
1 parent 2595713 commit 4e65f1d

File tree

2 files changed

+22
-4
lines changed

2 files changed

+22
-4
lines changed

assets/l10n/app_en.arb

+16
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,20 @@
11
{
2+
"aboutPageTitle": "About Zulip",
3+
"@aboutPageTitle": {
4+
"description": "Title for About Zulip page"
5+
},
6+
"aboutPageAppVersion": "App version",
7+
"@aboutPageAppVersion": {
8+
"description": "Label for Zulip app version in About Zulip page"
9+
},
10+
"aboutPageOpenSourceLicenses": "Open-source licenses",
11+
"@aboutPageOpenSourceLicenses": {
12+
"description": "Section heading in About Zulip page to navigate to Open-source Licenses page"
13+
},
14+
"aboutPageTapToView": "Tap to view",
15+
"@aboutPageTapToView": {
16+
"description": "Button label in About Zulip page to navigate to Open-source Licenses page"
17+
},
218
"chooseAccountPageTitle": "Choose account",
319
"@chooseAccountPageTitle": {
420
"description": "Title for ChooseAccountPage"

lib/widgets/about_zulip.dart

+6-4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import 'package:flutter/material.dart';
2+
import 'package:flutter_gen/gen_l10n/zulip_localizations.dart';
23
import 'package:package_info_plus/package_info_plus.dart';
34

45
import 'page.dart';
@@ -30,8 +31,9 @@ class _AboutZulipPageState extends State<AboutZulipPage> {
3031

3132
@override
3233
Widget build(BuildContext context) {
34+
final zulipLocalizations = ZulipLocalizations.of(context);
3335
return Scaffold(
34-
appBar: AppBar(title: const Text("About Zulip")),
36+
appBar: AppBar(title: Text(zulipLocalizations.aboutPageTitle)),
3537
body: SingleChildScrollView(
3638
child: SafeArea(
3739
minimum: const EdgeInsets.all(8), // ListView pads vertical
@@ -40,11 +42,11 @@ class _AboutZulipPageState extends State<AboutZulipPage> {
4042
constraints: const BoxConstraints(maxWidth: 400),
4143
child: Column(mainAxisAlignment: MainAxisAlignment.center, children: [
4244
ListTile(
43-
title: const Text('App version'),
45+
title: Text(zulipLocalizations.aboutPageAppVersion),
4446
subtitle: Text(_packageInfo?.version ?? '(…)')),
4547
ListTile(
46-
title: const Text('Open-source licenses'),
47-
subtitle: const Text('Tap to view'),
48+
title: Text(zulipLocalizations.aboutPageOpenSourceLicenses),
49+
subtitle: Text(zulipLocalizations.aboutPageTapToView),
4850
onTap: () {
4951
// TODO(upstream?): This route and its child routes (pushed
5052
// when you tap a package to view its licenses) can't be

0 commit comments

Comments
 (0)