From 637f4a835033d0fd063314a772c5f9bce5c16906 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Fri, 8 May 2020 16:01:11 +0200 Subject: [PATCH] Fix small UI bug --- .../matrix/android/api/session/identity/IdentityService.kt | 4 +++- .../internal/session/identity/DefaultIdentityService.kt | 3 ++- .../riotx/features/discovery/DiscoverySettingsViewModel.kt | 6 +++--- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/identity/IdentityService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/identity/IdentityService.kt index c5877cadeb..e1b22e8d8e 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/identity/IdentityService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/api/session/identity/IdentityService.kt @@ -34,8 +34,10 @@ interface IdentityService { /** * Update the identity server url. * @param url the new url. Set to null to disconnect from the identity server + * @param callback will notify the user is change successful. The String will be the final url of the identity server, or null. + * The SDK can append "https://" for instance. */ - fun setNewIdentityServer(url: String?, callback: MatrixCallback): Cancelable + fun setNewIdentityServer(url: String?, callback: MatrixCallback): Cancelable fun startBindSession(threePid: ThreePid, nothing: Nothing?, matrixCallback: MatrixCallback) fun finalizeBindSessionFor3PID(threePid: ThreePid, matrixCallback: MatrixCallback) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/identity/DefaultIdentityService.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/identity/DefaultIdentityService.kt index 45e3c2d092..a498c65ae8 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/identity/DefaultIdentityService.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/session/identity/DefaultIdentityService.kt @@ -130,7 +130,7 @@ internal class DefaultIdentityService @Inject constructor( TODO("Not yet implemented") } - override fun setNewIdentityServer(url: String?, callback: MatrixCallback): Cancelable { + override fun setNewIdentityServer(url: String?, callback: MatrixCallback): Cancelable { val urlCandidate = url?.let { param -> buildString { if (!param.startsWith("http")) { @@ -171,6 +171,7 @@ internal class DefaultIdentityService @Inject constructor( updateAccountData(urlCandidate) } } + urlCandidate } } diff --git a/vector/src/main/java/im/vector/riotx/features/discovery/DiscoverySettingsViewModel.kt b/vector/src/main/java/im/vector/riotx/features/discovery/DiscoverySettingsViewModel.kt index a0af865b3e..4492132cbc 100644 --- a/vector/src/main/java/im/vector/riotx/features/discovery/DiscoverySettingsViewModel.kt +++ b/vector/src/main/java/im/vector/riotx/features/discovery/DiscoverySettingsViewModel.kt @@ -149,11 +149,11 @@ class DiscoverySettingsViewModel @AssistedInject constructor( ) } - session.identityService().setNewIdentityServer(action.url, object : MatrixCallback { - override fun onSuccess(data: Unit) { + session.identityService().setNewIdentityServer(action.url, object : MatrixCallback { + override fun onSuccess(data: String?) { setState { copy( - identityServer = Success(action.url) + identityServer = Success(data) ) } retrieveBinding()