From 383d7085006161a4df291d0840bca4825bcb0d84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20Ku=C3=9Fowski?= Date: Mon, 30 Mar 2026 10:22:15 +0200 Subject: [PATCH] fix: Open deep link on android --- lib/config/routes.dart | 4 ++-- lib/pages/chat_list/chat_list.dart | 8 +++----- lib/widgets/fluffy_chat_app.dart | 2 +- 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/lib/config/routes.dart b/lib/config/routes.dart index c6c683eb..0063c35e 100644 --- a/lib/config/routes.dart +++ b/lib/config/routes.dart @@ -172,8 +172,8 @@ abstract class AppRoutes { context, state, NewPrivateChat( - key: ValueKey('new_chat_${state.uri.query}'), - deeplink: state.uri.queryParameters['deeplink'], + key: ValueKey('new_chat_${state.uri.fragment}'), + deeplink: state.uri.fragment, ), ), redirect: loggedOutRedirect, diff --git a/lib/pages/chat_list/chat_list.dart b/lib/pages/chat_list/chat_list.dart index 9ac99e30..1baffc5e 100644 --- a/lib/pages/chat_list/chat_list.dart +++ b/lib/pages/chat_list/chat_list.dart @@ -1,5 +1,4 @@ import 'dart:async'; -import 'dart:developer'; import 'package:cross_file/cross_file.dart'; import 'package:fluffychat/config/app_config.dart'; @@ -311,11 +310,10 @@ class ChatListController extends State String? get activeChat => widget.activeChat; void _processIncomingSharedMedia(List files) { + files.removeWhere( + (file) => file.path.startsWith(AppConfig.deepLinkPrefix) == true, + ); if (files.isEmpty) return; - inspect(files); - if (files.singleOrNull?.path.startsWith(AppConfig.deepLinkPrefix) == true) { - return; - } showScaffoldDialog( context: context, diff --git a/lib/widgets/fluffy_chat_app.dart b/lib/widgets/fluffy_chat_app.dart index 79047cc9..3cdae9f7 100644 --- a/lib/widgets/fluffy_chat_app.dart +++ b/lib/widgets/fluffy_chat_app.dart @@ -43,7 +43,7 @@ class FluffyChatApp extends StatelessWidget { // Pass deep links to app: if (state.uri.toString().startsWith(AppConfig.deepLinkPrefix)) { - return '/rooms/newprivatechat?deeplink=${state.uri}'; + return '/rooms/newprivatechat#${state.uri}'; } return null; },