From 8f521829599e46dd56a91d59e313777515921705 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Thu, 19 Dec 2024 16:56:10 +0100 Subject: [PATCH] Fixed file transfer in chat if file was picked from generic file picker --- .../ui/main/chat/fragment/ConversationFragment.kt | 12 +++++++++--- app/src/main/java/org/linphone/utils/FileUtils.kt | 2 +- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/org/linphone/ui/main/chat/fragment/ConversationFragment.kt b/app/src/main/java/org/linphone/ui/main/chat/fragment/ConversationFragment.kt index 629817b5d..581b20d7d 100644 --- a/app/src/main/java/org/linphone/ui/main/chat/fragment/ConversationFragment.kt +++ b/app/src/main/java/org/linphone/ui/main/chat/fragment/ConversationFragment.kt @@ -153,9 +153,15 @@ open class ConversationFragment : SlidingPaneChildFragment() { ) { files -> sendMessageViewModel.closeFilePickerBottomSheet() for (fileUri in files) { - val path = fileUri.toString() - Log.i("$TAG Picked file [$path]") - sendMessageViewModel.addAttachment(path) + lifecycleScope.launch { + val path = FileUtils.getFilePath(requireContext(), fileUri, false).orEmpty() + if (path.isNotEmpty()) { + Log.i("$TAG Picked file [$path]") + sendMessageViewModel.addAttachment(path) + } else { + Log.e("$TAG Failed to pick file [$fileUri]") + } + } } } diff --git a/app/src/main/java/org/linphone/utils/FileUtils.kt b/app/src/main/java/org/linphone/utils/FileUtils.kt index ac75443e7..6039aab8f 100644 --- a/app/src/main/java/org/linphone/utils/FileUtils.kt +++ b/app/src/main/java/org/linphone/utils/FileUtils.kt @@ -206,7 +206,7 @@ class FileUtils { Log.e( "$TAG Couldn't get URI for file [$file] using file provider ${context.getString( R.string.file_provider - )}" + )}: $e" ) Uri.parse(path) }