💄 Optimize uploader
This commit is contained in:
parent
498bb0e5fb
commit
221b97901f
@ -14,7 +14,7 @@ class AttachmentUploadTask {
|
||||
Map<String, dynamic>? metadata;
|
||||
Map<String, int>? chunkFiles;
|
||||
|
||||
double progress = 0;
|
||||
double? progress;
|
||||
bool isUploading = false;
|
||||
bool isCompleted = false;
|
||||
dynamic error;
|
||||
@ -76,6 +76,7 @@ class AttachmentUploaderController extends GetxController {
|
||||
|
||||
_startProgressSyncTimer();
|
||||
queueOfUpload[queueIndex].isUploading = true;
|
||||
queueOfUpload[queueIndex].progress = 0;
|
||||
|
||||
final task = queueOfUpload[queueIndex];
|
||||
try {
|
||||
@ -121,6 +122,7 @@ class AttachmentUploaderController extends GetxController {
|
||||
}
|
||||
|
||||
queueOfUpload[idx].isUploading = true;
|
||||
queueOfUpload[idx].progress = 0;
|
||||
|
||||
final task = queueOfUpload[idx];
|
||||
try {
|
||||
|
@ -174,7 +174,7 @@ const i18nEnglish = {
|
||||
'attachmentAttached': 'Exists Files',
|
||||
'attachmentUploadBlocked':
|
||||
'Upload blocked, there is currently a task in progress...',
|
||||
'attachmentAdd': 'Attach attachments',
|
||||
'attachmentAdd': 'Attach file',
|
||||
'attachmentAddGalleryPhoto': 'Gallery photo',
|
||||
'attachmentAddGalleryVideo': 'Gallery video',
|
||||
'attachmentAddCameraPhoto': 'Capture photo',
|
||||
|
@ -64,7 +64,7 @@ class _AttachmentEditorPopupState extends State<AttachmentEditorPopup> {
|
||||
final AuthProvider auth = Get.find();
|
||||
if (auth.isAuthorized.isFalse) return;
|
||||
|
||||
if (widget.singleMode) {
|
||||
if (!widget.singleMode) {
|
||||
final medias = await _imagePicker.pickMultiImage(
|
||||
maxWidth: widget.imageMaxWidth,
|
||||
maxHeight: widget.imageMaxHeight,
|
||||
@ -341,9 +341,25 @@ class _AttachmentEditorPopupState extends State<AttachmentEditorPopup> {
|
||||
fontFamily: 'monospace',
|
||||
),
|
||||
),
|
||||
Row(
|
||||
children: [
|
||||
FutureBuilder(
|
||||
future: element.file.length(),
|
||||
builder: (context, snapshot) {
|
||||
if (!snapshot.hasData) return const SizedBox();
|
||||
return Text(
|
||||
_formatBytes(snapshot.data!),
|
||||
style: Theme.of(context).textTheme.bodySmall,
|
||||
);
|
||||
},
|
||||
),
|
||||
const SizedBox(width: 6),
|
||||
if (element.progress != null)
|
||||
Text(
|
||||
'In queue #${index + 1}',
|
||||
style: const TextStyle(fontSize: 12),
|
||||
'${(element.progress! * 100).toStringAsFixed(2)}%',
|
||||
style: Theme.of(context).textTheme.bodySmall,
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
@ -590,16 +606,14 @@ class _AttachmentEditorPopupState extends State<AttachmentEditorPopup> {
|
||||
children: [
|
||||
Expanded(
|
||||
child: Row(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
Expanded(
|
||||
child: Text(
|
||||
Text(
|
||||
'attachmentAdd'.tr,
|
||||
style:
|
||||
Theme.of(context).textTheme.headlineSmall,
|
||||
style: Theme.of(context).textTheme.headlineSmall,
|
||||
maxLines: 1,
|
||||
overflow: TextOverflow.ellipsis,
|
||||
),
|
||||
),
|
||||
const SizedBox(width: 10),
|
||||
Obx(() {
|
||||
if (_uploadController.isUploading.value) {
|
||||
|
Loading…
Reference in New Issue
Block a user