Merge branch 'krille/fix-ios-share' into 'main'

chore: Follow up fix ios share files

See merge request famedly/fluffychat!859
This commit is contained in:
Krille Fear 2022-05-05 07:41:35 +00:00
commit 0d3b192f8f
3 changed files with 13 additions and 14 deletions

View File

@ -25,7 +25,6 @@ class ChatListViewBody extends StatefulWidget {
class _ChatListViewBodyState extends State<ChatListViewBody> { class _ChatListViewBodyState extends State<ChatListViewBody> {
// the matrix sync stream // the matrix sync stream
late StreamSubscription _subscription; late StreamSubscription _subscription;
late StreamSubscription _clientSubscription;
// used to check the animation direction // used to check the animation direction
String? _lastUserId; String? _lastUserId;
@ -40,8 +39,6 @@ class _ChatListViewBodyState extends State<ChatListViewBody> {
.where((s) => s.hasRoomUpdate) .where((s) => s.hasRoomUpdate)
.rateLimit(const Duration(seconds: 1)) .rateLimit(const Duration(seconds: 1))
.listen((d) => setState(() {})); .listen((d) => setState(() {}));
_clientSubscription =
widget.controller.clientStream.listen((d) => setState(() {}));
super.initState(); super.initState();
} }
@ -194,7 +191,6 @@ class _ChatListViewBodyState extends State<ChatListViewBody> {
@override @override
void dispose() { void dispose() {
_subscription.cancel(); _subscription.cancel();
_clientSubscription.cancel();
super.dispose(); super.dispose();
} }

View File

@ -32,19 +32,19 @@ class ImageViewerView extends StatelessWidget {
color: Colors.white, color: Colors.white,
tooltip: L10n.of(context)!.share, tooltip: L10n.of(context)!.share,
), ),
IconButton(
icon: const Icon(Icons.download_outlined),
onPressed: controller.saveFileAction,
color: Colors.white,
tooltip: L10n.of(context)!.downloadFile,
),
if (PlatformInfos.isAndroid) if (PlatformInfos.isAndroid)
IconButton( IconButton(
onPressed: controller.shareFileAction, icon: const Icon(Icons.download_outlined),
tooltip: L10n.of(context)!.share, onPressed: controller.saveFileAction,
color: Colors.white, color: Colors.white,
icon: const Icon(Icons.share), tooltip: L10n.of(context)!.downloadFile,
) ),
IconButton(
onPressed: controller.shareFileAction,
tooltip: L10n.of(context)!.share,
color: Colors.white,
icon: const Icon(Icons.share),
)
], ],
), ),
body: InteractiveViewer( body: InteractiveViewer(

View File

@ -12,6 +12,9 @@ import 'package:fluffychat/utils/platform_infos.dart';
extension MatrixFileExtension on MatrixFile { extension MatrixFileExtension on MatrixFile {
void save(BuildContext context) async { void save(BuildContext context) async {
if (PlatformInfos.isIOS) {
return share(context);
}
final fileName = name.split('/').last; final fileName = name.split('/').last;
final file = FilePickerCross(bytes); final file = FilePickerCross(bytes);