Fix: Show confirmation during edit when secret is updated
This commit is contained in:
parent
68de8b8d39
commit
20ab1d75d2
1 changed files with 16 additions and 18 deletions
|
@ -128,23 +128,7 @@ class _SetupEnterSecretKeyPageState extends State<SetupEnterSecretKeyPage> {
|
||||||
_showIncorrectDetailsDialog(context, message: message);
|
_showIncorrectDetailsDialog(context, message: message);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (widget.code == null) {
|
await _saveCode();
|
||||||
_saveCode();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
ButtonResult? result = await showChoiceActionSheet(
|
|
||||||
context,
|
|
||||||
title: context.l10n.warning,
|
|
||||||
body: context.l10n.confirmUpdatingkey,
|
|
||||||
firstButtonLabel: context.l10n.yes,
|
|
||||||
secondButtonAction: ButtonAction.cancel,
|
|
||||||
secondButtonLabel: context.l10n.cancel,
|
|
||||||
);
|
|
||||||
|
|
||||||
if (result == null) return;
|
|
||||||
if (result.action == ButtonAction.first) {
|
|
||||||
_saveCode();
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
child: Padding(
|
child: Padding(
|
||||||
padding: const EdgeInsets.symmetric(
|
padding: const EdgeInsets.symmetric(
|
||||||
|
@ -163,11 +147,25 @@ class _SetupEnterSecretKeyPageState extends State<SetupEnterSecretKeyPage> {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
void _saveCode() {
|
Future<void> _saveCode() async {
|
||||||
try {
|
try {
|
||||||
final account = _accountController.text.trim();
|
final account = _accountController.text.trim();
|
||||||
final issuer = _issuerController.text.trim();
|
final issuer = _issuerController.text.trim();
|
||||||
final secret = _secretController.text.trim().replaceAll(' ', '');
|
final secret = _secretController.text.trim().replaceAll(' ', '');
|
||||||
|
if (widget.code != null && widget.code!.secret != secret) {
|
||||||
|
ButtonResult? result = await showChoiceActionSheet(
|
||||||
|
context,
|
||||||
|
title: context.l10n.warning,
|
||||||
|
body: context.l10n.confirmUpdatingkey,
|
||||||
|
firstButtonLabel: context.l10n.yes,
|
||||||
|
secondButtonAction: ButtonAction.cancel,
|
||||||
|
secondButtonLabel: context.l10n.cancel,
|
||||||
|
);
|
||||||
|
if (result == null) return;
|
||||||
|
if (result.action != ButtonAction.first) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
final Code newCode = widget.code == null
|
final Code newCode = widget.code == null
|
||||||
? Code.fromAccountAndSecret(
|
? Code.fromAccountAndSecret(
|
||||||
account,
|
account,
|
||||||
|
|
Loading…
Reference in a new issue