Skip to content

Commit

Permalink
Merge PR #1777
Browse files Browse the repository at this point in the history
  • Loading branch information
elibon99 committed Feb 5, 2025
2 parents 682772b + ae1a111 commit 537c9dc
Show file tree
Hide file tree
Showing 57 changed files with 1,843 additions and 1,171 deletions.
2 changes: 1 addition & 1 deletion lib/about_page.dart
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ class AboutPage extends ConsumerWidget {
final l10n = AppLocalizations.of(context)!;
return ResponsiveDialog(
title: Text(l10n.s_about),
child: Padding(
builder: (context, _) => Padding(
padding: const EdgeInsets.symmetric(vertical: 32),
child: Column(
mainAxisSize: MainAxisSize.min,
Expand Down
2 changes: 1 addition & 1 deletion lib/app/views/reset_dialog.dart
Original file line number Diff line number Diff line change
Expand Up @@ -247,7 +247,7 @@ class _ResetDialogState extends ConsumerState<ResetDialog> {
child: Text(l10n.s_reset),
)
],
child: Padding(
builder: (context, _) => Padding(
padding: const EdgeInsets.symmetric(horizontal: 18.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
Expand Down
2 changes: 1 addition & 1 deletion lib/app/views/settings_page.dart
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ class SettingsPage extends ConsumerWidget {

return ResponsiveDialog(
title: Text(l10n.s_settings),
child: Column(
builder: (context, _) => Column(
mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Expand Down
4 changes: 2 additions & 2 deletions lib/fido/views/actions.dart
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ class FidoActions extends ConsumerWidget {
onInvoke: (intent) async {
final credential = intent.target;
final deleted = await withContext(
(context) => showBlurDialog<bool?>(
(context) => showDialog<bool?>(
context: context,
builder: (context) => DeleteCredentialDialog(
devicePath,
Expand Down Expand Up @@ -83,7 +83,7 @@ class FidoActions extends ConsumerWidget {
onInvoke: (intent) async {
final fingerprint = intent.target;
final deleted = await ref.read(withContextProvider)(
(context) => showBlurDialog<bool?>(
(context) => showDialog<bool?>(
context: context,
builder: (context) => DeleteFingerprintDialog(
devicePath,
Expand Down
55 changes: 29 additions & 26 deletions lib/fido/views/add_fingerprint_dialog.dart
Original file line number Diff line number Diff line change
Expand Up @@ -191,7 +191,7 @@ class _AddFingerprintDialogState extends ConsumerState<AddFingerprintDialog>
final progress = _samples == 0 ? 0.0 : _samples / (_samples + _remaining);
return ResponsiveDialog(
title: Text(l10n.s_add_fingerprint),
child: Padding(
builder: (context, _) => Padding(
padding: const EdgeInsets.only(top: 38, bottom: 4, right: 18, left: 18),
child: Column(
crossAxisAlignment: CrossAxisAlignment.center,
Expand Down Expand Up @@ -239,31 +239,34 @@ class _AddFingerprintDialogState extends ConsumerState<AddFingerprintDialog>
),
const SizedBox(height: 16),
Container(
constraints: const BoxConstraints(maxWidth: 360),
child: AppTextField(
focusNode: _nameFocus,
maxLength: 15,
inputFormatters: [limitBytesLength(15)],
buildCounter: buildByteCounterFor(_label),
autofocus: true,
decoration: AppInputDecoration(
border: const OutlineInputBorder(),
labelText: l10n.s_name,
prefixIcon: const Icon(Symbols.fingerprint),
),
onChanged: (value) {
setState(() {
_label = value.trim();
});
},
onSubmitted: (_) {
if (_label.isNotEmpty) {
_submit();
} else {
_nameFocus.requestFocus();
}
},
).init(),
constraints: const BoxConstraints(maxWidth: 460),
child: Padding(
padding: const EdgeInsets.only(right: 40),
child: AppTextField(
focusNode: _nameFocus,
maxLength: 15,
inputFormatters: [limitBytesLength(15)],
buildCounter: buildByteCounterFor(_label),
autofocus: true,
decoration: AppInputDecoration(
border: const OutlineInputBorder(),
labelText: l10n.s_name,
icon: const Icon(Symbols.fingerprint),
),
onChanged: (value) {
setState(() {
_label = value.trim();
});
},
onSubmitted: (_) {
if (_label.isNotEmpty) {
_submit();
} else {
_nameFocus.requestFocus();
}
},
).init(),
),
)
]
],
Expand Down
33 changes: 15 additions & 18 deletions lib/fido/views/delete_credential_dialog.dart
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,13 @@
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:material_symbols_icons/symbols.dart';

import '../../app/message.dart';
import '../../app/models.dart';
import '../../app/state.dart';
import '../../exception/cancellation_exception.dart';
import '../../widgets/responsive_dialog.dart';
import '../../widgets/basic_dialog.dart';
import '../models.dart';
import '../state.dart';

Expand All @@ -36,25 +37,21 @@ class DeleteCredentialDialog extends ConsumerWidget {
@override
Widget build(BuildContext context, WidgetRef ref) {
final l10n = AppLocalizations.of(context)!;
final label = credential.userName;

return ResponsiveDialog(
title: Text(l10n.s_delete_passkey),
child: Padding(
padding: const EdgeInsets.symmetric(horizontal: 18.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(l10n.p_warning_delete_passkey),
Text(l10n.l_passkey(label)),
]
.map((e) => Padding(
child: e,
padding: const EdgeInsets.symmetric(vertical: 8.0),
))
.toList(),
return BasicDialog(
icon: Icon(Symbols.delete),
title: Text(l10n.q_delete_passkey),
content: Column(crossAxisAlignment: CrossAxisAlignment.start, children: [
Text(
l10n.p_warning_delete_passkey,
style: Theme.of(context)
.textTheme
.bodyMedium
?.copyWith(fontWeight: FontWeight.w700),
),
),
const SizedBox(height: 8.0),
Text(l10n.p_warning_delete_passkey_desc),
]),
actions: [
TextButton(
onPressed: () async {
Expand Down
25 changes: 6 additions & 19 deletions lib/fido/views/delete_fingerprint_dialog.dart
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,12 @@
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:material_symbols_icons/symbols.dart';

import '../../app/message.dart';
import '../../app/models.dart';
import '../../app/state.dart';
import '../../widgets/responsive_dialog.dart';
import '../../widgets/basic_dialog.dart';
import '../models.dart';
import '../state.dart';

Expand All @@ -33,10 +34,10 @@ class DeleteFingerprintDialog extends ConsumerWidget {
@override
Widget build(BuildContext context, WidgetRef ref) {
final l10n = AppLocalizations.of(context)!;
final label = fingerprint.label;

return ResponsiveDialog(
title: Text(l10n.s_delete_fingerprint),
return BasicDialog(
icon: Icon(Symbols.delete),
title: Text(l10n.q_delete_fingerprint),
actions: [
TextButton(
onPressed: () async {
Expand All @@ -51,21 +52,7 @@ class DeleteFingerprintDialog extends ConsumerWidget {
child: Text(l10n.s_delete),
),
],
child: Padding(
padding: const EdgeInsets.symmetric(horizontal: 18.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(l10n.p_warning_delete_fingerprint),
Text(l10n.l_fingerprint(label)),
]
.map((e) => Padding(
padding: const EdgeInsets.symmetric(vertical: 8.0),
child: e,
))
.toList(),
),
),
content: Text(l10n.p_warning_delete_fingerprint),
);
}
}
38 changes: 15 additions & 23 deletions lib/fido/views/enterprise_attestation_dialog.dart
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:material_symbols_icons/symbols.dart';

import '../../app/message.dart';
import '../../app/models.dart';
import '../../app/state.dart';
import '../../widgets/responsive_dialog.dart';
import '../../widgets/basic_dialog.dart';
import '../state.dart';

class EnableEnterpriseAttestationDialog extends ConsumerWidget {
Expand All @@ -15,8 +16,9 @@ class EnableEnterpriseAttestationDialog extends ConsumerWidget {
@override
Widget build(BuildContext context, WidgetRef ref) {
final l10n = AppLocalizations.of(context)!;
return ResponsiveDialog(
title: Text(l10n.s_enable_ep_attestation),
return BasicDialog(
icon: Icon(Symbols.local_police),
title: Text(l10n.q_enable_ep_attestation),
actions: [
TextButton(
onPressed: () async {
Expand All @@ -31,27 +33,17 @@ class EnableEnterpriseAttestationDialog extends ConsumerWidget {
child: Text(l10n.s_enable),
),
],
child: Padding(
padding: const EdgeInsets.symmetric(horizontal: 18.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
l10n.p_enable_ep_attestation_desc,
style: Theme.of(context)
.textTheme
.bodyMedium
?.copyWith(fontWeight: FontWeight.w700),
),
Text(l10n.p_enable_ep_attestation_disable_with_factory_reset),
]
.map((e) => Padding(
padding: const EdgeInsets.symmetric(vertical: 8.0),
child: e,
))
.toList(),
content: Column(crossAxisAlignment: CrossAxisAlignment.start, children: [
Text(
l10n.p_enable_ep_attestation_desc,
style: Theme.of(context)
.textTheme
.bodyMedium
?.copyWith(fontWeight: FontWeight.w700),
),
),
const SizedBox(height: 8.0),
Text(l10n.p_enable_ep_attestation_disable_with_factory_reset),
]),
);
}
}
2 changes: 1 addition & 1 deletion lib/fido/views/key_actions.dart
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ Widget _fidoBuildActions(BuildContext context, DeviceNode node, FidoState state,
onTap: canEnableEnterpriseAttestation
? (context) {
Navigator.of(context).popUntil((route) => route.isFirst);
showBlurDialog(
showDialog(
context: context,
builder: (context) =>
EnableEnterpriseAttestationDialog(node.path),
Expand Down
21 changes: 12 additions & 9 deletions lib/fido/views/pin_dialog.dart
Original file line number Diff line number Diff line change
Expand Up @@ -116,13 +116,12 @@ class _FidoPinDialogState extends ConsumerState<FidoPinDialog> {
child: Text(l10n.s_save),
),
],
child: Padding(
builder: (context, _) => Padding(
padding: const EdgeInsets.symmetric(horizontal: 18.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
if (hasPin) ...[
Text(l10n.p_enter_current_pin_or_reset_no_puk),
AppTextField(
key: currentPin,
controller: _currentPinController,
Expand All @@ -142,7 +141,7 @@ class _FidoPinDialogState extends ConsumerState<FidoPinDialog> {
: '', // Prevents dialog resizing
errorText: _currentIsWrong ? _currentPinError : null,
errorMaxLines: 3,
prefixIcon: const Icon(Symbols.pin),
icon: const Icon(Symbols.pin),
suffixIcon: IconButton(
icon: Icon(_isObscureCurrent
? Symbols.visibility
Expand Down Expand Up @@ -170,11 +169,9 @@ class _FidoPinDialogState extends ConsumerState<FidoPinDialog> {
}
},
).init(),
// Used to add more spacing
const SizedBox(height: 0),
],
Text(hasPinComplexity
? l10n.p_enter_new_fido2_pin_complexity_active(
minPinLength, maxPinLength, 2, '123456')
: l10n.p_enter_new_fido2_pin(minPinLength, maxPinLength)),
AppTextField(
key: newPin,
controller: _newPinController,
Expand All @@ -189,9 +186,15 @@ class _FidoPinDialogState extends ConsumerState<FidoPinDialog> {
border: const OutlineInputBorder(),
labelText: l10n.s_new_pin,
enabled: newPinEnabled,
helperText: hasPinComplexity
? l10n.p_new_fido2_pin_complexity_active_requirements(
minPinLength, maxPinLength, 2, '123456')
: l10n.p_new_fido2_pin_requirements(
minPinLength, maxPinLength),
helperMaxLines: 7,
errorText: _newIsWrong ? _newPinError : null,
errorMaxLines: 3,
prefixIcon: const Icon(Symbols.pin),
icon: const Icon(Symbols.pin),
suffixIcon: ExcludeFocusTraversal(
excluding: !newPinEnabled,
child: IconButton(
Expand Down Expand Up @@ -233,7 +236,7 @@ class _FidoPinDialogState extends ConsumerState<FidoPinDialog> {
decoration: AppInputDecoration(
border: const OutlineInputBorder(),
labelText: l10n.s_confirm_pin,
prefixIcon: const Icon(Symbols.pin),
icon: const Icon(Symbols.pin),
suffixIcon: ExcludeFocusTraversal(
excluding: !confirmPinEnabled,
child: IconButton(
Expand Down
2 changes: 1 addition & 1 deletion lib/fido/views/pin_entry_form.dart
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ class _PinEntryFormState extends ConsumerState<PinEntryForm> {
: '', // Prevents dialog resizing
errorText: _pinIsWrong || authBlocked ? _getErrorText() : null,
errorMaxLines: 3,
prefixIcon: const Icon(Symbols.pin),
icon: const Icon(Symbols.pin),
suffixIcon: IconButton(
icon: Icon(
_isObscure ? Symbols.visibility : Symbols.visibility_off),
Expand Down
6 changes: 2 additions & 4 deletions lib/fido/views/rename_fingerprint_dialog.dart
Original file line number Diff line number Diff line change
Expand Up @@ -95,13 +95,11 @@ class _RenameAccountDialogState extends ConsumerState<RenameFingerprintDialog> {
child: Text(l10n.s_save),
),
],
child: Padding(
builder: (context, _) => Padding(
padding: const EdgeInsets.symmetric(horizontal: 18.0),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(l10n.q_rename_target(widget.fingerprint.label)),
Text(l10n.p_will_change_label_fp),
AppTextField(
autofocus: true,
controller: _labelController,
Expand All @@ -112,7 +110,7 @@ class _RenameAccountDialogState extends ConsumerState<RenameFingerprintDialog> {
decoration: AppInputDecoration(
border: const OutlineInputBorder(),
labelText: l10n.s_name,
prefixIcon: const Icon(Symbols.fingerprint),
icon: const Icon(Symbols.fingerprint),
),
onChanged: (_) {
setState(() {});
Expand Down
1 change: 1 addition & 0 deletions lib/home/views/home_screen.dart
Original file line number Diff line number Diff line change
Expand Up @@ -244,6 +244,7 @@ class _DeviceContent extends ConsumerWidget {
itemBuilder: (context) {
return [
PopupMenuItem(
enabled: false,
child: Center(
child: Wrap(
runSpacing: 8,
Expand Down
Loading

0 comments on commit 537c9dc

Please sign in to comment.