Skip to content

Commit

Permalink
patch: autocompletado en login (#43)
Browse files Browse the repository at this point in the history
Realmente no tengo idea si esto era un problema en Android, pero si lo era acá esta el fix :D

Co-authored-by: Tomás L <[email protected]>
  • Loading branch information
Im-Fran and XhrdTLS committed Oct 16, 2023
1 parent 1a0e9be commit c1aba8a
Show file tree
Hide file tree
Showing 2 changed files with 43 additions and 31 deletions.
71 changes: 40 additions & 31 deletions lib/screens/login_screen/login_screen.dart
Original file line number Diff line number Diff line change
Expand Up @@ -143,37 +143,46 @@ class _LoginScreenState extends State<LoginScreen> {
),
),
Container(height: constraints.maxHeight * 0.1),
LoginTextFormField(
controller: _correoController,
hintText: '[email protected]',
labelText: 'Correo UTEM',
textCapitalization: TextCapitalization.none,
keyboardType: TextInputType.emailAddress,
inputFormatters: [
FilteringTextInputFormatter.deny(RegExp(" ")),
],
icon: Icons.person,
validator: (String value) {
if (value.isEmpty) {
return 'Debe ingresar un correo UTEM';
} else if (value.contains("@") &&
!value.endsWith("@utem.cl")) {
return 'Debe ingresar un correo UTEM';
}
},
),
LoginTextFormField(
controller: _contraseniaController,
hintText: '• • • • • • • • •',
labelText: 'Contraseña',
textCapitalization: TextCapitalization.none,
icon: Icons.lock,
obscureText: true,
validator: (String value) {
if (value.isEmpty) {
return 'Debe ingresar una contraseña';
}
},
AutofillGroup(
child: Column(
children: [
LoginTextFormField(
controller: _correoController,
hintText: '[email protected]',
labelText: 'Correo UTEM',
textCapitalization: TextCapitalization.none,
keyboardType: TextInputType.emailAddress,
inputFormatters: [
FilteringTextInputFormatter.deny(
RegExp(" ")),
],
icon: Icons.person,
autofillHints: [AutofillHints.username],
validator: (String value) {
if (value.isEmpty) {
return 'Debe ingresar un correo UTEM';
} else if (value.contains("@") &&
!value.endsWith("@utem.cl")) {
return 'Debe ingresar un correo UTEM';
}
},
),
LoginTextFormField(
controller: _contraseniaController,
hintText: '• • • • • • • • •',
labelText: 'Contraseña',
textCapitalization: TextCapitalization.none,
icon: Icons.lock,
obscureText: true,
autofillHints: [AutofillHints.password],
validator: (String value) {
if (value.isEmpty) {
return 'Debe ingresar una contraseña';
}
},
)
],
),
),
TextButton(
onPressed: () => _login(),
Expand Down
3 changes: 3 additions & 0 deletions lib/widgets/login_text_form_field.dart
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ class LoginTextFormField extends StatefulWidget {
this.keyboardType,
this.controller,
this.inputFormatters,
this.autofillHints,
}) : super(key: key);

final String? hintText, labelText;
Expand All @@ -27,6 +28,7 @@ class LoginTextFormField extends StatefulWidget {
final bool obscureText;
final TextEditingController? controller;
final List<TextInputFormatter>? inputFormatters;
final List<String>? autofillHints;

@override
_LoginTextFormFieldState createState() => _LoginTextFormFieldState();
Expand Down Expand Up @@ -55,6 +57,7 @@ class _LoginTextFormFieldState extends State<LoginTextFormField> {
textCapitalization: widget.textCapitalization!,
obscureText: widget.obscureText,
inputFormatters: widget.inputFormatters,
autofillHints: widget.autofillHints,
decoration: InputDecoration(
enabledBorder: OutlineInputBorder(
borderRadius: BorderRadius.circular(25),
Expand Down

0 comments on commit c1aba8a

Please sign in to comment.