From 898728cef9ad27e6af3d9ccac1c5ec8b90544efe Mon Sep 17 00:00:00 2001 From: Marcel Hibbe Date: Sun, 30 Apr 2023 16:53:45 +0200 Subject: [PATCH] use cache for user avatars again (ignore flickering) in the future, avatarVersion might be available for user avatars as well.. Signed-off-by: Marcel Hibbe --- .../nextcloud/talk/adapters/items/ConversationItem.kt | 10 ++++++---- .../nextcloud/talk/extensions/ImageViewExtensions.kt | 4 ++-- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/adapters/items/ConversationItem.kt b/app/src/main/java/com/nextcloud/talk/adapters/items/ConversationItem.kt index 343cb531d..1082b2914 100644 --- a/app/src/main/java/com/nextcloud/talk/adapters/items/ConversationItem.kt +++ b/app/src/main/java/com/nextcloud/talk/adapters/items/ConversationItem.kt @@ -68,8 +68,6 @@ class ConversationItem( IFilterable { private var header: GenericTextHeaderItem? = null - private var isInitialLoad = true - constructor( conversation: Conversation, user: User, @@ -172,7 +170,12 @@ class ConversationItem( when (model.type) { ConversationType.ROOM_TYPE_ONE_TO_ONE_CALL -> { if (!TextUtils.isEmpty(model.name)) { - holder.binding.dialogAvatar.loadUserAvatar(user, model.name!!, true, isInitialLoad) + holder.binding.dialogAvatar.loadUserAvatar( + user, + model.name!!, + true, + false + ) } else { holder.binding.dialogAvatar.visibility = View.GONE } @@ -186,7 +189,6 @@ class ConversationItem( else -> holder.binding.dialogAvatar.visibility = View.GONE } } - isInitialLoad = false } private fun shouldLoadAvatar( diff --git a/app/src/main/java/com/nextcloud/talk/extensions/ImageViewExtensions.kt b/app/src/main/java/com/nextcloud/talk/extensions/ImageViewExtensions.kt index bf8ef28eb..38b0a746f 100644 --- a/app/src/main/java/com/nextcloud/talk/extensions/ImageViewExtensions.kt +++ b/app/src/main/java/com/nextcloud/talk/extensions/ImageViewExtensions.kt @@ -84,7 +84,7 @@ fun ImageView.loadUserAvatar( user: User, avatarId: String, requestBigSize: Boolean = true, - replace: Boolean + ignoreCache: Boolean ): io.reactivex.disposables .Disposable { val imageRequestUri = ApiUtils.getUrlForAvatar( @@ -93,7 +93,7 @@ fun ImageView.loadUserAvatar( requestBigSize ) - return loadAvatarInternal(user, imageRequestUri, replace, null) + return loadAvatarInternal(user, imageRequestUri, ignoreCache, null) } @OptIn(ExperimentalCoilApi::class)