mirror of
https://github.com/nextcloud/talk-android
synced 2025-07-09 22:04:24 +01:00
show mimetype icons from DrawableUtils
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
This commit is contained in:
parent
704ea90449
commit
8c20180545
@ -4,15 +4,16 @@ import android.net.Uri
|
|||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
|
import androidx.core.content.ContextCompat
|
||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import com.facebook.drawee.backends.pipeline.Fresco
|
import com.facebook.drawee.backends.pipeline.Fresco
|
||||||
import com.facebook.drawee.interfaces.DraweeController
|
import com.facebook.drawee.interfaces.DraweeController
|
||||||
import com.facebook.drawee.view.SimpleDraweeView
|
import com.facebook.drawee.view.SimpleDraweeView
|
||||||
import com.facebook.imagepipeline.common.RotationOptions
|
import com.facebook.imagepipeline.common.RotationOptions
|
||||||
import com.facebook.imagepipeline.request.ImageRequestBuilder
|
import com.facebook.imagepipeline.request.ImageRequestBuilder
|
||||||
import com.nextcloud.talk.R
|
|
||||||
import com.nextcloud.talk.databinding.AttachmentItemBinding
|
import com.nextcloud.talk.databinding.AttachmentItemBinding
|
||||||
import com.nextcloud.talk.repositories.SharedItem
|
import com.nextcloud.talk.repositories.SharedItem
|
||||||
|
import com.nextcloud.talk.utils.DrawableUtils.getDrawableResourceIdForMimeType
|
||||||
import com.nextcloud.talk.utils.FileViewerUtils
|
import com.nextcloud.talk.utils.FileViewerUtils
|
||||||
|
|
||||||
class SharedItemsAdapter : RecyclerView.Adapter<SharedItemsAdapter.ViewHolder>() {
|
class SharedItemsAdapter : RecyclerView.Adapter<SharedItemsAdapter.ViewHolder>() {
|
||||||
@ -50,25 +51,9 @@ class SharedItemsAdapter : RecyclerView.Adapter<SharedItemsAdapter.ViewHolder>()
|
|||||||
.build()
|
.build()
|
||||||
holder.binding.image.controller = draweeController
|
holder.binding.image.controller = draweeController
|
||||||
} else {
|
} else {
|
||||||
when (currentItem.mimeType) {
|
val drawableResourceId = getDrawableResourceIdForMimeType(currentItem.mimeType)
|
||||||
"video/mp4",
|
val drawable = ContextCompat.getDrawable(holder.binding.image.context, drawableResourceId)
|
||||||
"video/quicktime",
|
holder.binding.image.hierarchy.setPlaceholderImage(drawable)
|
||||||
"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)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
holder.binding.image.setOnClickListener {
|
holder.binding.image.setOnClickListener {
|
||||||
val fileViewerUtils = FileViewerUtils(it.context, currentItem.userEntity)
|
val fileViewerUtils = FileViewerUtils(it.context, currentItem.userEntity)
|
||||||
|
@ -5,15 +5,16 @@ import android.text.format.Formatter
|
|||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
|
import androidx.core.content.ContextCompat
|
||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import com.facebook.drawee.backends.pipeline.Fresco
|
import com.facebook.drawee.backends.pipeline.Fresco
|
||||||
import com.facebook.drawee.interfaces.DraweeController
|
import com.facebook.drawee.interfaces.DraweeController
|
||||||
import com.facebook.imagepipeline.common.RotationOptions
|
import com.facebook.imagepipeline.common.RotationOptions
|
||||||
import com.facebook.imagepipeline.request.ImageRequestBuilder
|
import com.facebook.imagepipeline.request.ImageRequestBuilder
|
||||||
import com.nextcloud.talk.R
|
|
||||||
import com.nextcloud.talk.databinding.AttachmentListItemBinding
|
import com.nextcloud.talk.databinding.AttachmentListItemBinding
|
||||||
import com.nextcloud.talk.repositories.SharedItem
|
import com.nextcloud.talk.repositories.SharedItem
|
||||||
import com.nextcloud.talk.utils.DateUtils
|
import com.nextcloud.talk.utils.DateUtils
|
||||||
|
import com.nextcloud.talk.utils.DrawableUtils
|
||||||
import com.nextcloud.talk.utils.FileViewerUtils
|
import com.nextcloud.talk.utils.FileViewerUtils
|
||||||
|
|
||||||
class SharedItemsListAdapter : RecyclerView.Adapter<SharedItemsListAdapter.ViewHolder>() {
|
class SharedItemsListAdapter : RecyclerView.Adapter<SharedItemsListAdapter.ViewHolder>() {
|
||||||
@ -61,25 +62,9 @@ class SharedItemsListAdapter : RecyclerView.Adapter<SharedItemsListAdapter.ViewH
|
|||||||
.build()
|
.build()
|
||||||
holder.binding.fileImage.controller = draweeController
|
holder.binding.fileImage.controller = draweeController
|
||||||
} else {
|
} else {
|
||||||
when (currentItem.mimeType) {
|
val drawableResourceId = DrawableUtils.getDrawableResourceIdForMimeType(currentItem.mimeType)
|
||||||
"video/mp4",
|
val drawable = ContextCompat.getDrawable(holder.binding.fileImage.context, drawableResourceId)
|
||||||
"video/quicktime",
|
holder.binding.fileImage.hierarchy.setPlaceholderImage(drawable)
|
||||||
"video/ogg"
|
|
||||||
-> 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)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
holder.binding.fileItem.setOnClickListener {
|
holder.binding.fileItem.setOnClickListener {
|
||||||
val fileViewerUtils = FileViewerUtils(it.context, currentItem.userEntity)
|
val fileViewerUtils = FileViewerUtils(it.context, currentItem.userEntity)
|
||||||
|
Loading…
Reference in New Issue
Block a user