claude refactorings, flutter best practices, platform dependent changes, general cleanup
This commit is contained in:
@@ -1,16 +1,17 @@
|
||||
|
||||
import 'dart:async';
|
||||
import 'dart:convert';
|
||||
import 'dart:typed_data';
|
||||
|
||||
import 'package:badges/badges.dart' as badges;
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:image_picker/image_picker.dart';
|
||||
import 'package:loader_overlay/loader_overlay.dart';
|
||||
import 'package:package_info_plus/package_info_plus.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:badges/badges.dart' as badges;
|
||||
|
||||
import '../../../../api/mhsl/server/feedback/addFeedback.dart';
|
||||
import '../../../../api/mhsl/server/feedback/addFeedbackParams.dart';
|
||||
import '../../../../api/mhsl/server/feedback/add_feedback.dart';
|
||||
import '../../../../api/mhsl/server/feedback/add_feedback_params.dart';
|
||||
import '../../../../model/account_data.dart';
|
||||
import '../../../../state/app/modules/settings/bloc/settings_cubit.dart';
|
||||
import '../../../../widget/file_pick.dart';
|
||||
@@ -129,7 +130,8 @@ class _FeedbackDialogState extends State<FeedbackDialog> {
|
||||
child: IconButton(
|
||||
onPressed: () async {
|
||||
context.loaderOverlay.show();
|
||||
var imageData = await (await FilePick.galleryPick())?.readAsBytes();
|
||||
final picked = await FilePick.multipleGalleryPick();
|
||||
final imageData = await picked?.first.readAsBytes();
|
||||
if(context.mounted) context.loaderOverlay.hide();
|
||||
setState(() {
|
||||
_image = imageData;
|
||||
@@ -148,26 +150,26 @@ class _FeedbackDialogState extends State<FeedbackDialog> {
|
||||
return;
|
||||
}
|
||||
context.loaderOverlay.show();
|
||||
AddFeedback(
|
||||
unawaited(AddFeedback(
|
||||
AddFeedbackParams(
|
||||
user: AccountData().getUserSecret(),
|
||||
feedback: _feedbackInput.text,
|
||||
screenshot: _image != null ? base64Encode(_image!) : null,
|
||||
appVersion: int.parse((await PackageInfo.fromPlatform()).buildNumber),
|
||||
)
|
||||
),
|
||||
).run().then((value) {
|
||||
if (!context.mounted) return;
|
||||
Navigator.of(context).pop();
|
||||
InfoDialog.show(context, 'Danke für dein Feedback!');
|
||||
context.loaderOverlay.hide();
|
||||
}).catchError((error, trace) {
|
||||
}).catchError((Object error, StackTrace trace) {
|
||||
if (!mounted) return;
|
||||
setState(() {
|
||||
_error = error.toString();
|
||||
});
|
||||
if (!context.mounted) return;
|
||||
context.loaderOverlay.hide();
|
||||
});
|
||||
}));
|
||||
},
|
||||
child: const Text('Senden'),
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user