From 8f483c64c025bffcd918ae1e802f0dfece17322f Mon Sep 17 00:00:00 2001 From: krille-chan Date: Fri, 29 Nov 2024 19:12:33 +0100 Subject: [PATCH] build: Use file selector to save files --- .../matrix_file_extension.dart | 22 +++++++++---------- snap/snapcraft.yaml | 5 ----- 2 files changed, 10 insertions(+), 17 deletions(-) diff --git a/lib/utils/matrix_sdk_extensions/matrix_file_extension.dart b/lib/utils/matrix_sdk_extensions/matrix_file_extension.dart index 97dc1d8d9..b65aa9d33 100644 --- a/lib/utils/matrix_sdk_extensions/matrix_file_extension.dart +++ b/lib/utils/matrix_sdk_extensions/matrix_file_extension.dart @@ -3,6 +3,7 @@ import 'dart:io'; import 'package:flutter/material.dart'; import 'package:file_picker/file_picker.dart'; +import 'package:file_selector/file_selector.dart'; import 'package:flutter_gen/gen_l10n/l10n.dart'; import 'package:matrix/matrix.dart'; import 'package:share_plus/share_plus.dart'; @@ -19,21 +20,18 @@ extension MatrixFileExtension on MatrixFile { return; } - final downloadPath = await FilePicker.platform.saveFile( - dialogTitle: L10n.of(context).saveFile, - fileName: name, - type: filePickerFileType, - bytes: bytes, + final location = await getSaveLocation( + suggestedName: name, + confirmButtonText: L10n.of(context).saveFile, ); + final downloadPath = location?.path; if (downloadPath == null) return; - if (PlatformInfos.isDesktop) { - final result = await showFutureLoadingDialog( - context: context, - future: () => File(downloadPath).writeAsBytes(bytes), - ); - if (result.error != null) return; - } + final result = await showFutureLoadingDialog( + context: context, + future: () => File(downloadPath).writeAsBytes(bytes), + ); + if (result.error != null) return; ScaffoldMessenger.of(context).showSnackBar( SnackBar( diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index a670a2a72..717f4ecb2 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -61,11 +61,6 @@ parts: build-packages: - g++ - zenity-integration: - plugin: nil - stage-snaps: - - zenity-integration - fluffychat: plugin: flutter source: .