From 7a7128be579f252508a07ae230dc72ca5b116126 Mon Sep 17 00:00:00 2001 From: geronimol <56521222+geronimol@users.noreply.github.com> Date: Thu, 13 Mar 2025 13:10:08 -0300 Subject: [PATCH 1/2] feat: allow the date picker dialog to be opened programmatically --- example/pubspec.lock | 16 ++++++++-------- .../fields/form_builder_date_time_picker.dart | 8 +++++--- pubspec.lock | 12 ++++++------ 3 files changed, 19 insertions(+), 17 deletions(-) diff --git a/example/pubspec.lock b/example/pubspec.lock index 8107130b4..404dd037a 100644 --- a/example/pubspec.lock +++ b/example/pubspec.lock @@ -45,10 +45,10 @@ packages: dependency: transitive description: name: fake_async - sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" + sha256: "6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc" url: "https://pub.dev" source: hosted - version: "1.3.3" + version: "1.3.2" flutter: dependency: "direct main" description: flutter @@ -91,18 +91,18 @@ packages: dependency: "direct main" description: name: intl - sha256: "3df61194eb431efc39c4ceba583b95633a403f46c9fd341e550ce0bfa50e9aa5" + sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf url: "https://pub.dev" source: hosted - version: "0.20.2" + version: "0.19.0" leak_tracker: dependency: transitive description: name: leak_tracker - sha256: "6bb818ecbdffe216e81182c2f0714a2e62b593f4a4f13098713ff1685dfb6ab0" + sha256: c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec url: "https://pub.dev" source: hosted - version: "10.0.9" + version: "10.0.8" leak_tracker_flutter_testing: dependency: transitive description: @@ -224,10 +224,10 @@ packages: dependency: transitive description: name: vm_service - sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02 + sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14" url: "https://pub.dev" source: hosted - version: "15.0.0" + version: "14.3.1" sdks: dart: ">=3.7.0 <4.0.0" flutter: ">=3.29.0" diff --git a/lib/src/fields/form_builder_date_time_picker.dart b/lib/src/fields/form_builder_date_time_picker.dart index cc378b2a2..81884718e 100644 --- a/lib/src/fields/form_builder_date_time_picker.dart +++ b/lib/src/fields/form_builder_date_time_picker.dart @@ -124,6 +124,8 @@ class FormBuilderDateTimePicker extends FormBuilderFieldDecoration { final bool barrierDismissible; /// Creates field for `Date`, `Time` and `DateTime` input + /// + /// The picker can be programmatically opened using the [showPicker] method. FormBuilderDateTimePicker({ super.key, required super.name, @@ -194,7 +196,7 @@ class FormBuilderDateTimePicker extends FormBuilderFieldDecoration { this.barrierDismissible = true, }) : super( builder: (FormFieldState field) { - final state = field as _FormBuilderDateTimePickerState; + final state = field as FormBuilderDateTimePickerState; return FocusTraversalGroup( policy: ReadingOrderTraversalPolicy(), @@ -239,10 +241,10 @@ class FormBuilderDateTimePicker extends FormBuilderFieldDecoration { @override FormBuilderFieldDecorationState - createState() => _FormBuilderDateTimePickerState(); + createState() => FormBuilderDateTimePickerState(); } -class _FormBuilderDateTimePickerState +class FormBuilderDateTimePickerState extends FormBuilderFieldDecorationState { late TextEditingController _textFieldController; diff --git a/pubspec.lock b/pubspec.lock index 0e6bb7614..0fe23277c 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -45,10 +45,10 @@ packages: dependency: transitive description: name: fake_async - sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" + sha256: "6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc" url: "https://pub.dev" source: hosted - version: "1.3.3" + version: "1.3.2" flutter: dependency: "direct main" description: flutter @@ -79,10 +79,10 @@ packages: dependency: transitive description: name: leak_tracker - sha256: "6bb818ecbdffe216e81182c2f0714a2e62b593f4a4f13098713ff1685dfb6ab0" + sha256: c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec url: "https://pub.dev" source: hosted - version: "10.0.9" + version: "10.0.8" leak_tracker_flutter_testing: dependency: transitive description: @@ -204,10 +204,10 @@ packages: dependency: transitive description: name: vm_service - sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02 + sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14" url: "https://pub.dev" source: hosted - version: "15.0.0" + version: "14.3.1" sdks: dart: ">=3.7.0 <4.0.0" flutter: ">=3.29.0" From b09599cc9e4db35677fd31653cd8779a9448f704 Mon Sep 17 00:00:00 2001 From: geronimol <56521222+geronimol@users.noreply.github.com> Date: Fri, 14 Mar 2025 17:18:56 -0300 Subject: [PATCH 2/2] feat: allow the date picker dialog to be opened programmatically --- lib/src/fields/form_builder_date_time_picker.dart | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/src/fields/form_builder_date_time_picker.dart b/lib/src/fields/form_builder_date_time_picker.dart index 81884718e..2879e1693 100644 --- a/lib/src/fields/form_builder_date_time_picker.dart +++ b/lib/src/fields/form_builder_date_time_picker.dart @@ -124,8 +124,6 @@ class FormBuilderDateTimePicker extends FormBuilderFieldDecoration { final bool barrierDismissible; /// Creates field for `Date`, `Time` and `DateTime` input - /// - /// The picker can be programmatically opened using the [showPicker] method. FormBuilderDateTimePicker({ super.key, required super.name, @@ -244,6 +242,9 @@ class FormBuilderDateTimePicker extends FormBuilderFieldDecoration { createState() => FormBuilderDateTimePickerState(); } +/// Holds the state of a [FormBuilderDateTimePicker]. +/// +/// The picker can be programmatically opened using the [showPicker] method. class FormBuilderDateTimePickerState extends FormBuilderFieldDecorationState {