From 8c20180545504a0dc382c81981542e5ad66d4562 Mon Sep 17 00:00:00 2001 From: Marcel Hibbe Date: Fri, 29 Apr 2022 11:20:43 +0200 Subject: [PATCH] show mimetype icons from DrawableUtils Signed-off-by: Marcel Hibbe --- .../talk/adapters/SharedItemsAdapter.kt | 25 ++++--------------- .../talk/adapters/SharedItemsListAdapter.kt | 25 ++++--------------- 2 files changed, 10 insertions(+), 40 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/adapters/SharedItemsAdapter.kt b/app/src/main/java/com/nextcloud/talk/adapters/SharedItemsAdapter.kt index f5ca1ffff..7783e5189 100644 --- a/app/src/main/java/com/nextcloud/talk/adapters/SharedItemsAdapter.kt +++ b/app/src/main/java/com/nextcloud/talk/adapters/SharedItemsAdapter.kt @@ -4,15 +4,16 @@ import android.net.Uri import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import androidx.core.content.ContextCompat import androidx.recyclerview.widget.RecyclerView import com.facebook.drawee.backends.pipeline.Fresco import com.facebook.drawee.interfaces.DraweeController import com.facebook.drawee.view.SimpleDraweeView import com.facebook.imagepipeline.common.RotationOptions import com.facebook.imagepipeline.request.ImageRequestBuilder -import com.nextcloud.talk.R import com.nextcloud.talk.databinding.AttachmentItemBinding import com.nextcloud.talk.repositories.SharedItem +import com.nextcloud.talk.utils.DrawableUtils.getDrawableResourceIdForMimeType import com.nextcloud.talk.utils.FileViewerUtils class SharedItemsAdapter : RecyclerView.Adapter() { @@ -50,25 +51,9 @@ class SharedItemsAdapter : RecyclerView.Adapter() .build() holder.binding.image.controller = draweeController } else { - when (currentItem.mimeType) { - "video/mp4", - "video/quicktime", - "video/ogg" - -> holder.binding.image.setImageResource(R.drawable.ic_mimetype_video) - "audio/mpeg", - "audio/wav", - "audio/ogg", - -> holder.binding.image.setImageResource(R.drawable.ic_mimetype_audio) - "image/png", - "image/jpeg", - "image/gif" - -> holder.binding.image.setImageResource(R.drawable.ic_mimetype_image) - "text/markdown", - "text/plain" - -> holder.binding.image.setImageResource(R.drawable.ic_mimetype_text) - else - -> holder.binding.image.setImageResource(R.drawable.ic_mimetype_file) - } + val drawableResourceId = getDrawableResourceIdForMimeType(currentItem.mimeType) + val drawable = ContextCompat.getDrawable(holder.binding.image.context, drawableResourceId) + holder.binding.image.hierarchy.setPlaceholderImage(drawable) } holder.binding.image.setOnClickListener { val fileViewerUtils = FileViewerUtils(it.context, currentItem.userEntity) diff --git a/app/src/main/java/com/nextcloud/talk/adapters/SharedItemsListAdapter.kt b/app/src/main/java/com/nextcloud/talk/adapters/SharedItemsListAdapter.kt index 60619fca6..b8d52a1cb 100644 --- a/app/src/main/java/com/nextcloud/talk/adapters/SharedItemsListAdapter.kt +++ b/app/src/main/java/com/nextcloud/talk/adapters/SharedItemsListAdapter.kt @@ -5,15 +5,16 @@ import android.text.format.Formatter import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import androidx.core.content.ContextCompat import androidx.recyclerview.widget.RecyclerView import com.facebook.drawee.backends.pipeline.Fresco import com.facebook.drawee.interfaces.DraweeController import com.facebook.imagepipeline.common.RotationOptions import com.facebook.imagepipeline.request.ImageRequestBuilder -import com.nextcloud.talk.R import com.nextcloud.talk.databinding.AttachmentListItemBinding import com.nextcloud.talk.repositories.SharedItem import com.nextcloud.talk.utils.DateUtils +import com.nextcloud.talk.utils.DrawableUtils import com.nextcloud.talk.utils.FileViewerUtils class SharedItemsListAdapter : RecyclerView.Adapter() { @@ -61,25 +62,9 @@ class SharedItemsListAdapter : RecyclerView.Adapter holder.binding.fileImage.setImageResource(R.drawable.ic_mimetype_video) - "audio/mpeg", - "audio/wav", - "audio/ogg", - -> holder.binding.fileImage.setImageResource(R.drawable.ic_mimetype_audio) - "image/png", - "image/jpeg", - "image/gif" - -> holder.binding.fileImage.setImageResource(R.drawable.ic_mimetype_image) - "text/markdown", - "text/plain" - -> holder.binding.fileImage.setImageResource(R.drawable.ic_mimetype_text) - else - -> holder.binding.fileImage.setImageResource(R.drawable.ic_mimetype_file) - } + val drawableResourceId = DrawableUtils.getDrawableResourceIdForMimeType(currentItem.mimeType) + val drawable = ContextCompat.getDrawable(holder.binding.fileImage.context, drawableResourceId) + holder.binding.fileImage.hierarchy.setPlaceholderImage(drawable) } holder.binding.fileItem.setOnClickListener { val fileViewerUtils = FileViewerUtils(it.context, currentItem.userEntity)