From 985dbfe97d8d46eb67b9c9754234cad667203a29 Mon Sep 17 00:00:00 2001
From: Adam Brown <adampsbrown@gmail.com>
Date: Thu, 31 Mar 2022 13:01:04 +0100
Subject: [PATCH] keeping the http:// schema in the server selection input
 field - helps to highlight a non secture connection, for https we strip the
 prefix

---
 .../main/java/im/vector/app/core/extensions/UrlExtensions.kt | 4 ++--
 .../ftueauth/FtueAuthCombinedServerSelectionFragment.kt      | 5 ++++-
 2 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/vector/src/main/java/im/vector/app/core/extensions/UrlExtensions.kt b/vector/src/main/java/im/vector/app/core/extensions/UrlExtensions.kt
index 5037f78445..749da0d987 100644
--- a/vector/src/main/java/im/vector/app/core/extensions/UrlExtensions.kt
+++ b/vector/src/main/java/im/vector/app/core/extensions/UrlExtensions.kt
@@ -19,8 +19,8 @@ package im.vector.app.core.extensions
 /**
  * Ex: "https://matrix.org/" -> "matrix.org"
  */
-fun String?.toReducedUrl(): String {
+fun String?.toReducedUrl(keepSchema: Boolean = false): String {
     return (this ?: "")
-            .substringAfter("://")
+            .run { if (keepSchema) this else substringAfter("://") }
             .trim { it == '/' }
 }
diff --git a/vector/src/main/java/im/vector/app/features/onboarding/ftueauth/FtueAuthCombinedServerSelectionFragment.kt b/vector/src/main/java/im/vector/app/features/onboarding/ftueauth/FtueAuthCombinedServerSelectionFragment.kt
index 66707f371d..dbee2ad045 100644
--- a/vector/src/main/java/im/vector/app/features/onboarding/ftueauth/FtueAuthCombinedServerSelectionFragment.kt
+++ b/vector/src/main/java/im/vector/app/features/onboarding/ftueauth/FtueAuthCombinedServerSelectionFragment.kt
@@ -49,6 +49,9 @@ class FtueAuthCombinedServerSelectionFragment @Inject constructor() : AbstractSS
     }
 
     override fun updateWithState(state: OnboardingViewState) {
-        views.chooseServerInput.editText().setText(state.serverSelectionState.userUrlInput.toReducedUrl())
+        val userUrlInput = state.serverSelectionState.userUrlInput?.toReducedUrlKeepingSchemaIfInsecure()
+        views.chooseServerInput.editText().setText(userUrlInput)
     }
+
+    private fun String.toReducedUrlKeepingSchemaIfInsecure() = toReducedUrl(keepSchema = this.startsWith("http://"))
 }