瀏覽代碼

Merge pull request #9426 from nextcloud/fix/unified-search-apps

UnifiedSearch: Fix opening non-file results with relative URLs
Álvaro Brey 3 年之前
父節點
當前提交
0edba984be
共有 1 個文件被更改,包括 13 次插入2 次删除
  1. 13 2
      src/main/java/com/owncloud/android/ui/unifiedsearch/UnifiedSearchViewModel.kt

+ 13 - 2
src/main/java/com/owncloud/android/ui/unifiedsearch/UnifiedSearchViewModel.kt

@@ -147,8 +147,19 @@ class UnifiedSearchViewModel(application: Application) : AndroidViewModel(applic
         if (result.isFile) {
             openFile(result.remotePath())
         } else {
-            val uri = Uri.parse(result.resourceUrl)
-            this.browserUri.value = uri
+            this.browserUri.value = getResultUri(result)
+        }
+    }
+
+    private fun getResultUri(result: SearchResultEntry): Uri {
+        val uri = Uri.parse(result.resourceUrl)
+        return when (uri.host) {
+            null -> {
+                val serverUrl = currentAccountProvider.user.server.uri.toString()
+                val fullUrl = serverUrl + result.resourceUrl
+                Uri.parse(fullUrl)
+            }
+            else -> uri
         }
     }