From 10d5268d0f81f16f71c35bc3fb52e9fff31e3410 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 6 Dec 2023 14:10:05 +0100 Subject: [PATCH] SAS emoji: use embedded drawable (#1953) --- .../impl/VerifySelfSessionStateProvider.kt | 14 +-- .../impl/VerifySelfSessionView.kt | 14 +-- .../impl/emoji/VerificationEmoji.kt | 89 +++++++++++++++++++ .../drawable/ic_verification_aeroplane.xml | 18 ++++ .../res/drawable/ic_verification_anchor.xml | 12 +++ .../res/drawable/ic_verification_apple.xml | 15 ++++ .../res/drawable/ic_verification_ball.xml | 15 ++++ .../res/drawable/ic_verification_banana.xml | 36 ++++++++ .../res/drawable/ic_verification_bell.xml | 15 ++++ .../res/drawable/ic_verification_bicycle.xml | 27 ++++++ .../res/drawable/ic_verification_book.xml | 24 +++++ .../drawable/ic_verification_butterfly.xml | 39 ++++++++ .../res/drawable/ic_verification_cactus.xml | 51 +++++++++++ .../res/drawable/ic_verification_cake.xml | 42 +++++++++ .../main/res/drawable/ic_verification_cat.xml | 36 ++++++++ .../res/drawable/ic_verification_clock.xml | 27 ++++++ .../res/drawable/ic_verification_cloud.xml | 12 +++ .../res/drawable/ic_verification_corn.xml | 18 ++++ .../main/res/drawable/ic_verification_dog.xml | 45 ++++++++++ .../res/drawable/ic_verification_elephant.xml | 15 ++++ .../res/drawable/ic_verification_fire.xml | 12 +++ .../res/drawable/ic_verification_fish.xml | 24 +++++ .../res/drawable/ic_verification_flag.xml | 24 +++++ .../res/drawable/ic_verification_flower.xml | 15 ++++ .../res/drawable/ic_verification_folder.xml | 12 +++ .../res/drawable/ic_verification_gift.xml | 21 +++++ .../res/drawable/ic_verification_glasses.xml | 12 +++ .../res/drawable/ic_verification_globe.xml | 15 ++++ .../res/drawable/ic_verification_guitar.xml | 51 +++++++++++ .../res/drawable/ic_verification_hammer.xml | 12 +++ .../main/res/drawable/ic_verification_hat.xml | 15 ++++ .../drawable/ic_verification_headphones.xml | 15 ++++ .../res/drawable/ic_verification_heart.xml | 9 ++ .../res/drawable/ic_verification_horse.xml | 33 +++++++ .../drawable/ic_verification_hourglass.xml | 15 ++++ .../main/res/drawable/ic_verification_key.xml | 9 ++ .../drawable/ic_verification_light_bulb.xml | 21 +++++ .../res/drawable/ic_verification_lion.xml | 54 +++++++++++ .../res/drawable/ic_verification_lock.xml | 12 +++ .../res/drawable/ic_verification_moon.xml | 12 +++ .../res/drawable/ic_verification_mushroom.xml | 24 +++++ .../res/drawable/ic_verification_octopus.xml | 24 +++++ .../res/drawable/ic_verification_panda.xml | 42 +++++++++ .../drawable/ic_verification_paperclip.xml | 9 ++ .../res/drawable/ic_verification_pencil.xml | 24 +++++ .../res/drawable/ic_verification_penguin.xml | 21 +++++ .../res/drawable/ic_verification_phone.xml | 15 ++++ .../main/res/drawable/ic_verification_pig.xml | 21 +++++ .../main/res/drawable/ic_verification_pin.xml | 18 ++++ .../res/drawable/ic_verification_pizza.xml | 21 +++++ .../res/drawable/ic_verification_rabbit.xml | 27 ++++++ .../res/drawable/ic_verification_robot.xml | 48 ++++++++++ .../res/drawable/ic_verification_rocket.xml | 24 +++++ .../res/drawable/ic_verification_rooster.xml | 18 ++++ .../res/drawable/ic_verification_santa.xml | 42 +++++++++ .../res/drawable/ic_verification_scissors.xml | 21 +++++ .../res/drawable/ic_verification_smiley.xml | 18 ++++ .../res/drawable/ic_verification_spanner.xml | 9 ++ .../drawable/ic_verification_strawberry.xml | 15 ++++ .../drawable/ic_verification_thumbs_up.xml | 12 +++ .../res/drawable/ic_verification_train.xml | 72 +++++++++++++++ .../res/drawable/ic_verification_tree.xml | 54 +++++++++++ .../res/drawable/ic_verification_trophy.xml | 18 ++++ .../res/drawable/ic_verification_trumpet.xml | 21 +++++ .../res/drawable/ic_verification_turtle.xml | 21 +++++ .../res/drawable/ic_verification_umbrella.xml | 18 ++++ .../res/drawable/ic_verification_unicorn.xml | 30 +++++++ .../impl/VerifySelfSessionPresenterTests.kt | 4 +- .../api/verification/VerificationEmoji.kt | 2 +- .../RustSessionVerificationService.kt | 2 +- 70 files changed, 1636 insertions(+), 16 deletions(-) create mode 100644 features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/emoji/VerificationEmoji.kt create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_aeroplane.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_anchor.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_apple.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_ball.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_banana.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_bell.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_bicycle.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_book.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_butterfly.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_cactus.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_cake.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_cat.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_clock.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_cloud.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_corn.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_dog.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_elephant.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_fire.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_fish.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_flag.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_flower.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_folder.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_gift.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_glasses.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_globe.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_guitar.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_hammer.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_hat.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_headphones.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_heart.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_horse.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_hourglass.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_key.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_light_bulb.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_lion.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_lock.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_moon.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_mushroom.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_octopus.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_panda.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_paperclip.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_pencil.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_penguin.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_phone.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_pig.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_pin.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_pizza.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_rabbit.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_robot.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_rocket.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_rooster.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_santa.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_scissors.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_smiley.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_spanner.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_strawberry.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_thumbs_up.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_train.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_tree.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_trophy.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_trumpet.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_turtle.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_umbrella.xml create mode 100644 features/verifysession/impl/src/main/res/drawable/ic_verification_unicorn.xml diff --git a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/VerifySelfSessionStateProvider.kt b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/VerifySelfSessionStateProvider.kt index 54a59dee01..c0d5bc1628 100644 --- a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/VerifySelfSessionStateProvider.kt +++ b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/VerifySelfSessionStateProvider.kt @@ -49,11 +49,11 @@ fun aVerifySelfSessionState() = VerifySelfSessionState( ) fun aVerificationEmojiList() = listOf( - VerificationEmoji("πŸ•", "Pizza"), - VerificationEmoji("πŸš€", "Rocket"), - VerificationEmoji("πŸš€", "Rocket"), - VerificationEmoji("πŸ—ΊοΈ", "Map"), - VerificationEmoji("🎳", "Bowling"), - VerificationEmoji("🎳", "Bowling"), - VerificationEmoji("πŸ“Œ", "Pin"), + VerificationEmoji(27, "Pizza"), + VerificationEmoji(54, "Rocket"), + VerificationEmoji(54, "Rocket"), + VerificationEmoji(42, "Book"), + VerificationEmoji(48, "Hammer"), + VerificationEmoji(48, "Hammer"), + VerificationEmoji(63, "Pin"), ) diff --git a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/VerifySelfSessionView.kt b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/VerifySelfSessionView.kt index df29cc653e..a2b0f209e4 100644 --- a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/VerifySelfSessionView.kt +++ b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/VerifySelfSessionView.kt @@ -17,6 +17,7 @@ package io.element.android.features.verifysession.impl import androidx.activity.compose.BackHandler +import androidx.compose.foundation.Image import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row @@ -25,6 +26,7 @@ import androidx.compose.foundation.layout.fillMaxHeight import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size import androidx.compose.foundation.layout.widthIn import androidx.compose.material3.MaterialTheme import androidx.compose.runtime.Composable @@ -33,11 +35,13 @@ import androidx.compose.runtime.getValue import androidx.compose.runtime.remember import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.compose.ui.unit.dp -import androidx.compose.ui.unit.sp +import io.element.android.compound.theme.ElementTheme +import io.element.android.features.verifysession.impl.emoji.toEmojiDrawableRes import io.element.android.libraries.architecture.Async import io.element.android.libraries.designsystem.atomic.molecules.ButtonColumnMolecule import io.element.android.libraries.designsystem.atomic.molecules.IconTitleSubtitleMolecule @@ -49,7 +53,6 @@ import io.element.android.libraries.designsystem.theme.components.CircularProgre import io.element.android.libraries.designsystem.theme.components.Text import io.element.android.libraries.designsystem.theme.components.TextButton import io.element.android.libraries.matrix.api.verification.VerificationEmoji -import io.element.android.compound.theme.ElementTheme import io.element.android.libraries.ui.strings.CommonStrings import io.element.android.features.verifysession.impl.VerifySelfSessionState.VerificationStep as FlowStep @@ -158,9 +161,10 @@ private fun ContentVerifying(verificationFlowStep: FlowStep.Verifying, modifier: @Composable private fun EmojiItemView(emoji: VerificationEmoji, modifier: Modifier = Modifier) { Column(horizontalAlignment = Alignment.CenterHorizontally, modifier = modifier) { - Text( - text = emoji.code, - style = ElementTheme.typography.fontBodyMdRegular.copy(fontSize = 34.sp), + Image( + modifier = Modifier.size(48.dp), + painter = painterResource(id = emoji.code.toEmojiDrawableRes()), + contentDescription = null, ) Spacer(modifier = Modifier.height(16.dp)) Text( diff --git a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/emoji/VerificationEmoji.kt b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/emoji/VerificationEmoji.kt new file mode 100644 index 0000000000..4b96808dc2 --- /dev/null +++ b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/emoji/VerificationEmoji.kt @@ -0,0 +1,89 @@ +/* + * Copyright (c) 2023 New Vector Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.element.android.features.verifysession.impl.emoji + +import androidx.annotation.DrawableRes +import io.element.android.features.verifysession.impl.R + +@DrawableRes +internal fun Int.toEmojiDrawableRes(): Int { + return when (this % 64) { + 0 -> R.drawable.ic_verification_dog + 1 -> R.drawable.ic_verification_cat + 2 -> R.drawable.ic_verification_lion + 3 -> R.drawable.ic_verification_horse + 4 -> R.drawable.ic_verification_unicorn + 5 -> R.drawable.ic_verification_pig + 6 -> R.drawable.ic_verification_elephant + 7 -> R.drawable.ic_verification_rabbit + 8 -> R.drawable.ic_verification_panda + 9 -> R.drawable.ic_verification_rooster + 10 -> R.drawable.ic_verification_penguin + 11 -> R.drawable.ic_verification_turtle + 12 -> R.drawable.ic_verification_fish + 13 -> R.drawable.ic_verification_octopus + 14 -> R.drawable.ic_verification_butterfly + 15 -> R.drawable.ic_verification_flower + 16 -> R.drawable.ic_verification_tree + 17 -> R.drawable.ic_verification_cactus + 18 -> R.drawable.ic_verification_mushroom + 19 -> R.drawable.ic_verification_globe + 20 -> R.drawable.ic_verification_moon + 21 -> R.drawable.ic_verification_cloud + 22 -> R.drawable.ic_verification_fire + 23 -> R.drawable.ic_verification_banana + 24 -> R.drawable.ic_verification_apple + 25 -> R.drawable.ic_verification_strawberry + 26 -> R.drawable.ic_verification_corn + 27 -> R.drawable.ic_verification_pizza + 28 -> R.drawable.ic_verification_cake + 29 -> R.drawable.ic_verification_heart + 30 -> R.drawable.ic_verification_smiley + 31 -> R.drawable.ic_verification_robot + 32 -> R.drawable.ic_verification_hat + 33 -> R.drawable.ic_verification_glasses + 34 -> R.drawable.ic_verification_spanner + 35 -> R.drawable.ic_verification_santa + 36 -> R.drawable.ic_verification_thumbs_up + 37 -> R.drawable.ic_verification_umbrella + 38 -> R.drawable.ic_verification_hourglass + 39 -> R.drawable.ic_verification_clock + 40 -> R.drawable.ic_verification_gift + 41 -> R.drawable.ic_verification_light_bulb + 42 -> R.drawable.ic_verification_book + 43 -> R.drawable.ic_verification_pencil + 44 -> R.drawable.ic_verification_paperclip + 45 -> R.drawable.ic_verification_scissors + 46 -> R.drawable.ic_verification_lock + 47 -> R.drawable.ic_verification_key + 48 -> R.drawable.ic_verification_hammer + 49 -> R.drawable.ic_verification_phone + 50 -> R.drawable.ic_verification_flag + 51 -> R.drawable.ic_verification_train + 52 -> R.drawable.ic_verification_bicycle + 53 -> R.drawable.ic_verification_aeroplane + 54 -> R.drawable.ic_verification_rocket + 55 -> R.drawable.ic_verification_trophy + 56 -> R.drawable.ic_verification_ball + 57 -> R.drawable.ic_verification_guitar + 58 -> R.drawable.ic_verification_trumpet + 59 -> R.drawable.ic_verification_bell + 60 -> R.drawable.ic_verification_anchor + 61 -> R.drawable.ic_verification_headphones + 62 -> R.drawable.ic_verification_folder + /* 63 */ else -> R.drawable.ic_verification_pin + } +} diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_aeroplane.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_aeroplane.xml new file mode 100644 index 0000000000..72026cd7a0 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_aeroplane.xml @@ -0,0 +1,18 @@ + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_anchor.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_anchor.xml new file mode 100644 index 0000000000..b89d033b9e --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_anchor.xml @@ -0,0 +1,12 @@ + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_apple.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_apple.xml new file mode 100644 index 0000000000..54e0f9a3c0 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_apple.xml @@ -0,0 +1,15 @@ + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_ball.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_ball.xml new file mode 100644 index 0000000000..b12c6d245b --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_ball.xml @@ -0,0 +1,15 @@ + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_banana.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_banana.xml new file mode 100644 index 0000000000..cdd3cb1b9f --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_banana.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_bell.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_bell.xml new file mode 100644 index 0000000000..2f29828bcf --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_bell.xml @@ -0,0 +1,15 @@ + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_bicycle.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_bicycle.xml new file mode 100644 index 0000000000..1427e793c5 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_bicycle.xml @@ -0,0 +1,27 @@ + + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_book.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_book.xml new file mode 100644 index 0000000000..8e3ecc00c0 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_book.xml @@ -0,0 +1,24 @@ + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_butterfly.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_butterfly.xml new file mode 100644 index 0000000000..d4b557a7ed --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_butterfly.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_cactus.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_cactus.xml new file mode 100644 index 0000000000..ce8aff0657 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_cactus.xml @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_cake.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_cake.xml new file mode 100644 index 0000000000..9ebb3c0904 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_cake.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_cat.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_cat.xml new file mode 100644 index 0000000000..b34cf63d98 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_cat.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_clock.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_clock.xml new file mode 100644 index 0000000000..48d7150c36 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_clock.xml @@ -0,0 +1,27 @@ + + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_cloud.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_cloud.xml new file mode 100644 index 0000000000..d390bd6e87 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_cloud.xml @@ -0,0 +1,12 @@ + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_corn.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_corn.xml new file mode 100644 index 0000000000..d863d03c2a --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_corn.xml @@ -0,0 +1,18 @@ + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_dog.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_dog.xml new file mode 100644 index 0000000000..8346a5ebee --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_dog.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_elephant.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_elephant.xml new file mode 100644 index 0000000000..d0a2de42cb --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_elephant.xml @@ -0,0 +1,15 @@ + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_fire.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_fire.xml new file mode 100644 index 0000000000..ebf42039b1 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_fire.xml @@ -0,0 +1,12 @@ + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_fish.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_fish.xml new file mode 100644 index 0000000000..30907f2496 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_fish.xml @@ -0,0 +1,24 @@ + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_flag.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_flag.xml new file mode 100644 index 0000000000..250388dc4a --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_flag.xml @@ -0,0 +1,24 @@ + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_flower.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_flower.xml new file mode 100644 index 0000000000..8a91221a80 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_flower.xml @@ -0,0 +1,15 @@ + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_folder.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_folder.xml new file mode 100644 index 0000000000..9320766492 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_folder.xml @@ -0,0 +1,12 @@ + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_gift.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_gift.xml new file mode 100644 index 0000000000..d18c6e860a --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_gift.xml @@ -0,0 +1,21 @@ + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_glasses.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_glasses.xml new file mode 100644 index 0000000000..8913d1ffd7 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_glasses.xml @@ -0,0 +1,12 @@ + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_globe.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_globe.xml new file mode 100644 index 0000000000..2a07829cb3 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_globe.xml @@ -0,0 +1,15 @@ + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_guitar.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_guitar.xml new file mode 100644 index 0000000000..2622fbe416 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_guitar.xml @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_hammer.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_hammer.xml new file mode 100644 index 0000000000..7b70654d52 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_hammer.xml @@ -0,0 +1,12 @@ + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_hat.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_hat.xml new file mode 100644 index 0000000000..15f980bdb1 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_hat.xml @@ -0,0 +1,15 @@ + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_headphones.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_headphones.xml new file mode 100644 index 0000000000..cbc43e7601 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_headphones.xml @@ -0,0 +1,15 @@ + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_heart.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_heart.xml new file mode 100644 index 0000000000..d37bcc33d1 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_heart.xml @@ -0,0 +1,9 @@ + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_horse.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_horse.xml new file mode 100644 index 0000000000..bedf0f6f46 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_horse.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_hourglass.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_hourglass.xml new file mode 100644 index 0000000000..8bb37a35bb --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_hourglass.xml @@ -0,0 +1,15 @@ + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_key.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_key.xml new file mode 100644 index 0000000000..4cd1d033f7 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_key.xml @@ -0,0 +1,9 @@ + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_light_bulb.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_light_bulb.xml new file mode 100644 index 0000000000..18f3149500 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_light_bulb.xml @@ -0,0 +1,21 @@ + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_lion.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_lion.xml new file mode 100644 index 0000000000..b97a508fc2 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_lion.xml @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_lock.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_lock.xml new file mode 100644 index 0000000000..de3979434f --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_lock.xml @@ -0,0 +1,12 @@ + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_moon.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_moon.xml new file mode 100644 index 0000000000..3f5abe6ae3 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_moon.xml @@ -0,0 +1,12 @@ + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_mushroom.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_mushroom.xml new file mode 100644 index 0000000000..72f7036856 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_mushroom.xml @@ -0,0 +1,24 @@ + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_octopus.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_octopus.xml new file mode 100644 index 0000000000..054760f3b8 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_octopus.xml @@ -0,0 +1,24 @@ + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_panda.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_panda.xml new file mode 100644 index 0000000000..ab1e718c44 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_panda.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_paperclip.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_paperclip.xml new file mode 100644 index 0000000000..e8f89859d6 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_paperclip.xml @@ -0,0 +1,9 @@ + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_pencil.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_pencil.xml new file mode 100644 index 0000000000..3b9f51fca5 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_pencil.xml @@ -0,0 +1,24 @@ + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_penguin.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_penguin.xml new file mode 100644 index 0000000000..fb2e05760f --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_penguin.xml @@ -0,0 +1,21 @@ + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_phone.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_phone.xml new file mode 100644 index 0000000000..7beda09c4e --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_phone.xml @@ -0,0 +1,15 @@ + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_pig.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_pig.xml new file mode 100644 index 0000000000..c31bd06c52 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_pig.xml @@ -0,0 +1,21 @@ + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_pin.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_pin.xml new file mode 100644 index 0000000000..f10e4606a9 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_pin.xml @@ -0,0 +1,18 @@ + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_pizza.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_pizza.xml new file mode 100644 index 0000000000..a514aeb3d6 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_pizza.xml @@ -0,0 +1,21 @@ + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_rabbit.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_rabbit.xml new file mode 100644 index 0000000000..c8ff75c999 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_rabbit.xml @@ -0,0 +1,27 @@ + + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_robot.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_robot.xml new file mode 100644 index 0000000000..a53cfe99c0 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_robot.xml @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_rocket.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_rocket.xml new file mode 100644 index 0000000000..4097ed9030 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_rocket.xml @@ -0,0 +1,24 @@ + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_rooster.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_rooster.xml new file mode 100644 index 0000000000..cb7ad563f0 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_rooster.xml @@ -0,0 +1,18 @@ + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_santa.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_santa.xml new file mode 100644 index 0000000000..4f7bc1a24f --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_santa.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_scissors.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_scissors.xml new file mode 100644 index 0000000000..98e68c2071 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_scissors.xml @@ -0,0 +1,21 @@ + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_smiley.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_smiley.xml new file mode 100644 index 0000000000..087adc8c6d --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_smiley.xml @@ -0,0 +1,18 @@ + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_spanner.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_spanner.xml new file mode 100644 index 0000000000..ba3c4313a3 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_spanner.xml @@ -0,0 +1,9 @@ + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_strawberry.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_strawberry.xml new file mode 100644 index 0000000000..0eeb290d9d --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_strawberry.xml @@ -0,0 +1,15 @@ + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_thumbs_up.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_thumbs_up.xml new file mode 100644 index 0000000000..9761204ab6 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_thumbs_up.xml @@ -0,0 +1,12 @@ + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_train.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_train.xml new file mode 100644 index 0000000000..e317ce1642 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_train.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_tree.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_tree.xml new file mode 100644 index 0000000000..c5acc19a72 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_tree.xml @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_trophy.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_trophy.xml new file mode 100644 index 0000000000..631da7320d --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_trophy.xml @@ -0,0 +1,18 @@ + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_trumpet.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_trumpet.xml new file mode 100644 index 0000000000..84f95a8592 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_trumpet.xml @@ -0,0 +1,21 @@ + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_turtle.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_turtle.xml new file mode 100644 index 0000000000..1cedc1b6ad --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_turtle.xml @@ -0,0 +1,21 @@ + + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_umbrella.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_umbrella.xml new file mode 100644 index 0000000000..ac1267cd3b --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_umbrella.xml @@ -0,0 +1,18 @@ + + + + + + diff --git a/features/verifysession/impl/src/main/res/drawable/ic_verification_unicorn.xml b/features/verifysession/impl/src/main/res/drawable/ic_verification_unicorn.xml new file mode 100644 index 0000000000..19cef5d339 --- /dev/null +++ b/features/verifysession/impl/src/main/res/drawable/ic_verification_unicorn.xml @@ -0,0 +1,30 @@ + + + + + + + + + + diff --git a/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/VerifySelfSessionPresenterTests.kt b/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/VerifySelfSessionPresenterTests.kt index 8f8795ed78..3bf074b602 100644 --- a/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/VerifySelfSessionPresenterTests.kt +++ b/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/VerifySelfSessionPresenterTests.kt @@ -157,8 +157,8 @@ class VerifySelfSessionPresenterTests { @Test fun `present - When verification is approved, the flow completes if there is no error`() = runTest { - val emojis = listOf( - VerificationEmoji("πŸ˜„", "Smile") + val emojis = listOf( + VerificationEmoji(30, "Smiley") ) val service = FakeSessionVerificationService().apply { givenEmojiList(emojis) diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/verification/VerificationEmoji.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/verification/VerificationEmoji.kt index 43b89b6587..af5e49565e 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/verification/VerificationEmoji.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/verification/VerificationEmoji.kt @@ -17,6 +17,6 @@ package io.element.android.libraries.matrix.api.verification data class VerificationEmoji( - val code: String, + val code: Int, val name: String, ) diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/verification/RustSessionVerificationService.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/verification/RustSessionVerificationService.kt index 3d00c2d50e..6a1a91cba1 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/verification/RustSessionVerificationService.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/verification/RustSessionVerificationService.kt @@ -107,7 +107,7 @@ class RustSessionVerificationService( override fun didReceiveVerificationData(data: List) { val emojis = data.map { emoji -> - emoji.use { VerificationEmoji(it.symbol(), it.description()) } + emoji.use { VerificationEmoji(it.code(), it.description()) } } .toImmutableList() _verificationFlowState.value = VerificationFlowState.ReceivedVerificationData(emojis)