From ff26a2b697ab0299d94787e648b32398be5ed599 Mon Sep 17 00:00:00 2001 From: daniele-verducci Date: Tue, 13 Oct 2026 12:11:31 +0200 Subject: [PATCH] Editor webview: Wait for proxy only if there's a proxy configured Signed-off-by: daniele-verducci --- .../com/owncloud/android/ui/activity/EditorWebView.kt | 8 ++++++-- .../main/java/com/owncloud/android/utils/WebViewUtil.kt | 7 ++++--- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/com/owncloud/android/ui/activity/EditorWebView.kt b/app/src/main/java/com/owncloud/android/ui/activity/EditorWebView.kt index c8ece71bd03c..12173eb493d1 100644 --- a/app/src/main/java/com/owncloud/android/ui/activity/EditorWebView.kt +++ b/app/src/main/java/com/owncloud/android/ui/activity/EditorWebView.kt @@ -83,8 +83,12 @@ abstract class EditorWebView : ExternalSiteWebView() { } lifecycleScope.launch { - WebViewUtil().setProxyKKPlus(webView) - delay(PROXY_SETUP_DELAY) + val wvUtil = WebViewUtil() + + if (wvUtil.hasProxyConfig()) { + wvUtil.setProxyKKPlus(webView) + delay(PROXY_SETUP_DELAY) + } if (loadedUrl != webView.url) { webView.loadUrl(loadedUrl) diff --git a/app/src/main/java/com/owncloud/android/utils/WebViewUtil.kt b/app/src/main/java/com/owncloud/android/utils/WebViewUtil.kt index 5badaecd64ba..133ded14acac 100644 --- a/app/src/main/java/com/owncloud/android/utils/WebViewUtil.kt +++ b/app/src/main/java/com/owncloud/android/utils/WebViewUtil.kt @@ -21,6 +21,8 @@ import java.io.PrintWriter import java.io.StringWriter class WebViewUtil { + val proxyHost = OwnCloudClientManagerFactory.getProxyHost() ?: "" + val proxyPort = OwnCloudClientManagerFactory.getProxyPort() /** * From https://stackoverflow.com/a/18453384 @@ -30,9 +32,6 @@ class WebViewUtil { @SuppressLint("PrivateApi", "DiscouragedPrivateApi") @Suppress("TooGenericExceptionCaught", "NestedBlockDepth") fun setProxyKKPlus(webView: WebView) { - val proxyHost = OwnCloudClientManagerFactory.getProxyHost() - val proxyPort = OwnCloudClientManagerFactory.getProxyPort() - if (TextUtils.isEmpty(proxyHost) || proxyPort <= 0) { return } @@ -79,6 +78,8 @@ class WebViewUtil { } } + fun hasProxyConfig(): Boolean = OwnCloudClientManagerFactory.getProxyHost().isNotEmpty() + companion object { private const val PROXY_TAG = "PROXY" private const val WEB_VIEW_TAG = "WEB_VIEW"