From ca0c54da7f6f687a40d9fd73c7b37f820c0f27de Mon Sep 17 00:00:00 2001
From: ababi <albert.babi@savoirfairelinux.com>
Date: Mon, 21 Dec 2020 16:08:53 +0100
Subject: [PATCH] chatview: get file url for drag and drop transfer

- add support for multiple file transfer
- fix problem with special characters in filename

Change-Id: I3efba12c07a2b4c69e555c6bcef28bd13b7762f8
Gitlab: #219
---
 src/mainview/components/MessageWebView.qml | 25 +++++++++-------------
 1 file changed, 10 insertions(+), 15 deletions(-)

diff --git a/src/mainview/components/MessageWebView.qml b/src/mainview/components/MessageWebView.qml
index 08d092ecf..c749eb522 100644
--- a/src/mainview/components/MessageWebView.qml
+++ b/src/mainview/components/MessageWebView.qml
@@ -63,6 +63,13 @@ Rectangle {
         messageWebViewHeader.resetBackToWelcomeViewButtonSource(reset)
     }
 
+    function setFilePathsToSend(filePaths) {
+        for (var index = 0; index < filePaths.length; ++index) {
+            var path = UtilsAdapter.getAbsPath(filePaths[index])
+            MessagesAdapter.setNewMessagesContent(path)
+        }
+    }
+
     function updateChatviewTheme() {
         var theme = 'setTheme("\
             --jami-light-blue:' + JamiTheme.jamiLightBlue + ';\
@@ -96,23 +103,14 @@ Rectangle {
 
         mode: JamiFileDialog.Mode.OpenFiles
 
-        onAccepted: {
-            var filePaths = jamiFileDialog.files
-            for (var index = 0; index < filePaths.length; ++index) {
-                var path = UtilsAdapter.getAbsPath(filePaths[index])
-                MessagesAdapter.setNewMessagesContent(path)
-            }
-        }
+        onAccepted: setFilePathsToSend(jamiFileDialog.files)
     }
 
     MessageWebViewHeader {
 
         DropArea{
             anchors.fill: parent
-            onDropped: {
-                var path = UtilsAdapter.getAbsPath(drop.text.toString())
-                MessagesAdapter.setNewMessagesContent(path)
-            }
+            onDropped: setFilePathsToSend(drop.urls)
         }
 
         id: messageWebViewHeader
@@ -257,10 +255,7 @@ Rectangle {
 
         DropArea{
             anchors.fill: parent
-            onDropped: {
-                var path = UtilsAdapter.getAbsPath(drop.text.toString())
-                MessagesAdapter.setNewMessagesContent(path)
-            }
+            onDropped: setFilePathsToSend(drop.urls)
         }
 
         onNavigationRequested: {
-- 
GitLab