mirror of
https://github.com/element-hq/element-android
synced 2024-11-28 21:48:50 +03:00
Identity refresh main setting page.
This commit is contained in:
parent
84a3754c9f
commit
7afc7bdb31
4 changed files with 18 additions and 10 deletions
|
@ -29,7 +29,10 @@ interface IdentityService {
|
||||||
*/
|
*/
|
||||||
fun getDefaultIdentityServer(callback: MatrixCallback<String?>): Cancelable
|
fun getDefaultIdentityServer(callback: MatrixCallback<String?>): Cancelable
|
||||||
|
|
||||||
fun getCurrentIdentityServer(): String?
|
/**
|
||||||
|
* Return the current identity server URL used by this account. Returns null if no identity server is configured.
|
||||||
|
*/
|
||||||
|
fun getCurrentIdentityServerUrl(): String?
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check if the identity server is valid
|
* Check if the identity server is valid
|
||||||
|
|
|
@ -118,7 +118,7 @@ internal class DefaultIdentityService @Inject constructor(
|
||||||
return NoOpCancellable
|
return NoOpCancellable
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun getCurrentIdentityServer(): String? {
|
override fun getCurrentIdentityServerUrl(): String? {
|
||||||
return identityServiceStore.getIdentityServerDetails()?.identityServerUrl
|
return identityServiceStore.getIdentityServerDetails()?.identityServerUrl
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -177,7 +177,7 @@ internal class DefaultIdentityService @Inject constructor(
|
||||||
}
|
}
|
||||||
|
|
||||||
return GlobalScope.launchToCallback(coroutineDispatchers.main, callback) {
|
return GlobalScope.launchToCallback(coroutineDispatchers.main, callback) {
|
||||||
val current = getCurrentIdentityServer()
|
val current = getCurrentIdentityServerUrl()
|
||||||
when (urlCandidate) {
|
when (urlCandidate) {
|
||||||
current ->
|
current ->
|
||||||
// Nothing to do
|
// Nothing to do
|
||||||
|
|
|
@ -58,7 +58,7 @@ class DiscoverySettingsViewModel @AssistedInject constructor(
|
||||||
|
|
||||||
private val identityServerManagerListener = object : IdentityServiceListener {
|
private val identityServerManagerListener = object : IdentityServiceListener {
|
||||||
override fun onIdentityServerChange() = withState { state ->
|
override fun onIdentityServerChange() = withState { state ->
|
||||||
val identityServerUrl = identityService.getCurrentIdentityServer()
|
val identityServerUrl = identityService.getCurrentIdentityServerUrl()
|
||||||
val currentIS = state.identityServer()
|
val currentIS = state.identityServer()
|
||||||
setState {
|
setState {
|
||||||
copy(identityServer = Success(identityServerUrl))
|
copy(identityServer = Success(identityServerUrl))
|
||||||
|
@ -69,7 +69,7 @@ class DiscoverySettingsViewModel @AssistedInject constructor(
|
||||||
|
|
||||||
init {
|
init {
|
||||||
setState {
|
setState {
|
||||||
copy(identityServer = Success(identityService.getCurrentIdentityServer()))
|
copy(identityServer = Success(identityService.getCurrentIdentityServerUrl()))
|
||||||
}
|
}
|
||||||
startListenToIdentityManager()
|
startListenToIdentityManager()
|
||||||
observeThreePids()
|
observeThreePids()
|
||||||
|
|
|
@ -79,6 +79,9 @@ class VectorSettingsGeneralFragment : VectorSettingsBaseFragment() {
|
||||||
private val mPasswordPreference by lazy {
|
private val mPasswordPreference by lazy {
|
||||||
findPreference<VectorPreference>(VectorPreferences.SETTINGS_CHANGE_PASSWORD_PREFERENCE_KEY)!!
|
findPreference<VectorPreference>(VectorPreferences.SETTINGS_CHANGE_PASSWORD_PREFERENCE_KEY)!!
|
||||||
}
|
}
|
||||||
|
private val mIdentityServerPreference by lazy {
|
||||||
|
findPreference<VectorPreference>(VectorPreferences.SETTINGS_IDENTITY_SERVER_PREFERENCE_KEY)!!
|
||||||
|
}
|
||||||
|
|
||||||
// Local contacts
|
// Local contacts
|
||||||
private val mContactSettingsCategory by lazy {
|
private val mContactSettingsCategory by lazy {
|
||||||
|
@ -168,11 +171,6 @@ class VectorSettingsGeneralFragment : VectorSettingsBaseFragment() {
|
||||||
findPreference<VectorPreference>(VectorPreferences.SETTINGS_HOME_SERVER_PREFERENCE_KEY)!!
|
findPreference<VectorPreference>(VectorPreferences.SETTINGS_HOME_SERVER_PREFERENCE_KEY)!!
|
||||||
.summary = session.sessionParams.homeServerConnectionConfig.homeServerUri.toString()
|
.summary = session.sessionParams.homeServerConnectionConfig.homeServerUri.toString()
|
||||||
|
|
||||||
// identity server
|
|
||||||
// TODO Handle refresh of the value
|
|
||||||
findPreference<VectorPreference>(VectorPreferences.SETTINGS_IDENTITY_SERVER_PREFERENCE_KEY)!!
|
|
||||||
.summary = session.identityService().getCurrentIdentityServer() ?: getString(R.string.identity_server_not_defined)
|
|
||||||
|
|
||||||
refreshEmailsList()
|
refreshEmailsList()
|
||||||
refreshPhoneNumbersList()
|
refreshPhoneNumbersList()
|
||||||
// Contacts
|
// Contacts
|
||||||
|
@ -241,6 +239,13 @@ class VectorSettingsGeneralFragment : VectorSettingsBaseFragment() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override fun onResume() {
|
||||||
|
super.onResume()
|
||||||
|
|
||||||
|
// Refresh identity server summary
|
||||||
|
mIdentityServerPreference.summary = session.identityService().getCurrentIdentityServerUrl() ?: getString(R.string.identity_server_not_defined)
|
||||||
|
}
|
||||||
|
|
||||||
override fun onRequestPermissionsResult(requestCode: Int, permissions: Array<String>, grantResults: IntArray) {
|
override fun onRequestPermissionsResult(requestCode: Int, permissions: Array<String>, grantResults: IntArray) {
|
||||||
if (allGranted(grantResults)) {
|
if (allGranted(grantResults)) {
|
||||||
if (requestCode == PERMISSION_REQUEST_CODE_LAUNCH_CAMERA) {
|
if (requestCode == PERMISSION_REQUEST_CODE_LAUNCH_CAMERA) {
|
||||||
|
|
Loading…
Reference in a new issue