mirror of
https://github.com/thunderbird/thunderbird-android.git
synced 2024-09-20 12:12:15 +02:00
Switch account chip back to fixed height view
This commit is contained in:
parent
04d7ce3ce0
commit
7485e3209b
@ -1,38 +0,0 @@
|
||||
package com.fsck.k9.ui.messagelist
|
||||
|
||||
import android.content.Context
|
||||
import android.graphics.Canvas
|
||||
import android.graphics.Color
|
||||
import android.text.TextPaint
|
||||
import android.util.AttributeSet
|
||||
import android.util.TypedValue
|
||||
import android.view.View
|
||||
|
||||
class AccountChip(context: Context, attrs: AttributeSet?) : View(context, attrs) {
|
||||
private val textPaint = TextPaint().apply {
|
||||
color = Color.BLUE
|
||||
}
|
||||
|
||||
init {
|
||||
setTextSizeSp(16)
|
||||
}
|
||||
|
||||
fun setTextSizeSp(size: Int) {
|
||||
val displayMetrics = context.resources.displayMetrics
|
||||
textPaint.textSize = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, size.toFloat(), displayMetrics)
|
||||
}
|
||||
|
||||
fun setColor(color: Int) {
|
||||
textPaint.color = color
|
||||
}
|
||||
|
||||
override fun onDraw(canvas: Canvas) {
|
||||
val cornerRadius = width.toFloat() / 2
|
||||
val baseLine = height - textPaint.fontMetrics.bottom
|
||||
|
||||
val chipTop = baseLine + textPaint.fontMetrics.ascent
|
||||
val chipBottom = baseLine + cornerRadius
|
||||
|
||||
canvas.drawRoundRect(0f, chipTop, width.toFloat(), chipBottom, cornerRadius, cornerRadius, textPaint)
|
||||
}
|
||||
}
|
@ -17,6 +17,7 @@ import android.view.View.OnLongClickListener
|
||||
import android.view.ViewGroup
|
||||
import android.widget.ImageView
|
||||
import android.widget.TextView
|
||||
import androidx.core.graphics.drawable.DrawableCompat
|
||||
import androidx.core.view.isVisible
|
||||
import androidx.recyclerview.widget.DiffUtil
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
@ -265,10 +266,6 @@ class MessageListAdapter internal constructor(
|
||||
holder.chip.isVisible = appearance.showAccountChip
|
||||
|
||||
appearance.fontSizes.setViewTextSize(holder.subject, subjectViewFontSize)
|
||||
if (subjectViewFontSize != FontSizes.FONT_DEFAULT) {
|
||||
holder.chip.setTextSizeSp(subjectViewFontSize)
|
||||
}
|
||||
|
||||
appearance.fontSizes.setViewTextSize(holder.date, appearance.fontSizes.messageListDate)
|
||||
|
||||
// 1 preview line is needed even if it is set to 0, because subject is part of the same text view
|
||||
@ -331,7 +328,9 @@ class MessageListAdapter internal constructor(
|
||||
val subject = MlfUtils.buildSubject(subject, res.getString(R.string.general_no_subject), displayThreadCount)
|
||||
|
||||
if (appearance.showAccountChip) {
|
||||
holder.chip.setColor(account.chipColor)
|
||||
val accountChipDrawable = holder.chip.drawable.mutate()
|
||||
DrawableCompat.setTint(accountChipDrawable, account.chipColor)
|
||||
holder.chip.setImageDrawable(accountChipDrawable)
|
||||
}
|
||||
|
||||
if (appearance.stars) {
|
||||
|
@ -16,7 +16,7 @@ class MessageViewHolder(view: View) : MessageListViewHolder(view) {
|
||||
val subject: TextView = view.findViewById(R.id.subject)
|
||||
val preview: TextView = view.findViewById(R.id.preview)
|
||||
val date: TextView = view.findViewById(R.id.date)
|
||||
val chip: AccountChip = view.findViewById(R.id.account_color_chip)
|
||||
val chip: ImageView = view.findViewById(R.id.account_color_chip)
|
||||
val threadCount: TextView = view.findViewById(R.id.thread_count)
|
||||
val star: ImageView = view.findViewById(R.id.star)
|
||||
val attachment: ImageView = view.findViewById(R.id.attachment)
|
||||
|
7
app/ui/legacy/src/main/res/drawable/ic_account_color.xml
Normal file
7
app/ui/legacy/src/main/res/drawable/ic_account_color.xml
Normal file
@ -0,0 +1,7 @@
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:shape="rectangle">
|
||||
|
||||
<solid android:color="@android:color/white" />
|
||||
<corners android:radius="1.5dp" />
|
||||
|
||||
</shape>
|
@ -57,14 +57,17 @@
|
||||
tools:text="Message preview"
|
||||
tools:textColor="?attr/messageListPreviewTextColor" />
|
||||
|
||||
<com.fsck.k9.ui.messagelist.AccountChip
|
||||
<ImageView
|
||||
android:id="@+id/account_color_chip"
|
||||
android:layout_width="3dp"
|
||||
android:layout_height="0dp"
|
||||
android:layout_height="12dp"
|
||||
android:layout_marginEnd="4dp"
|
||||
app:layout_constraintTop_toTopOf="@+id/subject"
|
||||
android:contentDescription="@null"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/subject"
|
||||
app:layout_constraintEnd_toEndOf="@+id/barrier_start" />
|
||||
app:layout_constraintEnd_toEndOf="@+id/barrier_start"
|
||||
app:layout_constraintTop_toTopOf="@+id/subject"
|
||||
app:srcCompat="@drawable/ic_account_color"
|
||||
tools:tint="@color/material_blue_700" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/status"
|
||||
|
Loading…
Reference in New Issue
Block a user