Skip to content

Commit 29a69b3

Browse files
committed
l10n対応
1 parent 92b5471 commit 29a69b3

File tree

3 files changed

+33
-13
lines changed

3 files changed

+33
-13
lines changed

lib/l10n/app_ja.arb

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -207,6 +207,15 @@
207207
"openInAnotherAccount": "別のアカウントで開く",
208208
"changeFullScreen": "フルスクリーンに切り替え",
209209
"shareNotes": "ノートを共有",
210+
"translateNotes": "ノートを翻訳",
211+
"translatedFrom": "{lang}から翻訳",
212+
"@translatedFrom": {
213+
"placeholders": {
214+
"lang": {
215+
"type": "String"
216+
}
217+
}
218+
},
210219
"deleteFavorite": "お気に入り解除",
211220
"notesAfterRenote": "リノート直後のノート",
212221
"deletedRecreate": "削除してなおす",

lib/view/common/misskey_notes/note_modal_sheet.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,7 @@ class NoteModalSheet extends ConsumerWidget {
176176
(account.meta?.translatorAvailable ?? false))
177177
ListTile(
178178
leading: const Icon(Icons.translate),
179-
title: const Text("ノートを翻訳"),
179+
title: Text(S.of(context).translateNotes),
180180
onTap: () {
181181
Navigator.of(context).pop();
182182
showModalBottomSheet<void>(

lib/view/common/misskey_notes/translate_note_modal_sheet.dart

Lines changed: 23 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import 'package:flutter/material.dart';
22
import 'package:flutter/services.dart';
3+
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
34
import 'package:flutter_riverpod/flutter_riverpod.dart';
45
import 'package:miria/model/account.dart';
56
import 'package:miria/providers.dart';
@@ -40,19 +41,29 @@ class TranslateNoteModalSheet extends ConsumerWidget {
4041
),
4142
);
4243

43-
return translatedNote.when(
44-
data: (translatedNote) => Padding(
45-
padding: const EdgeInsets.all(10),
46-
child: SingleChildScrollView(
47-
child: Column(
44+
return Scaffold(
45+
body: translatedNote.when(
46+
data: (translatedNote) => Padding(
47+
padding: const EdgeInsets.all(10),
48+
child: ListView(
4849
children: [
4950
ListTile(
50-
title: Text("${translatedNote.sourceLang}から翻訳"),
51+
title: Text(
52+
S.of(context).translatedFrom(translatedNote.sourceLang),
53+
),
5154
trailing: IconButton(
52-
onPressed: () => Clipboard.setData(
53-
ClipboardData(text: translatedNote.text),
54-
),
55-
tooltip: "コピー",
55+
onPressed: () {
56+
Clipboard.setData(
57+
ClipboardData(text: translatedNote.text),
58+
);
59+
ScaffoldMessenger.of(context).showSnackBar(
60+
SnackBar(
61+
content: Text(S.of(context).doneCopy),
62+
duration: const Duration(seconds: 1),
63+
),
64+
);
65+
},
66+
tooltip: S.of(context).copyContents,
5667
icon: const Icon(Icons.copy),
5768
),
5869
),
@@ -81,9 +92,9 @@ class TranslateNoteModalSheet extends ConsumerWidget {
8192
],
8293
),
8394
),
95+
error: (e, st) => Center(child: ErrorDetail(error: e, stackTrace: st)),
96+
loading: () => const Center(child: CircularProgressIndicator()),
8497
),
85-
error: (e, st) => Center(child: ErrorDetail(error: e, stackTrace: st)),
86-
loading: () => const Center(child: CircularProgressIndicator()),
8798
);
8899
}
89100
}

0 commit comments

Comments
 (0)