Update media_picker.dart

This commit is contained in:
Bram Bakker 2023-03-29 16:10:44 +02:00
parent 4a8138f4f7
commit be6c331e0b

View file

@ -109,6 +109,7 @@ class MediaPicker extends StatefulWidget {
this.horizontalSpacing = 0,
this.verticalSpacing = 0,
this.loadingIconColor,
this.disabledPickers,
Key? key,
}) : super(key: key);
@ -118,6 +119,7 @@ class MediaPicker extends StatefulWidget {
final double horizontalSpacing;
final double verticalSpacing;
final Color? loadingIconColor;
final List<String>? disabledPickers;
final Widget Function(
Widget displayResult,
Map<String, dynamic>? inputSettings,
@ -148,7 +150,6 @@ class _MediaPickerState extends State<MediaPicker> {
}
var theme = Theme.of(context);
return Wrap(
alignment: WrapAlignment.center,
direction: widget.inputsDirection,
@ -165,6 +166,45 @@ class _MediaPickerState extends State<MediaPicker> {
),
] else ...[
for (final input in inputs) ...[
if (widget.disabledPickers!.contains(input.label) == true) ...[
IgnorePointer(
child: GestureDetector(
onTap: () async {
setState(() {
_isLoading = true;
});
await onPressedMediaType(context, input);
},
child: Wrap(
children: [
input.widget ??
Container(
height: 55,
width: MediaQuery.of(context).size.width * 0.9,
decoration: const BoxDecoration(
border: Border(
bottom: BorderSide(
color: Color(0xFF979797),
width: 1,
),
),
),
child: Align(
alignment: Alignment.centerLeft,
child: Padding(
padding: const EdgeInsets.only(left: 15),
child: Text(
input.label,
style: theme.textTheme.titleLarge,
),
),
),
),
],
),
),
),
] else ...[
GestureDetector(
onTap: () async {
setState(() {
@ -200,6 +240,7 @@ class _MediaPickerState extends State<MediaPicker> {
],
),
),
],
]
]
],