diff --git a/lib/l10n/app_de.arb b/lib/l10n/app_de.arb index 4b1be79e..f4d7a3fc 100644 --- a/lib/l10n/app_de.arb +++ b/lib/l10n/app_de.arb @@ -55,6 +55,7 @@ "item": {} } }, + "s_none": null, "s_about": "Über", "s_algorithm": null, diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index 5cb5ed76..b433dbaf 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -55,6 +55,7 @@ "item": {} } }, + "s_none": "", "s_about": "About", "s_algorithm": "Algorithm", diff --git a/lib/l10n/app_fr.arb b/lib/l10n/app_fr.arb index 29849d8d..b667f00d 100644 --- a/lib/l10n/app_fr.arb +++ b/lib/l10n/app_fr.arb @@ -55,6 +55,7 @@ "item": {} } }, + "s_none": null, "s_about": "À propos", "s_algorithm": "Algorithme", diff --git a/lib/l10n/app_ja.arb b/lib/l10n/app_ja.arb index 94855958..d1f6d8cc 100644 --- a/lib/l10n/app_ja.arb +++ b/lib/l10n/app_ja.arb @@ -55,6 +55,7 @@ "item": {} } }, + "s_none": null, "s_about": "情報", "s_algorithm": "アルゴリズム", diff --git a/lib/l10n/app_pl.arb b/lib/l10n/app_pl.arb index 18d876f4..4ca19a9a 100644 --- a/lib/l10n/app_pl.arb +++ b/lib/l10n/app_pl.arb @@ -55,6 +55,7 @@ "item": {} } }, + "s_none": null, "s_about": "O aplikacji", "s_algorithm": "Algorytm", diff --git a/lib/piv/views/cert_info_view.dart b/lib/piv/views/cert_info_view.dart index 4007f6bf..60de44a7 100644 --- a/lib/piv/views/cert_info_view.dart +++ b/lib/piv/views/cert_info_view.dart @@ -90,8 +90,10 @@ class _InfoTable extends ConsumerWidget { class CertInfoTable extends ConsumerWidget { final CertInfo? certInfo; final SlotMetadata? metadata; + final bool alwaysIncludePrivate; - const CertInfoTable(this.certInfo, this.metadata, {super.key}); + const CertInfoTable(this.certInfo, this.metadata, + {super.key, this.alwaysIncludePrivate = false}); @override Widget build(BuildContext context, WidgetRef ref) { @@ -107,6 +109,8 @@ class CertInfoTable extends ConsumerWidget { metadata.keyType.getDisplayName(l10n), keys.slotMetadataKeyType ), + if (metadata == null && alwaysIncludePrivate) + l10n.s_private_key: (l10n.s_none, keys.slotMetadataKeyType), if (certInfo != null) ...{ l10n.s_public_key: ( certInfo.keyType?.getDisplayName(l10n) ?? l10n.s_unknown_type, diff --git a/lib/piv/views/piv_screen.dart b/lib/piv/views/piv_screen.dart index b52f2400..573b54f3 100644 --- a/lib/piv/views/piv_screen.dart +++ b/lib/piv/views/piv_screen.dart @@ -141,8 +141,11 @@ class _PivScreenState extends ConsumerState { const SizedBox(height: 16), if (selected.certInfo != null || selected.metadata != null) ...[ - CertInfoTable(selected.certInfo, - selected.metadata), + CertInfoTable( + selected.certInfo, + selected.metadata, + alwaysIncludePrivate: true, + ), const SizedBox(height: 16), ], if (selected.certInfo == null) diff --git a/lib/piv/views/slot_dialog.dart b/lib/piv/views/slot_dialog.dart index 193f6efc..a1a85c1e 100644 --- a/lib/piv/views/slot_dialog.dart +++ b/lib/piv/views/slot_dialog.dart @@ -87,7 +87,11 @@ class SlotDialog extends ConsumerWidget { if (certInfo != null || metadata != null) ...[ Padding( padding: const EdgeInsets.only(bottom: 16), - child: CertInfoTable(certInfo, metadata), + child: CertInfoTable( + certInfo, + metadata, + alwaysIncludePrivate: true, + ), ), ], if (certInfo == null) ...[