Skip to content

Commit 13107b4

Browse files
committed
Upgrade image_picker and image_picker_for_web dependencies
1 parent 3baa90d commit 13107b4

File tree

4 files changed

+36
-21
lines changed

4 files changed

+36
-21
lines changed

CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
## [3.13.6] - 25-Sep-2020
2+
* Fixed bug in DateRangePicker where user can just pick one date. Closes #434
3+
* Fix bug where FormBuilderCheckboxGroup value set to widget.initialValue. Closes #467
4+
* Prevent events from happening while picking image with ImagePicker
5+
* Added null check for val in onSaved and validator
6+
* Fix `GroupedCheckbox` not disabled when read only
7+
* Added phone validation and fixed `initialValue` parsing
8+
* Fix `Image.memory` throwing error when value is `null`
9+
110
## [3.13.5] - 08-Sep-2020
211
* Fixed bug in `DateRangePicker` where `onChanged` fires before change. Closes #434
312
* Use app's locale for default DateTimePicker display formatting

lib/src/fields/form_builder_date_range_picker.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -257,7 +257,7 @@ class FormBuilderDateRangePickerState
257257
selectableDayPredicate: widget.selectableDayPredicate,
258258
);
259259
if (picked != null) {
260-
if(picked.length == 1){
260+
if (picked.length == 1) {
261261
picked.add(picked[0]);
262262
}
263263
_fieldKey.currentState.didChange(picked);

lib/src/widgets/image_source_sheet.dart

Lines changed: 23 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import 'package:flutter/foundation.dart';
55
import 'package:flutter/material.dart';
66
import 'package:image_picker/image_picker.dart';
77

8-
class ImageSourceBottomSheet extends StatelessWidget {
8+
class ImageSourceBottomSheet extends StatefulWidget {
99
/// Optional maximum height of image
1010
final double maxHeight;
1111

@@ -39,8 +39,6 @@ class ImageSourceBottomSheet extends StatelessWidget {
3939
final Widget cameraLabel;
4040
final Widget galleryLabel;
4141
final EdgeInsets bottomSheetPadding;
42-
43-
bool _isPickingImage = false;
4442

4543
ImageSourceBottomSheet({
4644
Key key,
@@ -58,30 +56,37 @@ class ImageSourceBottomSheet extends StatelessWidget {
5856
}) : assert(null != onImage || null != onImageSelected),
5957
super(key: key);
6058

59+
@override
60+
_ImageSourceBottomSheetState createState() => _ImageSourceBottomSheetState();
61+
}
62+
63+
class _ImageSourceBottomSheetState extends State<ImageSourceBottomSheet> {
64+
bool _isPickingImage = false;
65+
6166
Future<void> _onPickImage(ImageSource source) async {
62-
if(_isPickingImage) return;
67+
if (_isPickingImage) return;
6368
_isPickingImage = true;
6469
final imagePicker = ImagePicker();
6570
final pickedFile = await imagePicker.getImage(
6671
source: source,
67-
maxHeight: maxHeight,
68-
maxWidth: maxWidth,
69-
imageQuality: imageQuality,
70-
preferredCameraDevice: preferredCameraDevice,
72+
maxHeight: widget.maxHeight,
73+
maxWidth: widget.maxWidth,
74+
imageQuality: widget.imageQuality,
75+
preferredCameraDevice: widget.preferredCameraDevice,
7176
);
7277
_isPickingImage = false;
7378
if (null != pickedFile) {
7479
if (kIsWeb) {
75-
if (null != onImage) {
76-
onImage(await pickedFile.readAsBytes());
80+
if (null != widget.onImage) {
81+
widget.onImage(await pickedFile.readAsBytes());
7782
}
7883
} else {
79-
if (null != onImageSelected) {
84+
if (null != widget.onImageSelected) {
8085
// Warning: this will not work on the web platform because pickedFile
8186
// will instead point to a network resource.
8287
final imageFile = File(pickedFile.path);
8388
assert(null != imageFile);
84-
onImageSelected(imageFile);
89+
widget.onImageSelected(imageFile);
8590
}
8691
}
8792
}
@@ -92,21 +97,22 @@ class ImageSourceBottomSheet extends StatelessWidget {
9297
return WillPopScope(
9398
onWillPop: () async => !_isPickingImage,
9499
child: Container(
95-
padding: bottomSheetPadding,
100+
padding: widget.bottomSheetPadding,
96101
child: Wrap(
97102
children: <Widget>[
98103
ListTile(
99-
leading: cameraIcon,
100-
title: cameraLabel,
104+
leading: widget.cameraIcon,
105+
title: widget.cameraLabel,
101106
onTap: () => _onPickImage(ImageSource.camera),
102107
),
103108
ListTile(
104-
leading: galleryIcon,
105-
title: galleryLabel,
109+
leading: widget.galleryIcon,
110+
title: widget.galleryLabel,
106111
onTap: () => _onPickImage(ImageSource.gallery),
107112
)
108113
],
109114
),
115+
),
110116
);
111117
}
112118
}

pubspec.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: flutter_form_builder
22
description: Package to build Material Form with fields like TextField, DropDown, Switches etc. with ability to create custom FormFields and composability and reuse validation functions.
3-
version: 3.13.5
3+
version: 3.13.6
44
homepage: https://github.com/danvick/flutter_form_builder
55

66
environment:
@@ -20,8 +20,8 @@ dependencies:
2020
validators: ^2.0.1
2121
date_range_picker: ^1.0.6
2222
flutter_touch_spin: ^1.0.1
23-
image_picker: ^0.6.7+7
24-
image_picker_for_web: ^0.1.0+1
23+
image_picker: ^0.6.7+11
24+
image_picker_for_web: ^0.1.0+2
2525
rating_bar: ^0.2.0
2626
country_pickers: ^1.3.0
2727
phone_number: ^0.6.2+4

0 commit comments

Comments
 (0)