From 70e222bd8f07fbd6891fc257449e50ae59441e5c Mon Sep 17 00:00:00 2001
From: Taras Smakula <tarassmakula@gmail.com>
Date: Thu, 30 Nov 2023 20:04:26 +0200
Subject: [PATCH] Random background colors for galleries

---
 .../futo/circles/core/extensions/ImageViewExtensions.kt  | 2 +-
 .../picker/gallery/rooms/list/GalleryViewHolder.kt       | 9 ++++++++-
 core/src/main/res/layout/list_item_joined_gallery.xml    | 1 -
 3 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/core/src/main/java/org/futo/circles/core/extensions/ImageViewExtensions.kt b/core/src/main/java/org/futo/circles/core/extensions/ImageViewExtensions.kt
index 02f5e50a2..681a6fe68 100644
--- a/core/src/main/java/org/futo/circles/core/extensions/ImageViewExtensions.kt
+++ b/core/src/main/java/org/futo/circles/core/extensions/ImageViewExtensions.kt
@@ -75,7 +75,7 @@ fun ImageView.loadProfileIcon(
 
 
 @SuppressLint("CheckResult")
-private fun ImageView.loadMatrixImage(
+fun ImageView.loadMatrixImage(
     url: String?,
     loadOriginalSize: Boolean = false,
     placeholder: Drawable? = null,
diff --git a/core/src/main/java/org/futo/circles/core/feature/picker/gallery/rooms/list/GalleryViewHolder.kt b/core/src/main/java/org/futo/circles/core/feature/picker/gallery/rooms/list/GalleryViewHolder.kt
index f5ab7092c..8a99eaf46 100644
--- a/core/src/main/java/org/futo/circles/core/feature/picker/gallery/rooms/list/GalleryViewHolder.kt
+++ b/core/src/main/java/org/futo/circles/core/feature/picker/gallery/rooms/list/GalleryViewHolder.kt
@@ -8,9 +8,12 @@ import org.futo.circles.core.base.list.ViewBindingHolder
 import org.futo.circles.core.base.list.context
 import org.futo.circles.core.databinding.ListItemInvitedGalleryBinding
 import org.futo.circles.core.databinding.ListItemJoinedGalleryBinding
+import org.futo.circles.core.extensions.loadMatrixImage
 import org.futo.circles.core.extensions.loadProfileIcon
 import org.futo.circles.core.extensions.onClick
 import org.futo.circles.core.extensions.setIsVisible
+import org.futo.circles.core.feature.textDrawable.ColorGenerator
+import org.futo.circles.core.feature.textDrawable.TextDrawable
 import org.futo.circles.core.model.GalleryListItem
 import org.futo.circles.core.model.InvitedGalleryListItem
 import org.futo.circles.core.model.JoinedGalleryListItem
@@ -37,7 +40,11 @@ class JoinedGalleryViewHolder(
         if (data !is JoinedGalleryListItem) return
 
         with(binding) {
-            ivGalleryImage.loadProfileIcon(data.info.avatarUrl, "")
+            val placeholder = TextDrawable.Builder()
+                .setShape(TextDrawable.SHAPE_ROUND_RECT)
+                .setColor(ColorGenerator().getColor(data.id))
+                .build()
+            ivGalleryImage.loadMatrixImage(url = data.info.avatarUrl, placeholder = placeholder)
             tvGalleryName.text = data.info.title
         }
     }
diff --git a/core/src/main/res/layout/list_item_joined_gallery.xml b/core/src/main/res/layout/list_item_joined_gallery.xml
index dcd53f1d5..a4b98b2aa 100644
--- a/core/src/main/res/layout/list_item_joined_gallery.xml
+++ b/core/src/main/res/layout/list_item_joined_gallery.xml
@@ -17,7 +17,6 @@
         android:adjustViewBounds="true"
         android:alpha="0.9"
         android:scaleType="centerCrop"
-        android:src="@drawable/ic_gallery"
         app:layout_constraintDimensionRatio="w,1:2"
         app:layout_constraintEnd_toEndOf="parent"
         app:layout_constraintStart_toStartOf="parent"
-- 
GitLab