aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/java
diff options
context:
space:
mode:
authorBlaster4385 <[email protected]>2025-05-03 23:36:48 +0530
committerBlaster4385 <[email protected]>2025-05-05 21:29:18 +0530
commit2ddc92bf3c56faa518834a28f778af860690ce68 (patch)
tree63ea1f6782fdeb103e9c7c7576c4e9455f7f500d /app/src/main/java
parentb9fd819e63644eaa3d77595c9aec507cb4b2bfc4 (diff)
feat: fix url handling
Diffstat (limited to 'app/src/main/java')
-rw-r--r--app/src/main/java/dev/tablaster/dashpanel/MainActivity.kt11
1 files changed, 8 insertions, 3 deletions
diff --git a/app/src/main/java/dev/tablaster/dashpanel/MainActivity.kt b/app/src/main/java/dev/tablaster/dashpanel/MainActivity.kt
index e575f36..a746fd8 100644
--- a/app/src/main/java/dev/tablaster/dashpanel/MainActivity.kt
+++ b/app/src/main/java/dev/tablaster/dashpanel/MainActivity.kt
@@ -117,9 +117,14 @@ class MainActivity : AppCompatActivity() {
}
if (hardwareAcceleration) webView.setLayerType(View.LAYER_TYPE_HARDWARE, null)
- val currentUrl = webView.url
- val currentOrigin = currentUrl?.toUri()?.origin()
- val targetOrigin = url.toUri().origin()
+ val currentUri = webView.url?.toUri()
+ val targetUri = url.toUri()
+
+ val currentOrigin = currentUri?.let {
+ "${it.scheme}://${it.host}:${it.port.takeIf { p -> p != -1 } ?: it.defaultPortForScheme()}"
+ }
+ val targetOrigin = "${targetUri.scheme}://${targetUri.host}:${targetUri.port.takeIf { p -> p != -1 } ?: targetUri.defaultPortForScheme()}"
+
if (currentOrigin != targetOrigin) {
Log.d(TAG, "WebView origin changed: $currentOrigin -> $targetOrigin. Reloading.")
webView.loadUrl(url)