fix: import sticker packs

This commit is contained in:
OfficialDakari 2025-11-14 20:44:44 +05:00
parent c372f7d79f
commit 24d1f7f9b2
1 changed files with 8 additions and 20 deletions

View File

@ -276,26 +276,16 @@ class EmotesSettingsController extends State<EmotesSettings> {
} }
Future<void> importEmojiZip() async { Future<void> importEmojiZip() async {
final result = await showFutureLoadingDialog<Archive?>( final result = await selectFiles(
context: context, context,
future: () async { type: FileSelectorType.zip,
final result = await selectFiles(
context,
type: FileSelectorType.zip,
);
if (result.isEmpty) return null;
final buffer = await result.first.readAsBytes();
final archive = ZipDecoder().decodeBytes(buffer);
return archive;
},
); );
final archive = result.result; if (result.isEmpty) return;
if (archive == null) return;
final buffer = InputMemoryStream(await result.single.readAsBytes());
final archive = ZipDecoder().decodeStream(buffer);
await showDialog( await showDialog(
context: context, context: context,
@ -338,8 +328,6 @@ class EmotesSettingsController extends State<EmotesSettings> {
'${pack.pack.displayName ?? client.userID?.localpart ?? 'emotes'}.zip'; '${pack.pack.displayName ?? client.userID?.localpart ?? 'emotes'}.zip';
final output = ZipEncoder().encode(archive); final output = ZipEncoder().encode(archive);
if (output == null) return;
MatrixFile( MatrixFile(
name: fileName, name: fileName,
bytes: Uint8List.fromList(output), bytes: Uint8List.fromList(output),