mirror of
https://github.com/SchildiChat/SchildiChat-android.git
synced 2025-02-02 20:26:47 +01:00
Merge pull request #1983 from vector-im/feature/live_display_name
Make user displayName live in the setting, it should fix #1926
This commit is contained in:
commit
f745e22a52
@ -8,7 +8,7 @@ Improvements 🙌:
|
|||||||
-
|
-
|
||||||
|
|
||||||
Bugfix 🐛:
|
Bugfix 🐛:
|
||||||
-
|
- Display name not shown under Settings/General (#1926)
|
||||||
|
|
||||||
Translations 🗣:
|
Translations 🗣:
|
||||||
-
|
-
|
||||||
|
@ -128,6 +128,7 @@ class VectorSettingsGeneralFragment : VectorSettingsBaseFragment() {
|
|||||||
super.onViewCreated(view, savedInstanceState)
|
super.onViewCreated(view, savedInstanceState)
|
||||||
|
|
||||||
observeUserAvatar()
|
observeUserAvatar()
|
||||||
|
observeUserDisplayName()
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun observeUserAvatar() {
|
private fun observeUserAvatar() {
|
||||||
@ -140,6 +141,22 @@ class VectorSettingsGeneralFragment : VectorSettingsBaseFragment() {
|
|||||||
.disposeOnDestroyView()
|
.disposeOnDestroyView()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun observeUserDisplayName() {
|
||||||
|
session.rx()
|
||||||
|
.liveUser(session.myUserId)
|
||||||
|
.unwrap()
|
||||||
|
.map { it.displayName ?: "" }
|
||||||
|
.distinctUntilChanged()
|
||||||
|
.observeOn(AndroidSchedulers.mainThread())
|
||||||
|
.subscribe { displayName ->
|
||||||
|
mDisplayNamePreference.let {
|
||||||
|
it.summary = displayName
|
||||||
|
it.text = displayName
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.disposeOnDestroyView()
|
||||||
|
}
|
||||||
|
|
||||||
override fun bindPref() {
|
override fun bindPref() {
|
||||||
// Avatar
|
// Avatar
|
||||||
mUserAvatarPreference.let {
|
mUserAvatarPreference.let {
|
||||||
@ -151,8 +168,6 @@ class VectorSettingsGeneralFragment : VectorSettingsBaseFragment() {
|
|||||||
|
|
||||||
// Display name
|
// Display name
|
||||||
mDisplayNamePreference.let {
|
mDisplayNamePreference.let {
|
||||||
it.summary = session.getUser(session.myUserId)?.displayName ?: ""
|
|
||||||
it.text = it.summary.toString()
|
|
||||||
it.onPreferenceChangeListener = Preference.OnPreferenceChangeListener { _, newValue ->
|
it.onPreferenceChangeListener = Preference.OnPreferenceChangeListener { _, newValue ->
|
||||||
newValue
|
newValue
|
||||||
?.let { value -> (value as? String)?.trim() }
|
?.let { value -> (value as? String)?.trim() }
|
||||||
|
Loading…
x
Reference in New Issue
Block a user