add better mime detection

This commit is contained in:
Salvatore Giordano
2020-04-10 18:09:36 +02:00
parent 3306a32db7
commit 7d62912300
3 changed files with 28 additions and 8 deletions
+24 -7
View File
@@ -5,6 +5,7 @@ import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_keyboard_visibility/flutter_keyboard_visibility.dart';
import 'package:image_picker/image_picker.dart';
import 'package:mime/mime.dart';
import 'package:stream_chat/stream_chat.dart';
import 'package:stream_chat_flutter/src/message_list_view.dart';
import 'package:stream_chat_flutter/src/stream_chat_theme.dart';
@@ -634,14 +635,30 @@ class _MessageInputState extends State<MessageInput> {
_attachments.add(attachment);
});
final res = await channel.sendFile(
MultipartFile.fromBytes(
bytes,
filename: file.path.split('/').last,
),
);
String url;
final filename = file.path.split('/').last;
attachment.url = res.file;
if (type == FileType.image) {
final res = await channel.sendImage(
MultipartFile.fromBytes(
bytes,
filename: filename,
contentType: MediaType.parse(lookupMimeType(filename)),
),
);
url = res.file;
} else {
final res = await channel.sendFile(
MultipartFile.fromBytes(
bytes,
filename: filename,
contentType: MediaType.parse(lookupMimeType(filename)),
),
);
url = res.file;
}
attachment.url = url;
setState(() {
attachment.uploaded = true;
+3 -1
View File
@@ -949,7 +949,9 @@ class _MessageWidgetState extends State<MessageWidget>
}
return FutureBuilder<void>(
future: videoController.initialize(),
future: videoController.value.initialized
? Future.value(true)
: videoController.initialize(),
builder: (_, snapshot) {
if (snapshot.connectionState != ConnectionState.done) {
return Container(
+1
View File
@@ -20,6 +20,7 @@ dependencies:
image_picker: ^0.6.4
flutter_keyboard_visibility: ^0.8.0
stream_chat: ^0.1.21
mime: ^0.9.6+3
visibility_detector: ^0.1.4
dev_dependencies: