forked from GitHub-Mirror/riotX-android
Content : make content url resolution aware of homeserver url
This commit is contained in:
@ -4,16 +4,13 @@ import android.widget.ImageView
|
||||
import androidx.core.content.ContextCompat
|
||||
import com.amulyakhare.textdrawable.TextDrawable
|
||||
import com.bumptech.glide.request.RequestOptions
|
||||
import im.vector.matrix.android.api.session.content.ContentUrlResolver
|
||||
import im.vector.matrix.android.api.Matrix
|
||||
import im.vector.matrix.android.api.session.room.model.RoomMember
|
||||
import im.vector.matrix.android.api.session.room.model.RoomSummary
|
||||
import im.vector.riotredesign.R
|
||||
import im.vector.riotredesign.core.extensions.firstCharAsString
|
||||
import im.vector.riotredesign.core.glide.GlideApp
|
||||
|
||||
private const val MEDIA_URL = "https://matrix.org/_matrix/media/v1/download/"
|
||||
private const val MXC_PREFIX = "mxc://"
|
||||
|
||||
object AvatarRenderer {
|
||||
|
||||
fun render(roomMember: RoomMember, imageView: ImageView) {
|
||||
@ -28,7 +25,7 @@ object AvatarRenderer {
|
||||
if (name.isNullOrEmpty()) {
|
||||
return
|
||||
}
|
||||
val resolvedUrl = ContentUrlResolver.resolve(avatarUrl)
|
||||
val resolvedUrl = Matrix.getInstance().currentSession.contentUrlResolver().resolveFullSize(avatarUrl)
|
||||
val avatarColor = ContextCompat.getColor(imageView.context, R.color.pale_teal)
|
||||
val fallbackDrawable = TextDrawable.builder().buildRound(name.firstCharAsString().toUpperCase(), avatarColor)
|
||||
|
||||
|
@ -5,6 +5,7 @@ import android.graphics.Point
|
||||
import android.media.ExifInterface
|
||||
import android.view.WindowManager
|
||||
import android.widget.ImageView
|
||||
import im.vector.matrix.android.api.Matrix
|
||||
import im.vector.matrix.android.api.session.content.ContentUrlResolver
|
||||
import im.vector.matrix.android.api.session.room.model.message.MessageImageContent
|
||||
import im.vector.riotredesign.core.glide.GlideApp
|
||||
@ -48,12 +49,17 @@ object MessageImageRenderer {
|
||||
imageView.layoutParams.height = finalHeight
|
||||
imageView.layoutParams.width = finalWidth
|
||||
|
||||
val resolvedUrl = ContentUrlResolver.resolve(messageContent.url) ?: return
|
||||
val contentUrlResolver = Matrix.getInstance().currentSession.contentUrlResolver()
|
||||
val resolvedUrl = contentUrlResolver.resolveThumbnail(
|
||||
messageContent.url,
|
||||
finalWidth,
|
||||
finalHeight,
|
||||
ContentUrlResolver.ThumbnailMethod.SCALE
|
||||
) ?: return
|
||||
|
||||
GlideApp
|
||||
.with(imageView)
|
||||
.load(resolvedUrl)
|
||||
.override(finalWidth, finalHeight)
|
||||
.thumbnail(0.3f)
|
||||
.into(imageView)
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user