Code review

This commit is contained in:
Valere 2021-11-17 16:37:16 +01:00
parent cedf553602
commit 78bdef4e2d
5 changed files with 36 additions and 28 deletions

View file

@ -36,21 +36,30 @@ class ShieldImageView @JvmOverloads constructor(
}
}
fun render(roomEncryptionTrustLevel: RoomEncryptionTrustLevel?) {
fun render(roomEncryptionTrustLevel: RoomEncryptionTrustLevel?, borderLess: Boolean = false) {
isVisible = roomEncryptionTrustLevel != null
when (roomEncryptionTrustLevel) {
RoomEncryptionTrustLevel.Default -> {
contentDescription = context.getString(R.string.a11y_trust_level_default)
setImageResource(R.drawable.ic_shield_black)
setImageResource(
if (borderLess) R.drawable.ic_shield_black_no_border
else R.drawable.ic_shield_black
)
}
RoomEncryptionTrustLevel.Warning -> {
contentDescription = context.getString(R.string.a11y_trust_level_warning)
setImageResource(R.drawable.ic_shield_warning)
setImageResource(
if (borderLess) R.drawable.ic_shield_warning_no_border
else R.drawable.ic_shield_warning
)
}
RoomEncryptionTrustLevel.Trusted -> {
contentDescription = context.getString(R.string.a11y_trust_level_trusted)
setImageResource(R.drawable.ic_shield_trusted)
setImageResource(
if (borderLess) R.drawable.ic_shield_trusted_no_border
else R.drawable.ic_shield_trusted
)
}
}
}

View file

@ -16,12 +16,12 @@
*/
package im.vector.app.features.crypto.verification.epoxy
import android.widget.ImageView
import com.airbnb.epoxy.EpoxyAttribute
import com.airbnb.epoxy.EpoxyModelClass
import im.vector.app.R
import im.vector.app.core.epoxy.VectorEpoxyHolder
import im.vector.app.core.epoxy.VectorEpoxyModel
import im.vector.app.core.ui.views.ShieldImageView
import org.matrix.android.sdk.api.crypto.RoomEncryptionTrustLevel
/**
@ -35,23 +35,10 @@ abstract class BottomSheetVerificationBigImageItem : VectorEpoxyModel<BottomShee
override fun bind(holder: Holder) {
super.bind(holder)
when (roomEncryptionTrustLevel) {
RoomEncryptionTrustLevel.Default -> {
holder.image.contentDescription = holder.view.context.getString(R.string.a11y_trust_level_default)
holder.image.setImageResource(R.drawable.ic_shield_black)
}
RoomEncryptionTrustLevel.Warning -> {
holder.image.contentDescription = holder.view.context.getString(R.string.a11y_trust_level_warning)
holder.image.setImageResource(R.drawable.ic_shield_warning_no_border)
}
RoomEncryptionTrustLevel.Trusted -> {
holder.image.contentDescription = holder.view.context.getString(R.string.a11y_trust_level_trusted)
holder.image.setImageResource(R.drawable.ic_shield_trusted_no_border)
}
}
holder.image.render(roomEncryptionTrustLevel, borderLess = true)
}
class Holder : VectorEpoxyHolder() {
val image by bind<ImageView>(R.id.itemVerificationBigImage)
val image by bind<ShieldImageView>(R.id.itemVerificationBigImage)
}
}

View file

@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="#17191C"
android:pathData="M12.0077,23.4869C12.0051,23.4875 12.0025,23.4881 12,23.4886C11.9975,23.4881 11.9949,23.4875 11.9923,23.4869C11.9204,23.4706 11.8129,23.4452 11.6749,23.4092C11.3989,23.3373 11.0015,23.2235 10.5233,23.0575C9.5654,22.725 8.2921,22.186 7.0225,21.3608C4.4897,19.7145 2,16.954 2,12.405V3.4496L12,0.521L22,3.4496V12.405C22,16.954 19.5103,19.7145 16.9775,21.3608C15.7079,22.186 14.4346,22.725 13.4767,23.0575C12.9985,23.2235 12.6011,23.3373 12.3251,23.4092C12.1871,23.4452 12.0796,23.4706 12.0077,23.4869Z" />
</vector>

View file

@ -4,9 +4,15 @@
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:pathData="M1.5,12.405V3.075L12,0L22.5,3.075V12.405C22.5,21.945 12,24 12,24C12,24 1.5,21.945 1.5,12.405Z"
android:fillColor="#0DBD8B"/>
android:strokeWidth="1"
android:pathData="M12.0077,23.4869C12.0051,23.4875 12.0025,23.4881 12,23.4886C11.9975,23.4881 11.9949,23.4875 11.9923,23.4869C11.9204,23.4706 11.8129,23.4452 11.6749,23.4092C11.3989,23.3373 11.0015,23.2235 10.5233,23.0575C9.5654,22.725 8.2921,22.186 7.0225,21.3608C4.4897,19.7145 2,16.954 2,12.405V3.4496L12,0.521L22,3.4496V12.405C22,16.954 19.5103,19.7145 16.9775,21.3608C15.7079,22.186 14.4346,22.725 13.4767,23.0575C12.9985,23.2235 12.6011,23.3373 12.3251,23.4092C12.1871,23.4452 12.0796,23.4706 12.0077,23.4869Z"
android:fillColor="#FF4B55"
android:strokeColor="#ffffff"/>
<path
android:pathData="M17.4157,6.8094C17.1457,6.5244 16.6957,6.5094 16.4107,6.7794L10.0057,12.7794L7.6507,11.1294C7.3357,10.9194 6.9007,10.9194 6.6007,11.1894C6.2407,11.4894 6.2107,12.0294 6.5107,12.3894L9.2257,15.5094C9.2707,15.5544 9.3157,15.6144 9.3757,15.6444C9.8857,16.0644 10.6507,15.9894 11.0707,15.4794L11.1157,15.4194L17.4457,7.7544C17.6557,7.4844 17.6557,7.0794 17.4157,6.8094Z"
android:fillColor="#ffffff"/>
android:pathData="M1.5,12.405V3.075L12,0L22.5,3.075V12.405C22.5,21.945 12,24 12,24C12,24 1.5,21.945 1.5,12.405Z"
android:fillColor="#FF4B55"/>
<path
android:pathData="M10.8527,8.0725C10.7964,7.4313 11.2689,6.8688 11.9102,6.8238C12.5402,6.7788 13.1027,7.2513 13.1702,7.8925V8.0725L12.8102,12.5725C12.7764,12.9888 12.4277,13.3038 12.0114,13.3038H11.9439C11.5502,13.27 11.2464,12.9663 11.2127,12.5725L10.8527,8.0725ZM12.9888,15.5076C12.9888,16.0543 12.5456,16.4976 11.9988,16.4976C11.452,16.4976 11.0088,16.0543 11.0088,15.5076C11.0088,14.9608 11.452,14.5176 11.9988,14.5176C12.5456,14.5176 12.9888,14.9608 12.9888,15.5076Z"
android:fillColor="#ffffff"
android:fillType="evenOdd"/>
</vector>

View file

@ -1,8 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<ImageView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:contentDescription="@string/trusted"
tools:src="@drawable/ic_shield_trusted_no_border"
<im.vector.app.core.ui.views.ShieldImageView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/itemVerificationBigImage"
android:layout_width="match_parent"
android:layout_height="180dp"