ソースを参照

fix endless loop when opening urls and files app is not installed.

Without this fix, the ChatActivity would be started again in FileViewerUtils. There was an endless loop between ChatActivity and FileViewerUtils because of the wrong context.
Instead to open the browser, the app did nothing or freezed.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
Marcel Hibbe 1 年間 前
コミット
e4571be0ed
1 ファイル変更3 行追加3 行削除
  1. 3 3
      app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt

+ 3 - 3
app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt

@@ -2668,15 +2668,15 @@ class ChatActivity :
             if (uri.startsWith(user.baseUrl!!)) {
                 if (UriUtils.isInstanceInternalFileShareUrl(user.baseUrl!!, uri)) {
                     // https://cloud.nextcloud.com/f/41
-                    val fileViewerUtils = FileViewerUtils(this, user)
+                    val fileViewerUtils = FileViewerUtils(applicationContext, user)
                     fileViewerUtils.openFileInFilesApp(uri, UriUtils.extractInstanceInternalFileShareFileId(uri))
                 } else if (UriUtils.isInstanceInternalFileUrl(user.baseUrl!!, uri)) {
                     // https://cloud.nextcloud.com/apps/files/?dir=/Engineering&fileid=41
-                    val fileViewerUtils = FileViewerUtils(this, user)
+                    val fileViewerUtils = FileViewerUtils(applicationContext, user)
                     fileViewerUtils.openFileInFilesApp(uri, UriUtils.extractInstanceInternalFileFileId(uri))
                 } else if (UriUtils.isInstanceInternalFileUrlNew(user.baseUrl!!, uri)) {
                     // https://cloud.nextcloud.com/apps/files/?dir=/Engineering&fileid=41
-                    val fileViewerUtils = FileViewerUtils(this, user)
+                    val fileViewerUtils = FileViewerUtils(applicationContext, user)
                     fileViewerUtils.openFileInFilesApp(uri, UriUtils.extractInstanceInternalFileFileIdNew(uri))
                 } else {
                     super.startActivity(intent)