From ca71e073740f33ac36d591db5e1a1be7a33bbfbf Mon Sep 17 00:00:00 2001 From: Udhay-Adithya Date: Sat, 19 Jul 2025 01:29:52 +0530 Subject: [PATCH] feat: add readOnly and obscureText properties to EnvironmentTriggerField --- lib/screens/common_widgets/env_trigger_field.dart | 7 +++++++ lib/widgets/field_auth.dart | 5 ++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/lib/screens/common_widgets/env_trigger_field.dart b/lib/screens/common_widgets/env_trigger_field.dart index a7e470e7..3432135f 100644 --- a/lib/screens/common_widgets/env_trigger_field.dart +++ b/lib/screens/common_widgets/env_trigger_field.dart @@ -17,6 +17,8 @@ class EnvironmentTriggerField extends StatefulWidget { this.decoration, this.optionsWidthFactor, this.autocompleteNoTrigger, + this.readOnly = false, + this.obscureText = false }) : assert( !(controller != null && initialValue != null), 'controller and initialValue cannot be simultaneously defined.', @@ -32,6 +34,8 @@ class EnvironmentTriggerField extends StatefulWidget { final InputDecoration? decoration; final double? optionsWidthFactor; final AutocompleteNoTrigger? autocompleteNoTrigger; + final bool readOnly; + final bool obscureText; @override State createState() => @@ -125,6 +129,9 @@ class EnvironmentTriggerFieldState extends State { onTapOutside: (event) { _focusNode.unfocus(); }, + readOnly: widget.readOnly, + obscureText: widget.obscureText + ); }, ); diff --git a/lib/widgets/field_auth.dart b/lib/widgets/field_auth.dart index 39d484fa..ccccd30e 100644 --- a/lib/widgets/field_auth.dart +++ b/lib/widgets/field_auth.dart @@ -58,8 +58,11 @@ class _AuthFieldState extends State { const SizedBox(height: 6), EnvironmentTriggerField( keyId: "auth-${widget.title ?? widget.hintText}-${Random.secure()}", - onChanged: widget.readOnly ? null : widget.onChanged, + onChanged: widget.onChanged, initialValue: widget.initialValue, + readOnly: widget.readOnly, + // TODO: Needs some new implementation + // obscureText: widget.isObscureText, style: kCodeStyle.copyWith( color: Theme.of(context).colorScheme.onSurface, fontSize: Theme.of(context).textTheme.bodyMedium?.fontSize,