change (media preview config) : manage migration of local data

This commit is contained in:
ganfra
2025-06-26 21:44:03 +02:00
parent 98b60d46b1
commit 0e738821b8
5 changed files with 99 additions and 11 deletions
@@ -85,15 +85,35 @@ class DefaultAppPreferencesStore @Inject constructor(
}
}
override fun getHideInviteAvatarsFlow(): Flow<Boolean> {
override fun getHideInviteAvatarsFlow(): Flow<Boolean?> {
return store.data.map { prefs ->
prefs[hideInviteAvatarsKey] == true
prefs[hideInviteAvatarsKey]
}
}
override fun getTimelineMediaPreviewValueFlow(): Flow<MediaPreviewValue> {
override suspend fun setHideInviteAvatars(hide: Boolean?) {
store.edit { prefs ->
if (hide != null) {
prefs[hideInviteAvatarsKey] = hide
} else {
prefs.remove(hideInviteAvatarsKey)
}
}
}
override suspend fun setTimelineMediaPreviewValue(mediaPreviewValue: MediaPreviewValue?) {
store.edit { prefs ->
if (mediaPreviewValue != null) {
prefs[timelineMediaPreviewValueKey] = mediaPreviewValue.name
} else {
prefs.remove(timelineMediaPreviewValueKey)
}
}
}
override fun getTimelineMediaPreviewValueFlow(): Flow<MediaPreviewValue?> {
return store.data.map { prefs ->
prefs[timelineMediaPreviewValueKey]?.let { MediaPreviewValue.valueOf(it) } ?: MediaPreviewValue.On
prefs[timelineMediaPreviewValueKey]?.let { MediaPreviewValue.valueOf(it) }
}
}