From bfc9f57b2a5da553e2208d95acfb2dcb5d3b45f4 Mon Sep 17 00:00:00 2001
From: Dariusz Olszewski <starypatyk@users.noreply.github.com>
Date: Thu, 27 Oct 2022 23:47:13 +0200
Subject: [PATCH 1/3] Make it possible to dismiss failure notification

Signed-off-by: Dariusz Olszewski <starypatyk@users.noreply.github.com>
---
 .../com/nextcloud/talk/jobs/UploadAndShareFilesWorker.kt    | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/app/src/main/java/com/nextcloud/talk/jobs/UploadAndShareFilesWorker.kt b/app/src/main/java/com/nextcloud/talk/jobs/UploadAndShareFilesWorker.kt
index 9c1bd8f7e..a58126b22 100644
--- a/app/src/main/java/com/nextcloud/talk/jobs/UploadAndShareFilesWorker.kt
+++ b/app/src/main/java/com/nextcloud/talk/jobs/UploadAndShareFilesWorker.kt
@@ -258,9 +258,13 @@ class UploadAndShareFilesWorker(val context: Context, workerParameters: WorkerPa
         notification = mBuilder!!
             .setContentTitle(failureTitle)
             .setContentText(failureText)
+            .setOngoing(false)
             .build()
 
-        mNotifyManager!!.notify(notificationId, notification)
+        // Cancel original notification
+        mNotifyManager?.cancel(notificationId)
+        // Then show information about failure
+        mNotifyManager!!.notify(SystemClock.uptimeMillis().toInt(), notification)
     }
 
     companion object {

From c18bafe13a4345c957ee23094a7cc3044671c3c9 Mon Sep 17 00:00:00 2001
From: Dariusz Olszewski <starypatyk@users.noreply.github.com>
Date: Thu, 27 Oct 2022 23:47:57 +0200
Subject: [PATCH 2/3] Force HTTP/1.1 in chunked upload

Signed-off-by: Dariusz Olszewski <starypatyk@users.noreply.github.com>
---
 .../com/nextcloud/talk/upload/chunked/ChunkedFileUploader.kt   | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/app/src/main/java/com/nextcloud/talk/upload/chunked/ChunkedFileUploader.kt b/app/src/main/java/com/nextcloud/talk/upload/chunked/ChunkedFileUploader.kt
index 82b4b7f8d..a7f22f419 100644
--- a/app/src/main/java/com/nextcloud/talk/upload/chunked/ChunkedFileUploader.kt
+++ b/app/src/main/java/com/nextcloud/talk/upload/chunked/ChunkedFileUploader.kt
@@ -57,11 +57,13 @@ import com.nextcloud.talk.utils.Mimetype
 import okhttp3.HttpUrl.Companion.toHttpUrlOrNull
 import okhttp3.MediaType
 import okhttp3.OkHttpClient
+import okhttp3.Protocol
 import okhttp3.Response
 import java.io.File
 import java.io.IOException
 import java.io.RandomAccessFile
 import java.nio.channels.FileChannel
+import java.util.Arrays
 import java.util.Locale
 
 @AutoInjector(NextcloudTalkApplication::class)
@@ -290,6 +292,7 @@ class ChunkedFileUploader(
         okHttpClientBuilder.followRedirects(false)
         okHttpClientBuilder.followSslRedirects(false)
         // okHttpClientBuilder.readTimeout(Duration.ofMinutes(30)) // TODO set timeout
+        okHttpClientBuilder.protocols(Arrays.asList(Protocol.HTTP_1_1))
         okHttpClientBuilder.authenticator(
             RestModule.MagicAuthenticator(
                 ApiUtils.getCredentials(

From 8dd6fe1d3d09925d86fbd3459c63afafb2e0237d Mon Sep 17 00:00:00 2001
From: Marcel Hibbe <dev@mhibbe.de>
Date: Fri, 28 Oct 2022 16:03:24 +0200
Subject: [PATCH 3/3] use listOf instead Arrays.asList

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
---
 .../com/nextcloud/talk/upload/chunked/ChunkedFileUploader.kt   | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/app/src/main/java/com/nextcloud/talk/upload/chunked/ChunkedFileUploader.kt b/app/src/main/java/com/nextcloud/talk/upload/chunked/ChunkedFileUploader.kt
index a7f22f419..f3872b847 100644
--- a/app/src/main/java/com/nextcloud/talk/upload/chunked/ChunkedFileUploader.kt
+++ b/app/src/main/java/com/nextcloud/talk/upload/chunked/ChunkedFileUploader.kt
@@ -63,7 +63,6 @@ import java.io.File
 import java.io.IOException
 import java.io.RandomAccessFile
 import java.nio.channels.FileChannel
-import java.util.Arrays
 import java.util.Locale
 
 @AutoInjector(NextcloudTalkApplication::class)
@@ -292,7 +291,7 @@ class ChunkedFileUploader(
         okHttpClientBuilder.followRedirects(false)
         okHttpClientBuilder.followSslRedirects(false)
         // okHttpClientBuilder.readTimeout(Duration.ofMinutes(30)) // TODO set timeout
-        okHttpClientBuilder.protocols(Arrays.asList(Protocol.HTTP_1_1))
+        okHttpClientBuilder.protocols(listOf(Protocol.HTTP_1_1))
         okHttpClientBuilder.authenticator(
             RestModule.MagicAuthenticator(
                 ApiUtils.getCredentials(