Setting background color for chips

This commit is contained in:
Maxime Naturel 2022-02-14 14:10:41 +01:00
parent 07a59e63a6
commit 24a92d5a1e
2 changed files with 5 additions and 3 deletions

View File

@ -29,7 +29,6 @@ import im.vector.app.features.home.AvatarRenderer
import im.vector.app.features.html.PillImageSpan
import org.matrix.android.sdk.api.session.room.model.RoomSummary
import org.matrix.android.sdk.api.util.MatrixItem
import timber.log.Timber
class EventTextRenderer @AssistedInject constructor(@Assisted private val roomId: String?,
private val context: Context,
@ -74,9 +73,7 @@ class EventTextRenderer @AssistedInject constructor(@Assisted private val roomId
var foundIndex = text.indexOf(MatrixItem.NOTIFY_EVERYONE, 0)
while (foundIndex >= 0) {
val endSpan = foundIndex + MatrixItem.NOTIFY_EVERYONE.length
//text.setSpan(ForegroundColorSpan(Color.RED), foundIndex, endSpan, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE)
addPillSpan(text, createPillImageSpan(matrixItem), foundIndex, endSpan)
Timber.e("set span for text $text from index $foundIndex to $endSpan")
foundIndex = text.indexOf(MatrixItem.NOTIFY_EVERYONE, endSpan)
}
}

View File

@ -19,6 +19,7 @@
package im.vector.app.features.html
import android.content.Context
import android.content.res.ColorStateList
import android.graphics.Canvas
import android.graphics.Paint
import android.graphics.drawable.Drawable
@ -32,6 +33,7 @@ import im.vector.app.R
import im.vector.app.core.glide.GlideRequests
import im.vector.app.features.displayname.getBestName
import im.vector.app.features.home.AvatarRenderer
import im.vector.app.features.themes.ThemeUtils
import org.matrix.android.sdk.api.session.room.send.MatrixItemSpan
import org.matrix.android.sdk.api.util.MatrixItem
import java.lang.ref.WeakReference
@ -117,6 +119,9 @@ class PillImageSpan(private val glideRequests: GlideRequests,
setChipMinHeightResource(R.dimen.pill_min_height)
setChipIconSizeResource(R.dimen.pill_avatar_size)
chipIcon = icon
if (matrixItem is MatrixItem.EveryoneInRoomItem) {
chipBackgroundColor = ColorStateList.valueOf(ThemeUtils.getColor(context, R.attr.colorError))
}
setBounds(0, 0, intrinsicWidth, intrinsicHeight)
}
}