diff --git a/.maestro/tests/roomList/timeline/messages/text.yaml b/.maestro/tests/roomList/timeline/messages/text.yaml index cae5e310c0..4e1f4bce28 100644 --- a/.maestro/tests/roomList/timeline/messages/text.yaml +++ b/.maestro/tests/roomList/timeline/messages/text.yaml @@ -4,6 +4,6 @@ appId: ${MAESTRO_APP_ID} - tapOn: id: "text_editor" - inputText: "Hello world!" -- tapOn: "Send" +- tapOn: "Send message" - hideKeyboard - takeScreenshot: build/maestro/511-Timeline diff --git a/.maestro/tests/roomList/timeline/timeline.yaml b/.maestro/tests/roomList/timeline/timeline.yaml index d82c5ea1ff..0ad9231673 100644 --- a/.maestro/tests/roomList/timeline/timeline.yaml +++ b/.maestro/tests/roomList/timeline/timeline.yaml @@ -6,6 +6,9 @@ appId: ${MAESTRO_APP_ID} - runFlow: messages/text.yaml - runFlow: messages/location.yaml - runFlow: messages/poll.yaml -- runFlow: call/call.yaml + +# Restore once the call flow is fixed +#- runFlow: call/call.yaml + - back - runFlow: ../../assertions/assertHomeDisplayed.yaml diff --git a/CHANGES.md b/CHANGES.md index 1883ee0080..4acc8d2c2a 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,3 +1,51 @@ +Changes in Element X v25.07.1 +============================= + + + +## What's Changed +### 🐛 Bugfixes +* fix ( room list) : rebuild with filteredSummaries to avoid bad state by @ganfra in https://github.com/element-hq/element-x-android/pull/4993 +* Keep video rotation metadata when transcoding by @jmartinesp in https://github.com/element-hq/element-x-android/pull/5008 +### 🗣 Translations +* Sync Strings by @ElementBot in https://github.com/element-hq/element-x-android/pull/4988 +### đŸ§± Build +* Update Gradle Wrapper from 8.14.2 to 8.14.3 by @ElementBot in https://github.com/element-hq/element-x-android/pull/4985 +* Stop ignoring dependencies, but instead set `open-pull-requests-limit to 0 by @bmarty in https://github.com/element-hq/element-x-android/pull/5013 +### 📄 Documentation +* Update to the status and clarifications with respect to the legacy app. by @mxandreas in https://github.com/element-hq/element-x-android/pull/5016 +### 🚧 In development 🚧 +* Home navigation bar fixes by @bmarty in https://github.com/element-hq/element-x-android/pull/4990 +* Home screen iteration by @bmarty in https://github.com/element-hq/element-x-android/pull/5003 +### Dependency upgrades +* Update dependency io.element.android:compound-android to v25.7.4 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/4984 +* Update dependency org.matrix.rustcomponents:sdk-android to v25.7.7 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/4989 +* Update plugin ktlint to v13 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/4992 +* Update dependency org.jetbrains.kotlinx:kotlinx-datetime to v0.7.1-0.6.x-compat by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/4991 +* Update haze to v1.6.7 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/4987 +* Update dependency com.squareup.okhttp3:okhttp-bom to v5 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/4979 +* Update dependency io.sentry:sentry-android to v8.17.0 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/4998 +* Update dependency com.squareup.okhttp3:okhttp-bom to v5.1.0 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/4997 +* Update dependency org.maplibre.gl:android-sdk to v11.12.0 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/5001 +* Update dependency com.posthog:posthog-android to v3.19.2 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/5009 +* Update dependency org.maplibre.gl:android-sdk to v11.12.1 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/5006 +* Update android.gradle.plugin to v8.11.1 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/5014 +* Update rnkdsh/action-upload-diawi action to v1.5.10 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/5019 +* Update wysiwyg to v2.38.5 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/5025 +* Update haze to v1.6.8 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/5026 +* Update dependency org.matrix.rustcomponents:sdk-android to v25.7.15 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/5011 +### Others +* Remove bloom effect and replace by linear gradient by @bmarty in https://github.com/element-hq/element-x-android/pull/4926 +* misc (a11y) : mark MainActionButton icon as decorative by @ganfra in https://github.com/element-hq/element-x-android/pull/4996 +* Make `ContentAvoidingLayoutData` an immutable data class by @jmartinesp in https://github.com/element-hq/element-x-android/pull/4999 +* Remove unused composable and cleanup colors by @bmarty in https://github.com/element-hq/element-x-android/pull/5000 +* Add a feature flag to reuse the last `pos` value for initial syncs by @jmartinesp in https://github.com/element-hq/element-x-android/pull/5010 +* [a11y] Fix several issues around accessibility by @bmarty in https://github.com/element-hq/element-x-android/pull/5007 +* Replace video transcoder with Media3 Transformer by @jmartinesp in https://github.com/element-hq/element-x-android/pull/5018 + + +**Full Changelog**: https://github.com/element-hq/element-x-android/compare/v25.07.0...v25.07.1 + Changes in Element X v25.07.0 ============================= diff --git a/build.gradle.kts b/build.gradle.kts index 0e585a3d6b..9242f1c2d0 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -49,7 +49,7 @@ allprojects { config.from(files("$rootDir/tools/detekt/detekt.yml")) } dependencies { - detektPlugins("io.nlopez.compose.rules:detekt:0.4.22") + detektPlugins("io.nlopez.compose.rules:detekt:0.4.26") detektPlugins(project(":tests:detekt-rules")) } diff --git a/docs/_developer_onboarding.md b/docs/_developer_onboarding.md index b8141daef8..84070b5754 100644 --- a/docs/_developer_onboarding.md +++ b/docs/_developer_onboarding.md @@ -33,7 +33,7 @@ This doc is a quick introduction about the project and its architecture. -It's aim is to help new developers to understand the overall project and where to start developing. +Its aim is to help new developers to understand the overall project and where to start developing. Other useful documentation: @@ -157,6 +157,8 @@ Troubleshooting: - If you get the error `Unsupported class file major version `, try changing your JVM version by setting `JAVA_HOME` and, if building via Android Studio, "File | Settings | Build, Execution, Deployment | Build Tools | Gradle | Gradle JDK". +You can switch back to using the published version of the SDK by deleting `libraries/rustsdk/matrix-rust-sdk.aar`. + ### The Android project The project should compile out of the box. diff --git a/docs/notifications.md b/docs/notifications.md index 612b8785b8..5f67f88713 100644 --- a/docs/notifications.md +++ b/docs/notifications.md @@ -149,7 +149,7 @@ That is why clients are able to **process the push rules client side** to decide As seen previously, App developers don't directly send a push to the end user's device, they use a Push Provider as intermediary. So technically this intermediary is able to read the content of what is sent. -App developers usually mitigate this by sending a `silent notification`, that is a notification with no identifiable data, or with an encrypted payload. When the push is received the app can then synchronise to it's server in order to generate a local notification. +App developers usually mitigate this by sending a `silent notification`, that is a notification with no identifiable data, or with an encrypted payload. When the push is received the app can then synchronise to its server in order to generate a local notification. ### Background processing limitations diff --git a/fastlane/metadata/android/en-US/changelogs/202508000.txt b/fastlane/metadata/android/en-US/changelogs/202508000.txt new file mode 100644 index 0000000000..46897eb2fb --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/202508000.txt @@ -0,0 +1,2 @@ +Main changes in this version: start support for room v12, bug fixes and general improvements. +Full changelog: https://github.com/element-hq/element-x-android/releases diff --git a/fastlane/metadata/android/en-US/full_description.txt b/fastlane/metadata/android/en-US/full_description.txt index d0b9479886..862c235c72 100644 --- a/fastlane/metadata/android/en-US/full_description.txt +++ b/fastlane/metadata/android/en-US/full_description.txt @@ -22,7 +22,7 @@ Choose where to host your data - from any public server (the largest free server Use Element everywhere. Stay in touch wherever you are with fully synchronised message history across all your devices, including on the web at https://app.element.io Element X is our next-generation app -If you’re using the original Element app, it’s time to try Element X! It’s faster, easier to use, and more powerful than the original app. It’s better in every way and we’re adding new features all the time. +If you’re using the previous-generation Element Classic app, it’s time to try Element X! It’s faster, easier to use, and more powerful than the classic app. It’s better in every way and we’re adding new features all the time. The application requires the android.permission.REQUEST_INSTALL_PACKAGES permission to enable the installation of applications received as attachments, ensuring seamless and convenient access to new software within the app. diff --git a/features/analytics/impl/src/main/kotlin/io/element/android/features/analytics/impl/AnalyticsOptInView.kt b/features/analytics/impl/src/main/kotlin/io/element/android/features/analytics/impl/AnalyticsOptInView.kt index a6ae754944..f04f4dc273 100644 --- a/features/analytics/impl/src/main/kotlin/io/element/android/features/analytics/impl/AnalyticsOptInView.kt +++ b/features/analytics/impl/src/main/kotlin/io/element/android/features/analytics/impl/AnalyticsOptInView.kt @@ -29,13 +29,13 @@ import io.element.android.compound.theme.ElementTheme import io.element.android.compound.tokens.generated.CompoundIcons import io.element.android.features.analytics.api.AnalyticsOptInEvents import io.element.android.libraries.designsystem.atomic.molecules.ButtonColumnMolecule +import io.element.android.libraries.designsystem.atomic.molecules.IconTitleSubtitleMolecule import io.element.android.libraries.designsystem.atomic.organisms.InfoListItem import io.element.android.libraries.designsystem.atomic.organisms.InfoListOrganism import io.element.android.libraries.designsystem.atomic.pages.HeaderFooterPage import io.element.android.libraries.designsystem.background.OnboardingBackground import io.element.android.libraries.designsystem.components.BigIcon import io.element.android.libraries.designsystem.components.ClickableLinkText -import io.element.android.libraries.designsystem.components.PageTitle import io.element.android.libraries.designsystem.preview.ElementPreview import io.element.android.libraries.designsystem.preview.PreviewsDayNight import io.element.android.libraries.designsystem.text.buildAnnotatedStringWithStyledPart @@ -89,10 +89,10 @@ private fun AnalyticsOptInHeader( Column( horizontalAlignment = Alignment.CenterHorizontally, ) { - PageTitle( - modifier = Modifier.padding(top = 60.dp, bottom = 12.dp), + IconTitleSubtitleMolecule( + modifier = Modifier.padding(top = 60.dp, bottom = 28.dp), title = stringResource(id = R.string.screen_analytics_prompt_title, state.applicationName), - subtitle = stringResource(id = R.string.screen_analytics_prompt_help_us_improve), + subTitle = stringResource(id = R.string.screen_analytics_prompt_help_us_improve), iconStyle = BigIcon.Style.Default(CompoundIcons.Chart()) ) if (state.hasPolicyLink) { diff --git a/features/call/impl/src/main/kotlin/io/element/android/features/call/impl/utils/WebViewAudioManager.kt b/features/call/impl/src/main/kotlin/io/element/android/features/call/impl/utils/WebViewAudioManager.kt index b7d1fdf466..51f758a3bb 100644 --- a/features/call/impl/src/main/kotlin/io/element/android/features/call/impl/utils/WebViewAudioManager.kt +++ b/features/call/impl/src/main/kotlin/io/element/android/features/call/impl/utils/WebViewAudioManager.kt @@ -21,6 +21,8 @@ import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.delay import kotlinx.coroutines.launch +import kotlinx.coroutines.sync.Mutex +import kotlinx.coroutines.sync.withLock import kotlinx.serialization.Serializable import kotlinx.serialization.Transient import kotlinx.serialization.json.Json @@ -84,6 +86,11 @@ class WebViewAudioManager( ?.newWakeLock(PowerManager.PROXIMITY_SCREEN_OFF_WAKE_LOCK, "${webView.context.packageName}:ProximitySensorCallWakeLock") } + /** + * Used to ensure that only one coroutine can access the proximity sensor wake lock at a time, preventing re-acquiring or re-releasing it. + */ + private val proximitySensorMutex = Mutex() + /** * This listener tracks the current communication device and updates the WebView when it changes. */ @@ -208,8 +215,12 @@ class WebViewAudioManager( return } - if (proximitySensorWakeLock?.isHeld == true) { - proximitySensorWakeLock?.release() + coroutineScope.launch { + proximitySensorMutex.withLock { + if (proximitySensorWakeLock?.isHeld == true) { + proximitySensorWakeLock?.release() + } + } } audioManager.mode = AudioManager.MODE_NORMAL @@ -397,13 +408,17 @@ class WebViewAudioManager( expectedNewCommunicationDeviceId = null - @Suppress("WakeLock", "WakeLockTimeout") - if (device?.type == AudioDeviceInfo.TYPE_BUILTIN_EARPIECE && proximitySensorWakeLock?.isHeld == false) { - // If the device is the built-in earpiece, we need to acquire the proximity sensor wake lock - proximitySensorWakeLock?.acquire() - } else if (proximitySensorWakeLock?.isHeld == true) { - // If the device is no longer the earpiece, we need to release the wake lock - proximitySensorWakeLock?.release() + coroutineScope.launch { + proximitySensorMutex.withLock { + @Suppress("WakeLock", "WakeLockTimeout") + if (device?.type == AudioDeviceInfo.TYPE_BUILTIN_EARPIECE && proximitySensorWakeLock?.isHeld == false) { + // If the device is the built-in earpiece, we need to acquire the proximity sensor wake lock + proximitySensorWakeLock?.acquire() + } else if (proximitySensorWakeLock?.isHeld == true) { + // If the device is no longer the earpiece, we need to release the wake lock + proximitySensorWakeLock?.release() + } + } } } diff --git a/features/call/impl/src/main/res/values-et/translations.xml b/features/call/impl/src/main/res/values-et/translations.xml index becc9e5565..16b72b8b97 100644 --- a/features/call/impl/src/main/res/values-et/translations.xml +++ b/features/call/impl/src/main/res/values-et/translations.xml @@ -1,6 +1,6 @@ - "KĂ€imasolev kĂ”ne" + "Pooleliolev kĂ”ne" "KĂ”ne juurde naasmiseks klĂ”psa" "☎ KĂ”ne on pooleli" "Element Call ei vĂ”imalda selles Androidi versioonis Bluetoothi heliseadmete kasutamist. Palun vali mĂ”ni muu heliseade." diff --git a/features/call/impl/src/main/res/values-pl/translations.xml b/features/call/impl/src/main/res/values-pl/translations.xml index e63fc80d14..d2978994e7 100644 --- a/features/call/impl/src/main/res/values-pl/translations.xml +++ b/features/call/impl/src/main/res/values-pl/translations.xml @@ -3,5 +3,6 @@ "PoƂączenie w trakcie" "Stuknij, aby wrĂłcić do rozmowy" "☎ Rozmowa w toku" + "Element Call nie obsƂuguje korzystania z urządzeƄ audio Bluetooth w tej wersji Androida. Wybierz inne urządzenie audio." "Przychodzące poƂączenie Element" diff --git a/features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/configureroom/ConfigureRoomView.kt b/features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/configureroom/ConfigureRoomView.kt index 9c468539ab..f639704890 100644 --- a/features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/configureroom/ConfigureRoomView.kt +++ b/features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/configureroom/ConfigureRoomView.kt @@ -30,6 +30,8 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.platform.LocalFocusManager import androidx.compose.ui.res.stringResource +import androidx.compose.ui.semantics.clearAndSetSemantics +import androidx.compose.ui.semantics.contentDescription import androidx.compose.ui.text.input.KeyboardCapitalization import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.compose.ui.unit.dp @@ -213,11 +215,19 @@ private fun RoomNameWithAvatar( horizontalArrangement = Arrangement.spacedBy(16.dp), verticalAlignment = Alignment.CenterVertically, ) { + val a11yAvatar = stringResource(CommonStrings.a11y_room_avatar) UnsavedAvatar( avatarUri = avatarUri, avatarSize = AvatarSize.EditRoomDetails, avatarType = AvatarType.Room(), - modifier = Modifier.clickable(onClick = onAvatarClick), + modifier = Modifier + .clickable( + onClick = onAvatarClick, + onClickLabel = stringResource(CommonStrings.action_open_context_menu), + ) + .clearAndSetSemantics { + contentDescription = a11yAvatar + }, ) TextField( diff --git a/features/ftue/impl/src/main/kotlin/io/element/android/features/ftue/impl/notifications/NotificationsOptInView.kt b/features/ftue/impl/src/main/kotlin/io/element/android/features/ftue/impl/notifications/NotificationsOptInView.kt index 444c311a63..f23b9bafcd 100644 --- a/features/ftue/impl/src/main/kotlin/io/element/android/features/ftue/impl/notifications/NotificationsOptInView.kt +++ b/features/ftue/impl/src/main/kotlin/io/element/android/features/ftue/impl/notifications/NotificationsOptInView.kt @@ -31,10 +31,10 @@ import io.element.android.compound.theme.ElementTheme import io.element.android.compound.tokens.generated.CompoundIcons import io.element.android.features.ftue.impl.R import io.element.android.libraries.designsystem.atomic.molecules.ButtonColumnMolecule +import io.element.android.libraries.designsystem.atomic.molecules.IconTitleSubtitleMolecule import io.element.android.libraries.designsystem.atomic.pages.HeaderFooterPage import io.element.android.libraries.designsystem.background.OnboardingBackground import io.element.android.libraries.designsystem.components.BigIcon -import io.element.android.libraries.designsystem.components.PageTitle import io.element.android.libraries.designsystem.components.avatar.Avatar import io.element.android.libraries.designsystem.components.avatar.AvatarData import io.element.android.libraries.designsystem.components.avatar.AvatarSize @@ -59,7 +59,7 @@ fun NotificationsOptInView( .statusBarsPadding() .fillMaxSize(), background = { OnboardingBackground() }, - header = { NotificationsOptInHeader(modifier = Modifier.padding(top = 60.dp, bottom = 12.dp)) }, + header = { NotificationsOptInHeader(modifier = Modifier.padding(top = 60.dp, bottom = 28.dp)) }, footer = { NotificationsOptInFooter(state) }, ) { NotificationsOptInContent() @@ -70,10 +70,10 @@ fun NotificationsOptInView( private fun NotificationsOptInHeader( modifier: Modifier = Modifier, ) { - PageTitle( + IconTitleSubtitleMolecule( modifier = modifier, title = stringResource(R.string.screen_notification_optin_title), - subtitle = stringResource(R.string.screen_notification_optin_subtitle), + subTitle = stringResource(R.string.screen_notification_optin_subtitle), iconStyle = BigIcon.Style.Default(CompoundIcons.NotificationsSolid()), ) } diff --git a/features/ftue/impl/src/main/kotlin/io/element/android/features/ftue/impl/sessionverification/choosemode/ChooseSelfVerificationModeView.kt b/features/ftue/impl/src/main/kotlin/io/element/android/features/ftue/impl/sessionverification/choosemode/ChooseSelfVerificationModeView.kt index 9839f3bf7c..74eed0115c 100644 --- a/features/ftue/impl/src/main/kotlin/io/element/android/features/ftue/impl/sessionverification/choosemode/ChooseSelfVerificationModeView.kt +++ b/features/ftue/impl/src/main/kotlin/io/element/android/features/ftue/impl/sessionverification/choosemode/ChooseSelfVerificationModeView.kt @@ -24,9 +24,9 @@ import io.element.android.compound.theme.ElementTheme import io.element.android.compound.tokens.generated.CompoundIcons import io.element.android.features.ftue.impl.R import io.element.android.libraries.designsystem.atomic.molecules.ButtonColumnMolecule +import io.element.android.libraries.designsystem.atomic.molecules.IconTitleSubtitleMolecule import io.element.android.libraries.designsystem.atomic.pages.HeaderFooterPage import io.element.android.libraries.designsystem.components.BigIcon -import io.element.android.libraries.designsystem.components.PageTitle import io.element.android.libraries.designsystem.preview.ElementPreview import io.element.android.libraries.designsystem.preview.PreviewsDayNight import io.element.android.libraries.designsystem.theme.components.Button @@ -65,10 +65,11 @@ fun ChooseSelfVerificationModeView( ) }, header = { - PageTitle( + IconTitleSubtitleMolecule( + modifier = Modifier.padding(bottom = 16.dp), iconStyle = BigIcon.Style.Default(CompoundIcons.LockSolid()), title = stringResource(id = R.string.screen_identity_confirmation_title), - subtitle = stringResource(id = R.string.screen_identity_confirmation_subtitle) + subTitle = stringResource(id = R.string.screen_identity_confirmation_subtitle) ) }, footer = { diff --git a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/HomeView.kt b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/HomeView.kt index d08aba7d97..30a5c86243 100644 --- a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/HomeView.kt +++ b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/HomeView.kt @@ -274,13 +274,11 @@ private fun HomeScaffold( floatingActionButton = { if (state.displayActions) { FloatingActionButton( - containerColor = ElementTheme.colors.iconPrimary, - onClick = onCreateRoomClick + onClick = onCreateRoomClick, ) { Icon( imageVector = CompoundIcons.Plus(), contentDescription = stringResource(id = R.string.screen_roomlist_a11y_create_message), - tint = ElementTheme.colors.iconOnSolidPrimary, ) } } diff --git a/features/home/impl/src/main/res/values-cy/translations.xml b/features/home/impl/src/main/res/values-cy/translations.xml index 9b44b0fc3f..d0ea8f974b 100644 --- a/features/home/impl/src/main/res/values-cy/translations.xml +++ b/features/home/impl/src/main/res/values-cy/translations.xml @@ -12,6 +12,8 @@ "Dyw eich allwedd storfa heb ei gydweddu" "Er mwyn sicrhau fyddwch chi ddim yn colli galwad bwysig, newidiwch eich gosodiadau i ganiatĂĄu hysbysiadau sgrin lawn pan fydd eich ffĂŽn wedi\'i gloi." "Gwella profiad eich galwadau" + "Sgyrsiau" + "Gofodau" "Ydych chi\'n siĆ”r eich bod am wrthod y gwahoddiad i ymuno Ăą %1$s?" "Gwrthod y gwahoddiad" "Ydych chi\'n siĆ”r eich bod am wrthod y sgwrs breifat hon gyda %1$s?" diff --git a/features/home/impl/src/main/res/values-de/translations.xml b/features/home/impl/src/main/res/values-de/translations.xml index 7f2613809c..037a3e53c5 100644 --- a/features/home/impl/src/main/res/values-de/translations.xml +++ b/features/home/impl/src/main/res/values-de/translations.xml @@ -12,6 +12,8 @@ "Ihr SchlĂŒsselspeicher ist nicht synchronisiert" "Damit Sie keine wichtigen Anrufe verpassen, Ă€ndern Sie bitte Ihre Einstellungen, so dass das gesperrte Telefon auch Benachrichtigungen im Vollbildmodus erhalten darf." "Verbessere dein Anruferlebnis" + "Chats" + "Spaces" "Möchten Sie die Einladung zum Betreten von %1$s wirklich ablehnen?" "Einladung ablehnen" "Möchten Sie diesen privaten Chat mit %1$s wirklich ablehnen?" diff --git a/features/home/impl/src/main/res/values-et/translations.xml b/features/home/impl/src/main/res/values-et/translations.xml index f8dd7fc086..39e099adba 100644 --- a/features/home/impl/src/main/res/values-et/translations.xml +++ b/features/home/impl/src/main/res/values-et/translations.xml @@ -12,6 +12,8 @@ "Sinu vĂ”tmehoidla pole sĂŒnkroonis" "Selleks, et sul ainsamgi tĂ€htis kĂ”ne ei jÀÀks mĂ€rkamata, siis palun muuda oma nutiseadme seadistusi nii, et lukustusvaates oleksid tĂ€isekraani mÔÔtu teavitused." "Sinu tĂ”husad telefonikĂ”ned" + "Vestlused" + "Kogukonnad" "Kas sa oled kindel, et soovid keelduda liitumiskutsest: %1$s?" "LĂŒkka kutse tagasi" "Kas sa oled kindel, et soovid keelduda privaatsest vestlusest kasutajaga %1$s?" diff --git a/features/home/impl/src/main/res/values-fi/translations.xml b/features/home/impl/src/main/res/values-fi/translations.xml index 10da41c88b..b4676f6d55 100644 --- a/features/home/impl/src/main/res/values-fi/translations.xml +++ b/features/home/impl/src/main/res/values-fi/translations.xml @@ -1,5 +1,7 @@ + "Ota tĂ€mĂ€n sovelluksen akunkĂ€ytön optimointi pois kĂ€ytöstĂ€ varmistaaksesi, ettĂ€ kaikki ilmoitukset tulevat perille." + "Ota optimointi pois kĂ€ytöstĂ€" "Palauta kryptografinen identiteettisi ja viestihistoriasi palautusavaimella, mikĂ€li menetĂ€t pÀÀsyn kaikkiin laitteisiisi." "Ota palautus kĂ€yttöön" "Ota palautus kĂ€yttöön tilisi suojaamiseksi" diff --git a/features/home/impl/src/main/res/values-fr/translations.xml b/features/home/impl/src/main/res/values-fr/translations.xml index 3f86a64810..aaa0702637 100644 --- a/features/home/impl/src/main/res/values-fr/translations.xml +++ b/features/home/impl/src/main/res/values-fr/translations.xml @@ -12,6 +12,8 @@ "Le stockage de vos clĂ©s n’est pas synchronisĂ©" "Afin de ne jamais manquer un appel important, veuillez modifier vos paramĂštres pour autoriser les notifications en plein Ă©cran lorsque votre appareil est verrouillĂ©." "AmĂ©liorez votre expĂ©rience d’appel" + "Discussions" + "Espaces" "Êtes-vous sĂ»r de vouloir dĂ©cliner l’invitation Ă  rejoindre %1$s ?" "Refuser l’invitation" "Êtes-vous sĂ»r de vouloir refuser cette discussion privĂ©e avec %1$s ?" diff --git a/features/home/impl/src/main/res/values-hu/translations.xml b/features/home/impl/src/main/res/values-hu/translations.xml index e0763e4c6f..121d58dd77 100644 --- a/features/home/impl/src/main/res/values-hu/translations.xml +++ b/features/home/impl/src/main/res/values-hu/translations.xml @@ -12,6 +12,8 @@ "A kulcstĂĄrolĂł nincs szinkronizĂĄlva" "Hogy sose maradjon le egyetlen fontos hĂ­vĂĄsrĂłl sem, a beĂĄllĂ­tĂĄsokban engedĂ©lyezze a teljes kĂ©pernyƑs Ă©rtesĂ­tĂ©seket, amikor a telefon zĂĄrolva van." "Fokozza a hĂ­vĂĄsĂ©lmĂ©nyĂ©t" + "CsevegĂ©sek" + "Terek" "Biztos, hogy elutasĂ­tja a meghĂ­vĂĄst, hogy csatlakozzon ehhez: %1$s?" "MeghĂ­vĂĄs elutasĂ­tĂĄsa" "Biztos, hogy elutasĂ­tja ezt a privĂĄt csevegĂ©st vele: %1$s?" diff --git a/features/home/impl/src/main/res/values-lt/translations.xml b/features/home/impl/src/main/res/values-lt/translations.xml index 37e9003c20..2be9acd507 100644 --- a/features/home/impl/src/main/res/values-lt/translations.xml +++ b/features/home/impl/src/main/res/values-lt/translations.xml @@ -1,5 +1,7 @@ + "Pokalbiai" + "Erdvės" "Ar tikrai norite atmesti kvietimą prisijungti prie %1$s?" "Atmesti kvietimą" "Ar tikrai norite atmesti ĆĄÄŻ privatĆł pokalbÄŻ su %1$s ?" diff --git a/features/home/impl/src/main/res/values-pl/translations.xml b/features/home/impl/src/main/res/values-pl/translations.xml index 8bb236e71a..63f81cb1b3 100644 --- a/features/home/impl/src/main/res/values-pl/translations.xml +++ b/features/home/impl/src/main/res/values-pl/translations.xml @@ -1,5 +1,8 @@ + "WyƂącz optymalizację baterii dla tej aplikacji, aby upewnić się, ĆŒe wszystkie powiadomienia są odbierane." + "WyƂącz optymalizację" + "Powiadomienia nie dochodzą?" "Wygeneruj nowy klucz przywracania, ktĂłrego moĆŒna uĆŒyć do przywrĂłcenia historii wiadomoƛci szyfrowanych w przypadku utraty dostępu do swoich urządzeƄ." "Skonfiguruj przywracanie" "Skonfiguruj przywracanie" @@ -9,6 +12,8 @@ "Magazyn kluczy nie jest zsynchronizowany" "Upewnij się, ĆŒe nie pominiesz ĆŒadnego poƂączenia. ZmieƄ swoje ustawienia i zezwĂłl na powiadomienia na blokadzie ekranu." "Popraw jakoƛć swoich rozmĂłw" + "Czaty" + "Przestrzenie" "Czy na pewno chcesz odrzucić zaproszenie doƂączenia do %1$s?" "Odrzuć zaproszenie" "Czy na pewno chcesz odrzucić rozmowę prywatną z %1$s?" @@ -18,6 +23,7 @@ "Jest to jednorazowy proces, dziękujemy za czekanie." "Konfigurowanie Twojego konta." "UtwĂłrz nową rozmowę lub pokĂłj" + "Wyczyƛć filtry" "Wyƛlij komuƛ wiadomoƛć, aby rozpocząć." "Brak czatĂłw." "Ulubione" @@ -40,6 +46,7 @@ Nie masz ĆŒadnych nieprzeczytanych wiadomoƛci!" "Wszystkie czaty" "Oznacz jako przeczytane" "Oznacz jako nieprzeczytane" + "Ten pokĂłj zostaƂ ulepszony" "Wygląda na to, ĆŒe uĆŒywasz nowego urządzenia. Zweryfikuj się innym urządzeniem, aby uzyskać dostęp do zaszyfrowanych wiadomoƛci." "PotwierdĆș, ĆŒe to Ty" diff --git a/features/home/impl/src/main/res/values-sk/translations.xml b/features/home/impl/src/main/res/values-sk/translations.xml index ade2c192c7..36c93eb09e 100644 --- a/features/home/impl/src/main/res/values-sk/translations.xml +++ b/features/home/impl/src/main/res/values-sk/translations.xml @@ -12,6 +12,8 @@ "VaĆĄe ĂșloĆŸisko kÄŸĂșčov nie je synchronizovanĂ©" "Aby ste uĆŸ nikdy nezmeĆĄkali dĂŽleĆŸitĂœ hovor, zmeƈte svoje nastavenia a povoÄŸte upozornenia na celĂș obrazovku, keď je vĂĄĆĄ telefĂłn uzamknutĂœ." "VylepĆĄite svoj zĂĄĆŸitok z hovoru" + "KonverzĂĄcie" + "Priestory" "Naozaj chcete odmietnuĆ„ pozvĂĄnku na pripojenie do %1$s?" "OdmietnuĆ„ pozvanie" "Naozaj chcete odmietnuĆ„ tĂșto sĂșkromnĂș konverzĂĄciu s %1$s?" diff --git a/features/joinroom/impl/src/main/res/values-et/translations.xml b/features/joinroom/impl/src/main/res/values-et/translations.xml index 00ae5f18bb..b69ca16d26 100644 --- a/features/joinroom/impl/src/main/res/values-et/translations.xml +++ b/features/joinroom/impl/src/main/res/values-et/translations.xml @@ -18,6 +18,7 @@ "Liitu jututoaga" "Selle jututoaga liitumiseks sa vajad kutset vĂ”i pead juba olema kogukonna liige." "Liitumiseks koputa jututoa uksele" + "Lubatud tĂ€hemĂ€rke: %1$d / %2$d" "Selgitus (kui soovid lisada)" "Kui sinu liitumispalvega ollakse nĂ”us, siis saad kutse jututoaga liitumiseks." "Liitumispalve on saadetud" diff --git a/features/joinroom/impl/src/main/res/values-hu/translations.xml b/features/joinroom/impl/src/main/res/values-hu/translations.xml index e6b461abee..6a3f9b836f 100644 --- a/features/joinroom/impl/src/main/res/values-hu/translations.xml +++ b/features/joinroom/impl/src/main/res/values-hu/translations.xml @@ -18,6 +18,7 @@ "CsatlakozĂĄs a szobĂĄhoz" "A csatlakozĂĄshoz meghĂ­vĂĄsra vagy tĂ©rtagsĂĄgra lehet szĂŒksĂ©ge." "Kopogtasson a csatlakozĂĄshoz" + "EngedĂ©lyezett karakterek: %1$d / %2$d" "Üzenet (nem kötelezƑ)" "Ha a kĂ©rĂ©sĂ©t elfogadjĂĄk, meghĂ­vĂłt kap a szobĂĄhoz valĂł csatlakozĂĄshoz." "CsatlakozĂĄsi kĂ©rĂ©s elkĂŒldve" diff --git a/features/joinroom/impl/src/main/res/values-sk/translations.xml b/features/joinroom/impl/src/main/res/values-sk/translations.xml index 645c523c61..5ee2899674 100644 --- a/features/joinroom/impl/src/main/res/values-sk/translations.xml +++ b/features/joinroom/impl/src/main/res/values-sk/translations.xml @@ -18,6 +18,7 @@ "PripojiĆ„ sa do miestnosti" "MoĆŸno budete musieĆ„ byĆ„ pozvanĂ­ alebo byĆ„ členom priestoru, aby ste sa mohli pripojiĆ„." "ZaklopanĂ­m sa pripojĂ­te" + "PovolenĂ© znaky %1$d z %2$d" "SprĂĄva (voliteÄŸnĂ©)" "Ak bude vaĆĄa ĆŸiadosĆ„ prijatĂĄ, dostanete pozvĂĄnku na vstup do miestnosti." "ĆœiadosĆ„ o pripojenie bola odoslanĂĄ" diff --git a/features/joinroom/impl/src/main/res/values/localazy.xml b/features/joinroom/impl/src/main/res/values/localazy.xml index a3e91c542c..f08807bd40 100644 --- a/features/joinroom/impl/src/main/res/values/localazy.xml +++ b/features/joinroom/impl/src/main/res/values/localazy.xml @@ -18,6 +18,7 @@ "Join room" "You may need to be invited or be a member of a space in order to join." "Send request to join" + "Allowed characters %1$d of %2$d" "Message (optional)" "You will receive an invite to join the room if your request is accepted." "Request to join sent" diff --git a/features/location/impl/src/main/kotlin/io/element/android/features/location/impl/common/ui/LocationFloatingActionButton.kt b/features/location/impl/src/main/kotlin/io/element/android/features/location/impl/common/ui/LocationFloatingActionButton.kt new file mode 100644 index 0000000000..7b189a6e1f --- /dev/null +++ b/features/location/impl/src/main/kotlin/io/element/android/features/location/impl/common/ui/LocationFloatingActionButton.kt @@ -0,0 +1,50 @@ +/* + * Copyright 2025 New Vector Ltd. + * + * SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial + * Please see LICENSE files in the repository root for full details. + */ + +package io.element.android.features.location.impl.common.ui + +import androidx.compose.foundation.layout.size +import androidx.compose.material3.FloatingActionButtonDefaults +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import io.element.android.compound.theme.ElementTheme +import io.element.android.compound.tokens.generated.CompoundIcons +import io.element.android.libraries.designsystem.theme.components.FloatingActionButton +import io.element.android.libraries.designsystem.theme.components.Icon +import io.element.android.libraries.ui.strings.CommonStrings + +/** + * Ref: See design in https://www.figma.com/design/0MMNu7cTOzLOlWb7ctTkv3/Element-X?node-id=3426-141111 + */ +@Composable +internal fun LocationFloatingActionButton( + isMapCenteredOnUser: Boolean, + onClick: () -> Unit, + modifier: Modifier = Modifier, +) { + FloatingActionButton( + shape = FloatingActionButtonDefaults.smallShape, + containerColor = ElementTheme.colors.bgCanvasDefault, + contentColor = ElementTheme.colors.iconPrimary, + onClick = onClick, + modifier = modifier + // Note: design is 40dp, but min is 48 for accessibility. + .size(48.dp), + ) { + val iconImage = if (isMapCenteredOnUser) { + CompoundIcons.LocationNavigatorCentred() + } else { + CompoundIcons.LocationNavigator() + } + Icon( + imageVector = iconImage, + contentDescription = stringResource(CommonStrings.a11y_move_the_map_to_my_location), + ) + } +} diff --git a/features/location/impl/src/main/kotlin/io/element/android/features/location/impl/send/SendLocationPresenter.kt b/features/location/impl/src/main/kotlin/io/element/android/features/location/impl/send/SendLocationPresenter.kt index 4710e4bd50..e4859da08d 100644 --- a/features/location/impl/src/main/kotlin/io/element/android/features/location/impl/send/SendLocationPresenter.kt +++ b/features/location/impl/src/main/kotlin/io/element/android/features/location/impl/send/SendLocationPresenter.kt @@ -26,9 +26,6 @@ import io.element.android.libraries.architecture.Presenter import io.element.android.libraries.core.meta.BuildMeta import io.element.android.libraries.matrix.api.room.JoinedRoom import io.element.android.libraries.matrix.api.room.location.AssetType -import io.element.android.libraries.matrix.api.room.message.ReplyParameters -import io.element.android.libraries.matrix.api.room.message.replyInThread -import io.element.android.libraries.matrix.ui.messages.reply.eventId import io.element.android.libraries.textcomposer.model.MessageComposerMode import io.element.android.services.analytics.api.AnalyticsService import kotlinx.coroutines.launch @@ -103,17 +100,7 @@ class SendLocationPresenter @Inject constructor( mode: SendLocationState.Mode, ) { val replyMode = messageComposerContext.composerMode as? MessageComposerMode.Reply - val replyParams = replyMode?.replyToDetails?.let { details -> - if (replyMode.inThread) { - replyInThread(details.eventId()) - } else { - ReplyParameters( - inReplyToEventId = details.eventId(), - enforceThreadReply = false, - replyWithinThread = false - ) - } - } + val inReplyToEventId = replyMode?.eventId when (mode) { SendLocationState.Mode.PinLocation -> { val geoUri = event.cameraPosition.toGeoUri() @@ -123,7 +110,7 @@ class SendLocationPresenter @Inject constructor( description = null, zoomLevel = MapDefaults.DEFAULT_ZOOM.toInt(), assetType = AssetType.PIN, - replyParameters = replyParams, + inReplyToEventId = inReplyToEventId, ) analyticsService.capture( Composer( @@ -142,7 +129,7 @@ class SendLocationPresenter @Inject constructor( description = null, zoomLevel = MapDefaults.DEFAULT_ZOOM.toInt(), assetType = AssetType.SENDER, - replyParameters = replyParams, + inReplyToEventId = inReplyToEventId, ) analyticsService.capture( Composer( diff --git a/features/location/impl/src/main/kotlin/io/element/android/features/location/impl/send/SendLocationView.kt b/features/location/impl/src/main/kotlin/io/element/android/features/location/impl/send/SendLocationView.kt index 32df5af6c5..d6882ced98 100644 --- a/features/location/impl/src/main/kotlin/io/element/android/features/location/impl/send/SendLocationView.kt +++ b/features/location/impl/src/main/kotlin/io/element/android/features/location/impl/send/SendLocationView.kt @@ -30,7 +30,6 @@ import androidx.compose.ui.graphics.Color import androidx.compose.ui.res.stringResource import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.compose.ui.unit.dp -import io.element.android.compound.tokens.generated.CompoundIcons import io.element.android.features.location.api.Location import io.element.android.features.location.api.internal.centerBottomEdge import io.element.android.features.location.api.internal.rememberTileStyleUrl @@ -38,11 +37,11 @@ import io.element.android.features.location.impl.R import io.element.android.features.location.impl.common.MapDefaults import io.element.android.features.location.impl.common.PermissionDeniedDialog import io.element.android.features.location.impl.common.PermissionRationaleDialog +import io.element.android.features.location.impl.common.ui.LocationFloatingActionButton import io.element.android.libraries.designsystem.components.button.BackButton import io.element.android.libraries.designsystem.preview.ElementPreview import io.element.android.libraries.designsystem.preview.PreviewsDayNight import io.element.android.libraries.designsystem.theme.components.BottomSheetScaffold -import io.element.android.libraries.designsystem.theme.components.FloatingActionButton import io.element.android.libraries.designsystem.theme.components.Icon import io.element.android.libraries.designsystem.theme.components.Text import io.element.android.libraries.designsystem.theme.components.TopAppBar @@ -189,17 +188,13 @@ fun SendLocationView( tint = Color.Unspecified, modifier = Modifier.centerBottomEdge(this), ) - FloatingActionButton( + LocationFloatingActionButton( + isMapCenteredOnUser = state.mode == SendLocationState.Mode.SenderLocation, onClick = { state.eventSink(SendLocationEvents.SwitchToMyLocationMode) }, modifier = Modifier .align(Alignment.BottomEnd) - .padding(end = 16.dp, bottom = 72.dp + navBarPadding), - ) { - when (state.mode) { - SendLocationState.Mode.PinLocation -> Icon(imageVector = CompoundIcons.LocationNavigator(), contentDescription = null) - SendLocationState.Mode.SenderLocation -> Icon(imageVector = CompoundIcons.LocationNavigatorCentred(), contentDescription = null) - } - } + .padding(end = 18.dp, bottom = 72.dp + navBarPadding), + ) } } } diff --git a/features/location/impl/src/main/kotlin/io/element/android/features/location/impl/show/ShowLocationView.kt b/features/location/impl/src/main/kotlin/io/element/android/features/location/impl/show/ShowLocationView.kt index 03d2a3c714..2a6063e9f3 100644 --- a/features/location/impl/src/main/kotlin/io/element/android/features/location/impl/show/ShowLocationView.kt +++ b/features/location/impl/src/main/kotlin/io/element/android/features/location/impl/show/ShowLocationView.kt @@ -27,10 +27,10 @@ import io.element.android.features.location.api.internal.rememberTileStyleUrl import io.element.android.features.location.impl.common.MapDefaults import io.element.android.features.location.impl.common.PermissionDeniedDialog import io.element.android.features.location.impl.common.PermissionRationaleDialog +import io.element.android.features.location.impl.common.ui.LocationFloatingActionButton import io.element.android.libraries.designsystem.components.button.BackButton import io.element.android.libraries.designsystem.preview.ElementPreview import io.element.android.libraries.designsystem.preview.PreviewsDayNight -import io.element.android.libraries.designsystem.theme.components.FloatingActionButton import io.element.android.libraries.designsystem.theme.components.Icon import io.element.android.libraries.designsystem.theme.components.IconButton import io.element.android.libraries.designsystem.theme.components.Scaffold @@ -118,14 +118,10 @@ fun ShowLocationView( ) }, floatingActionButton = { - FloatingActionButton( + LocationFloatingActionButton( + isMapCenteredOnUser = state.isTrackMyLocation, onClick = { state.eventSink(ShowLocationEvents.TrackMyLocation(true)) }, - ) { - when (state.isTrackMyLocation) { - false -> Icon(imageVector = CompoundIcons.LocationNavigator(), contentDescription = null) - true -> Icon(imageVector = CompoundIcons.LocationNavigatorCentred(), contentDescription = null) - } - } + ) }, ) { paddingValues -> Column( diff --git a/features/location/impl/src/test/kotlin/io/element/android/features/location/impl/send/SendLocationPresenterTest.kt b/features/location/impl/src/test/kotlin/io/element/android/features/location/impl/send/SendLocationPresenterTest.kt index 7addee38e4..543d71eae1 100644 --- a/features/location/impl/src/test/kotlin/io/element/android/features/location/impl/send/SendLocationPresenterTest.kt +++ b/features/location/impl/src/test/kotlin/io/element/android/features/location/impl/send/SendLocationPresenterTest.kt @@ -20,9 +20,9 @@ import io.element.android.features.location.impl.common.permissions.PermissionsE import io.element.android.features.location.impl.common.permissions.PermissionsPresenter import io.element.android.features.location.impl.common.permissions.PermissionsState import io.element.android.features.messages.test.FakeMessageComposerContext +import io.element.android.libraries.matrix.api.core.EventId import io.element.android.libraries.matrix.api.room.JoinedRoom import io.element.android.libraries.matrix.api.room.location.AssetType -import io.element.android.libraries.matrix.api.room.message.ReplyParameters import io.element.android.libraries.matrix.api.timeline.item.event.toEventOrTransactionId import io.element.android.libraries.matrix.test.AN_EVENT_ID import io.element.android.libraries.matrix.test.core.aBuildMeta @@ -264,7 +264,7 @@ class SendLocationPresenterTest { @Test fun `share sender location`() = runTest { - val sendLocationResult = lambdaRecorder> { _, _, _, _, _, _ -> + val sendLocationResult = lambdaRecorder> { _, _, _, _, _, _ -> Result.success(Unit) } val joinedRoom = FakeJoinedRoom( @@ -328,7 +328,7 @@ class SendLocationPresenterTest { @Test fun `share pin location`() = runTest { - val sendLocationResult = lambdaRecorder> { _, _, _, _, _, _ -> + val sendLocationResult = lambdaRecorder> { _, _, _, _, _, _ -> Result.success(Unit) } val joinedRoom = FakeJoinedRoom( @@ -392,7 +392,7 @@ class SendLocationPresenterTest { @Test fun `composer context passes through analytics`() = runTest { - val sendLocationResult = lambdaRecorder> { _, _, _, _, _, _ -> + val sendLocationResult = lambdaRecorder> { _, _, _, _, _, _ -> Result.success(Unit) } val joinedRoom = FakeJoinedRoom( diff --git a/features/login/impl/src/main/kotlin/io/element/android/features/login/impl/login/LoginHelper.kt b/features/login/impl/src/main/kotlin/io/element/android/features/login/impl/login/LoginHelper.kt index 459f45a06c..cb61725a4f 100644 --- a/features/login/impl/src/main/kotlin/io/element/android/features/login/impl/login/LoginHelper.kt +++ b/features/login/impl/src/main/kotlin/io/element/android/features/login/impl/login/LoginHelper.kt @@ -32,7 +32,7 @@ import javax.inject.Inject /** * This class is responsible for managing the login flow, including handling OIDC actions and * submitting login requests. - * It's an helper to avoid code duplication. It is used by [OnBoardingPresenter], [ConfirmAccountProviderPresenter] + * It's a helper to avoid code duplication. It is used by [OnBoardingPresenter], [ConfirmAccountProviderPresenter] * and [ChooseAccountProviderPresenter]. */ class LoginHelper @Inject constructor( diff --git a/features/login/impl/src/main/res/values-da/translations.xml b/features/login/impl/src/main/res/values-da/translations.xml index cefd0b75a4..7dee0462d5 100644 --- a/features/login/impl/src/main/res/values-da/translations.xml +++ b/features/login/impl/src/main/res/values-da/translations.xml @@ -83,7 +83,7 @@ PrĂžv at logge ind manuelt, eller scan QR-koden med en anden enhed." "Begynd forfra" "Der opstod en uventet fejl. PrĂžv venligst igen." "Venter pĂ„ din anden enhed" - "Din kontoudbyder kan bede om fĂžlgende kode for at bekrĂŠfte login." + "Din kontoudbyder kan bede om fĂžlgende kode for at verificere login\'et." "Din bekrĂŠftelseskode" "Skift kontoudbyder" "En privat server til Element-medarbejdere." diff --git a/features/login/impl/src/main/res/values-et/translations.xml b/features/login/impl/src/main/res/values-et/translations.xml index 9cdc09404c..f7a910fd22 100644 --- a/features/login/impl/src/main/res/values-et/translations.xml +++ b/features/login/impl/src/main/res/values-et/translations.xml @@ -13,6 +13,8 @@ "Muu teenusepakkuja" "Kasuta erinevat teenusepakkujat, milleks vĂ”ib olla ka sinu oma server vĂ”i töökoha hallatav server." "Muuda teenusepakkujat" + "%1$s koduserver eeldab Element Pro rakenduse kasutamist. Palun laadi ta alla rakendustepoest." + "Vajalik on Element Pro" "Me ei suutnud luuaĂŒhendust selle koduserveriga. Palun kontrolli, kas koduserveri aadress on Ă”ige. Kui aadress on Ă”ige, siis tĂ€iendavat teavet oskab sulle anda koduserveri haldaja." "Server pole saadaval vea tĂ”ttu well-known failis: %1$s" diff --git a/features/login/impl/src/main/res/values-fr/translations.xml b/features/login/impl/src/main/res/values-fr/translations.xml index 62d5ebc6af..122d8bbca1 100644 --- a/features/login/impl/src/main/res/values-fr/translations.xml +++ b/features/login/impl/src/main/res/values-fr/translations.xml @@ -13,6 +13,8 @@ "Autres" "Utilisez un autre fournisseur de compte, tel que votre propre serveur privĂ© ou un serveur professionnel." "Changer de fournisseur de compte" + "L’application Element Pro est requise sur %1$s. Veuillez la tĂ©lĂ©charger depuis le store." + "Element Pro est requis" "Nous n’avons pas pu atteindre ce serveur d’accueil. VĂ©rifiez que vous avez correctement saisi l’URL du serveur d’accueil. Si l’URL est correcte, contactez l’administrateur de votre serveur d’accueil pour obtenir de l’aide." "Ce fournisseur de compte n’est pas disponible en raison d’un problĂšme dans le fichier .well-known: %1$s" diff --git a/features/login/impl/src/main/res/values-hu/translations.xml b/features/login/impl/src/main/res/values-hu/translations.xml index f72090d4c5..a8ea012c60 100644 --- a/features/login/impl/src/main/res/values-hu/translations.xml +++ b/features/login/impl/src/main/res/values-hu/translations.xml @@ -13,6 +13,8 @@ "EgyĂ©b" "MĂĄsik fiĂłkszolgĂĄltatĂł, pĂ©ldĂĄul a sajĂĄt privĂĄt kiszolgĂĄlĂł vagy egy munkahelyi fiĂłk hasznĂĄlata." "FiĂłkszolgĂĄltatĂł mĂłdosĂ­tĂĄsa" + "Az Element Pro alkalmazĂĄs szĂŒksĂ©ges a következƑn: %1$s. Töltse le az ĂĄruhĂĄzbĂłl." + "Element Pro szĂŒksĂ©ges" "Nem sikerĂŒlt elĂ©rni ezt a Matrix-kiszolgĂĄlĂłt. EllenƑrizze, hogy helyesen adta-e meg a Matrix-kiszolgĂĄlĂł webcĂ­mĂ©t. Ha a webcĂ­m helyes, akkor tovĂĄbbi segĂ­tsĂ©gĂ©rt lĂ©pjen kapcsolatba a Matrix-kiszolgĂĄlĂł adminisztrĂĄtorĂĄval." "A kiszolgĂĄlĂł a well-known fĂĄjl problĂ©mĂĄja miatt nem Ă©rhetƑ el: %1$s" @@ -34,6 +36,7 @@ "A Matrix egy nyitott hĂĄlĂłzat a biztonsĂĄgos, decentralizĂĄlt kommunikĂĄciĂłhoz." "ÖrĂŒlĂŒnk, hogy visszatĂ©rt!" "BejelentkezĂ©s ide: %1$s" + "VerziĂł: %1$s" "KĂ©zi bejelentkezĂ©s" "BejelentkezĂ©s ide: %1$s" "BejelentkezĂ©s QR-kĂłddal" diff --git a/features/login/impl/src/main/res/values-lt/translations.xml b/features/login/impl/src/main/res/values-lt/translations.xml index bd53419ce8..a8c68c7e78 100644 --- a/features/login/impl/src/main/res/values-lt/translations.xml +++ b/features/login/impl/src/main/res/values-lt/translations.xml @@ -13,7 +13,7 @@ "Nepavyko pasiekti ĆĄio serverio. Patikrinkite, ar teisingai ÄŻvedėte serverio URL. Jei URL yra teisingas, susisiekite su serverio administracija dėl tolimesnės pagalbos." "Serverio URL" "Koks yra JĆ«sĆł serverio adresas?" - "Sukurti paskyrą" + "Kurti paskyrą" "Ć i paskyra buvo iĆĄjungta." "Neteisingas vartotojo vardas ir (arba) slaptaĆŸodis" "Tai nėra tinkamas vartotojo vardas. Reikalingas formatas: \'@vartotojas:serveris.org\'" @@ -22,10 +22,13 @@ "Matrix yra atviras tinklas, skirtas saugiam, decentralizuotam bendravimui." "Sveiki sugrÄŻĆŸÄ™!" "Prisijungti prie %1$s" - "Prisijunkite rankiniu bĆ«du" - "Prisijunkite naudodami QR kodą" - "Sukurti paskyrą" - "Sveiki atvykę ÄŻ %1$s. Äźkrautas greitumui ir paprastumui." + "%1$s versija" + "Prisijungti rankiniu bĆ«du" + "Prisijungti prie %1$s" + "Prisijungti su QR kodu" + "Kurti paskyrą" + "Sveiki atvykę ÄŻ sparčiausią „%1$s“ kada nors. Pagerintas spartai ir paprastumui." + "Sveiki atvykę ÄŻ „%1$s“. Pagerintas spartai ir paprastumui." "BĆ«kite savo elemente" "Keisti paskyros teikėją" "Privatus serveris “Element” darbuotojams." diff --git a/features/login/impl/src/main/res/values-pl/translations.xml b/features/login/impl/src/main/res/values-pl/translations.xml index 64a6e57db2..84c8c5307b 100644 --- a/features/login/impl/src/main/res/values-pl/translations.xml +++ b/features/login/impl/src/main/res/values-pl/translations.xml @@ -13,11 +13,15 @@ "Inne" "UĆŒyj innego dostawcy konta, takiego jak wƂasny serwer lub konta sƂuĆŒbowego." "ZmieƄ dostawcę konta" + "Wymagana jest aplikacja Element Pro na %1$s. Znajdziesz ją w sklepie z aplikacjami." + "Wymagany jest Element Pro" "Nie mogliƛmy poƂączyć się z tym serwerem domowym. SprawdĆș, czy adres URL serwera zostaƂ wprowadzony poprawnie. Jeƛli adres URL jest poprawny, skontaktuj się z administratorem serwera w celu uzyskania dalszej pomocy." "Serwer nie jest dostępny z powodu problemu pliku .well-known: %1$s" "Wybrany dostawca konta nie wspiera synchronizacji przesuwnej. Wymagana jest aktualizacja serwera %1$s." "%1$s nie posiada zezwolenia na doƂączenie do %2$s." + "Aplikacja zostaƂa skonfigurowana tak, aby zezwalaƂa na: %1$s." + "Dostawca konta %1$s jest niedozwolony." "URL serwera domowego" "WprowadĆș adres domeny." "Jaki jest adres Twojego serwera?" @@ -32,6 +36,7 @@ "Matrix to otwarta sieć do bezpiecznej i zdecentralizowanej komunikacji." "Witaj ponownie!" "Zaloguj się do %1$s" + "Wersja %1$s" "Zaloguj się ręcznie" "Zaloguj się do %1$s" "Zaloguj się za pomocą kodu QR" @@ -87,5 +92,6 @@ SprĂłbuj zalogować się ręcznie lub zeskanuj kod QR na innym urządzeniu.""Matrix to otwarta sieć do bezpiecznej i zdecentralizowanej komunikacji." "Tutaj będą przechowywane Twoje konwersacje - w podobnej formie jak wiadomoƛci widnieją na skrzynce e-mail." "Zamierzasz się zalogować do %1$s" + "Wybierz dostawcę konta" "Zamierzasz utworzyć konto na %1$s" diff --git a/features/login/impl/src/main/res/values-sk/translations.xml b/features/login/impl/src/main/res/values-sk/translations.xml index e9ce127552..00c2c1d04f 100644 --- a/features/login/impl/src/main/res/values-sk/translations.xml +++ b/features/login/impl/src/main/res/values-sk/translations.xml @@ -13,6 +13,8 @@ "InĂœ" "PouĆŸite inĂ©ho poskytovateÄŸa Ășčtu, ako naprĂ­klad vlastnĂœ sĂșkromnĂœ server alebo pracovnĂœ Ășčet." "ZmeniĆ„ poskytovateÄŸa Ășčtu" + "AplikĂĄcia Element Pro je potrebnĂĄ na %1$s Stiahnite si ju z obchodu." + "VyĆŸaduje sa Element Pro" "Nemohli sme sa spojiĆ„ s tĂœmto domovskĂœm serverom. Skontrolujte prosĂ­m, či ste zadali URL adresu domovskĂ©ho servera sprĂĄvne. Ak je adresa URL sprĂĄvna, kontaktujte svoj domovskĂœ server pre ďalĆĄiu pomoc." "Server nie je k dispozĂ­cii kvĂŽli problĂ©mu v znĂĄmom sĂșbore: %1$s" diff --git a/features/login/impl/src/main/res/values/localazy.xml b/features/login/impl/src/main/res/values/localazy.xml index d0840f1983..8a45096617 100644 --- a/features/login/impl/src/main/res/values/localazy.xml +++ b/features/login/impl/src/main/res/values/localazy.xml @@ -13,6 +13,8 @@ "Other" "Use a different account provider, such as your own private server or a work account." "Change account provider" + "The Element Pro app is required on %1$s. Please download it from the store." + "Element Pro required" "We couldn\'t reach this homeserver. Please check that you have entered the homeserver URL correctly. If the URL is correct, contact your homeserver administrator for further help." "Server isn\'t available due to an issue in the .well-known file: %1$s" diff --git a/features/logout/impl/src/main/res/values-lt/translations.xml b/features/logout/impl/src/main/res/values-lt/translations.xml index 27bfab2007..3faee6b38c 100644 --- a/features/logout/impl/src/main/res/values-lt/translations.xml +++ b/features/logout/impl/src/main/res/values-lt/translations.xml @@ -1,5 +1,8 @@ "Ar tikrai norite atsijungti?" + "Atsijungti" + "Atsijungti" "Atsijungiama
" + "Atsijungti" diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/attachments/preview/AttachmentsPreviewPresenter.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/attachments/preview/AttachmentsPreviewPresenter.kt index b48ff98073..bfae4c20d1 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/attachments/preview/AttachmentsPreviewPresenter.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/attachments/preview/AttachmentsPreviewPresenter.kt @@ -31,9 +31,9 @@ import io.element.android.libraries.core.extensions.runCatchingExceptions import io.element.android.libraries.di.annotations.SessionCoroutineScope import io.element.android.libraries.featureflag.api.FeatureFlagService import io.element.android.libraries.featureflag.api.FeatureFlags +import io.element.android.libraries.matrix.api.core.EventId import io.element.android.libraries.matrix.api.core.ProgressCallback import io.element.android.libraries.matrix.api.permalink.PermalinkBuilder -import io.element.android.libraries.matrix.api.room.message.ReplyParameters import io.element.android.libraries.mediaupload.api.MediaSender import io.element.android.libraries.mediaupload.api.MediaUploadInfo import io.element.android.libraries.mediaupload.api.allFiles @@ -129,14 +129,19 @@ class AttachmentsPreviewPresenter @AssistedInject constructor( caption = caption, sendActionState = sendActionState, dismissAfterSend = !useSendQueue, - replyParameters = null, + inReplyToEventId = null, ) + + // Clean up the pre-processed media after it's been sent + mediaSender.cleanUp() } } } AttachmentsPreviewEvents.CancelAndDismiss -> { // Cancel media preprocessing and sending preprocessMediaJob?.cancel() + // If we couldn't send the pre-processed media, remove it + mediaSender.cleanUp() ongoingSendAttachmentJob.value?.cancel() // Dismiss the screen @@ -240,7 +245,7 @@ class AttachmentsPreviewPresenter @AssistedInject constructor( caption: String?, sendActionState: MutableState, dismissAfterSend: Boolean, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId?, ) = runCatchingExceptions { val context = coroutineContext val progressCallback = object : ProgressCallback { @@ -256,7 +261,7 @@ class AttachmentsPreviewPresenter @AssistedInject constructor( caption = caption, formattedCaption = null, progressCallback = progressCallback, - replyParameters = replyParameters, + inReplyToEventId = inReplyToEventId, ).getOrThrow() }.fold( onSuccess = { diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/attachments/preview/AttachmentsPreviewView.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/attachments/preview/AttachmentsPreviewView.kt index 8b66fd9e62..0ea99a9c35 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/attachments/preview/AttachmentsPreviewView.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/attachments/preview/AttachmentsPreviewView.kt @@ -66,7 +66,7 @@ fun AttachmentsPreviewView( state.eventSink(AttachmentsPreviewEvents.CancelAndClearSendState) } - BackHandler(enabled = state.sendActionState !is SendActionState.Sending) { + BackHandler(enabled = state.sendActionState !is SendActionState.Sending.Uploading && state.sendActionState !is SendActionState.Done) { postCancel() } diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/messagecomposer/MessageComposerPresenter.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/messagecomposer/MessageComposerPresenter.kt index f7187c5021..c998090b76 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/messagecomposer/MessageComposerPresenter.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/messagecomposer/MessageComposerPresenter.kt @@ -55,7 +55,6 @@ import io.element.android.libraries.matrix.api.room.JoinedRoom import io.element.android.libraries.matrix.api.room.draft.ComposerDraft import io.element.android.libraries.matrix.api.room.draft.ComposerDraftType import io.element.android.libraries.matrix.api.room.isDm -import io.element.android.libraries.matrix.api.room.message.ReplyParameters import io.element.android.libraries.matrix.api.timeline.TimelineException import io.element.android.libraries.matrix.api.timeline.item.event.toEventOrTransactionId import io.element.android.libraries.matrix.ui.messages.reply.InReplyToDetails @@ -466,12 +465,7 @@ class MessageComposerPresenter @AssistedInject constructor( body = message.markdown, htmlBody = message.html, intentionalMentions = message.intentionalMentions, - replyParameters = ReplyParameters( - inReplyToEventId = eventId, - enforceThreadReply = inThread, - // This should be false until we add a way to make a reply in a thread an explicit reply to the provided eventId - replyWithinThread = false, - ), + repliedToEventId = eventId, ) } } diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/messagecomposer/suggestions/SuggestionsPickerView.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/messagecomposer/suggestions/SuggestionsPickerView.kt index 93703377eb..99a72e06a2 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/messagecomposer/suggestions/SuggestionsPickerView.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/messagecomposer/suggestions/SuggestionsPickerView.kt @@ -157,7 +157,7 @@ internal fun SuggestionsPickerViewPreview() { powerLevel = 0L, normalizedPowerLevel = 0L, isIgnored = false, - role = RoomMember.Role.USER, + role = RoomMember.Role.User, membershipChangeReason = null, ) val anAlias = remember { RoomAlias("#room:domain.org") } diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineView.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineView.kt index cc9bf3cf84..68bbc9c8b9 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineView.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineView.kt @@ -366,7 +366,7 @@ private fun JumpToBottomButton( shape = CircleShape, modifier = Modifier.size(36.dp), containerColor = ElementTheme.colors.bgSubtleSecondary, - contentColor = ElementTheme.colors.iconSecondary + contentColor = ElementTheme.colors.iconSecondary, ) { Icon( modifier = Modifier diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/MessageEventBubble.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/MessageEventBubble.kt index 22853d4151..00069e9f82 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/MessageEventBubble.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/MessageEventBubble.kt @@ -10,6 +10,7 @@ package io.element.android.features.messages.impl.timeline.components import androidx.compose.foundation.combinedClickable import androidx.compose.foundation.interaction.MutableInteractionSource import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.BoxScope import androidx.compose.foundation.layout.BoxWithConstraints import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size @@ -20,7 +21,6 @@ import androidx.compose.runtime.Composable import androidx.compose.runtime.remember import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier -import androidx.compose.ui.draw.clip import androidx.compose.ui.draw.drawWithContent import androidx.compose.ui.geometry.Offset import androidx.compose.ui.graphics.BlendMode @@ -42,7 +42,6 @@ import io.element.android.libraries.designsystem.preview.ElementPreview import io.element.android.libraries.designsystem.preview.PreviewsDayNight import io.element.android.libraries.designsystem.text.toDp import io.element.android.libraries.designsystem.text.toPx -import io.element.android.libraries.designsystem.theme.components.Surface import io.element.android.libraries.designsystem.theme.components.Text import io.element.android.libraries.designsystem.theme.messageFromMeBackground import io.element.android.libraries.designsystem.theme.messageFromOtherBackground @@ -64,7 +63,7 @@ fun MessageEventBubble( onClick: () -> Unit, onLongClick: () -> Unit, modifier: Modifier = Modifier, - content: @Composable () -> Unit = {}, + content: @Composable BoxScope.() -> Unit = {}, ) { fun bubbleShape(): Shape { val topLeftCorner = if (state.cutTopStart) 0.dp else BUBBLE_RADIUS @@ -117,9 +116,12 @@ fun MessageEventBubble( BoxWithConstraints( modifier = modifier .graphicsLayer { + shape = bubbleShape + clip = true compositingStrategy = CompositingStrategy.Offscreen } .drawWithContent { + drawRect(backgroundBubbleColor) drawContent() if (state.cutTopStart) { drawCircle( @@ -137,7 +139,7 @@ fun MessageEventBubble( // when content width is low. contentAlignment = if (state.isMine) Alignment.CenterEnd else Alignment.CenterStart ) { - Surface( + Box( modifier = Modifier .testTag(TestTags.messageBubble) .widthIn( @@ -146,11 +148,8 @@ fun MessageEventBubble( .toInt() .toDp() ) - .clip(bubbleShape) .then(clickableModifier), - color = backgroundBubbleColor, - shape = bubbleShape, - content = content + content = content, ) } } diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/virtual/TimelineItemRoomBeginningView.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/virtual/TimelineItemRoomBeginningView.kt index 72035cdc3d..a3cab8610f 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/virtual/TimelineItemRoomBeginningView.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/virtual/TimelineItemRoomBeginningView.kt @@ -26,7 +26,6 @@ import io.element.android.libraries.designsystem.preview.PreviewsDayNight import io.element.android.libraries.designsystem.text.toAnnotatedString import io.element.android.libraries.designsystem.theme.components.Text import io.element.android.libraries.designsystem.utils.allBooleans -import io.element.android.libraries.matrix.api.core.EventId import io.element.android.libraries.matrix.api.core.RoomId import io.element.android.libraries.matrix.api.room.tombstone.PredecessorRoom @@ -92,7 +91,7 @@ internal fun TimelineItemRoomBeginningViewPreview() = ElementPreview { onPredecessorRoomClick = {}, ) TimelineItemRoomBeginningView( - predecessorRoom = PredecessorRoom(RoomId("!roomId:matrix.org"), EventId("\$eventId:matrix.org")), + predecessorRoom = PredecessorRoom(RoomId("!roomId:matrix.org")), roomName = "Room Name", isDm = isDm, onPredecessorRoomClick = {}, diff --git a/features/messages/impl/src/main/res/values-pl/translations.xml b/features/messages/impl/src/main/res/values-pl/translations.xml index ae07e43929..69005d3c77 100644 --- a/features/messages/impl/src/main/res/values-pl/translations.xml +++ b/features/messages/impl/src/main/res/values-pl/translations.xml @@ -35,14 +35,30 @@ "PokaĆŒ mniej" "Skopiowano wiadomoƛć" "Nie masz uprawnieƄ, aby pisać w tym pokoju" + + "%1$d czƂonek zareagowaƂ z %2$s" + "%1$d czƂonkĂłw zareagowaƂo z %2$s" + "%1$d czƂonkĂłw zareagowaƂo z %2$s" + + + "Ty i %1$d czƂonek zareagowaliƛcie z %2$s" + "Ty i %1$d czƂonkĂłw zareagowaliƛcie z %2$s" + "Ty i %1$d czƂonkĂłw zareagowaliƛcie z %2$s" + + "ZareagowaƂeƛ z %1$s" "PokaĆŒ mniej" "PokaĆŒ więcej" + "PokaĆŒ podsumowanie reakcji" "Nowe" "%1$d zmiana pokoju" "%1$d zmiany pokoju" "%1$d zmian pokoju" + "PrzejdĆș do nowego pokoju" + "Ten pokĂłj zostaƂ zmieniony i nie jest juĆŒ aktywny" + "Zobacz stare wiadomoƛci" + "Ten pokĂłj jest kontynuacją innego pokoju" "%1$s, %2$s i %3$d inny" "%1$s, %2$s i %3$d innych" diff --git a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/attachments/AttachmentsPreviewPresenterTest.kt b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/attachments/AttachmentsPreviewPresenterTest.kt index 31065275b9..292bc89654 100644 --- a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/attachments/AttachmentsPreviewPresenterTest.kt +++ b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/attachments/AttachmentsPreviewPresenterTest.kt @@ -23,6 +23,7 @@ import io.element.android.libraries.androidutils.file.TemporaryUriDeleter import io.element.android.libraries.core.mimetype.MimeTypes import io.element.android.libraries.featureflag.api.FeatureFlags import io.element.android.libraries.featureflag.test.FakeFeatureFlagService +import io.element.android.libraries.matrix.api.core.EventId import io.element.android.libraries.matrix.api.core.ProgressCallback import io.element.android.libraries.matrix.api.media.AudioInfo import io.element.android.libraries.matrix.api.media.FileInfo @@ -30,7 +31,6 @@ import io.element.android.libraries.matrix.api.media.ImageInfo import io.element.android.libraries.matrix.api.media.VideoInfo import io.element.android.libraries.matrix.api.permalink.PermalinkBuilder import io.element.android.libraries.matrix.api.room.JoinedRoom -import io.element.android.libraries.matrix.api.room.message.ReplyParameters import io.element.android.libraries.matrix.test.A_CAPTION import io.element.android.libraries.matrix.test.media.FakeMediaUploadHandler import io.element.android.libraries.matrix.test.permalink.FakePermalinkBuilder @@ -108,7 +108,7 @@ class AttachmentsPreviewPresenterTest { @Test fun `present - send media success scenario`() = runTest { val sendFileResult = - lambdaRecorder> { _, _, _, _, _, _ -> + lambdaRecorder> { _, _, _, _, _, _ -> Result.success(FakeMediaUploadHandler()) } val room = FakeJoinedRoom( @@ -123,8 +123,10 @@ class AttachmentsPreviewPresenterTest { }, ) val onDoneListener = lambdaRecorder { } + val mediaPreProcessor = FakeMediaPreProcessor() val presenter = createAttachmentsPreviewPresenter( room = room, + mediaPreProcessor = mediaPreProcessor, onDoneListener = { onDoneListener() }, ) moleculeFlow(RecompositionMode.Immediate) { @@ -143,13 +145,14 @@ class AttachmentsPreviewPresenterTest { assertThat(awaitItem().sendActionState).isEqualTo(SendActionState.Done) sendFileResult.assertions().isCalledOnce() onDoneListener.assertions().isCalledOnce() + assertThat(mediaPreProcessor.cleanUpCallCount).isEqualTo(1) } } @Test fun `present - send media after pre-processing success scenario`() = runTest { val sendFileResult = - lambdaRecorder> { _, _, _, _, _, _ -> + lambdaRecorder> { _, _, _, _, _, _ -> Result.success(FakeMediaUploadHandler()) } val room = FakeJoinedRoom( @@ -159,11 +162,10 @@ class AttachmentsPreviewPresenterTest { ) val onDoneListener = lambdaRecorder { } val processLatch = CompletableDeferred() + val mediaPreProcessor = FakeMediaPreProcessor(processLatch) val presenter = createAttachmentsPreviewPresenter( room = room, - mediaPreProcessor = FakeMediaPreProcessor( - processLatch = processLatch, - ), + mediaPreProcessor = mediaPreProcessor, onDoneListener = { onDoneListener() }, ) moleculeFlow(RecompositionMode.Immediate) { @@ -181,13 +183,14 @@ class AttachmentsPreviewPresenterTest { assertThat(awaitItem().sendActionState).isEqualTo(SendActionState.Done) sendFileResult.assertions().isCalledOnce() onDoneListener.assertions().isCalledOnce() + assertThat(mediaPreProcessor.cleanUpCallCount).isEqualTo(1) } } @Test fun `present - send media before pre-processing success scenario`() = runTest { val sendFileResult = - lambdaRecorder> { _, _, _, _, _, _ -> + lambdaRecorder> { _, _, _, _, _, _ -> Result.success(FakeMediaUploadHandler()) } val room = FakeJoinedRoom( @@ -197,11 +200,10 @@ class AttachmentsPreviewPresenterTest { ) val onDoneListener = lambdaRecorder { } val processLatch = CompletableDeferred() + val mediaPreProcessor = FakeMediaPreProcessor(processLatch) val presenter = createAttachmentsPreviewPresenter( room = room, - mediaPreProcessor = FakeMediaPreProcessor( - processLatch = processLatch, - ), + mediaPreProcessor = mediaPreProcessor, onDoneListener = { onDoneListener() }, ) moleculeFlow(RecompositionMode.Immediate) { @@ -219,6 +221,7 @@ class AttachmentsPreviewPresenterTest { assertThat(awaitItem().sendActionState).isEqualTo(SendActionState.Done) sendFileResult.assertions().isCalledOnce() onDoneListener.assertions().isCalledOnce() + assertThat(mediaPreProcessor.cleanUpCallCount).isEqualTo(1) } } @@ -279,7 +282,9 @@ class AttachmentsPreviewPresenterTest { fun `present - cancel scenario`() = runTest { val onDoneListener = lambdaRecorder { } val deleteCallback = lambdaRecorder {} + val mediaPreProcessor = FakeMediaPreProcessor() val presenter = createAttachmentsPreviewPresenter( + mediaPreProcessor = mediaPreProcessor, temporaryUriDeleter = FakeTemporaryUriDeleter(deleteCallback), onDoneListener = { onDoneListener() }, ) @@ -293,13 +298,14 @@ class AttachmentsPreviewPresenterTest { assertThat(awaitItem().sendActionState).isEqualTo(SendActionState.Done) deleteCallback.assertions().isCalledOnce() onDoneListener.assertions().isCalledOnce() + assertThat(mediaPreProcessor.cleanUpCallCount).isEqualTo(1) } } @Test fun `present - send image with caption success scenario`() = runTest { val sendImageResult = - lambdaRecorder { _: File, _: File?, _: ImageInfo, _: String?, _: String?, _: ProgressCallback?, _: ReplyParameters? -> + lambdaRecorder { _: File, _: File?, _: ImageInfo, _: String?, _: String?, _: ProgressCallback?, _: EventId? -> Result.success(FakeMediaUploadHandler()) } val mediaPreProcessor = FakeMediaPreProcessor().apply { @@ -343,7 +349,7 @@ class AttachmentsPreviewPresenterTest { @Test fun `present - send video with caption success scenario`() = runTest { val sendVideoResult = - lambdaRecorder { _: File, _: File?, _: VideoInfo, _: String?, _: String?, _: ProgressCallback?, _: ReplyParameters? -> + lambdaRecorder { _: File, _: File?, _: VideoInfo, _: String?, _: String?, _: ProgressCallback?, _: EventId? -> Result.success(FakeMediaUploadHandler()) } val mediaPreProcessor = FakeMediaPreProcessor().apply { @@ -387,7 +393,7 @@ class AttachmentsPreviewPresenterTest { @Test fun `present - send audio with caption success scenario`() = runTest { val sendAudioResult = - lambdaRecorder> { _, _, _, _, _, _ -> + lambdaRecorder> { _, _, _, _, _, _ -> Result.success(FakeMediaUploadHandler()) } val mediaPreProcessor = FakeMediaPreProcessor().apply { @@ -429,7 +435,7 @@ class AttachmentsPreviewPresenterTest { fun `present - send media failure scenario without media queue`() = runTest { val failure = MediaPreProcessor.Failure(null) val sendFileResult = - lambdaRecorder> { _, _, _, _, _, _ -> + lambdaRecorder> { _, _, _, _, _, _ -> Result.failure(failure) } val room = FakeJoinedRoom( @@ -460,7 +466,7 @@ class AttachmentsPreviewPresenterTest { fun `present - send media failure scenario with media queue`() = runTest { val failure = MediaPreProcessor.Failure(null) val sendFileResult = - lambdaRecorder> { _, _, _, _, _, _ -> + lambdaRecorder> { _, _, _, _, _, _ -> Result.failure(failure) } val onDoneListenerResult = lambdaRecorder {} diff --git a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/messagecomposer/MessageComposerPresenterTest.kt b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/messagecomposer/MessageComposerPresenterTest.kt index 1a7a1d930e..1d5318f94f 100644 --- a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/messagecomposer/MessageComposerPresenterTest.kt +++ b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/messagecomposer/MessageComposerPresenterTest.kt @@ -48,7 +48,6 @@ import io.element.android.libraries.matrix.api.room.RoomMembersState import io.element.android.libraries.matrix.api.room.RoomMembershipState import io.element.android.libraries.matrix.api.room.draft.ComposerDraft import io.element.android.libraries.matrix.api.room.draft.ComposerDraftType -import io.element.android.libraries.matrix.api.room.message.ReplyParameters import io.element.android.libraries.matrix.api.timeline.TimelineException import io.element.android.libraries.matrix.api.timeline.item.event.EventOrTransactionId import io.element.android.libraries.matrix.api.timeline.item.event.InReplyTo @@ -610,7 +609,7 @@ class MessageComposerPresenterTest { @Test fun `present - reply message`() = runTest { - val replyMessageLambda = lambdaRecorder { _: ReplyParameters, _: String, _: String?, _: List, _: Boolean -> + val replyMessageLambda = lambdaRecorder { _: EventId?, _: String, _: String?, _: List, _: Boolean -> Result.success(Unit) } val timeline = FakeTimeline().apply { @@ -1100,7 +1099,7 @@ class MessageComposerPresenterTest { @OptIn(ExperimentalCoroutinesApi::class) @Test fun `present - send messages with intentional mentions`() = runTest { - val replyMessageLambda = lambdaRecorder { _: ReplyParameters, _: String, _: String?, _: List, _: Boolean -> + val replyMessageLambda = lambdaRecorder { _: EventId?, _: String, _: String?, _: List, _: Boolean -> Result.success(Unit) } val editMessageLambda = lambdaRecorder { _: EventOrTransactionId, _: String, _: String?, _: List -> diff --git a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/TimelinePresenterTest.kt b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/TimelinePresenterTest.kt index 2cc7d9764a..f202fd7e6e 100644 --- a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/TimelinePresenterTest.kt +++ b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/TimelinePresenterTest.kt @@ -710,11 +710,7 @@ class TimelinePresenterTest { @Test fun `present - timeline room info includes predecessor room when room has predecessor`() = runTest { val predecessorRoomId = RoomId("!predecessor:server.org") - val predecessorEventId = EventId("\$predecessorEvent:server.org") - val predecessorRoom = PredecessorRoom( - roomId = predecessorRoomId, - lastEventId = predecessorEventId - ) + val predecessorRoom = PredecessorRoom(roomId = predecessorRoomId) val room = FakeJoinedRoom( baseRoom = FakeBaseRoom( @@ -730,7 +726,6 @@ class TimelinePresenterTest { val initialState = awaitFirstItem() assertThat(initialState.timelineRoomInfo.predecessorRoom).isNotNull() assertThat(initialState.timelineRoomInfo.predecessorRoom?.roomId).isEqualTo(predecessorRoomId) - assertThat(initialState.timelineRoomInfo.predecessorRoom?.lastEventId).isEqualTo(predecessorEventId) } } diff --git a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/voicemessages/composer/VoiceMessageComposerPresenterTest.kt b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/voicemessages/composer/VoiceMessageComposerPresenterTest.kt index 7d0ceb5527..3eb3210a63 100644 --- a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/voicemessages/composer/VoiceMessageComposerPresenterTest.kt +++ b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/voicemessages/composer/VoiceMessageComposerPresenterTest.kt @@ -19,9 +19,9 @@ import com.google.common.truth.Truth.assertThat import im.vector.app.features.analytics.plan.Composer import io.element.android.features.messages.impl.messagecomposer.aReplyMode import io.element.android.features.messages.test.FakeMessageComposerContext +import io.element.android.libraries.matrix.api.core.EventId import io.element.android.libraries.matrix.api.core.ProgressCallback import io.element.android.libraries.matrix.api.media.AudioInfo -import io.element.android.libraries.matrix.api.room.message.ReplyParameters import io.element.android.libraries.matrix.test.media.FakeMediaUploadHandler import io.element.android.libraries.matrix.test.room.FakeJoinedRoom import io.element.android.libraries.matrix.test.timeline.FakeTimeline @@ -63,7 +63,7 @@ class VoiceMessageComposerPresenterTest { ) private val analyticsService = FakeAnalyticsService() private val sendVoiceMessageResult = - lambdaRecorder, ProgressCallback?, ReplyParameters?, Result> { _, _, _, _, _ -> + lambdaRecorder, ProgressCallback?, EventId?, Result> { _, _, _, _, _ -> Result.success(FakeMediaUploadHandler()) } private val joinedRoom = FakeJoinedRoom( diff --git a/features/poll/api/src/main/res/values-cy/translations.xml b/features/poll/api/src/main/res/values-cy/translations.xml index 9be4adc91e..3479c30674 100644 --- a/features/poll/api/src/main/res/values-cy/translations.xml +++ b/features/poll/api/src/main/res/values-cy/translations.xml @@ -1,4 +1,5 @@ + "Bydd yn dileu\'r dewis blaenorol" "Dyma\'r ateb buddugol" diff --git a/features/poll/api/src/main/res/values-de/translations.xml b/features/poll/api/src/main/res/values-de/translations.xml index b80268d03e..eefa8a3814 100644 --- a/features/poll/api/src/main/res/values-de/translations.xml +++ b/features/poll/api/src/main/res/values-de/translations.xml @@ -4,5 +4,6 @@ "%1$d Prozent der Stimmen insgesamt" "%1$d Prozent der Gesamtstimmen" + "Entfernt die vorherige Auswahl" "Das ist die Gewinnerantwort" diff --git a/features/poll/api/src/main/res/values-et/translations.xml b/features/poll/api/src/main/res/values-et/translations.xml index a57d937d4f..ec04ca046b 100644 --- a/features/poll/api/src/main/res/values-et/translations.xml +++ b/features/poll/api/src/main/res/values-et/translations.xml @@ -4,5 +4,6 @@ "%1$d protsent kĂ”ikidest antud hÀÀltest" "%1$d protsenti kĂ”ikidest antud hÀÀltest" + "See kustutab eelmise valiku" "See vastus vĂ”itis" diff --git a/features/poll/api/src/main/res/values-fr/translations.xml b/features/poll/api/src/main/res/values-fr/translations.xml index a085a9d40e..d2ab7cbd97 100644 --- a/features/poll/api/src/main/res/values-fr/translations.xml +++ b/features/poll/api/src/main/res/values-fr/translations.xml @@ -4,5 +4,6 @@ "%1$d pour cent du total des votes" "%1$d pour cent du total des votes" + "Supprimera la sĂ©lection prĂ©cĂ©dente" "C’est la rĂ©ponse gagnante" diff --git a/features/poll/api/src/main/res/values-hu/translations.xml b/features/poll/api/src/main/res/values-hu/translations.xml index 3bb3181295..9aa6d04e5a 100644 --- a/features/poll/api/src/main/res/values-hu/translations.xml +++ b/features/poll/api/src/main/res/values-hu/translations.xml @@ -4,5 +4,6 @@ "az összes szavazat %1$d szĂĄzalĂ©ka" "az összes szavazat %1$d szĂĄzalĂ©ka" + "EltĂĄvolĂ­tja a korĂĄbbi kijelölĂ©st" "Ez a gyƑztes vĂĄlasz" diff --git a/features/poll/api/src/main/res/values-pl/translations.xml b/features/poll/api/src/main/res/values-pl/translations.xml new file mode 100644 index 0000000000..5e4ed3fe22 --- /dev/null +++ b/features/poll/api/src/main/res/values-pl/translations.xml @@ -0,0 +1,10 @@ + + + + "%1$d procent wszystkich gƂosĂłw" + "%1$d procenty wszystkich gƂosĂłw" + "%1$d procent wszystkich gƂosĂłw" + + "Spowoduje to usunięcie poprzedniego zaznaczenia" + "Zwycięska odpowiedĆș" + diff --git a/features/poll/api/src/main/res/values-sk/translations.xml b/features/poll/api/src/main/res/values-sk/translations.xml index 42a6d22945..eed87c64dd 100644 --- a/features/poll/api/src/main/res/values-sk/translations.xml +++ b/features/poll/api/src/main/res/values-sk/translations.xml @@ -5,5 +5,6 @@ "%1$d percentĂĄ z celkovĂ©ho počtu hlasov" "%1$d percent z celkovĂ©ho počtu hlasov" + "OdstrĂĄni predchĂĄdzajĂșci vĂœber" "Toto je vĂ­Ć„aznĂĄ odpoveď" diff --git a/features/poll/impl/src/main/res/values-pl/translations.xml b/features/poll/impl/src/main/res/values-pl/translations.xml index aae84c4e40..fef519c26b 100644 --- a/features/poll/impl/src/main/res/values-pl/translations.xml +++ b/features/poll/impl/src/main/res/values-pl/translations.xml @@ -5,6 +5,7 @@ "Ukryj gƂosy" "Opcja %1$d" "Zmiany nie zostaƂy zapisane. Czy na pewno chcesz wrĂłcić?" + "UsuƄ opcję %1$s" "Pytanie lub temat" "Czego dotyczy ankieta?" "UtwĂłrz ankietę" diff --git a/features/rageshake/impl/src/main/res/values-pl/translations.xml b/features/rageshake/impl/src/main/res/values-pl/translations.xml index 36b86289b2..e421d747bf 100644 --- a/features/rageshake/impl/src/main/res/values-pl/translations.xml +++ b/features/rageshake/impl/src/main/res/values-pl/translations.xml @@ -10,6 +10,7 @@ "Opis jest zbyt krĂłtki, podaj więcej szczegóƂów na temat tego co się staƂo. Dzięki!" "Wyƛlij logi awarii" "ZezwĂłl na logi" + "Twoje dzienniki są zbyt duĆŒe, więc nie moĆŒna ich uwzględnić w tym raporcie. Przeƛlij je do nas w inny sposĂłb." "Wyƛlij zrzut ekranu" "Logi zostaną doƂączone do Twojej wiadomoƛci, aby upewnić się, ĆŒe wszystko dziaƂa poprawnie. Aby wysƂać wiadomoƛć bez logĂłw, wyƂącz to ustawienie." "%1$s ulegƂ awarii podczas ostatniego uĆŒycia. Czy chcesz przesƂać nam raport o awarii?" diff --git a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/RoomDetailsStateProvider.kt b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/RoomDetailsStateProvider.kt index a5e81040e8..097cb2e219 100644 --- a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/RoomDetailsStateProvider.kt +++ b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/RoomDetailsStateProvider.kt @@ -69,7 +69,7 @@ fun aDmRoomMember( powerLevel: Long = 0, normalizedPowerLevel: Long = powerLevel, isIgnored: Boolean = false, - role: RoomMember.Role = RoomMember.Role.USER, + role: RoomMember.Role = RoomMember.Role.User, membershipChangeReason: String? = null, ) = RoomMember( userId = userId, diff --git a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/analytics/AnalyticUtils.kt b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/analytics/AnalyticUtils.kt index 7e4ae1d7c2..09d57af034 100644 --- a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/analytics/AnalyticUtils.kt +++ b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/analytics/AnalyticUtils.kt @@ -13,9 +13,10 @@ import io.element.android.libraries.matrix.api.room.powerlevels.RoomPowerLevelsV import io.element.android.services.analytics.api.AnalyticsService internal fun RoomMember.Role.toAnalyticsMemberRole(): RoomModeration.Role = when (this) { - RoomMember.Role.ADMIN -> RoomModeration.Role.Administrator - RoomMember.Role.MODERATOR -> RoomModeration.Role.Moderator - RoomMember.Role.USER -> RoomModeration.Role.User + is RoomMember.Role.Owner -> RoomModeration.Role.Administrator // TODO - distinguish creator from admin + RoomMember.Role.Admin -> RoomModeration.Role.Administrator + RoomMember.Role.Moderator -> RoomModeration.Role.Moderator + RoomMember.Role.User -> RoomModeration.Role.User } internal fun analyticsMemberRoleForPowerLevel(powerLevel: Long): RoomModeration.Role { diff --git a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/members/RoomMemberListStateProvider.kt b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/members/RoomMemberListStateProvider.kt index 09a7d9c910..52acb6ebd6 100644 --- a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/members/RoomMemberListStateProvider.kt +++ b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/members/RoomMemberListStateProvider.kt @@ -150,7 +150,7 @@ fun aRoomMember( powerLevel: Long = 0L, normalizedPowerLevel: Long = 0L, isIgnored: Boolean = false, - role: RoomMember.Role = RoomMember.Role.USER, + role: RoomMember.Role = RoomMember.Role.User, membershipChangeReason: String? = null, ) = RoomMember( userId = userId, @@ -178,8 +178,8 @@ fun aRoomMemberList() = persistentListOf( aWalter(), ) -fun anAlice() = aRoomMember(UserId("@alice:server.org"), "Alice", role = RoomMember.Role.ADMIN) -fun aBob() = aRoomMember(UserId("@bob:server.org"), "Bob", role = RoomMember.Role.MODERATOR) +fun anAlice() = aRoomMember(UserId("@alice:server.org"), "Alice", role = RoomMember.Role.Admin) +fun aBob() = aRoomMember(UserId("@bob:server.org"), "Bob", role = RoomMember.Role.Moderator) fun aVictor() = aRoomMember(UserId("@victor:server.org"), "Victor", membership = RoomMembershipState.INVITE) diff --git a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/members/RoomMemberListView.kt b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/members/RoomMemberListView.kt index 443a40c6a2..c28cdda62c 100644 --- a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/members/RoomMemberListView.kt +++ b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/members/RoomMemberListView.kt @@ -293,10 +293,12 @@ private fun RoomMemberListItem( onClick: () -> Unit, modifier: Modifier = Modifier, ) { - val roleText = when (roomMemberWithIdentity.roomMember.role) { - RoomMember.Role.ADMIN -> stringResource(R.string.screen_room_member_list_role_administrator) - RoomMember.Role.MODERATOR -> stringResource(R.string.screen_room_member_list_role_moderator) - RoomMember.Role.USER -> null + val member = roomMemberWithIdentity.roomMember + val roleText = when (member.role) { + RoomMember.Role.Admin -> stringResource(R.string.screen_room_member_list_role_administrator) + RoomMember.Role.Moderator -> stringResource(R.string.screen_room_member_list_role_moderator) + is RoomMember.Role.Owner -> stringResource(R.string.screen_room_member_list_role_owner) + else -> null } MatrixUserRow( diff --git a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsNode.kt b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsNode.kt index 8b96bcda27..80e2d007a3 100644 --- a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsNode.kt +++ b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsNode.kt @@ -21,6 +21,7 @@ import io.element.android.anvilannotations.ContributesNode import io.element.android.libraries.di.RoomScope import io.element.android.libraries.matrix.api.room.BaseRoom import io.element.android.libraries.matrix.api.room.RoomMember +import io.element.android.libraries.matrix.ui.model.roleOf import kotlinx.coroutines.flow.collect import kotlinx.coroutines.flow.filter import kotlinx.coroutines.flow.onEach @@ -59,7 +60,8 @@ class RolesAndPermissionsNode @AssistedInject constructor( lifecycleScope.launch { room.roomInfoFlow .filter { info -> - info.roomPowerLevels?.users?.get(room.sessionId) != RoomMember.Role.ADMIN.powerLevel + val role = info.roleOf(room.sessionId) + role != RoomMember.Role.Admin && role !is RoomMember.Role.Owner } .take(1) .onEach { navigateUp() } diff --git a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsPresenter.kt b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsPresenter.kt index f2de1d2817..df62dbbbc0 100644 --- a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsPresenter.kt +++ b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsPresenter.kt @@ -26,6 +26,7 @@ import io.element.android.libraries.matrix.api.room.RoomInfo import io.element.android.libraries.matrix.api.room.RoomMember import io.element.android.libraries.matrix.api.room.activeRoomMembers import io.element.android.libraries.matrix.api.room.powerlevels.UserRoleChange +import io.element.android.libraries.matrix.ui.model.roleOf import io.element.android.services.analytics.api.AnalyticsService import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.launch @@ -50,14 +51,23 @@ class RolesAndPermissionsPresenter @Inject constructor( } val moderatorCount by remember { derivedStateOf { - roomInfo.userCountWithRole(activeRoomMemberIds, RoomMember.Role.MODERATOR) + roomInfo.userCountWithRole(activeRoomMemberIds, RoomMember.Role.Moderator) } } val adminCount by remember { derivedStateOf { - roomInfo.userCountWithRole(activeRoomMemberIds, RoomMember.Role.ADMIN) + val admins = roomInfo.userCountWithRole(activeRoomMemberIds, RoomMember.Role.Admin) + val ownersCount = if (roomInfo.privilegedCreatorRole) { + val superAdmins = roomInfo.userCountWithRole(activeRoomMemberIds, RoomMember.Role.Owner(isCreator = false)) + val creators = roomInfo.userCountWithRole(activeRoomMemberIds, RoomMember.Role.Owner(isCreator = true)) + superAdmins + creators + } else { + 0 + } + admins + ownersCount } } + val canDemoteSelf = remember { derivedStateOf { roomInfo.roleOf(room.sessionId) !is RoomMember.Role.Owner } } val changeOwnRoleAction = remember { mutableStateOf>(AsyncAction.Uninitialized) } val resetPermissionsAction = remember { mutableStateOf>(AsyncAction.Uninitialized) } @@ -83,8 +93,10 @@ class RolesAndPermissionsPresenter @Inject constructor( } return RolesAndPermissionsState( + roomSupportsOwnerRole = roomInfo.privilegedCreatorRole, adminCount = adminCount, moderatorCount = moderatorCount, + canDemoteSelf = canDemoteSelf.value, changeOwnRoleAction = changeOwnRoleAction.value, resetPermissionsAction = resetPermissionsAction.value, eventSink = { handleEvent(it) }, @@ -110,8 +122,6 @@ class RolesAndPermissionsPresenter @Inject constructor( } private fun RoomInfo.userCountWithRole(userIds: List, role: RoomMember.Role): Int { - return this.roomPowerLevels?.users?.count { (userId, level) -> - RoomMember.Role.forPowerLevel(level) == role && userId in userIds - } ?: 0 + return usersWithRole(role).filter { it in userIds }.size } } diff --git a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsState.kt b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsState.kt index 535786be67..24f645a309 100644 --- a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsState.kt +++ b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsState.kt @@ -10,8 +10,10 @@ package io.element.android.features.roomdetails.impl.rolesandpermissions import io.element.android.libraries.architecture.AsyncAction data class RolesAndPermissionsState( + val roomSupportsOwnerRole: Boolean, val adminCount: Int, val moderatorCount: Int, + val canDemoteSelf: Boolean, val changeOwnRoleAction: AsyncAction, val resetPermissionsAction: AsyncAction, val eventSink: (RolesAndPermissionsEvents) -> Unit, diff --git a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsStateProvider.kt b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsStateProvider.kt index d353812c9b..211a16d7d1 100644 --- a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsStateProvider.kt +++ b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsStateProvider.kt @@ -13,7 +13,7 @@ import io.element.android.libraries.architecture.AsyncAction class RolesAndPermissionsStateProvider : PreviewParameterProvider { override val values: Sequence get() = sequenceOf( - aRolesAndPermissionsState(), + aRolesAndPermissionsState(roomSupportsOwners = false), aRolesAndPermissionsState(adminCount = 1, moderatorCount = 2), aRolesAndPermissionsState( adminCount = 1, @@ -45,17 +45,22 @@ class RolesAndPermissionsStateProvider : PreviewParameterProvider = AsyncAction.Uninitialized, resetPermissionsAction: AsyncAction = AsyncAction.Uninitialized, eventSink: (RolesAndPermissionsEvents) -> Unit = {}, ) = RolesAndPermissionsState( + roomSupportsOwnerRole = roomSupportsOwners, adminCount = adminCount, + canDemoteSelf = canDemoteSelf, moderatorCount = moderatorCount, changeOwnRoleAction = changeOwnRoleAction, resetPermissionsAction = resetPermissionsAction, diff --git a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsView.kt b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsView.kt index 2e388d2f39..536b0f8b18 100644 --- a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsView.kt +++ b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsView.kt @@ -55,8 +55,14 @@ fun RolesAndPermissionsView( onBackClick = rolesAndPermissionsNavigator::onBackClick, ) { ListSectionHeader(title = stringResource(R.string.screen_room_roles_and_permissions_roles_header), hasDivider = false) + + val adminsTitle = if (state.roomSupportsOwnerRole) { + stringResource(R.string.screen_room_roles_and_permissions_admins_and_owners) + } else { + stringResource(R.string.screen_room_roles_and_permissions_admins) + } ListItem( - headlineContent = { Text(stringResource(R.string.screen_room_roles_and_permissions_admins)) }, + headlineContent = { Text(adminsTitle) }, leadingContent = ListItemContent.Icon(IconSource.Vector(CompoundIcons.Admin())), trailingContent = ListItemContent.Text("${state.adminCount}"), onClick = { rolesAndPermissionsNavigator.openAdminList() }, @@ -67,11 +73,13 @@ fun RolesAndPermissionsView( trailingContent = ListItemContent.Text("${state.moderatorCount}"), onClick = { rolesAndPermissionsNavigator.openModeratorList() }, ) - ListItem( - headlineContent = { Text(stringResource(R.string.screen_room_roles_and_permissions_change_my_role)) }, - onClick = { state.eventSink(RolesAndPermissionsEvents.ChangeOwnRole) }, - leadingContent = ListItemContent.Icon(IconSource.Vector(CompoundIcons.Edit())) - ) + if (state.canDemoteSelf) { + ListItem( + headlineContent = { Text(stringResource(R.string.screen_room_roles_and_permissions_change_my_role)) }, + onClick = { state.eventSink(RolesAndPermissionsEvents.ChangeOwnRole) }, + leadingContent = ListItemContent.Icon(IconSource.Vector(CompoundIcons.Edit())) + ) + } ListSectionHeader(title = stringResource(R.string.screen_room_roles_and_permissions_permissions_header), hasDivider = true) ListItem( headlineContent = { Text(stringResource(R.string.screen_room_roles_and_permissions_room_details)) }, @@ -170,7 +178,7 @@ private fun ChangeOwnRoleBottomSheet( headlineContent = { Text(stringResource(R.string.screen_room_roles_and_permissions_change_role_demote_to_moderator)) }, onClick = { sheetState.hide(coroutineScope) { - eventSink(RolesAndPermissionsEvents.DemoteSelfTo(RoomMember.Role.MODERATOR)) + eventSink(RolesAndPermissionsEvents.DemoteSelfTo(RoomMember.Role.Moderator)) } }, style = ListItemStyle.Destructive, @@ -179,7 +187,7 @@ private fun ChangeOwnRoleBottomSheet( headlineContent = { Text(stringResource(R.string.screen_room_roles_and_permissions_change_role_demote_to_member)) }, onClick = { sheetState.hide(coroutineScope) { - eventSink(RolesAndPermissionsEvents.DemoteSelfTo(RoomMember.Role.USER)) + eventSink(RolesAndPermissionsEvents.DemoteSelfTo(RoomMember.Role.User)) } }, style = ListItemStyle.Destructive, diff --git a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesNode.kt b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesNode.kt index 81ca9c0903..b4750a96ee 100644 --- a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesNode.kt +++ b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesNode.kt @@ -44,8 +44,8 @@ class ChangeRolesNode @AssistedInject constructor( private val presenter = presenterFactory.run { val role = when (inputs.listType) { - is ListType.Admins -> RoomMember.Role.ADMIN - is ListType.Moderators -> RoomMember.Role.MODERATOR + is ListType.Admins -> RoomMember.Role.Admin + is ListType.Moderators -> RoomMember.Role.Moderator } create(role) } diff --git a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesPresenter.kt b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesPresenter.kt index e3a173f2f2..b5e5b63854 100644 --- a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesPresenter.kt +++ b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesPresenter.kt @@ -36,6 +36,7 @@ import io.element.android.libraries.matrix.api.room.powerlevels.UserRoleChange import io.element.android.libraries.matrix.api.room.powerlevels.usersWithRole import io.element.android.libraries.matrix.api.room.toMatrixUser import io.element.android.libraries.matrix.api.user.MatrixUser +import io.element.android.libraries.matrix.ui.model.roleOf import io.element.android.services.analytics.api.AnalyticsService import kotlinx.collections.immutable.ImmutableList import kotlinx.collections.immutable.PersistentList @@ -74,18 +75,17 @@ class ChangeRolesPresenter @AssistedInject constructor( val exitState: MutableState> = remember { mutableStateOf(AsyncAction.Uninitialized) } val saveState: MutableState> = remember { mutableStateOf(AsyncAction.Uninitialized) } val usersWithRole = produceState(initialValue = persistentListOf()) { - room.usersWithRole(role) - .map { members -> members.map { it.toMatrixUser() } } - .onEach { users -> - val previous: PersistentList = value - value = users.toPersistentList() - // Users who were selected but didn't have the role, so their role change was pending - val toAdd = selectedUsers.value.filter { user -> users.none { it.userId == user.userId } && previous.none { it.userId == user.userId } } - // Users who no longer have the role - val toRemove = previous.filter { user -> users.none { it.userId == user.userId } }.toSet() - selectedUsers.value = (users + toAdd - toRemove).toImmutableList() - } - .launchIn(this) + room.usersWithRole(role).map { members -> members.map { it.toMatrixUser() } } + .onEach { users -> + val previous: PersistentList = value + value = users.toPersistentList() + // Users who were selected but didn't have the role, so their role change was pending + val toAdd = selectedUsers.value.filter { user -> users.none { it.userId == user.userId } && previous.none { it.userId == user.userId } } + // Users who no longer have the role + val toRemove = previous.filter { user -> users.none { it.userId == user.userId } }.toSet() + selectedUsers.value = (users + toAdd - toRemove).toImmutableList() + } + .launchIn(this) } val roomMemberState by room.membersStateFlow.collectAsState() @@ -96,7 +96,6 @@ class ChangeRolesPresenter @AssistedInject constructor( .search(query.orEmpty()) .groupedByRole() - println(results) searchResults = if (results.isEmpty()) { SearchBarResultState.NoResultsFound() } else { @@ -108,9 +107,10 @@ class ChangeRolesPresenter @AssistedInject constructor( val roomInfo by room.roomInfoFlow.collectAsState() fun canChangeMemberRole(userId: UserId): Boolean { - // An admin can't remove or demote another admin - val powerLevel = roomInfo.roomPowerLevels?.users?.get(userId) ?: 0L - return RoomMember.Role.forPowerLevel(powerLevel) != RoomMember.Role.ADMIN + // This is used to group the + val currentUserRole = roomInfo.roleOf(room.sessionId) + val otherUserRole = roomInfo.roleOf(userId) + return currentUserRole.powerLevel > otherUserRole.powerLevel } fun handleEvent(event: ChangeRolesEvent) { @@ -132,11 +132,21 @@ class ChangeRolesPresenter @AssistedInject constructor( selectedUsers.value = newList.toImmutableList() } is ChangeRolesEvent.Save -> { - if (role == RoomMember.Role.ADMIN && selectedUsers != usersWithRole && !saveState.value.isConfirming()) { - // Confirm adding admin - saveState.value = AsyncAction.ConfirmingNoParams - } else if (!saveState.value.isLoading()) { - coroutineScope.save(usersWithRole.value, selectedUsers, saveState) + val currentUserIsAdmin = roomInfo.roleOf(room.sessionId) == RoomMember.Role.Admin + val isModifyingAdmins = role == RoomMember.Role.Admin + val hasChanges = selectedUsers != usersWithRole + val isConfirming = saveState.value.isConfirming() + + val needsConfirmation = currentUserIsAdmin && isModifyingAdmins && hasChanges && !isConfirming + + when { + needsConfirmation -> { + // Confirm modifying users + saveState.value = AsyncAction.ConfirmingNoParams + } + !saveState.value.isLoading() -> { + coroutineScope.save(usersWithRole.value, selectedUsers, saveState) + } } } is ChangeRolesEvent.ClearError -> { @@ -174,10 +184,12 @@ class ChangeRolesPresenter @AssistedInject constructor( } private fun List.groupedByRole(): MembersByRole { + val groupedMembers = MembersByRole(this) return MembersByRole( - admins = filter { it.role == RoomMember.Role.ADMIN }.sorted(), - moderators = filter { it.role == RoomMember.Role.MODERATOR }.sorted(), - members = filter { it.role == RoomMember.Role.USER }.sorted(), + owners = groupedMembers.owners.sorted(), + admins = groupedMembers.admins.sorted(), + moderators = groupedMembers.moderators.sorted(), + members = groupedMembers.members.sorted(), ) } @@ -202,7 +214,7 @@ class ChangeRolesPresenter @AssistedInject constructor( } for (selectedUser in toRemove) { analyticsService.capture(RoomModeration(RoomModeration.Action.ChangeMemberRole, RoomModeration.Role.User)) - add(UserRoleChange(selectedUser.userId, RoomMember.Role.USER)) + add(UserRoleChange(selectedUser.userId, RoomMember.Role.User)) } } diff --git a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesState.kt b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesState.kt index d829997afa..445b5aa347 100644 --- a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesState.kt +++ b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesState.kt @@ -30,17 +30,19 @@ data class ChangeRolesState( ) data class MembersByRole( + val owners: ImmutableList, val admins: ImmutableList, val moderators: ImmutableList, val members: ImmutableList, ) { constructor(members: List) : this( - admins = members.filter { it.role == RoomMember.Role.ADMIN }.sorted(), - moderators = members.filter { it.role == RoomMember.Role.MODERATOR }.sorted(), - members = members.filter { it.role == RoomMember.Role.USER }.sorted(), + owners = members.filter { it.role is RoomMember.Role.Owner }.sorted(), + admins = members.filter { it.role == RoomMember.Role.Admin }.sorted(), + moderators = members.filter { it.role == RoomMember.Role.Moderator }.sorted(), + members = members.filter { it.role == RoomMember.Role.User }.sorted(), ) - fun isEmpty() = admins.isEmpty() && moderators.isEmpty() && members.isEmpty() + fun isEmpty() = owners.isEmpty() && admins.isEmpty() && moderators.isEmpty() && members.isEmpty() } private fun Iterable.sorted(): ImmutableList { diff --git a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesStateProvider.kt b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesStateProvider.kt index 3aa1becd46..2b62508d97 100644 --- a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesStateProvider.kt +++ b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesStateProvider.kt @@ -8,6 +8,7 @@ package io.element.android.features.roomdetails.impl.rolesandpermissions.changeroles import androidx.compose.ui.tooling.preview.PreviewParameterProvider +import io.element.android.features.roomdetails.impl.members.aRoomMember import io.element.android.features.roomdetails.impl.members.aRoomMemberList import io.element.android.libraries.architecture.AsyncAction import io.element.android.libraries.designsystem.theme.components.SearchBarResultState @@ -15,6 +16,7 @@ import io.element.android.libraries.matrix.api.core.UserId import io.element.android.libraries.matrix.api.room.RoomMember import io.element.android.libraries.matrix.api.room.RoomMembershipState import io.element.android.libraries.matrix.api.user.MatrixUser +import io.element.android.libraries.matrix.ui.components.aMatrixUser import io.element.android.libraries.matrix.ui.components.aMatrixUserList import kotlinx.collections.immutable.ImmutableList import kotlinx.collections.immutable.persistentListOf @@ -24,7 +26,7 @@ class ChangeRolesStateProvider : PreviewParameterProvider { override val values: Sequence get() = sequenceOf( aChangeRolesState(), - aChangeRolesStateWithSelectedUsers().copy(role = RoomMember.Role.MODERATOR), + aChangeRolesStateWithSelectedUsers().copy(role = RoomMember.Role.Moderator), aChangeRolesStateWithSelectedUsers().copy(hasPendingChanges = false), aChangeRolesStateWithSelectedUsers(), aChangeRolesStateWithSelectedUsers().copy( @@ -41,11 +43,12 @@ class ChangeRolesStateProvider : PreviewParameterProvider { aChangeRolesStateWithSelectedUsers().copy(savingState = AsyncAction.Loading), aChangeRolesStateWithSelectedUsers().copy(savingState = AsyncAction.Success(Unit)), aChangeRolesStateWithSelectedUsers().copy(savingState = AsyncAction.Failure(Exception("boom"))), + aChangeRolesStateWithOwners(), ) } internal fun aChangeRolesState( - role: RoomMember.Role = RoomMember.Role.ADMIN, + role: RoomMember.Role = RoomMember.Role.Admin, query: String? = null, isSearchActive: Boolean = false, searchResults: SearchBarResultState = SearchBarResultState.NoResultsFound(), @@ -84,3 +87,47 @@ internal fun aChangeRolesStateWithSelectedUsers() = aChangeRolesState( hasPendingChanges = true, canRemoveMember = { it != UserId("@alice:server.org") }, ) + +internal fun aChangeRolesStateWithOwners() = aChangeRolesState( + role = RoomMember.Role.Admin, + searchResults = SearchBarResultState.Results( + MembersByRole( + members = persistentListOf( + aRoomMember( + userId = UserId("@alice:server.org"), + displayName = "Alice", + role = RoomMember.Role.Owner(isCreator = true), + ), + aRoomMember( + userId = UserId("@bob:server.org"), + displayName = "Bob", + role = RoomMember.Role.Owner(isCreator = false), + ), + aRoomMember( + userId = UserId("@carol:server.org"), + displayName = "Carol", + role = RoomMember.Role.Admin, + ), + aRoomMember( + userId = UserId("@david:server.org"), + displayName = "David", + role = RoomMember.Role.User, + ), + ) + ), + ), + canRemoveMember = { userId -> + when (userId) { + UserId("@alice:server.org") -> false // Owner - creator + UserId("@bob:server.org") -> false // Owner - super admin + UserId("@carol:server.org") -> true // Admin + UserId("@david:server.org") -> true // User + else -> false + } + }, + selectedUsers = persistentListOf( + aMatrixUser(id = "@alice:server.org", displayName = "Alice"), + aMatrixUser(id = "@bob:server.org", displayName = "Bob"), + aMatrixUser(id = "@carol:server.org", displayName = "Carol"), + ) +) diff --git a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesView.kt b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesView.kt index a9e321a11f..2fdf1dcf1b 100644 --- a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesView.kt +++ b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesView.kt @@ -57,6 +57,7 @@ import io.element.android.libraries.designsystem.components.dialogs.ErrorDialog import io.element.android.libraries.designsystem.preview.ElementPreview import io.element.android.libraries.designsystem.preview.PreviewsDayNight import io.element.android.libraries.designsystem.theme.components.Checkbox +import io.element.android.libraries.designsystem.theme.components.HorizontalDivider import io.element.android.libraries.designsystem.theme.components.Scaffold import io.element.android.libraries.designsystem.theme.components.SearchBar import io.element.android.libraries.designsystem.theme.components.SearchBarResultState @@ -96,9 +97,9 @@ fun ChangeRolesView( AnimatedVisibility(visible = !state.isSearchActive) { TopAppBar( titleStr = when (state.role) { - RoomMember.Role.ADMIN -> stringResource(R.string.screen_room_change_role_administrators_title) - RoomMember.Role.MODERATOR -> stringResource(R.string.screen_room_change_role_moderators_title) - RoomMember.Role.USER -> error("This should never be reached") + RoomMember.Role.Admin -> stringResource(R.string.screen_room_change_role_administrators_title) + RoomMember.Role.Moderator -> stringResource(R.string.screen_room_change_role_moderators_title) + is RoomMember.Role.Owner, RoomMember.Role.User -> error("This should never be reached") }, navigationIcon = { BackButton(onClick = { state.eventSink(ChangeRolesEvent.Exit) }) @@ -187,7 +188,7 @@ fun ChangeRolesView( when (state.savingState) { is AsyncAction.Confirming -> { - if (state.role == RoomMember.Role.ADMIN) { + if (state.role == RoomMember.Role.Admin) { // Confirm adding new admins dialogs ConfirmationDialog( title = stringResource(R.string.screen_room_change_role_confirm_add_admin_title), @@ -234,10 +235,30 @@ private fun SearchResultsList( item { selectedUsersList(selectedUsers) } + if (searchResults.owners.isNotEmpty()) { + stickyHeader { ListSectionHeader(text = stringResource(R.string.screen_room_roles_and_permissions_owners)) } + item { + Text( + modifier = Modifier + .padding(start = 16.dp, end = 16.dp, bottom = 8.dp), + text = stringResource(R.string.screen_room_change_role_moderators_owner_section_footer), + color = ElementTheme.colors.textSecondary, + style = ElementTheme.typography.fontBodySmRegular, + ) + } + items(searchResults.owners, key = { it.userId }) { roomMember -> + ListMemberItem( + roomMember = roomMember, + canRemoveMember = canRemoveMember, + onToggleSelection = onToggleSelection, + selectedUsers = selectedUsers + ) + } + } if (searchResults.admins.isNotEmpty()) { stickyHeader { ListSectionHeader(text = stringResource(R.string.screen_room_roles_and_permissions_admins)) } // Add a footer for the admin section in change role to moderator screen - if (currentRole == RoomMember.Role.MODERATOR) { + if (currentRole == RoomMember.Role.Moderator) { item { Text( modifier = Modifier @@ -303,20 +324,24 @@ private fun ListMemberItem( ) { val canToggle = canRemoveMember(roomMember.userId) val trailingContent: @Composable (() -> Unit) = { - Checkbox( - checked = selectedUsers.any { it.userId == roomMember.userId }, - onCheckedChange = { onToggleSelection(roomMember) }, - enabled = canToggle, - ) + if (canToggle) { + Checkbox( + checked = selectedUsers.any { it.userId == roomMember.userId }, + onCheckedChange = { onToggleSelection(roomMember) }, + ) + } + } + Column { + MemberRow( + modifier = Modifier.clickable(enabled = canToggle, onClick = { onToggleSelection(roomMember) }), + avatarData = roomMember.getAvatarData(size = AvatarSize.UserListItem), + name = roomMember.getBestName(), + userId = roomMember.userId.value.takeIf { roomMember.displayName?.isNotBlank() == true }, + isPending = roomMember.membership == RoomMembershipState.INVITE, + trailingContent = trailingContent, + ) + HorizontalDivider() } - MemberRow( - modifier = Modifier.clickable(enabled = canToggle, onClick = { onToggleSelection(roomMember) }), - avatarData = roomMember.getAvatarData(size = AvatarSize.UserListItem), - name = roomMember.getBestName(), - userId = roomMember.userId.value.takeIf { roomMember.displayName?.isNotBlank() == true }, - isPending = roomMember.membership == RoomMembershipState.INVITE, - trailingContent = trailingContent, - ) } @Composable diff --git a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/permissions/ChangeRoomPermissionsStateProvider.kt b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/permissions/ChangeRoomPermissionsStateProvider.kt index 4210d117c7..7af850230e 100644 --- a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/permissions/ChangeRoomPermissionsStateProvider.kt +++ b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/permissions/ChangeRoomPermissionsStateProvider.kt @@ -55,15 +55,15 @@ internal fun aChangeRoomPermissionsState( private fun previewPermissions(): RoomPowerLevelsValues { return RoomPowerLevelsValues( // MembershipModeration section - invite = RoomMember.Role.ADMIN.powerLevel, - kick = RoomMember.Role.MODERATOR.powerLevel, - ban = RoomMember.Role.USER.powerLevel, + invite = RoomMember.Role.Admin.powerLevel, + kick = RoomMember.Role.Moderator.powerLevel, + ban = RoomMember.Role.User.powerLevel, // MessagesAndContent section - redactEvents = RoomMember.Role.MODERATOR.powerLevel, - sendEvents = RoomMember.Role.ADMIN.powerLevel, + redactEvents = RoomMember.Role.Moderator.powerLevel, + sendEvents = RoomMember.Role.Admin.powerLevel, // RoomDetails section - roomName = RoomMember.Role.ADMIN.powerLevel, - roomAvatar = RoomMember.Role.MODERATOR.powerLevel, - roomTopic = RoomMember.Role.USER.powerLevel, + roomName = RoomMember.Role.Admin.powerLevel, + roomAvatar = RoomMember.Role.Moderator.powerLevel, + roomTopic = RoomMember.Role.User.powerLevel, ) } diff --git a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/permissions/ChangeRoomPermissionsView.kt b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/permissions/ChangeRoomPermissionsView.kt index ba8cc7f978..6acf4935dc 100644 --- a/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/permissions/ChangeRoomPermissionsView.kt +++ b/features/roomdetails/impl/src/main/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/permissions/ChangeRoomPermissionsView.kt @@ -80,21 +80,21 @@ fun ChangeRoomPermissionsView( ListSectionHeader(titleForSection(item = permissionItem), hasDivider = index > 0) SelectRoleItem( permissionsItem = permissionItem, - role = RoomMember.Role.ADMIN, + role = RoomMember.Role.Admin, currentPermissions = state.currentPermissions ) { item, role -> state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(item, role)) } SelectRoleItem( permissionsItem = permissionItem, - role = RoomMember.Role.MODERATOR, + role = RoomMember.Role.Moderator, currentPermissions = state.currentPermissions ) { item, role -> state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(item, role)) } SelectRoleItem( permissionsItem = permissionItem, - role = RoomMember.Role.USER, + role = RoomMember.Role.User, currentPermissions = state.currentPermissions ) { item, role -> state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(item, role)) @@ -135,9 +135,10 @@ private fun SelectRoleItem( onClick: (RoomPermissionType, RoomMember.Role) -> Unit ) { val title = when (role) { - RoomMember.Role.ADMIN -> stringResource(R.string.screen_room_change_permissions_administrators) - RoomMember.Role.MODERATOR -> stringResource(R.string.screen_room_change_permissions_moderators) - RoomMember.Role.USER -> stringResource(R.string.screen_room_change_permissions_everyone) + RoomMember.Role.Admin -> stringResource(R.string.screen_room_change_permissions_administrators) + RoomMember.Role.Moderator -> stringResource(R.string.screen_room_change_permissions_moderators) + RoomMember.Role.User -> stringResource(R.string.screen_room_change_permissions_everyone) + else -> error("Unsupported role selected: $role") } ListItem( headlineContent = { Text(text = title) }, diff --git a/features/roomdetails/impl/src/main/res/values-de/translations.xml b/features/roomdetails/impl/src/main/res/values-de/translations.xml index 16ef6b7e05..2a2673beb1 100644 --- a/features/roomdetails/impl/src/main/res/values-de/translations.xml +++ b/features/roomdetails/impl/src/main/res/values-de/translations.xml @@ -127,7 +127,7 @@ Wir empfehlen nicht, die VerschlĂŒsselung fĂŒr Chatrooms die jeder finden und be "Personen können nur beitreten, wenn sie eingeladen werden." "Nur auf Einladung" "Chatroomzugang" - "RĂ€ume werden zur Zeit nicht unterstĂŒtzt." + "Spaces werden zur Zeit nicht unterstĂŒtzt." "Spacemitglieder" "Um den Chatroom im Chatroomverzeichnis sichtbar zu machen, benötigen Sie eine Chatroomadresse." "Chatroomadresse" diff --git a/features/roomdetails/impl/src/main/res/values-lt/translations.xml b/features/roomdetails/impl/src/main/res/values-lt/translations.xml index 792ce9cf82..18a908b2c0 100644 --- a/features/roomdetails/impl/src/main/res/values-lt/translations.xml +++ b/features/roomdetails/impl/src/main/res/values-lt/translations.xml @@ -9,6 +9,7 @@ "Ćœinutės yra uĆŸrakintos. Tik JĆ«s ir gavėjai turite unikalius raktus joms atrakinti." "Äźjungtas ĆŸinučiĆł ĆĄifravimas" "Pakviesti ĆŸmoniĆł" + "Palikti pokalbÄŻ" "Palikti kambarÄŻ" "Kambario pavadinimas" "Saugumas" diff --git a/features/roomdetails/impl/src/main/res/values-sk/translations.xml b/features/roomdetails/impl/src/main/res/values-sk/translations.xml index a78ccb9885..e75b53cf29 100644 --- a/features/roomdetails/impl/src/main/res/values-sk/translations.xml +++ b/features/roomdetails/impl/src/main/res/values-sk/translations.xml @@ -82,6 +82,7 @@ "ČakĂĄ sa" "AdministrĂĄtor" "ModerĂĄtor" + "VlastnĂ­k" "Členovia miestnosti" "ZruĆĄenie zĂĄkazu %1$s" "PovoliĆ„ vlastnĂ© nastavenie" diff --git a/features/roomdetails/impl/src/main/res/values/localazy.xml b/features/roomdetails/impl/src/main/res/values/localazy.xml index 883f300bff..ebd421f958 100644 --- a/features/roomdetails/impl/src/main/res/values/localazy.xml +++ b/features/roomdetails/impl/src/main/res/values/localazy.xml @@ -28,6 +28,7 @@ "%1$s (Pending)" "(Pending)" "Admins automatically have moderator privileges" + "Owners automatically have admin privileges." "Edit Moderators" "Admins" "Moderators" @@ -81,6 +82,7 @@ "Pending" "Admin" "Moderator" + "Owner" "Room members" "Unbanning %1$s" "Allow custom setting" @@ -98,12 +100,14 @@ "Mentions and Keywords only" "In this room, notify me for" "Admins" + "Admins and owners" "Change my role" "Demote to member" "Demote to moderator" "Member moderation" "Messages and content" "Moderators" + "Owners" "Permissions" "Reset permissions" "Once you reset permissions, you will lose the current settings." diff --git a/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionPresenterTest.kt b/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionPresenterTest.kt index 718c618484..734cf4696a 100644 --- a/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionPresenterTest.kt +++ b/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionPresenterTest.kt @@ -66,7 +66,7 @@ class RolesAndPermissionPresenterTest { presenter.present() }.test { val initialState = awaitItem() - initialState.eventSink(RolesAndPermissionsEvents.DemoteSelfTo(RoomMember.Role.MODERATOR)) + initialState.eventSink(RolesAndPermissionsEvents.DemoteSelfTo(RoomMember.Role.Moderator)) runCurrent() assertThat(awaitItem().changeOwnRoleAction).isEqualTo(AsyncAction.Loading) @@ -87,7 +87,7 @@ class RolesAndPermissionPresenterTest { presenter.present() }.test { val initialState = awaitItem() - initialState.eventSink(RolesAndPermissionsEvents.DemoteSelfTo(RoomMember.Role.MODERATOR)) + initialState.eventSink(RolesAndPermissionsEvents.DemoteSelfTo(RoomMember.Role.Moderator)) runCurrent() assertThat(awaitItem().changeOwnRoleAction).isEqualTo(AsyncAction.Loading) diff --git a/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsViewTest.kt b/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsViewTest.kt index 8aded9f698..4aa68bc047 100644 --- a/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsViewTest.kt +++ b/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/RolesAndPermissionsViewTest.kt @@ -47,12 +47,30 @@ class RolesAndPermissionsViewTest { fun `tapping on Admins opens admin list`() { ensureCalledOnce { callback -> rule.setRolesAndPermissionsView( + aRolesAndPermissionsState( + roomSupportsOwners = false, + eventSink = EventsRecorder(expectEvents = false) + ), openAdminList = callback, ) rule.clickOn(R.string.screen_room_roles_and_permissions_admins) } } + @Test + fun `tapping on Admins and Owners opens admin list`() { + ensureCalledOnce { callback -> + rule.setRolesAndPermissionsView( + aRolesAndPermissionsState( + roomSupportsOwners = true, + eventSink = EventsRecorder(expectEvents = false) + ), + openAdminList = callback, + ) + rule.clickOn(R.string.screen_room_roles_and_permissions_admins_and_owners) + } + } + @Test fun `tapping on Moderators opens moderators list`() { ensureCalledOnce { callback -> @@ -126,7 +144,7 @@ class RolesAndPermissionsViewTest { ) rule.clickOn(R.string.screen_room_roles_and_permissions_change_role_demote_to_moderator) rule.mainClock.advanceTimeBy(1_000L) - recorder.assertSingle(RolesAndPermissionsEvents.DemoteSelfTo(RoomMember.Role.MODERATOR)) + recorder.assertSingle(RolesAndPermissionsEvents.DemoteSelfTo(RoomMember.Role.Moderator)) } @Test @@ -140,7 +158,7 @@ class RolesAndPermissionsViewTest { ) rule.clickOn(R.string.screen_room_roles_and_permissions_change_role_demote_to_member) rule.mainClock.advanceTimeBy(1_000L) - recorder.assertSingle(RolesAndPermissionsEvents.DemoteSelfTo(RoomMember.Role.USER)) + recorder.assertSingle(RolesAndPermissionsEvents.DemoteSelfTo(RoomMember.Role.User)) } @Test @@ -160,6 +178,7 @@ class RolesAndPermissionsViewTest { private fun AndroidComposeTestRule.setRolesAndPermissionsView( state: RolesAndPermissionsState = aRolesAndPermissionsState( + roomSupportsOwners = false, eventSink = EventsRecorder(expectEvents = false), ), goBack: () -> Unit = EnsureNeverCalled(), diff --git a/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesPresenterTest.kt b/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesPresenterTest.kt index 18ddf2ae04..e9c48cb209 100644 --- a/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesPresenterTest.kt +++ b/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesPresenterTest.kt @@ -12,6 +12,7 @@ import app.cash.molecule.moleculeFlow import app.cash.turbine.test import com.google.common.truth.Truth.assertThat import im.vector.app.features.analytics.plan.RoomModeration +import io.element.android.features.roomdetails.impl.members.aRoomMember import io.element.android.features.roomdetails.impl.members.aRoomMemberList import io.element.android.libraries.architecture.AsyncAction import io.element.android.libraries.core.coroutine.CoroutineDispatchers @@ -23,6 +24,7 @@ import io.element.android.libraries.matrix.api.room.powerlevels.RoomPowerLevels import io.element.android.libraries.matrix.api.user.MatrixUser import io.element.android.libraries.matrix.test.A_USER_ID import io.element.android.libraries.matrix.test.A_USER_ID_2 +import io.element.android.libraries.matrix.test.A_USER_ID_3 import io.element.android.libraries.matrix.test.room.FakeBaseRoom import io.element.android.libraries.matrix.test.room.FakeJoinedRoom import io.element.android.libraries.matrix.test.room.aRoomInfo @@ -43,7 +45,7 @@ class ChangeRolesPresenterTest { presenter.present() }.test { with(awaitItem()) { - assertThat(role).isEqualTo(RoomMember.Role.ADMIN) + assertThat(role).isEqualTo(RoomMember.Role.Admin) assertThat(query).isNull() assertThat(isSearchActive).isFalse() assertThat(searchResults).isInstanceOf(SearchBarResultState.Initial::class.java) @@ -70,6 +72,76 @@ class ChangeRolesPresenterTest { } } + @Test + fun `present - canChangeRole of users with lower power level unless they are owners`() = runTest { + val creatorUserId = UserId("@creator:matrix.org") + val superAdminUserId = UserId("@super_admin:matrix.org") + + val room = FakeJoinedRoom().apply { + // User is a creator, so they can change roles of other members. So is `creatorUserId`. + givenRoomInfo( + aRoomInfo( + roomCreators = listOf(sessionId, creatorUserId), + roomPowerLevels = RoomPowerLevels( + defaultRoomPowerLevelValues(), + users = persistentMapOf( + // bob is Admin + A_USER_ID_2 to RoomMember.Role.Admin.powerLevel, + // carol is Moderator + A_USER_ID_3 to RoomMember.Role.Moderator.powerLevel, + // super_admin is Owner - Superadmin + superAdminUserId to RoomMember.Role.Owner(isCreator = false).powerLevel, + ) + ) + ) + ) + + val roomMemberList = aRoomMemberList() + listOf( + // Owner - superadmin + aRoomMember(userId = superAdminUserId, role = RoomMember.Role.Owner(isCreator = true)), + // Owner - creator + aRoomMember(userId = creatorUserId, role = RoomMember.Role.Owner(isCreator = true)) + ) + givenRoomMembersState(RoomMembersState.Ready(roomMemberList.toPersistentList())) + } + val presenter = createChangeRolesPresenter(room = room) + moleculeFlow(RecompositionMode.Immediate) { + presenter.present() + }.test { + skipItems(1) + awaitItem().run { + assertThat(canChangeMemberRole(A_USER_ID_2)).isTrue() // Admin + assertThat(canChangeMemberRole(A_USER_ID_3)).isTrue() // Moderator + assertThat(canChangeMemberRole(creatorUserId)).isFalse() // Owner + } + } + } + + @Test + fun `present - when modifying admins, creators are displayed too`() = runTest { + val room = FakeJoinedRoom().apply { + val creatorUserId = UserId("@creator:matrix.org") + val memberList = aRoomMemberList() + .plus(aRoomMember(displayName = "CREATOR", role = RoomMember.Role.Owner(isCreator = true), userId = creatorUserId)) + .toPersistentList() + givenRoomInfo(aRoomInfo(roomCreators = listOf(creatorUserId))) + givenRoomMembersState(RoomMembersState.Ready(memberList)) + } + val presenter = createChangeRolesPresenter(room = room) + moleculeFlow(RecompositionMode.Immediate) { + presenter.present() + }.test { + skipItems(1) + awaitItem().searchResults.run { + assertThat(this).isInstanceOf(SearchBarResultState.Results::class.java) + val results = (this as SearchBarResultState.Results).results + assertThat(results.admins).isNotEmpty() + assertThat(results.owners).isNotEmpty() + assertThat(results.owners.last().role).isEqualTo(RoomMember.Role.Owner(isCreator = true)) + } + } + } + @Test fun `present - ToggleSearchActive changes the value`() = runTest { val room = FakeJoinedRoom().apply { @@ -145,7 +217,7 @@ class ChangeRolesPresenterTest { fun `present - UserSelectionToggle adds and removes users from the selected user list`() = runTest { val room = FakeJoinedRoom().apply { givenRoomMembersState(RoomMembersState.Ready(aRoomMemberList())) - givenRoomInfo(aRoomInfo(roomPowerLevels = roomPowerLevelsWithRole(RoomMember.Role.ADMIN))) + givenRoomInfo(aRoomInfo(roomPowerLevels = roomPowerLevelsWithRole(RoomMember.Role.Admin))) } val presenter = createChangeRolesPresenter(room = room) moleculeFlow(RecompositionMode.Immediate) { @@ -167,7 +239,7 @@ class ChangeRolesPresenterTest { fun `present - hasPendingChanges is true when the initial selected users don't match the new ones`() = runTest { val room = FakeJoinedRoom().apply { givenRoomMembersState(RoomMembersState.Ready(aRoomMemberList())) - givenRoomInfo(aRoomInfo(roomPowerLevels = roomPowerLevelsWithRole(RoomMember.Role.ADMIN))) + givenRoomInfo(aRoomInfo(roomPowerLevels = roomPowerLevelsWithRole(RoomMember.Role.Admin))) } val presenter = createChangeRolesPresenter(room = room) moleculeFlow(RecompositionMode.Immediate) { @@ -196,7 +268,7 @@ class ChangeRolesPresenterTest { fun `present - Exit will display success if no pending changes`() = runTest { val room = FakeJoinedRoom().apply { givenRoomMembersState(RoomMembersState.Ready(aRoomMemberList())) - givenRoomInfo(aRoomInfo(roomPowerLevels = roomPowerLevelsWithRole(RoomMember.Role.ADMIN))) + givenRoomInfo(aRoomInfo(roomPowerLevels = roomPowerLevelsWithRole(RoomMember.Role.Admin))) } val presenter = createChangeRolesPresenter(room = room) moleculeFlow(RecompositionMode.Immediate) { @@ -216,7 +288,7 @@ class ChangeRolesPresenterTest { fun `present - CancelExit will remove exit confirmation`() = runTest { val room = FakeJoinedRoom().apply { givenRoomMembersState(RoomMembersState.Ready(aRoomMemberList())) - givenRoomInfo(aRoomInfo(roomPowerLevels = roomPowerLevelsWithRole(RoomMember.Role.ADMIN))) + givenRoomInfo(aRoomInfo(roomPowerLevels = roomPowerLevelsWithRole(RoomMember.Role.Admin))) } val presenter = createChangeRolesPresenter(room = room) moleculeFlow(RecompositionMode.Immediate) { @@ -242,7 +314,7 @@ class ChangeRolesPresenterTest { fun `present - Exit will display a confirmation dialog if there are pending changes, calling it again will actually exit`() = runTest { val room = FakeJoinedRoom().apply { givenRoomMembersState(RoomMembersState.Ready(aRoomMemberList())) - givenRoomInfo(aRoomInfo(roomPowerLevels = roomPowerLevelsWithRole(RoomMember.Role.ADMIN))) + givenRoomInfo(aRoomInfo(roomPowerLevels = roomPowerLevelsWithRole(RoomMember.Role.Admin))) } val presenter = createChangeRolesPresenter(room = room) moleculeFlow(RecompositionMode.Immediate) { @@ -273,9 +345,9 @@ class ChangeRolesPresenterTest { baseRoom = FakeBaseRoom(updateMembersResult = { Result.success(Unit) }), ).apply { givenRoomMembersState(RoomMembersState.Ready(aRoomMemberList())) - givenRoomInfo(aRoomInfo(roomPowerLevels = roomPowerLevelsWithRole(RoomMember.Role.ADMIN))) + givenRoomInfo(aRoomInfo(roomPowerLevels = roomPowerLevelsWithRole(RoomMember.Role.Admin))) } - val presenter = createChangeRolesPresenter(role = RoomMember.Role.ADMIN, room = room) + val presenter = createChangeRolesPresenter(role = RoomMember.Role.Admin, room = room) moleculeFlow(RecompositionMode.Immediate) { presenter.present() }.test { @@ -302,9 +374,9 @@ class ChangeRolesPresenterTest { fun `present - CancelSave will remove the confirmation dialog`() = runTest { val room = FakeJoinedRoom().apply { givenRoomMembersState(RoomMembersState.Ready(aRoomMemberList())) - givenRoomInfo(aRoomInfo(roomPowerLevels = roomPowerLevelsWithRole(RoomMember.Role.ADMIN))) + givenRoomInfo(aRoomInfo(roomPowerLevels = roomPowerLevelsWithRole(RoomMember.Role.Admin))) } - val presenter = createChangeRolesPresenter(role = RoomMember.Role.ADMIN, room = room) + val presenter = createChangeRolesPresenter(role = RoomMember.Role.Admin, room = room) moleculeFlow(RecompositionMode.Immediate) { presenter.present() }.test { @@ -331,10 +403,10 @@ class ChangeRolesPresenterTest { baseRoom = FakeBaseRoom(updateMembersResult = { Result.success(Unit) }), ).apply { givenRoomMembersState(RoomMembersState.Ready(aRoomMemberList())) - givenRoomInfo(aRoomInfo(roomPowerLevels = roomPowerLevelsWithRole(RoomMember.Role.MODERATOR))) + givenRoomInfo(aRoomInfo(roomPowerLevels = roomPowerLevelsWithRole(RoomMember.Role.Moderator))) } val presenter = createChangeRolesPresenter( - role = RoomMember.Role.MODERATOR, + role = RoomMember.Role.Moderator, room = room, analyticsService = analyticsService ) @@ -358,15 +430,55 @@ class ChangeRolesPresenterTest { } } + @Test + fun `present - Save will just save the changes if the current user is a room creator and the selected users are not`() = runTest { + val analyticsService = FakeAnalyticsService() + val room = FakeJoinedRoom( + updateUserRoleResult = { Result.success(Unit) }, + baseRoom = FakeBaseRoom(updateMembersResult = { Result.success(Unit) }), + ).apply { + givenRoomMembersState(RoomMembersState.Ready(aRoomMemberList())) + givenRoomInfo( + aRoomInfo( + roomCreators = listOf(sessionId), + roomPowerLevels = roomPowerLevelsWithRole(role = RoomMember.Role.Admin, userId = A_USER_ID_2) + ) + ) + } + val presenter = createChangeRolesPresenter( + role = RoomMember.Role.Admin, + room = room, + analyticsService = analyticsService + ) + moleculeFlow(RecompositionMode.Immediate) { + presenter.present() + }.test { + skipItems(1) + val initialState = awaitItem() + assertThat(initialState.selectedUsers).hasSize(1) + + initialState.eventSink(ChangeRolesEvent.UserSelectionToggled(MatrixUser(A_USER_ID_2))) + + awaitItem().eventSink(ChangeRolesEvent.Save) + + val loadingState = awaitItem() + assertThat(loadingState.savingState).isInstanceOf(AsyncAction.Loading::class.java) + skipItems(1) + + assertThat(awaitItem().savingState).isEqualTo(AsyncAction.Success(Unit)) + assertThat(analyticsService.capturedEvents.last()).isEqualTo(RoomModeration(RoomModeration.Action.ChangeMemberRole, RoomModeration.Role.User)) + } + } + @Test fun `present - Save can handle failures and ClearError clears them`() = runTest { val room = FakeJoinedRoom( updateUserRoleResult = { Result.failure(IllegalStateException("Failed")) } ).apply { givenRoomMembersState(RoomMembersState.Ready(aRoomMemberList())) - givenRoomInfo(aRoomInfo(roomPowerLevels = roomPowerLevelsWithRole(RoomMember.Role.MODERATOR))) + givenRoomInfo(aRoomInfo(roomPowerLevels = roomPowerLevelsWithRole(role = RoomMember.Role.Moderator, userId = A_USER_ID))) } - val presenter = createChangeRolesPresenter(role = RoomMember.Role.MODERATOR, room = room) + val presenter = createChangeRolesPresenter(role = RoomMember.Role.Moderator, room = room) moleculeFlow(RecompositionMode.Immediate) { presenter.present() }.test { @@ -399,7 +511,7 @@ class ChangeRolesPresenterTest { } private fun TestScope.createChangeRolesPresenter( - role: RoomMember.Role = RoomMember.Role.ADMIN, + role: RoomMember.Role = RoomMember.Role.Admin, room: FakeJoinedRoom = FakeJoinedRoom(), dispatchers: CoroutineDispatchers = testCoroutineDispatchers(), analyticsService: FakeAnalyticsService = FakeAnalyticsService(), diff --git a/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesViewTest.kt b/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesViewTest.kt index 6f2179d4d4..e5aedece1e 100644 --- a/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesViewTest.kt +++ b/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/ChangeRolesViewTest.kt @@ -41,11 +41,25 @@ class ChangeRolesViewTest { @get:Rule val rule = createAndroidComposeRule() @Test - fun `passing a 'USER' role throws an exception`() { + fun `passing a 'User' role throws an exception`() { val exception = runCatchingExceptions { rule.setChangeRolesContent( state = aChangeRolesState( - role = RoomMember.Role.USER, + role = RoomMember.Role.User, + eventSink = EnsureNeverCalledWithParam(), + ), + ) + }.exceptionOrNull() + + assertThat(exception).isNotNull() + } + + @Test + fun `passing an 'Owner' role throws an exception`() { + val exception = runCatchingExceptions { + rule.setChangeRolesContent( + state = aChangeRolesState( + role = RoomMember.Role.Owner(isCreator = true), eventSink = EnsureNeverCalledWithParam(), ), ) @@ -166,7 +180,7 @@ class ChangeRolesViewTest { val eventsRecorder = EventsRecorder() rule.setChangeRolesContent( state = aChangeRolesState( - role = RoomMember.Role.ADMIN, + role = RoomMember.Role.Admin, isSearchActive = true, savingState = AsyncAction.ConfirmingNoParams, eventSink = eventsRecorder, @@ -183,7 +197,7 @@ class ChangeRolesViewTest { val eventsRecorder = EventsRecorder() rule.setChangeRolesContent( state = aChangeRolesState( - role = RoomMember.Role.ADMIN, + role = RoomMember.Role.Admin, isSearchActive = true, savingState = AsyncAction.ConfirmingNoParams, eventSink = eventsRecorder, diff --git a/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/MembersByRoleTest.kt b/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/MembersByRoleTest.kt index f788624ccc..8241f4b781 100644 --- a/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/MembersByRoleTest.kt +++ b/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/changeroles/MembersByRoleTest.kt @@ -14,6 +14,8 @@ import io.element.android.libraries.matrix.test.A_USER_ID_2 import io.element.android.libraries.matrix.test.A_USER_ID_3 import io.element.android.libraries.matrix.test.A_USER_ID_4 import io.element.android.libraries.matrix.test.A_USER_ID_5 +import io.element.android.libraries.matrix.test.A_USER_ID_6 +import io.element.android.libraries.matrix.test.A_USER_ID_7 import io.element.android.libraries.matrix.test.room.aRoomMember import kotlinx.collections.immutable.persistentListOf import org.junit.Test @@ -22,22 +24,28 @@ class MembersByRoleTest { @Test fun `constructor - with single member list categorizes and sorts members`() { val members = listOf( - aRoomMember(A_USER_ID_2, displayName = "Bob", role = RoomMember.Role.ADMIN), - aRoomMember(A_USER_ID, displayName = "Alice", role = RoomMember.Role.ADMIN), - aRoomMember(A_USER_ID_3, displayName = "Carol", role = RoomMember.Role.USER), - aRoomMember(A_USER_ID_5, displayName = "Eve", role = RoomMember.Role.USER), - aRoomMember(A_USER_ID_4, displayName = "David", role = RoomMember.Role.USER), + aRoomMember(A_USER_ID_2, displayName = "Bob", role = RoomMember.Role.Admin), + aRoomMember(A_USER_ID, displayName = "Alice", role = RoomMember.Role.Admin), + aRoomMember(A_USER_ID_3, displayName = "Carol", role = RoomMember.Role.User), + aRoomMember(A_USER_ID_5, displayName = "Eve", role = RoomMember.Role.User), + aRoomMember(A_USER_ID_4, displayName = "David", role = RoomMember.Role.User), + aRoomMember(A_USER_ID_6, displayName = "Justin", role = RoomMember.Role.Owner(isCreator = true)), + aRoomMember(A_USER_ID_7, displayName = "Mallory", role = RoomMember.Role.Owner(isCreator = false)), ) val membersByRole = MembersByRole(members = members) + assertThat(membersByRole.owners).containsExactly( + aRoomMember(A_USER_ID_6, displayName = "Justin", role = RoomMember.Role.Owner(isCreator = true)), + aRoomMember(A_USER_ID_7, displayName = "Mallory", role = RoomMember.Role.Owner(isCreator = false)), + ) assertThat(membersByRole.admins).containsExactly( - aRoomMember(A_USER_ID, displayName = "Alice", role = RoomMember.Role.ADMIN), - aRoomMember(A_USER_ID_2, displayName = "Bob", role = RoomMember.Role.ADMIN), + aRoomMember(A_USER_ID, displayName = "Alice", role = RoomMember.Role.Admin), + aRoomMember(A_USER_ID_2, displayName = "Bob", role = RoomMember.Role.Admin), ) assertThat(membersByRole.moderators).isEmpty() assertThat(membersByRole.members).containsExactly( - aRoomMember(A_USER_ID_3, displayName = "Carol", role = RoomMember.Role.USER), - aRoomMember(A_USER_ID_4, displayName = "David", role = RoomMember.Role.USER), - aRoomMember(A_USER_ID_5, displayName = "Eve", role = RoomMember.Role.USER), + aRoomMember(A_USER_ID_3, displayName = "Carol", role = RoomMember.Role.User), + aRoomMember(A_USER_ID_4, displayName = "David", role = RoomMember.Role.User), + aRoomMember(A_USER_ID_5, displayName = "Eve", role = RoomMember.Role.User), ) } @@ -46,24 +54,35 @@ class MembersByRoleTest { val emptyMembersByRole = MembersByRole(emptyList()) assertThat(emptyMembersByRole.isEmpty()).isTrue() + val membersByRoleWithOwners = MembersByRole( + owners = persistentListOf(aRoomMember(A_USER_ID, role = RoomMember.Role.Admin)), + admins = persistentListOf(), + moderators = persistentListOf(), + members = persistentListOf(), + ) + assertThat(membersByRoleWithOwners.isEmpty()).isFalse() + val membersByRoleWithAdmins = MembersByRole( - admins = persistentListOf(aRoomMember(A_USER_ID, role = RoomMember.Role.ADMIN)), + owners = persistentListOf(), + admins = persistentListOf(aRoomMember(A_USER_ID, role = RoomMember.Role.Admin)), moderators = persistentListOf(), members = persistentListOf(), ) assertThat(membersByRoleWithAdmins.isEmpty()).isFalse() val membersByRoleWithModerators = MembersByRole( + owners = persistentListOf(), admins = persistentListOf(), - moderators = persistentListOf(aRoomMember(A_USER_ID, role = RoomMember.Role.MODERATOR)), + moderators = persistentListOf(aRoomMember(A_USER_ID, role = RoomMember.Role.Moderator)), members = persistentListOf(), ) assertThat(membersByRoleWithModerators.isEmpty()).isFalse() val membersByRoleWithMembers = MembersByRole( + owners = persistentListOf(), admins = persistentListOf(), moderators = persistentListOf(), - members = persistentListOf(aRoomMember(A_USER_ID, role = RoomMember.Role.USER)), + members = persistentListOf(aRoomMember(A_USER_ID, role = RoomMember.Role.User)), ) assertThat(membersByRoleWithMembers.isEmpty()).isFalse() } diff --git a/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/permissions/ChangeBaseRoomPermissionsPresenterTest.kt b/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/permissions/ChangeBaseRoomPermissionsPresenterTest.kt index 70770a6c5c..c59931140a 100644 --- a/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/permissions/ChangeBaseRoomPermissionsPresenterTest.kt +++ b/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/permissions/ChangeBaseRoomPermissionsPresenterTest.kt @@ -15,9 +15,9 @@ import app.cash.turbine.test import com.google.common.truth.Truth.assertThat import im.vector.app.features.analytics.plan.RoomModeration import io.element.android.libraries.architecture.AsyncAction -import io.element.android.libraries.matrix.api.room.RoomMember.Role.ADMIN -import io.element.android.libraries.matrix.api.room.RoomMember.Role.MODERATOR -import io.element.android.libraries.matrix.api.room.RoomMember.Role.USER +import io.element.android.libraries.matrix.api.room.RoomMember.Role.Admin +import io.element.android.libraries.matrix.api.room.RoomMember.Role.Moderator +import io.element.android.libraries.matrix.api.room.RoomMember.Role.User import io.element.android.libraries.matrix.api.room.powerlevels.RoomPowerLevelsValues import io.element.android.libraries.matrix.test.room.FakeBaseRoom import io.element.android.libraries.matrix.test.room.FakeJoinedRoom @@ -100,13 +100,13 @@ class ChangeBaseRoomPermissionsPresenterTest { presenter.present() }.test { val state = awaitUpdatedItem() - assertThat(state.currentPermissions?.roomName).isEqualTo(ADMIN.powerLevel) + assertThat(state.currentPermissions?.roomName).isEqualTo(Admin.powerLevel) assertThat(state.hasChanges).isFalse() - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_NAME, MODERATOR)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_NAME, Moderator)) awaitItem().run { - assertThat(currentPermissions?.roomName).isEqualTo(MODERATOR.powerLevel) + assertThat(currentPermissions?.roomName).isEqualTo(Moderator.powerLevel) assertThat(hasChanges).isTrue() } } @@ -120,28 +120,28 @@ class ChangeBaseRoomPermissionsPresenterTest { }.test { val state = awaitUpdatedItem() - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.INVITE, MODERATOR)) - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.KICK, MODERATOR)) - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.BAN, MODERATOR)) - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.SEND_EVENTS, MODERATOR)) - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.REDACT_EVENTS, MODERATOR)) - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_NAME, MODERATOR)) - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_AVATAR, MODERATOR)) - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_TOPIC, MODERATOR)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.INVITE, Moderator)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.KICK, Moderator)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.BAN, Moderator)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.SEND_EVENTS, Moderator)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.REDACT_EVENTS, Moderator)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_NAME, Moderator)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_AVATAR, Moderator)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_TOPIC, Moderator)) val items = cancelAndConsumeRemainingEvents() (items.last() as? Event.Item)?.value?.run { assertThat(currentPermissions).isEqualTo( RoomPowerLevelsValues( - invite = MODERATOR.powerLevel, - kick = MODERATOR.powerLevel, - ban = MODERATOR.powerLevel, - redactEvents = MODERATOR.powerLevel, - sendEvents = MODERATOR.powerLevel, - roomName = MODERATOR.powerLevel, - roomAvatar = MODERATOR.powerLevel, - roomTopic = MODERATOR.powerLevel, + invite = Moderator.powerLevel, + kick = Moderator.powerLevel, + ban = Moderator.powerLevel, + redactEvents = Moderator.powerLevel, + sendEvents = Moderator.powerLevel, + roomName = Moderator.powerLevel, + roomAvatar = Moderator.powerLevel, + roomTopic = Moderator.powerLevel, ) ) } @@ -162,17 +162,17 @@ class ChangeBaseRoomPermissionsPresenterTest { presenter.present() }.test { val state = awaitUpdatedItem() - assertThat(state.currentPermissions?.roomName).isEqualTo(ADMIN.powerLevel) + assertThat(state.currentPermissions?.roomName).isEqualTo(Admin.powerLevel) assertThat(state.hasChanges).isFalse() - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_NAME, MODERATOR)) - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_AVATAR, MODERATOR)) - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_TOPIC, MODERATOR)) - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.SEND_EVENTS, MODERATOR)) - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.REDACT_EVENTS, USER)) - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.KICK, ADMIN)) - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.BAN, ADMIN)) - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.INVITE, ADMIN)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_NAME, Moderator)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_AVATAR, Moderator)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_TOPIC, Moderator)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.SEND_EVENTS, Moderator)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.REDACT_EVENTS, User)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.KICK, Admin)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.BAN, Admin)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.INVITE, Admin)) skipItems(7) assertThat(awaitItem().hasChanges).isTrue() @@ -181,7 +181,7 @@ class ChangeBaseRoomPermissionsPresenterTest { assertThat(awaitItem().saveAction).isEqualTo(AsyncAction.Loading) assertThat(awaitItem().hasChanges).isFalse() awaitItem().run { - assertThat(currentPermissions?.roomName).isEqualTo(MODERATOR.powerLevel) + assertThat(currentPermissions?.roomName).isEqualTo(Moderator.powerLevel) assertThat(saveAction).isEqualTo(AsyncAction.Success(Unit)) } assertThat(analyticsService.capturedEvents).containsExactlyElementsIn( @@ -227,17 +227,17 @@ class ChangeBaseRoomPermissionsPresenterTest { presenter.present() }.test { val state = awaitUpdatedItem() - assertThat(state.currentPermissions?.roomName).isEqualTo(ADMIN.powerLevel) + assertThat(state.currentPermissions?.roomName).isEqualTo(Admin.powerLevel) assertThat(state.hasChanges).isFalse() - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_NAME, MODERATOR)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_NAME, Moderator)) assertThat(awaitItem().hasChanges).isTrue() state.eventSink(ChangeRoomPermissionsEvent.Save) assertThat(awaitItem().saveAction).isEqualTo(AsyncAction.Loading) awaitItem().run { - assertThat(currentPermissions?.roomName).isEqualTo(MODERATOR.powerLevel) + assertThat(currentPermissions?.roomName).isEqualTo(Moderator.powerLevel) // Couldn't save the changes, so they're still pending assertThat(hasChanges).isTrue() assertThat(saveAction).isInstanceOf(AsyncAction.Failure::class.java) @@ -245,7 +245,7 @@ class ChangeBaseRoomPermissionsPresenterTest { state.eventSink(ChangeRoomPermissionsEvent.ResetPendingActions) awaitItem().run { - assertThat(currentPermissions?.roomName).isEqualTo(MODERATOR.powerLevel) + assertThat(currentPermissions?.roomName).isEqualTo(Moderator.powerLevel) assertThat(saveAction).isEqualTo(AsyncAction.Uninitialized) assertThat(hasChanges).isTrue() } @@ -259,7 +259,7 @@ class ChangeBaseRoomPermissionsPresenterTest { presenter.present() }.test { val state = awaitUpdatedItem() - state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_NAME, MODERATOR)) + state.eventSink(ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_NAME, Moderator)) assertThat(awaitItem().hasChanges).isTrue() state.eventSink(ChangeRoomPermissionsEvent.Exit) diff --git a/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/permissions/ChangeBaseRoomPermissionsViewTest.kt b/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/permissions/ChangeBaseRoomPermissionsViewTest.kt index 8ed659d31c..f4ab1ef1a9 100644 --- a/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/permissions/ChangeBaseRoomPermissionsViewTest.kt +++ b/features/roomdetails/impl/src/test/kotlin/io/element/android/features/roomdetails/impl/rolesandpermissions/permissions/ChangeBaseRoomPermissionsViewTest.kt @@ -115,9 +115,9 @@ class ChangeBaseRoomPermissionsViewTest { rule.onAllNodesWithText(users).onFirst().performClick() recorder.assertList( listOf( - ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_NAME, RoomMember.Role.ADMIN), - ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_NAME, RoomMember.Role.MODERATOR), - ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_NAME, RoomMember.Role.USER), + ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_NAME, RoomMember.Role.Admin), + ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_NAME, RoomMember.Role.Moderator), + ChangeRoomPermissionsEvent.ChangeMinimumRoleForAction(RoomPermissionType.ROOM_NAME, RoomMember.Role.User), ) ) } diff --git a/features/roomdirectory/api/src/main/kotlin/io/element/android/features/roomdirectory/api/RoomDescription.kt b/features/roomdirectory/api/src/main/kotlin/io/element/android/features/roomdirectory/api/RoomDescription.kt index 9914aa77b2..7d479cbad9 100644 --- a/features/roomdirectory/api/src/main/kotlin/io/element/android/features/roomdirectory/api/RoomDescription.kt +++ b/features/roomdirectory/api/src/main/kotlin/io/element/android/features/roomdirectory/api/RoomDescription.kt @@ -30,6 +30,9 @@ data class RoomDescription( enum class JoinRule { PUBLIC, KNOCK, + RESTRICTED, + KNOCK_RESTRICTED, + INVITE, UNKNOWN } diff --git a/features/roomdirectory/impl/src/main/kotlin/io/element/android/features/roomdirectory/impl/root/model/RoomDescription.kt b/features/roomdirectory/impl/src/main/kotlin/io/element/android/features/roomdirectory/impl/root/model/RoomDescription.kt index ed52e71e48..fba94c49f7 100644 --- a/features/roomdirectory/impl/src/main/kotlin/io/element/android/features/roomdirectory/impl/root/model/RoomDescription.kt +++ b/features/roomdirectory/impl/src/main/kotlin/io/element/android/features/roomdirectory/impl/root/model/RoomDescription.kt @@ -21,6 +21,9 @@ fun MatrixRoomDescription.toFeatureModel(): RoomDescription { joinRule = when (joinRule) { MatrixRoomDescription.JoinRule.PUBLIC -> RoomDescription.JoinRule.PUBLIC MatrixRoomDescription.JoinRule.KNOCK -> RoomDescription.JoinRule.KNOCK + MatrixRoomDescription.JoinRule.RESTRICTED -> RoomDescription.JoinRule.RESTRICTED + MatrixRoomDescription.JoinRule.KNOCK_RESTRICTED -> RoomDescription.JoinRule.KNOCK_RESTRICTED + MatrixRoomDescription.JoinRule.INVITE -> RoomDescription.JoinRule.INVITE MatrixRoomDescription.JoinRule.UNKNOWN -> RoomDescription.JoinRule.UNKNOWN } ) diff --git a/features/roommembermoderation/impl/src/main/res/values-pl/translations.xml b/features/roommembermoderation/impl/src/main/res/values-pl/translations.xml index 4b0098c34a..b94e3f8d8b 100644 --- a/features/roommembermoderation/impl/src/main/res/values-pl/translations.xml +++ b/features/roommembermoderation/impl/src/main/res/values-pl/translations.xml @@ -12,4 +12,9 @@ "UsuƄ z pokoju" "Usunąć czƂonka i zablokować moĆŒliwoƛć doƂączenia w przyszƂoƛci?" "Usuwanie %1$s
" + "Odbanuj z pokoju" + "Odbanuj" + "Mogą ponownie doƂączyć do pokoju, po otrzymaniu zaproszenia" + "Czy na pewno chcesz odbanować tego czƂonka?" + "Odbanowuję %1$s" diff --git a/features/roommembermoderation/impl/src/test/kotlin/io/element/android/features/roommembermoderation/impl/RoomMemberModerationPresenterTest.kt b/features/roommembermoderation/impl/src/test/kotlin/io/element/android/features/roommembermoderation/impl/RoomMemberModerationPresenterTest.kt index 3496612c35..2d1bf77fe0 100644 --- a/features/roommembermoderation/impl/src/test/kotlin/io/element/android/features/roommembermoderation/impl/RoomMemberModerationPresenterTest.kt +++ b/features/roommembermoderation/impl/src/test/kotlin/io/element/android/features/roommembermoderation/impl/RoomMemberModerationPresenterTest.kt @@ -61,8 +61,8 @@ class RoomMemberModerationPresenterTest { val room = aJoinedRoom( canBan = false, canKick = false, - myUserRole = RoomMember.Role.USER, - targetRoomMember = aRoomMember(userId = A_USER_ID, powerLevel = RoomMember.Role.USER.powerLevel) + myUserRole = RoomMember.Role.User, + targetRoomMember = aRoomMember(userId = A_USER_ID, powerLevel = RoomMember.Role.User.powerLevel) ) createRoomMemberModerationPresenter(room = room).test { val initialState = awaitState() @@ -81,7 +81,7 @@ class RoomMemberModerationPresenterTest { val room = aJoinedRoom( canBan = true, canKick = true, - myUserRole = RoomMember.Role.ADMIN, + myUserRole = RoomMember.Role.Admin, targetRoomMember = null ) createRoomMemberModerationPresenter(room = room).test { @@ -103,8 +103,8 @@ class RoomMemberModerationPresenterTest { val room = aJoinedRoom( canBan = true, canKick = true, - myUserRole = RoomMember.Role.ADMIN, - targetRoomMember = aRoomMember(userId = A_USER_ID, powerLevel = RoomMember.Role.USER.powerLevel) + myUserRole = RoomMember.Role.Admin, + targetRoomMember = aRoomMember(userId = A_USER_ID, powerLevel = RoomMember.Role.User.powerLevel) ) createRoomMemberModerationPresenter(room = room).test { val initialState = awaitState() @@ -125,8 +125,8 @@ class RoomMemberModerationPresenterTest { val room = aJoinedRoom( canBan = true, canKick = true, - myUserRole = RoomMember.Role.MODERATOR, - targetRoomMember = aRoomMember(userId = A_USER_ID, powerLevel = RoomMember.Role.ADMIN.powerLevel) + myUserRole = RoomMember.Role.Moderator, + targetRoomMember = aRoomMember(userId = A_USER_ID, powerLevel = RoomMember.Role.Admin.powerLevel) ) createRoomMemberModerationPresenter(room = room).test { val initialState = awaitState() @@ -147,7 +147,7 @@ class RoomMemberModerationPresenterTest { val room = aJoinedRoom( canBan = true, canKick = true, - myUserRole = RoomMember.Role.MODERATOR, + myUserRole = RoomMember.Role.Moderator, targetRoomMember = aRoomMember(userId = A_USER_ID, membership = RoomMembershipState.BAN) ) createRoomMemberModerationPresenter(room = room).test { @@ -321,7 +321,7 @@ class RoomMemberModerationPresenterTest { private fun aJoinedRoom( canKick: Boolean = false, canBan: Boolean = false, - myUserRole: RoomMember.Role = RoomMember.Role.USER, + myUserRole: RoomMember.Role = RoomMember.Role.User, kickUserResult: Result = Result.success(Unit), banUserResult: Result = Result.success(Unit), unBanUserResult: Result = Result.success(Unit), diff --git a/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupPresenter.kt b/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupPresenter.kt index 83f27c8a8a..c71e6edec0 100644 --- a/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupPresenter.kt +++ b/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupPresenter.kt @@ -60,6 +60,7 @@ class SecureBackupSetupPresenter @AssistedInject constructor( stateAndDispatch.dispatchAction(SecureBackupSetupStateMachine.Event.UserSavedKey) SecureBackupSetupEvents.DismissDialog -> { showSaveConfirmationDialog = false + stateAndDispatch.dispatchAction(SecureBackupSetupStateMachine.Event.ClearError) } SecureBackupSetupEvents.Done -> { showSaveConfirmationDialog = true @@ -89,6 +90,7 @@ class SecureBackupSetupPresenter @AssistedInject constructor( SecureBackupSetupStateMachine.State.CreatingKey -> SetupState.Creating is SecureBackupSetupStateMachine.State.KeyCreated -> SetupState.Created(formattedRecoveryKey = key) is SecureBackupSetupStateMachine.State.KeyCreatedAndSaved -> SetupState.CreatedAndSaved(formattedRecoveryKey = key) + is SecureBackupSetupStateMachine.State.Error -> SetupState.Error(exception) } } @@ -103,13 +105,20 @@ class SecureBackupSetupPresenter @AssistedInject constructor( stateAndDispatch.dispatchAction(SecureBackupSetupStateMachine.Event.SdkHasCreatedKey(it)) }, onFailure = { - stateAndDispatch.dispatchAction(SecureBackupSetupStateMachine.Event.SdkError(it)) + if (it is Exception) { + stateAndDispatch.dispatchAction(SecureBackupSetupStateMachine.Event.SdkError(it)) + } } ) } else { observeEncryptionService(stateAndDispatch) Timber.tag(loggerTagSetup.value).d("Calling encryptionService.enableRecovery()") - encryptionService.enableRecovery(waitForBackupsToUpload = false) + encryptionService.enableRecovery(waitForBackupsToUpload = false).onFailure { + Timber.tag(loggerTagSetup.value).e(it, "Failed to enable recovery") + if (it is Exception) { + stateAndDispatch.dispatchAction(SecureBackupSetupStateMachine.Event.SdkError(it)) + } + } } } diff --git a/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupState.kt b/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupState.kt index 430d368c6f..91f710d07d 100644 --- a/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupState.kt +++ b/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupState.kt @@ -23,6 +23,7 @@ sealed interface SetupState { data object Creating : SetupState data class Created(val formattedRecoveryKey: String) : SetupState data class CreatedAndSaved(val formattedRecoveryKey: String) : SetupState + data class Error(val exception: Exception) : SetupState } fun SetupState.recoveryKey(): String? = when (this) { diff --git a/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupStateMachine.kt b/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupStateMachine.kt index 0567f4dba7..4fbf3f3fd2 100644 --- a/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupStateMachine.kt +++ b/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupStateMachine.kt @@ -26,8 +26,8 @@ class SecureBackupSetupStateMachine @Inject constructor() : FlowReduxStateMachin } } inState { - on { _: Event.SdkError, state: MachineState -> - state.override { State.Initial } + on { event: Event.SdkError, state: MachineState -> + state.override { State.Error(event.exception) } } on { event: Event.SdkHasCreatedKey, state: MachineState -> state.override { State.KeyCreated(event.key) } @@ -38,6 +38,11 @@ class SecureBackupSetupStateMachine @Inject constructor() : FlowReduxStateMachin state.override { State.KeyCreatedAndSaved(state.snapshot.key) } } } + inState { + on { _: Event.ClearError, state: MachineState -> + state.override { State.Initial } + } + } inState { } } @@ -48,12 +53,14 @@ class SecureBackupSetupStateMachine @Inject constructor() : FlowReduxStateMachin data object CreatingKey : State data class KeyCreated(val key: String) : State data class KeyCreatedAndSaved(val key: String) : State + data class Error(val exception: Exception) : State } sealed interface Event { data object UserCreatesKey : Event data class SdkHasCreatedKey(val key: String) : Event - data class SdkError(val throwable: Throwable) : Event + data class SdkError(val exception: Exception) : Event data object UserSavedKey : Event + data object ClearError : Event } } diff --git a/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupStateProvider.kt b/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupStateProvider.kt index b371548da2..29c03dbcc8 100644 --- a/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupStateProvider.kt +++ b/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupStateProvider.kt @@ -23,6 +23,7 @@ open class SecureBackupSetupStateProvider : PreviewParameterProvider if (state.isChangeRecoveryKeyUserStory) { + SetupState.Creating, + is SetupState.Error -> if (state.isChangeRecoveryKeyUserStory) { stringResource(id = R.string.screen_recovery_key_change_title) } else { stringResource(id = R.string.screen_recovery_key_setup_title) @@ -85,7 +97,8 @@ private fun title(state: SecureBackupSetupState): String { private fun subtitle(state: SecureBackupSetupState): String { return when (state.setupState) { SetupState.Init, - SetupState.Creating -> if (state.isChangeRecoveryKeyUserStory) { + SetupState.Creating, + is SetupState.Error -> if (state.isChangeRecoveryKeyUserStory) { stringResource(id = R.string.screen_recovery_key_change_description) } else { stringResource(id = R.string.screen_recovery_key_setup_description) @@ -137,7 +150,8 @@ private fun ColumnScope.Buttons( val chooserTitle = stringResource(id = R.string.screen_recovery_key_save_action) when (state.setupState) { SetupState.Init, - SetupState.Creating -> { + SetupState.Creating, + is SetupState.Error -> { Button( text = stringResource(id = CommonStrings.action_done), enabled = false, diff --git a/features/securebackup/impl/src/main/res/values-da/translations.xml b/features/securebackup/impl/src/main/res/values-da/translations.xml index b4a385eea2..c77e19451f 100644 --- a/features/securebackup/impl/src/main/res/values-da/translations.xml +++ b/features/securebackup/impl/src/main/res/values-da/translations.xml @@ -15,7 +15,7 @@ "FĂ„ adgang til dine krypterede meddelelser, hvis du mister alle dine enheder eller er logget ud af %1$s overalt." "Åbn %1$s pĂ„ en stationĂŠr enhed" "Log ind pĂ„ din konto igen" - "NĂ„r du bliver bedt om at bekrĂŠfte din enhed, skal du vĂŠlge %1$s" + "NĂ„r du bliver bedt om at verificere din enhed, skal du vĂŠlge %1$s" "\"Nulstil alle\"" "FĂžlg instruktionerne for at oprette en ny gendannelsesnĂžgle" "Gem din nye gendannelsesnĂžgle i en adgangskodeadministrator eller i en krypteret note" diff --git a/features/securebackup/impl/src/test/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupPresenterTest.kt b/features/securebackup/impl/src/test/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupPresenterTest.kt index 7e8bb156e0..003d7645de 100644 --- a/features/securebackup/impl/src/test/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupPresenterTest.kt +++ b/features/securebackup/impl/src/test/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupPresenterTest.kt @@ -109,6 +109,34 @@ class SecureBackupSetupPresenterTest { } } + @Test + fun `present - handle errors`() = runTest { + val encryptionService = FakeEncryptionService( + enableRecoveryLambda = { Result.failure(IllegalStateException("Test error")) } + ) + val presenter = createSecureBackupSetupPresenter( + isChangeRecoveryKeyUserStory = false, + encryptionService = encryptionService + ) + moleculeFlow(RecompositionMode.Immediate) { + presenter.present() + }.test { + val initialState = awaitItem() + assertThat(initialState.isChangeRecoveryKeyUserStory).isFalse() + assertThat(initialState.setupState).isEqualTo(SetupState.Init) + + initialState.eventSink(SecureBackupSetupEvents.CreateRecoveryKey) + val creatingState = awaitItem() + assertThat(creatingState.setupState).isEqualTo(SetupState.Creating) + val failedState = awaitItem() + assertThat(failedState.setupState).isInstanceOf(SetupState.Error::class.java) + failedState.eventSink(SecureBackupSetupEvents.DismissDialog) + + val finalState = awaitItem() + assertThat(finalState.setupState).isEqualTo(SetupState.Init) + } + } + @Test fun `present - change recovery key and save it`() = runTest { val encryptionService = FakeEncryptionService() @@ -153,7 +181,9 @@ class SecureBackupSetupPresenterTest { private fun createSecureBackupSetupPresenter( isChangeRecoveryKeyUserStory: Boolean = false, - encryptionService: EncryptionService = FakeEncryptionService(), + encryptionService: EncryptionService = FakeEncryptionService( + enableRecoveryLambda = { Result.success(Unit) }, + ), ): SecureBackupSetupPresenter { return SecureBackupSetupPresenter( isChangeRecoveryKeyUserStory = isChangeRecoveryKeyUserStory, diff --git a/features/share/impl/src/test/kotlin/io/element/android/features/share/impl/SharePresenterTest.kt b/features/share/impl/src/test/kotlin/io/element/android/features/share/impl/SharePresenterTest.kt index 979d6aa61c..203d5888d1 100644 --- a/features/share/impl/src/test/kotlin/io/element/android/features/share/impl/SharePresenterTest.kt +++ b/features/share/impl/src/test/kotlin/io/element/android/features/share/impl/SharePresenterTest.kt @@ -16,9 +16,9 @@ import com.google.common.truth.Truth.assertThat import io.element.android.libraries.architecture.AsyncAction import io.element.android.libraries.core.mimetype.MimeTypes import io.element.android.libraries.matrix.api.MatrixClient +import io.element.android.libraries.matrix.api.core.EventId import io.element.android.libraries.matrix.api.core.ProgressCallback import io.element.android.libraries.matrix.api.media.FileInfo -import io.element.android.libraries.matrix.api.room.message.ReplyParameters import io.element.android.libraries.matrix.test.A_MESSAGE import io.element.android.libraries.matrix.test.A_ROOM_ID import io.element.android.libraries.matrix.test.FakeMatrixClient @@ -122,7 +122,7 @@ class SharePresenterTest { @Test fun `present - send media ok`() = runTest { val sendFileResult = - lambdaRecorder> { _, _, _, _, _, _ -> + lambdaRecorder> { _, _, _, _, _, _ -> Result.success(FakeMediaUploadHandler()) } val joinedRoom = FakeJoinedRoom( diff --git a/features/signedout/impl/src/main/res/values-lt/translations.xml b/features/signedout/impl/src/main/res/values-lt/translations.xml new file mode 100644 index 0000000000..4d29d11ced --- /dev/null +++ b/features/signedout/impl/src/main/res/values-lt/translations.xml @@ -0,0 +1,4 @@ + + + "Esate atsijungę" + diff --git a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationState.kt b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationState.kt index 95f81af479..fdc9f373d4 100644 --- a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationState.kt +++ b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationState.kt @@ -36,5 +36,9 @@ data class IncomingVerificationState( data object Canceled : Step data object Completed : Step data object Failure : Step + + val isTimeLimited: Boolean + get() = this is Initial || + this is Verifying } } diff --git a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationView.kt b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationView.kt index 12bfe99fcd..4d51b0ca4f 100644 --- a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationView.kt +++ b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationView.kt @@ -8,6 +8,7 @@ package io.element.android.features.verifysession.impl.incoming import androidx.activity.compose.BackHandler +import androidx.compose.foundation.focusable import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.fillMaxWidth @@ -19,6 +20,11 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color import androidx.compose.ui.res.stringResource +import androidx.compose.ui.semantics.ProgressBarRangeInfo +import androidx.compose.ui.semantics.contentDescription +import androidx.compose.ui.semantics.focused +import androidx.compose.ui.semantics.progressBarRangeInfo +import androidx.compose.ui.semantics.semantics import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.compose.ui.unit.dp @@ -30,9 +36,9 @@ import io.element.android.features.verifysession.impl.incoming.ui.SessionDetails import io.element.android.features.verifysession.impl.ui.VerificationBottomMenu import io.element.android.features.verifysession.impl.ui.VerificationContentVerifying import io.element.android.features.verifysession.impl.ui.VerificationUserProfileContent +import io.element.android.libraries.designsystem.atomic.molecules.IconTitleSubtitleMolecule import io.element.android.libraries.designsystem.atomic.pages.HeaderFooterPage import io.element.android.libraries.designsystem.components.BigIcon -import io.element.android.libraries.designsystem.components.PageTitle import io.element.android.libraries.designsystem.components.button.BackButton import io.element.android.libraries.designsystem.preview.ElementPreview import io.element.android.libraries.designsystem.preview.PreviewsDayNight @@ -140,10 +146,26 @@ private fun IncomingVerificationHeader(step: Step, request: VerificationRequest. } Step.Failure -> R.string.screen_session_verification_request_failure_subtitle } - PageTitle( + val timeLimitMessage = if (step.isTimeLimited) { + stringResource(CommonStrings.a11y_time_limited_action_required) + } else { + "" + } + IconTitleSubtitleMolecule( + modifier = Modifier + .padding(bottom = 16.dp) + .semantics(mergeDescendants = true) { + contentDescription = timeLimitMessage + focused = true + if (iconStyle == BigIcon.Style.Loading) { + // Same code than Modifier.progressSemantics() + progressBarRangeInfo = ProgressBarRangeInfo.Indeterminate + } + } + .focusable(), iconStyle = iconStyle, title = stringResource(id = titleTextId), - subtitle = stringResource(id = subtitleTextId) + subTitle = stringResource(id = subtitleTextId), ) } @@ -187,7 +209,9 @@ private fun ContentInitial( } is VerificationRequest.Incoming.User -> { Column( - modifier = Modifier.fillMaxWidth().padding(top = 24.dp), + modifier = Modifier + .fillMaxWidth() + .padding(top = 24.dp), ) { VerificationUserProfileContent( userId = request.details.senderProfile.userId, diff --git a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/ui/SessionDetailsView.kt b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/ui/SessionDetailsView.kt index 83d82ec795..da3471ddc1 100644 --- a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/ui/SessionDetailsView.kt +++ b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/ui/SessionDetailsView.kt @@ -18,6 +18,7 @@ import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource +import androidx.compose.ui.semantics.semantics import androidx.compose.ui.unit.dp import io.element.android.compound.theme.ElementTheme import io.element.android.features.verifysession.impl.R @@ -46,7 +47,8 @@ fun SessionDetailsView( color = ElementTheme.colors.borderDisabled, shape = RoundedCornerShape(8.dp) ) - .padding(24.dp), + .padding(24.dp) + .semantics(mergeDescendants = true) {}, verticalArrangement = Arrangement.spacedBy(12.dp), ) { Row( @@ -76,6 +78,7 @@ fun SessionDetailsView( label = stringResource(CommonStrings.common_device_id), text = deviceId.value, modifier = Modifier.weight(5f), + spellText = true, ) } } diff --git a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationState.kt b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationState.kt index 02653124ab..9b2d5f2e40 100644 --- a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationState.kt +++ b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationState.kt @@ -29,5 +29,11 @@ data class OutgoingVerificationState( data class Verifying(val data: SessionVerificationData, val state: AsyncData) : Step data object Completed : Step data object Exit : Step + + val isTimeLimited: Boolean + get() = this is Initial || + this is AwaitingOtherDeviceResponse || + this is Ready || + this is Verifying } } diff --git a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationView.kt b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationView.kt index 8669472cf4..f58a5ac76a 100644 --- a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationView.kt +++ b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationView.kt @@ -9,6 +9,7 @@ package io.element.android.features.verifysession.impl.outgoing import androidx.activity.compose.BackHandler import androidx.compose.foundation.clickable +import androidx.compose.foundation.focusable import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Row @@ -22,6 +23,11 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color import androidx.compose.ui.res.stringResource +import androidx.compose.ui.semantics.ProgressBarRangeInfo +import androidx.compose.ui.semantics.contentDescription +import androidx.compose.ui.semantics.focused +import androidx.compose.ui.semantics.progressBarRangeInfo +import androidx.compose.ui.semantics.semantics import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.compose.ui.unit.dp import io.element.android.compound.theme.ElementTheme @@ -31,9 +37,9 @@ import io.element.android.features.verifysession.impl.outgoing.OutgoingVerificat import io.element.android.features.verifysession.impl.ui.VerificationBottomMenu import io.element.android.features.verifysession.impl.ui.VerificationContentVerifying import io.element.android.libraries.architecture.AsyncData +import io.element.android.libraries.designsystem.atomic.molecules.IconTitleSubtitleMolecule import io.element.android.libraries.designsystem.atomic.pages.HeaderFooterPage import io.element.android.libraries.designsystem.components.BigIcon -import io.element.android.libraries.designsystem.components.PageTitle import io.element.android.libraries.designsystem.components.button.BackButton import io.element.android.libraries.designsystem.preview.ElementPreview import io.element.android.libraries.designsystem.preview.PreviewsDayNight @@ -180,11 +186,26 @@ private fun OutgoingVerificationHeader(step: Step, request: VerificationRequest. } is Step.Exit -> return } - - PageTitle( + val timeLimitMessage = if (step.isTimeLimited) { + stringResource(CommonStrings.a11y_time_limited_action_required) + } else { + "" + } + IconTitleSubtitleMolecule( + modifier = Modifier + .padding(bottom = 16.dp) + .semantics(mergeDescendants = true) { + contentDescription = timeLimitMessage + focused = true + if (iconStyle == BigIcon.Style.Loading) { + // Same code than Modifier.progressSemantics() + progressBarRangeInfo = ProgressBarRangeInfo.Indeterminate + } + } + .focusable(), iconStyle = iconStyle, title = stringResource(id = titleTextId), - subtitle = stringResource(id = subtitleTextId) + subTitle = stringResource(id = subtitleTextId), ) } diff --git a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/ui/VerificationContentVerifying.kt b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/ui/VerificationContentVerifying.kt index b2010bd61c..7a31a26cbb 100644 --- a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/ui/VerificationContentVerifying.kt +++ b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/ui/VerificationContentVerifying.kt @@ -24,6 +24,8 @@ 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.semantics.contentDescription +import androidx.compose.ui.semantics.semantics import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.unit.dp @@ -39,14 +41,20 @@ internal fun VerificationContentVerifying( modifier: Modifier = Modifier, ) { Box( - modifier = modifier.fillMaxSize().padding(bottom = 20.dp), + modifier = modifier + .fillMaxSize() + .padding(bottom = 20.dp), contentAlignment = Alignment.Center ) { when (data) { is SessionVerificationData.Decimals -> { - val text = data.decimals.joinToString(separator = " - ") { it.toString() } + val text = data.decimals.joinToString(separator = " - ") Text( - modifier = Modifier.fillMaxWidth(), + modifier = Modifier + .fillMaxWidth() + .semantics { + contentDescription = data.decimals.joinToString() + }, text = text, style = ElementTheme.typography.fontHeadingLgBold, color = ElementTheme.colors.textPrimary, @@ -57,7 +65,9 @@ internal fun VerificationContentVerifying( // We want each row to have up to 4 emojis val rows = data.emojis.chunked(4) Column( - modifier = Modifier.fillMaxWidth(), + modifier = Modifier + .fillMaxWidth() + .semantics(mergeDescendants = true) {}, verticalArrangement = Arrangement.spacedBy(40.dp), ) { rows.forEach { emojis -> diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index d6f8d90c9d..04809a57a8 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -14,7 +14,7 @@ core = "1.16.0" datastore = "1.1.7" constraintlayout = "2.2.1" constraintlayout_compose = "1.1.1" -lifecycle = "2.9.1" +lifecycle = "2.9.2" activity = "1.10.1" media3 = "1.7.1" camera = "1.4.2" @@ -30,7 +30,7 @@ coroutines = "1.10.2" accompanist = "0.37.3" # Test -test_core = "1.6.1" +test_core = "1.7.0" # Jetbrain datetime = "0.7.1" @@ -38,26 +38,26 @@ serialization_json = "1.9.0" #other detekt = "1.23.8" -coil = "3.2.0" +coil = "3.3.0" showkase = "1.0.4" appyx = "1.7.1" sqldelight = "2.1.0" wysiwyg = "2.38.5" telephoto = "0.16.0" -haze = "1.6.8" +haze = "1.6.9" # Dependency analysis dependencyAnalysis = "2.19.0" # DI -dagger = "2.56.2" +dagger = "2.57" anvil = "0.4.1" # Auto service autoservice = "1.1.1" # quality -androidx-test-ext-junit = "1.2.1" +androidx-test-ext-junit = "1.3.0" kover = "0.9.1" [libraries] @@ -74,7 +74,7 @@ kover_gradle_plugin = { module = "org.jetbrains.kotlinx:kover-gradle-plugin", ve ksp_gradle_plugin = { module = "com.google.devtools.ksp:com.google.devtools.ksp.gradle.plugin", version.ref = "ksp" } gms_google_services = "com.google.gms:google-services:4.4.3" # https://firebase.google.com/docs/android/setup#available-libraries -google_firebase_bom = "com.google.firebase:firebase-bom:33.16.0" +google_firebase_bom = "com.google.firebase:firebase-bom:34.0.0" firebase_appdistribution_gradle = { module = "com.google.firebase:firebase-appdistribution-gradle", version.ref = "firebaseAppDistribution" } autonomousapps_dependencyanalysis_plugin = { module = "com.autonomousapps:dependency-analysis-gradle-plugin", version.ref = "dependencyAnalysis" } ksp_plugin = { module = "com.google.devtools.ksp:symbol-processing-api", version.ref = "ksp" } @@ -148,8 +148,8 @@ test_core = { module = "androidx.test:core", version.ref = "test_core" } test_corektx = { module = "androidx.test:core-ktx", version.ref = "test_core" } test_arch_core = "androidx.arch.core:core-testing:2.2.0" test_junit = "junit:junit:4.13.2" -test_runner = "androidx.test:runner:1.6.2" -test_mockk = "io.mockk:mockk:1.14.4" +test_runner = "androidx.test:runner:1.7.0" +test_mockk = "io.mockk:mockk:1.14.5" test_konsist = "com.lemonappdev:konsist:0.17.3" test_turbine = "app.cash.turbine:turbine:1.2.1" test_truth = "com.google.truth:truth:1.4.4" @@ -176,7 +176,7 @@ jsoup = "org.jsoup:jsoup:1.21.1" appyx_core = { module = "com.bumble.appyx:core", version.ref = "appyx" } molecule-runtime = "app.cash.molecule:molecule-runtime:2.1.0" timber = "com.jakewharton.timber:timber:5.0.1" -matrix_sdk = "org.matrix.rustcomponents:sdk-android:25.7.15" +matrix_sdk = "org.matrix.rustcomponents:sdk-android:25.7.28" matrix_richtexteditor = { module = "io.element.android:wysiwyg", version.ref = "wysiwyg" } matrix_richtexteditor_compose = { module = "io.element.android:wysiwyg-compose", version.ref = "wysiwyg" } sqldelight-driver-android = { module = "app.cash.sqldelight:android-driver", version.ref = "sqldelight" } @@ -189,7 +189,7 @@ vanniktech_blurhash = "com.vanniktech:blurhash:0.3.0" telephoto_zoomableimage = { module = "me.saket.telephoto:zoomable-image-coil", version.ref = "telephoto" } telephoto_flick = { module = "me.saket.telephoto:flick-android", version.ref = "telephoto" } statemachine = "com.freeletics.flowredux:compose:1.2.2" -maplibre = "org.maplibre.gl:android-sdk:11.12.1" +maplibre = "org.maplibre.gl:android-sdk:11.13.0" maplibre_ktx = "org.maplibre.gl:android-sdk-ktx-v7:3.0.2" maplibre_annotation = "org.maplibre.gl:android-plugin-annotation-v9:3.0.2" opusencoder = "io.element.android:opusencoder:1.2.0" @@ -198,8 +198,8 @@ haze = { module = "dev.chrisbanes.haze:haze", version.ref = "haze" } haze_materials = { module = "dev.chrisbanes.haze:haze-materials", version.ref = "haze" } # Analytics -posthog = "com.posthog:posthog-android:3.19.2" -sentry = "io.sentry:sentry-android:8.17.0" +posthog = "com.posthog:posthog-android:3.20.1" +sentry = "io.sentry:sentry-android:8.18.0" # main branch can be tested replacing the version with main-SNAPSHOT matrix_analytics_events = "com.github.matrix-org:matrix-analytics-events:0.28.0" diff --git a/libraries/androidutils/src/main/kotlin/io/element/android/libraries/androidutils/bitmap/Bitmap.kt b/libraries/androidutils/src/main/kotlin/io/element/android/libraries/androidutils/bitmap/Bitmap.kt index 25d8cb89c1..42ae1c8ba5 100644 --- a/libraries/androidutils/src/main/kotlin/io/element/android/libraries/androidutils/bitmap/Bitmap.kt +++ b/libraries/androidutils/src/main/kotlin/io/element/android/libraries/androidutils/bitmap/Bitmap.kt @@ -64,7 +64,7 @@ fun BitmapFactory.Options.calculateInSampleSize(desiredWidth: Int, desiredHeight * Decodes the [inputStream] into a [Bitmap] and applies the needed rotation based on [orientation]. * This orientation value must be one of `ExifInterface.ORIENTATION_*` constants. */ -fun Bitmap.rotateToMetadataOrientation(orientation: Int): Bitmap { +fun Bitmap.rotateToExifMetadataOrientation(orientation: Int): Bitmap { val matrix = Matrix() when (orientation) { ExifInterface.ORIENTATION_ROTATE_270 -> matrix.postRotate(270f) diff --git a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/molecules/TextWithLabelMolecule.kt b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/molecules/TextWithLabelMolecule.kt index 2d22ef38a0..cc195ca686 100644 --- a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/molecules/TextWithLabelMolecule.kt +++ b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/molecules/TextWithLabelMolecule.kt @@ -10,14 +10,26 @@ package io.element.android.libraries.designsystem.atomic.molecules import androidx.compose.foundation.layout.Column import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier +import androidx.compose.ui.semantics.contentDescription +import androidx.compose.ui.semantics.semantics import io.element.android.compound.theme.ElementTheme import io.element.android.libraries.designsystem.theme.components.Text +/** + * Display a label and a text in a column. + * @param label the label to display + * @param text the text to display + * @param modifier the modifier to apply to this layout + * @param spellText if true, the text will be spelled out in the content description for accessibility. + * Useful for deviceId for instance, that the screen reader will read as a list of letters instead of trying to read a + * word of random characters. + */ @Composable fun TextWithLabelMolecule( label: String, text: String, modifier: Modifier = Modifier, + spellText: Boolean = false, ) { Column(modifier = modifier) { Text( @@ -26,6 +38,11 @@ fun TextWithLabelMolecule( color = ElementTheme.colors.textSecondary, ) Text( + modifier = Modifier.semantics { + if (spellText) { + contentDescription = text.toList().joinToString() + } + }, text = text, style = ElementTheme.typography.fontBodyMdRegular, color = ElementTheme.colors.textPrimary, diff --git a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/pages/FlowStepPage.kt b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/pages/FlowStepPage.kt index bf549ecda2..a6af316399 100644 --- a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/pages/FlowStepPage.kt +++ b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/pages/FlowStepPage.kt @@ -22,8 +22,8 @@ import androidx.compose.ui.unit.dp import io.element.android.compound.theme.ElementTheme import io.element.android.compound.tokens.generated.CompoundIcons import io.element.android.libraries.designsystem.atomic.molecules.ButtonColumnMolecule +import io.element.android.libraries.designsystem.atomic.molecules.IconTitleSubtitleMolecule import io.element.android.libraries.designsystem.components.BigIcon -import io.element.android.libraries.designsystem.components.PageTitle import io.element.android.libraries.designsystem.components.button.BackButton import io.element.android.libraries.designsystem.preview.ElementPreview import io.element.android.libraries.designsystem.preview.PreviewsDayNight @@ -69,9 +69,10 @@ fun FlowStepPage( ) }, header = { - PageTitle( + IconTitleSubtitleMolecule( + modifier = Modifier.padding(bottom = 16.dp), title = title, - subtitle = subTitle, + subTitle = subTitle, iconStyle = iconStyle, ) }, diff --git a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/components/PageTitle.kt b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/components/PageTitle.kt deleted file mode 100644 index 55b8967169..0000000000 --- a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/components/PageTitle.kt +++ /dev/null @@ -1,126 +0,0 @@ -/* - * Copyright 2024 New Vector Ltd. - * - * SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial - * Please see LICENSE files in the repository root for full details. - */ - -package io.element.android.libraries.designsystem.components - -import androidx.compose.foundation.layout.Arrangement -import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.fillMaxWidth -import androidx.compose.foundation.layout.padding -import androidx.compose.runtime.Composable -import androidx.compose.ui.Alignment -import androidx.compose.ui.Modifier -import androidx.compose.ui.text.AnnotatedString -import androidx.compose.ui.text.style.TextAlign -import androidx.compose.ui.tooling.preview.PreviewParameter -import androidx.compose.ui.unit.dp -import io.element.android.compound.theme.ElementTheme -import io.element.android.compound.tokens.generated.CompoundIcons -import io.element.android.libraries.designsystem.preview.ElementPreview -import io.element.android.libraries.designsystem.preview.PreviewsDayNight -import io.element.android.libraries.designsystem.theme.components.Text -import io.element.android.libraries.designsystem.theme.components.TextButton - -/** - * Compound component that displays a big icon, a title, an optional subtitle and an optional call to action component. - * - * @param title the title to display - * @param iconStyle the style of the [BigIcon] to display - * @param modifier the modifier to apply to this layout - * @param subtitle the optional subtitle to display. It defaults to `null` - * @param callToAction the optional call to action component to display. It defaults to `null` - */ -@Composable -fun PageTitle( - title: AnnotatedString, - iconStyle: BigIcon.Style, - modifier: Modifier = Modifier, - subtitle: AnnotatedString? = null, - callToAction: @Composable (() -> Unit)? = null, -) { - Column( - modifier = modifier.fillMaxWidth(), - horizontalAlignment = Alignment.CenterHorizontally, - ) { - BigIcon(style = iconStyle) - Column( - modifier = Modifier.padding(vertical = 16.dp), - verticalArrangement = Arrangement.spacedBy(8.dp), - ) { - Text( - modifier = Modifier.fillMaxWidth(), - text = title, - style = ElementTheme.typography.fontHeadingMdBold, - color = ElementTheme.colors.textPrimary, - textAlign = TextAlign.Center, - ) - - subtitle?.let { - Text( - modifier = Modifier.fillMaxWidth(), - text = it, - style = ElementTheme.typography.fontBodyMdRegular, - color = ElementTheme.colors.textSecondary, - textAlign = TextAlign.Center, - ) - } - } - callToAction?.invoke() - } -} - -/** - * Compound component that displays a big icon, a title, an optional subtitle and an optional call to action component. - * - * @param title the title to display - * @param iconStyle the style of the [BigIcon] to display - * @param modifier the modifier to apply to this layout - * @param subtitle the optional subtitle to display. It defaults to `null` - * @param callToAction the optional call to action component to display. It defaults to `null` - */ -@Composable -fun PageTitle( - title: String, - iconStyle: BigIcon.Style, - modifier: Modifier = Modifier, - subtitle: String? = null, - callToAction: @Composable (() -> Unit)? = null, -) = PageTitle( - title = AnnotatedString(title), - iconStyle = iconStyle, - modifier = modifier, - subtitle = subtitle?.let { AnnotatedString(it) }, - callToAction = callToAction -) - -@PreviewsDayNight -@Composable -internal fun PageTitleWithIconFullPreview(@PreviewParameter(BigIconStyleProvider::class) style: BigIcon.Style) { - ElementPreview { - PageTitle( - modifier = Modifier.padding(top = 24.dp), - title = AnnotatedString("Headline"), - subtitle = AnnotatedString("Description goes here"), - iconStyle = style, - callToAction = { - TextButton(text = "Learn more", onClick = {}) - } - ) - } -} - -@PreviewsDayNight -@Composable -internal fun PageTitleWithIconMinimalPreview() { - ElementPreview { - PageTitle( - modifier = Modifier.padding(top = 24.dp), - title = "Headline", - iconStyle = BigIcon.Style.Default(CompoundIcons.CheckCircleSolid()), - ) - } -} diff --git a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/theme/components/FloatingActionButton.kt b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/theme/components/FloatingActionButton.kt index 65fd22c092..aa32c27dd9 100644 --- a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/theme/components/FloatingActionButton.kt +++ b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/theme/components/FloatingActionButton.kt @@ -10,10 +10,8 @@ package io.element.android.libraries.designsystem.theme.components import androidx.compose.foundation.interaction.MutableInteractionSource import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.padding -import androidx.compose.foundation.shape.CircleShape import androidx.compose.material3.FloatingActionButtonDefaults import androidx.compose.material3.FloatingActionButtonElevation -import androidx.compose.material3.contentColorFor import androidx.compose.runtime.Composable import androidx.compose.runtime.remember import androidx.compose.ui.Modifier @@ -21,6 +19,7 @@ import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Shape import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp +import io.element.android.compound.theme.ElementTheme import io.element.android.compound.tokens.generated.CompoundIcons import io.element.android.libraries.designsystem.preview.ElementThemedPreview import io.element.android.libraries.designsystem.preview.PreviewGroup @@ -31,10 +30,9 @@ import io.element.android.libraries.testtags.testTag fun FloatingActionButton( onClick: () -> Unit, modifier: Modifier = Modifier, - // FloatingActionButtonDefaults.shape - shape: Shape = CircleShape, - containerColor: Color = FloatingActionButtonDefaults.containerColor, - contentColor: Color = contentColorFor(containerColor), + shape: Shape = FloatingActionButtonDefaults.shape, + containerColor: Color = ElementTheme.colors.textActionAccent, + contentColor: Color = ElementTheme.colors.iconOnSolidPrimary, elevation: FloatingActionButtonElevation = FloatingActionButtonDefaults.elevation(), interactionSource: MutableInteractionSource = remember { MutableInteractionSource() }, content: @Composable () -> Unit, diff --git a/libraries/featureflag/api/src/main/kotlin/io/element/android/libraries/featureflag/api/FeatureFlags.kt b/libraries/featureflag/api/src/main/kotlin/io/element/android/libraries/featureflag/api/FeatureFlags.kt index e74304b735..c1bd0bdb80 100644 --- a/libraries/featureflag/api/src/main/kotlin/io/element/android/libraries/featureflag/api/FeatureFlags.kt +++ b/libraries/featureflag/api/src/main/kotlin/io/element/android/libraries/featureflag/api/FeatureFlags.kt @@ -140,9 +140,9 @@ enum class FeatureFlags( MediaUploadOnSendQueue( key = "feature.media_upload_through_send_queue", title = "Media upload through send queue", - description = "Experimental support for treating media uploads as regular events, with an improved retry and cancellation implementation.", - defaultValue = { buildMeta -> buildMeta.buildType != BuildType.RELEASE }, - isFinished = false, + description = "Support for treating media uploads as regular events, with an improved retry and cancellation implementation.", + defaultValue = { true }, + isFinished = true, ), MediaCaptionCreation( key = "feature.media_caption_creation", @@ -176,11 +176,11 @@ enum class FeatureFlags( isFinished = false, ), SharePos( - key = "feature.share_pos", + key = "feature.share_pos_v2", title = "Share pos in sliding sync", description = "Keep the sliding sync pos to make initial syncs faster. Requires an app restart to take effect." + "\n\nWARNING: this may cause issues with syncs.", - defaultValue = { false }, + defaultValue = { true }, // False so it's displayed in the developer options screen isFinished = false, ), diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/MatrixClient.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/MatrixClient.kt index d968ae63de..a23ee2c14e 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/MatrixClient.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/MatrixClient.kt @@ -142,7 +142,7 @@ interface MatrixClient { /** * Execute generic GET requests through the SDKs internal HTTP client. */ - suspend fun getUrl(url: String): Result + suspend fun getUrl(url: String): Result /** * Get a room preview for a given room ID or alias. This is especially useful for rooms that the user is not a member of, or hasn't joined yet. diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/core/MatrixPatterns.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/core/MatrixPatterns.kt index 70cb18e627..a44e00b664 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/core/MatrixPatterns.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/core/MatrixPatterns.kt @@ -28,11 +28,15 @@ object MatrixPatterns { private const val MATRIX_USER_IDENTIFIER_REGEX = "^@\\S*?$DOMAIN_REGEX$" private val PATTERN_CONTAIN_MATRIX_USER_IDENTIFIER = MATRIX_USER_IDENTIFIER_REGEX.toRegex() - // regex pattern to match room ids. + // !localpart:domain" used in most room versions prior to MSC4291 // Note: roomId can be arbitrary strings, including space and new line char private const val MATRIX_ROOM_IDENTIFIER_REGEX = "^!.+$DOMAIN_REGEX$" private val PATTERN_CONTAIN_MATRIX_ROOM_IDENTIFIER = MATRIX_ROOM_IDENTIFIER_REGEX.toRegex(RegexOption.DOT_MATCHES_ALL) + // "!event_id_base_64" used in room versions post MSC4291 + private const val MATRIX_ROOM_IDENTIFIER_DOMAINLESS_REGEX = "!$BASE_64_URL_SAFE_ALPHABET" + private val PATTERN_CONTAIN_MATRIX_ROOM_IDENTIFIER_DOMAINLESS = MATRIX_ROOM_IDENTIFIER_DOMAINLESS_REGEX.toRegex() + // regex pattern to match room aliases. private const val MATRIX_ROOM_ALIAS_REGEX = "^#\\S+$DOMAIN_REGEX$" private val PATTERN_CONTAIN_MATRIX_ALIAS = MATRIX_ROOM_ALIAS_REGEX.toRegex(RegexOption.IGNORE_CASE) @@ -82,7 +86,8 @@ object MatrixPatterns { fun isRoomId(str: String?): Boolean { return str != null && str.length <= MAX_IDENTIFIER_LENGTH && - str matches PATTERN_CONTAIN_MATRIX_ROOM_IDENTIFIER + (str matches PATTERN_CONTAIN_MATRIX_ROOM_IDENTIFIER_DOMAINLESS || + str matches PATTERN_CONTAIN_MATRIX_ROOM_IDENTIFIER) } /** diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/media/MediaPreviewConfig.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/media/MediaPreviewConfig.kt index 66a53b3ad3..f1adec8e89 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/media/MediaPreviewConfig.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/media/MediaPreviewConfig.kt @@ -19,7 +19,7 @@ data class MediaPreviewConfig( * The default config if unknown (no local nor server config). */ val DEFAULT = MediaPreviewConfig( - mediaPreviewValue = MediaPreviewValue.On, + mediaPreviewValue = MediaPreviewValue.DEFAULT, hideInviteAvatar = false ) } diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/media/MediaPreviewValue.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/media/MediaPreviewValue.kt index 25d489a48c..60f7552fd9 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/media/MediaPreviewValue.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/media/MediaPreviewValue.kt @@ -21,12 +21,19 @@ import io.element.android.libraries.matrix.api.room.join.JoinRule enum class MediaPreviewValue { On, Off, - Private + Private; + + companion object { + /** + * The default value if unknown (no local nor server config). + */ + val DEFAULT = On + } } -fun MediaPreviewValue.isPreviewEnabled(joinRule: JoinRule?): Boolean { +fun MediaPreviewValue?.isPreviewEnabled(joinRule: JoinRule?): Boolean { return when (this) { - On -> true + null, On -> true Off -> false Private -> when (joinRule) { is JoinRule.Private, diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/RoomInfo.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/RoomInfo.kt index 261a484fd6..48e549ab3f 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/RoomInfo.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/RoomInfo.kt @@ -72,10 +72,23 @@ data class RoomInfo( val numUnreadMentions: Long, val heroes: ImmutableList, val pinnedEventIds: ImmutableList, - val creator: UserId?, + val creators: ImmutableList, val historyVisibility: RoomHistoryVisibility, val successorRoom: SuccessorRoom?, + val roomVersion: String?, + val privilegedCreatorRole: Boolean, ) { val aliases: List get() = listOfNotNull(canonicalAlias) + alternativeAliases + + /** + * Returns the list of users with the given [role] in this room. + */ + fun usersWithRole(role: RoomMember.Role): List { + return if (role is RoomMember.Role.Owner && role.isCreator) { + this.creators + } else { + this.roomPowerLevels?.usersWithRole(role).orEmpty().toList() + } + } } diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/RoomMember.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/RoomMember.kt index 00da7e4137..c2db1e9ec5 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/RoomMember.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/RoomMember.kt @@ -25,17 +25,34 @@ data class RoomMember( /** * Role of the RoomMember, based on its [powerLevel]. */ - enum class Role(val powerLevel: Long) { - ADMIN(100L), - MODERATOR(50L), - USER(0L); + sealed interface Role { + data class Owner(val isCreator: Boolean) : Role + data object Admin : Role + data object Moderator : Role + data object User : Role + + val powerLevel: Long + get() = when (this) { + is Owner -> if (isCreator) CREATOR_POWERLEVEL else SUPERADMIN_POWERLEVEL + Admin -> ADMIN_POWERLEVEL + Moderator -> MODERATOR_POWERLEVEL + User -> USER_POWERLEVEL + } companion object { + private const val CREATOR_POWERLEVEL = Long.MAX_VALUE + private const val SUPERADMIN_POWERLEVEL = 150L + private const val ADMIN_POWERLEVEL = 100L + private const val MODERATOR_POWERLEVEL = 50L + private const val USER_POWERLEVEL = 0L + fun forPowerLevel(powerLevel: Long): Role { return when { - powerLevel >= ADMIN.powerLevel -> ADMIN - powerLevel >= MODERATOR.powerLevel -> MODERATOR - else -> USER + powerLevel == CREATOR_POWERLEVEL -> Owner(isCreator = true) + powerLevel >= SUPERADMIN_POWERLEVEL -> Owner(isCreator = false) + powerLevel >= ADMIN_POWERLEVEL -> Admin + powerLevel >= MODERATOR_POWERLEVEL -> Moderator + else -> User } } } diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/message/ReplyParameters.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/message/ReplyParameters.kt deleted file mode 100644 index 6157989a43..0000000000 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/message/ReplyParameters.kt +++ /dev/null @@ -1,22 +0,0 @@ -/* - * Copyright 2025 New Vector Ltd. - * - * SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial - * Please see LICENSE files in the repository root for full details. - */ - -package io.element.android.libraries.matrix.api.room.message - -import io.element.android.libraries.matrix.api.core.EventId - -data class ReplyParameters( - val inReplyToEventId: EventId, - val enforceThreadReply: Boolean, - val replyWithinThread: Boolean, -) - -fun replyInThread(eventId: EventId, explicitReply: Boolean = false) = ReplyParameters( - inReplyToEventId = eventId, - enforceThreadReply = true, - replyWithinThread = explicitReply, -) diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/powerlevels/MatrixRoomMembersWithRole.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/powerlevels/MatrixRoomMembersWithRole.kt index eb3afaf994..52a2dd691d 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/powerlevels/MatrixRoomMembersWithRole.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/powerlevels/MatrixRoomMembersWithRole.kt @@ -22,10 +22,10 @@ import kotlinx.coroutines.flow.map */ fun BaseRoom.usersWithRole(role: RoomMember.Role): Flow> { return roomInfoFlow - .map { it.roomPowerLevels?.users.orEmpty().filter { (_, powerLevel) -> RoomMember.Role.forPowerLevel(powerLevel) == role } } + .map { roomInfo -> roomInfo.usersWithRole(role) } .combine(membersStateFlow) { powerLevels, membersState -> membersState.activeRoomMembers() - .filter { powerLevels.containsKey(it.userId) } + .filter { powerLevels.contains(it.userId) } .toPersistentList() } .distinctUntilChanged() diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/powerlevels/RoomPowerLevels.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/powerlevels/RoomPowerLevels.kt index 08f2166494..635a6cc1f4 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/powerlevels/RoomPowerLevels.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/powerlevels/RoomPowerLevels.kt @@ -8,9 +8,52 @@ package io.element.android.libraries.matrix.api.room.powerlevels import io.element.android.libraries.matrix.api.core.UserId +import io.element.android.libraries.matrix.api.room.RoomMember import kotlinx.collections.immutable.ImmutableMap +/** + * Represents the power levels in a Matrix room, containing both the levels needed to perform actions and the custom power levels for users. + * + * **WARNING**: this won't contain the power level of the room creators, as it is not stored in the power levels event. The `users` property is private to + * enforce this restriction and try to avoid using this property directly to check if a user has a certain role. + * Use the [usersWithRole] or [roleOf] methods instead, and never for creators, that logic should be handled separately. + */ data class RoomPowerLevels( + /** + * The power levels required to perform various actions in the room. + */ val values: RoomPowerLevelsValues, - val users: ImmutableMap, -) + private val users: ImmutableMap, +) { + /** + * Returns the power level of the user in the room. + * + * If the user is not found, returns 0. + */ + fun powerLevelOf(userId: UserId): Long { + return users[userId] ?: 0L + } + + /** + * Returns the set of [UserId]s that have the given role in the room. + * + * **WARNING**: This method must not be used with a creator role. It'll result in a runtime error. + */ + fun usersWithRole(role: RoomMember.Role): Set { + return if (role is RoomMember.Role.Owner && role.isCreator) { + error("RoomPowerLevels.usersWithRole should not be used with a creator role, use roomInfo.creators instead") + } else { + users.filterValues { RoomMember.Role.forPowerLevel(it) == role }.keys + } + } + + /** + * Returns the role of the user in the room based on their power level. + * If the user is not found, returns null. + * + * **WARNING**: This method must not be used with a creator role, as it won't return any results. + */ + fun roleOf(userId: UserId): RoomMember.Role? { + return users[userId]?.let(RoomMember.Role::forPowerLevel) + } +} diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/tombstone/PredecessorRoom.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/tombstone/PredecessorRoom.kt index cd54b5a07b..4e6e8a7157 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/tombstone/PredecessorRoom.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/tombstone/PredecessorRoom.kt @@ -7,7 +7,6 @@ package io.element.android.libraries.matrix.api.room.tombstone -import io.element.android.libraries.matrix.api.core.EventId import io.element.android.libraries.matrix.api.core.RoomId /** @@ -17,15 +16,10 @@ import io.element.android.libraries.matrix.api.core.RoomId * about the predecessor room. * * A room is tombstoned if it has received a m.room.tombstone state event. - * */ data class PredecessorRoom( /** * The ID of the replaced room. */ val roomId: RoomId, - /** - * The event ID of the last known event in the predecessor room. - */ - val lastEventId: EventId, ) diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/roomdirectory/RoomDescription.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/roomdirectory/RoomDescription.kt index 2f0436dd2e..16aa58de28 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/roomdirectory/RoomDescription.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/roomdirectory/RoomDescription.kt @@ -23,6 +23,9 @@ data class RoomDescription( enum class JoinRule { PUBLIC, KNOCK, + RESTRICTED, + KNOCK_RESTRICTED, + INVITE, UNKNOWN } } diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/Timeline.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/Timeline.kt index 00652a4fa9..9bcdafb913 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/Timeline.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/Timeline.kt @@ -19,7 +19,6 @@ import io.element.android.libraries.matrix.api.media.VideoInfo import io.element.android.libraries.matrix.api.poll.PollKind import io.element.android.libraries.matrix.api.room.IntentionalMention import io.element.android.libraries.matrix.api.room.location.AssetType -import io.element.android.libraries.matrix.api.room.message.ReplyParameters import io.element.android.libraries.matrix.api.timeline.item.event.EventOrTransactionId import io.element.android.libraries.matrix.api.timeline.item.event.InReplyTo import io.element.android.libraries.matrix.api.timeline.item.event.toEventOrTransactionId @@ -76,7 +75,7 @@ interface Timeline : AutoCloseable { ): Result suspend fun replyMessage( - replyParameters: ReplyParameters, + repliedToEventId: EventId, body: String, htmlBody: String?, intentionalMentions: List, @@ -90,7 +89,7 @@ interface Timeline : AutoCloseable { caption: String?, formattedCaption: String?, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId?, ): Result suspend fun sendVideo( @@ -100,7 +99,7 @@ interface Timeline : AutoCloseable { caption: String?, formattedCaption: String?, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId?, ): Result suspend fun sendAudio( @@ -109,7 +108,7 @@ interface Timeline : AutoCloseable { caption: String?, formattedCaption: String?, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId?, ): Result suspend fun sendFile( @@ -118,7 +117,7 @@ interface Timeline : AutoCloseable { caption: String?, formattedCaption: String?, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId?, ): Result /** @@ -131,7 +130,7 @@ interface Timeline : AutoCloseable { * @param zoomLevel Optional zoom level to display the map at. * @param assetType Optional type of the location asset. * Set to SENDER if sharing own location. Set to PIN if sharing any location. - * @param replyParameters Optional reply parameters to use when sending the location. + * @param inReplyToEventId Optional [EventId] for the event this message should reply to. */ suspend fun sendLocation( body: String, @@ -139,7 +138,7 @@ interface Timeline : AutoCloseable { description: String? = null, zoomLevel: Int? = null, assetType: AssetType? = null, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId?, ): Result suspend fun sendVoiceMessage( @@ -147,7 +146,7 @@ interface Timeline : AutoCloseable { audioInfo: AudioInfo, waveform: List, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId?, ): Result suspend fun redactEvent(eventOrTransactionId: EventOrTransactionId, reason: String?): Result diff --git a/libraries/matrix/api/src/test/kotlin/io/element/android/libraries/matrix/api/core/MatrixPatternsTest.kt b/libraries/matrix/api/src/test/kotlin/io/element/android/libraries/matrix/api/core/MatrixPatternsTest.kt index a67e50ccf9..96a40d04ba 100644 --- a/libraries/matrix/api/src/test/kotlin/io/element/android/libraries/matrix/api/core/MatrixPatternsTest.kt +++ b/libraries/matrix/api/src/test/kotlin/io/element/android/libraries/matrix/api/core/MatrixPatternsTest.kt @@ -94,7 +94,9 @@ class MatrixPatternsTest { assertThat(MatrixPatterns.isRoomId("#room:server.com")).isFalse() assertThat(MatrixPatterns.isRoomId("\$room:server.com")).isFalse() assertThat(MatrixPatterns.isRoomId("!${longLocalPart}a:server.com")).isFalse() + assertThat(MatrixPatterns.isRoomId("!9BozuV4TBw6rfRW@rMEgZ5v-jNk1D6FA8Hd1OsWqT9k")).isFalse() + assertThat(MatrixPatterns.isRoomId("!9BozuV4TBw6rfRW3rMEgZ5v-jNk1D6FA8Hd1OsWqT9k")).isTrue() assertThat(MatrixPatterns.isRoomId("!room:server.com")).isTrue() assertThat(MatrixPatterns.isRoomId("!$longLocalPart:server.com")).isTrue() assertThat(MatrixPatterns.isRoomId("!#test/room\nversion 11, with @đŸˆïž:maunium.net")).isTrue() diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/RustMatrixClient.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/RustMatrixClient.kt index fca6439c05..83369b4c59 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/RustMatrixClient.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/RustMatrixClient.kt @@ -272,7 +272,7 @@ class RustMatrixClient( ?: sessionId.value.substringAfter(":") } - override suspend fun getUrl(url: String): Result = withContext(sessionDispatcher) { + override suspend fun getUrl(url: String): Result = withContext(sessionDispatcher) { runCatchingExceptions { innerClient.getUrl(url) } @@ -343,7 +343,7 @@ class RustMatrixClient( powerLevelContentOverride = defaultRoomCreationPowerLevels.copy( invite = if (createRoomParams.joinRuleOverride == JoinRule.Knock) { // override the invite power level so it's the same as kick. - RoomMember.Role.MODERATOR.powerLevel.toInt() + RoomMember.Role.Moderator.powerLevel.toInt() } else { null } diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/auth/RustMatrixAuthenticationService.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/auth/RustMatrixAuthenticationService.kt index a66c80c691..a1ffbc5da9 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/auth/RustMatrixAuthenticationService.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/auth/RustMatrixAuthenticationService.kt @@ -200,6 +200,7 @@ class RustMatrixAuthenticationService @Inject constructor( loginHint = loginHint, // If we want to restore a previous session for which we have encryption keys, we can pass the deviceId here. At the moment, we don't deviceId = null, + additionalScopes = emptyList(), ) val url = oAuthAuthorizationData.loginUrl() pendingOAuthAuthorizationData = oAuthAuthorizationData diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/media/RustMediaPreviewService.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/media/RustMediaPreviewService.kt index e4e9bc07bd..15e86ab983 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/media/RustMediaPreviewService.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/media/RustMediaPreviewService.kt @@ -79,8 +79,9 @@ private fun MediaPreviewValue.into(): MediaPreviews { } } -private fun MediaPreviews.into(): MediaPreviewValue { +private fun MediaPreviews?.into(): MediaPreviewValue { return when (this) { + null -> MediaPreviewValue.DEFAULT MediaPreviews.ON -> MediaPreviewValue.On MediaPreviews.OFF -> MediaPreviewValue.Off MediaPreviews.PRIVATE -> MediaPreviewValue.Private diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/RoomInfoMapper.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/RoomInfoMapper.kt index 5b5d1f69f0..199abcad44 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/RoomInfoMapper.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/RoomInfoMapper.kt @@ -35,7 +35,7 @@ class RoomInfoMapper { fun map(rustRoomInfo: RustRoomInfo): RoomInfo = rustRoomInfo.let { return RoomInfo( id = RoomId(it.id), - creator = it.creator?.let(::UserId), + creators = it.creators.orEmpty().map(::UserId).toImmutableList(), name = it.displayName, rawName = it.rawName, topic = it.topic, @@ -71,6 +71,8 @@ class RoomInfoMapper { numUnreadNotifications = it.numUnreadNotifications.toLong(), historyVisibility = it.historyVisibility.map(), successorRoom = it.successorRoom?.map(), + roomVersion = it.roomVersion, + privilegedCreatorRole = it.privilegedCreatorsRole, ) } } diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/RustBaseRoom.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/RustBaseRoom.kt index 734531a7cc..975185242b 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/RustBaseRoom.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/RustBaseRoom.kt @@ -128,7 +128,11 @@ class RustBaseRoom( override suspend fun userRole(userId: UserId): Result = withContext(roomDispatcher) { runCatchingExceptions { - RoomMemberMapper.mapRole(innerRoom.suggestedRoleForUser(userId.value)) + val powerLevel = roomInfoFlow.value.roomPowerLevels?.powerLevelOf(userId) ?: 0L + RoomMemberMapper.mapRole( + role = innerRoom.suggestedRoleForUser(userId.value), + powerLevel = powerLevel, + ) } } @@ -293,7 +297,7 @@ class RustBaseRoom( override suspend fun reportRoom(reason: String?): Result = withContext(roomDispatcher) { runCatchingExceptions { Timber.d("reportRoom $roomId") - innerRoom.reportRoom(reason) + innerRoom.reportRoom(reason.orEmpty()) } } } diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/member/RoomMemberMapper.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/member/RoomMemberMapper.kt index 99fec55a02..9411ae3aab 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/member/RoomMemberMapper.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/member/RoomMemberMapper.kt @@ -10,29 +10,42 @@ package io.element.android.libraries.matrix.impl.room.member import io.element.android.libraries.matrix.api.core.UserId import io.element.android.libraries.matrix.api.room.RoomMember import io.element.android.libraries.matrix.api.room.RoomMembershipState +import io.element.android.libraries.matrix.impl.room.powerlevels.into import uniffi.matrix_sdk.RoomMemberRole import org.matrix.rustcomponents.sdk.MembershipState as RustMembershipState import org.matrix.rustcomponents.sdk.RoomMember as RustRoomMember object RoomMemberMapper { - fun map(roomMember: RustRoomMember): RoomMember = RoomMember( - userId = UserId(roomMember.userId), - displayName = roomMember.displayName, - avatarUrl = roomMember.avatarUrl, - membership = mapMembership(roomMember.membership), - isNameAmbiguous = roomMember.isNameAmbiguous, - powerLevel = roomMember.powerLevel, - normalizedPowerLevel = roomMember.normalizedPowerLevel, - isIgnored = roomMember.isIgnored, - role = mapRole(roomMember.suggestedRoleForPowerLevel), - membershipChangeReason = roomMember.membershipChangeReason - ) + fun map(roomMember: RustRoomMember): RoomMember { + val powerLevel = roomMember.powerLevel.into() + return RoomMember( + userId = UserId(roomMember.userId), + displayName = roomMember.displayName, + avatarUrl = roomMember.avatarUrl, + membership = mapMembership(roomMember.membership), + isNameAmbiguous = roomMember.isNameAmbiguous, + powerLevel = powerLevel, + normalizedPowerLevel = roomMember.normalizedPowerLevel.into(), + isIgnored = roomMember.isIgnored, + role = mapRole(roomMember.suggestedRoleForPowerLevel, powerLevel), + membershipChangeReason = roomMember.membershipChangeReason + ) + } - fun mapRole(role: RoomMemberRole): RoomMember.Role = + fun mapRole(role: RoomMemberRole, powerLevel: Long?): RoomMember.Role = when (role) { - RoomMemberRole.ADMINISTRATOR -> RoomMember.Role.ADMIN - RoomMemberRole.MODERATOR -> RoomMember.Role.MODERATOR - RoomMemberRole.USER -> RoomMember.Role.USER + RoomMemberRole.CREATOR -> RoomMember.Role.Owner(isCreator = true) + RoomMemberRole.ADMINISTRATOR -> { + val superAdmin = RoomMember.Role.Owner(isCreator = false) + val powerLevelOrDefault = powerLevel ?: 0L + if (powerLevelOrDefault >= superAdmin.powerLevel) { + superAdmin + } else { + RoomMember.Role.Admin + } + } + RoomMemberRole.MODERATOR -> RoomMember.Role.Moderator + RoomMemberRole.USER -> RoomMember.Role.User } fun mapMembership(membershipState: RustMembershipState): RoomMembershipState = diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/message/ReplyParameters.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/message/ReplyParameters.kt deleted file mode 100644 index 415d493e7d..0000000000 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/message/ReplyParameters.kt +++ /dev/null @@ -1,16 +0,0 @@ -/* - * Copyright 2025 New Vector Ltd. - * - * SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial - * Please see LICENSE files in the repository root for full details. - */ - -package io.element.android.libraries.matrix.impl.room.message - -import io.element.android.libraries.matrix.api.room.message.ReplyParameters - -fun ReplyParameters.map() = org.matrix.rustcomponents.sdk.ReplyParameters( - eventId = inReplyToEventId.value, - enforceThread = enforceThreadReply, - replyWithinThread = replyWithinThread, -) diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/powerlevels/RoomPowerLevelsValuesMapper.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/powerlevels/RoomPowerLevelsValuesMapper.kt index 840a5da428..9121d8bdf0 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/powerlevels/RoomPowerLevelsValuesMapper.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/powerlevels/RoomPowerLevelsValuesMapper.kt @@ -7,7 +7,9 @@ package io.element.android.libraries.matrix.impl.room.powerlevels +import io.element.android.libraries.matrix.api.room.RoomMember import io.element.android.libraries.matrix.api.room.powerlevels.RoomPowerLevelsValues +import org.matrix.rustcomponents.sdk.PowerLevel import org.matrix.rustcomponents.sdk.RoomPowerLevelsValues as RustRoomPowerLevelsValues object RoomPowerLevelsValuesMapper { @@ -24,3 +26,8 @@ object RoomPowerLevelsValuesMapper { ) } } + +fun PowerLevel.into(): Long = when (this) { + PowerLevel.Infinite -> RoomMember.Role.Owner(isCreator = true).powerLevel + is PowerLevel.Value -> this.value +} diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/tombstone/PredecessorRoom.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/tombstone/PredecessorRoom.kt index 08daee4f19..a09867bf6c 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/tombstone/PredecessorRoom.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/tombstone/PredecessorRoom.kt @@ -7,14 +7,10 @@ package io.element.android.libraries.matrix.impl.room.tombstone -import io.element.android.libraries.matrix.api.core.EventId import io.element.android.libraries.matrix.api.core.RoomId import io.element.android.libraries.matrix.api.room.tombstone.PredecessorRoom import org.matrix.rustcomponents.sdk.PredecessorRoom as RustPredecessorRoom fun RustPredecessorRoom.map(): PredecessorRoom { - return PredecessorRoom( - roomId = RoomId(roomId), - lastEventId = EventId(lastEventId), - ) + return PredecessorRoom(roomId = RoomId(roomId)) } diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/roomdirectory/RoomDescriptionMapper.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/roomdirectory/RoomDescriptionMapper.kt index 106c66c522..76a6394e94 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/roomdirectory/RoomDescriptionMapper.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/roomdirectory/RoomDescriptionMapper.kt @@ -32,6 +32,9 @@ internal fun PublicRoomJoinRule?.map(): RoomDescription.JoinRule { return when (this) { PublicRoomJoinRule.PUBLIC -> RoomDescription.JoinRule.PUBLIC PublicRoomJoinRule.KNOCK -> RoomDescription.JoinRule.KNOCK + PublicRoomJoinRule.RESTRICTED -> RoomDescription.JoinRule.RESTRICTED + PublicRoomJoinRule.KNOCK_RESTRICTED -> RoomDescription.JoinRule.KNOCK_RESTRICTED + PublicRoomJoinRule.INVITE -> RoomDescription.JoinRule.INVITE null -> RoomDescription.JoinRule.UNKNOWN } } diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/timeline/RustTimeline.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/timeline/RustTimeline.kt index 404de3a248..00f89e39a3 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/timeline/RustTimeline.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/timeline/RustTimeline.kt @@ -23,7 +23,6 @@ import io.element.android.libraries.matrix.api.room.IntentionalMention import io.element.android.libraries.matrix.api.room.JoinedRoom import io.element.android.libraries.matrix.api.room.isDm import io.element.android.libraries.matrix.api.room.location.AssetType -import io.element.android.libraries.matrix.api.room.message.ReplyParameters import io.element.android.libraries.matrix.api.timeline.MatrixTimelineItem import io.element.android.libraries.matrix.api.timeline.ReceiptType import io.element.android.libraries.matrix.api.timeline.Timeline @@ -37,7 +36,6 @@ import io.element.android.libraries.matrix.impl.media.toMSC3246range import io.element.android.libraries.matrix.impl.poll.toInner import io.element.android.libraries.matrix.impl.room.RoomContentForwarder import io.element.android.libraries.matrix.impl.room.location.toInner -import io.element.android.libraries.matrix.impl.room.message.map import io.element.android.libraries.matrix.impl.timeline.item.event.EventTimelineItemMapper import io.element.android.libraries.matrix.impl.timeline.item.event.TimelineEventContentMapper import io.element.android.libraries.matrix.impl.timeline.item.virtual.VirtualTimelineItemMapper @@ -206,18 +204,18 @@ class RustTimeline( _timelineItems, backwardPaginationStatus, forwardPaginationStatus, - joinedRoom.roomInfoFlow.map { it.creator to it.isDm }.distinctUntilChanged(), + joinedRoom.roomInfoFlow.map { it.creators to it.isDm }.distinctUntilChanged(), ) { timelineItems, backwardPaginationStatus, forwardPaginationStatus, - (roomCreator, isDm) -> + (roomCreators, isDm) -> withContext(dispatcher) { timelineItems .let { items -> roomBeginningPostProcessor.process( items = items, isDm = isDm, - roomCreator = roomCreator, + roomCreator = roomCreators.firstOrNull(), hasMoreToLoadBackwards = backwardPaginationStatus.hasMoreToLoad, ) } @@ -320,7 +318,7 @@ class RustTimeline( } override suspend fun replyMessage( - replyParameters: ReplyParameters, + repliedToEventId: EventId, body: String, htmlBody: String?, intentionalMentions: List, @@ -330,7 +328,7 @@ class RustTimeline( val msg = MessageEventContent.from(body, htmlBody, intentionalMentions) inner.sendReply( msg = msg, - replyParams = replyParameters.map(), + eventId = repliedToEventId.value, ) } } @@ -342,7 +340,7 @@ class RustTimeline( caption: String?, formattedCaption: String?, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId?, ): Result { val useSendQueue = featureFlagsService.isFeatureEnabled(FeatureFlags.MediaUploadOnSendQueue) return sendAttachment(listOfNotNull(file, thumbnailFile)) { @@ -355,7 +353,7 @@ class RustTimeline( }, useSendQueue = useSendQueue, mentions = null, - replyParams = replyParameters?.map(), + inReplyTo = inReplyToEventId?.value, ), thumbnailPath = thumbnailFile?.path, imageInfo = imageInfo.map(), @@ -371,7 +369,7 @@ class RustTimeline( caption: String?, formattedCaption: String?, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId?, ): Result { val useSendQueue = featureFlagsService.isFeatureEnabled(FeatureFlags.MediaUploadOnSendQueue) return sendAttachment(listOfNotNull(file, thumbnailFile)) { @@ -384,7 +382,7 @@ class RustTimeline( }, useSendQueue = useSendQueue, mentions = null, - replyParams = replyParameters?.map(), + inReplyTo = inReplyToEventId?.value, ), thumbnailPath = thumbnailFile?.path, videoInfo = videoInfo.map(), @@ -399,7 +397,7 @@ class RustTimeline( caption: String?, formattedCaption: String?, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId?, ): Result { val useSendQueue = featureFlagsService.isFeatureEnabled(FeatureFlags.MediaUploadOnSendQueue) return sendAttachment(listOf(file)) { @@ -412,7 +410,7 @@ class RustTimeline( }, useSendQueue = useSendQueue, mentions = null, - replyParams = replyParameters?.map(), + inReplyTo = inReplyToEventId?.value, ), audioInfo = audioInfo.map(), progressWatcher = progressCallback?.toProgressWatcher() @@ -426,7 +424,7 @@ class RustTimeline( caption: String?, formattedCaption: String?, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId?, ): Result { val useSendQueue = featureFlagsService.isFeatureEnabled(FeatureFlags.MediaUploadOnSendQueue) return sendAttachment(listOf(file)) { @@ -439,7 +437,7 @@ class RustTimeline( }, useSendQueue = useSendQueue, mentions = null, - replyParams = replyParameters?.map(), + inReplyTo = inReplyToEventId?.value, ), fileInfo = fileInfo.map(), progressWatcher = progressCallback?.toProgressWatcher(), @@ -470,7 +468,7 @@ class RustTimeline( description: String?, zoomLevel: Int?, assetType: AssetType?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId?, ): Result = withContext(dispatcher) { runCatchingExceptions { inner.sendLocation( @@ -479,7 +477,7 @@ class RustTimeline( description = description, zoomLevel = zoomLevel?.toUByte(), assetType = assetType?.toInner(), - replyParams = replyParameters?.map(), + repliedToEventId = inReplyToEventId?.value, ) } } @@ -489,7 +487,7 @@ class RustTimeline( audioInfo: AudioInfo, waveform: List, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId?, ): Result { val useSendQueue = featureFlagsService.isFeatureEnabled(FeatureFlags.MediaUploadOnSendQueue) return sendAttachment(listOf(file)) { @@ -501,7 +499,7 @@ class RustTimeline( formattedCaption = null, useSendQueue = useSendQueue, mentions = null, - replyParams = replyParameters?.map(), + inReplyTo = inReplyToEventId?.value, ), audioInfo = audioInfo.map(), waveform = waveform.toMSC3246range(), diff --git a/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/fixtures/factories/RoomInfo.kt b/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/fixtures/factories/RoomInfo.kt index 9ba3c100a7..b076b33f80 100644 --- a/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/fixtures/factories/RoomInfo.kt +++ b/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/fixtures/factories/RoomInfo.kt @@ -7,7 +7,6 @@ package io.element.android.libraries.matrix.impl.fixtures.factories -import io.element.android.libraries.matrix.api.core.UserId import io.element.android.libraries.matrix.impl.fixtures.fakes.FakeFfiRoomPowerLevels import io.element.android.libraries.matrix.test.A_ROOM_ID import io.element.android.libraries.matrix.test.A_ROOM_NAME @@ -52,10 +51,12 @@ fun aRustRoomInfo( numUnreadNotifications: ULong = 0uL, numUnreadMentions: ULong = 0uL, pinnedEventIds: List = listOf(), - roomCreator: UserId? = null, + roomCreators: List? = emptyList(), joinRule: JoinRule? = null, historyVisibility: RoomHistoryVisibility = RoomHistoryVisibility.Joined, successorRoom: SuccessorRoom? = null, + roomVersion: String? = "11", + privilegedCreatorsRole: Boolean = false, ) = RoomInfo( id = id, displayName = displayName, @@ -86,8 +87,10 @@ fun aRustRoomInfo( numUnreadNotifications = numUnreadNotifications, numUnreadMentions = numUnreadMentions, pinnedEventIds = pinnedEventIds, - creator = roomCreator?.value, + creators = roomCreators, joinRule = joinRule, historyVisibility = historyVisibility, successorRoom = successorRoom, + roomVersion = roomVersion, + privilegedCreatorsRole = privilegedCreatorsRole, ) diff --git a/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/fixtures/factories/RoomMember.kt b/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/fixtures/factories/RoomMember.kt index a38496222c..2922762548 100644 --- a/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/fixtures/factories/RoomMember.kt +++ b/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/fixtures/factories/RoomMember.kt @@ -9,6 +9,7 @@ package io.element.android.libraries.matrix.impl.fixtures.factories import io.element.android.libraries.matrix.api.core.UserId import org.matrix.rustcomponents.sdk.MembershipState +import org.matrix.rustcomponents.sdk.PowerLevel import org.matrix.rustcomponents.sdk.RoomMember import uniffi.matrix_sdk.RoomMemberRole @@ -18,7 +19,7 @@ fun aRustRoomMember( avatarUrl: String? = null, membership: MembershipState = MembershipState.Join, isNameAmbiguous: Boolean = false, - powerLevel: Long = 0L, + powerLevel: PowerLevel = PowerLevel.Value(0L), isIgnored: Boolean = false, role: RoomMemberRole = RoomMemberRole.USER, membershipChangeReason: String? = null, diff --git a/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/fixtures/fakes/FakeFfiRoom.kt b/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/fixtures/fakes/FakeFfiRoom.kt index 45aa970658..41a0424991 100644 --- a/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/fixtures/fakes/FakeFfiRoom.kt +++ b/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/fixtures/fakes/FakeFfiRoom.kt @@ -16,6 +16,7 @@ import org.matrix.rustcomponents.sdk.NoPointer import org.matrix.rustcomponents.sdk.Room import org.matrix.rustcomponents.sdk.RoomInfo import org.matrix.rustcomponents.sdk.RoomMembersIterator +import uniffi.matrix_sdk.RoomMemberRole class FakeFfiRoom( private val roomId: RoomId = A_ROOM_ID, @@ -23,6 +24,7 @@ class FakeFfiRoom( private val getMembersNoSync: () -> RoomMembersIterator = { lambdaError() }, private val leaveLambda: () -> Unit = { lambdaError() }, private val latestEventLambda: () -> EventTimelineItem? = { lambdaError() }, + private val suggestedRoleForUserLambda: (String) -> RoomMemberRole = { lambdaError() }, private val roomInfo: RoomInfo = aRustRoomInfo(id = roomId.value), ) : Room(NoPointer) { override fun id(): String { @@ -49,6 +51,10 @@ class FakeFfiRoom( return latestEventLambda() } + override suspend fun suggestedRoleForUser(userId: String): RoomMemberRole { + return suggestedRoleForUserLambda(userId) + } + override fun close() { // No-op } diff --git a/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/room/RoomInfoMapperTest.kt b/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/room/RoomInfoMapperTest.kt index 7140a90dc4..90ff2b9211 100644 --- a/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/room/RoomInfoMapperTest.kt +++ b/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/room/RoomInfoMapperTest.kt @@ -31,6 +31,7 @@ import io.element.android.libraries.matrix.test.A_USER_ID_3 import io.element.android.libraries.matrix.test.A_USER_ID_6 import io.element.android.libraries.matrix.test.room.aRoomMember import io.element.android.libraries.matrix.test.room.defaultRoomPowerLevelValues +import kotlinx.collections.immutable.persistentListOf import kotlinx.collections.immutable.persistentMapOf import kotlinx.collections.immutable.toImmutableList import kotlinx.collections.immutable.toPersistentList @@ -78,8 +79,10 @@ class RoomInfoMapperTest { numUnreadNotifications = 13uL, numUnreadMentions = 14uL, pinnedEventIds = listOf(AN_EVENT_ID.value), - roomCreator = A_USER_ID, + roomCreators = listOf(A_USER_ID.value), historyVisibility = RustRoomHistoryVisibility.Joined, + roomVersion = "12", + privilegedCreatorsRole = true, ) ) ).isEqualTo( @@ -119,13 +122,15 @@ class RoomInfoMapperTest { ) ).toImmutableList(), pinnedEventIds = listOf(AN_EVENT_ID).toPersistentList(), - creator = A_USER_ID, + creators = persistentListOf(A_USER_ID), isMarkedUnread = false, numUnreadMessages = 12L, numUnreadNotifications = 13L, numUnreadMentions = 14L, historyVisibility = RoomHistoryVisibility.Joined, - successorRoom = null + successorRoom = null, + roomVersion = "12", + privilegedCreatorRole = true, ) ) } @@ -166,7 +171,9 @@ class RoomInfoMapperTest { numUnreadNotifications = 13uL, numUnreadMentions = 14uL, pinnedEventIds = emptyList(), - roomCreator = null, + roomCreators = null, + roomVersion = "12", + privilegedCreatorsRole = true, ) ) ).isEqualTo( @@ -201,12 +208,14 @@ class RoomInfoMapperTest { activeRoomCallParticipants = emptyList().toImmutableList(), heroes = emptyList().toImmutableList(), pinnedEventIds = emptyList().toPersistentList(), - creator = null, + creators = persistentListOf(), isMarkedUnread = true, numUnreadMessages = 12L, numUnreadNotifications = 13L, numUnreadMentions = 14L, historyVisibility = RoomHistoryVisibility.Joined, + roomVersion = "12", + privilegedCreatorRole = true, ) ) } diff --git a/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/room/RustBaseRoomTest.kt b/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/room/RustBaseRoomTest.kt index f25f568c5a..e24eca53cb 100644 --- a/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/room/RustBaseRoomTest.kt +++ b/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/room/RustBaseRoomTest.kt @@ -12,20 +12,26 @@ import app.cash.turbine.test import com.google.common.truth.Truth.assertThat import io.element.android.libraries.matrix.api.room.CurrentUserMembership import io.element.android.libraries.matrix.api.room.RoomInfo +import io.element.android.libraries.matrix.api.room.RoomMember import io.element.android.libraries.matrix.api.room.RoomMembershipObserver +import io.element.android.libraries.matrix.api.room.powerlevels.RoomPowerLevels +import io.element.android.libraries.matrix.api.room.powerlevels.RoomPowerLevelsValues import io.element.android.libraries.matrix.api.timeline.item.event.MembershipChange import io.element.android.libraries.matrix.impl.fixtures.fakes.FakeFfiRoom import io.element.android.libraries.matrix.impl.fixtures.fakes.FakeFfiRoomListService import io.element.android.libraries.matrix.test.A_DEVICE_ID import io.element.android.libraries.matrix.test.A_SESSION_ID +import io.element.android.libraries.matrix.test.A_USER_ID import io.element.android.libraries.matrix.test.room.aRoomInfo import io.element.android.tests.testutils.testCoroutineDispatchers +import kotlinx.collections.immutable.persistentMapOf import kotlinx.coroutines.flow.SharingStarted import kotlinx.coroutines.flow.shareIn import kotlinx.coroutines.isActive import kotlinx.coroutines.test.TestScope import kotlinx.coroutines.test.runTest import org.junit.Test +import uniffi.matrix_sdk.RoomMemberRole class RustBaseRoomTest { @Test @@ -111,6 +117,29 @@ class RustBaseRoomTest { } } + @Test + fun `userRole loads and maps the role`() = runTest { + val rustBaseRoom = createRustBaseRoom( + initialRoomInfo = aRoomInfo( + roomPowerLevels = RoomPowerLevels( + values = RoomPowerLevelsValues(50, 50, 50, 50, 50, 50, 50, 50), + users = persistentMapOf(A_USER_ID to 100L) + ) + ), + innerRoom = FakeFfiRoom( + suggestedRoleForUserLambda = { userId -> + // Simulate the role suggestion based on power level + if (userId == A_USER_ID.value) RoomMemberRole.ADMINISTRATOR else RoomMemberRole.USER + } + ), + ) + val result = rustBaseRoom.userRole(A_USER_ID).getOrNull() + assertThat(result).isNotNull() + assertThat(result).isEqualTo(RoomMember.Role.Admin) + + rustBaseRoom.destroy() + } + private suspend fun TestScope.leaveRoomAndObserveMembershipChange( roomMembershipObserver: RoomMembershipObserver, rustBaseRoom: RustBaseRoom, diff --git a/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/room/member/RoomMemberMapperTest.kt b/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/room/member/RoomMemberMapperTest.kt index 7b26d13dbc..6c469c6eb8 100644 --- a/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/room/member/RoomMemberMapperTest.kt +++ b/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/room/member/RoomMemberMapperTest.kt @@ -17,9 +17,19 @@ import org.matrix.rustcomponents.sdk.MembershipState as RustMembershipState class RoomMemberMapperTest { @Test fun mapRole() { - assertThat(RoomMemberMapper.mapRole(RoomMemberRole.USER)).isEqualTo(RoomMember.Role.USER) - assertThat(RoomMemberMapper.mapRole(RoomMemberRole.MODERATOR)).isEqualTo(RoomMember.Role.MODERATOR) - assertThat(RoomMemberMapper.mapRole(RoomMemberRole.ADMINISTRATOR)).isEqualTo(RoomMember.Role.ADMIN) + assertThat(RoomMemberMapper.mapRole(RoomMemberRole.USER, 0L)).isEqualTo(RoomMember.Role.User) + assertThat(RoomMemberMapper.mapRole(RoomMemberRole.MODERATOR, 50L)).isEqualTo(RoomMember.Role.Moderator) + assertThat(RoomMemberMapper.mapRole(RoomMemberRole.ADMINISTRATOR, 100L)).isEqualTo(RoomMember.Role.Admin) + assertThat(RoomMemberMapper.mapRole(RoomMemberRole.ADMINISTRATOR, 150L)).isEqualTo(RoomMember.Role.Owner(isCreator = false)) + assertThat(RoomMemberMapper.mapRole(RoomMemberRole.CREATOR, Long.MAX_VALUE)).isEqualTo(RoomMember.Role.Owner(isCreator = true)) + + // `null` power level defaults to USER role + assertThat(RoomMemberMapper.mapRole(RoomMemberRole.ADMINISTRATOR, null)).isEqualTo(RoomMember.Role.Admin) + + // Power level is only taken into account for ADMINISTRATOR role + assertThat(RoomMemberMapper.mapRole(RoomMemberRole.USER, 123L)).isEqualTo(RoomMember.Role.User) + assertThat(RoomMemberMapper.mapRole(RoomMemberRole.MODERATOR, 1L)).isEqualTo(RoomMember.Role.Moderator) + assertThat(RoomMemberMapper.mapRole(RoomMemberRole.CREATOR, 0L)).isEqualTo(RoomMember.Role.Owner(isCreator = true)) } @Test diff --git a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/FakeMatrixClient.kt b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/FakeMatrixClient.kt index 9b609b39c7..a36704c342 100644 --- a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/FakeMatrixClient.kt +++ b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/FakeMatrixClient.kt @@ -84,7 +84,7 @@ class FakeMatrixClient( private val getNotJoinedRoomResult: (RoomIdOrAlias, List) -> Result = { _, _ -> lambdaError() }, private val clearCacheLambda: () -> Unit = { lambdaError() }, private val userIdServerNameLambda: () -> String = { lambdaError() }, - private val getUrlLambda: (String) -> Result = { lambdaError() }, + private val getUrlLambda: (String) -> Result = { lambdaError() }, private val canDeactivateAccountResult: () -> Boolean = { lambdaError() }, private val deactivateAccountResult: (String, Boolean) -> Result = { _, _ -> lambdaError() }, private val currentSlidingSyncVersionLambda: () -> Result = { lambdaError() }, @@ -324,7 +324,7 @@ class FakeMatrixClient( return userIdServerNameLambda() } - override suspend fun getUrl(url: String): Result { + override suspend fun getUrl(url: String): Result { return getUrlLambda(url) } diff --git a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/encryption/FakeEncryptionService.kt b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/encryption/FakeEncryptionService.kt index 25e8a535b0..7226465772 100644 --- a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/encryption/FakeEncryptionService.kt +++ b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/encryption/FakeEncryptionService.kt @@ -26,7 +26,8 @@ class FakeEncryptionService( private val pinUserIdentityResult: (UserId) -> Result = { lambdaError() }, private val isUserVerifiedResult: (UserId) -> Result = { lambdaError() }, private val withdrawVerificationResult: (UserId) -> Result = { lambdaError() }, - private val getUserIdentityResult: (UserId) -> Result = { lambdaError() } + private val getUserIdentityResult: (UserId) -> Result = { lambdaError() }, + private val enableRecoveryLambda: (Boolean) -> Result = { lambdaError() }, ) : EncryptionService { private var disableRecoveryFailure: Exception? = null override val backupStateStateFlow: MutableStateFlow = MutableStateFlow(BackupState.UNKNOWN) @@ -87,7 +88,7 @@ class FakeEncryptionService( } override suspend fun enableRecovery(waitForBackupsToUpload: Boolean): Result = simulateLongTask { - return Result.success(Unit) + return enableRecoveryLambda(waitForBackupsToUpload) } fun givenWaitForBackupUploadSteadyStateFlow(flow: Flow) { diff --git a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/room/RoomInfoFixture.kt b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/room/RoomInfoFixture.kt index d7f9ccd6be..6955942146 100644 --- a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/room/RoomInfoFixture.kt +++ b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/room/RoomInfoFixture.kt @@ -59,12 +59,14 @@ fun aRoomInfo( activeRoomCallParticipants: List = emptyList(), heroes: List = emptyList(), pinnedEventIds: List = emptyList(), - roomCreator: UserId? = null, + roomCreators: List = emptyList(), isMarkedUnread: Boolean = false, numUnreadMessages: Long = 0, numUnreadNotifications: Long = 0, numUnreadMentions: Long = 0, historyVisibility: RoomHistoryVisibility = RoomHistoryVisibility.Joined, + roomVersion: String? = "11", + privilegedCreatorRole: Boolean = false, ) = RoomInfo( id = id, name = name, @@ -93,10 +95,12 @@ fun aRoomInfo( activeRoomCallParticipants = activeRoomCallParticipants.toImmutableList(), heroes = heroes.toImmutableList(), pinnedEventIds = pinnedEventIds.toImmutableList(), - creator = roomCreator, + creators = roomCreators.toImmutableList(), isMarkedUnread = isMarkedUnread, numUnreadMessages = numUnreadMessages, numUnreadNotifications = numUnreadNotifications, numUnreadMentions = numUnreadMentions, historyVisibility = historyVisibility, + roomVersion = roomVersion, + privilegedCreatorRole = privilegedCreatorRole, ) diff --git a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/room/RoomMemberFixture.kt b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/room/RoomMemberFixture.kt index f4f7f3d835..4c620dfd5a 100644 --- a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/room/RoomMemberFixture.kt +++ b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/room/RoomMemberFixture.kt @@ -20,7 +20,7 @@ fun aRoomMember( powerLevel: Long = 0L, normalizedPowerLevel: Long = 0L, isIgnored: Boolean = false, - role: RoomMember.Role = RoomMember.Role.USER, + role: RoomMember.Role = RoomMember.Role.User, membershipChangeReason: String? = null, ) = RoomMember( userId = userId, diff --git a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/room/RoomSummaryFixture.kt b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/room/RoomSummaryFixture.kt index aab27e8a11..9c16319d65 100644 --- a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/room/RoomSummaryFixture.kt +++ b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/room/RoomSummaryFixture.kt @@ -31,6 +31,7 @@ import io.element.android.libraries.matrix.test.A_ROOM_TOPIC import io.element.android.libraries.matrix.test.A_USER_ID import io.element.android.libraries.matrix.test.timeline.anEventTimelineItem import kotlinx.collections.immutable.persistentMapOf +import kotlinx.collections.immutable.toImmutableList import kotlinx.collections.immutable.toPersistentList fun aRoomSummary( @@ -72,13 +73,15 @@ fun aRoomSummary( activeRoomCallParticipants: List = emptyList(), heroes: List = emptyList(), pinnedEventIds: List = emptyList(), - roomCreator: UserId? = null, + roomCreators: List = emptyList(), isMarkedUnread: Boolean = false, numUnreadMessages: Long = 0, numUnreadNotifications: Long = 0, numUnreadMentions: Long = 0, historyVisibility: RoomHistoryVisibility = RoomHistoryVisibility.Joined, lastMessage: RoomMessage? = aRoomMessage(), + roomVersion: String? = "11", + privilegedCreatorRole: Boolean = false, ) = RoomSummary( info = RoomInfo( id = roomId, @@ -94,7 +97,7 @@ fun aRoomSummary( successorRoom = successorRoom, isFavorite = isFavorite, canonicalAlias = canonicalAlias, - alternativeAliases = alternativeAliases.toPersistentList(), + alternativeAliases = alternativeAliases.toImmutableList(), currentUserMembership = currentUserMembership, inviter = inviter, activeMembersCount = activeMembersCount, @@ -105,15 +108,17 @@ fun aRoomSummary( notificationCount = notificationCount, userDefinedNotificationMode = userDefinedNotificationMode, hasRoomCall = hasRoomCall, - activeRoomCallParticipants = activeRoomCallParticipants.toPersistentList(), + activeRoomCallParticipants = activeRoomCallParticipants.toImmutableList(), heroes = heroes.toPersistentList(), - pinnedEventIds = pinnedEventIds.toPersistentList(), - creator = roomCreator, + pinnedEventIds = pinnedEventIds.toImmutableList(), + creators = roomCreators.toImmutableList(), isMarkedUnread = isMarkedUnread, numUnreadMessages = numUnreadMessages, numUnreadNotifications = numUnreadNotifications, numUnreadMentions = numUnreadMentions, historyVisibility = historyVisibility, + roomVersion = roomVersion, + privilegedCreatorRole = privilegedCreatorRole, ), lastMessage = lastMessage, ) diff --git a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/timeline/FakeTimeline.kt b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/timeline/FakeTimeline.kt index c4ab0160c4..dd0bf02d4d 100644 --- a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/timeline/FakeTimeline.kt +++ b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/timeline/FakeTimeline.kt @@ -19,7 +19,6 @@ import io.element.android.libraries.matrix.api.media.VideoInfo import io.element.android.libraries.matrix.api.poll.PollKind import io.element.android.libraries.matrix.api.room.IntentionalMention import io.element.android.libraries.matrix.api.room.location.AssetType -import io.element.android.libraries.matrix.api.room.message.ReplyParameters import io.element.android.libraries.matrix.api.timeline.MatrixTimelineItem import io.element.android.libraries.matrix.api.timeline.ReceiptType import io.element.android.libraries.matrix.api.timeline.Timeline @@ -122,7 +121,7 @@ class FakeTimeline( ) var replyMessageLambda: ( - replyParameters: ReplyParameters, + inReplyToEventId: EventId?, body: String, htmlBody: String?, intentionalMentions: List, @@ -132,13 +131,13 @@ class FakeTimeline( } override suspend fun replyMessage( - replyParameters: ReplyParameters, + repliedToEventId: EventId, body: String, htmlBody: String?, intentionalMentions: List, fromNotification: Boolean, ): Result = replyMessageLambda( - replyParameters, + repliedToEventId, body, htmlBody, intentionalMentions, @@ -152,7 +151,7 @@ class FakeTimeline( body: String?, formattedBody: String?, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId??, ) -> Result = { _, _, _, _, _, _, _ -> Result.success(FakeMediaUploadHandler()) } @@ -164,7 +163,7 @@ class FakeTimeline( caption: String?, formattedCaption: String?, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId??, ): Result = simulateLongTask { simulateSendMediaProgress(progressCallback) sendImageLambda( @@ -174,7 +173,7 @@ class FakeTimeline( caption, formattedCaption, progressCallback, - replyParameters, + inReplyToEventId, ) } @@ -185,7 +184,7 @@ class FakeTimeline( body: String?, formattedBody: String?, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId??, ) -> Result = { _, _, _, _, _, _, _ -> Result.success(FakeMediaUploadHandler()) } @@ -197,7 +196,7 @@ class FakeTimeline( caption: String?, formattedCaption: String?, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId??, ): Result = simulateLongTask { simulateSendMediaProgress(progressCallback) sendVideoLambda( @@ -207,7 +206,7 @@ class FakeTimeline( caption, formattedCaption, progressCallback, - replyParameters, + inReplyToEventId, ) } @@ -217,7 +216,7 @@ class FakeTimeline( caption: String?, formattedCaption: String?, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId??, ) -> Result = { _, _, _, _, _, _ -> Result.success(FakeMediaUploadHandler()) } @@ -228,7 +227,7 @@ class FakeTimeline( caption: String?, formattedCaption: String?, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId??, ): Result = simulateLongTask { simulateSendMediaProgress(progressCallback) sendAudioLambda( @@ -237,7 +236,7 @@ class FakeTimeline( caption, formattedCaption, progressCallback, - replyParameters, + inReplyToEventId, ) } @@ -247,7 +246,7 @@ class FakeTimeline( caption: String?, formattedCaption: String?, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId??, ) -> Result = { _, _, _, _, _, _ -> Result.success(FakeMediaUploadHandler()) } @@ -258,7 +257,7 @@ class FakeTimeline( caption: String?, formattedCaption: String?, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId??, ): Result = simulateLongTask { simulateSendMediaProgress(progressCallback) sendFileLambda( @@ -267,7 +266,7 @@ class FakeTimeline( caption, formattedCaption, progressCallback, - replyParameters, + inReplyToEventId, ) } @@ -276,7 +275,7 @@ class FakeTimeline( audioInfo: AudioInfo, waveform: List, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId??, ) -> Result = { _, _, _, _, _ -> Result.success(FakeMediaUploadHandler()) } @@ -286,7 +285,7 @@ class FakeTimeline( audioInfo: AudioInfo, waveform: List, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId??, ): Result = simulateLongTask { simulateSendMediaProgress(progressCallback) sendVoiceMessageLambda( @@ -294,7 +293,7 @@ class FakeTimeline( audioInfo, waveform, progressCallback, - replyParameters, + inReplyToEventId, ) } @@ -304,7 +303,7 @@ class FakeTimeline( description: String?, zoomLevel: Int?, assetType: AssetType?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId??, ) -> Result = { _, _, _, _, _, _ -> lambdaError() } @@ -315,7 +314,7 @@ class FakeTimeline( description: String?, zoomLevel: Int?, assetType: AssetType?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId??, ): Result = simulateLongTask { sendLocationLambda( body, @@ -323,7 +322,7 @@ class FakeTimeline( description, zoomLevel, assetType, - replyParameters, + inReplyToEventId, ) } diff --git a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/messages/ToPlainText.kt b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/messages/ToPlainText.kt index ef7f1f915c..7e37be8614 100644 --- a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/messages/ToPlainText.kt +++ b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/messages/ToPlainText.kt @@ -57,10 +57,16 @@ private class PlainTextNodeVisitor : NodeVisitor { if (node is TextNode && node.text().isNotBlank()) { builder.append(node.text()) } else if (node is Element && node.tagName() == "li") { - val index = node.elementSiblingIndex() + val index = node.elementSiblingIndex() + 1 val isOrdered = node.parent()?.nodeName()?.lowercase() == "ol" if (isOrdered) { - builder.append("${index + 1}. ") + val startIndex = node.parent()?.attr("start")?.toIntOrNull() + val actualIndex = if (startIndex != null) { + startIndex + index - 1 + } else { + index + } + builder.append("$actualIndex. ") } else { builder.append("‱ ") } diff --git a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/model/RoomInfoExtension.kt b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/model/RoomInfoExtension.kt index 14e64c3557..a6520d5580 100644 --- a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/model/RoomInfoExtension.kt +++ b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/model/RoomInfoExtension.kt @@ -9,7 +9,9 @@ package io.element.android.libraries.matrix.ui.model import io.element.android.libraries.designsystem.components.avatar.AvatarData import io.element.android.libraries.designsystem.components.avatar.AvatarSize +import io.element.android.libraries.matrix.api.core.UserId import io.element.android.libraries.matrix.api.room.RoomInfo +import io.element.android.libraries.matrix.api.room.RoomMember fun RoomInfo.getAvatarData(size: AvatarSize) = AvatarData( id = id.value, @@ -17,3 +19,17 @@ fun RoomInfo.getAvatarData(size: AvatarSize) = AvatarData( url = avatarUrl, size = size, ) + +/** + * Returns the role of the user in the room. + * If the user is a creator, returns [RoomMember.Role.Owner]. + * Otherwise, checks the power levels and returns the corresponding role. + * If no specific power level is set for the user, defaults to [RoomMember.Role.User]. + */ +fun RoomInfo.roleOf(userId: UserId): RoomMember.Role { + return if (creators.contains(userId)) { + RoomMember.Role.Owner(isCreator = true) + } else { + roomPowerLevels?.roleOf(userId) ?: RoomMember.Role.User + } +} diff --git a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/room/MatrixRoomState.kt b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/room/MatrixRoomState.kt index 0080eea700..ad97d30cfe 100644 --- a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/room/MatrixRoomState.kt +++ b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/room/MatrixRoomState.kt @@ -23,6 +23,7 @@ import io.element.android.libraries.matrix.api.room.powerlevels.canKick import io.element.android.libraries.matrix.api.room.powerlevels.canRedactOther import io.element.android.libraries.matrix.api.room.powerlevels.canRedactOwn import io.element.android.libraries.matrix.api.room.powerlevels.canSendMessage +import io.element.android.libraries.matrix.ui.model.roleOf @Composable fun BaseRoom.canSendMessageAsState(type: MessageEventType, updateKey: Long): State { @@ -98,7 +99,7 @@ fun BaseRoom.canHandleKnockRequestsAsState(updateKey: Long): State { fun BaseRoom.userPowerLevelAsState(updateKey: Long): State { return produceState(initialValue = 0, key1 = updateKey) { value = userRole(sessionId) - .getOrDefault(RoomMember.Role.USER) + .getOrDefault(RoomMember.Role.User) .powerLevel } } @@ -106,8 +107,8 @@ fun BaseRoom.userPowerLevelAsState(updateKey: Long): State { @Composable fun BaseRoom.isOwnUserAdmin(): Boolean { val roomInfo by roomInfoFlow.collectAsState() - val powerLevel = roomInfo.roomPowerLevels?.users?.get(sessionId) ?: 0L - return RoomMember.Role.forPowerLevel(powerLevel) == RoomMember.Role.ADMIN + val role = roomInfo.roleOf(sessionId) + return role == RoomMember.Role.Admin || role is RoomMember.Role.Owner } @Composable diff --git a/libraries/matrixui/src/test/kotlin/io/element/android/libraries/matrix/ui/messages/ToPlainTextTest.kt b/libraries/matrixui/src/test/kotlin/io/element/android/libraries/matrix/ui/messages/ToPlainTextTest.kt index 11f5d2fd5a..9444081f7f 100644 --- a/libraries/matrixui/src/test/kotlin/io/element/android/libraries/matrix/ui/messages/ToPlainTextTest.kt +++ b/libraries/matrixui/src/test/kotlin/io/element/android/libraries/matrix/ui/messages/ToPlainTextTest.kt @@ -96,6 +96,29 @@ class ToPlainTextTest { ) } + @Test + fun `TextMessageType toPlainText - respects the ol start attr if present`() { + val messageType = TextMessageType( + body = "1. First item\n2. Second item\n", + formatted = FormattedBody( + format = MessageFormat.HTML, + body = """ +
    +
  1. First item.
  2. +
  3. Second item.
  4. +
+
+ """.trimIndent() + ) + ) + assertThat(messageType.toPlainText(permalinkParser = FakePermalinkParser())).isEqualTo( + """ + 11. First item. + 12. Second item. + """.trimIndent() + ) + } + @Test fun `TextMessageType toPlainText - returns the markdown body if the formatted one cannot be parsed`() { val messageType = TextMessageType( diff --git a/libraries/mediaupload/api/src/main/kotlin/io/element/android/libraries/mediaupload/api/MediaPreProcessor.kt b/libraries/mediaupload/api/src/main/kotlin/io/element/android/libraries/mediaupload/api/MediaPreProcessor.kt index da608e08ad..347197bd2d 100644 --- a/libraries/mediaupload/api/src/main/kotlin/io/element/android/libraries/mediaupload/api/MediaPreProcessor.kt +++ b/libraries/mediaupload/api/src/main/kotlin/io/element/android/libraries/mediaupload/api/MediaPreProcessor.kt @@ -22,5 +22,10 @@ interface MediaPreProcessor { compressIfPossible: Boolean, ): Result + /** + * Clean up any temporary files or resources used during the media processing. + */ + fun cleanUp() + data class Failure(override val cause: Throwable?) : Exception(cause) } diff --git a/libraries/mediaupload/api/src/main/kotlin/io/element/android/libraries/mediaupload/api/MediaSender.kt b/libraries/mediaupload/api/src/main/kotlin/io/element/android/libraries/mediaupload/api/MediaSender.kt index 5f542bd91a..0039f87963 100644 --- a/libraries/mediaupload/api/src/main/kotlin/io/element/android/libraries/mediaupload/api/MediaSender.kt +++ b/libraries/mediaupload/api/src/main/kotlin/io/element/android/libraries/mediaupload/api/MediaSender.kt @@ -9,10 +9,10 @@ package io.element.android.libraries.mediaupload.api import android.net.Uri import io.element.android.libraries.core.extensions.flatMapCatching +import io.element.android.libraries.matrix.api.core.EventId import io.element.android.libraries.matrix.api.core.ProgressCallback import io.element.android.libraries.matrix.api.media.MediaUploadHandler import io.element.android.libraries.matrix.api.room.JoinedRoom -import io.element.android.libraries.matrix.api.room.message.ReplyParameters import io.element.android.libraries.matrix.api.timeline.Timeline import io.element.android.libraries.preferences.api.store.SessionPreferencesStore import kotlinx.coroutines.CancellationException @@ -48,14 +48,14 @@ class MediaSender @Inject constructor( caption: String?, formattedCaption: String?, progressCallback: ProgressCallback?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId?, ): Result { return room.liveTimeline.sendMedia( uploadInfo = mediaUploadInfo, progressCallback = progressCallback, caption = caption, formattedCaption = formattedCaption, - replyParameters = replyParameters, + inReplyToEventId = inReplyToEventId, ) .handleSendResult() } @@ -66,7 +66,7 @@ class MediaSender @Inject constructor( caption: String? = null, formattedCaption: String? = null, progressCallback: ProgressCallback? = null, - replyParameters: ReplyParameters? = null, + inReplyToEventId: EventId? = null, ): Result { val compressIfPossible = sessionPreferencesStore.doesCompressMedia().first() return preProcessor @@ -82,7 +82,7 @@ class MediaSender @Inject constructor( progressCallback = progressCallback, caption = caption, formattedCaption = formattedCaption, - replyParameters = replyParameters, + inReplyToEventId = inReplyToEventId, ) } .handleSendResult() @@ -93,7 +93,7 @@ class MediaSender @Inject constructor( mimeType: String, waveForm: List, progressCallback: ProgressCallback? = null, - replyParameters: ReplyParameters? = null, + inReplyToEventId: EventId? = null, ): Result { return preProcessor .process( @@ -114,7 +114,7 @@ class MediaSender @Inject constructor( progressCallback = progressCallback, caption = null, formattedCaption = null, - replyParameters = replyParameters, + inReplyToEventId = inReplyToEventId, ) } .handleSendResult() @@ -136,7 +136,7 @@ class MediaSender @Inject constructor( progressCallback: ProgressCallback?, caption: String?, formattedCaption: String?, - replyParameters: ReplyParameters?, + inReplyToEventId: EventId?, ): Result { val handler = when (uploadInfo) { is MediaUploadInfo.Image -> { @@ -147,7 +147,7 @@ class MediaSender @Inject constructor( caption = caption, formattedCaption = formattedCaption, progressCallback = progressCallback, - replyParameters = replyParameters, + inReplyToEventId = inReplyToEventId, ) } is MediaUploadInfo.Video -> { @@ -158,7 +158,7 @@ class MediaSender @Inject constructor( caption = caption, formattedCaption = formattedCaption, progressCallback = progressCallback, - replyParameters = replyParameters, + inReplyToEventId = inReplyToEventId, ) } is MediaUploadInfo.Audio -> { @@ -168,7 +168,7 @@ class MediaSender @Inject constructor( caption = caption, formattedCaption = formattedCaption, progressCallback = progressCallback, - replyParameters = replyParameters, + inReplyToEventId = inReplyToEventId, ) } is MediaUploadInfo.VoiceMessage -> { @@ -177,7 +177,7 @@ class MediaSender @Inject constructor( audioInfo = uploadInfo.audioInfo, waveform = uploadInfo.waveform, progressCallback = progressCallback, - replyParameters = replyParameters, + inReplyToEventId = inReplyToEventId, ) } is MediaUploadInfo.AnyFile -> { @@ -187,7 +187,7 @@ class MediaSender @Inject constructor( caption = caption, formattedCaption = formattedCaption, progressCallback = progressCallback, - replyParameters = replyParameters, + inReplyToEventId = inReplyToEventId, ) } } @@ -200,4 +200,9 @@ class MediaSender @Inject constructor( uploadHandler.await() } } + + /** + * Clean up any temporary files or resources used during the media processing. + */ + fun cleanUp() = preProcessor.cleanUp() } diff --git a/libraries/mediaupload/api/src/test/kotlin/io/element/android/libraries/mediaupload/api/MediaSenderTest.kt b/libraries/mediaupload/api/src/test/kotlin/io/element/android/libraries/mediaupload/api/MediaSenderTest.kt index 7b10e84816..fd6110f700 100644 --- a/libraries/mediaupload/api/src/test/kotlin/io/element/android/libraries/mediaupload/api/MediaSenderTest.kt +++ b/libraries/mediaupload/api/src/test/kotlin/io/element/android/libraries/mediaupload/api/MediaSenderTest.kt @@ -10,11 +10,11 @@ package io.element.android.libraries.mediaupload.api import android.net.Uri import com.google.common.truth.Truth.assertThat import io.element.android.libraries.core.mimetype.MimeTypes +import io.element.android.libraries.matrix.api.core.EventId import io.element.android.libraries.matrix.api.core.ProgressCallback import io.element.android.libraries.matrix.api.media.FileInfo import io.element.android.libraries.matrix.api.media.ImageInfo import io.element.android.libraries.matrix.api.room.JoinedRoom -import io.element.android.libraries.matrix.api.room.message.ReplyParameters import io.element.android.libraries.matrix.test.media.FakeMediaUploadHandler import io.element.android.libraries.matrix.test.room.FakeJoinedRoom import io.element.android.libraries.matrix.test.timeline.FakeTimeline @@ -47,7 +47,7 @@ class MediaSenderTest { String?, String?, ProgressCallback?, - ReplyParameters?, + EventId?, Result, > { _, _, _, _, _, _ -> Result.success(FakeMediaUploadHandler()) @@ -65,7 +65,7 @@ class MediaSenderTest { @Test fun `given an attachment when sending it the Room will call sendMedia`() = runTest { val sendImageResult = - lambdaRecorder { _: File, _: File?, _: ImageInfo, _: String?, _: String?, _: ProgressCallback?, _: ReplyParameters? -> + lambdaRecorder { _: File, _: File?, _: ImageInfo, _: String?, _: String?, _: ProgressCallback?, _: EventId? -> Result.success(FakeMediaUploadHandler()) } val room = FakeJoinedRoom( @@ -98,7 +98,7 @@ class MediaSenderTest { givenImageResult() } val sendImageResult = - lambdaRecorder { _: File, _: File?, _: ImageInfo, _: String?, _: String?, _: ProgressCallback?, _: ReplyParameters? -> + lambdaRecorder { _: File, _: File?, _: ImageInfo, _: String?, _: String?, _: ProgressCallback?, _: EventId? -> Result.failure(Exception()) } val room = FakeJoinedRoom( @@ -121,7 +121,7 @@ class MediaSenderTest { @Test fun `given a cancellation in the media upload when sending the job is cancelled`() = runTest(StandardTestDispatcher()) { val sendFileResult = - lambdaRecorder> { _, _, _, _, _, _ -> + lambdaRecorder> { _, _, _, _, _, _ -> Result.success(FakeMediaUploadHandler()) } val room = FakeJoinedRoom( diff --git a/libraries/mediaupload/impl/src/main/kotlin/io/element/android/libraries/mediaupload/impl/AndroidMediaPreProcessor.kt b/libraries/mediaupload/impl/src/main/kotlin/io/element/android/libraries/mediaupload/impl/AndroidMediaPreProcessor.kt index be0bbc701e..8b93c7e938 100644 --- a/libraries/mediaupload/impl/src/main/kotlin/io/element/android/libraries/mediaupload/impl/AndroidMediaPreProcessor.kt +++ b/libraries/mediaupload/impl/src/main/kotlin/io/element/android/libraries/mediaupload/impl/AndroidMediaPreProcessor.kt @@ -41,6 +41,7 @@ import kotlinx.coroutines.withContext import timber.log.Timber import java.io.File import java.io.InputStream +import java.util.UUID import javax.inject.Inject import kotlin.time.Duration import kotlin.time.Duration.Companion.milliseconds @@ -68,6 +69,9 @@ class AndroidMediaPreProcessor @Inject constructor( private val contentResolver = context.contentResolver + private val cacheDir = context.cacheDir + private val baseTmpFileDir = File(cacheDir, "uploads") + override suspend fun process( uri: Uri, mimeType: String, @@ -100,6 +104,28 @@ class AndroidMediaPreProcessor @Inject constructor( } }.mapFailure { MediaPreProcessor.Failure(it) } + override fun cleanUp() { + // Clear temporary files created in older versions of the app + cacheDir.listFiles()?.onEach { file -> + if (file.isFile) { + val nameWithoutExtension = file.nameWithoutExtension + // UUIDs are 36 characters long, so we check if we can take those 36 characters + val nameWithoutExtensionAndRandom = if (nameWithoutExtension.length > 36) { + nameWithoutExtension.substring(0, 36) + } else { + // Not a temp file + return@onEach + } + val isUUID = tryOrNull { UUID.fromString(nameWithoutExtensionAndRandom) } != null + if (isUUID && file.extension.isNotEmpty()) { + file.delete() + } + } + } + // Clear temporary files created by this pre-processor in the separate uploads directory + baseTmpFileDir.listFiles()?.onEach { it.delete() } + } + private suspend fun processFile(uri: Uri, mimeType: String): MediaUploadInfo { val file = copyToTmpFile(uri) val info = FileInfo( @@ -280,7 +306,10 @@ class AndroidMediaPreProcessor @Inject constructor( private suspend fun createTmpFileWithInput(inputStream: InputStream): File? { return withContext(coroutineDispatchers.io) { tryOrNull { - val tmpFile = context.createTmpFile() + if (!baseTmpFileDir.exists()) { + baseTmpFileDir.mkdirs() + } + val tmpFile = context.createTmpFile(baseTmpFileDir) tmpFile.outputStream().use { inputStream.copyTo(it) } tmpFile } diff --git a/libraries/mediaupload/impl/src/main/kotlin/io/element/android/libraries/mediaupload/impl/ImageCompressor.kt b/libraries/mediaupload/impl/src/main/kotlin/io/element/android/libraries/mediaupload/impl/ImageCompressor.kt index f14264c5d7..1076773873 100644 --- a/libraries/mediaupload/impl/src/main/kotlin/io/element/android/libraries/mediaupload/impl/ImageCompressor.kt +++ b/libraries/mediaupload/impl/src/main/kotlin/io/element/android/libraries/mediaupload/impl/ImageCompressor.kt @@ -13,7 +13,7 @@ import android.graphics.BitmapFactory import androidx.exifinterface.media.ExifInterface import io.element.android.libraries.androidutils.bitmap.calculateInSampleSize import io.element.android.libraries.androidutils.bitmap.resizeToMax -import io.element.android.libraries.androidutils.bitmap.rotateToMetadataOrientation +import io.element.android.libraries.androidutils.bitmap.rotateToExifMetadataOrientation import io.element.android.libraries.androidutils.file.createTmpFile import io.element.android.libraries.core.coroutine.CoroutineDispatchers import io.element.android.libraries.core.extensions.runCatchingExceptions @@ -78,7 +78,7 @@ class ImageCompressor @Inject constructor( options.inJustDecodeBounds = false val decodedBitmap = BitmapFactory.decodeStream(input, null, options) ?: error("Decoding Bitmap from InputStream failed") - val rotatedBitmap = decodedBitmap.rotateToMetadataOrientation(orientation) + val rotatedBitmap = decodedBitmap.rotateToExifMetadataOrientation(orientation) if (resizeMode is ResizeMode.Strict) { rotatedBitmap.resizeToMax(resizeMode.maxWidth, resizeMode.maxHeight) } else { diff --git a/libraries/mediaupload/impl/src/main/kotlin/io/element/android/libraries/mediaupload/impl/VideoCompressorConfig.kt b/libraries/mediaupload/impl/src/main/kotlin/io/element/android/libraries/mediaupload/impl/VideoCompressorConfig.kt index 1508a70c35..b3b0e66ccf 100644 --- a/libraries/mediaupload/impl/src/main/kotlin/io/element/android/libraries/mediaupload/impl/VideoCompressorConfig.kt +++ b/libraries/mediaupload/impl/src/main/kotlin/io/element/android/libraries/mediaupload/impl/VideoCompressorConfig.kt @@ -81,8 +81,12 @@ internal class VideoResizer( ) { fun getOutputSize(inputSize: Size): Size { val resultMajor = min(inputSize.major(), maxSize) - val aspectRatio = inputSize.major().toFloat() / inputSize.minor().toFloat() - return Size(resultMajor, (resultMajor / aspectRatio).roundToInt()) + val aspectRatio = inputSize.width.toFloat() / inputSize.height.toFloat() + return if (inputSize.width > inputSize.height) { + Size(resultMajor, (resultMajor / aspectRatio).roundToInt()) + } else { + Size((resultMajor * aspectRatio).roundToInt(), resultMajor) + } } } diff --git a/libraries/mediaupload/test/src/main/kotlin/io/element/android/libraries/mediaupload/test/FakeMediaPreProcessor.kt b/libraries/mediaupload/test/src/main/kotlin/io/element/android/libraries/mediaupload/test/FakeMediaPreProcessor.kt index 79f22a4b86..87b739d786 100644 --- a/libraries/mediaupload/test/src/main/kotlin/io/element/android/libraries/mediaupload/test/FakeMediaPreProcessor.kt +++ b/libraries/mediaupload/test/src/main/kotlin/io/element/android/libraries/mediaupload/test/FakeMediaPreProcessor.kt @@ -26,6 +26,9 @@ class FakeMediaPreProcessor( var processCallCount = 0 private set + var cleanUpCallCount = 0 + private set + private var result: Result = Result.success( MediaUploadInfo.AnyFile( File("test"), @@ -108,4 +111,8 @@ class FakeMediaPreProcessor( ) ) } + + override fun cleanUp() { + cleanUpCallCount += 1 + } } diff --git a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/details/MediaDeleteConfirmationBottomSheet.kt b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/details/MediaDeleteConfirmationBottomSheet.kt index a35099cd19..121f23a79b 100644 --- a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/details/MediaDeleteConfirmationBottomSheet.kt +++ b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/details/MediaDeleteConfirmationBottomSheet.kt @@ -11,7 +11,9 @@ import androidx.compose.foundation.background import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer 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.material3.ExperimentalMaterial3Api @@ -28,8 +30,8 @@ import androidx.compose.ui.unit.dp import coil3.compose.AsyncImage import io.element.android.compound.theme.ElementTheme import io.element.android.compound.tokens.generated.CompoundIcons +import io.element.android.libraries.designsystem.atomic.molecules.IconTitleSubtitleMolecule import io.element.android.libraries.designsystem.components.BigIcon -import io.element.android.libraries.designsystem.components.PageTitle import io.element.android.libraries.designsystem.preview.ElementPreview import io.element.android.libraries.designsystem.preview.PreviewsDayNight import io.element.android.libraries.designsystem.theme.components.Button @@ -57,14 +59,15 @@ fun MediaDeleteConfirmationBottomSheet( .fillMaxWidth() .padding(horizontal = 16.dp), ) { - PageTitle( + IconTitleSubtitleMolecule( modifier = Modifier .fillMaxWidth() .padding(vertical = 16.dp, horizontal = 8.dp), title = stringResource(R.string.screen_media_browser_delete_confirmation_title), iconStyle = BigIcon.Style.Default(CompoundIcons.Delete(), useCriticalTint = true), - subtitle = stringResource(R.string.screen_media_browser_delete_confirmation_subtitle), + subTitle = stringResource(R.string.screen_media_browser_delete_confirmation_subtitle), ) + Spacer(modifier = Modifier.height(16.dp)) MediaRow( modifier = Modifier .fillMaxWidth() diff --git a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/gallery/MediaGalleryView.kt b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/gallery/MediaGalleryView.kt index 23f68c290d..a48ff93d71 100644 --- a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/gallery/MediaGalleryView.kt +++ b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/gallery/MediaGalleryView.kt @@ -44,9 +44,9 @@ import io.element.android.compound.theme.ElementTheme import io.element.android.compound.tokens.generated.CompoundIcons import io.element.android.libraries.architecture.AsyncData import io.element.android.libraries.architecture.Presenter +import io.element.android.libraries.designsystem.atomic.molecules.IconTitleSubtitleMolecule import io.element.android.libraries.designsystem.background.OnboardingBackground import io.element.android.libraries.designsystem.components.BigIcon -import io.element.android.libraries.designsystem.components.PageTitle import io.element.android.libraries.designsystem.components.async.AsyncFailure import io.element.android.libraries.designsystem.components.button.BackButton import io.element.android.libraries.designsystem.preview.ElementPreview @@ -472,14 +472,14 @@ private fun EmptyContent( modifier = Modifier.fillMaxSize(), ) { OnboardingBackground() - PageTitle( + IconTitleSubtitleMolecule( modifier = Modifier .fillMaxWidth() .padding(top = 44.dp) .padding(24.dp), title = stringResource(titleRes), iconStyle = BigIcon.Style.Default(icon), - subtitle = stringResource(subtitleRes), + subTitle = stringResource(subtitleRes), ) } } diff --git a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/local/video/MediaVideoView.kt b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/local/video/MediaVideoView.kt index 8e619fbdc9..8e826383b6 100644 --- a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/local/video/MediaVideoView.kt +++ b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/local/video/MediaVideoView.kt @@ -25,7 +25,6 @@ import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier -import androidx.compose.ui.geometry.Size import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.platform.LocalInspectionMode import androidx.compose.ui.viewinterop.AndroidView @@ -34,7 +33,6 @@ import androidx.media3.common.MediaItem import androidx.media3.common.Player import androidx.media3.common.Player.STATE_READY import androidx.media3.common.Timeline -import androidx.media3.common.VideoSize import androidx.media3.exoplayer.ExoPlayer import androidx.media3.ui.AspectRatioFrameLayout import androidx.media3.ui.PlayerView @@ -56,7 +54,6 @@ import io.element.android.libraries.mediaviewer.impl.local.player.seekToEnsurePl import io.element.android.libraries.mediaviewer.impl.local.player.togglePlay import io.element.android.libraries.mediaviewer.impl.local.rememberLocalMediaViewState import kotlinx.coroutines.delay -import me.saket.telephoto.zoomable.ZoomableContentLocation import me.saket.telephoto.zoomable.zoomable import kotlin.time.Duration.Companion.seconds @@ -154,18 +151,6 @@ private fun ExoPlayerMediaVideoView( isReady = playbackState == STATE_READY, ) } - - override fun onVideoSizeChanged(videoSize: VideoSize) { - // Ensure that the user cannot zoom/move outside of the video bounds - localMediaViewState.zoomableState.setContentLocation( - ZoomableContentLocation.scaledInsideAndCenterAligned( - Size( - videoSize.width.toFloat(), - videoSize.height.toFloat(), - ) - ) - ) - } } } diff --git a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/ActiveNotificationsProvider.kt b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/ActiveNotificationsProvider.kt index 73f8a3a486..9b8db9d082 100644 --- a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/ActiveNotificationsProvider.kt +++ b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/ActiveNotificationsProvider.kt @@ -10,10 +10,12 @@ package io.element.android.libraries.push.impl.notifications import android.service.notification.StatusBarNotification import androidx.core.app.NotificationManagerCompat import com.squareup.anvil.annotations.ContributesBinding +import io.element.android.libraries.core.extensions.runCatchingExceptions import io.element.android.libraries.di.AppScope import io.element.android.libraries.matrix.api.core.RoomId import io.element.android.libraries.matrix.api.core.SessionId import io.element.android.libraries.push.api.notifications.NotificationIdProvider +import timber.log.Timber import javax.inject.Inject interface ActiveNotificationsProvider { @@ -30,7 +32,12 @@ class DefaultActiveNotificationsProvider @Inject constructor( private val notificationManager: NotificationManagerCompat, ) : ActiveNotificationsProvider { override fun getNotificationsForSession(sessionId: SessionId): List { - return notificationManager.activeNotifications.filter { it.notification.group == sessionId.value } + return runCatchingExceptions { notificationManager.activeNotifications } + .onFailure { + Timber.e(it, "Failed to get active notifications") + } + .getOrElse { emptyList() } + .filter { it.notification.group == sessionId.value } } override fun getMembershipNotificationForSession(sessionId: SessionId): List { diff --git a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotifiableEventResolver.kt b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotifiableEventResolver.kt index c0fca17d81..00af4881e9 100644 --- a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotifiableEventResolver.kt +++ b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotifiableEventResolver.kt @@ -236,7 +236,12 @@ class DefaultNotifiableEventResolver @Inject constructor( } NotificationContent.MessageLike.RoomEncrypted -> { Timber.tag(loggerTag.value).w("Notification with encrypted content -> fallback") - val fallbackNotifiableEvent = fallbackNotificationFactory.create(userId, roomId, eventId) + val fallbackNotifiableEvent = fallbackNotificationFactory.create( + sessionId = userId, + roomId = roomId, + eventId = eventId, + cause = "Unable to decrypt event content", + ) ResolvedPushEvent.Event(fallbackNotifiableEvent) } is NotificationContent.MessageLike.RoomRedaction -> { diff --git a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/FallbackNotificationFactory.kt b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/FallbackNotificationFactory.kt index 947e62bf75..8e206335b9 100644 --- a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/FallbackNotificationFactory.kt +++ b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/FallbackNotificationFactory.kt @@ -24,6 +24,7 @@ class FallbackNotificationFactory @Inject constructor( sessionId: SessionId, roomId: RoomId, eventId: EventId, + cause: String?, ): FallbackNotifiableEvent = FallbackNotifiableEvent( sessionId = sessionId, roomId = roomId, @@ -34,5 +35,6 @@ class FallbackNotificationFactory @Inject constructor( isUpdated = false, timestamp = clock.epochMillis(), description = stringProvider.getString(R.string.notification_fallback_content), + cause = cause, ) } diff --git a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/NotificationBroadcastReceiverHandler.kt b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/NotificationBroadcastReceiverHandler.kt index fab6e3a53a..b664991dfb 100644 --- a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/NotificationBroadcastReceiverHandler.kt +++ b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/NotificationBroadcastReceiverHandler.kt @@ -17,7 +17,6 @@ import io.element.android.libraries.matrix.api.core.SessionId import io.element.android.libraries.matrix.api.core.ThreadId import io.element.android.libraries.matrix.api.room.JoinedRoom import io.element.android.libraries.matrix.api.room.isDm -import io.element.android.libraries.matrix.api.room.message.replyInThread import io.element.android.libraries.matrix.api.timeline.ReceiptType import io.element.android.libraries.preferences.api.store.SessionPreferencesStoreFactory import io.element.android.libraries.push.api.notifications.NotificationCleaner @@ -173,7 +172,7 @@ class NotificationBroadcastReceiverHandler @Inject constructor( htmlBody = null, intentionalMentions = emptyList(), fromNotification = true, - replyParameters = replyInThread(replyToEventId), + repliedToEventId = replyToEventId, ) } else { room.liveTimeline.sendMessage( diff --git a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/model/FallbackNotifiableEvent.kt b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/model/FallbackNotifiableEvent.kt index 91ec1e078c..f9a08de195 100644 --- a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/model/FallbackNotifiableEvent.kt +++ b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/model/FallbackNotifiableEvent.kt @@ -25,4 +25,5 @@ data class FallbackNotifiableEvent( override val isRedacted: Boolean, override val isUpdated: Boolean, val timestamp: Long, + val cause: String?, ) : NotifiableEvent diff --git a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/push/DefaultPushHandler.kt b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/push/DefaultPushHandler.kt index dc2e7bab0a..6967692a46 100644 --- a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/push/DefaultPushHandler.kt +++ b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/push/DefaultPushHandler.kt @@ -27,6 +27,7 @@ import io.element.android.libraries.push.impl.notifications.FallbackNotification import io.element.android.libraries.push.impl.notifications.NotificationEventRequest import io.element.android.libraries.push.impl.notifications.NotificationResolverQueue import io.element.android.libraries.push.impl.notifications.channels.NotificationChannels +import io.element.android.libraries.push.impl.notifications.model.FallbackNotifiableEvent import io.element.android.libraries.push.impl.notifications.model.NotifiableEvent import io.element.android.libraries.push.impl.notifications.model.NotifiableRingingCallEvent import io.element.android.libraries.push.impl.notifications.model.ResolvedPushEvent @@ -90,13 +91,23 @@ class DefaultPushHandler @Inject constructor( } else { result.fold( onSuccess = { - pushHistoryService.onSuccess( - providerInfo = request.providerInfo, - eventId = request.eventId, - roomId = request.roomId, - sessionId = request.sessionId, - comment = "Push handled successfully", - ) + if (it is ResolvedPushEvent.Event && it.notifiableEvent is FallbackNotifiableEvent) { + pushHistoryService.onUnableToResolveEvent( + providerInfo = request.providerInfo, + eventId = request.eventId, + roomId = request.roomId, + sessionId = request.sessionId, + reason = it.notifiableEvent.cause.orEmpty(), + ) + } else { + pushHistoryService.onSuccess( + providerInfo = request.providerInfo, + eventId = request.eventId, + roomId = request.roomId, + sessionId = request.sessionId, + comment = "Push handled successfully", + ) + } }, onFailure = { exception -> if (exception is NotificationResolverException.EventFilteredOut) { @@ -140,7 +151,14 @@ class DefaultPushHandler @Inject constructor( } else -> { Timber.tag(loggerTag.value).e(exception, "Failed to resolve push event") - ResolvedPushEvent.Event(fallbackNotificationFactory.create(request.sessionId, request.roomId, request.eventId)) + ResolvedPushEvent.Event( + fallbackNotificationFactory.create( + sessionId = request.sessionId, + roomId = request.roomId, + eventId = request.eventId, + cause = exception.message, + ) + ) } } }.getOrNull() ?: continue diff --git a/libraries/push/impl/src/main/res/values-fi/translations.xml b/libraries/push/impl/src/main/res/values-fi/translations.xml index 95e1b340b1..2a61c14547 100644 --- a/libraries/push/impl/src/main/res/values-fi/translations.xml +++ b/libraries/push/impl/src/main/res/values-fi/translations.xml @@ -13,6 +13,7 @@ "%d ilmoitus" "%d ilmoitusta" + "Sinulle on uusia viestejĂ€." "đŸ“č Saapuva puhelu" "** LĂ€hetys epĂ€onnistui - avaa huone" "Liity" diff --git a/libraries/push/impl/src/main/res/values-pl/translations.xml b/libraries/push/impl/src/main/res/values-pl/translations.xml index 818cd3edc4..1525997b12 100644 --- a/libraries/push/impl/src/main/res/values-pl/translations.xml +++ b/libraries/push/impl/src/main/res/values-pl/translations.xml @@ -15,6 +15,7 @@ "%d powiadomienia" "%d powiadomieƄ" + "Masz nowe wiadomoƛci." "đŸ“č PoƂączenie przychodzące" "** Nie udaƂo się wysƂać - proszę otworzyć pokĂłj" "DoƂącz" @@ -24,7 +25,7 @@ "%d zaproszenia" "%d zaproszeƄ" - "ZaprosiƂ(a) cię do czatu" + "ZaprosiƂ Cię do czatu" "%1$s zaprosiƂ Cię do czatu" "Wspomniano o Tobie: %1$s" "Nowe wiadomoƛci" diff --git a/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotifiableEventResolverTest.kt b/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotifiableEventResolverTest.kt index a6e443b403..2d99e31d74 100644 --- a/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotifiableEventResolverTest.kt +++ b/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotifiableEventResolverTest.kt @@ -625,6 +625,7 @@ class DefaultNotifiableEventResolverTest { isRedacted = false, isUpdated = false, timestamp = A_FAKE_TIMESTAMP, + cause = "Unable to decrypt event content", ) ) assertThat(result.getEvent(request)).isEqualTo(Result.success(expectedResult)) diff --git a/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/NotificationBroadcastReceiverHandlerTest.kt b/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/NotificationBroadcastReceiverHandlerTest.kt index 3fd94863a1..7a6f6b0118 100644 --- a/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/NotificationBroadcastReceiverHandlerTest.kt +++ b/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/NotificationBroadcastReceiverHandlerTest.kt @@ -15,8 +15,6 @@ import io.element.android.libraries.matrix.api.core.SessionId import io.element.android.libraries.matrix.api.core.ThreadId import io.element.android.libraries.matrix.api.room.IntentionalMention import io.element.android.libraries.matrix.api.room.RoomInfo -import io.element.android.libraries.matrix.api.room.message.ReplyParameters -import io.element.android.libraries.matrix.api.room.message.replyInThread import io.element.android.libraries.matrix.api.timeline.ReceiptType import io.element.android.libraries.matrix.test.AN_EVENT_ID import io.element.android.libraries.matrix.test.A_MESSAGE @@ -342,7 +340,7 @@ class NotificationBroadcastReceiverHandlerTest { fun `Test send reply`() = runTest { val sendMessage = lambdaRecorder, Result> { _, _, _ -> Result.success(Unit) } val replyMessage = - lambdaRecorder, Boolean, Result> { _, _, _, _, _ -> Result.success(Unit) } + lambdaRecorder, Boolean, Result> { _, _, _, _, _ -> Result.success(Unit) } val liveTimeline = FakeTimeline().apply { sendMessageLambda = sendMessage replyMessageLambda = replyMessage @@ -409,7 +407,7 @@ class NotificationBroadcastReceiverHandlerTest { fun `Test send reply to thread`() = runTest { val sendMessage = lambdaRecorder, Result> { _, _, _ -> Result.success(Unit) } val replyMessage = - lambdaRecorder, Boolean, Result> { _, _, _, _, _ -> Result.success(Unit) } + lambdaRecorder, Boolean, Result> { _, _, _, _, _ -> Result.success(Unit) } val liveTimeline = FakeTimeline().apply { sendMessageLambda = sendMessage replyMessageLambda = replyMessage @@ -448,7 +446,7 @@ class NotificationBroadcastReceiverHandlerTest { replyMessage.assertions() .isCalledOnce() .with( - value(replyInThread(eventId = AN_EVENT_ID, explicitReply = false)), + value(AN_EVENT_ID), value(A_MESSAGE), value(null), value(emptyList()), diff --git a/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/factories/DefaultNotificationCreatorTest.kt b/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/factories/DefaultNotificationCreatorTest.kt index 155fcd108f..5fd1b6386e 100644 --- a/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/factories/DefaultNotificationCreatorTest.kt +++ b/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/factories/DefaultNotificationCreatorTest.kt @@ -71,6 +71,7 @@ class DefaultNotificationCreatorTest { isRedacted = false, isUpdated = false, timestamp = A_FAKE_TIMESTAMP, + cause = null, ) ) result.commonAssertions( diff --git a/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/push/DefaultPushHandlerTest.kt b/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/push/DefaultPushHandlerTest.kt index 6ec5accd02..a070156d05 100644 --- a/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/push/DefaultPushHandlerTest.kt +++ b/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/push/DefaultPushHandlerTest.kt @@ -10,6 +10,7 @@ package io.element.android.libraries.push.impl.push import app.cash.turbine.test +import com.google.common.truth.Truth.assertThat import io.element.android.features.call.api.CallType import io.element.android.features.call.test.FakeElementCallEntryPoint import io.element.android.libraries.core.meta.BuildMeta @@ -38,6 +39,7 @@ import io.element.android.libraries.push.impl.notifications.NotificationResolver import io.element.android.libraries.push.impl.notifications.channels.FakeNotificationChannels import io.element.android.libraries.push.impl.notifications.fixtures.aNotifiableCallEvent import io.element.android.libraries.push.impl.notifications.fixtures.aNotifiableMessageEvent +import io.element.android.libraries.push.impl.notifications.model.FallbackNotifiableEvent import io.element.android.libraries.push.impl.notifications.model.NotifiableEvent import io.element.android.libraries.push.impl.notifications.model.ResolvedPushEvent import io.element.android.libraries.push.impl.test.DefaultTestPush @@ -65,6 +67,7 @@ import kotlin.time.Duration.Companion.milliseconds private const val A_PUSHER_INFO = "info" +@Suppress("LargeClass") class DefaultPushHandlerTest { @Test fun `check handleInvalid behavior`() = runTest { @@ -628,6 +631,59 @@ class DefaultPushHandlerTest { .isCalledExactly(2) } + @Test + fun `when receiving a fallback event, we notify the push history service about it not being resolved`() = runTest { + val aNotifiableFallbackEvent = FallbackNotifiableEvent( + sessionId = A_SESSION_ID, + roomId = A_ROOM_ID, + eventId = AN_EVENT_ID, + editedEventId = null, + description = "A fallback notification", + canBeReplaced = false, + isRedacted = false, + isUpdated = false, + timestamp = 0L, + cause = "Unable to decrypt event", + ) + val notifiableEventResult = + lambdaRecorder, Result>>> { _, _ -> + val request = NotificationEventRequest(A_SESSION_ID, A_ROOM_ID, AN_EVENT_ID, A_PUSHER_INFO) + Result.success(mapOf(request to Result.success(ResolvedPushEvent.Event(aNotifiableFallbackEvent)))) + } + val onNotifiableEventsReceived = lambdaRecorder, Unit> {} + val incrementPushCounterResult = lambdaRecorder {} + var receivedFallbackEvent = false + val onPushReceivedResult = + lambdaRecorder { _, _, _, _, isResolved, _, comment -> + receivedFallbackEvent = !isResolved && comment == "Unable to resolve event: ${aNotifiableFallbackEvent.cause}" + } + val pushHistoryService = FakePushHistoryService( + onPushReceivedResult = onPushReceivedResult, + ) + val aPushData = PushData( + eventId = AN_EVENT_ID, + roomId = A_ROOM_ID, + unread = 0, + clientSecret = A_SECRET, + ) + val defaultPushHandler = createDefaultPushHandler( + onNotifiableEventsReceived = onNotifiableEventsReceived, + notifiableEventsResult = notifiableEventResult, + pushClientSecret = FakePushClientSecret( + getUserIdFromSecretResult = { A_USER_ID } + ), + incrementPushCounterResult = incrementPushCounterResult, + pushHistoryService = pushHistoryService, + ) + defaultPushHandler.handle(aPushData, A_PUSHER_INFO) + + advanceTimeBy(300.milliseconds) + + onNotifiableEventsReceived.assertions().isCalledOnce() + + assertThat(receivedFallbackEvent).isTrue() + } + private fun TestScope.createDefaultPushHandler( onNotifiableEventsReceived: (List) -> Unit = { lambdaError() }, onRedactedEventsReceived: (List) -> Unit = { lambdaError() }, diff --git a/libraries/pushproviders/firebase/build.gradle.kts b/libraries/pushproviders/firebase/build.gradle.kts index 735de54d11..445efec8ee 100644 --- a/libraries/pushproviders/firebase/build.gradle.kts +++ b/libraries/pushproviders/firebase/build.gradle.kts @@ -63,7 +63,7 @@ dependencies { implementation(projects.libraries.pushproviders.api) api(platform(libs.google.firebase.bom)) - api("com.google.firebase:firebase-messaging-ktx") { + api("com.google.firebase:firebase-messaging") { exclude(group = "com.google.firebase", module = "firebase-core") exclude(group = "com.google.firebase", module = "firebase-analytics") exclude(group = "com.google.firebase", module = "firebase-measurement-connector") diff --git a/libraries/textcomposer/impl/src/main/res/values-fi/translations.xml b/libraries/textcomposer/impl/src/main/res/values-fi/translations.xml index 473bd218f4..1cd137ee96 100644 --- a/libraries/textcomposer/impl/src/main/res/values-fi/translations.xml +++ b/libraries/textcomposer/impl/src/main/res/values-fi/translations.xml @@ -2,7 +2,7 @@ "LisÀÀ liite" "Numeroimaton luettelo pÀÀlle/pois" - "Sulje muotoiluasetukset" + "Peruuta ja sulje muotoiluasetukset" "Koodilohko pÀÀlle/pois" "LisÀÀ kuvateksti" "Salattu viesti
" @@ -12,6 +12,7 @@ "Muokkaa linkkiĂ€" "KĂ€ytĂ€ lihavoitua muotoa" "KĂ€ytĂ€ kursiivimuotoa" + "pois pÀÀltĂ€" "KĂ€ytĂ€ yliviivausmuotoa" "KĂ€ytĂ€ alleviivausmuotoa" "Koko nĂ€ytön tila pÀÀlle/pois" diff --git a/libraries/textcomposer/impl/src/main/res/values-pl/translations.xml b/libraries/textcomposer/impl/src/main/res/values-pl/translations.xml index 121bc2f4d8..b5dd4478b5 100644 --- a/libraries/textcomposer/impl/src/main/res/values-pl/translations.xml +++ b/libraries/textcomposer/impl/src/main/res/values-pl/translations.xml @@ -2,7 +2,7 @@ "Dodaj zaƂącznik" "PrzeƂącz listę punktową" - "Zamknij opcje formatowania" + "Anuluj i zamknij formatowanie tekstu" "PrzeƂącz blok kodu" "Dodaj opis" "Wiadomoƛć szyfrowana
" @@ -10,8 +10,12 @@ "Niezaszyfrowana wiadomoƛć
" "UtwĂłrz link" "Edytuj link" + "%1$s, stan: %2$s" "Zastosuj pogrubienie" "Zastosuj kursywę" + "wyƂączony" + "wyƂączony" + "wƂączony" "Zastosuj przekreƛlenie" "Zastosuj podkreƛlenie" "PrzeƂącz peƂny ekran" diff --git a/libraries/ui-strings/src/main/res/values-cy/translations.xml b/libraries/ui-strings/src/main/res/values-cy/translations.xml index 6dc6b9237c..1e111a6631 100644 --- a/libraries/ui-strings/src/main/res/values-cy/translations.xml +++ b/libraries/ui-strings/src/main/res/values-cy/translations.xml @@ -11,11 +11,16 @@ "%1$d nod wedi eu cynnig" "%1$d nod wedi eu cynnig" + "Golygu afatar" + "Manylion amgryptio" "Cuddio cyfrinair" "Ymuno Ăą galwad" "Symud i\'r gwaelod" "Crybwylliadau\'n unig" "Wedi\'i Dewi" + "Crybwylliadau newydd" + "Negeseuon newydd" + "Galwad cyfredol" "Afatar defnyddiwr arall" "Tudalen %1$d" "Oedi" @@ -43,6 +48,7 @@ "Anfon ffeiliau" "Dangos y cyfrinair" "Cychwyn galwad" + "Mae angen gweithredu Ăą chyfyngiad amser" "Afatar defnyddiwr" "Dewislen defnyddiwr" "Gweld afatar" @@ -109,6 +115,7 @@ "Na" "Nid nawr" "Iawn" + "Agor y ddewislen gyd-destun" "Gosodiadau" "Agor gyda" "Pinio" @@ -133,7 +140,9 @@ "Cadw" "Chwilio" "Anfon" + "Anfon neges wedi\'i golygu" "Anfonwch neges" + "Anfon neges llais" "Rhannu" "Rhannwch ddolen" "Dangos" diff --git a/libraries/ui-strings/src/main/res/values-da/translations.xml b/libraries/ui-strings/src/main/res/values-da/translations.xml index bad79e2d16..34cc81b11f 100644 --- a/libraries/ui-strings/src/main/res/values-da/translations.xml +++ b/libraries/ui-strings/src/main/res/values-da/translations.xml @@ -12,6 +12,7 @@ "Hop til bunden" "Kun omtaler" "Lyd slĂ„et fra" + "Anden brugers avatar" "Side %1$d" "PausĂ©r" "Talebesked, varighed: %1$s, aktuel position: %2$s" @@ -30,15 +31,18 @@ "Tryk for at vise alle" "Fjern reaktion med%1$s" "Fjern reaktion med %1$s" + "Avatar for rummet" "Send filer" "Vis adgangskode" "Start et opkald" + "Avatar for bruger" "Brugermenu" "Se avatar" "Se detaljer" "Talebesked, varighed: %1$s" "Optag talebesked." "Stop optagelsen" + "Din avatar" "Accepter" "TilfĂžj billedtekst" "FĂžj til tidslinje" @@ -97,6 +101,7 @@ "Nej" "Ikke nu" "OK" + "Åbn kontekstmenu" "Indstillinger" "Åbn med" "FastgĂžr" @@ -121,7 +126,9 @@ "Gem" "SĂžg" "Send" + "Send redigeret besked" "Send besked" + "Send talebesked" "Del" "Del link" "Vis" @@ -137,6 +144,7 @@ "Tryk for indstillinger" "PrĂžv igen" "FrigĂžr" + "Vis" "Se i tidslinjen" "Se kilde" "Ja" @@ -300,7 +308,7 @@ "BekrĂŠftelse fuldfĂžrt" "Verifikation mislykkedes" "Verificeret" - "BekrĂŠft enhed" + "VerificĂ©r enhed" "VerificĂ©r identitet" "VerificĂ©r bruger" "Video" diff --git a/libraries/ui-strings/src/main/res/values-de/translations.xml b/libraries/ui-strings/src/main/res/values-de/translations.xml index c49a3ceaef..61ce7a003c 100644 --- a/libraries/ui-strings/src/main/res/values-de/translations.xml +++ b/libraries/ui-strings/src/main/res/values-de/translations.xml @@ -7,11 +7,16 @@ "%1$d eingegebene Ziffer" "%1$d eingegebene Ziffern" + "Avatar bearbeiten" + "Details zur VerschlĂŒsselung" "Passwort verbergen" "Anruf beitreten" "Nach unten springen" "Nur ErwĂ€hnungen" "Stummgeschaltet" + "Neue ErwĂ€hnungen" + "Neue Nachrichten" + "Laufender Anruf" "Avatar des anderen Nutzers" "Seite %1$d" "Pausieren" @@ -35,6 +40,7 @@ "Dateien senden" "Passwort anzeigen" "Anruf starten" + "Zeitlich begrenztes Handeln erforderlich" "Benutzer-Avatar" "BenutzermenĂŒ" "Avatar ansehen" diff --git a/libraries/ui-strings/src/main/res/values-et/translations.xml b/libraries/ui-strings/src/main/res/values-et/translations.xml index 553d57488a..ff4eed1cf9 100644 --- a/libraries/ui-strings/src/main/res/values-et/translations.xml +++ b/libraries/ui-strings/src/main/res/values-et/translations.xml @@ -7,11 +7,18 @@ "%1$d number sisestatud" "%1$d numbrit sisestatud" + "Muuda tunnuspilti" + "TĂ€isaadress saab olema %1$s" + "KrĂŒptimise ĂŒksikasjad" "Peida salasĂ”na" "Liitu kĂ”nega" "Mine lĂ”ppu" + "Nihuta kaart minu asukohta" "Ainult mainimised" "Summutatud" + "Uued mainimised" + "Uued sĂ”numid" + "KĂ”ne on pooleli" "Teise kasutaja tunnuspilt" "%1$d. lehekĂŒlg" "Peata" @@ -35,6 +42,8 @@ "Saada faile" "NĂ€ita salasĂ”na" "Helista" + "Palun tee see ajapiiranguga toiming" + "LĂ”petatuks mĂ€rgitud jututuba" "Kasutaja tunnuspilt" "KasutajamenĂŒĂŒ" "Vaata tunnuspilti" @@ -362,6 +371,7 @@ Kas sa oled kindel, et soovid jĂ€tkata?"
"Hei, suhtle minuga %1$s vÔrgus: %2$s" "%1$s Android" "Veast teatamiseks raputa nutiseadet Àgedalt" + "EkraanitÔmmis" "%1$s: %2$s" "Valikud" "Kustuta: %1$s" diff --git a/libraries/ui-strings/src/main/res/values-fi/translations.xml b/libraries/ui-strings/src/main/res/values-fi/translations.xml index 8b0d3e0cf7..9ae049b76a 100644 --- a/libraries/ui-strings/src/main/res/values-fi/translations.xml +++ b/libraries/ui-strings/src/main/res/values-fi/translations.xml @@ -240,6 +240,10 @@ Syy: %1$s."
"Syy" "Palautusavain" "PĂ€ivitetÀÀn
" + + "%1$d vastaus" + "%1$d vastausta" + "Vastataan kĂ€yttĂ€jĂ€lle %1$s" "Ilmoita virheestĂ€" "Ilmoita ongelmasta" @@ -333,6 +337,7 @@ Haluatko varmasti jatkaa?"
"Jotkin merkit eivĂ€t ole sallittuja. Vain kirjaimet, numerot ja seuraavat symbolit ovat tuettuja ! $ & ‘ ( ) * + / ; = ? @ [ ] - . _" "Joitakin viestejĂ€ ei ole lĂ€hetetty" "Anteeksi, tapahtui virhe" + "Tapahtuman lĂ€hettĂ€jĂ€ ei vastaa sitĂ€ lĂ€hettĂ€neen laitteen omistajaa." "TĂ€mĂ€n salatun viestin aitoutta ei voida taata tĂ€llĂ€ laitteella." "Aiemmin vahvistetun kĂ€yttĂ€jĂ€n salaama." "Ei salattu." diff --git a/libraries/ui-strings/src/main/res/values-fr/translations.xml b/libraries/ui-strings/src/main/res/values-fr/translations.xml index c2a6cd3358..dedd8561ac 100644 --- a/libraries/ui-strings/src/main/res/values-fr/translations.xml +++ b/libraries/ui-strings/src/main/res/values-fr/translations.xml @@ -7,11 +7,17 @@ "%1$d chiffre saisi" "%1$d chiffres saisis" + "Modifier l’avatar" + "DĂ©tails du chiffrement" "Masquer le mot de passe" "Rejoindre l’appel" "Retourner Ă  la fin de la conversation" + "DĂ©placer la carte vers ma position" "Mentions uniquement" "En sourdine" + "Nouvelles mentions" + "Nouveaux messages" + "Appel en cours" "Avatar de l’autre utilisateur" "Page %1$d" "Pause" @@ -35,6 +41,7 @@ "Envoyer des fichiers" "Afficher le mot de passe" "DĂ©marrer un appel" + "Demande d’action qui expirera dans un instant" "Avatar de l’utilisateur" "Menu utilisateur" "Voir l’avatar" diff --git a/libraries/ui-strings/src/main/res/values-hu/translations.xml b/libraries/ui-strings/src/main/res/values-hu/translations.xml index b0d8a37de9..04debfbd59 100644 --- a/libraries/ui-strings/src/main/res/values-hu/translations.xml +++ b/libraries/ui-strings/src/main/res/values-hu/translations.xml @@ -7,11 +7,19 @@ "%1$d megadott szĂĄmjegy" "%1$d megadott szĂĄmjegy" + "ProfilkĂ©p szerkesztĂ©se" + "A teljes cĂ­m ez lesz: %1$s" + "TitkosĂ­tĂĄs rĂ©szletei" "JelszĂł elrejtĂ©se" "CsatlakozĂĄs a hĂ­vĂĄshoz" "UgrĂĄs az aljĂĄra" + "TĂ©rkĂ©p ĂĄthelyezĂ©se a jelenlegi helyre" "Csak megemlĂ­tĂ©sek" "NĂ©mĂ­tva" + "Új emlĂ­tĂ©sek" + "Új ĂŒzenetek" + "Folyamatban lĂ©vƑ hĂ­vĂĄs" + "MĂĄs felhasznĂĄlĂł profilkĂ©pe" "%1$d. oldal" "SzĂŒneteltetĂ©s" "HangĂŒzenet, idƑtartam:%1$s, jelenlegi pozĂ­ciĂł:%2$s" @@ -30,15 +38,20 @@ "Koppintson az összes megjelenĂ­tĂ©sĂ©hez" "ReakciĂł eltĂĄvolĂ­tĂĄsa: %1$s" "ReakciĂł eltĂĄvolĂ­tĂĄsa: %1$s" + "Szoba profilkĂ©pe" "FĂĄjlkĂŒldĂ©s" "JelszĂł megjelenĂ­tĂ©se" "HanghĂ­vĂĄs indĂ­tĂĄsa" + "IdƑkorlĂĄtos mƱvelet szĂŒksĂ©ges" + "ElĂ©vĂŒlt szoba" + "FelhasznĂĄlĂłi profilkĂ©p" "FelhasznĂĄlĂłi menĂŒ" "ProfilkĂ©p megtekintĂ©se" "RĂ©szletek megtekintĂ©se" "HangĂŒzenet, idƑtartam: %1$s" "HangĂŒzenet felvĂ©tele." "RögzĂ­tĂ©s leĂĄllĂ­tĂĄsa" + "SajĂĄt profilkĂ©p" "ElfogadĂĄs" "Felirat hozzĂĄadĂĄsa" "HozzĂĄadĂĄs az idƑvonalhoz" @@ -97,6 +110,7 @@ "Nem" "Most nem" "Rendben" + "Helyi menĂŒ megnyitĂĄsa" "BeĂĄllĂ­tĂĄsok megnyitĂĄsa" "MegnyitĂĄs a következƑvel" "KitƱzĂ©s" @@ -121,7 +135,9 @@ "MentĂ©s" "KeresĂ©s" "KĂŒldĂ©s" + "Szerkesztett ĂŒzenet kĂŒldĂ©se" "Üzenet kĂŒldĂ©se" + "HangĂŒzenet kĂŒldĂ©se" "MegosztĂĄs" "HivatkozĂĄs megosztĂĄsa" "MegjelenĂ­tĂ©s" @@ -137,6 +153,7 @@ "Koppintson a beĂĄllĂ­tĂĄsokĂ©rt" "PrĂłbĂĄlja Ășjra" "KitƱzĂ©s feloldĂĄsa" + "MegtekintĂ©s" "MegtekintĂ©s az idƑvonalon" "ForrĂĄs megtekintĂ©se" "Igen" @@ -353,6 +370,7 @@ Biztos, hogy folytatja?"
"BeszĂ©lgessĂŒnk itt: %1$s, %2$s" "%1$s Android" "Az eszköz rĂĄzĂĄsa a hibajelentĂ©shez" + "KĂ©pernyƑkĂ©p" "%1$s: %2$s" "LehetƑsĂ©gek" "EltĂĄvolĂ­tĂĄs: %1$s" diff --git a/libraries/ui-strings/src/main/res/values-lt/translations.xml b/libraries/ui-strings/src/main/res/values-lt/translations.xml index 7760fec670..c899e70b12 100644 --- a/libraries/ui-strings/src/main/res/values-lt/translations.xml +++ b/libraries/ui-strings/src/main/res/values-lt/translations.xml @@ -1,5 +1,7 @@ + "Pridėti reakciją: %1$s" + "Pseudoportretas" "Slėpti slaptaĆŸodÄŻ" "SiĆłsti failus" "Rodyti slaptaĆŸodÄŻ" @@ -29,7 +31,9 @@ "Kvietimai" "SuĆŸinoti daugiau" "Palikti" + "Palikti pokalbÄŻ" "Palikti kambarÄŻ" + "Äźkelti daugiau" "Toliau" "Ne" "Ne dabar" @@ -48,6 +52,9 @@ "SiĆłsti ĆŸinutę" "Dalintis" "Bendrinti nuorodą" + "Prisijungti vėl" + "Atsijungti" + "Atsijungti vis tiek" "Praleisti" "Pradėti" "Pradėti pokalbÄŻ" @@ -59,10 +66,12 @@ "Analitika" "Garsas" "Burbulai" + "Pokalbio atsarginė kopija" "Kuriamas kambarys
" "Iơėjo iĆĄ kambario" "IĆĄĆĄifravimo klaida" "KĆ«rėjo nustatymai" + "Asmeninis pokalbis" "(taisyta)" "Taisymas" "* %1$s %2$s" @@ -103,6 +112,7 @@ "Serveris nepalaikomas" "Serverio URL" "Nustatymai" + "Atsijungiama" "Pradedamas pokalbis
" "Lipdukas" "Pavyko" diff --git a/libraries/ui-strings/src/main/res/values-pl/translations.xml b/libraries/ui-strings/src/main/res/values-pl/translations.xml index 01bb2cadaa..9fe69361ce 100644 --- a/libraries/ui-strings/src/main/res/values-pl/translations.xml +++ b/libraries/ui-strings/src/main/res/values-pl/translations.xml @@ -1,5 +1,6 @@ + "Dodaj reakcję: %1$s" "Awatar" "UsuƄ" @@ -7,11 +8,17 @@ "Wprowadzono %1$d cyfry" "Wprowadzono %1$d cyfr" + "Edytuj awatar" + "SzczegóƂy szyfrowania" "Ukryj hasƂo" "DoƂącz do poƂączenia" "PrzejdĆș na dóƂ" "Tylko wzmianki" "Wyciszone" + "Nowe wzmianki" + "Nowe wiadomoƛci" + "Rozmowa w toku" + "Awatar innego uĆŒytkownika" "Strona %1$d" "Wstrzymaj" "Wiadomoƛć gƂosowa, czas trwania: %1$s, aktualna pozycja: %2$s" @@ -30,14 +37,20 @@ "Odczytane przez %1$s" "Stuknij, aby pokazać wszystkich" "UsuƄ reakcję %1$s" + "UsuƄ reakcję z %1$s" + "Awatar pokoju" "Wyƛlij pliki" "PokaĆŒ hasƂo" "Rozpocznij rozmowę" + "Wymagane jest dziaƂanie ograniczone czasowo" + "Awatar uĆŒytkownika" "Menu uĆŒytkownika" + "Wyƛwietl awatar" "Wyƛwietl szczegóƂy" "Wiadomoƛć gƂosowa, czas trwania: %1$s" "Nagraj wiadomoƛć gƂosową." "Zatrzymaj nagrywanie" + "TwĂłj awatar" "Akceptuj" "Dodaj opis" "Dodaj do osi czasu" @@ -96,6 +109,7 @@ "Nie" "Nie teraz" "Ok" + "OtwĂłrz menu kontekstowe" "Ustawienia" "OtwĂłrz za pomocą" "Przypnij" @@ -120,7 +134,9 @@ "Zapisz" "Szukaj" "Wyƛlij" + "Wyƛlij edytowaną wiadomoƛć" "Wyƛlij wiadomoƛć" + "Wyƛlij wiadomoƛć gƂosową" "Udostępnij" "Udostępnij link" "PokaĆŒ" @@ -136,16 +152,18 @@ "Stuknij, by wyƛwietlić opcje" "SprĂłbuj ponownie" "Odepnij" + "Wyƛwietl" "Wyƛwietl na osi czasu" "Wyƛwietl ĆșrĂłdƂo" "Tak" "Tak, sprĂłbuj ponownie" - "TwĂłj serwer obsƂuguje teraz nowy, szybszy protokóƂ. Wyloguj się i zaloguj ponownie, aby uaktualnić teraz. Zrobienie tego teraz pomoĆŒe uniknąć wymuszonego wylogowania, gdy stary protokóƂ zostanie pĂłĆșniej usunięty." + "TwĂłj serwer wspiera teraz nowy, szybszy protokóƂ. Zaloguj się ponownie, aby zaktualizować. Dzięki temu unikniesz wymuszonego wylogowania, gdy stary protokóƂ zostanie usunięty." "Dostępna aktualizacja" "O programie" "Polityka uĆŒytkowania" "Dodawanie opisu" "Ustawienia zaawansowane" + "obraz" "Dane analityczne" "Wygląd" "DĆșwięk" @@ -245,6 +263,11 @@ PowĂłd: %1$s."
"PowĂłd" "Klucz przywracania" "OdƛwieĆŒanie
" + + "%1$d odpowiedĆș" + "%1$d odpowiedzi" + "%1$d odpowiedzi" + "Odpowiadanie do %1$s" "ZgƂoƛ bƂąd" "ZgƂoƛ problem" @@ -264,6 +287,7 @@ PowĂłd: %1$s."
"WysyƂanie
" "BƂąd wysyƂania" "WysƂano" + ". " "Serwer nie jest obsƂugiwany" "Adres URL serwera" "Ustawienia" @@ -297,7 +321,7 @@ Powód: %1$s."
"Weryfikacja zakoƄczona" "Weryfikacja nie powiodƂa się" "Zweryfikowano" - "Weryfikuj urządzenie" + "Zweryfikuj urządzenie" "Zweryfikuj toĆŒsamoƛć" "Zweryfikuj uĆŒytkownika" "Film" @@ -329,6 +353,7 @@ Czy na pewno chcesz kontynuować?" "Nie udaƂo się zaƂadować wiadomoƛci" "%1$s nie mĂłgƂ uzyskać dostępu do Twojej lokalizacji. SprĂłbuj ponownie pĂłĆșniej." "Nie udaƂo się przesƂać Twojej wiadomoƛci gƂosowej." + "PokĂłj juĆŒ nie istnieje lub zaproszenie nie jest juĆŒ waĆŒne." "Nie znaleziono wiadomoƛci" "%1$s nie uzyskaƂo uprawnienia do dostępu do twojej lokalizacji. MoĆŒesz wƂączyć dostęp w Ustawieniach." "%1$s nie ma uprawnieƄ dostępu do Twojej lokalizacji. WƂącz dostęp poniĆŒej." @@ -338,6 +363,7 @@ Czy na pewno chcesz kontynuować?" "NiektĂłre znaki są niedozwolone. ObsƂugiwane są tylko litery, cyfry i następujące symbole ! $ & ‘ ( ) * + / ; = ? @ [ ] - . _" "NiektĂłre wiadomoƛci nie zostaƂy wysƂane" "Przepraszamy, wystąpiƂ bƂąd" + "Nadawca zdarzenia nie pasuje do wƂaƛciciela urządzenia, ktĂłre je wysƂaƂ." "Autentycznoƛć tej wiadomoƛci szyfrowanej nie jest gwarantowana na tym urządzeniu." "Zaszyfrowane przez wczeƛniej zweryfikowanego uĆŒytkownika." "Nieszyfrowany." @@ -348,6 +374,10 @@ Czy na pewno chcesz kontynuować?" "Hej, porozmawiajmy na %1$s: %2$s" "%1$s Android" "Wstrząƛnij gniewnie, aby zgƂosić bƂąd" + "%1$s: %2$s" + "Opcje" + "UsuƄ %1$s" + "Ustawienia" "Nie udaƂo się wybrać multimediĂłw. SprĂłbuj ponownie." "Opis moĆŒe być niedostępny dla osĂłb korzystających ze starszej wersji aplikacji." "Przetwarzanie multimediĂłw do przesƂania nie powiodƂo się, sprĂłbuj ponownie." @@ -373,6 +403,9 @@ Czy na pewno chcesz kontynuować?" "Przetwarzanie multimediĂłw do przesƂania nie powiodƂo się, sprĂłbuj ponownie." "Nie moĆŒna pobrać danych uĆŒytkownika" "Wiadomoƛć w %1$s" + "RozwiƄ" + "Zmniejsz" + "JuĆŒ oglądasz ten pokĂłj!" "%1$s z %2$s" "%1$s przypiętych wiadomoƛci" "Wczytywanie wiadomoƛci
" diff --git a/libraries/ui-strings/src/main/res/values-sk/translations.xml b/libraries/ui-strings/src/main/res/values-sk/translations.xml index 250691e703..77f162abf2 100644 --- a/libraries/ui-strings/src/main/res/values-sk/translations.xml +++ b/libraries/ui-strings/src/main/res/values-sk/translations.xml @@ -8,11 +8,19 @@ "%1$d zadanĂ© číslice" "%1$d zadanĂœch číslic" + "UpraviĆ„ obrĂĄzok" + "CelĂĄ adresa bude %1$s" + "Podrobnosti o ĆĄifrovanĂ­" "SkryĆ„ heslo" "PripojiĆ„ sa k hovoru" "PrejsĆ„ na spodok" + "PresunĂșĆ„ mapu na moju polohu" "Iba zmienky" "StlmenĂ©" + "NovĂ© zmienky" + "NovĂ© sprĂĄvy" + "PrebiehajĂșci hovor" + "ObrĂĄzok inĂ©ho pouĆŸĂ­vateÄŸa" "Strana %1$d" "PozastaviĆ„" "HlasovĂĄ sprĂĄva, dÄșĆŸka:%1$s, aktuĂĄlna pozĂ­cia: %2$s" @@ -32,15 +40,20 @@ "Ć€uknutĂ­m zobrazĂ­te vĆĄetko" "OdstrĂĄniĆ„ reakciu s %1$s" "OdstrĂĄniĆ„ reakciu s %1$s" + "ObrĂĄzok miestnosti" "OdoslaĆ„ sĂșbory" "ZobraziĆ„ heslo" "ZačaĆ„ hovor" + "VyĆŸaduje sa časovo obmedzenĂĄ akcia" + "OpustenĂĄ miestnosĆ„" + "ProfilovĂœ obrĂĄzok" "PouĆŸĂ­vateÄŸskĂ© menu" "ZobraziĆ„ profilovĂœ obrĂĄzok" "ZobraziĆ„ podrobnosti" "HlasovĂĄ sprĂĄva, dÄșĆŸka: %1$s" "NahraĆ„ hlasovĂș sprĂĄvu." "ZastaviĆ„ nahrĂĄvanie" + "VĂĄĆĄ profilovĂœ obrĂĄzok" "PrijaĆ„" "PridaĆ„ titulok" "PridaĆ„ na časovĂș os" @@ -99,6 +112,7 @@ "Nie" "Teraz nie" "OK" + "OtvoriĆ„ kontextovĂș ponuku" "OtvoriĆ„ nastavenia" "OtvoriĆ„ pomocou" "PripnĂșĆ„" @@ -123,7 +137,9 @@ "UloĆŸiĆ„" "HÄŸadaĆ„" "OdoslaĆ„" + "OdoslaĆ„ upravenĂș sprĂĄva" "OdoslaĆ„ sprĂĄvu" + "OdoslaĆ„ hlasovĂș sprĂĄvu" "ZdieÄŸaĆ„" "ZdieÄŸaĆ„ odkaz" "ZobraziĆ„" @@ -139,6 +155,7 @@ "KlepnutĂ­m zĂ­skate moĆŸnosti" "SkĂșste to znova" "OdopnĂșĆ„" + "ZobraziĆ„" "ZobraziĆ„ na časovej osi" "ZobraziĆ„ zdroj" "Áno" @@ -360,14 +377,18 @@ Naozaj chcete pokračovaĆ„?" "Ahoj, porozprĂĄvajte sa so mnou na %1$s: %2$s" "%1$s Android" "ZĂșrivo potriasĆ„ pre nahlĂĄsenie chyby" + "SnĂ­mka obrazovky" "%1$s: %2$s" "MoĆŸnosti" "OdstrĂĄniĆ„ %1$s" "Nastavenia" "Nepodarilo sa vybraĆ„ mĂ©dium, skĂșste to prosĂ­m znova." "Titulky nemusia byĆ„ viditeÄŸnĂ© pre ÄŸudĂ­ pouĆŸĂ­vajĂșcich starĆĄie aplikĂĄcie." + "SĂșbor sa nepodarilo nahraĆ„." "Nepodarilo sa spracovaĆ„ mĂ©diĂĄ na odoslanie, skĂșste to prosĂ­m znova." "Nepodarilo sa nahraĆ„ mĂ©diĂĄ, skĂșste to prosĂ­m znova." + "MaximĂĄlna povolenĂĄ veÄŸkosĆ„ sĂșboru je %1$s." + "SĂșbor je prĂ­liĆĄ veÄŸkĂœ na nahratie" "Stlačte sprĂĄvu a vyberte moĆŸnosĆ„ „%1$s“, ktorĂș chcete zahrnĂșĆ„ sem." "Pripnite dĂŽleĆŸitĂ© sprĂĄvy, aby sa dali ÄŸahko nĂĄjsĆ„" diff --git a/libraries/ui-strings/src/main/res/values/localazy.xml b/libraries/ui-strings/src/main/res/values/localazy.xml index 362b2310d4..9db4828736 100644 --- a/libraries/ui-strings/src/main/res/values/localazy.xml +++ b/libraries/ui-strings/src/main/res/values/localazy.xml @@ -8,10 +8,12 @@ "%1$d digits entered" "Edit avatar" + "The full address will be %1$s" "Encryption details" "Hide password" "Join call" "Jump to bottom" + "Move the map to my location" "Mentions only" "Muted" "New mentions" @@ -41,6 +43,7 @@ "Show password" "Start a call" "Time limited action required" + "Tombstoned room" "User avatar" "User menu" "View avatar" @@ -368,14 +371,18 @@ Are you sure you want to continue?" "Hey, talk to me on %1$s: %2$s" "%1$s Android" "Rageshake to report bug" + "Screenshot" "%1$s: %2$s" "Options" "Remove %1$s" "Settings" "Failed selecting media, please try again." "Captions might not be visible to people using older apps." + "The file could not be uploaded." "Failed processing media to upload, please try again." "Failed uploading media, please try again." + "The maximum file size allowed is %1$s." + "The file is too large to upload" "Press on a message and choose “%1$s” to include here." "Pin important messages so that they can be easily discovered" diff --git a/plugins/src/main/kotlin/Versions.kt b/plugins/src/main/kotlin/Versions.kt index 64f7a6d7fb..0c2e2b7812 100644 --- a/plugins/src/main/kotlin/Versions.kt +++ b/plugins/src/main/kotlin/Versions.kt @@ -29,10 +29,10 @@ import org.gradle.jvm.toolchain.JavaLanguageVersion */ private const val versionYear = 25 -private const val versionMonth = 7 +private const val versionMonth = 8 // Note: must be in [0,99] -private const val versionReleaseNumber = 1 +private const val versionReleaseNumber = 0 object Versions { const val VERSION_CODE = (2000 + versionYear) * 10_000 + versionMonth * 100 + versionReleaseNumber diff --git a/screenshots/de/features.home.impl.components_DefaultRoomListTopBarWithIndicator_Day_0_de.png b/screenshots/de/features.home.impl.components_DefaultRoomListTopBarWithIndicator_Day_0_de.png index 81502aa260..a8a4cccb3e 100644 --- a/screenshots/de/features.home.impl.components_DefaultRoomListTopBarWithIndicator_Day_0_de.png +++ b/screenshots/de/features.home.impl.components_DefaultRoomListTopBarWithIndicator_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4da31f61c7fd79c994b703d160a31f046590ca144100dd5ad50f522af4a8d6b8 -size 40716 +oid sha256:c8e604938b500e4c1b015d4e67ea711a0307360544e95f001a82505d8fb9c307 +size 26838 diff --git a/screenshots/de/features.home.impl.components_DefaultRoomListTopBar_Day_0_de.png b/screenshots/de/features.home.impl.components_DefaultRoomListTopBar_Day_0_de.png index c74619a286..f4dff34d5d 100644 --- a/screenshots/de/features.home.impl.components_DefaultRoomListTopBar_Day_0_de.png +++ b/screenshots/de/features.home.impl.components_DefaultRoomListTopBar_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f7ca367d0e4117fa458470bb4230adebd3c08547a63ae54eaafb09e6522cb0e9 -size 40435 +oid sha256:813e89ed98813f77b3ba5d0594049ced77c052dd074eb334f3df4567157d58e1 +size 26578 diff --git a/screenshots/de/features.home.impl_HomeView_Day_0_de.png b/screenshots/de/features.home.impl_HomeView_Day_0_de.png index 9facb9192b..8863bb54d5 100644 --- a/screenshots/de/features.home.impl_HomeView_Day_0_de.png +++ b/screenshots/de/features.home.impl_HomeView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0e4c98b0229caeb956cf81b81471da453cb8df1f8d544e33442a295e5fda4e77 -size 84014 +oid sha256:3d927be100fd87aa527c7cb6800e8fb8840c380db80158abc1cc7680fb9404f1 +size 68356 diff --git a/screenshots/de/features.home.impl_HomeView_Day_10_de.png b/screenshots/de/features.home.impl_HomeView_Day_10_de.png index 2b16436820..2b4d34d487 100644 --- a/screenshots/de/features.home.impl_HomeView_Day_10_de.png +++ b/screenshots/de/features.home.impl_HomeView_Day_10_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1125f3cc2f072a6dbb20a4b5ec2a38e6b64ce4f63999f07076978ee61aada93d -size 50269 +oid sha256:8905fc13c8292a1549b1f8e8b7da31eb11f194ef33eec8a58ef40de7bb702b4d +size 37952 diff --git a/screenshots/de/features.home.impl_HomeView_Day_13_de.png b/screenshots/de/features.home.impl_HomeView_Day_13_de.png index 7054f6ad42..7f0903bebb 100644 --- a/screenshots/de/features.home.impl_HomeView_Day_13_de.png +++ b/screenshots/de/features.home.impl_HomeView_Day_13_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f028b80eb5328c941dc919d78776b63460385004f4c9040672f1c2c887f1d4fd -size 107800 +oid sha256:8a30d9260d6b58b015c0e0329b8c1cda77c3fff7fb2daf8199917d269b540178 +size 91609 diff --git a/screenshots/de/features.home.impl_HomeView_Day_14_de.png b/screenshots/de/features.home.impl_HomeView_Day_14_de.png index 98fe76fa22..c33ef6c4d0 100644 --- a/screenshots/de/features.home.impl_HomeView_Day_14_de.png +++ b/screenshots/de/features.home.impl_HomeView_Day_14_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b14795260115bc3eb91066fba38bdcfcadd3cd97d7b2b63188e719c821de9739 -size 105783 +oid sha256:9dfe8684f7210b0b34a4fa0318d0e39bdcabf439f57b0c4ad4ee4a0c27d71597 +size 90314 diff --git a/screenshots/de/features.home.impl_HomeView_Day_15_de.png b/screenshots/de/features.home.impl_HomeView_Day_15_de.png new file mode 100644 index 0000000000..8c62a7fa5a --- /dev/null +++ b/screenshots/de/features.home.impl_HomeView_Day_15_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b39b859bd3df147b341468e6e021b74bb1edcf37c3eda4781c68609f088eaf4c +size 56749 diff --git a/screenshots/de/features.home.impl_HomeView_Day_1_de.png b/screenshots/de/features.home.impl_HomeView_Day_1_de.png index 91e84e64cd..62c3a00509 100644 --- a/screenshots/de/features.home.impl_HomeView_Day_1_de.png +++ b/screenshots/de/features.home.impl_HomeView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:10186bb917f1ac07ffea0e8fbebbdc3d2f311ba58a1eba29ffb29645eb1429c6 -size 83780 +oid sha256:a7fe483bbbbd2de674f34e8c85b046f3018316196d65a277011e0687aca30425 +size 69537 diff --git a/screenshots/de/features.home.impl_HomeView_Day_2_de.png b/screenshots/de/features.home.impl_HomeView_Day_2_de.png index 9facb9192b..8863bb54d5 100644 --- a/screenshots/de/features.home.impl_HomeView_Day_2_de.png +++ b/screenshots/de/features.home.impl_HomeView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0e4c98b0229caeb956cf81b81471da453cb8df1f8d544e33442a295e5fda4e77 -size 84014 +oid sha256:3d927be100fd87aa527c7cb6800e8fb8840c380db80158abc1cc7680fb9404f1 +size 68356 diff --git a/screenshots/de/features.home.impl_HomeView_Day_3_de.png b/screenshots/de/features.home.impl_HomeView_Day_3_de.png index 994d5a4a33..f2ff4c080c 100644 --- a/screenshots/de/features.home.impl_HomeView_Day_3_de.png +++ b/screenshots/de/features.home.impl_HomeView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0acc8622aa49dc827461b9714f7705862aad85a3381f7d273aedee2ee2dab74e -size 82992 +oid sha256:c104a38ccb21d74b42f03e183ab130b594caa7a3f230c68f5fb82c03a1670325 +size 68127 diff --git a/screenshots/de/features.home.impl_HomeView_Day_5_de.png b/screenshots/de/features.home.impl_HomeView_Day_5_de.png index 9facb9192b..8863bb54d5 100644 --- a/screenshots/de/features.home.impl_HomeView_Day_5_de.png +++ b/screenshots/de/features.home.impl_HomeView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0e4c98b0229caeb956cf81b81471da453cb8df1f8d544e33442a295e5fda4e77 -size 84014 +oid sha256:3d927be100fd87aa527c7cb6800e8fb8840c380db80158abc1cc7680fb9404f1 +size 68356 diff --git a/screenshots/de/features.home.impl_HomeView_Day_6_de.png b/screenshots/de/features.home.impl_HomeView_Day_6_de.png index 2cbf067c14..dbc4315b1f 100644 --- a/screenshots/de/features.home.impl_HomeView_Day_6_de.png +++ b/screenshots/de/features.home.impl_HomeView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4a78db5c27dc2a7a1192c4cc5ef0fd156c74639c85dfb578d246da3ac11ba6ba -size 63181 +oid sha256:4c72693c4cb45ff53c2e5a9c8a4f04d13009d5b30f4e7921bf164d3c2ace71c3 +size 56543 diff --git a/screenshots/de/features.home.impl_HomeView_Day_7_de.png b/screenshots/de/features.home.impl_HomeView_Day_7_de.png index 4d7b09165e..b94499e1ec 100644 --- a/screenshots/de/features.home.impl_HomeView_Day_7_de.png +++ b/screenshots/de/features.home.impl_HomeView_Day_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c195eccd87cdd2d6cbdd1db91289332251b95d3723c0e74ec280d5294023fe30 -size 62514 +oid sha256:39e127b2810b5ee65a433c18bc9a202b5860a4d8ae8822b98dd425b00b673ce8 +size 55882 diff --git a/screenshots/de/features.home.impl_HomeView_Day_8_de.png b/screenshots/de/features.home.impl_HomeView_Day_8_de.png index 05d0af262a..90b16a4a0c 100644 --- a/screenshots/de/features.home.impl_HomeView_Day_8_de.png +++ b/screenshots/de/features.home.impl_HomeView_Day_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d7d95599664c8ff48e13e4fd9596b0f0f868840bee286e1584c95dc7b2f6c5d3 -size 60788 +oid sha256:d6e61ce42b7ba418dc65995225298ddff01ab3e7a3916576d454e15901189fa6 +size 54112 diff --git a/screenshots/de/features.home.impl_HomeView_Day_9_de.png b/screenshots/de/features.home.impl_HomeView_Day_9_de.png index 1e639ca993..6d25b51717 100644 --- a/screenshots/de/features.home.impl_HomeView_Day_9_de.png +++ b/screenshots/de/features.home.impl_HomeView_Day_9_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3f2b6e35f63a3fa65ca5cc29f9d8ee4d4d1ab05574f5d047ad20652171ffaa22 -size 106016 +oid sha256:2eb28d4f61518822f40f966dbc5aceb8a75f949be5cc352dcdd429cdd23311bc +size 89794 diff --git a/screenshots/de/features.joinroom.impl_JoinRoomView_Day_10_de.png b/screenshots/de/features.joinroom.impl_JoinRoomView_Day_10_de.png index dce73bf2b5..079fb2f4a7 100644 --- a/screenshots/de/features.joinroom.impl_JoinRoomView_Day_10_de.png +++ b/screenshots/de/features.joinroom.impl_JoinRoomView_Day_10_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a399a5f72fd163ad19d6959fbc9f66248301f7b600394ae41712426f9a370921 -size 50313 +oid sha256:b4246083880369a95a033b407fa25cb28a38475e026c8414f286bc515ec7b223 +size 45734 diff --git a/screenshots/de/features.joinroom.impl_JoinRoomView_Day_11_de.png b/screenshots/de/features.joinroom.impl_JoinRoomView_Day_11_de.png index 4c8c93a210..24b9ae246d 100644 --- a/screenshots/de/features.joinroom.impl_JoinRoomView_Day_11_de.png +++ b/screenshots/de/features.joinroom.impl_JoinRoomView_Day_11_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e5b35b4a6180ab7087ead686f92a2804db637f9812811eece972fd0ca814ade4 -size 48358 +oid sha256:097dc8f1c616aeb6f0ca2b43d83c5828414dec4338b661a23e74bcc461662ef9 +size 43184 diff --git a/screenshots/de/features.joinroom.impl_JoinRoomView_Day_12_de.png b/screenshots/de/features.joinroom.impl_JoinRoomView_Day_12_de.png index 5a318a8ffb..677965249a 100644 --- a/screenshots/de/features.joinroom.impl_JoinRoomView_Day_12_de.png +++ b/screenshots/de/features.joinroom.impl_JoinRoomView_Day_12_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bde3d040e3b3a1d745422f7daa4b116552d797315225f3fd8f8a1f2064ceab0f -size 49605 +oid sha256:4016ef3b3562403e6e5de04d274e0c434d47e1cfccf4d71b61e0765334793cd7 +size 44439 diff --git a/screenshots/de/features.joinroom.impl_JoinRoomView_Day_16_de.png b/screenshots/de/features.joinroom.impl_JoinRoomView_Day_16_de.png index 5be5f70731..39befed50a 100644 --- a/screenshots/de/features.joinroom.impl_JoinRoomView_Day_16_de.png +++ b/screenshots/de/features.joinroom.impl_JoinRoomView_Day_16_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:174fe7d3e527a760dfec6ee4ea08808c701bc03a41b024994e9475232d0d5aa6 -size 52860 +oid sha256:13f9c8734c808ab5211c9fa5a245f62007514f69c8df1fd8ef03db402e6a616e +size 48168 diff --git a/screenshots/de/features.joinroom.impl_JoinRoomView_Day_1_de.png b/screenshots/de/features.joinroom.impl_JoinRoomView_Day_1_de.png index d4ef1b6d4d..ef68b18dc8 100644 --- a/screenshots/de/features.joinroom.impl_JoinRoomView_Day_1_de.png +++ b/screenshots/de/features.joinroom.impl_JoinRoomView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b60a08065ce81f4ec5e4767311299e5130822fbb2657d52ed5d78cb12850bfb0 -size 42551 +oid sha256:ba34a04c2eb5eae936579ca7ad4c5832b3fae72edf7f82cbcc5076ff6e3ca1c9 +size 37802 diff --git a/screenshots/de/features.joinroom.impl_JoinRoomView_Day_2_de.png b/screenshots/de/features.joinroom.impl_JoinRoomView_Day_2_de.png index bddece6596..2fec6d8df0 100644 --- a/screenshots/de/features.joinroom.impl_JoinRoomView_Day_2_de.png +++ b/screenshots/de/features.joinroom.impl_JoinRoomView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bde6c76f079cb2d234e626dd06ce12810567290f0a63edc5da006b7d47ecd59f -size 44360 +oid sha256:16353cc0c4f11e431bf19701fc10f773e29c40b196cf99a6fed5fd3d33e720ce +size 39581 diff --git a/screenshots/de/features.joinroom.impl_JoinRoomView_Day_3_de.png b/screenshots/de/features.joinroom.impl_JoinRoomView_Day_3_de.png index 2e41e77fe3..5e1bdab9a7 100644 --- a/screenshots/de/features.joinroom.impl_JoinRoomView_Day_3_de.png +++ b/screenshots/de/features.joinroom.impl_JoinRoomView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d6d386b185708760a4ce00aaeef6fc129a54599d7ea8773a57e21b584b48192a -size 32600 +oid sha256:31f384e8b63e9c7de6e9c4dc35d90bf7dc0241bd57cdadf564e197ca024c3464 +size 27918 diff --git a/screenshots/de/features.joinroom.impl_JoinRoomView_Day_5_de.png b/screenshots/de/features.joinroom.impl_JoinRoomView_Day_5_de.png index 9ae277ec44..fe5a338787 100644 --- a/screenshots/de/features.joinroom.impl_JoinRoomView_Day_5_de.png +++ b/screenshots/de/features.joinroom.impl_JoinRoomView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a7215d224c586efad218d642d76792b258e784c1a8430bc9ad9e2d058e9f23c4 -size 33308 +oid sha256:b3c6175a0eda5634429977d464b4cc7894271cc868cc5f60239d12641f3366a3 +size 32008 diff --git a/screenshots/de/features.location.impl.send_SendLocationView_Day_0_de.png b/screenshots/de/features.location.impl.send_SendLocationView_Day_0_de.png index b4b2bf2eef..7f17e1bce0 100644 --- a/screenshots/de/features.location.impl.send_SendLocationView_Day_0_de.png +++ b/screenshots/de/features.location.impl.send_SendLocationView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b0ff8f6f5118ddb6a9b5bf972f2f024cc347c8fd7c0fbe4b1b25d49c766c9103 -size 20549 +oid sha256:07871bad0b4fff7c26d2b7ae5caad3adcc10b94db3d20957b04ac4f4a9beb480 +size 19248 diff --git a/screenshots/de/features.location.impl.send_SendLocationView_Day_1_de.png b/screenshots/de/features.location.impl.send_SendLocationView_Day_1_de.png index fc977b262e..4f451bc766 100644 --- a/screenshots/de/features.location.impl.send_SendLocationView_Day_1_de.png +++ b/screenshots/de/features.location.impl.send_SendLocationView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cd0e4c0319acaa70e64db1d20a4f6686795e0d25dfd8593dc88addc088eeeb3b -size 38535 +oid sha256:7fd93653089fa51c42f5fc75d4733461a4cfb47853a677bd035789596b8586b3 +size 37713 diff --git a/screenshots/de/features.location.impl.send_SendLocationView_Day_2_de.png b/screenshots/de/features.location.impl.send_SendLocationView_Day_2_de.png index c55b053210..bb4ce9be93 100644 --- a/screenshots/de/features.location.impl.send_SendLocationView_Day_2_de.png +++ b/screenshots/de/features.location.impl.send_SendLocationView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3780be557ddc91942003163998553770c07e08cd4617fe013c95c1e2b8de18dc -size 35096 +oid sha256:74d324f86d614041f49b6ef019a0141d57ad0c7a62ae71921ff7e4ee662b94e7 +size 34268 diff --git a/screenshots/de/features.location.impl.send_SendLocationView_Day_3_de.png b/screenshots/de/features.location.impl.send_SendLocationView_Day_3_de.png index b4b2bf2eef..7f17e1bce0 100644 --- a/screenshots/de/features.location.impl.send_SendLocationView_Day_3_de.png +++ b/screenshots/de/features.location.impl.send_SendLocationView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b0ff8f6f5118ddb6a9b5bf972f2f024cc347c8fd7c0fbe4b1b25d49c766c9103 -size 20549 +oid sha256:07871bad0b4fff7c26d2b7ae5caad3adcc10b94db3d20957b04ac4f4a9beb480 +size 19248 diff --git a/screenshots/de/features.location.impl.send_SendLocationView_Day_4_de.png b/screenshots/de/features.location.impl.send_SendLocationView_Day_4_de.png index 711a0c27f6..f607bde75d 100644 --- a/screenshots/de/features.location.impl.send_SendLocationView_Day_4_de.png +++ b/screenshots/de/features.location.impl.send_SendLocationView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f9a20df5b62f9dc31f1b3e9d3d4753bc1884e1d648932d5088489c88c009fde0 -size 20691 +oid sha256:89aec8891a8519adc8d1f3b7302da5f61acf6c47eefa763fb011d12ef5eab6e2 +size 19337 diff --git a/screenshots/de/features.location.impl.show_ShowLocationView_Day_0_de.png b/screenshots/de/features.location.impl.show_ShowLocationView_Day_0_de.png index dec4dcce70..889f33bc8e 100644 --- a/screenshots/de/features.location.impl.show_ShowLocationView_Day_0_de.png +++ b/screenshots/de/features.location.impl.show_ShowLocationView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e0e968ca4aa0e2df6e2ffee687e1a41da4f89e504863d6948e798a310a04b863 -size 12349 +oid sha256:7ccfec55b0d28d23a152e9dd2c7f59af77064d7267793ebe1b30c645e34a2c97 +size 11120 diff --git a/screenshots/de/features.location.impl.show_ShowLocationView_Day_1_de.png b/screenshots/de/features.location.impl.show_ShowLocationView_Day_1_de.png index 7bcab8a706..9bebed6b6a 100644 --- a/screenshots/de/features.location.impl.show_ShowLocationView_Day_1_de.png +++ b/screenshots/de/features.location.impl.show_ShowLocationView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:56df4459c4c5a3a875ba07862e60d4a38ef8be73fb6b43a8228b579ffb17f5d5 -size 33108 +oid sha256:b980c8e7aadb7f44e07557682b461030febd1adef91fa4d22b06371d673da141 +size 32226 diff --git a/screenshots/de/features.location.impl.show_ShowLocationView_Day_2_de.png b/screenshots/de/features.location.impl.show_ShowLocationView_Day_2_de.png index 4a203057f3..3d03494191 100644 --- a/screenshots/de/features.location.impl.show_ShowLocationView_Day_2_de.png +++ b/screenshots/de/features.location.impl.show_ShowLocationView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5c392ffaa85b668c496f37e8477d8522085bb389056551aa5657cada56055113 -size 29678 +oid sha256:4c3b087fc80d35e8fab46bb86563ed419f78d4dbde91a88f9110da7ae61b1d87 +size 28830 diff --git a/screenshots/de/features.location.impl.show_ShowLocationView_Day_3_de.png b/screenshots/de/features.location.impl.show_ShowLocationView_Day_3_de.png index dec4dcce70..889f33bc8e 100644 --- a/screenshots/de/features.location.impl.show_ShowLocationView_Day_3_de.png +++ b/screenshots/de/features.location.impl.show_ShowLocationView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e0e968ca4aa0e2df6e2ffee687e1a41da4f89e504863d6948e798a310a04b863 -size 12349 +oid sha256:7ccfec55b0d28d23a152e9dd2c7f59af77064d7267793ebe1b30c645e34a2c97 +size 11120 diff --git a/screenshots/de/features.location.impl.show_ShowLocationView_Day_4_de.png b/screenshots/de/features.location.impl.show_ShowLocationView_Day_4_de.png index e1414f1c6a..833f71e2c2 100644 --- a/screenshots/de/features.location.impl.show_ShowLocationView_Day_4_de.png +++ b/screenshots/de/features.location.impl.show_ShowLocationView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0bc66e7e3e436d75b078447af2a724fb7db97f72a432266bbf1acd78a9d3a34c -size 12515 +oid sha256:8438791dee20a45ff5831b5aa9986ae06ef72a6a3f6e8eee20579271ff951a84 +size 11172 diff --git a/screenshots/de/features.location.impl.show_ShowLocationView_Day_5_de.png b/screenshots/de/features.location.impl.show_ShowLocationView_Day_5_de.png index acb766a667..49d96b5747 100644 --- a/screenshots/de/features.location.impl.show_ShowLocationView_Day_5_de.png +++ b/screenshots/de/features.location.impl.show_ShowLocationView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b55954ad65f8b55299d1dc38f518a5f4d27834ba1f893ca210aa53c54a34131d -size 16108 +oid sha256:2f3895ad80e688827b51db4cfd1bce133d47e17041256dd37d4d70384e91a92f +size 14880 diff --git a/screenshots/de/features.location.impl.show_ShowLocationView_Day_6_de.png b/screenshots/de/features.location.impl.show_ShowLocationView_Day_6_de.png index 70138eedcd..a0366c5f0c 100644 --- a/screenshots/de/features.location.impl.show_ShowLocationView_Day_6_de.png +++ b/screenshots/de/features.location.impl.show_ShowLocationView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a4d3e2dadc913e7ac1773879670ac49b48a750aca22b337b435c478630e0527f -size 24693 +oid sha256:8d7fffab84bef74ee80169ee2d208aec3f784edb3b2be5dbf1dfb3382e4a865c +size 23567 diff --git a/screenshots/de/features.location.impl.show_ShowLocationView_Day_7_de.png b/screenshots/de/features.location.impl.show_ShowLocationView_Day_7_de.png index 75582c0b67..32ce8cb936 100644 --- a/screenshots/de/features.location.impl.show_ShowLocationView_Day_7_de.png +++ b/screenshots/de/features.location.impl.show_ShowLocationView_Day_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a4cca367f04eb0ffe302f85eb4cf56db4146518e93bf6a2a264050b0e523bd05 -size 27063 +oid sha256:dd1db52f3fa34e6b3c137be100cb34ed5ea917ca8645d5382da0b8d8b0acdfdf +size 25889 diff --git a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_0_de.png b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_0_de.png index d9a7c9b57c..67c478c5e0 100644 --- a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_0_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6844f7713a4b428a0a1ccfef5980721dc3a561d6921168134e0231cb4b8a7391 -size 396487 +oid sha256:839fcd52dba467845f12490b2bbb32bbc17cea9e0e9fe1e6d0e4bf16e514c3bf +size 396270 diff --git a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_2_de.png b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_2_de.png index 9db17042dd..8f398a5b89 100644 --- a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_2_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1397fed8a9781b1f0075fabae221d3bff827fc25aa3b918919202be2a2650d66 -size 54541 +oid sha256:4057bbb814e3ab6fa945e2d67e6b728d606cf8ee97966e33624b03301cede08a +size 54395 diff --git a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_3_de.png b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_3_de.png index d9a7c9b57c..67c478c5e0 100644 --- a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_3_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6844f7713a4b428a0a1ccfef5980721dc3a561d6921168134e0231cb4b8a7391 -size 396487 +oid sha256:839fcd52dba467845f12490b2bbb32bbc17cea9e0e9fe1e6d0e4bf16e514c3bf +size 396270 diff --git a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_4_de.png b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_4_de.png index a64ef3cb97..889afd4d50 100644 --- a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_4_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b7cf927b76093686e123f7f8e45b8ba17f58e15f58bdc1999cdc1a7c2d1f0af6 -size 54509 +oid sha256:08b134ef2b6f1dd6b09eec35eb9a21b087c4c044dc79c0d7866576dcf3b03708 +size 54365 diff --git a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_5_de.png b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_5_de.png index 18148b3dd9..e6d72de882 100644 --- a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_5_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e9bde8eb56bf3df43bc4f58122db1b4229736d9949878e8d1162e9b50bf8314c -size 55693 +oid sha256:1751a5050c3af40abde06f49f3812ec6cd69e2d69b020156d3497cb5d4c86448 +size 55544 diff --git a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_7_de.png b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_7_de.png index d9a7c9b57c..67c478c5e0 100644 --- a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_7_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsView_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6844f7713a4b428a0a1ccfef5980721dc3a561d6921168134e0231cb4b8a7391 -size 396487 +oid sha256:839fcd52dba467845f12490b2bbb32bbc17cea9e0e9fe1e6d0e4bf16e514c3bf +size 396270 diff --git a/screenshots/de/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_0_de.png b/screenshots/de/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_0_de.png index 05cd75b735..b5b6c0f9d3 100644 --- a/screenshots/de/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_0_de.png +++ b/screenshots/de/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:37d52ac68f524755b1245b8bfddc137e9ae609b2096f958b9920d2f1c6bebba2 -size 54958 +oid sha256:db5d7e1a25e726e26825d478b2a207765231f9f760ae7de4a0933f769d286f0a +size 55303 diff --git a/screenshots/de/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_1_de.png b/screenshots/de/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_1_de.png index eb84c6bfcb..ed62c54da8 100644 --- a/screenshots/de/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_1_de.png +++ b/screenshots/de/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d01f2725c05013a8a5fbd2cc925ea692a1ced85e2dba1ee057891bf675696226 -size 65637 +oid sha256:8f308b2c77832c7a0524708c0d252acfb25534f5717fcaa5c7ec74c6ce97a957 +size 65932 diff --git a/screenshots/de/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_2_de.png b/screenshots/de/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_2_de.png index ab80c73355..2304ec677f 100644 --- a/screenshots/de/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_2_de.png +++ b/screenshots/de/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:927c67c23735b8eaae8873aaf8e62e0678f9a5418fbfcabf8ee436ee5785a647 -size 67317 +oid sha256:5c372fe6127c540d2272f857008224a552a633ad83c18934edb33b639d857381 +size 67598 diff --git a/screenshots/de/features.messages.impl.pinned.list_PinnedMessagesListView_Day_3_de.png b/screenshots/de/features.messages.impl.pinned.list_PinnedMessagesListView_Day_3_de.png index 63c3142638..3ab47b8103 100644 --- a/screenshots/de/features.messages.impl.pinned.list_PinnedMessagesListView_Day_3_de.png +++ b/screenshots/de/features.messages.impl.pinned.list_PinnedMessagesListView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e185a725d6d72f67f87549eebb436abd6b5c252674e38a217af27d2b67fd1a1f -size 43737 +oid sha256:2f9d82dd9f47d136f1816276ecb77b1f01588cb5d075e655c7d83822a0354f7f +size 43881 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_3_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_3_de.png index 7b5265b4b1..ac2baa4b52 100644 --- a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_3_de.png +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b63e95b0309690eb2907f5390d068dba3199e9f91de0693f2b2a1e1c387344e3 -size 34026 +oid sha256:6f4e60f8e098b2c28e92932de91aaf3d362a9d02232e0043d12c554cdba69f77 +size 34077 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_4_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_4_de.png index c17fee2d09..3f6c958046 100644 --- a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_4_de.png +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:82665bcfa8bac9fd29058bb093fe4cbfbd119a8b446f3104a78cbfca6df422d3 -size 35413 +oid sha256:7664c4f77b92388577600d325f09500c05b8db69ec74dc8fda88a3fa0dcc9507 +size 35442 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_7_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_7_de.png index 757be6e7b1..5750748419 100644 --- a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_7_de.png +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e4c20415dd48053f55274361837c3b181d70c050c4a5b5fc3300fdcbe4114e65 -size 11201 +oid sha256:8bdf62b2b66d60143ce42f430d2fdcf213c189a518859c47dd0b0cbd5f742e5f +size 11196 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowUtd_Day_0_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowUtd_Day_0_de.png index 0653c9bc74..0598471522 100644 --- a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowUtd_Day_0_de.png +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowUtd_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:842994dcbfe82a3bf6874e2167d717c2a0bbe75c37a3499b82c7856fb4432372 -size 38520 +oid sha256:707b9f0f6ba77da8963e83a93667f25df3bdef1c3bff803bb80ed47ad769b5e6 +size 38564 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Day_0_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Day_0_de.png index 5ccb5b1d48..d397a933db 100644 --- a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Day_0_de.png +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5b62274b645a661271cdd83dae6c55947d76f19aee580d701a096b46d625089e -size 79353 +oid sha256:e94250cb7c239d3906a580d793474cea2d5a85667e50467530cc194b97a30ff8 +size 79354 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_0_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_0_de.png index f183602a07..6f8c3e3535 100644 --- a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_0_de.png +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cb8a3fad1817764b52e0db7c3f5c6b7e103438928399f4344713272a53374662 -size 364750 +oid sha256:a41330d3b56718be43ef7f560f1af92b77f5d849fba55a8af4a80386ad99f55e +size 364769 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_1_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_1_de.png index 6cedac977c..e1be0a06ea 100644 --- a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_1_de.png +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:51df75495180e7665befca85e0e986d26481660cf6f6f6e1cc95b4caecd36955 -size 370225 +oid sha256:c35bd350c2c575dab4dae94be3211c035e757cca8b71bc75cccc68b7a5ac691b +size 370223 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_4_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_4_de.png index 951b754bfd..c95c73f0ad 100644 --- a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_4_de.png +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:84f9227018c9ece9ca911e33b50073f3674cf5c3d2473b109b35c8e3af597fce -size 363930 +oid sha256:6d3d008ea29f090a6b0fd8b93f91c6f75f1e0be62ded58baf5ad2a6c773ff49d +size 363977 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_8_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_8_de.png index 4e388fe750..a114103f7a 100644 --- a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_8_de.png +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fdc57799e07bcddd56f9edde75113bc4cffa1ba8c02370ae3fe0d07b1106da51 -size 365987 +oid sha256:c83e0abe2471c68101b336f325a25cd98740d3e13bd6a0fb0b306840729aca3b +size 365975 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventTimestampBelow_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventTimestampBelow_de.png index 55e117e656..916593d3a7 100644 --- a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventTimestampBelow_de.png +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventTimestampBelow_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0db1de722615d9320694873a12af1bfa6347ffba937587c11248fde4e4845fbf -size 54499 +oid sha256:594a457f5d601dcfdedcd8311335e54d4ddf9857b0860a642717bf08465c784d +size 56965 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentExpanded_Day_0_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentExpanded_Day_0_de.png index f876010a48..90682b818d 100644 --- a/screenshots/de/features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentExpanded_Day_0_de.png +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentExpanded_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bd33a193848c1e8183c224f1df06e1f9aa4f500a63b24ab7d22de9c505e390e2 -size 17206 +oid sha256:ba8821f123b75b46a8f7415da1ec3a70366b771d62410edd867dc9e9f096263a +size 17314 diff --git a/screenshots/de/features.messages.impl.timeline_TimelineViewMessageShield_Day_0_de.png b/screenshots/de/features.messages.impl.timeline_TimelineViewMessageShield_Day_0_de.png index a058128637..3f57585bb3 100644 --- a/screenshots/de/features.messages.impl.timeline_TimelineViewMessageShield_Day_0_de.png +++ b/screenshots/de/features.messages.impl.timeline_TimelineViewMessageShield_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:696794f694b55ba1e21d0031b22d10537be836188d8eaa6ea1dfbad4be0ca616 -size 37566 +oid sha256:20c14be9d765e7dedf3cb27837b7489604a234ea35094a842cbd79238854e193 +size 37563 diff --git a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_0_de.png b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_0_de.png index 812a37e1a9..af9e11b8bc 100644 --- a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_0_de.png +++ b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9a6d76006cefee9da331704ebdd847efdd0f833569db0177a61d2115a43858ce -size 50431 +oid sha256:578cafe0d68fa6c507987d6fc6f0148c49b9147183c9284741d756e277520a81 +size 50655 diff --git a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_11_de.png b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_11_de.png index a3d2247b40..c40cd12c7b 100644 --- a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_11_de.png +++ b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_11_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f3cfcf4a2c883cc3db395d14d02b96a4b211b4a9dc24191c222169700b167276 -size 84080 +oid sha256:a6c8684c72d94f8a3c258f93c945864794ad628ac97e4b252d686b6248c94be3 +size 87890 diff --git a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_12_de.png b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_12_de.png index fc9527c1a6..442b339881 100644 --- a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_12_de.png +++ b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_12_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a51aa3750c9174ced3bf8d50784fb64a1cc568ad81f271881adea87a753952ed -size 51907 +oid sha256:47dde4d054b41dcffd1f53ec23e176dfb7ae63b0d23da77c2c853e2b7297ee0d +size 52107 diff --git a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_13_de.png b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_13_de.png index 03defa6d0f..849c141fa2 100644 --- a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_13_de.png +++ b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_13_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a3b4a5e7816b5ea30e6d11142aec791b3099770302a082cf93462c33c57e8d25 -size 63467 +oid sha256:52f8e97d6e147072d3baea0cd6053dd3b7a3f52e20af63a5bad78936e04600c0 +size 63608 diff --git a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_14_de.png b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_14_de.png index 880fdca99b..46eacf6560 100644 --- a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_14_de.png +++ b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_14_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:60ddfc47e4f1065935045277669facc066160d86f2b74ef4b909bacbb3d08ae1 -size 48321 +oid sha256:30d9eeebe3bcabcaee6549996f6cf2211100003eb6cde001aed44a4b7fa45c13 +size 48504 diff --git a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_15_de.png b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_15_de.png index 178d082f00..aa7c6e70e9 100644 --- a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_15_de.png +++ b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_15_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:34d53f3e263791f2c432aefcd566d27fffb4034268f35e92333c932947c7f698 -size 72075 +oid sha256:7b69de010f5b6de83ab8aed5e4639d6726e955a80b621d52800a41032b65e793 +size 72249 diff --git a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_16_de.png b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_16_de.png index 579bcf9954..bf44a09967 100644 --- a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_16_de.png +++ b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_16_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:404480e7e7e5cddd60d1c097d8892520b51f70030c393b3a16bff3286f16fcf1 -size 58061 +oid sha256:63bd7132d64813a4e338fe6b75c957319f693109b3f8329062108a0e1a53f2c9 +size 58267 diff --git a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_17_de.png b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_17_de.png index 007d075c36..c1f70c7090 100644 --- a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_17_de.png +++ b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_17_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:24e32b2c8207e0aaf37d21d82cf0c920e20a56e6a4ba01ade77115b6574cbc64 -size 64357 +oid sha256:2470810d05aa4a473416a5ccaa8e029034910fe215887287bb4b1b5a6c2d216b +size 64654 diff --git a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_1_de.png b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_1_de.png index 5c46087fe4..10539a0b6b 100644 --- a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_1_de.png +++ b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f9c0079dbf4dffcf7ee49d66da6403d35e78768a375e04975c5a9a07bd637d4a -size 71828 +oid sha256:fd03e93818de76d1d4d5f8e2d489c5e38e3daf6bc314c8474a7404f3fe4e0de8 +size 71997 diff --git a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_4_de.png b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_4_de.png index 547f4aa714..1b79c45499 100644 --- a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_4_de.png +++ b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:58196ecddea174d5e941fac0766f40f04e64e7bb2cd82c1540537fb2e9f04bbe -size 70528 +oid sha256:e26eed5a96d8585576e458cd946411d08a67affdb331e6bb58f42e7e4151e2c4 +size 70623 diff --git a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_6_de.png b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_6_de.png index 7ea447b8fb..aa4feed632 100644 --- a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_6_de.png +++ b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:eb5472ae58f7f4eb4e278d2c93c4eeaad0df2721ec7811027f76bb3f602edbc3 -size 73590 +oid sha256:76bdb6c1c61b332bc9138532f33f00a26979815de969413a01f0a22d4f00d8c9 +size 73737 diff --git a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_8_de.png b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_8_de.png index e728d86f6f..bc2fbd1871 100644 --- a/screenshots/de/features.messages.impl.timeline_TimelineView_Day_8_de.png +++ b/screenshots/de/features.messages.impl.timeline_TimelineView_Day_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f74a7a73434450cf5d984a476433140a4857b8ee958498db528a2e32f3b23f56 -size 53423 +oid sha256:f21cf03b880afcdde46858c862fbbbf6ddbdb6b070ef328f27567a42fb328bf3 +size 53848 diff --git a/screenshots/de/features.messages.impl_MessagesView_Day_0_de.png b/screenshots/de/features.messages.impl_MessagesView_Day_0_de.png index 6f776b670b..7fedcf0d6f 100644 --- a/screenshots/de/features.messages.impl_MessagesView_Day_0_de.png +++ b/screenshots/de/features.messages.impl_MessagesView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ada5d53903f469cb0b0b981546826b6664ce3f983e5dcab74b7d99bc8d568cbc -size 57832 +oid sha256:f040348f28a6ff3ff6eb6964b9f3c6a3e034e251c29c967745f99aef9cc53a8b +size 58061 diff --git a/screenshots/de/features.messages.impl_MessagesView_Day_10_de.png b/screenshots/de/features.messages.impl_MessagesView_Day_10_de.png index 36b43e7db7..4689814a90 100644 --- a/screenshots/de/features.messages.impl_MessagesView_Day_10_de.png +++ b/screenshots/de/features.messages.impl_MessagesView_Day_10_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:092117db4970bb43f37aa04ae4ea3e91129bae8ab3ed05fd594fc3fb964bb317 -size 57860 +oid sha256:45d3ddcfaaceca77abdd26a56b4bba0c6785538755d9a220b6c77037feb13e92 +size 58091 diff --git a/screenshots/de/features.messages.impl_MessagesView_Day_11_de.png b/screenshots/de/features.messages.impl_MessagesView_Day_11_de.png index f2e38e02d8..d8c2bdf8cf 100644 --- a/screenshots/de/features.messages.impl_MessagesView_Day_11_de.png +++ b/screenshots/de/features.messages.impl_MessagesView_Day_11_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:47eb746b2ab54a1228e213d4f6920105cb863afa3bc98be46ba7d5f1a186d8a7 -size 61180 +oid sha256:fb7891823f54defdeb571976833ebd5912435aa714af2949ad8178afa6ecabcd +size 61402 diff --git a/screenshots/de/features.messages.impl_MessagesView_Day_12_de.png b/screenshots/de/features.messages.impl_MessagesView_Day_12_de.png index f4cbcfc1a5..a475482774 100644 --- a/screenshots/de/features.messages.impl_MessagesView_Day_12_de.png +++ b/screenshots/de/features.messages.impl_MessagesView_Day_12_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:73033c71b99d30498239bb98c959f27cc37d7217e4bf1c0fcf3f56665cfc8357 -size 60151 +oid sha256:a6290168b8d44dbcaa2b10ed27a948c80ab3f2844b9c26748f34462252d99761 +size 60370 diff --git a/screenshots/de/features.messages.impl_MessagesView_Day_13_de.png b/screenshots/de/features.messages.impl_MessagesView_Day_13_de.png index 3f21c36631..3b810f625e 100644 --- a/screenshots/de/features.messages.impl_MessagesView_Day_13_de.png +++ b/screenshots/de/features.messages.impl_MessagesView_Day_13_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2029d42a8c696f597438c9dfa38639eadd1f10a00ee404ccb07bd17c9f480f4e -size 60078 +oid sha256:4c200ee6c5fd2cb744bfce4adb019388ac839ab20fd79460c9555d48079418b5 +size 60288 diff --git a/screenshots/de/features.messages.impl_MessagesView_Day_14_de.png b/screenshots/de/features.messages.impl_MessagesView_Day_14_de.png index 81246168f3..e89832b6de 100644 --- a/screenshots/de/features.messages.impl_MessagesView_Day_14_de.png +++ b/screenshots/de/features.messages.impl_MessagesView_Day_14_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d540ccf947f37ec51f16a35c824d0eb0ffe0534424b889a170b81907db576605 -size 64802 +oid sha256:5ffc2bb37883894dc3c0bbc1e69c9af7b24862056d002cd171848d91ae017568 +size 64935 diff --git a/screenshots/de/features.messages.impl_MessagesView_Day_1_de.png b/screenshots/de/features.messages.impl_MessagesView_Day_1_de.png index 1f6447f380..0dc716fb9e 100644 --- a/screenshots/de/features.messages.impl_MessagesView_Day_1_de.png +++ b/screenshots/de/features.messages.impl_MessagesView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ffce521170b76b53868a9b9a2b51216dce35bebe616acc097b2593977974184b -size 57024 +oid sha256:2512e1e21aa4ee0b9dbbed2a87ae44066d6785b8ce3848c6feeda617aec9c1d0 +size 57260 diff --git a/screenshots/de/features.messages.impl_MessagesView_Day_2_de.png b/screenshots/de/features.messages.impl_MessagesView_Day_2_de.png index 8472234a14..b2df1f049a 100644 --- a/screenshots/de/features.messages.impl_MessagesView_Day_2_de.png +++ b/screenshots/de/features.messages.impl_MessagesView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:72f4a3f26ca44a47596b497cfed8954b556dafcfaeb568cce81c6d35ff8d7dea -size 41987 +oid sha256:8cc102ed3992b2d0af56cde9baf60dca7c432b41ea11634f3900346a4de678eb +size 42000 diff --git a/screenshots/de/features.messages.impl_MessagesView_Day_3_de.png b/screenshots/de/features.messages.impl_MessagesView_Day_3_de.png index b822f7d106..6c787b294d 100644 --- a/screenshots/de/features.messages.impl_MessagesView_Day_3_de.png +++ b/screenshots/de/features.messages.impl_MessagesView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:164f3bacc2ca1c35a93fe5ec1f8fb6356c5fca7507422ee6400f28cfb6556743 -size 60419 +oid sha256:c72315cb456c2634a6fd15335e7596cdb686bdc0a37b9743f833fd825e5bfe79 +size 60466 diff --git a/screenshots/de/features.messages.impl_MessagesView_Day_4_de.png b/screenshots/de/features.messages.impl_MessagesView_Day_4_de.png index 8e60bb99a2..b31b08e400 100644 --- a/screenshots/de/features.messages.impl_MessagesView_Day_4_de.png +++ b/screenshots/de/features.messages.impl_MessagesView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2acc6a4f19c60d5ff416e02ac6d024bf8291f95a08ea2fabb29049c1240abcf0 -size 55524 +oid sha256:364fb7f3a2d8b1c55da697a3a7229640ed0f540fcc09295915ba20c6790d45fd +size 56516 diff --git a/screenshots/de/features.messages.impl_MessagesView_Day_5_de.png b/screenshots/de/features.messages.impl_MessagesView_Day_5_de.png index cad0d74da6..f5e62d8158 100644 --- a/screenshots/de/features.messages.impl_MessagesView_Day_5_de.png +++ b/screenshots/de/features.messages.impl_MessagesView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f4224b4cb9df1cba1c51d93a8454ac397442e4ddc25226455bc4de6d753c62d8 -size 59300 +oid sha256:609b9256d547f484a1b1c351a201f6a6abd314f278368d3d4d27b5e38aee4cb5 +size 59519 diff --git a/screenshots/de/features.messages.impl_MessagesView_Day_6_de.png b/screenshots/de/features.messages.impl_MessagesView_Day_6_de.png index 4043448813..cf6ca3448a 100644 --- a/screenshots/de/features.messages.impl_MessagesView_Day_6_de.png +++ b/screenshots/de/features.messages.impl_MessagesView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4810560dc63bdb17ae199183685f1854f9bfff24515efa1e0cdf634be761b646 -size 54170 +oid sha256:4987841ba51faf1eeca18027c155c943b99093cc64e6a12867f981899fa8efb3 +size 54505 diff --git a/screenshots/de/features.messages.impl_MessagesView_Day_7_de.png b/screenshots/de/features.messages.impl_MessagesView_Day_7_de.png index 112279203a..378ec92255 100644 --- a/screenshots/de/features.messages.impl_MessagesView_Day_7_de.png +++ b/screenshots/de/features.messages.impl_MessagesView_Day_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a87cc7029191fb410f72868115f27ec4863e53b23f4ff29536a77a77608c19be -size 59689 +oid sha256:e4a271a615bf287ffb25c71cab70420ab35d6617f6156a2836c392fbfb630156 +size 60616 diff --git a/screenshots/de/features.messages.impl_MessagesView_Day_8_de.png b/screenshots/de/features.messages.impl_MessagesView_Day_8_de.png index a25c8f3724..291f192b4e 100644 --- a/screenshots/de/features.messages.impl_MessagesView_Day_8_de.png +++ b/screenshots/de/features.messages.impl_MessagesView_Day_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f6a19f900b395bc2f9f4b7eb1ebca10d4ed9d685fec3cb211f102345c345be1c -size 60303 +oid sha256:af2679bf3aff0e4ece4eec51971407410bea0ad93c8dac210db88534d7f83349 +size 60514 diff --git a/screenshots/de/features.messages.impl_MessagesView_Day_9_de.png b/screenshots/de/features.messages.impl_MessagesView_Day_9_de.png index b032acd935..9af91d6aae 100644 --- a/screenshots/de/features.messages.impl_MessagesView_Day_9_de.png +++ b/screenshots/de/features.messages.impl_MessagesView_Day_9_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:62b2496a0b101ad4d9aa48b5bde9f70c2d18fbea3eef7b743a27383a42c9b32f -size 47866 +oid sha256:0d5b302a08359835725e7ccb2b0279254b9d45f303c8d06c2533a9e3dd71e6e1 +size 48790 diff --git a/screenshots/de/features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_3_de.png b/screenshots/de/features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_3_de.png index af3f1b35de..663d04ad98 100644 --- a/screenshots/de/features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_3_de.png +++ b/screenshots/de/features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:825f00224a82b62796968c103be33b3daded002d5bd5367ee95a0535650ec32c -size 67971 +oid sha256:d35254b92a44dfab6d16d7eea12dc5cd88eafc47d90c285d3cc17fc7c99ac2f5 +size 67940 diff --git a/screenshots/de/features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_3_de.png b/screenshots/de/features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_3_de.png index 55073ed0ad..76c20dc1bc 100644 --- a/screenshots/de/features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_3_de.png +++ b/screenshots/de/features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:31dd38ef2609fce774cbbc606ce91c10c735bde3ded73b9bb1643db08ea558cb -size 70349 +oid sha256:0831242cd85fd208f6425b4d03b9a3cc156da0d3da99eb9f7b648c9bdf2b4e1e +size 70295 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_0_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_0_de.png index 0d29f5f017..5e205681ad 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_0_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ca8ec24b1775b2e2d65e4bf31c9d832243cf450ab8bf0e275c958f55d891a3ae -size 45915 +oid sha256:064fc91cbf9c394ecc415a0c407b198266c18eeed58e2211e77a99b2566c6b4c +size 45992 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_10_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_10_de.png index ac8f3c8942..b1b5c44bbe 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_10_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_10_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7f4f16ee1872417ecde6933ed01db60513b02bd7b6126652633438d8d6ddab53 -size 44794 +oid sha256:1f287d2d55e3ed88bcfd7029e04850b9afb608bff4cdb307a2107ef3492263ea +size 44873 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_11_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_11_de.png index 2f1eab1256..d7fb40d3bc 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_11_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_11_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:70b48f288a251760efc84dc0a9caf9315cc1ef65ec5d7fd22df04b81e4c7156a -size 43211 +oid sha256:1d38a07867e68e0bc2297ec94deacf33701a057ec3ac4826c9315ba343a9cc55 +size 43233 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_12_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_12_de.png index 476f83cdfe..b3f166f0f9 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_12_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_12_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a8bf7a762a9c26e2e089e8bea43dca197ba2301534a110b73e9d848c350b17ca -size 47054 +oid sha256:f9095463651ea679d8bf78366da02023071a802d551874c56b333cdd9870eb1d +size 47131 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_13_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_13_de.png index 7eb6c50bdd..3ca9500e98 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_13_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_13_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f629c7b6edec8f093f330b92eaa4738ee6917aed10b18a87741ae809e4770948 -size 45146 +oid sha256:e0a2bae68fcaea24090d504a42bae48d4b540e0e7d8cc41b184645c432ff7f77 +size 45223 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_14_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_14_de.png index 2aebacfe9e..e065b4bf53 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_14_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_14_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:be31534fa702a2894fd2216f28dc77b7ba5fb6a1564bda2c30eb6c6d3e904cf9 -size 45655 +oid sha256:791a579b913e406287a37962145cf54c02d68dfc14c8d4a7ae864017de3e5629 +size 45737 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_15_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_15_de.png index 6d022fa45a..d42d2c613f 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_15_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_15_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5edd8ce73500098587c532e8889baca2c0072cf4194303cb0ddd65e7d26ff398 -size 46184 +oid sha256:62e5b6d06b83d9ffe61927391f0df7aa7d6a40950946cf3d68cc76363ff81197 +size 46263 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_16_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_16_de.png index 2ece4cebd6..77e4be20af 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_16_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_16_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:70b116284cf877004b78e26381e7dd9b581c87898d27a7dc8f5fa7f511e88964 -size 45475 +oid sha256:157f747b71d355493b7255b22e88742be69df779b6d9a1df6acf01069adab820 +size 45553 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_17_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_17_de.png index 4fed40e2ee..ff26d27fac 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_17_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_17_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:52191d77cc9fb34885078c1861eeb25364eacb3d65e0e25b4ca2ebf2a02d3045 -size 44705 +oid sha256:155e895b03d5ec9747e248d6460bcc67a2a91adda5c93ffbe55bf1aa983111ca +size 44790 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_18_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_18_de.png index a06d8b5f9f..4fbcecfb3c 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_18_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_18_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:400de13e3e446bc18b1a5d7819fd4b874ffa4bcbc5b80684d84c203b7f5fb897 -size 41836 +oid sha256:3182cd1fb86194493ef923e46f5ade74ffd48b6a28a5f42c88dfbaa022736682 +size 41859 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_19_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_19_de.png index cce1b0aa7a..55772678a6 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_19_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_19_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1de394c34446754f68f028a11fb4112aa56dbbbc69d8d4d5f8f5f48606bd011c -size 41792 +oid sha256:487b634d922beecb2d235a73d325f052ea904b8c5a053c4856ad9158cd9b47aa +size 41814 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_1_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_1_de.png index af0713f159..1659a6159f 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_1_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:567249653f7aad689badeed227f1fb1844151dbe7e839b2ff79ead5ddd5f91a4 -size 42060 +oid sha256:7b8420b2cb84f1d2b823b5853e64379c80b058d37cef06b0c03bd917ea124946 +size 42128 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_2_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_2_de.png index ca68f35bac..199eaf20b1 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_2_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:037a9a1db806c3ef0fdb99fecad1c5ce48e47eea02a34872ed47cd20145fba4e -size 39780 +oid sha256:20a70e4f06f0d4273fbaca53a5a1847ae9487446b498a47257729c19d0843dfa +size 39857 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_3_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_3_de.png index 876238748a..55745b3f8d 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_3_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3706e4e1cee1bb0cc01aedbe28a24670acdbd2d9c9ed710eb28f4c7cf194cb3e -size 45410 +oid sha256:1f1c37582bb9b3f680b302f9dea4f27213b562bdac7210d7d51247abe5b931ba +size 45558 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_4_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_4_de.png index 442ef30369..33604da95b 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_4_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:aab3abf7dbad2621907481b01b87aabf0f0840579a3cf0983728975ec96d1333 -size 45007 +oid sha256:f2625a58b93fb360b400f77cbf0238a44c0f1555bedda4e001baf552db0eaeee +size 45076 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_5_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_5_de.png index 4284e4a80b..374d8eb94f 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_5_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4282d57b82f7e5077580d1571bf3af69e24252a97b317cab88a01e780bab3fad -size 41477 +oid sha256:31e3a894473f061f2ee8dec48e9730ca84a6debcb8023b54b6510e20d8f64058 +size 41499 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_6_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_6_de.png index ee40a011ea..6fa141d6c4 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_6_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1355053d6adeff0e3d14e32ffbaaea37dd7ec8f77d59aedbd6183230d175696c -size 45148 +oid sha256:56875192f27f48df3d694effa375e7f703cc5ad820f2dd52b4c0cedea16771d5 +size 45201 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_7_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_7_de.png index e6eab41fe0..d31c2858fb 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_7_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2ab35dca344a870da451ae6c082095531dfa4eac753d22b7283f0e6a0c12a3e2 -size 46377 +oid sha256:088695f25c715eff4442f65b285471cbc6e6efbb051c47fad738135146a89e04 +size 46464 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_8_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_8_de.png index 71d91f126e..fda497dde4 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_8_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7d5017df108eb110757e3bc19175ee0cd04418ef9643cf363b9909e5eb7ac741 -size 45169 +oid sha256:e5c948a7593cb3347fb43030a3456a6f1aef4fec0384eb9caacad8349d17626c +size 45248 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_9_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_9_de.png index 0c065e43ac..b5dde4ab2e 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_9_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_9_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cd400e4d9e78af0102246ff534d9de19f82aa0a086f38a7f17fce223189bf2b9 -size 44217 +oid sha256:b42f1dc3520d24f686eb66eaac509c3f1bb679dae2104d897b512c41b24557d0 +size 44298 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_0_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_0_de.png index 802111b30e..d6af09b4c7 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_0_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3cb3b25bd7ef8a02f0210d83d507014a692c53e8508599f848cebfbf5ed5a6a0 -size 46993 +oid sha256:692d00e0a8597682bf414f91342ae2b7c9b68dc38944e77f783ef5e5776c2240 +size 47041 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_10_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_10_de.png index e113c64845..bf9ed2a3cc 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_10_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_10_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d09627b117addc28886870355099a343379877442d58a2a958aee0bfb83fbdf6 -size 45834 +oid sha256:c37ddb76e6d41c0b781569f482fad117ce48367847e0061972694030a9413085 +size 45882 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_11_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_11_de.png index 81dc586be1..4be06edf5f 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_11_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_11_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8d5a9bb03221a836e84604d9c0c59915a46f8bbcbe89e073998a31256bd6c0db -size 44299 +oid sha256:15dad2dfa5ad660d8aef625be453432450b013d4b7f76979b6bbb21a2d5862be +size 44323 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_12_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_12_de.png index 8a2971802e..52e4702c1b 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_12_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_12_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:44f4df753891993e28e8292b060d03adc25f71d727a5c56a94ffe5fc41ae85a4 -size 47658 +oid sha256:292dcae768ff8534f82e6bbe075a8fb4b4b57718d10a0f93d4d45b84e72becfe +size 47714 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_13_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_13_de.png index e75133fa27..36499ecb66 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_13_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_13_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b534a40e67c218e254d6677459a9b3ea1c6ae855c97e7b41aaf72da14b76e22b -size 46159 +oid sha256:b8f1513a55fa0d5b74657bcd224bac851151b2da10dd7f624cd92778e6ab0618 +size 46205 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_14_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_14_de.png index d6644f26ba..b6fd155e9a 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_14_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_14_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0f2dbc96fc7398f92ddabb0a316f1cfb7cca6941b891d669367311c682d67eae -size 46661 +oid sha256:9d97e781bf08ff3c519d693ccd2dca3269706667a45ee06c866903b7a95a07da +size 46711 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_15_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_15_de.png index b1e316aa94..8987195d54 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_15_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_15_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6ed807652ec6311e514c37ca76d4ab496760396da45e9b165838470b899a6a19 -size 47255 +oid sha256:5b7f88d28b9820258ebac7c375cdf4e64f9ad4a62c195ce4e7253722ced29d5e +size 47302 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_16_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_16_de.png index dfc67208ec..0fe04d6d9c 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_16_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_16_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0d18f053ea3ff393891f510bbd5ee3e4c9a181ba735c92f14ed8de9d39c5c0aa -size 46506 +oid sha256:6126c10ff145a34ccedf9c7179c7786af1b6820a1dc2c3684aa649883e4833ba +size 46555 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_17_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_17_de.png index ec64a5d2a1..d0eb978ab5 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_17_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_17_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:be8d3f7dbdc083db4c7698bd8579a33b99fc15e5fae1076a8f8b06b8fb906afd -size 45981 +oid sha256:7e66eee9c355b50a168c6158afd97757b523131c06895822c5b63252bb6ef6e2 +size 46035 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_18_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_18_de.png index 9eb485f277..1908f0d697 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_18_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_18_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:422f724e69ca057e5e3031f73bae86fad2fa533af748b930f836c430079c20b0 -size 42861 +oid sha256:82b74717000cf7d292a4fb9690e308e7f22db1a98e0231c6ef1cea8945e79418 +size 42883 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_19_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_19_de.png index dfc9a43500..7615ea6f5e 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_19_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_19_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f180e16ec70466bcd5b03bc067ce5a017ea2f345776aa38b8b2a54ed534f1cc5 -size 42739 +oid sha256:156cf5bf138965d37b3ec8ffc88facb206c77cd82461b642c747b217b6bb6b53 +size 42761 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_1_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_1_de.png index e6eaca702a..bcc569ff83 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_1_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:100f6e208e22a312b1ce1009102d5b8d1891d28d0e326e514334e3b53849a65d -size 43192 +oid sha256:216646bef971c80ee653e34f0b04e5a43bd8a4f23e589d5abc0fe766e3a9127d +size 43242 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_2_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_2_de.png index ceb248fec6..d20a2d599b 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_2_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3470657e3f74d9069e5a25334f694b3d46cffe2a3e4e0e5fee053a4632bf6802 -size 40904 +oid sha256:675706f853d416616df081db343abf9408f802ba14e99817c468bf0f936ab1c3 +size 40947 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_3_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_3_de.png index b1fb65bd14..13dc66abec 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_3_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:77782c8df1325ffb6da59fa963a8d77345b4f88669aead0aa722028d39eade45 -size 46360 +oid sha256:86764932b950fb55ae017b870b79ab32e96cc3f88248c0fac5db8f618ca8b2b3 +size 46454 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_4_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_4_de.png index 182e5470db..ff28978e2a 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_4_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b396844a2de1712a6a49746861f8d2840a485fc18b47a45b3d0ac53dfe727b8a -size 46022 +oid sha256:644e2f5adcdc5aea4a03a20045d1635483002360aed6b9271f0d6e8c929f842f +size 46069 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_5_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_5_de.png index b3d645e87d..01095a7bf7 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_5_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1dcda0c7c3b5cf60787034b2a4d77a466d49680863896a9a0b50e7714b8c9efd -size 42437 +oid sha256:5cb95f7267a454057e5fe2020f55b3c066110c08ac2d509443aa449daf95b2fb +size 42459 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_6_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_6_de.png index 92e7a851fe..f6e0a5a0ee 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_6_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b7d00bd3a98e05dd7e73d66bcff21e9da7179009fab1ccbb892a979acc608764 -size 46218 +oid sha256:d7b2e6e6461b04a9476e57ccebf35f79de29bf7c43c5936fc7bd497f8c238ac2 +size 46243 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_7_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_7_de.png index cb093979cd..e093b35424 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_7_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fbf5bbd6b81babd0658dece6801f37440678a69bdaec9b227a37b12fe94c02d4 -size 47485 +oid sha256:9e8262293955839ab0827b0d9bb04f7528e51513354a45bdd3738c601f5fcba8 +size 47542 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_8_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_8_de.png index a910e248d8..581cc59363 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_8_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6a02074e2ba8d9fba8f89f5dca0a52bcfd8fcaca70b31038dcf7856135113416 -size 46256 +oid sha256:f3b57566b133fd7cd56b905470b744dc3d98e7a6112f3556b9490cb26c1c4092 +size 46305 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_9_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_9_de.png index 4fd471f5a2..5b13a4b02f 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_9_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_9_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:001e2d6a6428e72e1b1f62927a36701dfceeec0a743ac96c9e52cd1c93b5106c -size 45159 +oid sha256:f05fab1ea9b52eaeb667f1504ea536031470d1f455a35b0d71c8ce51baf83ddd +size 45211 diff --git a/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_5_de.png b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_5_de.png new file mode 100644 index 0000000000..5247c53d90 --- /dev/null +++ b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_5_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22b11c5a6b5727f2e75c712a09a6d4a4ca103046c488a91f26e932cd1a2e2f2e +size 42522 diff --git a/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_5_de.png b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_5_de.png new file mode 100644 index 0000000000..b740e854ef --- /dev/null +++ b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_5_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6df431d98a676b66cd326fc27e2081a6d9998e7b9b709d922ce038ad5114fb6e +size 43758 diff --git a/screenshots/de/features.userprofile.shared_UserProfileHeaderSection_Day_0_de.png b/screenshots/de/features.userprofile.shared_UserProfileHeaderSection_Day_0_de.png index 2fe608431b..c80c1adae1 100644 --- a/screenshots/de/features.userprofile.shared_UserProfileHeaderSection_Day_0_de.png +++ b/screenshots/de/features.userprofile.shared_UserProfileHeaderSection_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d900e961850cc8dc3ceefc1f7d7a9296e6737a0e6b92ddc5e7223a42df7ddf41 -size 15312 +oid sha256:c317599d84833c06a9931e41c0f20eacae4ea86dd1aa47f44c365acf34842707 +size 15395 diff --git a/screenshots/de/features.userprofile.shared_UserProfileView_Day_2_de.png b/screenshots/de/features.userprofile.shared_UserProfileView_Day_2_de.png index 6c14bfade1..23370ab623 100644 --- a/screenshots/de/features.userprofile.shared_UserProfileView_Day_2_de.png +++ b/screenshots/de/features.userprofile.shared_UserProfileView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c6783cffd4de09a1c9f065240c56432971c8cc089770a04e5d8ca8c62b1dc1a1 -size 25090 +oid sha256:d2592e29284d3324b3fc3cfca87ac6722ee12cf0a88724ad85a47347f6485e03 +size 25174 diff --git a/screenshots/de/libraries.textcomposer_MarkdownTextComposerEdit_Day_0_de.png b/screenshots/de/libraries.textcomposer_MarkdownTextComposerEdit_Day_0_de.png index 10e166e98a..52b69e4ce4 100644 --- a/screenshots/de/libraries.textcomposer_MarkdownTextComposerEdit_Day_0_de.png +++ b/screenshots/de/libraries.textcomposer_MarkdownTextComposerEdit_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2099eef793b8e48ea898f477cbfb782a470079e1e169cb72fd99fb285cae4022 -size 55497 +oid sha256:a6da300cfc024795c03eabdae55a72562be7a623d327ffb9c3a47b13c88cfc7a +size 55335 diff --git a/screenshots/de/libraries.textcomposer_TextComposerAddCaption_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerAddCaption_Day_0_de.png index a9633e8d1f..a20414cab1 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerAddCaption_Day_0_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerAddCaption_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bb24147e7a8a9e75c8a8dafd50d83530f2c1e942304f0daa3d6b8b3c28e8bd2a -size 61442 +oid sha256:f48d2c00b858cce8372f0adccf68aa0ae64fe2750d9cedb74e3cb720860e1b64 +size 61320 diff --git a/screenshots/de/libraries.textcomposer_TextComposerCaption_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerCaption_Day_0_de.png index 28f77d2dce..602a6acbb6 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerCaption_Day_0_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerCaption_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:df3992dca26add78c7d5c325c4dcb1dbbbc73ad89edcb187f823f4b28bc057a6 -size 48865 +oid sha256:36029ca7cf714611246a9f666e5cb83d1238768955a9bf13ed39f54d77220634 +size 48558 diff --git a/screenshots/de/libraries.textcomposer_TextComposerEditCaption_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerEditCaption_Day_0_de.png index 86489db05d..d63f174b65 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerEditCaption_Day_0_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerEditCaption_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:992054813335b901b58b9708e4ff0ec5e15823b1a712ad810052701571550430 -size 59337 +oid sha256:63a1e53a8c10cb13717809f2d71fc2bf4ebdb668c9f42366650fb2f16f847876 +size 59210 diff --git a/screenshots/de/libraries.textcomposer_TextComposerEditNotEncrypted_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerEditNotEncrypted_Day_0_de.png index ffc8d8791b..44a1e6d5ba 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerEditNotEncrypted_Day_0_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerEditNotEncrypted_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c7ddd16c4d67a3aba5de38be25238c8269f71afe1cd7ebc16108226268f088e7 -size 67935 +oid sha256:e719da05692dbdac723848e89174692ee74a5d37383da4c1262d3b12d093eaa3 +size 67832 diff --git a/screenshots/de/libraries.textcomposer_TextComposerEdit_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerEdit_Day_0_de.png index 10e166e98a..52b69e4ce4 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerEdit_Day_0_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerEdit_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2099eef793b8e48ea898f477cbfb782a470079e1e169cb72fd99fb285cae4022 -size 55497 +oid sha256:a6da300cfc024795c03eabdae55a72562be7a623d327ffb9c3a47b13c88cfc7a +size 55335 diff --git a/screenshots/de/libraries.textcomposer_TextComposerFormattingNotEncrypted_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerFormattingNotEncrypted_Day_0_de.png index 7860ec1988..63577ff4fd 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerFormattingNotEncrypted_Day_0_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerFormattingNotEncrypted_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:90706d1d933bb5f730662d812eb846750267a1e2495df9a00aa8b099f407946a -size 66040 +oid sha256:1e5c8a6b6452df551c2d185cf2952e53ffe1e580ba9f302cefbbd1a57c9f682b +size 65737 diff --git a/screenshots/de/libraries.textcomposer_TextComposerFormatting_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerFormatting_Day_0_de.png index 965bba9f22..b8698637e8 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerFormatting_Day_0_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerFormatting_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:88b5cef701ed726b9570ef194fd07da2be4b09d3c02a9cecdd0a04894ea5c736 -size 53419 +oid sha256:46727b4a705460f05b5964006f3461aaabfe793763289d326963ba2a7ace1794 +size 53258 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_0_de.png index 1ef7e3004e..f914285192 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_0_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a73103227c128c1f28b3b50cb1c14a9ae052b118249fa807db41e311e82bcf21 -size 74834 +oid sha256:0f4ccc93ebfd5f285695ed5b851ad4ffc98d9d708f3fe86e717f0793955f1463 +size 74778 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_10_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_10_de.png index e30ff355ac..aec87f6d99 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_10_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_10_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:31112b9353107408794ced14e8079b9c5382e153df7efe5428b4dfae1e8ce4fe -size 61468 +oid sha256:6cafe6505cfe34469cd86f203f0c952a5f66f94a9407df1a6701804780058592 +size 61397 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_11_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_11_de.png index aa5b22fcc9..86412214e8 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_11_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_11_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:da7799a387265659209bbbc28fdef696d603247de596084dc42c84cb1a1e950a -size 74248 +oid sha256:fbdb2c32142b84b98bb997c82eaf2197e38abf8425bc809099dad355e05f2fa4 +size 74221 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_1_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_1_de.png index 50632d441e..d7146c75d2 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_1_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8c82097113e6a51041aea18ebf5ce4d460920d42b1ec25f0ccf44c623a81bbe7 -size 82346 +oid sha256:473911e5c55ac318dbc44fa8c284679629b93587fb4888d9e454430c7bd36a56 +size 82320 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_2_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_2_de.png index 4e541e3b78..47a829fdcb 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_2_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3c44eaf0d7532b9d1d0685c51e34ec7543600c745143f39fee8eaf16ac81dbaf -size 63947 +oid sha256:19a212e8ac870059243f03554d2963c11d422902a469b19135f2c1aca804534a +size 63883 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_3_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_3_de.png index f4d891ead7..9fbb838a6d 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_3_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cee23d424d4272b9079ee26d49f4f6b2e5a820af8b6a5ed666228db1f389798a -size 62838 +oid sha256:47f9866dc3ab1f26851849529d7e85747ef4006fdaa3ffbd17d90979779394c7 +size 62784 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_4_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_4_de.png index 5801097ed8..9d8cdca76d 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_4_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:11e62a896997c3de594b077b02998359ff96b65b166fccf7bebf419449425e5a -size 68480 +oid sha256:702c235b17b61998c34799b9704f94c2218c95147ce10db1f45caff5c1c928b5 +size 68408 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_5_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_5_de.png index 979ba9c61c..8c259ef5e2 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_5_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1339de24c9c196afc106c955650b13288b7afbebcfae65e68281c7c96c615abd -size 91982 +oid sha256:9c631ed737e97317e463439518cfe47243adbdafa1e727896d4ac40557687032 +size 91916 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_6_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_6_de.png index 2de6631075..708e2abbd8 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_6_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1b2cbfb2eab3af42ef566bd9cdc21d437144b05d968b98d6d86b36def92acafa -size 62336 +oid sha256:157e642c761d59485bb55a40d3ffb5bebea9fb240f8b95de82573f75fb885fb8 +size 62283 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_7_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_7_de.png index e93966addf..12a57d4a12 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_7_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6050a0697ec0e343c1c3e3c118db5c7b0b70e6538f2a7bb903586bd7f6424ce7 -size 63467 +oid sha256:f18c21e5503ca05f05627c33a6d7acbb00bb23588a6a7775579e1e38c93a518a +size 63411 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_8_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_8_de.png index c4d965e54c..ab744693e1 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_8_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a0042e41c23d05ccf736061546c8dc30f2a6e15f6f5f7ac82546d90e83c75d55 -size 71344 +oid sha256:38477ac2b061f7ef12078ba5be13c4404738811f6747b9c8e809c5d3ef0f0811 +size 71285 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_9_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_9_de.png index 39ec0b5132..179abffb2b 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_9_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_9_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dbaade7bde192beee2f230097bf022f3f091fa64cde85ee8106f2e27f985f055 -size 61874 +oid sha256:01b8d2822cabd678fe4e61e540bbbe2c1e24ef9fc0f3eb553303e9fe223bebd6 +size 61830 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_0_de.png index 366f5c6f55..b5fc32cbbb 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_0_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a9c6ba3a6d39ab7928ce7ccf7e37a399412cd71a8ff790997806f860358c4d01 -size 75900 +oid sha256:9e05b1272eb9a15ce8fb9e93d9b999d1aee82d598faf4e60f73d6bbb8897d621 +size 75467 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_10_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_10_de.png index c2a79f6649..61beab53f0 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_10_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_10_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dde43a408286bd596221359e3a29ed82325326f9c5f9ea7e83636ec2a07855e4 -size 59435 +oid sha256:9cc5e0ddd0b6be85ceeab24f427ac2f33bb8634215fdda3fd4b9747787fc9581 +size 59156 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_11_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_11_de.png index 3d0a1cb6c8..08faeee3e5 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_11_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_11_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8ccdf0f2a87017ff6fd061670450aa6e4fa33dfdef95e0100b94aaf304c8edc9 -size 74099 +oid sha256:e53cb31e8656076e4ac4a0162f15d028f0667e07878b0f79f80aa54dac17c41f +size 73732 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_1_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_1_de.png index 5bf71f1dea..4e1db6cea7 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_1_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9050d07e311f03077cc9e943ca3dd50612b95804232bda285e076390c4da86c6 -size 85289 +oid sha256:bd59873415d8fbdc4351a9a2c518d2d85a6f783a9e03c6591c056f49ce7344d5 +size 84937 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_2_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_2_de.png index 2c3b4f6a5f..ce09d649c9 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_2_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7f9e6b5f62d9ca76b369a204040f583932bc827fb6b5f1c1ca0942c814d30f31 -size 62539 +oid sha256:354eaf220e073aa0c440376717765b7c33f1cf272c9951d2e7128d77acee3477 +size 62257 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_3_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_3_de.png index 048d4842d9..2bfb889089 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_3_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ea1f6d452f6fbb9ba45bbc3ef777266f99fd71e0f277c8c557adc8d9470adddf -size 61586 +oid sha256:83e30eaedf06a2ac91950e50bf24b829d86303517ede79e0fd2431daf58812f5 +size 61315 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_4_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_4_de.png index bcf5e5386c..59186137f6 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_4_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1053bc550660011eee4f313a845d596b5fec2e6a6c65580a7843f855998f2017 -size 68969 +oid sha256:c47928a0783b56240d8293370e598544aa47e24a8b5d6d0450eccc5f2c118ef8 +size 68694 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_5_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_5_de.png index 2480986170..fe48840600 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_5_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5c53a176cf0f300d40708e01069e27c66349d874c206bd7d079dafa3bcf71abe -size 104228 +oid sha256:1477f45a4080a054bee9d8cf3fa772fcd1edc15683a17793ef93acccd0983fb4 +size 103892 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_6_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_6_de.png index 7d10e145ec..037505304f 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_6_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c46f7a68998accd949e8ca2e33bd9f8e663de338ebd464e9178dab4c4dd8deec -size 60617 +oid sha256:25945b2e3e93385a66ec560daa7ab9d059428b2bdb4c5a551ce37c4c0eb3a401 +size 60339 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_7_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_7_de.png index 0419ce4b2a..8c6145eb13 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_7_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1fcfe18b254baaff3c93481680979f944fbcbab9e40de45920e35a031e3d64b9 -size 62666 +oid sha256:6fe0d1f3bc7330bfdd845fd585b3a415a740ba9be8d1871bc51da1167c19f5c4 +size 62380 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_8_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_8_de.png index ea8a69d22a..d546de4f62 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_8_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c4e5601722e9d3e983e168e7725d1bf0538692b89a22784257c6a6f451dad447 -size 71072 +oid sha256:99f6671078331ca7c22123a0b54ca658048ee7c2f0286fb9a0f3f71cd9805602 +size 70799 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_9_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_9_de.png index dc4559c47d..3872d29b72 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_9_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_9_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:01a0264c455d738cb46073213f043ab27762bec96d5839c42daaf12cfec9dd0f -size 60127 +oid sha256:892f08ea84d742190935ea492be7c3e724f60e85a712a5bfd4d5cb59b26ca5f8 +size 59851 diff --git a/screenshots/de/libraries.textcomposer_TextComposerSimpleNotEncrypted_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerSimpleNotEncrypted_Day_0_de.png index d892e33f6d..d5c1c82d92 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerSimpleNotEncrypted_Day_0_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerSimpleNotEncrypted_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f553fb21d87d1b6cb92d083e60e873d1aa56b85ff2a06874122c78bd72c250f0 -size 58371 +oid sha256:9a1476f67c50c2492c58fbbccb06d60f4d4e543b8231b1d8da491fa46fd99678 +size 58086 diff --git a/screenshots/de/libraries.textcomposer_TextComposerSimple_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerSimple_Day_0_de.png index 62761e404a..332816d156 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerSimple_Day_0_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerSimple_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:48afdc8565914ae3782d3c90055bd7686e0e208638a2fb8b86bdaf70c5e48ea3 -size 46578 +oid sha256:f93561a2553fe5cd29bf85a79cc14fba6960a4e43d888c86167b573ccfc0f89b +size 46357 diff --git a/screenshots/de/libraries.textcomposer_TextComposerVoiceNotEncrypted_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerVoiceNotEncrypted_Day_0_de.png index 20a33a20a3..d5ae9e7bad 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerVoiceNotEncrypted_Day_0_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerVoiceNotEncrypted_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:954c6df99d354ed3984f4a62f330f8389d07d15fc94190226a598a0e235e0ced -size 39572 +oid sha256:93f45ea912642400884e19aaf3cc3d8c7461588309a22396a37fa6fb3945ec2a +size 39434 diff --git a/screenshots/html/data.js b/screenshots/html/data.js index 6008dbc0e1..85da26265a 100644 --- a/screenshots/html/data.js +++ b/screenshots/html/data.js @@ -1,75 +1,75 @@ // Generated file, do not edit export const screenshots = [ ["en","en-dark","de",], -["features.preferences.impl.about_AboutView_Day_0_en","features.preferences.impl.about_AboutView_Night_0_en",20273,], +["features.preferences.impl.about_AboutView_Day_0_en","features.preferences.impl.about_AboutView_Night_0_en",20294,], ["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_0_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_0_en",0,], -["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_1_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_1_en",20273,], -["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_2_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_2_en",20273,], -["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_3_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_3_en",20273,], -["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_4_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_4_en",20273,], -["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_5_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_5_en",20273,], -["features.logout.impl_AccountDeactivationView_Day_0_en","features.logout.impl_AccountDeactivationView_Night_0_en",20273,], -["features.logout.impl_AccountDeactivationView_Day_1_en","features.logout.impl_AccountDeactivationView_Night_1_en",20273,], -["features.logout.impl_AccountDeactivationView_Day_2_en","features.logout.impl_AccountDeactivationView_Night_2_en",20273,], -["features.logout.impl_AccountDeactivationView_Day_3_en","features.logout.impl_AccountDeactivationView_Night_3_en",20273,], -["features.logout.impl_AccountDeactivationView_Day_4_en","features.logout.impl_AccountDeactivationView_Night_4_en",20273,], -["features.login.impl.accountprovider_AccountProviderOtherView_Day_0_en","features.login.impl.accountprovider_AccountProviderOtherView_Night_0_en",20273,], +["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_1_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_1_en",20294,], +["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_2_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_2_en",20294,], +["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_3_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_3_en",20294,], +["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_4_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_4_en",20294,], +["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_5_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_5_en",20294,], +["features.logout.impl_AccountDeactivationView_Day_0_en","features.logout.impl_AccountDeactivationView_Night_0_en",20294,], +["features.logout.impl_AccountDeactivationView_Day_1_en","features.logout.impl_AccountDeactivationView_Night_1_en",20294,], +["features.logout.impl_AccountDeactivationView_Day_2_en","features.logout.impl_AccountDeactivationView_Night_2_en",20294,], +["features.logout.impl_AccountDeactivationView_Day_3_en","features.logout.impl_AccountDeactivationView_Night_3_en",20294,], +["features.logout.impl_AccountDeactivationView_Day_4_en","features.logout.impl_AccountDeactivationView_Night_4_en",20294,], +["features.login.impl.accountprovider_AccountProviderOtherView_Day_0_en","features.login.impl.accountprovider_AccountProviderOtherView_Night_0_en",20294,], ["features.login.impl.accountprovider_AccountProviderView_Day_0_en","features.login.impl.accountprovider_AccountProviderView_Night_0_en",0,], ["features.login.impl.accountprovider_AccountProviderView_Day_1_en","features.login.impl.accountprovider_AccountProviderView_Night_1_en",0,], ["features.login.impl.accountprovider_AccountProviderView_Day_2_en","features.login.impl.accountprovider_AccountProviderView_Night_2_en",0,], ["features.login.impl.accountprovider_AccountProviderView_Day_3_en","features.login.impl.accountprovider_AccountProviderView_Night_3_en",0,], ["features.messages.impl.actionlist_ActionListViewContent_Day_0_en","features.messages.impl.actionlist_ActionListViewContent_Night_0_en",0,], -["features.messages.impl.actionlist_ActionListViewContent_Day_10_en","features.messages.impl.actionlist_ActionListViewContent_Night_10_en",20273,], -["features.messages.impl.actionlist_ActionListViewContent_Day_11_en","features.messages.impl.actionlist_ActionListViewContent_Night_11_en",20273,], -["features.messages.impl.actionlist_ActionListViewContent_Day_12_en","features.messages.impl.actionlist_ActionListViewContent_Night_12_en",20273,], +["features.messages.impl.actionlist_ActionListViewContent_Day_10_en","features.messages.impl.actionlist_ActionListViewContent_Night_10_en",20294,], +["features.messages.impl.actionlist_ActionListViewContent_Day_11_en","features.messages.impl.actionlist_ActionListViewContent_Night_11_en",20294,], +["features.messages.impl.actionlist_ActionListViewContent_Day_12_en","features.messages.impl.actionlist_ActionListViewContent_Night_12_en",20294,], ["features.messages.impl.actionlist_ActionListViewContent_Day_1_en","features.messages.impl.actionlist_ActionListViewContent_Night_1_en",0,], -["features.messages.impl.actionlist_ActionListViewContent_Day_2_en","features.messages.impl.actionlist_ActionListViewContent_Night_2_en",20273,], -["features.messages.impl.actionlist_ActionListViewContent_Day_3_en","features.messages.impl.actionlist_ActionListViewContent_Night_3_en",20273,], -["features.messages.impl.actionlist_ActionListViewContent_Day_4_en","features.messages.impl.actionlist_ActionListViewContent_Night_4_en",20273,], -["features.messages.impl.actionlist_ActionListViewContent_Day_5_en","features.messages.impl.actionlist_ActionListViewContent_Night_5_en",20273,], -["features.messages.impl.actionlist_ActionListViewContent_Day_6_en","features.messages.impl.actionlist_ActionListViewContent_Night_6_en",20273,], -["features.messages.impl.actionlist_ActionListViewContent_Day_7_en","features.messages.impl.actionlist_ActionListViewContent_Night_7_en",20273,], -["features.messages.impl.actionlist_ActionListViewContent_Day_8_en","features.messages.impl.actionlist_ActionListViewContent_Night_8_en",20273,], -["features.messages.impl.actionlist_ActionListViewContent_Day_9_en","features.messages.impl.actionlist_ActionListViewContent_Night_9_en",20273,], -["features.createroom.impl.addpeople_AddPeopleView_Day_0_en","features.createroom.impl.addpeople_AddPeopleView_Night_0_en",20273,], -["features.createroom.impl.addpeople_AddPeopleView_Day_1_en","features.createroom.impl.addpeople_AddPeopleView_Night_1_en",20273,], -["features.createroom.impl.addpeople_AddPeopleView_Day_2_en","features.createroom.impl.addpeople_AddPeopleView_Night_2_en",20273,], -["features.createroom.impl.addpeople_AddPeopleView_Day_3_en","features.createroom.impl.addpeople_AddPeopleView_Night_3_en",20273,], -["features.preferences.impl.advanced_AdvancedSettingsViewDark_0_en","",20273,], -["features.preferences.impl.advanced_AdvancedSettingsViewDark_1_en","",20273,], -["features.preferences.impl.advanced_AdvancedSettingsViewDark_2_en","",20273,], -["features.preferences.impl.advanced_AdvancedSettingsViewDark_3_en","",20273,], -["features.preferences.impl.advanced_AdvancedSettingsViewDark_4_en","",20273,], -["features.preferences.impl.advanced_AdvancedSettingsViewDark_5_en","",20273,], -["features.preferences.impl.advanced_AdvancedSettingsViewDark_6_en","",20273,], -["features.preferences.impl.advanced_AdvancedSettingsViewDark_7_en","",20273,], -["features.preferences.impl.advanced_AdvancedSettingsViewLight_0_en","",20273,], -["features.preferences.impl.advanced_AdvancedSettingsViewLight_1_en","",20273,], -["features.preferences.impl.advanced_AdvancedSettingsViewLight_2_en","",20273,], -["features.preferences.impl.advanced_AdvancedSettingsViewLight_3_en","",20273,], -["features.preferences.impl.advanced_AdvancedSettingsViewLight_4_en","",20273,], -["features.preferences.impl.advanced_AdvancedSettingsViewLight_5_en","",20273,], -["features.preferences.impl.advanced_AdvancedSettingsViewLight_6_en","",20273,], -["features.preferences.impl.advanced_AdvancedSettingsViewLight_7_en","",20273,], -["libraries.designsystem.components.dialogs_AlertDialogContent_Dialogs_en","",20273,], -["libraries.designsystem.components.dialogs_AlertDialog_Day_0_en","libraries.designsystem.components.dialogs_AlertDialog_Night_0_en",20273,], -["features.analytics.impl_AnalyticsOptInView_Day_0_en","features.analytics.impl_AnalyticsOptInView_Night_0_en",20273,], -["features.analytics.impl_AnalyticsOptInView_Day_1_en","features.analytics.impl_AnalyticsOptInView_Night_1_en",20273,], -["features.analytics.api.preferences_AnalyticsPreferencesView_Day_0_en","features.analytics.api.preferences_AnalyticsPreferencesView_Night_0_en",20273,], -["features.analytics.api.preferences_AnalyticsPreferencesView_Day_1_en","features.analytics.api.preferences_AnalyticsPreferencesView_Night_1_en",20273,], -["features.preferences.impl.analytics_AnalyticsSettingsView_Day_0_en","features.preferences.impl.analytics_AnalyticsSettingsView_Night_0_en",20273,], +["features.messages.impl.actionlist_ActionListViewContent_Day_2_en","features.messages.impl.actionlist_ActionListViewContent_Night_2_en",20294,], +["features.messages.impl.actionlist_ActionListViewContent_Day_3_en","features.messages.impl.actionlist_ActionListViewContent_Night_3_en",20294,], +["features.messages.impl.actionlist_ActionListViewContent_Day_4_en","features.messages.impl.actionlist_ActionListViewContent_Night_4_en",20294,], +["features.messages.impl.actionlist_ActionListViewContent_Day_5_en","features.messages.impl.actionlist_ActionListViewContent_Night_5_en",20294,], +["features.messages.impl.actionlist_ActionListViewContent_Day_6_en","features.messages.impl.actionlist_ActionListViewContent_Night_6_en",20294,], +["features.messages.impl.actionlist_ActionListViewContent_Day_7_en","features.messages.impl.actionlist_ActionListViewContent_Night_7_en",20294,], +["features.messages.impl.actionlist_ActionListViewContent_Day_8_en","features.messages.impl.actionlist_ActionListViewContent_Night_8_en",20294,], +["features.messages.impl.actionlist_ActionListViewContent_Day_9_en","features.messages.impl.actionlist_ActionListViewContent_Night_9_en",20294,], +["features.createroom.impl.addpeople_AddPeopleView_Day_0_en","features.createroom.impl.addpeople_AddPeopleView_Night_0_en",20294,], +["features.createroom.impl.addpeople_AddPeopleView_Day_1_en","features.createroom.impl.addpeople_AddPeopleView_Night_1_en",20294,], +["features.createroom.impl.addpeople_AddPeopleView_Day_2_en","features.createroom.impl.addpeople_AddPeopleView_Night_2_en",20294,], +["features.createroom.impl.addpeople_AddPeopleView_Day_3_en","features.createroom.impl.addpeople_AddPeopleView_Night_3_en",20294,], +["features.preferences.impl.advanced_AdvancedSettingsViewDark_0_en","",20294,], +["features.preferences.impl.advanced_AdvancedSettingsViewDark_1_en","",20294,], +["features.preferences.impl.advanced_AdvancedSettingsViewDark_2_en","",20294,], +["features.preferences.impl.advanced_AdvancedSettingsViewDark_3_en","",20294,], +["features.preferences.impl.advanced_AdvancedSettingsViewDark_4_en","",20294,], +["features.preferences.impl.advanced_AdvancedSettingsViewDark_5_en","",20294,], +["features.preferences.impl.advanced_AdvancedSettingsViewDark_6_en","",20294,], +["features.preferences.impl.advanced_AdvancedSettingsViewDark_7_en","",20294,], +["features.preferences.impl.advanced_AdvancedSettingsViewLight_0_en","",20294,], +["features.preferences.impl.advanced_AdvancedSettingsViewLight_1_en","",20294,], +["features.preferences.impl.advanced_AdvancedSettingsViewLight_2_en","",20294,], +["features.preferences.impl.advanced_AdvancedSettingsViewLight_3_en","",20294,], +["features.preferences.impl.advanced_AdvancedSettingsViewLight_4_en","",20294,], +["features.preferences.impl.advanced_AdvancedSettingsViewLight_5_en","",20294,], +["features.preferences.impl.advanced_AdvancedSettingsViewLight_6_en","",20294,], +["features.preferences.impl.advanced_AdvancedSettingsViewLight_7_en","",20294,], +["libraries.designsystem.components.dialogs_AlertDialogContent_Dialogs_en","",20294,], +["libraries.designsystem.components.dialogs_AlertDialog_Day_0_en","libraries.designsystem.components.dialogs_AlertDialog_Night_0_en",20294,], +["features.analytics.impl_AnalyticsOptInView_Day_0_en","features.analytics.impl_AnalyticsOptInView_Night_0_en",20294,], +["features.analytics.impl_AnalyticsOptInView_Day_1_en","features.analytics.impl_AnalyticsOptInView_Night_1_en",20294,], +["features.analytics.api.preferences_AnalyticsPreferencesView_Day_0_en","features.analytics.api.preferences_AnalyticsPreferencesView_Night_0_en",20294,], +["features.analytics.api.preferences_AnalyticsPreferencesView_Day_1_en","features.analytics.api.preferences_AnalyticsPreferencesView_Night_1_en",20294,], +["features.preferences.impl.analytics_AnalyticsSettingsView_Day_0_en","features.preferences.impl.analytics_AnalyticsSettingsView_Night_0_en",20294,], ["libraries.designsystem.components_Announcement_Day_0_en","libraries.designsystem.components_Announcement_Night_0_en",0,], -["services.apperror.impl_AppErrorView_Day_0_en","services.apperror.impl_AppErrorView_Night_0_en",20273,], +["services.apperror.impl_AppErrorView_Day_0_en","services.apperror.impl_AppErrorView_Night_0_en",20294,], ["libraries.designsystem.components.async_AsyncActionView_Day_0_en","libraries.designsystem.components.async_AsyncActionView_Night_0_en",0,], -["libraries.designsystem.components.async_AsyncActionView_Day_1_en","libraries.designsystem.components.async_AsyncActionView_Night_1_en",20273,], +["libraries.designsystem.components.async_AsyncActionView_Day_1_en","libraries.designsystem.components.async_AsyncActionView_Night_1_en",20294,], ["libraries.designsystem.components.async_AsyncActionView_Day_2_en","libraries.designsystem.components.async_AsyncActionView_Night_2_en",0,], -["libraries.designsystem.components.async_AsyncActionView_Day_3_en","libraries.designsystem.components.async_AsyncActionView_Night_3_en",20273,], +["libraries.designsystem.components.async_AsyncActionView_Day_3_en","libraries.designsystem.components.async_AsyncActionView_Night_3_en",20294,], ["libraries.designsystem.components.async_AsyncActionView_Day_4_en","libraries.designsystem.components.async_AsyncActionView_Night_4_en",0,], -["libraries.designsystem.components.async_AsyncFailure_Day_0_en","libraries.designsystem.components.async_AsyncFailure_Night_0_en",20273,], +["libraries.designsystem.components.async_AsyncFailure_Day_0_en","libraries.designsystem.components.async_AsyncFailure_Night_0_en",20294,], ["libraries.designsystem.components.async_AsyncIndicatorFailure_Day_0_en","libraries.designsystem.components.async_AsyncIndicatorFailure_Night_0_en",0,], ["libraries.designsystem.components.async_AsyncIndicatorLoading_Day_0_en","libraries.designsystem.components.async_AsyncIndicatorLoading_Night_0_en",0,], ["libraries.designsystem.components.async_AsyncLoading_Day_0_en","libraries.designsystem.components.async_AsyncLoading_Night_0_en",0,], -["features.messages.impl.messagecomposer_AttachmentSourcePickerMenu_Day_0_en","features.messages.impl.messagecomposer_AttachmentSourcePickerMenu_Night_0_en",20273,], +["features.messages.impl.messagecomposer_AttachmentSourcePickerMenu_Day_0_en","features.messages.impl.messagecomposer_AttachmentSourcePickerMenu_Night_0_en",20294,], ["libraries.matrix.ui.components_AttachmentThumbnail_Day_0_en","libraries.matrix.ui.components_AttachmentThumbnail_Night_0_en",0,], ["libraries.matrix.ui.components_AttachmentThumbnail_Day_1_en","libraries.matrix.ui.components_AttachmentThumbnail_Night_1_en",0,], ["libraries.matrix.ui.components_AttachmentThumbnail_Day_2_en","libraries.matrix.ui.components_AttachmentThumbnail_Night_2_en",0,], @@ -79,18 +79,18 @@ export const screenshots = [ ["libraries.matrix.ui.components_AttachmentThumbnail_Day_6_en","libraries.matrix.ui.components_AttachmentThumbnail_Night_6_en",0,], ["libraries.matrix.ui.components_AttachmentThumbnail_Day_7_en","libraries.matrix.ui.components_AttachmentThumbnail_Night_7_en",0,], ["libraries.matrix.ui.components_AttachmentThumbnail_Day_8_en","libraries.matrix.ui.components_AttachmentThumbnail_Night_8_en",0,], -["features.messages.impl.attachments.preview_AttachmentsView_0_en","",20273,], +["features.messages.impl.attachments.preview_AttachmentsView_0_en","",20294,], ["features.messages.impl.attachments.preview_AttachmentsView_1_en","",0,], -["features.messages.impl.attachments.preview_AttachmentsView_2_en","",20273,], -["features.messages.impl.attachments.preview_AttachmentsView_3_en","",20273,], -["features.messages.impl.attachments.preview_AttachmentsView_4_en","",20273,], -["features.messages.impl.attachments.preview_AttachmentsView_5_en","",20273,], +["features.messages.impl.attachments.preview_AttachmentsView_2_en","",20294,], +["features.messages.impl.attachments.preview_AttachmentsView_3_en","",20294,], +["features.messages.impl.attachments.preview_AttachmentsView_4_en","",20294,], +["features.messages.impl.attachments.preview_AttachmentsView_5_en","",20294,], ["features.messages.impl.attachments.preview_AttachmentsView_6_en","",0,], -["features.messages.impl.attachments.preview_AttachmentsView_7_en","",20273,], +["features.messages.impl.attachments.preview_AttachmentsView_7_en","",20294,], ["libraries.mediaviewer.impl.gallery.ui_AudioItemView_Day_0_en","libraries.mediaviewer.impl.gallery.ui_AudioItemView_Night_0_en",0,], ["libraries.mediaviewer.impl.gallery.ui_AudioItemView_Day_1_en","libraries.mediaviewer.impl.gallery.ui_AudioItemView_Night_1_en",0,], ["libraries.mediaviewer.impl.gallery.ui_AudioItemView_Day_2_en","libraries.mediaviewer.impl.gallery.ui_AudioItemView_Night_2_en",0,], -["libraries.matrix.ui.components_AvatarActionBottomSheet_Day_0_en","libraries.matrix.ui.components_AvatarActionBottomSheet_Night_0_en",20273,], +["libraries.matrix.ui.components_AvatarActionBottomSheet_Day_0_en","libraries.matrix.ui.components_AvatarActionBottomSheet_Night_0_en",20294,], ["libraries.designsystem.components.avatar.internal_AvatarCluster_Avatars_en","",0,], ["features.knockrequests.impl.banner_AvatarRowRtl_Day_0_en","features.knockrequests.impl.banner_AvatarRowRtl_Night_0_en",0,], ["features.knockrequests.impl.banner_AvatarRowRtl_Day_1_en","features.knockrequests.impl.banner_AvatarRowRtl_Night_1_en",0,], @@ -196,159 +196,152 @@ export const screenshots = [ ["libraries.designsystem.components.avatar_Avatar_Avatars_92_en","",0,], ["libraries.designsystem.components.avatar_Avatar_Avatars_9_en","",0,], ["libraries.designsystem.components.button_BackButton_Buttons_en","",0,], +["libraries.designsystem.modifiers_BackgroundVerticalGradientDisabled_Day_0_en","libraries.designsystem.modifiers_BackgroundVerticalGradientDisabled_Night_0_en",0,], +["libraries.designsystem.modifiers_BackgroundVerticalGradientEnterprise_Day_0_en","libraries.designsystem.modifiers_BackgroundVerticalGradientEnterprise_Night_0_en",0,], +["libraries.designsystem.modifiers_BackgroundVerticalGradient_Day_0_en","libraries.designsystem.modifiers_BackgroundVerticalGradient_Night_0_en",0,], ["libraries.designsystem.components_Badge_Day_0_en","libraries.designsystem.components_Badge_Night_0_en",0,], -["features.home.impl.components_BatteryOptimizationBanner_Day_0_en","features.home.impl.components_BatteryOptimizationBanner_Night_0_en",20273,], -["libraries.designsystem.components_BigCheckmark_Day_0_en","libraries.designsystem.components_BigCheckmark_Night_0_en",0,], +["features.home.impl.components_BatteryOptimizationBanner_Day_0_en","features.home.impl.components_BatteryOptimizationBanner_Night_0_en",20294,], ["libraries.designsystem.components_BigIcon_Day_0_en","libraries.designsystem.components_BigIcon_Night_0_en",0,], -["features.preferences.impl.blockedusers_BlockedUsersView_Day_0_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_0_en",20273,], -["features.preferences.impl.blockedusers_BlockedUsersView_Day_1_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_1_en",20273,], -["features.preferences.impl.blockedusers_BlockedUsersView_Day_2_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_2_en",20273,], -["features.preferences.impl.blockedusers_BlockedUsersView_Day_3_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_3_en",20273,], -["features.preferences.impl.blockedusers_BlockedUsersView_Day_4_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_4_en",20273,], -["features.preferences.impl.blockedusers_BlockedUsersView_Day_5_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_5_en",20273,], -["features.preferences.impl.blockedusers_BlockedUsersView_Day_6_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_6_en",20273,], -["libraries.designsystem.components_BloomInitials_Day_0_en","libraries.designsystem.components_BloomInitials_Night_0_en",0,], -["libraries.designsystem.components_BloomInitials_Day_1_en","libraries.designsystem.components_BloomInitials_Night_1_en",0,], -["libraries.designsystem.components_BloomInitials_Day_2_en","libraries.designsystem.components_BloomInitials_Night_2_en",0,], -["libraries.designsystem.components_BloomInitials_Day_3_en","libraries.designsystem.components_BloomInitials_Night_3_en",0,], -["libraries.designsystem.components_BloomInitials_Day_4_en","libraries.designsystem.components_BloomInitials_Night_4_en",0,], -["libraries.designsystem.components_BloomInitials_Day_5_en","libraries.designsystem.components_BloomInitials_Night_5_en",0,], -["libraries.designsystem.components_BloomInitials_Day_6_en","libraries.designsystem.components_BloomInitials_Night_6_en",0,], -["libraries.designsystem.components_BloomInitials_Day_7_en","libraries.designsystem.components_BloomInitials_Night_7_en",0,], -["libraries.designsystem.components_Bloom_Day_0_en","libraries.designsystem.components_Bloom_Night_0_en",0,], +["features.preferences.impl.blockedusers_BlockedUsersView_Day_0_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_0_en",20294,], +["features.preferences.impl.blockedusers_BlockedUsersView_Day_1_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_1_en",20294,], +["features.preferences.impl.blockedusers_BlockedUsersView_Day_2_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_2_en",20294,], +["features.preferences.impl.blockedusers_BlockedUsersView_Day_3_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_3_en",20294,], +["features.preferences.impl.blockedusers_BlockedUsersView_Day_4_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_4_en",20294,], +["features.preferences.impl.blockedusers_BlockedUsersView_Day_5_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_5_en",20294,], +["features.preferences.impl.blockedusers_BlockedUsersView_Day_6_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_6_en",20294,], ["libraries.designsystem.theme.components_BottomSheetDragHandle_Day_0_en","libraries.designsystem.theme.components_BottomSheetDragHandle_Night_0_en",0,], -["features.rageshake.impl.bugreport_BugReportView_Day_0_en","features.rageshake.impl.bugreport_BugReportView_Night_0_en",20273,], -["features.rageshake.impl.bugreport_BugReportView_Day_1_en","features.rageshake.impl.bugreport_BugReportView_Night_1_en",20273,], -["features.rageshake.impl.bugreport_BugReportView_Day_2_en","features.rageshake.impl.bugreport_BugReportView_Night_2_en",20273,], -["features.rageshake.impl.bugreport_BugReportView_Day_3_en","features.rageshake.impl.bugreport_BugReportView_Night_3_en",20273,], -["features.rageshake.impl.bugreport_BugReportView_Day_4_en","features.rageshake.impl.bugreport_BugReportView_Night_4_en",20273,], +["features.rageshake.impl.bugreport_BugReportView_Day_0_en","features.rageshake.impl.bugreport_BugReportView_Night_0_en",20294,], +["features.rageshake.impl.bugreport_BugReportView_Day_1_en","features.rageshake.impl.bugreport_BugReportView_Night_1_en",20294,], +["features.rageshake.impl.bugreport_BugReportView_Day_2_en","features.rageshake.impl.bugreport_BugReportView_Night_2_en",20294,], +["features.rageshake.impl.bugreport_BugReportView_Day_3_en","features.rageshake.impl.bugreport_BugReportView_Night_3_en",20294,], +["features.rageshake.impl.bugreport_BugReportView_Day_4_en","features.rageshake.impl.bugreport_BugReportView_Night_4_en",20294,], ["libraries.designsystem.atomic.molecules_ButtonColumnMolecule_Day_0_en","libraries.designsystem.atomic.molecules_ButtonColumnMolecule_Night_0_en",0,], ["libraries.designsystem.atomic.molecules_ButtonRowMolecule_Day_0_en","libraries.designsystem.atomic.molecules_ButtonRowMolecule_Night_0_en",0,], ["features.messages.impl.timeline.components_CallMenuItem_Day_0_en","features.messages.impl.timeline.components_CallMenuItem_Night_0_en",0,], ["features.messages.impl.timeline.components_CallMenuItem_Day_1_en","features.messages.impl.timeline.components_CallMenuItem_Night_1_en",0,], -["features.messages.impl.timeline.components_CallMenuItem_Day_2_en","features.messages.impl.timeline.components_CallMenuItem_Night_2_en",20273,], -["features.messages.impl.timeline.components_CallMenuItem_Day_3_en","features.messages.impl.timeline.components_CallMenuItem_Night_3_en",20273,], +["features.messages.impl.timeline.components_CallMenuItem_Day_2_en","features.messages.impl.timeline.components_CallMenuItem_Night_2_en",20294,], +["features.messages.impl.timeline.components_CallMenuItem_Day_3_en","features.messages.impl.timeline.components_CallMenuItem_Night_3_en",20294,], ["features.messages.impl.timeline.components_CallMenuItem_Day_4_en","features.messages.impl.timeline.components_CallMenuItem_Night_4_en",0,], ["features.messages.impl.timeline.components_CallMenuItem_Day_5_en","features.messages.impl.timeline.components_CallMenuItem_Night_5_en",0,], ["features.call.impl.ui_CallScreenView_Day_0_en","features.call.impl.ui_CallScreenView_Night_0_en",0,], -["features.call.impl.ui_CallScreenView_Day_1_en","features.call.impl.ui_CallScreenView_Night_1_en",20273,], -["features.call.impl.ui_CallScreenView_Day_2_en","features.call.impl.ui_CallScreenView_Night_2_en",20273,], -["features.call.impl.ui_CallScreenView_Day_3_en","features.call.impl.ui_CallScreenView_Night_3_en",20273,], -["libraries.textcomposer_CaptionWarningBottomSheet_Day_0_en","libraries.textcomposer_CaptionWarningBottomSheet_Night_0_en",20273,], -["features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Day_0_en","features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Night_0_en",20273,], -["features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Day_1_en","features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Night_1_en",20273,], -["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_0_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_0_en",20273,], -["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_10_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_10_en",20273,], -["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_1_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_1_en",20273,], -["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_2_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_2_en",20273,], -["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_3_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_3_en",20273,], -["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_4_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_4_en",20273,], -["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_5_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_5_en",20273,], -["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_6_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_6_en",20273,], -["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_7_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_7_en",20273,], -["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_8_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_8_en",20273,], -["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_9_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_9_en",20273,], -["features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Day_0_en","features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Night_0_en",20273,], -["features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Day_1_en","features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Night_1_en",20273,], -["features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Day_2_en","features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Night_2_en",20273,], -["features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Day_3_en","features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Night_3_en",20273,], -["features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Day_4_en","features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Night_4_en",20273,], -["features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Day_5_en","features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Night_5_en",20273,], -["features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Day_6_en","features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Night_6_en",20273,], +["features.call.impl.ui_CallScreenView_Day_1_en","features.call.impl.ui_CallScreenView_Night_1_en",20294,], +["features.call.impl.ui_CallScreenView_Day_2_en","features.call.impl.ui_CallScreenView_Night_2_en",20294,], +["features.call.impl.ui_CallScreenView_Day_3_en","features.call.impl.ui_CallScreenView_Night_3_en",20294,], +["libraries.textcomposer_CaptionWarningBottomSheet_Day_0_en","libraries.textcomposer_CaptionWarningBottomSheet_Night_0_en",20294,], +["features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Day_0_en","features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Night_0_en",20294,], +["features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Day_1_en","features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Night_1_en",20294,], +["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_0_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_0_en",20294,], +["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_10_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_10_en",20294,], +["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_1_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_1_en",20294,], +["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_2_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_2_en",20294,], +["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_3_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_3_en",20294,], +["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_4_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_4_en",20294,], +["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_5_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_5_en",20294,], +["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_6_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_6_en",20294,], +["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_7_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_7_en",20294,], +["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_8_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_8_en",20294,], +["features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_9_en","features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_9_en",20294,], +["features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Day_0_en","features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Night_0_en",20294,], +["features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Day_1_en","features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Night_1_en",20294,], +["features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Day_2_en","features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Night_2_en",20294,], +["features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Day_3_en","features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Night_3_en",20294,], +["features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Day_4_en","features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Night_4_en",20294,], +["features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Day_5_en","features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Night_5_en",20294,], +["features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Day_6_en","features.roomdetails.impl.rolesandpermissions.permissions_ChangeRoomPermissionsView_Night_6_en",20294,], ["features.login.impl.changeserver_ChangeServerView_Day_0_en","features.login.impl.changeserver_ChangeServerView_Night_0_en",0,], -["features.login.impl.changeserver_ChangeServerView_Day_1_en","features.login.impl.changeserver_ChangeServerView_Night_1_en",20273,], -["features.login.impl.changeserver_ChangeServerView_Day_2_en","features.login.impl.changeserver_ChangeServerView_Night_2_en",20273,], -["features.login.impl.changeserver_ChangeServerView_Day_3_en","features.login.impl.changeserver_ChangeServerView_Night_3_en",20273,], +["features.login.impl.changeserver_ChangeServerView_Day_1_en","features.login.impl.changeserver_ChangeServerView_Night_1_en",20294,], +["features.login.impl.changeserver_ChangeServerView_Day_2_en","features.login.impl.changeserver_ChangeServerView_Night_2_en",20294,], +["features.login.impl.changeserver_ChangeServerView_Day_3_en","features.login.impl.changeserver_ChangeServerView_Night_3_en",20294,], ["libraries.matrix.ui.components_CheckableResolvedUserRow_en","",0,], -["libraries.matrix.ui.components_CheckableUnresolvedUserRow_en","",20273,], +["libraries.matrix.ui.components_CheckableUnresolvedUserRow_en","",20294,], ["libraries.designsystem.theme.components_Checkboxes_Toggles_en","",0,], -["features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Day_0_en","features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Night_0_en",20273,], -["features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Day_1_en","features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Night_1_en",20273,], -["features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Day_2_en","features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Night_2_en",20273,], -["features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_0_en","features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Night_0_en",20273,], -["features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_1_en","features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Night_1_en",20273,], -["features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_2_en","features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Night_2_en",20273,], -["features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_3_en","features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Night_3_en",20273,], +["features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Day_0_en","features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Night_0_en",20294,], +["features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Day_1_en","features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Night_1_en",20294,], +["features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Day_2_en","features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Night_2_en",20294,], +["features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_0_en","features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Night_0_en",20294,], +["features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_1_en","features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Night_1_en",20294,], +["features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_2_en","features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Night_2_en",20294,], +["features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_3_en","features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Night_3_en",20294,], ["libraries.designsystem.theme.components_CircularProgressIndicator_Progress_Indicators_en","",0,], ["libraries.designsystem.components_ClickableLinkText_Text_en","",0,], ["libraries.designsystem.theme_ColorAliases_Day_0_en","libraries.designsystem.theme_ColorAliases_Night_0_en",0,], -["libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Day_0_en","libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Night_0_en",20273,], -["libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Day_1_en","libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Night_1_en",20273,], -["libraries.textcomposer_ComposerModeView_Day_0_en","libraries.textcomposer_ComposerModeView_Night_0_en",20273,], +["libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Day_0_en","libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Night_0_en",20294,], +["libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Day_1_en","libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Night_1_en",20294,], +["libraries.textcomposer_ComposerModeView_Day_0_en","libraries.textcomposer_ComposerModeView_Night_0_en",20294,], ["libraries.textcomposer_ComposerModeView_Day_1_en","libraries.textcomposer_ComposerModeView_Night_1_en",0,], ["libraries.textcomposer_ComposerModeView_Day_2_en","libraries.textcomposer_ComposerModeView_Night_2_en",0,], ["libraries.textcomposer_ComposerModeView_Day_3_en","libraries.textcomposer_ComposerModeView_Night_3_en",0,], -["features.createroom.impl.configureroom_ConfigureRoomViewDark_0_en","",20273,], -["features.createroom.impl.configureroom_ConfigureRoomViewDark_1_en","",20273,], -["features.createroom.impl.configureroom_ConfigureRoomViewDark_2_en","",20273,], -["features.createroom.impl.configureroom_ConfigureRoomViewDark_3_en","",20273,], -["features.createroom.impl.configureroom_ConfigureRoomViewDark_4_en","",20273,], -["features.createroom.impl.configureroom_ConfigureRoomViewDark_5_en","",20273,], -["features.createroom.impl.configureroom_ConfigureRoomViewLight_0_en","",20273,], -["features.createroom.impl.configureroom_ConfigureRoomViewLight_1_en","",20273,], -["features.createroom.impl.configureroom_ConfigureRoomViewLight_2_en","",20273,], -["features.createroom.impl.configureroom_ConfigureRoomViewLight_3_en","",20273,], -["features.createroom.impl.configureroom_ConfigureRoomViewLight_4_en","",20273,], -["features.createroom.impl.configureroom_ConfigureRoomViewLight_5_en","",20273,], -["features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_0_en","features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Night_0_en",20273,], -["features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_1_en","features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Night_1_en",20273,], -["features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_2_en","features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Night_2_en",20273,], -["features.home.impl.components_ConfirmRecoveryKeyBanner_Day_0_en","features.home.impl.components_ConfirmRecoveryKeyBanner_Night_0_en",20273,], +["features.createroom.impl.configureroom_ConfigureRoomViewDark_0_en","",20294,], +["features.createroom.impl.configureroom_ConfigureRoomViewDark_1_en","",20294,], +["features.createroom.impl.configureroom_ConfigureRoomViewDark_2_en","",20294,], +["features.createroom.impl.configureroom_ConfigureRoomViewDark_3_en","",20294,], +["features.createroom.impl.configureroom_ConfigureRoomViewDark_4_en","",20294,], +["features.createroom.impl.configureroom_ConfigureRoomViewDark_5_en","",20294,], +["features.createroom.impl.configureroom_ConfigureRoomViewLight_0_en","",20294,], +["features.createroom.impl.configureroom_ConfigureRoomViewLight_1_en","",20294,], +["features.createroom.impl.configureroom_ConfigureRoomViewLight_2_en","",20294,], +["features.createroom.impl.configureroom_ConfigureRoomViewLight_3_en","",20294,], +["features.createroom.impl.configureroom_ConfigureRoomViewLight_4_en","",20294,], +["features.createroom.impl.configureroom_ConfigureRoomViewLight_5_en","",20294,], +["features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_0_en","features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Night_0_en",20294,], +["features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_1_en","features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Night_1_en",20294,], +["features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_2_en","features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Night_2_en",20294,], +["features.home.impl.components_ConfirmRecoveryKeyBanner_Day_0_en","features.home.impl.components_ConfirmRecoveryKeyBanner_Night_0_en",20294,], ["libraries.designsystem.components.dialogs_ConfirmationDialogContent_Dialogs_en","",0,], ["libraries.designsystem.components.dialogs_ConfirmationDialog_Day_0_en","libraries.designsystem.components.dialogs_ConfirmationDialog_Night_0_en",0,], ["features.networkmonitor.api.ui_ConnectivityIndicatorView_Day_0_en","features.networkmonitor.api.ui_ConnectivityIndicatorView_Night_0_en",0,], ["libraries.designsystem.atomic.atoms_CounterAtom_Day_0_en","libraries.designsystem.atomic.atoms_CounterAtom_Night_0_en",0,], -["features.rageshake.api.crash_CrashDetectionView_Day_0_en","features.rageshake.api.crash_CrashDetectionView_Night_0_en",20273,], -["features.login.impl.screens.createaccount_CreateAccountView_Day_0_en","features.login.impl.screens.createaccount_CreateAccountView_Night_0_en",20273,], -["features.login.impl.screens.createaccount_CreateAccountView_Day_1_en","features.login.impl.screens.createaccount_CreateAccountView_Night_1_en",20273,], -["features.login.impl.screens.createaccount_CreateAccountView_Day_2_en","features.login.impl.screens.createaccount_CreateAccountView_Night_2_en",20273,], -["features.login.impl.screens.createaccount_CreateAccountView_Day_3_en","features.login.impl.screens.createaccount_CreateAccountView_Night_3_en",20273,], -["libraries.matrix.ui.components_CreateDmConfirmationBottomSheet_Day_0_en","libraries.matrix.ui.components_CreateDmConfirmationBottomSheet_Night_0_en",20273,], -["libraries.matrix.ui.components_CreateDmConfirmationBottomSheet_Day_1_en","libraries.matrix.ui.components_CreateDmConfirmationBottomSheet_Night_1_en",20273,], -["features.poll.impl.create_CreatePollView_Day_0_en","features.poll.impl.create_CreatePollView_Night_0_en",20273,], -["features.poll.impl.create_CreatePollView_Day_1_en","features.poll.impl.create_CreatePollView_Night_1_en",20273,], -["features.poll.impl.create_CreatePollView_Day_2_en","features.poll.impl.create_CreatePollView_Night_2_en",20273,], -["features.poll.impl.create_CreatePollView_Day_3_en","features.poll.impl.create_CreatePollView_Night_3_en",20273,], -["features.poll.impl.create_CreatePollView_Day_4_en","features.poll.impl.create_CreatePollView_Night_4_en",20273,], -["features.poll.impl.create_CreatePollView_Day_5_en","features.poll.impl.create_CreatePollView_Night_5_en",20273,], -["features.poll.impl.create_CreatePollView_Day_6_en","features.poll.impl.create_CreatePollView_Night_6_en",20273,], -["features.poll.impl.create_CreatePollView_Day_7_en","features.poll.impl.create_CreatePollView_Night_7_en",20273,], -["features.createroom.impl.root_CreateRoomRootView_Day_0_en","features.createroom.impl.root_CreateRoomRootView_Night_0_en",20273,], -["features.createroom.impl.root_CreateRoomRootView_Day_1_en","features.createroom.impl.root_CreateRoomRootView_Night_1_en",20273,], -["features.createroom.impl.root_CreateRoomRootView_Day_2_en","features.createroom.impl.root_CreateRoomRootView_Night_2_en",20273,], -["features.createroom.impl.root_CreateRoomRootView_Day_3_en","features.createroom.impl.root_CreateRoomRootView_Night_3_en",20273,], -["features.createroom.impl.root_CreateRoomRootView_Day_4_en","features.createroom.impl.root_CreateRoomRootView_Night_4_en",20273,], -["features.createroom.impl.root_CreateRoomRootView_Day_5_en","features.createroom.impl.root_CreateRoomRootView_Night_5_en",20273,], -["libraries.dateformatter.impl.previews_DateFormatterModeView_0_en","",20273,], -["libraries.dateformatter.impl.previews_DateFormatterModeView_1_en","",20273,], -["libraries.dateformatter.impl.previews_DateFormatterModeView_2_en","",20273,], -["libraries.dateformatter.impl.previews_DateFormatterModeView_3_en","",20273,], -["libraries.dateformatter.impl.previews_DateFormatterModeView_4_en","",20273,], +["features.rageshake.api.crash_CrashDetectionView_Day_0_en","features.rageshake.api.crash_CrashDetectionView_Night_0_en",20294,], +["features.login.impl.screens.createaccount_CreateAccountView_Day_0_en","features.login.impl.screens.createaccount_CreateAccountView_Night_0_en",20294,], +["features.login.impl.screens.createaccount_CreateAccountView_Day_1_en","features.login.impl.screens.createaccount_CreateAccountView_Night_1_en",20294,], +["features.login.impl.screens.createaccount_CreateAccountView_Day_2_en","features.login.impl.screens.createaccount_CreateAccountView_Night_2_en",20294,], +["features.login.impl.screens.createaccount_CreateAccountView_Day_3_en","features.login.impl.screens.createaccount_CreateAccountView_Night_3_en",20294,], +["libraries.matrix.ui.components_CreateDmConfirmationBottomSheet_Day_0_en","libraries.matrix.ui.components_CreateDmConfirmationBottomSheet_Night_0_en",20294,], +["libraries.matrix.ui.components_CreateDmConfirmationBottomSheet_Day_1_en","libraries.matrix.ui.components_CreateDmConfirmationBottomSheet_Night_1_en",20294,], +["features.poll.impl.create_CreatePollView_Day_0_en","features.poll.impl.create_CreatePollView_Night_0_en",20294,], +["features.poll.impl.create_CreatePollView_Day_1_en","features.poll.impl.create_CreatePollView_Night_1_en",20294,], +["features.poll.impl.create_CreatePollView_Day_2_en","features.poll.impl.create_CreatePollView_Night_2_en",20294,], +["features.poll.impl.create_CreatePollView_Day_3_en","features.poll.impl.create_CreatePollView_Night_3_en",20294,], +["features.poll.impl.create_CreatePollView_Day_4_en","features.poll.impl.create_CreatePollView_Night_4_en",20294,], +["features.poll.impl.create_CreatePollView_Day_5_en","features.poll.impl.create_CreatePollView_Night_5_en",20294,], +["features.poll.impl.create_CreatePollView_Day_6_en","features.poll.impl.create_CreatePollView_Night_6_en",20294,], +["features.poll.impl.create_CreatePollView_Day_7_en","features.poll.impl.create_CreatePollView_Night_7_en",20294,], +["features.createroom.impl.root_CreateRoomRootView_Day_0_en","features.createroom.impl.root_CreateRoomRootView_Night_0_en",20294,], +["features.createroom.impl.root_CreateRoomRootView_Day_1_en","features.createroom.impl.root_CreateRoomRootView_Night_1_en",20294,], +["features.createroom.impl.root_CreateRoomRootView_Day_2_en","features.createroom.impl.root_CreateRoomRootView_Night_2_en",20294,], +["features.createroom.impl.root_CreateRoomRootView_Day_3_en","features.createroom.impl.root_CreateRoomRootView_Night_3_en",20294,], +["features.createroom.impl.root_CreateRoomRootView_Day_4_en","features.createroom.impl.root_CreateRoomRootView_Night_4_en",20294,], +["features.createroom.impl.root_CreateRoomRootView_Day_5_en","features.createroom.impl.root_CreateRoomRootView_Night_5_en",20294,], +["libraries.dateformatter.impl.previews_DateFormatterModeView_0_en","",20294,], +["libraries.dateformatter.impl.previews_DateFormatterModeView_1_en","",20294,], +["libraries.dateformatter.impl.previews_DateFormatterModeView_2_en","",20294,], +["libraries.dateformatter.impl.previews_DateFormatterModeView_3_en","",20294,], +["libraries.dateformatter.impl.previews_DateFormatterModeView_4_en","",20294,], ["libraries.mediaviewer.impl.gallery.ui_DateItemView_Day_0_en","libraries.mediaviewer.impl.gallery.ui_DateItemView_Night_0_en",0,], ["libraries.mediaviewer.impl.gallery.ui_DateItemView_Day_1_en","libraries.mediaviewer.impl.gallery.ui_DateItemView_Night_1_en",0,], -["libraries.designsystem.theme.components.previews_DatePickerDark_DateTime_pickers_en","",20273,], -["libraries.designsystem.theme.components.previews_DatePickerLight_DateTime_pickers_en","",20273,], -["features.invite.impl.declineandblock_DeclineAndBlockView_Day_0_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_0_en",20273,], -["features.invite.impl.declineandblock_DeclineAndBlockView_Day_1_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_1_en",20273,], -["features.invite.impl.declineandblock_DeclineAndBlockView_Day_2_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_2_en",20273,], -["features.invite.impl.declineandblock_DeclineAndBlockView_Day_3_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_3_en",20273,], -["features.invite.impl.declineandblock_DeclineAndBlockView_Day_4_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_4_en",20273,], +["libraries.designsystem.theme.components.previews_DatePickerDark_DateTime_pickers_en","",20294,], +["libraries.designsystem.theme.components.previews_DatePickerLight_DateTime_pickers_en","",20294,], +["features.invite.impl.declineandblock_DeclineAndBlockView_Day_0_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_0_en",20294,], +["features.invite.impl.declineandblock_DeclineAndBlockView_Day_1_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_1_en",20294,], +["features.invite.impl.declineandblock_DeclineAndBlockView_Day_2_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_2_en",20294,], +["features.invite.impl.declineandblock_DeclineAndBlockView_Day_3_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_3_en",20294,], +["features.invite.impl.declineandblock_DeclineAndBlockView_Day_4_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_4_en",20294,], ["features.logout.impl.direct_DefaultDirectLogoutView_Day_0_en","features.logout.impl.direct_DefaultDirectLogoutView_Night_0_en",0,], -["features.logout.impl.direct_DefaultDirectLogoutView_Day_1_en","features.logout.impl.direct_DefaultDirectLogoutView_Night_1_en",20273,], -["features.logout.impl.direct_DefaultDirectLogoutView_Day_2_en","features.logout.impl.direct_DefaultDirectLogoutView_Night_2_en",20273,], -["features.logout.impl.direct_DefaultDirectLogoutView_Day_3_en","features.logout.impl.direct_DefaultDirectLogoutView_Night_3_en",20273,], +["features.logout.impl.direct_DefaultDirectLogoutView_Day_1_en","features.logout.impl.direct_DefaultDirectLogoutView_Night_1_en",20294,], +["features.logout.impl.direct_DefaultDirectLogoutView_Day_2_en","features.logout.impl.direct_DefaultDirectLogoutView_Night_2_en",20294,], +["features.logout.impl.direct_DefaultDirectLogoutView_Day_3_en","features.logout.impl.direct_DefaultDirectLogoutView_Night_3_en",20294,], ["features.logout.impl.direct_DefaultDirectLogoutView_Day_4_en","features.logout.impl.direct_DefaultDirectLogoutView_Night_4_en",0,], -["features.preferences.impl.notifications.edit_DefaultNotificationSettingOption_Day_0_en","features.preferences.impl.notifications.edit_DefaultNotificationSettingOption_Night_0_en",20273,], -["features.home.impl.components_DefaultRoomListTopBarWithIndicator_Day_0_en","features.home.impl.components_DefaultRoomListTopBarWithIndicator_Night_0_en",20273,], -["features.home.impl.components_DefaultRoomListTopBar_Day_0_en","features.home.impl.components_DefaultRoomListTopBar_Night_0_en",20273,], +["features.preferences.impl.notifications.edit_DefaultNotificationSettingOption_Day_0_en","features.preferences.impl.notifications.edit_DefaultNotificationSettingOption_Night_0_en",20294,], +["features.home.impl.components_DefaultRoomListTopBarWithIndicator_Day_0_en","features.home.impl.components_DefaultRoomListTopBarWithIndicator_Night_0_en",20294,], +["features.home.impl.components_DefaultRoomListTopBar_Day_0_en","features.home.impl.components_DefaultRoomListTopBar_Night_0_en",20294,], ["features.licenses.impl.details_DependenciesDetailsView_Day_0_en","features.licenses.impl.details_DependenciesDetailsView_Night_0_en",0,], -["features.licenses.impl.list_DependencyLicensesListView_Day_0_en","features.licenses.impl.list_DependencyLicensesListView_Night_0_en",20273,], -["features.licenses.impl.list_DependencyLicensesListView_Day_1_en","features.licenses.impl.list_DependencyLicensesListView_Night_1_en",20273,], -["features.licenses.impl.list_DependencyLicensesListView_Day_2_en","features.licenses.impl.list_DependencyLicensesListView_Night_2_en",20273,], -["features.licenses.impl.list_DependencyLicensesListView_Day_3_en","features.licenses.impl.list_DependencyLicensesListView_Night_3_en",20273,], -["features.preferences.impl.developer_DeveloperSettingsView_Day_0_en","features.preferences.impl.developer_DeveloperSettingsView_Night_0_en",20273,], -["features.preferences.impl.developer_DeveloperSettingsView_Day_1_en","features.preferences.impl.developer_DeveloperSettingsView_Night_1_en",20273,], -["features.preferences.impl.developer_DeveloperSettingsView_Day_2_en","features.preferences.impl.developer_DeveloperSettingsView_Night_2_en",20273,], +["features.licenses.impl.list_DependencyLicensesListView_Day_0_en","features.licenses.impl.list_DependencyLicensesListView_Night_0_en",20294,], +["features.licenses.impl.list_DependencyLicensesListView_Day_1_en","features.licenses.impl.list_DependencyLicensesListView_Night_1_en",20294,], +["features.licenses.impl.list_DependencyLicensesListView_Day_2_en","features.licenses.impl.list_DependencyLicensesListView_Night_2_en",20294,], +["features.licenses.impl.list_DependencyLicensesListView_Day_3_en","features.licenses.impl.list_DependencyLicensesListView_Night_3_en",20294,], +["features.preferences.impl.developer_DeveloperSettingsView_Day_0_en","features.preferences.impl.developer_DeveloperSettingsView_Night_0_en",20294,], +["features.preferences.impl.developer_DeveloperSettingsView_Day_1_en","features.preferences.impl.developer_DeveloperSettingsView_Night_1_en",20294,], +["features.preferences.impl.developer_DeveloperSettingsView_Day_2_en","features.preferences.impl.developer_DeveloperSettingsView_Night_2_en",20294,], ["libraries.designsystem.theme.components_DialogWithDestructiveButton_Dialog_with_destructive_button_Dialogs_en","",0,], ["libraries.designsystem.theme.components_DialogWithOnlyMessageAndOkButton_Dialog_with_only_message_and_ok_button_Dialogs_en","",0,], ["libraries.designsystem.theme.components_DialogWithThirdButton_Dialog_with_third_button_Dialogs_en","",0,], @@ -361,18 +354,18 @@ export const screenshots = [ ["libraries.designsystem.text_DpScale_1_0f__en","",0,], ["libraries.designsystem.text_DpScale_1_5f__en","",0,], ["libraries.designsystem.theme.components_DropdownMenuItem_Menus_en","",0,], -["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_0_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_0_en",20273,], -["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_1_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_1_en",20273,], -["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_2_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_2_en",20273,], -["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_3_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_3_en",20273,], -["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_4_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_4_en",20273,], -["features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Day_0_en","features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Night_0_en",20273,], -["features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Day_1_en","features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Night_1_en",20273,], -["features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Day_2_en","features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Night_2_en",20273,], -["features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Day_3_en","features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Night_3_en",20273,], -["features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Day_4_en","features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Night_4_en",20273,], -["features.preferences.impl.user.editprofile_EditUserProfileView_Day_0_en","features.preferences.impl.user.editprofile_EditUserProfileView_Night_0_en",20273,], -["features.preferences.impl.user.editprofile_EditUserProfileView_Day_1_en","features.preferences.impl.user.editprofile_EditUserProfileView_Night_1_en",20273,], +["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_0_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_0_en",20294,], +["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_1_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_1_en",20294,], +["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_2_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_2_en",20294,], +["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_3_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_3_en",20294,], +["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_4_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_4_en",20294,], +["features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Day_0_en","features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Night_0_en",20294,], +["features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Day_1_en","features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Night_1_en",20294,], +["features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Day_2_en","features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Night_2_en",20294,], +["features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Day_3_en","features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Night_3_en",20294,], +["features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Day_4_en","features.roomdetails.impl.securityandprivacy.editroomaddress_EditRoomAddressView_Night_4_en",20294,], +["features.preferences.impl.user.editprofile_EditUserProfileView_Day_0_en","features.preferences.impl.user.editprofile_EditUserProfileView_Night_0_en",20294,], +["features.preferences.impl.user.editprofile_EditUserProfileView_Day_1_en","features.preferences.impl.user.editprofile_EditUserProfileView_Night_1_en",20294,], ["libraries.matrix.ui.components_EditableAvatarView_Day_0_en","libraries.matrix.ui.components_EditableAvatarView_Night_0_en",0,], ["libraries.matrix.ui.components_EditableAvatarView_Day_1_en","libraries.matrix.ui.components_EditableAvatarView_Night_1_en",0,], ["libraries.matrix.ui.components_EditableAvatarView_Day_2_en","libraries.matrix.ui.components_EditableAvatarView_Night_2_en",0,], @@ -382,9 +375,9 @@ export const screenshots = [ ["libraries.designsystem.atomic.atoms_ElementLogoAtomMedium_Day_0_en","libraries.designsystem.atomic.atoms_ElementLogoAtomMedium_Night_0_en",0,], ["features.messages.impl.timeline.components.customreaction_EmojiItem_Day_0_en","features.messages.impl.timeline.components.customreaction_EmojiItem_Night_0_en",0,], ["features.messages.impl.timeline.components.customreaction_EmojiPicker_Day_0_en","features.messages.impl.timeline.components.customreaction_EmojiPicker_Night_0_en",0,], -["libraries.designsystem.components.dialogs_ErrorDialogContent_Dialogs_en","",20273,], -["libraries.designsystem.components.dialogs_ErrorDialogWithDoNotShowAgain_Day_0_en","libraries.designsystem.components.dialogs_ErrorDialogWithDoNotShowAgain_Night_0_en",20273,], -["libraries.designsystem.components.dialogs_ErrorDialog_Day_0_en","libraries.designsystem.components.dialogs_ErrorDialog_Night_0_en",20273,], +["libraries.designsystem.components.dialogs_ErrorDialogContent_Dialogs_en","",20294,], +["libraries.designsystem.components.dialogs_ErrorDialogWithDoNotShowAgain_Day_0_en","libraries.designsystem.components.dialogs_ErrorDialogWithDoNotShowAgain_Night_0_en",20294,], +["libraries.designsystem.components.dialogs_ErrorDialog_Day_0_en","libraries.designsystem.components.dialogs_ErrorDialog_Night_0_en",20294,], ["features.messages.impl.timeline.debug_EventDebugInfoView_Day_0_en","features.messages.impl.timeline.debug_EventDebugInfoView_Night_0_en",0,], ["libraries.designsystem.components_ExpandableBottomSheetLayout_en","",0,], ["libraries.featureflag.ui_FeatureListView_Day_0_en","libraries.featureflag.ui_FeatureListView_Night_0_en",0,], @@ -403,36 +396,38 @@ export const screenshots = [ ["libraries.designsystem.theme.components_FloatingActionButton_Floating_Action_Buttons_en","",0,], ["libraries.designsystem.atomic.pages_FlowStepPage_Day_0_en","libraries.designsystem.atomic.pages_FlowStepPage_Night_0_en",0,], ["features.messages.impl.timeline.focus_FocusRequestStateView_Day_0_en","features.messages.impl.timeline.focus_FocusRequestStateView_Night_0_en",0,], -["features.messages.impl.timeline.focus_FocusRequestStateView_Day_1_en","features.messages.impl.timeline.focus_FocusRequestStateView_Night_1_en",20273,], -["features.messages.impl.timeline.focus_FocusRequestStateView_Day_2_en","features.messages.impl.timeline.focus_FocusRequestStateView_Night_2_en",20273,], -["features.messages.impl.timeline.focus_FocusRequestStateView_Day_3_en","features.messages.impl.timeline.focus_FocusRequestStateView_Night_3_en",20273,], +["features.messages.impl.timeline.focus_FocusRequestStateView_Day_1_en","features.messages.impl.timeline.focus_FocusRequestStateView_Night_1_en",20294,], +["features.messages.impl.timeline.focus_FocusRequestStateView_Day_2_en","features.messages.impl.timeline.focus_FocusRequestStateView_Night_2_en",20294,], +["features.messages.impl.timeline.focus_FocusRequestStateView_Day_3_en","features.messages.impl.timeline.focus_FocusRequestStateView_Night_3_en",20294,], +["features.messages.impl.timeline.components_FocusedEventEnterprise_Day_0_en","features.messages.impl.timeline.components_FocusedEventEnterprise_Night_0_en",0,], ["features.messages.impl.timeline.components_FocusedEvent_Day_0_en","features.messages.impl.timeline.components_FocusedEvent_Night_0_en",0,], ["libraries.textcomposer.components_FormattingOption_Day_0_en","libraries.textcomposer.components_FormattingOption_Night_0_en",0,], ["features.messages.impl.forward_ForwardMessagesView_Day_0_en","features.messages.impl.forward_ForwardMessagesView_Night_0_en",0,], ["features.messages.impl.forward_ForwardMessagesView_Day_1_en","features.messages.impl.forward_ForwardMessagesView_Night_1_en",0,], ["features.messages.impl.forward_ForwardMessagesView_Day_2_en","features.messages.impl.forward_ForwardMessagesView_Night_2_en",0,], -["features.messages.impl.forward_ForwardMessagesView_Day_3_en","features.messages.impl.forward_ForwardMessagesView_Night_3_en",20273,], -["features.home.impl.components_FullScreenIntentPermissionBanner_Day_0_en","features.home.impl.components_FullScreenIntentPermissionBanner_Night_0_en",20273,], +["features.messages.impl.forward_ForwardMessagesView_Day_3_en","features.messages.impl.forward_ForwardMessagesView_Night_3_en",20294,], +["features.home.impl.components_FullScreenIntentPermissionBanner_Day_0_en","features.home.impl.components_FullScreenIntentPermissionBanner_Night_0_en",20294,], ["libraries.designsystem.components.button_GradientFloatingActionButtonCircleShape_Day_0_en","libraries.designsystem.components.button_GradientFloatingActionButtonCircleShape_Night_0_en",0,], ["libraries.designsystem.components.button_GradientFloatingActionButton_Day_0_en","libraries.designsystem.components.button_GradientFloatingActionButton_Night_0_en",0,], ["features.messages.impl.timeline.components.group_GroupHeaderView_Day_0_en","features.messages.impl.timeline.components.group_GroupHeaderView_Night_0_en",0,], ["libraries.designsystem.atomic.pages_HeaderFooterPageScrollable_Day_0_en","libraries.designsystem.atomic.pages_HeaderFooterPageScrollable_Night_0_en",0,], ["libraries.designsystem.atomic.pages_HeaderFooterPage_Day_0_en","libraries.designsystem.atomic.pages_HeaderFooterPage_Night_0_en",0,], -["features.home.impl_HomeView_Day_0_en","features.home.impl_HomeView_Night_0_en",20273,], -["features.home.impl_HomeView_Day_10_en","features.home.impl_HomeView_Night_10_en",20273,], +["features.home.impl_HomeView_Day_0_en","features.home.impl_HomeView_Night_0_en",20294,], +["features.home.impl_HomeView_Day_10_en","features.home.impl_HomeView_Night_10_en",20294,], ["features.home.impl_HomeView_Day_11_en","features.home.impl_HomeView_Night_11_en",0,], ["features.home.impl_HomeView_Day_12_en","features.home.impl_HomeView_Night_12_en",0,], -["features.home.impl_HomeView_Day_13_en","features.home.impl_HomeView_Night_13_en",20273,], -["features.home.impl_HomeView_Day_14_en","features.home.impl_HomeView_Night_14_en",20273,], -["features.home.impl_HomeView_Day_1_en","features.home.impl_HomeView_Night_1_en",20273,], -["features.home.impl_HomeView_Day_2_en","features.home.impl_HomeView_Night_2_en",20273,], -["features.home.impl_HomeView_Day_3_en","features.home.impl_HomeView_Night_3_en",20273,], +["features.home.impl_HomeView_Day_13_en","features.home.impl_HomeView_Night_13_en",20294,], +["features.home.impl_HomeView_Day_14_en","features.home.impl_HomeView_Night_14_en",20294,], +["features.home.impl_HomeView_Day_15_en","features.home.impl_HomeView_Night_15_en",20294,], +["features.home.impl_HomeView_Day_1_en","features.home.impl_HomeView_Night_1_en",20294,], +["features.home.impl_HomeView_Day_2_en","features.home.impl_HomeView_Night_2_en",20294,], +["features.home.impl_HomeView_Day_3_en","features.home.impl_HomeView_Night_3_en",20294,], ["features.home.impl_HomeView_Day_4_en","features.home.impl_HomeView_Night_4_en",0,], -["features.home.impl_HomeView_Day_5_en","features.home.impl_HomeView_Night_5_en",20273,], -["features.home.impl_HomeView_Day_6_en","features.home.impl_HomeView_Night_6_en",20273,], -["features.home.impl_HomeView_Day_7_en","features.home.impl_HomeView_Night_7_en",20273,], -["features.home.impl_HomeView_Day_8_en","features.home.impl_HomeView_Night_8_en",20273,], -["features.home.impl_HomeView_Day_9_en","features.home.impl_HomeView_Night_9_en",20273,], +["features.home.impl_HomeView_Day_5_en","features.home.impl_HomeView_Night_5_en",20294,], +["features.home.impl_HomeView_Day_6_en","features.home.impl_HomeView_Night_6_en",20294,], +["features.home.impl_HomeView_Day_7_en","features.home.impl_HomeView_Night_7_en",20294,], +["features.home.impl_HomeView_Day_8_en","features.home.impl_HomeView_Night_8_en",20294,], +["features.home.impl_HomeView_Day_9_en","features.home.impl_HomeView_Night_9_en",20294,], ["libraries.designsystem.theme.components_HorizontalDivider_Dividers_en","",0,], ["libraries.designsystem.ruler_HorizontalRuler_Day_0_en","libraries.designsystem.ruler_HorizontalRuler_Night_0_en",0,], ["libraries.designsystem.theme.components_IconButton_Buttons_en","",0,], @@ -451,8 +446,8 @@ export const screenshots = [ ["libraries.designsystem.icons_IconsCompound_Day_5_en","libraries.designsystem.icons_IconsCompound_Night_5_en",0,], ["libraries.designsystem.icons_IconsOther_Day_0_en","libraries.designsystem.icons_IconsOther_Night_0_en",0,], ["features.messages.impl.crypto.identity_IdentityChangeStateView_Day_0_en","features.messages.impl.crypto.identity_IdentityChangeStateView_Night_0_en",0,], -["features.messages.impl.crypto.identity_IdentityChangeStateView_Day_1_en","features.messages.impl.crypto.identity_IdentityChangeStateView_Night_1_en",20273,], -["features.messages.impl.crypto.identity_IdentityChangeStateView_Day_2_en","features.messages.impl.crypto.identity_IdentityChangeStateView_Night_2_en",20273,], +["features.messages.impl.crypto.identity_IdentityChangeStateView_Day_1_en","features.messages.impl.crypto.identity_IdentityChangeStateView_Night_1_en",20294,], +["features.messages.impl.crypto.identity_IdentityChangeStateView_Day_2_en","features.messages.impl.crypto.identity_IdentityChangeStateView_Night_2_en",20294,], ["libraries.mediaviewer.impl.gallery.ui_ImageItemView_Day_0_en","libraries.mediaviewer.impl.gallery.ui_ImageItemView_Night_0_en",0,], ["libraries.matrix.ui.messages.reply_InReplyToView_Day_0_en","libraries.matrix.ui.messages.reply_InReplyToView_Night_0_en",0,], ["libraries.matrix.ui.messages.reply_InReplyToView_Day_10_en","libraries.matrix.ui.messages.reply_InReplyToView_Night_10_en",0,], @@ -460,85 +455,85 @@ export const screenshots = [ ["libraries.matrix.ui.messages.reply_InReplyToView_Day_1_en","libraries.matrix.ui.messages.reply_InReplyToView_Night_1_en",0,], ["libraries.matrix.ui.messages.reply_InReplyToView_Day_2_en","libraries.matrix.ui.messages.reply_InReplyToView_Night_2_en",0,], ["libraries.matrix.ui.messages.reply_InReplyToView_Day_3_en","libraries.matrix.ui.messages.reply_InReplyToView_Night_3_en",0,], -["libraries.matrix.ui.messages.reply_InReplyToView_Day_4_en","libraries.matrix.ui.messages.reply_InReplyToView_Night_4_en",20273,], +["libraries.matrix.ui.messages.reply_InReplyToView_Day_4_en","libraries.matrix.ui.messages.reply_InReplyToView_Night_4_en",20294,], ["libraries.matrix.ui.messages.reply_InReplyToView_Day_5_en","libraries.matrix.ui.messages.reply_InReplyToView_Night_5_en",0,], ["libraries.matrix.ui.messages.reply_InReplyToView_Day_6_en","libraries.matrix.ui.messages.reply_InReplyToView_Night_6_en",0,], ["libraries.matrix.ui.messages.reply_InReplyToView_Day_7_en","libraries.matrix.ui.messages.reply_InReplyToView_Night_7_en",0,], -["libraries.matrix.ui.messages.reply_InReplyToView_Day_8_en","libraries.matrix.ui.messages.reply_InReplyToView_Night_8_en",20273,], +["libraries.matrix.ui.messages.reply_InReplyToView_Day_8_en","libraries.matrix.ui.messages.reply_InReplyToView_Night_8_en",20294,], ["libraries.matrix.ui.messages.reply_InReplyToView_Day_9_en","libraries.matrix.ui.messages.reply_InReplyToView_Night_9_en",0,], -["features.call.impl.ui_IncomingCallScreen_Day_0_en","features.call.impl.ui_IncomingCallScreen_Night_0_en",20273,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_0_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_0_en",20273,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_10_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_10_en",20273,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_11_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_11_en",20273,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_12_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_12_en",20273,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_13_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_13_en",20273,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_1_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_1_en",20273,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_2_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_2_en",20273,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_3_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_3_en",20273,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_4_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_4_en",20273,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_5_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_5_en",20273,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_6_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_6_en",20273,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_7_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_7_en",20273,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_8_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_8_en",20273,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_9_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_9_en",20273,], +["features.call.impl.ui_IncomingCallScreen_Day_0_en","features.call.impl.ui_IncomingCallScreen_Night_0_en",20294,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_0_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_0_en",20294,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_10_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_10_en",20294,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_11_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_11_en",20294,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_12_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_12_en",20294,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_13_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_13_en",20294,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_1_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_1_en",20294,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_2_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_2_en",20294,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_3_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_3_en",20294,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_4_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_4_en",20294,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_5_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_5_en",20294,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_6_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_6_en",20294,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_7_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_7_en",20294,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_8_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_8_en",20294,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_9_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_9_en",20294,], ["features.networkmonitor.api.ui_Indicator_Day_0_en","features.networkmonitor.api.ui_Indicator_Night_0_en",0,], ["libraries.designsystem.atomic.molecules_InfoListItemMolecule_Day_0_en","libraries.designsystem.atomic.molecules_InfoListItemMolecule_Night_0_en",0,], ["libraries.designsystem.atomic.organisms_InfoListOrganism_Day_0_en","libraries.designsystem.atomic.organisms_InfoListOrganism_Night_0_en",0,], -["features.call.impl.ui_InvalidAudioDeviceDialog_Day_0_en","features.call.impl.ui_InvalidAudioDeviceDialog_Night_0_en",20273,], -["libraries.matrix.ui.components_InviteSenderView_Day_0_en","libraries.matrix.ui.components_InviteSenderView_Night_0_en",20273,], -["features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Day_0_en","features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Night_0_en",20273,], -["features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Day_1_en","features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Night_1_en",20273,], -["features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Day_2_en","features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Night_2_en",20273,], -["features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Day_3_en","features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Night_3_en",20273,], -["features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Day_4_en","features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Night_4_en",20273,], -["features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Day_5_en","features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Night_5_en",20273,], +["features.call.impl.ui_InvalidAudioDeviceDialog_Day_0_en","features.call.impl.ui_InvalidAudioDeviceDialog_Night_0_en",20294,], +["libraries.matrix.ui.components_InviteSenderView_Day_0_en","libraries.matrix.ui.components_InviteSenderView_Night_0_en",20294,], +["features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Day_0_en","features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Night_0_en",20294,], +["features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Day_1_en","features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Night_1_en",20294,], +["features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Day_2_en","features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Night_2_en",20294,], +["features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Day_3_en","features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Night_3_en",20294,], +["features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Day_4_en","features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Night_4_en",20294,], +["features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Day_5_en","features.createroom.impl.joinbyaddress_JoinRoomByAddressView_Night_5_en",20294,], ["features.joinroom.impl_JoinRoomView_Day_0_en","features.joinroom.impl_JoinRoomView_Night_0_en",0,], -["features.joinroom.impl_JoinRoomView_Day_10_en","features.joinroom.impl_JoinRoomView_Night_10_en",20273,], -["features.joinroom.impl_JoinRoomView_Day_11_en","features.joinroom.impl_JoinRoomView_Night_11_en",20273,], -["features.joinroom.impl_JoinRoomView_Day_12_en","features.joinroom.impl_JoinRoomView_Night_12_en",20273,], -["features.joinroom.impl_JoinRoomView_Day_13_en","features.joinroom.impl_JoinRoomView_Night_13_en",20273,], -["features.joinroom.impl_JoinRoomView_Day_14_en","features.joinroom.impl_JoinRoomView_Night_14_en",20273,], -["features.joinroom.impl_JoinRoomView_Day_15_en","features.joinroom.impl_JoinRoomView_Night_15_en",20273,], -["features.joinroom.impl_JoinRoomView_Day_16_en","features.joinroom.impl_JoinRoomView_Night_16_en",20273,], -["features.joinroom.impl_JoinRoomView_Day_1_en","features.joinroom.impl_JoinRoomView_Night_1_en",20273,], -["features.joinroom.impl_JoinRoomView_Day_2_en","features.joinroom.impl_JoinRoomView_Night_2_en",20273,], -["features.joinroom.impl_JoinRoomView_Day_3_en","features.joinroom.impl_JoinRoomView_Night_3_en",20273,], -["features.joinroom.impl_JoinRoomView_Day_4_en","features.joinroom.impl_JoinRoomView_Night_4_en",20273,], -["features.joinroom.impl_JoinRoomView_Day_5_en","features.joinroom.impl_JoinRoomView_Night_5_en",20273,], -["features.joinroom.impl_JoinRoomView_Day_6_en","features.joinroom.impl_JoinRoomView_Night_6_en",20273,], -["features.joinroom.impl_JoinRoomView_Day_7_en","features.joinroom.impl_JoinRoomView_Night_7_en",20273,], -["features.joinroom.impl_JoinRoomView_Day_8_en","features.joinroom.impl_JoinRoomView_Night_8_en",20273,], -["features.joinroom.impl_JoinRoomView_Day_9_en","features.joinroom.impl_JoinRoomView_Night_9_en",20273,], -["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_0_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_0_en",20273,], -["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_1_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_1_en",20273,], -["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_2_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_2_en",20273,], -["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_3_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_3_en",20273,], -["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_4_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_4_en",20273,], -["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_5_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_5_en",20273,], -["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_6_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_6_en",20273,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_0_en","features.knockrequests.impl.list_KnockRequestsListView_Night_0_en",20273,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_10_en","features.knockrequests.impl.list_KnockRequestsListView_Night_10_en",20273,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_1_en","features.knockrequests.impl.list_KnockRequestsListView_Night_1_en",20273,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_2_en","features.knockrequests.impl.list_KnockRequestsListView_Night_2_en",20273,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_3_en","features.knockrequests.impl.list_KnockRequestsListView_Night_3_en",20273,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_4_en","features.knockrequests.impl.list_KnockRequestsListView_Night_4_en",20273,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_5_en","features.knockrequests.impl.list_KnockRequestsListView_Night_5_en",20273,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_6_en","features.knockrequests.impl.list_KnockRequestsListView_Night_6_en",20273,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_7_en","features.knockrequests.impl.list_KnockRequestsListView_Night_7_en",20273,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_8_en","features.knockrequests.impl.list_KnockRequestsListView_Night_8_en",20273,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_9_en","features.knockrequests.impl.list_KnockRequestsListView_Night_9_en",20273,], +["features.joinroom.impl_JoinRoomView_Day_10_en","features.joinroom.impl_JoinRoomView_Night_10_en",20294,], +["features.joinroom.impl_JoinRoomView_Day_11_en","features.joinroom.impl_JoinRoomView_Night_11_en",20294,], +["features.joinroom.impl_JoinRoomView_Day_12_en","features.joinroom.impl_JoinRoomView_Night_12_en",20294,], +["features.joinroom.impl_JoinRoomView_Day_13_en","features.joinroom.impl_JoinRoomView_Night_13_en",20294,], +["features.joinroom.impl_JoinRoomView_Day_14_en","features.joinroom.impl_JoinRoomView_Night_14_en",20294,], +["features.joinroom.impl_JoinRoomView_Day_15_en","features.joinroom.impl_JoinRoomView_Night_15_en",20294,], +["features.joinroom.impl_JoinRoomView_Day_16_en","features.joinroom.impl_JoinRoomView_Night_16_en",20294,], +["features.joinroom.impl_JoinRoomView_Day_1_en","features.joinroom.impl_JoinRoomView_Night_1_en",20294,], +["features.joinroom.impl_JoinRoomView_Day_2_en","features.joinroom.impl_JoinRoomView_Night_2_en",20294,], +["features.joinroom.impl_JoinRoomView_Day_3_en","features.joinroom.impl_JoinRoomView_Night_3_en",20294,], +["features.joinroom.impl_JoinRoomView_Day_4_en","features.joinroom.impl_JoinRoomView_Night_4_en",20294,], +["features.joinroom.impl_JoinRoomView_Day_5_en","features.joinroom.impl_JoinRoomView_Night_5_en",20294,], +["features.joinroom.impl_JoinRoomView_Day_6_en","features.joinroom.impl_JoinRoomView_Night_6_en",20294,], +["features.joinroom.impl_JoinRoomView_Day_7_en","features.joinroom.impl_JoinRoomView_Night_7_en",20294,], +["features.joinroom.impl_JoinRoomView_Day_8_en","features.joinroom.impl_JoinRoomView_Night_8_en",20294,], +["features.joinroom.impl_JoinRoomView_Day_9_en","features.joinroom.impl_JoinRoomView_Night_9_en",20294,], +["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_0_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_0_en",20294,], +["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_1_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_1_en",20294,], +["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_2_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_2_en",20294,], +["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_3_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_3_en",20294,], +["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_4_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_4_en",20294,], +["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_5_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_5_en",20294,], +["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_6_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_6_en",20294,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_0_en","features.knockrequests.impl.list_KnockRequestsListView_Night_0_en",20294,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_10_en","features.knockrequests.impl.list_KnockRequestsListView_Night_10_en",20294,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_1_en","features.knockrequests.impl.list_KnockRequestsListView_Night_1_en",20294,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_2_en","features.knockrequests.impl.list_KnockRequestsListView_Night_2_en",20294,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_3_en","features.knockrequests.impl.list_KnockRequestsListView_Night_3_en",20294,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_4_en","features.knockrequests.impl.list_KnockRequestsListView_Night_4_en",20294,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_5_en","features.knockrequests.impl.list_KnockRequestsListView_Night_5_en",20294,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_6_en","features.knockrequests.impl.list_KnockRequestsListView_Night_6_en",20294,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_7_en","features.knockrequests.impl.list_KnockRequestsListView_Night_7_en",20294,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_8_en","features.knockrequests.impl.list_KnockRequestsListView_Night_8_en",20294,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_9_en","features.knockrequests.impl.list_KnockRequestsListView_Night_9_en",20294,], ["libraries.designsystem.components_LabelledCheckbox_Toggles_en","",0,], ["features.leaveroom.api_LeaveRoomView_Day_0_en","features.leaveroom.api_LeaveRoomView_Night_0_en",0,], -["features.leaveroom.api_LeaveRoomView_Day_1_en","features.leaveroom.api_LeaveRoomView_Night_1_en",20273,], -["features.leaveroom.api_LeaveRoomView_Day_2_en","features.leaveroom.api_LeaveRoomView_Night_2_en",20273,], -["features.leaveroom.api_LeaveRoomView_Day_3_en","features.leaveroom.api_LeaveRoomView_Night_3_en",20273,], -["features.leaveroom.api_LeaveRoomView_Day_4_en","features.leaveroom.api_LeaveRoomView_Night_4_en",20273,], -["features.leaveroom.api_LeaveRoomView_Day_5_en","features.leaveroom.api_LeaveRoomView_Night_5_en",20273,], -["features.leaveroom.api_LeaveRoomView_Day_6_en","features.leaveroom.api_LeaveRoomView_Night_6_en",20273,], +["features.leaveroom.api_LeaveRoomView_Day_1_en","features.leaveroom.api_LeaveRoomView_Night_1_en",20294,], +["features.leaveroom.api_LeaveRoomView_Day_2_en","features.leaveroom.api_LeaveRoomView_Night_2_en",20294,], +["features.leaveroom.api_LeaveRoomView_Day_3_en","features.leaveroom.api_LeaveRoomView_Night_3_en",20294,], +["features.leaveroom.api_LeaveRoomView_Day_4_en","features.leaveroom.api_LeaveRoomView_Night_4_en",20294,], +["features.leaveroom.api_LeaveRoomView_Day_5_en","features.leaveroom.api_LeaveRoomView_Night_5_en",20294,], +["features.leaveroom.api_LeaveRoomView_Day_6_en","features.leaveroom.api_LeaveRoomView_Night_6_en",20294,], ["libraries.designsystem.background_LightGradientBackground_Day_0_en","libraries.designsystem.background_LightGradientBackground_Night_0_en",0,], ["libraries.designsystem.theme.components_LinearProgressIndicator_Progress_Indicators_en","",0,], ["features.messages.impl.link_LinkView_Day_0_en","features.messages.impl.link_LinkView_Night_0_en",0,], -["features.messages.impl.link_LinkView_Day_1_en","features.messages.impl.link_LinkView_Night_1_en",20273,], +["features.messages.impl.link_LinkView_Day_1_en","features.messages.impl.link_LinkView_Night_1_en",20294,], ["libraries.designsystem.components.dialogs_ListDialogContent_Dialogs_en","",0,], ["libraries.designsystem.components.dialogs_ListDialog_Day_0_en","libraries.designsystem.components.dialogs_ListDialog_Night_0_en",0,], ["libraries.designsystem.theme.components_ListItemPrimaryActionWithIcon_List_item_-_Primary_action_&_Icon_List_items_en","",0,], @@ -593,31 +588,31 @@ export const screenshots = [ ["libraries.designsystem.theme.components_ListSupportingTextSmallPadding_List_supporting_text_-_small_padding_List_sections_en","",0,], ["libraries.textcomposer.components_LiveWaveformView_Day_0_en","libraries.textcomposer.components_LiveWaveformView_Night_0_en",0,], ["appnav.room.joined_LoadingRoomNodeView_Day_0_en","appnav.room.joined_LoadingRoomNodeView_Night_0_en",0,], -["appnav.room.joined_LoadingRoomNodeView_Day_1_en","appnav.room.joined_LoadingRoomNodeView_Night_1_en",20273,], -["features.lockscreen.impl.settings_LockScreenSettingsView_Day_0_en","features.lockscreen.impl.settings_LockScreenSettingsView_Night_0_en",20273,], -["features.lockscreen.impl.settings_LockScreenSettingsView_Day_1_en","features.lockscreen.impl.settings_LockScreenSettingsView_Night_1_en",20273,], -["features.lockscreen.impl.settings_LockScreenSettingsView_Day_2_en","features.lockscreen.impl.settings_LockScreenSettingsView_Night_2_en",20273,], +["appnav.room.joined_LoadingRoomNodeView_Day_1_en","appnav.room.joined_LoadingRoomNodeView_Night_1_en",20294,], +["features.lockscreen.impl.settings_LockScreenSettingsView_Day_0_en","features.lockscreen.impl.settings_LockScreenSettingsView_Night_0_en",20294,], +["features.lockscreen.impl.settings_LockScreenSettingsView_Day_1_en","features.lockscreen.impl.settings_LockScreenSettingsView_Night_1_en",20294,], +["features.lockscreen.impl.settings_LockScreenSettingsView_Day_2_en","features.lockscreen.impl.settings_LockScreenSettingsView_Night_2_en",20294,], ["appnav.loggedin_LoggedInView_Day_0_en","appnav.loggedin_LoggedInView_Night_0_en",0,], -["appnav.loggedin_LoggedInView_Day_1_en","appnav.loggedin_LoggedInView_Night_1_en",20273,], -["appnav.loggedin_LoggedInView_Day_2_en","appnav.loggedin_LoggedInView_Night_2_en",20273,], -["appnav.loggedin_LoggedInView_Day_3_en","appnav.loggedin_LoggedInView_Night_3_en",20273,], -["features.login.impl.screens.loginpassword_LoginPasswordView_Day_0_en","features.login.impl.screens.loginpassword_LoginPasswordView_Night_0_en",20273,], -["features.login.impl.screens.loginpassword_LoginPasswordView_Day_1_en","features.login.impl.screens.loginpassword_LoginPasswordView_Night_1_en",20273,], -["features.login.impl.screens.loginpassword_LoginPasswordView_Day_2_en","features.login.impl.screens.loginpassword_LoginPasswordView_Night_2_en",20273,], -["features.logout.impl_LogoutView_Day_0_en","features.logout.impl_LogoutView_Night_0_en",20273,], -["features.logout.impl_LogoutView_Day_10_en","features.logout.impl_LogoutView_Night_10_en",20273,], -["features.logout.impl_LogoutView_Day_11_en","features.logout.impl_LogoutView_Night_11_en",20273,], -["features.logout.impl_LogoutView_Day_1_en","features.logout.impl_LogoutView_Night_1_en",20273,], -["features.logout.impl_LogoutView_Day_2_en","features.logout.impl_LogoutView_Night_2_en",20273,], -["features.logout.impl_LogoutView_Day_3_en","features.logout.impl_LogoutView_Night_3_en",20273,], -["features.logout.impl_LogoutView_Day_4_en","features.logout.impl_LogoutView_Night_4_en",20273,], -["features.logout.impl_LogoutView_Day_5_en","features.logout.impl_LogoutView_Night_5_en",20273,], -["features.logout.impl_LogoutView_Day_6_en","features.logout.impl_LogoutView_Night_6_en",20273,], -["features.logout.impl_LogoutView_Day_7_en","features.logout.impl_LogoutView_Night_7_en",20273,], -["features.logout.impl_LogoutView_Day_8_en","features.logout.impl_LogoutView_Night_8_en",20273,], -["features.logout.impl_LogoutView_Day_9_en","features.logout.impl_LogoutView_Night_9_en",20273,], +["appnav.loggedin_LoggedInView_Day_1_en","appnav.loggedin_LoggedInView_Night_1_en",20294,], +["appnav.loggedin_LoggedInView_Day_2_en","appnav.loggedin_LoggedInView_Night_2_en",20294,], +["appnav.loggedin_LoggedInView_Day_3_en","appnav.loggedin_LoggedInView_Night_3_en",20294,], +["features.login.impl.screens.loginpassword_LoginPasswordView_Day_0_en","features.login.impl.screens.loginpassword_LoginPasswordView_Night_0_en",20294,], +["features.login.impl.screens.loginpassword_LoginPasswordView_Day_1_en","features.login.impl.screens.loginpassword_LoginPasswordView_Night_1_en",20294,], +["features.login.impl.screens.loginpassword_LoginPasswordView_Day_2_en","features.login.impl.screens.loginpassword_LoginPasswordView_Night_2_en",20294,], +["features.logout.impl_LogoutView_Day_0_en","features.logout.impl_LogoutView_Night_0_en",20294,], +["features.logout.impl_LogoutView_Day_10_en","features.logout.impl_LogoutView_Night_10_en",20294,], +["features.logout.impl_LogoutView_Day_11_en","features.logout.impl_LogoutView_Night_11_en",20294,], +["features.logout.impl_LogoutView_Day_1_en","features.logout.impl_LogoutView_Night_1_en",20294,], +["features.logout.impl_LogoutView_Day_2_en","features.logout.impl_LogoutView_Night_2_en",20294,], +["features.logout.impl_LogoutView_Day_3_en","features.logout.impl_LogoutView_Night_3_en",20294,], +["features.logout.impl_LogoutView_Day_4_en","features.logout.impl_LogoutView_Night_4_en",20294,], +["features.logout.impl_LogoutView_Day_5_en","features.logout.impl_LogoutView_Night_5_en",20294,], +["features.logout.impl_LogoutView_Day_6_en","features.logout.impl_LogoutView_Night_6_en",20294,], +["features.logout.impl_LogoutView_Day_7_en","features.logout.impl_LogoutView_Night_7_en",20294,], +["features.logout.impl_LogoutView_Day_8_en","features.logout.impl_LogoutView_Night_8_en",20294,], +["features.logout.impl_LogoutView_Day_9_en","features.logout.impl_LogoutView_Night_9_en",20294,], ["libraries.designsystem.components.button_MainActionButton_Buttons_en","",0,], -["libraries.textcomposer_MarkdownTextComposerEdit_Day_0_en","libraries.textcomposer_MarkdownTextComposerEdit_Night_0_en",20273,], +["libraries.textcomposer_MarkdownTextComposerEdit_Day_0_en","libraries.textcomposer_MarkdownTextComposerEdit_Night_0_en",20294,], ["libraries.textcomposer.components.markdown_MarkdownTextInput_Day_0_en","libraries.textcomposer.components.markdown_MarkdownTextInput_Night_0_en",0,], ["libraries.designsystem.atomic.atoms_MatrixBadgeAtomInfo_Day_0_en","libraries.designsystem.atomic.atoms_MatrixBadgeAtomInfo_Night_0_en",0,], ["libraries.designsystem.atomic.atoms_MatrixBadgeAtomNegative_Day_0_en","libraries.designsystem.atomic.atoms_MatrixBadgeAtomNegative_Night_0_en",0,], @@ -630,22 +625,22 @@ export const screenshots = [ ["libraries.matrix.ui.components_MatrixUserRow_Day_1_en","libraries.matrix.ui.components_MatrixUserRow_Night_1_en",0,], ["libraries.mediaviewer.impl.local.audio_MediaAudioView_Day_0_en","libraries.mediaviewer.impl.local.audio_MediaAudioView_Night_0_en",0,], ["libraries.mediaviewer.impl.local.audio_MediaAudioView_Day_1_en","libraries.mediaviewer.impl.local.audio_MediaAudioView_Night_1_en",0,], -["libraries.mediaviewer.impl.details_MediaDeleteConfirmationBottomSheet_Day_0_en","libraries.mediaviewer.impl.details_MediaDeleteConfirmationBottomSheet_Night_0_en",20273,], -["libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_0_en","libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Night_0_en",20273,], +["libraries.mediaviewer.impl.details_MediaDeleteConfirmationBottomSheet_Day_0_en","libraries.mediaviewer.impl.details_MediaDeleteConfirmationBottomSheet_Night_0_en",20294,], +["libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_0_en","libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Night_0_en",20294,], ["libraries.mediaviewer.impl.local.file_MediaFileView_Day_0_en","libraries.mediaviewer.impl.local.file_MediaFileView_Night_0_en",0,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_0_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_0_en",20273,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_10_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_10_en",20273,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_11_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_11_en",20273,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_12_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_12_en",20273,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_1_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_1_en",20273,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_2_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_2_en",20273,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_3_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_3_en",20273,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_4_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_4_en",20273,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_5_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_5_en",20273,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_6_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_6_en",20273,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_7_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_7_en",20273,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_8_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_8_en",20273,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_9_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_9_en",20273,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_0_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_0_en",20294,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_10_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_10_en",20294,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_11_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_11_en",20294,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_12_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_12_en",20294,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_1_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_1_en",20294,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_2_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_2_en",20294,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_3_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_3_en",20294,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_4_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_4_en",20294,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_5_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_5_en",20294,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_6_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_6_en",20294,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_7_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_7_en",20294,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_8_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_8_en",20294,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_9_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_9_en",20294,], ["libraries.mediaviewer.impl.local.image_MediaImageView_Day_0_en","libraries.mediaviewer.impl.local.image_MediaImageView_Night_0_en",0,], ["libraries.mediaviewer.impl.local.player_MediaPlayerControllerView_Day_0_en","libraries.mediaviewer.impl.local.player_MediaPlayerControllerView_Night_0_en",0,], ["libraries.mediaviewer.impl.local.player_MediaPlayerControllerView_Day_1_en","libraries.mediaviewer.impl.local.player_MediaPlayerControllerView_Night_1_en",0,], @@ -653,14 +648,14 @@ export const screenshots = [ ["libraries.mediaviewer.impl.local.video_MediaVideoView_Day_0_en","libraries.mediaviewer.impl.local.video_MediaVideoView_Night_0_en",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_0_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_10_en","",0,], -["libraries.mediaviewer.impl.viewer_MediaViewerView_11_en","",20273,], -["libraries.mediaviewer.impl.viewer_MediaViewerView_12_en","",20273,], +["libraries.mediaviewer.impl.viewer_MediaViewerView_11_en","",20294,], +["libraries.mediaviewer.impl.viewer_MediaViewerView_12_en","",20294,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_13_en","",0,], -["libraries.mediaviewer.impl.viewer_MediaViewerView_14_en","",20273,], +["libraries.mediaviewer.impl.viewer_MediaViewerView_14_en","",20294,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_15_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_16_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_1_en","",0,], -["libraries.mediaviewer.impl.viewer_MediaViewerView_2_en","",20273,], +["libraries.mediaviewer.impl.viewer_MediaViewerView_2_en","",20294,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_3_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_4_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_5_en","",0,], @@ -669,10 +664,11 @@ export const screenshots = [ ["libraries.mediaviewer.impl.viewer_MediaViewerView_8_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_9_en","",0,], ["libraries.designsystem.theme.components_MediumTopAppBar_App_Bars_en","",0,], +["libraries.textcomposer.mentions_MentionSpanThemeInTimeline_Day_0_en","libraries.textcomposer.mentions_MentionSpanThemeInTimeline_Night_0_en",0,], ["libraries.textcomposer.mentions_MentionSpanTheme_Day_0_en","libraries.textcomposer.mentions_MentionSpanTheme_Night_0_en",0,], ["libraries.designsystem.theme.components.previews_Menu_Menus_en","",0,], ["features.messages.impl.messagecomposer_MessageComposerViewVoice_Day_0_en","features.messages.impl.messagecomposer_MessageComposerViewVoice_Night_0_en",0,], -["features.messages.impl.messagecomposer_MessageComposerView_Day_0_en","features.messages.impl.messagecomposer_MessageComposerView_Night_0_en",20273,], +["features.messages.impl.messagecomposer_MessageComposerView_Day_0_en","features.messages.impl.messagecomposer_MessageComposerView_Night_0_en",20294,], ["features.messages.impl.timeline.components_MessageEventBubble_Day_0_en","features.messages.impl.timeline.components_MessageEventBubble_Night_0_en",0,], ["features.messages.impl.timeline.components_MessageEventBubble_Day_1_en","features.messages.impl.timeline.components_MessageEventBubble_Night_1_en",0,], ["features.messages.impl.timeline.components_MessageEventBubble_Day_2_en","features.messages.impl.timeline.components_MessageEventBubble_Night_2_en",0,], @@ -681,7 +677,7 @@ export const screenshots = [ ["features.messages.impl.timeline.components_MessageEventBubble_Day_5_en","features.messages.impl.timeline.components_MessageEventBubble_Night_5_en",0,], ["features.messages.impl.timeline.components_MessageEventBubble_Day_6_en","features.messages.impl.timeline.components_MessageEventBubble_Night_6_en",0,], ["features.messages.impl.timeline.components_MessageEventBubble_Day_7_en","features.messages.impl.timeline.components_MessageEventBubble_Night_7_en",0,], -["features.messages.impl.timeline.components_MessageShieldView_Day_0_en","features.messages.impl.timeline.components_MessageShieldView_Night_0_en",20273,], +["features.messages.impl.timeline.components_MessageShieldView_Day_0_en","features.messages.impl.timeline.components_MessageShieldView_Night_0_en",20294,], ["features.messages.impl.timeline.components_MessageStateEventContainer_Day_0_en","features.messages.impl.timeline.components_MessageStateEventContainer_Night_0_en",0,], ["features.messages.impl.timeline.components_MessagesReactionButtonAdd_Day_0_en","features.messages.impl.timeline.components_MessagesReactionButtonAdd_Night_0_en",0,], ["features.messages.impl.timeline.components_MessagesReactionButtonExtra_Day_0_en","features.messages.impl.timeline.components_MessagesReactionButtonExtra_Night_0_en",0,], @@ -689,26 +685,26 @@ export const screenshots = [ ["features.messages.impl.timeline.components_MessagesReactionButton_Day_1_en","features.messages.impl.timeline.components_MessagesReactionButton_Night_1_en",0,], ["features.messages.impl.timeline.components_MessagesReactionButton_Day_2_en","features.messages.impl.timeline.components_MessagesReactionButton_Night_2_en",0,], ["features.messages.impl.timeline.components_MessagesReactionButton_Day_3_en","features.messages.impl.timeline.components_MessagesReactionButton_Night_3_en",0,], -["features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_0_en","features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_0_en",20273,], -["features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_1_en","features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_1_en",20273,], -["features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_2_en","features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_2_en",20273,], -["features.messages.impl_MessagesView_Day_0_en","features.messages.impl_MessagesView_Night_0_en",20273,], -["features.messages.impl_MessagesView_Day_10_en","features.messages.impl_MessagesView_Night_10_en",20273,], -["features.messages.impl_MessagesView_Day_11_en","features.messages.impl_MessagesView_Night_11_en",20273,], -["features.messages.impl_MessagesView_Day_12_en","features.messages.impl_MessagesView_Night_12_en",20273,], -["features.messages.impl_MessagesView_Day_13_en","features.messages.impl_MessagesView_Night_13_en",20273,], -["features.messages.impl_MessagesView_Day_14_en","features.messages.impl_MessagesView_Night_14_en",20273,], -["features.messages.impl_MessagesView_Day_1_en","features.messages.impl_MessagesView_Night_1_en",20273,], -["features.messages.impl_MessagesView_Day_2_en","features.messages.impl_MessagesView_Night_2_en",20273,], -["features.messages.impl_MessagesView_Day_3_en","features.messages.impl_MessagesView_Night_3_en",20273,], -["features.messages.impl_MessagesView_Day_4_en","features.messages.impl_MessagesView_Night_4_en",20273,], -["features.messages.impl_MessagesView_Day_5_en","features.messages.impl_MessagesView_Night_5_en",20273,], -["features.messages.impl_MessagesView_Day_6_en","features.messages.impl_MessagesView_Night_6_en",20273,], -["features.messages.impl_MessagesView_Day_7_en","features.messages.impl_MessagesView_Night_7_en",20273,], -["features.messages.impl_MessagesView_Day_8_en","features.messages.impl_MessagesView_Night_8_en",20273,], -["features.messages.impl_MessagesView_Day_9_en","features.messages.impl_MessagesView_Night_9_en",20273,], +["features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_0_en","features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_0_en",20294,], +["features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_1_en","features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_1_en",20294,], +["features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_2_en","features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_2_en",20294,], +["features.messages.impl_MessagesView_Day_0_en","features.messages.impl_MessagesView_Night_0_en",20294,], +["features.messages.impl_MessagesView_Day_10_en","features.messages.impl_MessagesView_Night_10_en",20294,], +["features.messages.impl_MessagesView_Day_11_en","features.messages.impl_MessagesView_Night_11_en",20294,], +["features.messages.impl_MessagesView_Day_12_en","features.messages.impl_MessagesView_Night_12_en",20294,], +["features.messages.impl_MessagesView_Day_13_en","features.messages.impl_MessagesView_Night_13_en",20294,], +["features.messages.impl_MessagesView_Day_14_en","features.messages.impl_MessagesView_Night_14_en",20294,], +["features.messages.impl_MessagesView_Day_1_en","features.messages.impl_MessagesView_Night_1_en",20294,], +["features.messages.impl_MessagesView_Day_2_en","features.messages.impl_MessagesView_Night_2_en",20294,], +["features.messages.impl_MessagesView_Day_3_en","features.messages.impl_MessagesView_Night_3_en",20294,], +["features.messages.impl_MessagesView_Day_4_en","features.messages.impl_MessagesView_Night_4_en",20294,], +["features.messages.impl_MessagesView_Day_5_en","features.messages.impl_MessagesView_Night_5_en",20294,], +["features.messages.impl_MessagesView_Day_6_en","features.messages.impl_MessagesView_Night_6_en",20294,], +["features.messages.impl_MessagesView_Day_7_en","features.messages.impl_MessagesView_Night_7_en",20294,], +["features.messages.impl_MessagesView_Day_8_en","features.messages.impl_MessagesView_Night_8_en",20294,], +["features.messages.impl_MessagesView_Day_9_en","features.messages.impl_MessagesView_Night_9_en",20294,], ["features.migration.impl_MigrationView_Day_0_en","features.migration.impl_MigrationView_Night_0_en",0,], -["features.migration.impl_MigrationView_Day_1_en","features.migration.impl_MigrationView_Night_1_en",20273,], +["features.migration.impl_MigrationView_Day_1_en","features.migration.impl_MigrationView_Night_1_en",20294,], ["libraries.designsystem.theme.components_ModalBottomSheetDark_Bottom_Sheets_en","",0,], ["libraries.designsystem.theme.components_ModalBottomSheetLight_Bottom_Sheets_en","",0,], ["appicon.element_MonochromeIcon_en","",0,], @@ -718,115 +714,107 @@ export const screenshots = [ ["libraries.designsystem.components.list_MutipleSelectionListItemSelected_Multiple_selection_List_item_-_selection_in_supporting_text_List_items_en","",0,], ["libraries.designsystem.components.list_MutipleSelectionListItem_Multiple_selection_List_item_-_no_selection_List_items_en","",0,], ["libraries.designsystem.theme.components_NavigationBar_App_Bars_en","",0,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_0_en","features.preferences.impl.notifications_NotificationSettingsView_Night_0_en",20273,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_10_en","features.preferences.impl.notifications_NotificationSettingsView_Night_10_en",20273,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_11_en","features.preferences.impl.notifications_NotificationSettingsView_Night_11_en",20273,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_12_en","features.preferences.impl.notifications_NotificationSettingsView_Night_12_en",20273,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_13_en","features.preferences.impl.notifications_NotificationSettingsView_Night_13_en",20273,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_1_en","features.preferences.impl.notifications_NotificationSettingsView_Night_1_en",20273,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_2_en","features.preferences.impl.notifications_NotificationSettingsView_Night_2_en",20273,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_3_en","features.preferences.impl.notifications_NotificationSettingsView_Night_3_en",20273,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_4_en","features.preferences.impl.notifications_NotificationSettingsView_Night_4_en",20273,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_5_en","features.preferences.impl.notifications_NotificationSettingsView_Night_5_en",20273,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_6_en","features.preferences.impl.notifications_NotificationSettingsView_Night_6_en",20273,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_7_en","features.preferences.impl.notifications_NotificationSettingsView_Night_7_en",20273,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_8_en","features.preferences.impl.notifications_NotificationSettingsView_Night_8_en",20273,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_9_en","features.preferences.impl.notifications_NotificationSettingsView_Night_9_en",20273,], -["features.ftue.impl.notifications_NotificationsOptInView_Day_0_en","features.ftue.impl.notifications_NotificationsOptInView_Night_0_en",20273,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_0_en","features.preferences.impl.notifications_NotificationSettingsView_Night_0_en",20294,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_10_en","features.preferences.impl.notifications_NotificationSettingsView_Night_10_en",20294,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_11_en","features.preferences.impl.notifications_NotificationSettingsView_Night_11_en",20294,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_12_en","features.preferences.impl.notifications_NotificationSettingsView_Night_12_en",20294,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_13_en","features.preferences.impl.notifications_NotificationSettingsView_Night_13_en",20294,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_1_en","features.preferences.impl.notifications_NotificationSettingsView_Night_1_en",20294,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_2_en","features.preferences.impl.notifications_NotificationSettingsView_Night_2_en",20294,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_3_en","features.preferences.impl.notifications_NotificationSettingsView_Night_3_en",20294,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_4_en","features.preferences.impl.notifications_NotificationSettingsView_Night_4_en",20294,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_5_en","features.preferences.impl.notifications_NotificationSettingsView_Night_5_en",20294,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_6_en","features.preferences.impl.notifications_NotificationSettingsView_Night_6_en",20294,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_7_en","features.preferences.impl.notifications_NotificationSettingsView_Night_7_en",20294,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_8_en","features.preferences.impl.notifications_NotificationSettingsView_Night_8_en",20294,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_9_en","features.preferences.impl.notifications_NotificationSettingsView_Night_9_en",20294,], +["features.ftue.impl.notifications_NotificationsOptInView_Day_0_en","features.ftue.impl.notifications_NotificationsOptInView_Night_0_en",20294,], ["libraries.designsystem.atomic.pages_OnBoardingPage_Day_0_en","libraries.designsystem.atomic.pages_OnBoardingPage_Night_0_en",0,], -["features.login.impl.screens.onboarding_OnBoardingView_Day_0_en","features.login.impl.screens.onboarding_OnBoardingView_Night_0_en",20273,], -["features.login.impl.screens.onboarding_OnBoardingView_Day_1_en","features.login.impl.screens.onboarding_OnBoardingView_Night_1_en",20273,], -["features.login.impl.screens.onboarding_OnBoardingView_Day_2_en","features.login.impl.screens.onboarding_OnBoardingView_Night_2_en",20273,], -["features.login.impl.screens.onboarding_OnBoardingView_Day_3_en","features.login.impl.screens.onboarding_OnBoardingView_Night_3_en",20273,], -["features.login.impl.screens.onboarding_OnBoardingView_Day_4_en","features.login.impl.screens.onboarding_OnBoardingView_Night_4_en",20273,], -["features.login.impl.screens.onboarding_OnBoardingView_Day_5_en","features.login.impl.screens.onboarding_OnBoardingView_Night_5_en",20273,], +["features.login.impl.screens.onboarding_OnBoardingView_Day_0_en","features.login.impl.screens.onboarding_OnBoardingView_Night_0_en",20294,], +["features.login.impl.screens.onboarding_OnBoardingView_Day_1_en","features.login.impl.screens.onboarding_OnBoardingView_Night_1_en",20294,], +["features.login.impl.screens.onboarding_OnBoardingView_Day_2_en","features.login.impl.screens.onboarding_OnBoardingView_Night_2_en",20294,], +["features.login.impl.screens.onboarding_OnBoardingView_Day_3_en","features.login.impl.screens.onboarding_OnBoardingView_Night_3_en",20294,], +["features.login.impl.screens.onboarding_OnBoardingView_Day_4_en","features.login.impl.screens.onboarding_OnBoardingView_Night_4_en",20294,], +["features.login.impl.screens.onboarding_OnBoardingView_Day_5_en","features.login.impl.screens.onboarding_OnBoardingView_Night_5_en",20294,], ["libraries.designsystem.background_OnboardingBackground_Day_0_en","libraries.designsystem.background_OnboardingBackground_Night_0_en",0,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_0_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_0_en",20273,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_10_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_10_en",20273,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_11_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_11_en",20273,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_0_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_0_en",20294,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_10_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_10_en",20294,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_11_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_11_en",20294,], ["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_12_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_12_en",0,], ["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_13_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_13_en",0,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_1_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_1_en",20273,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_2_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_2_en",20273,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_3_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_3_en",20273,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_4_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_4_en",20273,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_5_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_5_en",20273,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_6_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_6_en",20273,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_7_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_7_en",20273,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_8_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_8_en",20273,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_9_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_9_en",20273,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_1_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_1_en",20294,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_2_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_2_en",20294,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_3_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_3_en",20294,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_4_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_4_en",20294,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_5_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_5_en",20294,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_6_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_6_en",20294,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_7_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_7_en",20294,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_8_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_8_en",20294,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_9_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_9_en",20294,], ["libraries.designsystem.theme.components_OutlinedButtonLargeLowPadding_Buttons_en","",0,], ["libraries.designsystem.theme.components_OutlinedButtonLarge_Buttons_en","",0,], ["libraries.designsystem.theme.components_OutlinedButtonMediumLowPadding_Buttons_en","",0,], ["libraries.designsystem.theme.components_OutlinedButtonMedium_Buttons_en","",0,], ["libraries.designsystem.theme.components_OutlinedButtonSmall_Buttons_en","",0,], -["libraries.designsystem.components_PageTitleWithIconFull_Day_0_en","libraries.designsystem.components_PageTitleWithIconFull_Night_0_en",0,], -["libraries.designsystem.components_PageTitleWithIconFull_Day_1_en","libraries.designsystem.components_PageTitleWithIconFull_Night_1_en",0,], -["libraries.designsystem.components_PageTitleWithIconFull_Day_2_en","libraries.designsystem.components_PageTitleWithIconFull_Night_2_en",0,], -["libraries.designsystem.components_PageTitleWithIconFull_Day_3_en","libraries.designsystem.components_PageTitleWithIconFull_Night_3_en",0,], -["libraries.designsystem.components_PageTitleWithIconFull_Day_4_en","libraries.designsystem.components_PageTitleWithIconFull_Night_4_en",0,], -["libraries.designsystem.components_PageTitleWithIconFull_Day_5_en","libraries.designsystem.components_PageTitleWithIconFull_Night_5_en",0,], -["libraries.designsystem.components_PageTitleWithIconFull_Day_6_en","libraries.designsystem.components_PageTitleWithIconFull_Night_6_en",0,], -["libraries.designsystem.components_PageTitleWithIconMinimal_Day_0_en","libraries.designsystem.components_PageTitleWithIconMinimal_Night_0_en",0,], -["libraries.mediaviewer.impl.local.pdf_PdfPagesErrorView_Day_0_en","libraries.mediaviewer.impl.local.pdf_PdfPagesErrorView_Night_0_en",20273,], -["features.roomdetails.impl.rolesandpermissions.changeroles_PendingMemberRowWithLongName_Day_0_en","features.roomdetails.impl.rolesandpermissions.changeroles_PendingMemberRowWithLongName_Night_0_en",20273,], -["libraries.permissions.api_PermissionsView_Day_0_en","libraries.permissions.api_PermissionsView_Night_0_en",20273,], -["libraries.permissions.api_PermissionsView_Day_1_en","libraries.permissions.api_PermissionsView_Night_1_en",20273,], -["libraries.permissions.api_PermissionsView_Day_2_en","libraries.permissions.api_PermissionsView_Night_2_en",20273,], -["libraries.permissions.api_PermissionsView_Day_3_en","libraries.permissions.api_PermissionsView_Night_3_en",20273,], +["libraries.mediaviewer.impl.local.pdf_PdfPagesErrorView_Day_0_en","libraries.mediaviewer.impl.local.pdf_PdfPagesErrorView_Night_0_en",20294,], +["features.roomdetails.impl.rolesandpermissions.changeroles_PendingMemberRowWithLongName_Day_0_en","features.roomdetails.impl.rolesandpermissions.changeroles_PendingMemberRowWithLongName_Night_0_en",20294,], +["libraries.permissions.api_PermissionsView_Day_0_en","libraries.permissions.api_PermissionsView_Night_0_en",20294,], +["libraries.permissions.api_PermissionsView_Day_1_en","libraries.permissions.api_PermissionsView_Night_1_en",20294,], +["libraries.permissions.api_PermissionsView_Day_2_en","libraries.permissions.api_PermissionsView_Night_2_en",20294,], +["libraries.permissions.api_PermissionsView_Day_3_en","libraries.permissions.api_PermissionsView_Night_3_en",20294,], ["features.lockscreen.impl.components_PinEntryTextField_Day_0_en","features.lockscreen.impl.components_PinEntryTextField_Night_0_en",0,], ["libraries.designsystem.components_PinIcon_Day_0_en","libraries.designsystem.components_PinIcon_Night_0_en",0,], ["features.lockscreen.impl.unlock.keypad_PinKeypad_Day_0_en","features.lockscreen.impl.unlock.keypad_PinKeypad_Night_0_en",0,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_0_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_0_en",20273,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_1_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_1_en",20273,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_2_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_2_en",20273,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_3_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_3_en",20273,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_4_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_4_en",20273,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_5_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_5_en",20273,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_6_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_6_en",20273,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_7_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_7_en",20273,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_0_en","features.lockscreen.impl.unlock_PinUnlockView_Night_0_en",20273,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_1_en","features.lockscreen.impl.unlock_PinUnlockView_Night_1_en",20273,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_2_en","features.lockscreen.impl.unlock_PinUnlockView_Night_2_en",20273,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_3_en","features.lockscreen.impl.unlock_PinUnlockView_Night_3_en",20273,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_4_en","features.lockscreen.impl.unlock_PinUnlockView_Night_4_en",20273,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_5_en","features.lockscreen.impl.unlock_PinUnlockView_Night_5_en",20273,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_6_en","features.lockscreen.impl.unlock_PinUnlockView_Night_6_en",20273,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_7_en","features.lockscreen.impl.unlock_PinUnlockView_Night_7_en",20273,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_0_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_0_en",20294,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_1_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_1_en",20294,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_2_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_2_en",20294,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_3_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_3_en",20294,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_4_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_4_en",20294,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_5_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_5_en",20294,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_6_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_6_en",20294,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_7_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_7_en",20294,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_0_en","features.lockscreen.impl.unlock_PinUnlockView_Night_0_en",20294,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_1_en","features.lockscreen.impl.unlock_PinUnlockView_Night_1_en",20294,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_2_en","features.lockscreen.impl.unlock_PinUnlockView_Night_2_en",20294,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_3_en","features.lockscreen.impl.unlock_PinUnlockView_Night_3_en",20294,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_4_en","features.lockscreen.impl.unlock_PinUnlockView_Night_4_en",20294,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_5_en","features.lockscreen.impl.unlock_PinUnlockView_Night_5_en",20294,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_6_en","features.lockscreen.impl.unlock_PinUnlockView_Night_6_en",20294,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_7_en","features.lockscreen.impl.unlock_PinUnlockView_Night_7_en",20294,], ["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_0_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_0_en",0,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_10_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_10_en",20273,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_1_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_1_en",20273,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_2_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_2_en",20273,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_3_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_3_en",20273,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_4_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_4_en",20273,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_5_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_5_en",20273,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_6_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_6_en",20273,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_7_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_7_en",20273,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_8_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_8_en",20273,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_9_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_9_en",20273,], -["features.messages.impl.pinned.list_PinnedMessagesListView_Day_0_en","features.messages.impl.pinned.list_PinnedMessagesListView_Night_0_en",20273,], -["features.messages.impl.pinned.list_PinnedMessagesListView_Day_1_en","features.messages.impl.pinned.list_PinnedMessagesListView_Night_1_en",20273,], -["features.messages.impl.pinned.list_PinnedMessagesListView_Day_2_en","features.messages.impl.pinned.list_PinnedMessagesListView_Night_2_en",20273,], -["features.messages.impl.pinned.list_PinnedMessagesListView_Day_3_en","features.messages.impl.pinned.list_PinnedMessagesListView_Night_3_en",20273,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_10_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_10_en",20294,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_1_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_1_en",20294,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_2_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_2_en",20294,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_3_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_3_en",20294,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_4_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_4_en",20294,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_5_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_5_en",20294,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_6_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_6_en",20294,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_7_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_7_en",20294,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_8_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_8_en",20294,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_9_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_9_en",20294,], +["features.messages.impl.pinned.list_PinnedMessagesListView_Day_0_en","features.messages.impl.pinned.list_PinnedMessagesListView_Night_0_en",20294,], +["features.messages.impl.pinned.list_PinnedMessagesListView_Day_1_en","features.messages.impl.pinned.list_PinnedMessagesListView_Night_1_en",20294,], +["features.messages.impl.pinned.list_PinnedMessagesListView_Day_2_en","features.messages.impl.pinned.list_PinnedMessagesListView_Night_2_en",20294,], +["features.messages.impl.pinned.list_PinnedMessagesListView_Day_3_en","features.messages.impl.pinned.list_PinnedMessagesListView_Night_3_en",20294,], ["libraries.designsystem.atomic.atoms_PlaceholderAtom_Day_0_en","libraries.designsystem.atomic.atoms_PlaceholderAtom_Night_0_en",0,], -["features.poll.api.pollcontent_PollAnswerViewDisclosedNotSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewDisclosedNotSelected_Night_0_en",20273,], -["features.poll.api.pollcontent_PollAnswerViewDisclosedSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewDisclosedSelected_Night_0_en",20273,], -["features.poll.api.pollcontent_PollAnswerViewEndedSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewEndedSelected_Night_0_en",20273,], -["features.poll.api.pollcontent_PollAnswerViewEndedWinnerNotSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewEndedWinnerNotSelected_Night_0_en",20273,], -["features.poll.api.pollcontent_PollAnswerViewEndedWinnerSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewEndedWinnerSelected_Night_0_en",20273,], +["features.poll.api.pollcontent_PollAnswerViewDisclosedNotSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewDisclosedNotSelected_Night_0_en",20294,], +["features.poll.api.pollcontent_PollAnswerViewDisclosedSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewDisclosedSelected_Night_0_en",20294,], +["features.poll.api.pollcontent_PollAnswerViewEndedSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewEndedSelected_Night_0_en",20294,], +["features.poll.api.pollcontent_PollAnswerViewEndedWinnerNotSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewEndedWinnerNotSelected_Night_0_en",20294,], +["features.poll.api.pollcontent_PollAnswerViewEndedWinnerSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewEndedWinnerSelected_Night_0_en",20294,], ["features.poll.api.pollcontent_PollAnswerViewUndisclosedNotSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewUndisclosedNotSelected_Night_0_en",0,], ["features.poll.api.pollcontent_PollAnswerViewUndisclosedSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewUndisclosedSelected_Night_0_en",0,], -["features.poll.api.pollcontent_PollContentViewCreatorEditable_Day_0_en","features.poll.api.pollcontent_PollContentViewCreatorEditable_Night_0_en",20273,], -["features.poll.api.pollcontent_PollContentViewCreatorEnded_Day_0_en","features.poll.api.pollcontent_PollContentViewCreatorEnded_Night_0_en",20273,], -["features.poll.api.pollcontent_PollContentViewCreator_Day_0_en","features.poll.api.pollcontent_PollContentViewCreator_Night_0_en",20273,], -["features.poll.api.pollcontent_PollContentViewDisclosed_Day_0_en","features.poll.api.pollcontent_PollContentViewDisclosed_Night_0_en",20273,], -["features.poll.api.pollcontent_PollContentViewEnded_Day_0_en","features.poll.api.pollcontent_PollContentViewEnded_Night_0_en",20273,], -["features.poll.api.pollcontent_PollContentViewUndisclosed_Day_0_en","features.poll.api.pollcontent_PollContentViewUndisclosed_Night_0_en",20273,], -["features.poll.impl.history_PollHistoryView_Day_0_en","features.poll.impl.history_PollHistoryView_Night_0_en",20273,], -["features.poll.impl.history_PollHistoryView_Day_1_en","features.poll.impl.history_PollHistoryView_Night_1_en",20273,], -["features.poll.impl.history_PollHistoryView_Day_2_en","features.poll.impl.history_PollHistoryView_Night_2_en",20273,], -["features.poll.impl.history_PollHistoryView_Day_3_en","features.poll.impl.history_PollHistoryView_Night_3_en",20273,], -["features.poll.impl.history_PollHistoryView_Day_4_en","features.poll.impl.history_PollHistoryView_Night_4_en",20273,], +["features.poll.api.pollcontent_PollContentViewCreatorEditable_Day_0_en","features.poll.api.pollcontent_PollContentViewCreatorEditable_Night_0_en",20294,], +["features.poll.api.pollcontent_PollContentViewCreatorEnded_Day_0_en","features.poll.api.pollcontent_PollContentViewCreatorEnded_Night_0_en",20294,], +["features.poll.api.pollcontent_PollContentViewCreator_Day_0_en","features.poll.api.pollcontent_PollContentViewCreator_Night_0_en",20294,], +["features.poll.api.pollcontent_PollContentViewDisclosed_Day_0_en","features.poll.api.pollcontent_PollContentViewDisclosed_Night_0_en",20294,], +["features.poll.api.pollcontent_PollContentViewEnded_Day_0_en","features.poll.api.pollcontent_PollContentViewEnded_Night_0_en",20294,], +["features.poll.api.pollcontent_PollContentViewUndisclosed_Day_0_en","features.poll.api.pollcontent_PollContentViewUndisclosed_Night_0_en",20294,], +["features.poll.impl.history_PollHistoryView_Day_0_en","features.poll.impl.history_PollHistoryView_Night_0_en",20294,], +["features.poll.impl.history_PollHistoryView_Day_1_en","features.poll.impl.history_PollHistoryView_Night_1_en",20294,], +["features.poll.impl.history_PollHistoryView_Day_2_en","features.poll.impl.history_PollHistoryView_Night_2_en",20294,], +["features.poll.impl.history_PollHistoryView_Day_3_en","features.poll.impl.history_PollHistoryView_Night_3_en",20294,], +["features.poll.impl.history_PollHistoryView_Day_4_en","features.poll.impl.history_PollHistoryView_Night_4_en",20294,], ["features.poll.api.pollcontent_PollTitleView_Day_0_en","features.poll.api.pollcontent_PollTitleView_Night_0_en",0,], ["libraries.designsystem.components.preferences_PreferenceCategory_Preferences_en","",0,], ["libraries.designsystem.components.preferences_PreferenceCheckbox_Preferences_en","",0,], @@ -840,206 +828,206 @@ export const screenshots = [ ["libraries.designsystem.components.preferences_PreferenceRow_Preferences_en","",0,], ["libraries.designsystem.components.preferences_PreferenceSlide_Preferences_en","",0,], ["libraries.designsystem.components.preferences_PreferenceSwitch_Preferences_en","",0,], -["features.preferences.impl.root_PreferencesRootViewDark_0_en","",20273,], -["features.preferences.impl.root_PreferencesRootViewDark_1_en","",20273,], -["features.preferences.impl.root_PreferencesRootViewLight_0_en","",20273,], -["features.preferences.impl.root_PreferencesRootViewLight_1_en","",20273,], +["features.preferences.impl.root_PreferencesRootViewDark_0_en","",20294,], +["features.preferences.impl.root_PreferencesRootViewDark_1_en","",20294,], +["features.preferences.impl.root_PreferencesRootViewLight_0_en","",20294,], +["features.preferences.impl.root_PreferencesRootViewLight_1_en","",20294,], ["features.messages.impl.timeline.components.event_ProgressButton_Day_0_en","features.messages.impl.timeline.components.event_ProgressButton_Night_0_en",0,], -["libraries.designsystem.components_ProgressDialogContent_Dialogs_en","",20273,], -["libraries.designsystem.components_ProgressDialog_Day_0_en","libraries.designsystem.components_ProgressDialog_Night_0_en",20273,], -["features.messages.impl.timeline.protection_ProtectedView_Day_0_en","features.messages.impl.timeline.protection_ProtectedView_Night_0_en",20273,], -["features.messages.impl.timeline.protection_ProtectedView_Day_1_en","features.messages.impl.timeline.protection_ProtectedView_Night_1_en",20273,], -["features.messages.impl.timeline.protection_ProtectedView_Day_2_en","features.messages.impl.timeline.protection_ProtectedView_Night_2_en",20273,], -["features.messages.impl.timeline.protection_ProtectedView_Day_3_en","features.messages.impl.timeline.protection_ProtectedView_Night_3_en",20273,], -["libraries.troubleshoot.impl.history_PushHistoryView_Day_0_en","libraries.troubleshoot.impl.history_PushHistoryView_Night_0_en",20273,], -["libraries.troubleshoot.impl.history_PushHistoryView_Day_1_en","libraries.troubleshoot.impl.history_PushHistoryView_Night_1_en",20273,], -["libraries.troubleshoot.impl.history_PushHistoryView_Day_2_en","libraries.troubleshoot.impl.history_PushHistoryView_Night_2_en",20273,], -["features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_0_en","features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Night_0_en",20273,], -["features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_1_en","features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Night_1_en",20273,], -["features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_2_en","features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Night_2_en",20273,], -["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_0_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_0_en",20273,], -["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_1_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_1_en",20273,], -["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_2_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_2_en",20273,], -["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_3_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_3_en",20273,], -["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_4_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_4_en",20273,], -["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_5_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_5_en",20273,], -["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_6_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_6_en",20273,], -["features.login.impl.screens.qrcode.intro_QrCodeIntroView_Day_0_en","features.login.impl.screens.qrcode.intro_QrCodeIntroView_Night_0_en",20273,], -["features.login.impl.screens.qrcode.intro_QrCodeIntroView_Day_1_en","features.login.impl.screens.qrcode.intro_QrCodeIntroView_Night_1_en",20273,], -["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_0_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_0_en",20273,], -["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_1_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_1_en",20273,], -["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_2_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_2_en",20273,], -["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_3_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_3_en",20273,], -["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_4_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_4_en",20273,], +["libraries.designsystem.components_ProgressDialogContent_Dialogs_en","",20294,], +["libraries.designsystem.components_ProgressDialog_Day_0_en","libraries.designsystem.components_ProgressDialog_Night_0_en",20294,], +["features.messages.impl.timeline.protection_ProtectedView_Day_0_en","features.messages.impl.timeline.protection_ProtectedView_Night_0_en",20294,], +["features.messages.impl.timeline.protection_ProtectedView_Day_1_en","features.messages.impl.timeline.protection_ProtectedView_Night_1_en",20294,], +["features.messages.impl.timeline.protection_ProtectedView_Day_2_en","features.messages.impl.timeline.protection_ProtectedView_Night_2_en",20294,], +["features.messages.impl.timeline.protection_ProtectedView_Day_3_en","features.messages.impl.timeline.protection_ProtectedView_Night_3_en",20294,], +["libraries.troubleshoot.impl.history_PushHistoryView_Day_0_en","libraries.troubleshoot.impl.history_PushHistoryView_Night_0_en",20294,], +["libraries.troubleshoot.impl.history_PushHistoryView_Day_1_en","libraries.troubleshoot.impl.history_PushHistoryView_Night_1_en",20294,], +["libraries.troubleshoot.impl.history_PushHistoryView_Day_2_en","libraries.troubleshoot.impl.history_PushHistoryView_Night_2_en",20294,], +["features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_0_en","features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Night_0_en",20294,], +["features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_1_en","features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Night_1_en",20294,], +["features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_2_en","features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Night_2_en",20294,], +["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_0_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_0_en",20294,], +["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_1_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_1_en",20294,], +["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_2_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_2_en",20294,], +["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_3_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_3_en",20294,], +["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_4_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_4_en",20294,], +["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_5_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_5_en",20294,], +["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_6_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_6_en",20294,], +["features.login.impl.screens.qrcode.intro_QrCodeIntroView_Day_0_en","features.login.impl.screens.qrcode.intro_QrCodeIntroView_Night_0_en",20294,], +["features.login.impl.screens.qrcode.intro_QrCodeIntroView_Day_1_en","features.login.impl.screens.qrcode.intro_QrCodeIntroView_Night_1_en",20294,], +["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_0_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_0_en",20294,], +["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_1_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_1_en",20294,], +["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_2_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_2_en",20294,], +["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_3_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_3_en",20294,], +["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_4_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_4_en",20294,], ["libraries.designsystem.theme.components_RadioButton_Toggles_en","",0,], -["features.rageshake.api.detection_RageshakeDialogContent_Day_0_en","features.rageshake.api.detection_RageshakeDialogContent_Night_0_en",20273,], -["features.rageshake.api.preferences_RageshakePreferencesView_Day_0_en","features.rageshake.api.preferences_RageshakePreferencesView_Night_0_en",20273,], +["features.rageshake.api.detection_RageshakeDialogContent_Day_0_en","features.rageshake.api.detection_RageshakeDialogContent_Night_0_en",20294,], +["features.rageshake.api.preferences_RageshakePreferencesView_Day_0_en","features.rageshake.api.preferences_RageshakePreferencesView_Night_0_en",20294,], ["features.rageshake.api.preferences_RageshakePreferencesView_Day_1_en","features.rageshake.api.preferences_RageshakePreferencesView_Night_1_en",0,], ["features.messages.impl.timeline.components.reactionsummary_ReactionSummaryViewContent_Day_0_en","features.messages.impl.timeline.components.reactionsummary_ReactionSummaryViewContent_Night_0_en",0,], -["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_0_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_0_en",20273,], -["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_1_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_1_en",20273,], -["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_2_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_2_en",20273,], -["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_3_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_3_en",20273,], -["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_4_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_4_en",20273,], -["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_5_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_5_en",20273,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_0_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_0_en",20273,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_10_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_10_en",20273,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_11_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_11_en",20273,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_12_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_12_en",20273,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_13_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_13_en",20273,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_1_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_1_en",20273,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_2_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_2_en",20273,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_3_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_3_en",20273,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_4_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_4_en",20273,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_5_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_5_en",20273,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_6_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_6_en",20273,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_7_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_7_en",20273,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_8_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_8_en",20273,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_9_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_9_en",20273,], +["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_0_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_0_en",20294,], +["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_1_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_1_en",20294,], +["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_2_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_2_en",20294,], +["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_3_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_3_en",20294,], +["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_4_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_4_en",20294,], +["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_5_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_5_en",20294,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_0_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_0_en",20294,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_10_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_10_en",20294,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_11_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_11_en",20294,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_12_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_12_en",20294,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_13_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_13_en",20294,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_1_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_1_en",20294,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_2_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_2_en",20294,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_3_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_3_en",20294,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_4_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_4_en",20294,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_5_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_5_en",20294,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_6_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_6_en",20294,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_7_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_7_en",20294,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_8_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_8_en",20294,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_9_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_9_en",20294,], ["libraries.designsystem.atomic.atoms_RedIndicatorAtom_Day_0_en","libraries.designsystem.atomic.atoms_RedIndicatorAtom_Night_0_en",0,], ["features.messages.impl.timeline.components_ReplySwipeIndicator_Day_0_en","features.messages.impl.timeline.components_ReplySwipeIndicator_Night_0_en",0,], -["features.messages.impl.report_ReportMessageView_Day_0_en","features.messages.impl.report_ReportMessageView_Night_0_en",20273,], -["features.messages.impl.report_ReportMessageView_Day_1_en","features.messages.impl.report_ReportMessageView_Night_1_en",20273,], -["features.messages.impl.report_ReportMessageView_Day_2_en","features.messages.impl.report_ReportMessageView_Night_2_en",20273,], -["features.messages.impl.report_ReportMessageView_Day_3_en","features.messages.impl.report_ReportMessageView_Night_3_en",20273,], -["features.messages.impl.report_ReportMessageView_Day_4_en","features.messages.impl.report_ReportMessageView_Night_4_en",20273,], -["features.messages.impl.report_ReportMessageView_Day_5_en","features.messages.impl.report_ReportMessageView_Night_5_en",20273,], -["features.reportroom.impl_ReportRoomView_Day_0_en","features.reportroom.impl_ReportRoomView_Night_0_en",20273,], -["features.reportroom.impl_ReportRoomView_Day_1_en","features.reportroom.impl_ReportRoomView_Night_1_en",20273,], -["features.reportroom.impl_ReportRoomView_Day_2_en","features.reportroom.impl_ReportRoomView_Night_2_en",20273,], -["features.reportroom.impl_ReportRoomView_Day_3_en","features.reportroom.impl_ReportRoomView_Night_3_en",20273,], -["features.reportroom.impl_ReportRoomView_Day_4_en","features.reportroom.impl_ReportRoomView_Night_4_en",20273,], -["features.securebackup.impl.reset.password_ResetIdentityPasswordView_Day_0_en","features.securebackup.impl.reset.password_ResetIdentityPasswordView_Night_0_en",20273,], -["features.securebackup.impl.reset.password_ResetIdentityPasswordView_Day_1_en","features.securebackup.impl.reset.password_ResetIdentityPasswordView_Night_1_en",20273,], -["features.securebackup.impl.reset.password_ResetIdentityPasswordView_Day_2_en","features.securebackup.impl.reset.password_ResetIdentityPasswordView_Night_2_en",20273,], -["features.securebackup.impl.reset.password_ResetIdentityPasswordView_Day_3_en","features.securebackup.impl.reset.password_ResetIdentityPasswordView_Night_3_en",20273,], -["features.securebackup.impl.reset.root_ResetIdentityRootView_Day_0_en","features.securebackup.impl.reset.root_ResetIdentityRootView_Night_0_en",20273,], -["features.securebackup.impl.reset.root_ResetIdentityRootView_Day_1_en","features.securebackup.impl.reset.root_ResetIdentityRootView_Night_1_en",20273,], +["features.messages.impl.report_ReportMessageView_Day_0_en","features.messages.impl.report_ReportMessageView_Night_0_en",20294,], +["features.messages.impl.report_ReportMessageView_Day_1_en","features.messages.impl.report_ReportMessageView_Night_1_en",20294,], +["features.messages.impl.report_ReportMessageView_Day_2_en","features.messages.impl.report_ReportMessageView_Night_2_en",20294,], +["features.messages.impl.report_ReportMessageView_Day_3_en","features.messages.impl.report_ReportMessageView_Night_3_en",20294,], +["features.messages.impl.report_ReportMessageView_Day_4_en","features.messages.impl.report_ReportMessageView_Night_4_en",20294,], +["features.messages.impl.report_ReportMessageView_Day_5_en","features.messages.impl.report_ReportMessageView_Night_5_en",20294,], +["features.reportroom.impl_ReportRoomView_Day_0_en","features.reportroom.impl_ReportRoomView_Night_0_en",20294,], +["features.reportroom.impl_ReportRoomView_Day_1_en","features.reportroom.impl_ReportRoomView_Night_1_en",20294,], +["features.reportroom.impl_ReportRoomView_Day_2_en","features.reportroom.impl_ReportRoomView_Night_2_en",20294,], +["features.reportroom.impl_ReportRoomView_Day_3_en","features.reportroom.impl_ReportRoomView_Night_3_en",20294,], +["features.reportroom.impl_ReportRoomView_Day_4_en","features.reportroom.impl_ReportRoomView_Night_4_en",20294,], +["features.securebackup.impl.reset.password_ResetIdentityPasswordView_Day_0_en","features.securebackup.impl.reset.password_ResetIdentityPasswordView_Night_0_en",20294,], +["features.securebackup.impl.reset.password_ResetIdentityPasswordView_Day_1_en","features.securebackup.impl.reset.password_ResetIdentityPasswordView_Night_1_en",20294,], +["features.securebackup.impl.reset.password_ResetIdentityPasswordView_Day_2_en","features.securebackup.impl.reset.password_ResetIdentityPasswordView_Night_2_en",20294,], +["features.securebackup.impl.reset.password_ResetIdentityPasswordView_Day_3_en","features.securebackup.impl.reset.password_ResetIdentityPasswordView_Night_3_en",20294,], +["features.securebackup.impl.reset.root_ResetIdentityRootView_Day_0_en","features.securebackup.impl.reset.root_ResetIdentityRootView_Night_0_en",20294,], +["features.securebackup.impl.reset.root_ResetIdentityRootView_Day_1_en","features.securebackup.impl.reset.root_ResetIdentityRootView_Night_1_en",20294,], ["features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_0_en","features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Night_0_en",0,], -["features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_1_en","features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Night_1_en",20273,], -["features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_2_en","features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Night_2_en",20273,], -["libraries.designsystem.components.dialogs_RetryDialogContent_Dialogs_en","",20273,], -["libraries.designsystem.components.dialogs_RetryDialog_Day_0_en","libraries.designsystem.components.dialogs_RetryDialog_Night_0_en",20273,], -["features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_0_en","features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_0_en",20273,], -["features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_1_en","features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_1_en",20273,], -["features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_2_en","features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_2_en",20273,], -["features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_3_en","features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_3_en",20273,], -["features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_4_en","features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_4_en",20273,], -["features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_5_en","features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_5_en",20273,], -["features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_6_en","features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_6_en",20273,], -["features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_7_en","features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_7_en",20273,], +["features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_1_en","features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Night_1_en",20294,], +["features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_2_en","features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Night_2_en",20294,], +["libraries.designsystem.components.dialogs_RetryDialogContent_Dialogs_en","",20294,], +["libraries.designsystem.components.dialogs_RetryDialog_Day_0_en","libraries.designsystem.components.dialogs_RetryDialog_Night_0_en",20294,], +["features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_0_en","features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_0_en",20294,], +["features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_1_en","features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_1_en",20294,], +["features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_2_en","features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_2_en",20294,], +["features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_3_en","features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_3_en",20294,], +["features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_4_en","features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_4_en",20294,], +["features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_5_en","features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_5_en",20294,], +["features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_6_en","features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_6_en",20294,], +["features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_7_en","features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_7_en",20294,], ["libraries.matrix.ui.room.address_RoomAddressField_Day_0_en","libraries.matrix.ui.room.address_RoomAddressField_Night_0_en",0,], ["features.roomaliasresolver.impl_RoomAliasResolverView_Day_0_en","features.roomaliasresolver.impl_RoomAliasResolverView_Night_0_en",0,], -["features.roomaliasresolver.impl_RoomAliasResolverView_Day_1_en","features.roomaliasresolver.impl_RoomAliasResolverView_Night_1_en",20273,], -["features.roomaliasresolver.impl_RoomAliasResolverView_Day_2_en","features.roomaliasresolver.impl_RoomAliasResolverView_Night_2_en",20273,], -["features.roomdetails.impl_RoomDetailsDark_0_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_10_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_11_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_12_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_13_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_14_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_15_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_16_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_17_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_18_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_19_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_1_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_2_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_3_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_4_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_5_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_6_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_7_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_8_en","",20273,], -["features.roomdetails.impl_RoomDetailsDark_9_en","",20273,], -["features.roomdetails.impl.edit_RoomDetailsEditView_Day_0_en","features.roomdetails.impl.edit_RoomDetailsEditView_Night_0_en",20273,], -["features.roomdetails.impl.edit_RoomDetailsEditView_Day_1_en","features.roomdetails.impl.edit_RoomDetailsEditView_Night_1_en",20273,], -["features.roomdetails.impl.edit_RoomDetailsEditView_Day_2_en","features.roomdetails.impl.edit_RoomDetailsEditView_Night_2_en",20273,], -["features.roomdetails.impl.edit_RoomDetailsEditView_Day_3_en","features.roomdetails.impl.edit_RoomDetailsEditView_Night_3_en",20273,], -["features.roomdetails.impl.edit_RoomDetailsEditView_Day_4_en","features.roomdetails.impl.edit_RoomDetailsEditView_Night_4_en",20273,], -["features.roomdetails.impl.edit_RoomDetailsEditView_Day_5_en","features.roomdetails.impl.edit_RoomDetailsEditView_Night_5_en",20273,], -["features.roomdetails.impl.edit_RoomDetailsEditView_Day_6_en","features.roomdetails.impl.edit_RoomDetailsEditView_Night_6_en",20273,], -["features.roomdetails.impl.edit_RoomDetailsEditView_Day_7_en","features.roomdetails.impl.edit_RoomDetailsEditView_Night_7_en",20273,], -["features.roomdetails.impl_RoomDetails_0_en","",20273,], -["features.roomdetails.impl_RoomDetails_10_en","",20273,], -["features.roomdetails.impl_RoomDetails_11_en","",20273,], -["features.roomdetails.impl_RoomDetails_12_en","",20273,], -["features.roomdetails.impl_RoomDetails_13_en","",20273,], -["features.roomdetails.impl_RoomDetails_14_en","",20273,], -["features.roomdetails.impl_RoomDetails_15_en","",20273,], -["features.roomdetails.impl_RoomDetails_16_en","",20273,], -["features.roomdetails.impl_RoomDetails_17_en","",20273,], -["features.roomdetails.impl_RoomDetails_18_en","",20273,], -["features.roomdetails.impl_RoomDetails_19_en","",20273,], -["features.roomdetails.impl_RoomDetails_1_en","",20273,], -["features.roomdetails.impl_RoomDetails_2_en","",20273,], -["features.roomdetails.impl_RoomDetails_3_en","",20273,], -["features.roomdetails.impl_RoomDetails_4_en","",20273,], -["features.roomdetails.impl_RoomDetails_5_en","",20273,], -["features.roomdetails.impl_RoomDetails_6_en","",20273,], -["features.roomdetails.impl_RoomDetails_7_en","",20273,], -["features.roomdetails.impl_RoomDetails_8_en","",20273,], -["features.roomdetails.impl_RoomDetails_9_en","",20273,], -["features.roomdirectory.impl.root_RoomDirectoryView_Day_0_en","features.roomdirectory.impl.root_RoomDirectoryView_Night_0_en",20273,], -["features.roomdirectory.impl.root_RoomDirectoryView_Day_1_en","features.roomdirectory.impl.root_RoomDirectoryView_Night_1_en",20273,], -["features.roomdirectory.impl.root_RoomDirectoryView_Day_2_en","features.roomdirectory.impl.root_RoomDirectoryView_Night_2_en",20273,], -["features.roomdetails.impl.invite_RoomInviteMembersView_Day_0_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_0_en",20273,], -["features.roomdetails.impl.invite_RoomInviteMembersView_Day_1_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_1_en",20273,], -["features.roomdetails.impl.invite_RoomInviteMembersView_Day_2_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_2_en",20273,], -["features.roomdetails.impl.invite_RoomInviteMembersView_Day_3_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_3_en",20273,], -["features.roomdetails.impl.invite_RoomInviteMembersView_Day_4_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_4_en",20273,], -["features.roomdetails.impl.invite_RoomInviteMembersView_Day_5_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_5_en",20273,], -["features.roomdetails.impl.invite_RoomInviteMembersView_Day_6_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_6_en",20273,], -["features.roomdetails.impl.invite_RoomInviteMembersView_Day_7_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_7_en",20273,], -["features.home.impl.components_RoomListContentView_Day_0_en","features.home.impl.components_RoomListContentView_Night_0_en",20273,], -["features.home.impl.components_RoomListContentView_Day_1_en","features.home.impl.components_RoomListContentView_Night_1_en",20273,], +["features.roomaliasresolver.impl_RoomAliasResolverView_Day_1_en","features.roomaliasresolver.impl_RoomAliasResolverView_Night_1_en",20294,], +["features.roomaliasresolver.impl_RoomAliasResolverView_Day_2_en","features.roomaliasresolver.impl_RoomAliasResolverView_Night_2_en",20294,], +["features.roomdetails.impl_RoomDetailsDark_0_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_10_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_11_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_12_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_13_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_14_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_15_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_16_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_17_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_18_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_19_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_1_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_2_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_3_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_4_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_5_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_6_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_7_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_8_en","",20294,], +["features.roomdetails.impl_RoomDetailsDark_9_en","",20294,], +["features.roomdetails.impl.edit_RoomDetailsEditView_Day_0_en","features.roomdetails.impl.edit_RoomDetailsEditView_Night_0_en",20294,], +["features.roomdetails.impl.edit_RoomDetailsEditView_Day_1_en","features.roomdetails.impl.edit_RoomDetailsEditView_Night_1_en",20294,], +["features.roomdetails.impl.edit_RoomDetailsEditView_Day_2_en","features.roomdetails.impl.edit_RoomDetailsEditView_Night_2_en",20294,], +["features.roomdetails.impl.edit_RoomDetailsEditView_Day_3_en","features.roomdetails.impl.edit_RoomDetailsEditView_Night_3_en",20294,], +["features.roomdetails.impl.edit_RoomDetailsEditView_Day_4_en","features.roomdetails.impl.edit_RoomDetailsEditView_Night_4_en",20294,], +["features.roomdetails.impl.edit_RoomDetailsEditView_Day_5_en","features.roomdetails.impl.edit_RoomDetailsEditView_Night_5_en",20294,], +["features.roomdetails.impl.edit_RoomDetailsEditView_Day_6_en","features.roomdetails.impl.edit_RoomDetailsEditView_Night_6_en",20294,], +["features.roomdetails.impl.edit_RoomDetailsEditView_Day_7_en","features.roomdetails.impl.edit_RoomDetailsEditView_Night_7_en",20294,], +["features.roomdetails.impl_RoomDetails_0_en","",20294,], +["features.roomdetails.impl_RoomDetails_10_en","",20294,], +["features.roomdetails.impl_RoomDetails_11_en","",20294,], +["features.roomdetails.impl_RoomDetails_12_en","",20294,], +["features.roomdetails.impl_RoomDetails_13_en","",20294,], +["features.roomdetails.impl_RoomDetails_14_en","",20294,], +["features.roomdetails.impl_RoomDetails_15_en","",20294,], +["features.roomdetails.impl_RoomDetails_16_en","",20294,], +["features.roomdetails.impl_RoomDetails_17_en","",20294,], +["features.roomdetails.impl_RoomDetails_18_en","",20294,], +["features.roomdetails.impl_RoomDetails_19_en","",20294,], +["features.roomdetails.impl_RoomDetails_1_en","",20294,], +["features.roomdetails.impl_RoomDetails_2_en","",20294,], +["features.roomdetails.impl_RoomDetails_3_en","",20294,], +["features.roomdetails.impl_RoomDetails_4_en","",20294,], +["features.roomdetails.impl_RoomDetails_5_en","",20294,], +["features.roomdetails.impl_RoomDetails_6_en","",20294,], +["features.roomdetails.impl_RoomDetails_7_en","",20294,], +["features.roomdetails.impl_RoomDetails_8_en","",20294,], +["features.roomdetails.impl_RoomDetails_9_en","",20294,], +["features.roomdirectory.impl.root_RoomDirectoryView_Day_0_en","features.roomdirectory.impl.root_RoomDirectoryView_Night_0_en",20294,], +["features.roomdirectory.impl.root_RoomDirectoryView_Day_1_en","features.roomdirectory.impl.root_RoomDirectoryView_Night_1_en",20294,], +["features.roomdirectory.impl.root_RoomDirectoryView_Day_2_en","features.roomdirectory.impl.root_RoomDirectoryView_Night_2_en",20294,], +["features.roomdetails.impl.invite_RoomInviteMembersView_Day_0_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_0_en",20294,], +["features.roomdetails.impl.invite_RoomInviteMembersView_Day_1_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_1_en",20294,], +["features.roomdetails.impl.invite_RoomInviteMembersView_Day_2_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_2_en",20294,], +["features.roomdetails.impl.invite_RoomInviteMembersView_Day_3_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_3_en",20294,], +["features.roomdetails.impl.invite_RoomInviteMembersView_Day_4_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_4_en",20294,], +["features.roomdetails.impl.invite_RoomInviteMembersView_Day_5_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_5_en",20294,], +["features.roomdetails.impl.invite_RoomInviteMembersView_Day_6_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_6_en",20294,], +["features.roomdetails.impl.invite_RoomInviteMembersView_Day_7_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_7_en",20294,], +["features.home.impl.components_RoomListContentView_Day_0_en","features.home.impl.components_RoomListContentView_Night_0_en",20294,], +["features.home.impl.components_RoomListContentView_Day_1_en","features.home.impl.components_RoomListContentView_Night_1_en",20294,], ["features.home.impl.components_RoomListContentView_Day_2_en","features.home.impl.components_RoomListContentView_Night_2_en",0,], -["features.home.impl.components_RoomListContentView_Day_3_en","features.home.impl.components_RoomListContentView_Night_3_en",20273,], -["features.home.impl.components_RoomListContentView_Day_4_en","features.home.impl.components_RoomListContentView_Night_4_en",20273,], -["features.home.impl.roomlist_RoomListDeclineInviteMenuContent_Day_0_en","features.home.impl.roomlist_RoomListDeclineInviteMenuContent_Night_0_en",20273,], -["features.home.impl.filters_RoomListFiltersView_Day_0_en","features.home.impl.filters_RoomListFiltersView_Night_0_en",20273,], -["features.home.impl.filters_RoomListFiltersView_Day_1_en","features.home.impl.filters_RoomListFiltersView_Night_1_en",20273,], -["features.home.impl.roomlist_RoomListModalBottomSheetContent_Day_0_en","features.home.impl.roomlist_RoomListModalBottomSheetContent_Night_0_en",20273,], -["features.home.impl.roomlist_RoomListModalBottomSheetContent_Day_1_en","features.home.impl.roomlist_RoomListModalBottomSheetContent_Night_1_en",20273,], -["features.home.impl.roomlist_RoomListModalBottomSheetContent_Day_2_en","features.home.impl.roomlist_RoomListModalBottomSheetContent_Night_2_en",20273,], +["features.home.impl.components_RoomListContentView_Day_3_en","features.home.impl.components_RoomListContentView_Night_3_en",20294,], +["features.home.impl.components_RoomListContentView_Day_4_en","features.home.impl.components_RoomListContentView_Night_4_en",20294,], +["features.home.impl.roomlist_RoomListDeclineInviteMenuContent_Day_0_en","features.home.impl.roomlist_RoomListDeclineInviteMenuContent_Night_0_en",20294,], +["features.home.impl.filters_RoomListFiltersView_Day_0_en","features.home.impl.filters_RoomListFiltersView_Night_0_en",20294,], +["features.home.impl.filters_RoomListFiltersView_Day_1_en","features.home.impl.filters_RoomListFiltersView_Night_1_en",20294,], +["features.home.impl.roomlist_RoomListModalBottomSheetContent_Day_0_en","features.home.impl.roomlist_RoomListModalBottomSheetContent_Night_0_en",20294,], +["features.home.impl.roomlist_RoomListModalBottomSheetContent_Day_1_en","features.home.impl.roomlist_RoomListModalBottomSheetContent_Night_1_en",20294,], +["features.home.impl.roomlist_RoomListModalBottomSheetContent_Day_2_en","features.home.impl.roomlist_RoomListModalBottomSheetContent_Night_2_en",20294,], ["features.home.impl.search_RoomListSearchContent_Day_0_en","features.home.impl.search_RoomListSearchContent_Night_0_en",0,], -["features.home.impl.search_RoomListSearchContent_Day_1_en","features.home.impl.search_RoomListSearchContent_Night_1_en",20273,], -["features.roomdetails.impl.members_RoomMemberListViewBanned_Day_0_en","features.roomdetails.impl.members_RoomMemberListViewBanned_Night_0_en",20273,], -["features.roomdetails.impl.members_RoomMemberListViewBanned_Day_1_en","features.roomdetails.impl.members_RoomMemberListViewBanned_Night_1_en",20273,], -["features.roomdetails.impl.members_RoomMemberListViewBanned_Day_2_en","features.roomdetails.impl.members_RoomMemberListViewBanned_Night_2_en",20273,], -["features.roomdetails.impl.members_RoomMemberListView_Day_0_en","features.roomdetails.impl.members_RoomMemberListView_Night_0_en",20273,], -["features.roomdetails.impl.members_RoomMemberListView_Day_1_en","features.roomdetails.impl.members_RoomMemberListView_Night_1_en",20273,], -["features.roomdetails.impl.members_RoomMemberListView_Day_2_en","features.roomdetails.impl.members_RoomMemberListView_Night_2_en",20273,], -["features.roomdetails.impl.members_RoomMemberListView_Day_3_en","features.roomdetails.impl.members_RoomMemberListView_Night_3_en",20273,], -["features.roomdetails.impl.members_RoomMemberListView_Day_4_en","features.roomdetails.impl.members_RoomMemberListView_Night_4_en",20273,], -["features.roomdetails.impl.members_RoomMemberListView_Day_5_en","features.roomdetails.impl.members_RoomMemberListView_Night_5_en",20273,], +["features.home.impl.search_RoomListSearchContent_Day_1_en","features.home.impl.search_RoomListSearchContent_Night_1_en",20294,], +["features.roomdetails.impl.members_RoomMemberListViewBanned_Day_0_en","features.roomdetails.impl.members_RoomMemberListViewBanned_Night_0_en",20294,], +["features.roomdetails.impl.members_RoomMemberListViewBanned_Day_1_en","features.roomdetails.impl.members_RoomMemberListViewBanned_Night_1_en",20294,], +["features.roomdetails.impl.members_RoomMemberListViewBanned_Day_2_en","features.roomdetails.impl.members_RoomMemberListViewBanned_Night_2_en",20294,], +["features.roomdetails.impl.members_RoomMemberListView_Day_0_en","features.roomdetails.impl.members_RoomMemberListView_Night_0_en",20294,], +["features.roomdetails.impl.members_RoomMemberListView_Day_1_en","features.roomdetails.impl.members_RoomMemberListView_Night_1_en",20294,], +["features.roomdetails.impl.members_RoomMemberListView_Day_2_en","features.roomdetails.impl.members_RoomMemberListView_Night_2_en",20294,], +["features.roomdetails.impl.members_RoomMemberListView_Day_3_en","features.roomdetails.impl.members_RoomMemberListView_Night_3_en",20294,], +["features.roomdetails.impl.members_RoomMemberListView_Day_4_en","features.roomdetails.impl.members_RoomMemberListView_Night_4_en",20294,], +["features.roomdetails.impl.members_RoomMemberListView_Day_5_en","features.roomdetails.impl.members_RoomMemberListView_Night_5_en",20294,], ["features.roomdetails.impl.members_RoomMemberListView_Day_6_en","features.roomdetails.impl.members_RoomMemberListView_Night_6_en",0,], -["features.roomdetails.impl.members_RoomMemberListView_Day_7_en","features.roomdetails.impl.members_RoomMemberListView_Night_7_en",20273,], -["features.roomdetails.impl.members_RoomMemberListView_Day_8_en","features.roomdetails.impl.members_RoomMemberListView_Night_8_en",20273,], -["features.roomdetails.impl.members_RoomMemberListView_Day_9_en","features.roomdetails.impl.members_RoomMemberListView_Night_9_en",20273,], -["features.roommembermoderation.impl_RoomMemberModerationView_Day_0_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_0_en",20273,], -["features.roommembermoderation.impl_RoomMemberModerationView_Day_1_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_1_en",20273,], -["features.roommembermoderation.impl_RoomMemberModerationView_Day_2_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_2_en",20273,], -["features.roommembermoderation.impl_RoomMemberModerationView_Day_3_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_3_en",20273,], -["features.roommembermoderation.impl_RoomMemberModerationView_Day_4_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_4_en",20273,], -["features.roommembermoderation.impl_RoomMemberModerationView_Day_5_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_5_en",20273,], -["features.roommembermoderation.impl_RoomMemberModerationView_Day_6_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_6_en",20273,], -["features.roommembermoderation.impl_RoomMemberModerationView_Day_7_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_7_en",20273,], +["features.roomdetails.impl.members_RoomMemberListView_Day_7_en","features.roomdetails.impl.members_RoomMemberListView_Night_7_en",20294,], +["features.roomdetails.impl.members_RoomMemberListView_Day_8_en","features.roomdetails.impl.members_RoomMemberListView_Night_8_en",20294,], +["features.roomdetails.impl.members_RoomMemberListView_Day_9_en","features.roomdetails.impl.members_RoomMemberListView_Night_9_en",20294,], +["features.roommembermoderation.impl_RoomMemberModerationView_Day_0_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_0_en",20294,], +["features.roommembermoderation.impl_RoomMemberModerationView_Day_1_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_1_en",20294,], +["features.roommembermoderation.impl_RoomMemberModerationView_Day_2_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_2_en",20294,], +["features.roommembermoderation.impl_RoomMemberModerationView_Day_3_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_3_en",20294,], +["features.roommembermoderation.impl_RoomMemberModerationView_Day_4_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_4_en",20294,], +["features.roommembermoderation.impl_RoomMemberModerationView_Day_5_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_5_en",20294,], +["features.roommembermoderation.impl_RoomMemberModerationView_Day_6_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_6_en",20294,], +["features.roommembermoderation.impl_RoomMemberModerationView_Day_7_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_7_en",20294,], ["libraries.designsystem.atomic.molecules_RoomMembersCountMolecule_Day_0_en","libraries.designsystem.atomic.molecules_RoomMembersCountMolecule_Night_0_en",0,], -["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Day_0_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Night_0_en",20273,], -["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_0_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_0_en",20273,], -["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_1_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_1_en",20273,], -["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_2_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_2_en",20273,], -["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_3_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_3_en",20273,], -["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_4_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_4_en",20273,], -["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_5_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_5_en",20273,], -["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_6_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_6_en",20273,], -["libraries.roomselect.impl_RoomSelectView_Day_0_en","libraries.roomselect.impl_RoomSelectView_Night_0_en",20273,], -["libraries.roomselect.impl_RoomSelectView_Day_1_en","libraries.roomselect.impl_RoomSelectView_Night_1_en",20273,], -["libraries.roomselect.impl_RoomSelectView_Day_2_en","libraries.roomselect.impl_RoomSelectView_Night_2_en",20273,], -["libraries.roomselect.impl_RoomSelectView_Day_3_en","libraries.roomselect.impl_RoomSelectView_Night_3_en",20273,], -["libraries.roomselect.impl_RoomSelectView_Day_4_en","libraries.roomselect.impl_RoomSelectView_Night_4_en",20273,], -["libraries.roomselect.impl_RoomSelectView_Day_5_en","libraries.roomselect.impl_RoomSelectView_Night_5_en",20273,], +["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Day_0_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Night_0_en",20294,], +["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_0_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_0_en",20294,], +["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_1_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_1_en",20294,], +["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_2_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_2_en",20294,], +["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_3_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_3_en",20294,], +["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_4_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_4_en",20294,], +["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_5_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_5_en",20294,], +["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_6_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_6_en",20294,], +["libraries.roomselect.impl_RoomSelectView_Day_0_en","libraries.roomselect.impl_RoomSelectView_Night_0_en",20294,], +["libraries.roomselect.impl_RoomSelectView_Day_1_en","libraries.roomselect.impl_RoomSelectView_Night_1_en",20294,], +["libraries.roomselect.impl_RoomSelectView_Day_2_en","libraries.roomselect.impl_RoomSelectView_Night_2_en",20294,], +["libraries.roomselect.impl_RoomSelectView_Day_3_en","libraries.roomselect.impl_RoomSelectView_Night_3_en",20294,], +["libraries.roomselect.impl_RoomSelectView_Day_4_en","libraries.roomselect.impl_RoomSelectView_Night_4_en",20294,], +["libraries.roomselect.impl_RoomSelectView_Day_5_en","libraries.roomselect.impl_RoomSelectView_Night_5_en",20294,], ["features.home.impl.components_RoomSummaryPlaceholderRow_Day_0_en","features.home.impl.components_RoomSummaryPlaceholderRow_Night_0_en",0,], ["features.home.impl.components_RoomSummaryRow_Day_0_en","features.home.impl.components_RoomSummaryRow_Night_0_en",0,], ["features.home.impl.components_RoomSummaryRow_Day_10_en","features.home.impl.components_RoomSummaryRow_Night_10_en",0,], @@ -1062,13 +1050,13 @@ export const screenshots = [ ["features.home.impl.components_RoomSummaryRow_Day_26_en","features.home.impl.components_RoomSummaryRow_Night_26_en",0,], ["features.home.impl.components_RoomSummaryRow_Day_27_en","features.home.impl.components_RoomSummaryRow_Night_27_en",0,], ["features.home.impl.components_RoomSummaryRow_Day_28_en","features.home.impl.components_RoomSummaryRow_Night_28_en",0,], -["features.home.impl.components_RoomSummaryRow_Day_29_en","features.home.impl.components_RoomSummaryRow_Night_29_en",20273,], -["features.home.impl.components_RoomSummaryRow_Day_2_en","features.home.impl.components_RoomSummaryRow_Night_2_en",20273,], -["features.home.impl.components_RoomSummaryRow_Day_30_en","features.home.impl.components_RoomSummaryRow_Night_30_en",20273,], -["features.home.impl.components_RoomSummaryRow_Day_31_en","features.home.impl.components_RoomSummaryRow_Night_31_en",20273,], -["features.home.impl.components_RoomSummaryRow_Day_32_en","features.home.impl.components_RoomSummaryRow_Night_32_en",20273,], -["features.home.impl.components_RoomSummaryRow_Day_33_en","features.home.impl.components_RoomSummaryRow_Night_33_en",20273,], -["features.home.impl.components_RoomSummaryRow_Day_34_en","features.home.impl.components_RoomSummaryRow_Night_34_en",20273,], +["features.home.impl.components_RoomSummaryRow_Day_29_en","features.home.impl.components_RoomSummaryRow_Night_29_en",20294,], +["features.home.impl.components_RoomSummaryRow_Day_2_en","features.home.impl.components_RoomSummaryRow_Night_2_en",20294,], +["features.home.impl.components_RoomSummaryRow_Day_30_en","features.home.impl.components_RoomSummaryRow_Night_30_en",20294,], +["features.home.impl.components_RoomSummaryRow_Day_31_en","features.home.impl.components_RoomSummaryRow_Night_31_en",20294,], +["features.home.impl.components_RoomSummaryRow_Day_32_en","features.home.impl.components_RoomSummaryRow_Night_32_en",20294,], +["features.home.impl.components_RoomSummaryRow_Day_33_en","features.home.impl.components_RoomSummaryRow_Night_33_en",20294,], +["features.home.impl.components_RoomSummaryRow_Day_34_en","features.home.impl.components_RoomSummaryRow_Night_34_en",20294,], ["features.home.impl.components_RoomSummaryRow_Day_3_en","features.home.impl.components_RoomSummaryRow_Night_3_en",0,], ["features.home.impl.components_RoomSummaryRow_Day_4_en","features.home.impl.components_RoomSummaryRow_Night_4_en",0,], ["features.home.impl.components_RoomSummaryRow_Day_5_en","features.home.impl.components_RoomSummaryRow_Night_5_en",0,], @@ -1076,77 +1064,79 @@ export const screenshots = [ ["features.home.impl.components_RoomSummaryRow_Day_7_en","features.home.impl.components_RoomSummaryRow_Night_7_en",0,], ["features.home.impl.components_RoomSummaryRow_Day_8_en","features.home.impl.components_RoomSummaryRow_Night_8_en",0,], ["features.home.impl.components_RoomSummaryRow_Day_9_en","features.home.impl.components_RoomSummaryRow_Night_9_en",0,], -["appnav.root_RootView_Day_0_en","appnav.root_RootView_Night_0_en",20273,], -["appnav.root_RootView_Day_1_en","appnav.root_RootView_Night_1_en",20273,], -["appnav.root_RootView_Day_2_en","appnav.root_RootView_Night_2_en",20273,], +["appnav.root_RootView_Day_0_en","appnav.root_RootView_Night_0_en",20294,], +["appnav.root_RootView_Day_1_en","appnav.root_RootView_Night_1_en",20294,], +["appnav.root_RootView_Day_2_en","appnav.root_RootView_Night_2_en",20294,], ["appicon.enterprise_RoundIcon_en","",0,], ["appicon.element_RoundIcon_en","",0,], ["libraries.designsystem.atomic.atoms_RoundedIconAtom_Day_0_en","libraries.designsystem.atomic.atoms_RoundedIconAtom_Night_0_en",0,], -["features.verifysession.impl.emoji_SasEmojis_Day_0_en","features.verifysession.impl.emoji_SasEmojis_Night_0_en",20273,], -["features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Day_0_en","features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Night_0_en",20273,], -["features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Day_1_en","features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Night_1_en",20273,], +["features.verifysession.impl.emoji_SasEmojis_Day_0_en","features.verifysession.impl.emoji_SasEmojis_Night_0_en",20294,], +["features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Day_0_en","features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Night_0_en",20294,], +["features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Day_1_en","features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Night_1_en",20294,], ["libraries.designsystem.theme.components_SearchBarActiveNoneQuery_Search_views_en","",0,], ["libraries.designsystem.theme.components_SearchBarActiveWithContent_Search_views_en","",0,], -["libraries.designsystem.theme.components_SearchBarActiveWithNoResults_Search_views_en","",20273,], +["libraries.designsystem.theme.components_SearchBarActiveWithNoResults_Search_views_en","",20294,], ["libraries.designsystem.theme.components_SearchBarActiveWithQueryNoBackButton_Search_views_en","",0,], ["libraries.designsystem.theme.components_SearchBarActiveWithQuery_Search_views_en","",0,], ["libraries.designsystem.theme.components_SearchBarInactive_Search_views_en","",0,], -["features.createroom.impl.components_SearchMultipleUsersResultItem_en","",20273,], -["features.createroom.impl.components_SearchSingleUserResultItem_en","",20273,], -["features.securebackup.impl.disable_SecureBackupDisableView_Day_0_en","features.securebackup.impl.disable_SecureBackupDisableView_Night_0_en",20273,], -["features.securebackup.impl.disable_SecureBackupDisableView_Day_1_en","features.securebackup.impl.disable_SecureBackupDisableView_Night_1_en",20273,], -["features.securebackup.impl.disable_SecureBackupDisableView_Day_2_en","features.securebackup.impl.disable_SecureBackupDisableView_Night_2_en",20273,], -["features.securebackup.impl.disable_SecureBackupDisableView_Day_3_en","features.securebackup.impl.disable_SecureBackupDisableView_Night_3_en",20273,], -["features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_0_en","features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Night_0_en",20273,], -["features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_1_en","features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Night_1_en",20273,], -["features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_2_en","features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Night_2_en",20273,], -["features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_3_en","features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Night_3_en",20273,], -["features.securebackup.impl.root_SecureBackupRootView_Day_0_en","features.securebackup.impl.root_SecureBackupRootView_Night_0_en",20273,], -["features.securebackup.impl.root_SecureBackupRootView_Day_10_en","features.securebackup.impl.root_SecureBackupRootView_Night_10_en",20273,], -["features.securebackup.impl.root_SecureBackupRootView_Day_11_en","features.securebackup.impl.root_SecureBackupRootView_Night_11_en",20273,], -["features.securebackup.impl.root_SecureBackupRootView_Day_12_en","features.securebackup.impl.root_SecureBackupRootView_Night_12_en",20273,], -["features.securebackup.impl.root_SecureBackupRootView_Day_13_en","features.securebackup.impl.root_SecureBackupRootView_Night_13_en",20273,], -["features.securebackup.impl.root_SecureBackupRootView_Day_14_en","features.securebackup.impl.root_SecureBackupRootView_Night_14_en",20273,], -["features.securebackup.impl.root_SecureBackupRootView_Day_15_en","features.securebackup.impl.root_SecureBackupRootView_Night_15_en",20273,], -["features.securebackup.impl.root_SecureBackupRootView_Day_16_en","features.securebackup.impl.root_SecureBackupRootView_Night_16_en",20273,], -["features.securebackup.impl.root_SecureBackupRootView_Day_17_en","features.securebackup.impl.root_SecureBackupRootView_Night_17_en",20273,], -["features.securebackup.impl.root_SecureBackupRootView_Day_1_en","features.securebackup.impl.root_SecureBackupRootView_Night_1_en",20273,], -["features.securebackup.impl.root_SecureBackupRootView_Day_2_en","features.securebackup.impl.root_SecureBackupRootView_Night_2_en",20273,], -["features.securebackup.impl.root_SecureBackupRootView_Day_3_en","features.securebackup.impl.root_SecureBackupRootView_Night_3_en",20273,], -["features.securebackup.impl.root_SecureBackupRootView_Day_4_en","features.securebackup.impl.root_SecureBackupRootView_Night_4_en",20273,], -["features.securebackup.impl.root_SecureBackupRootView_Day_5_en","features.securebackup.impl.root_SecureBackupRootView_Night_5_en",20273,], -["features.securebackup.impl.root_SecureBackupRootView_Day_6_en","features.securebackup.impl.root_SecureBackupRootView_Night_6_en",20273,], -["features.securebackup.impl.root_SecureBackupRootView_Day_7_en","features.securebackup.impl.root_SecureBackupRootView_Night_7_en",20273,], -["features.securebackup.impl.root_SecureBackupRootView_Day_8_en","features.securebackup.impl.root_SecureBackupRootView_Night_8_en",20273,], -["features.securebackup.impl.root_SecureBackupRootView_Day_9_en","features.securebackup.impl.root_SecureBackupRootView_Night_9_en",20273,], -["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_0_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_0_en",20273,], -["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_1_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_1_en",20273,], -["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_2_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_2_en",20273,], -["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_3_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_3_en",20273,], -["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_4_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_4_en",20273,], -["features.securebackup.impl.setup_SecureBackupSetupView_Day_0_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_0_en",20273,], -["features.securebackup.impl.setup_SecureBackupSetupView_Day_1_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_1_en",20273,], -["features.securebackup.impl.setup_SecureBackupSetupView_Day_2_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_2_en",20273,], -["features.securebackup.impl.setup_SecureBackupSetupView_Day_3_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_3_en",20273,], -["features.securebackup.impl.setup_SecureBackupSetupView_Day_4_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_4_en",20273,], -["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_0_en","",20273,], -["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_1_en","",20273,], -["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_2_en","",20273,], -["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_3_en","",20273,], -["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_4_en","",20273,], -["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_5_en","",20273,], -["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_6_en","",20273,], -["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_7_en","",20273,], -["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_8_en","",20273,], -["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_0_en","",20273,], -["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_1_en","",20273,], -["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_2_en","",20273,], -["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_3_en","",20273,], -["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_4_en","",20273,], -["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_5_en","",20273,], -["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_6_en","",20273,], -["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_7_en","",20273,], -["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_8_en","",20273,], +["features.createroom.impl.components_SearchMultipleUsersResultItem_en","",20294,], +["features.createroom.impl.components_SearchSingleUserResultItem_en","",20294,], +["features.securebackup.impl.disable_SecureBackupDisableView_Day_0_en","features.securebackup.impl.disable_SecureBackupDisableView_Night_0_en",20294,], +["features.securebackup.impl.disable_SecureBackupDisableView_Day_1_en","features.securebackup.impl.disable_SecureBackupDisableView_Night_1_en",20294,], +["features.securebackup.impl.disable_SecureBackupDisableView_Day_2_en","features.securebackup.impl.disable_SecureBackupDisableView_Night_2_en",20294,], +["features.securebackup.impl.disable_SecureBackupDisableView_Day_3_en","features.securebackup.impl.disable_SecureBackupDisableView_Night_3_en",20294,], +["features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_0_en","features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Night_0_en",20294,], +["features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_1_en","features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Night_1_en",20294,], +["features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_2_en","features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Night_2_en",20294,], +["features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_3_en","features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Night_3_en",20294,], +["features.securebackup.impl.root_SecureBackupRootView_Day_0_en","features.securebackup.impl.root_SecureBackupRootView_Night_0_en",20294,], +["features.securebackup.impl.root_SecureBackupRootView_Day_10_en","features.securebackup.impl.root_SecureBackupRootView_Night_10_en",20294,], +["features.securebackup.impl.root_SecureBackupRootView_Day_11_en","features.securebackup.impl.root_SecureBackupRootView_Night_11_en",20294,], +["features.securebackup.impl.root_SecureBackupRootView_Day_12_en","features.securebackup.impl.root_SecureBackupRootView_Night_12_en",20294,], +["features.securebackup.impl.root_SecureBackupRootView_Day_13_en","features.securebackup.impl.root_SecureBackupRootView_Night_13_en",20294,], +["features.securebackup.impl.root_SecureBackupRootView_Day_14_en","features.securebackup.impl.root_SecureBackupRootView_Night_14_en",20294,], +["features.securebackup.impl.root_SecureBackupRootView_Day_15_en","features.securebackup.impl.root_SecureBackupRootView_Night_15_en",20294,], +["features.securebackup.impl.root_SecureBackupRootView_Day_16_en","features.securebackup.impl.root_SecureBackupRootView_Night_16_en",20294,], +["features.securebackup.impl.root_SecureBackupRootView_Day_17_en","features.securebackup.impl.root_SecureBackupRootView_Night_17_en",20294,], +["features.securebackup.impl.root_SecureBackupRootView_Day_1_en","features.securebackup.impl.root_SecureBackupRootView_Night_1_en",20294,], +["features.securebackup.impl.root_SecureBackupRootView_Day_2_en","features.securebackup.impl.root_SecureBackupRootView_Night_2_en",20294,], +["features.securebackup.impl.root_SecureBackupRootView_Day_3_en","features.securebackup.impl.root_SecureBackupRootView_Night_3_en",20294,], +["features.securebackup.impl.root_SecureBackupRootView_Day_4_en","features.securebackup.impl.root_SecureBackupRootView_Night_4_en",20294,], +["features.securebackup.impl.root_SecureBackupRootView_Day_5_en","features.securebackup.impl.root_SecureBackupRootView_Night_5_en",20294,], +["features.securebackup.impl.root_SecureBackupRootView_Day_6_en","features.securebackup.impl.root_SecureBackupRootView_Night_6_en",20294,], +["features.securebackup.impl.root_SecureBackupRootView_Day_7_en","features.securebackup.impl.root_SecureBackupRootView_Night_7_en",20294,], +["features.securebackup.impl.root_SecureBackupRootView_Day_8_en","features.securebackup.impl.root_SecureBackupRootView_Night_8_en",20294,], +["features.securebackup.impl.root_SecureBackupRootView_Day_9_en","features.securebackup.impl.root_SecureBackupRootView_Night_9_en",20294,], +["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_0_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_0_en",20294,], +["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_1_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_1_en",20294,], +["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_2_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_2_en",20294,], +["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_3_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_3_en",20294,], +["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_4_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_4_en",20294,], +["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_5_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_5_en",20297,], +["features.securebackup.impl.setup_SecureBackupSetupView_Day_0_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_0_en",20294,], +["features.securebackup.impl.setup_SecureBackupSetupView_Day_1_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_1_en",20294,], +["features.securebackup.impl.setup_SecureBackupSetupView_Day_2_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_2_en",20294,], +["features.securebackup.impl.setup_SecureBackupSetupView_Day_3_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_3_en",20294,], +["features.securebackup.impl.setup_SecureBackupSetupView_Day_4_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_4_en",20294,], +["features.securebackup.impl.setup_SecureBackupSetupView_Day_5_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_5_en",20297,], +["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_0_en","",20294,], +["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_1_en","",20294,], +["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_2_en","",20294,], +["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_3_en","",20294,], +["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_4_en","",20294,], +["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_5_en","",20294,], +["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_6_en","",20294,], +["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_7_en","",20294,], +["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewDark_8_en","",20294,], +["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_0_en","",20294,], +["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_1_en","",20294,], +["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_2_en","",20294,], +["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_3_en","",20294,], +["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_4_en","",20294,], +["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_5_en","",20294,], +["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_6_en","",20294,], +["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_7_en","",20294,], +["features.roomdetails.impl.securityandprivacy_SecurityAndPrivacyViewLight_8_en","",20294,], ["libraries.matrix.ui.components_SelectedRoom_Day_0_en","libraries.matrix.ui.components_SelectedRoom_Night_0_en",0,], ["libraries.matrix.ui.components_SelectedRoom_Day_1_en","libraries.matrix.ui.components_SelectedRoom_Night_1_en",0,], ["libraries.matrix.ui.components_SelectedRoom_Day_2_en","libraries.matrix.ui.components_SelectedRoom_Night_2_en",0,], @@ -1154,11 +1144,11 @@ export const screenshots = [ ["libraries.matrix.ui.components_SelectedUser_Day_0_en","libraries.matrix.ui.components_SelectedUser_Night_0_en",0,], ["libraries.matrix.ui.components_SelectedUsersRowList_Day_0_en","libraries.matrix.ui.components_SelectedUsersRowList_Night_0_en",0,], ["libraries.textcomposer.components_SendButton_Day_0_en","libraries.textcomposer.components_SendButton_Night_0_en",0,], -["features.location.impl.send_SendLocationView_Day_0_en","features.location.impl.send_SendLocationView_Night_0_en",20273,], -["features.location.impl.send_SendLocationView_Day_1_en","features.location.impl.send_SendLocationView_Night_1_en",20273,], -["features.location.impl.send_SendLocationView_Day_2_en","features.location.impl.send_SendLocationView_Night_2_en",20273,], -["features.location.impl.send_SendLocationView_Day_3_en","features.location.impl.send_SendLocationView_Night_3_en",20273,], -["features.location.impl.send_SendLocationView_Day_4_en","features.location.impl.send_SendLocationView_Night_4_en",20273,], +["features.location.impl.send_SendLocationView_Day_0_en","features.location.impl.send_SendLocationView_Night_0_en",20294,], +["features.location.impl.send_SendLocationView_Day_1_en","features.location.impl.send_SendLocationView_Night_1_en",20294,], +["features.location.impl.send_SendLocationView_Day_2_en","features.location.impl.send_SendLocationView_Night_2_en",20294,], +["features.location.impl.send_SendLocationView_Day_3_en","features.location.impl.send_SendLocationView_Night_3_en",20294,], +["features.location.impl.send_SendLocationView_Day_4_en","features.location.impl.send_SendLocationView_Night_4_en",20294,], ["libraries.matrix.ui.messages.sender_SenderName_Day_0_en","libraries.matrix.ui.messages.sender_SenderName_Night_0_en",0,], ["libraries.matrix.ui.messages.sender_SenderName_Day_1_en","libraries.matrix.ui.messages.sender_SenderName_Night_1_en",0,], ["libraries.matrix.ui.messages.sender_SenderName_Day_2_en","libraries.matrix.ui.messages.sender_SenderName_Night_2_en",0,], @@ -1168,27 +1158,27 @@ export const screenshots = [ ["libraries.matrix.ui.messages.sender_SenderName_Day_6_en","libraries.matrix.ui.messages.sender_SenderName_Night_6_en",0,], ["libraries.matrix.ui.messages.sender_SenderName_Day_7_en","libraries.matrix.ui.messages.sender_SenderName_Night_7_en",0,], ["libraries.matrix.ui.messages.sender_SenderName_Day_8_en","libraries.matrix.ui.messages.sender_SenderName_Night_8_en",0,], -["features.verifysession.impl.incoming.ui_SessionDetailsView_Day_0_en","features.verifysession.impl.incoming.ui_SessionDetailsView_Night_0_en",20273,], -["features.home.impl.components_SetUpRecoveryKeyBanner_Day_0_en","features.home.impl.components_SetUpRecoveryKeyBanner_Night_0_en",20273,], -["features.lockscreen.impl.setup.biometric_SetupBiometricView_Day_0_en","features.lockscreen.impl.setup.biometric_SetupBiometricView_Night_0_en",20273,], -["features.lockscreen.impl.setup.pin_SetupPinView_Day_0_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_0_en",20273,], -["features.lockscreen.impl.setup.pin_SetupPinView_Day_1_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_1_en",20273,], -["features.lockscreen.impl.setup.pin_SetupPinView_Day_2_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_2_en",20273,], -["features.lockscreen.impl.setup.pin_SetupPinView_Day_3_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_3_en",20273,], -["features.lockscreen.impl.setup.pin_SetupPinView_Day_4_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_4_en",20273,], +["features.verifysession.impl.incoming.ui_SessionDetailsView_Day_0_en","features.verifysession.impl.incoming.ui_SessionDetailsView_Night_0_en",20294,], +["features.home.impl.components_SetUpRecoveryKeyBanner_Day_0_en","features.home.impl.components_SetUpRecoveryKeyBanner_Night_0_en",20294,], +["features.lockscreen.impl.setup.biometric_SetupBiometricView_Day_0_en","features.lockscreen.impl.setup.biometric_SetupBiometricView_Night_0_en",20294,], +["features.lockscreen.impl.setup.pin_SetupPinView_Day_0_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_0_en",20294,], +["features.lockscreen.impl.setup.pin_SetupPinView_Day_1_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_1_en",20294,], +["features.lockscreen.impl.setup.pin_SetupPinView_Day_2_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_2_en",20294,], +["features.lockscreen.impl.setup.pin_SetupPinView_Day_3_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_3_en",20294,], +["features.lockscreen.impl.setup.pin_SetupPinView_Day_4_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_4_en",20294,], ["features.share.impl_ShareView_Day_0_en","features.share.impl_ShareView_Night_0_en",0,], ["features.share.impl_ShareView_Day_1_en","features.share.impl_ShareView_Night_1_en",0,], ["features.share.impl_ShareView_Day_2_en","features.share.impl_ShareView_Night_2_en",0,], -["features.share.impl_ShareView_Day_3_en","features.share.impl_ShareView_Night_3_en",20273,], -["features.location.impl.show_ShowLocationView_Day_0_en","features.location.impl.show_ShowLocationView_Night_0_en",20273,], -["features.location.impl.show_ShowLocationView_Day_1_en","features.location.impl.show_ShowLocationView_Night_1_en",20273,], -["features.location.impl.show_ShowLocationView_Day_2_en","features.location.impl.show_ShowLocationView_Night_2_en",20273,], -["features.location.impl.show_ShowLocationView_Day_3_en","features.location.impl.show_ShowLocationView_Night_3_en",20273,], -["features.location.impl.show_ShowLocationView_Day_4_en","features.location.impl.show_ShowLocationView_Night_4_en",20273,], -["features.location.impl.show_ShowLocationView_Day_5_en","features.location.impl.show_ShowLocationView_Night_5_en",20273,], -["features.location.impl.show_ShowLocationView_Day_6_en","features.location.impl.show_ShowLocationView_Night_6_en",20273,], -["features.location.impl.show_ShowLocationView_Day_7_en","features.location.impl.show_ShowLocationView_Night_7_en",20273,], -["features.signedout.impl_SignedOutView_Day_0_en","features.signedout.impl_SignedOutView_Night_0_en",20273,], +["features.share.impl_ShareView_Day_3_en","features.share.impl_ShareView_Night_3_en",20294,], +["features.location.impl.show_ShowLocationView_Day_0_en","features.location.impl.show_ShowLocationView_Night_0_en",20294,], +["features.location.impl.show_ShowLocationView_Day_1_en","features.location.impl.show_ShowLocationView_Night_1_en",20294,], +["features.location.impl.show_ShowLocationView_Day_2_en","features.location.impl.show_ShowLocationView_Night_2_en",20294,], +["features.location.impl.show_ShowLocationView_Day_3_en","features.location.impl.show_ShowLocationView_Night_3_en",20294,], +["features.location.impl.show_ShowLocationView_Day_4_en","features.location.impl.show_ShowLocationView_Night_4_en",20294,], +["features.location.impl.show_ShowLocationView_Day_5_en","features.location.impl.show_ShowLocationView_Night_5_en",20294,], +["features.location.impl.show_ShowLocationView_Day_6_en","features.location.impl.show_ShowLocationView_Night_6_en",20294,], +["features.location.impl.show_ShowLocationView_Day_7_en","features.location.impl.show_ShowLocationView_Night_7_en",20294,], +["features.signedout.impl_SignedOutView_Day_0_en","features.signedout.impl_SignedOutView_Night_0_en",20294,], ["libraries.designsystem.components.dialogs_SingleSelectionDialogContent_Dialogs_en","",0,], ["libraries.designsystem.components.dialogs_SingleSelectionDialog_Day_0_en","libraries.designsystem.components.dialogs_SingleSelectionDialog_Night_0_en",0,], ["libraries.designsystem.components.list_SingleSelectionListItemCustomFormattert_Single_selection_List_item_-_custom_formatter_List_items_en","",0,], @@ -1197,7 +1187,7 @@ export const screenshots = [ ["libraries.designsystem.components.list_SingleSelectionListItemUnselectedWithSupportingText_Single_selection_List_item_-_no_selection,_supporting_text_List_items_en","",0,], ["libraries.designsystem.components.list_SingleSelectionListItem_Single_selection_List_item_-_no_selection_List_items_en","",0,], ["libraries.designsystem.theme.components_Sliders_Sliders_en","",0,], -["features.login.impl.dialogs_SlidingSyncNotSupportedDialog_Day_0_en","features.login.impl.dialogs_SlidingSyncNotSupportedDialog_Night_0_en",20273,], +["features.login.impl.dialogs_SlidingSyncNotSupportedDialog_Day_0_en","features.login.impl.dialogs_SlidingSyncNotSupportedDialog_Night_0_en",20294,], ["libraries.designsystem.theme.components_SnackbarWithActionAndCloseButton_Snackbar_with_action_and_close_button_Snackbars_en","",0,], ["libraries.designsystem.theme.components_SnackbarWithActionOnNewLineAndCloseButton_Snackbar_with_action_and_close_button_on_new_line_Snackbars_en","",0,], ["libraries.designsystem.theme.components_SnackbarWithActionOnNewLine_Snackbar_with_action_on_new_line_Snackbars_en","",0,], @@ -1207,61 +1197,61 @@ export const screenshots = [ ["libraries.designsystem.modifiers_SquareSizeModifierInsideSquare_en","",0,], ["libraries.designsystem.modifiers_SquareSizeModifierLargeHeight_en","",0,], ["libraries.designsystem.modifiers_SquareSizeModifierLargeWidth_en","",0,], -["features.location.api.internal_StaticMapPlaceholder_Day_0_en","features.location.api.internal_StaticMapPlaceholder_Night_0_en",20273,], +["features.location.api.internal_StaticMapPlaceholder_Day_0_en","features.location.api.internal_StaticMapPlaceholder_Night_0_en",20294,], ["features.location.api_StaticMapView_Day_0_en","features.location.api_StaticMapView_Night_0_en",0,], -["features.messages.impl.messagecomposer.suggestions_SuggestionsPickerView_Day_0_en","features.messages.impl.messagecomposer.suggestions_SuggestionsPickerView_Night_0_en",20273,], +["features.messages.impl.messagecomposer.suggestions_SuggestionsPickerView_Day_0_en","features.messages.impl.messagecomposer.suggestions_SuggestionsPickerView_Night_0_en",20294,], ["libraries.designsystem.atomic.pages_SunsetPage_Day_0_en","libraries.designsystem.atomic.pages_SunsetPage_Night_0_en",0,], ["libraries.designsystem.components.button_SuperButton_Day_0_en","libraries.designsystem.components.button_SuperButton_Night_0_en",0,], ["libraries.designsystem.theme.components_Surface_en","",0,], ["libraries.designsystem.theme.components_Switch_Toggles_en","",0,], -["appnav.loggedin_SyncStateView_Day_0_en","appnav.loggedin_SyncStateView_Night_0_en",20273,], +["appnav.loggedin_SyncStateView_Day_0_en","appnav.loggedin_SyncStateView_Night_0_en",20294,], ["libraries.designsystem.components.avatar.internal_TextAvatar_Avatars_en","",0,], ["libraries.designsystem.theme.components_TextButtonLargeLowPadding_Buttons_en","",0,], ["libraries.designsystem.theme.components_TextButtonLarge_Buttons_en","",0,], ["libraries.designsystem.theme.components_TextButtonMediumLowPadding_Buttons_en","",0,], ["libraries.designsystem.theme.components_TextButtonMedium_Buttons_en","",0,], ["libraries.designsystem.theme.components_TextButtonSmall_Buttons_en","",0,], -["libraries.textcomposer_TextComposerAddCaption_Day_0_en","libraries.textcomposer_TextComposerAddCaption_Night_0_en",20273,], -["libraries.textcomposer_TextComposerCaption_Day_0_en","libraries.textcomposer_TextComposerCaption_Night_0_en",20273,], -["libraries.textcomposer_TextComposerEditCaption_Day_0_en","libraries.textcomposer_TextComposerEditCaption_Night_0_en",20273,], -["libraries.textcomposer_TextComposerEditNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerEditNotEncrypted_Night_0_en",20273,], -["libraries.textcomposer_TextComposerEdit_Day_0_en","libraries.textcomposer_TextComposerEdit_Night_0_en",20273,], -["libraries.textcomposer_TextComposerFormattingNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerFormattingNotEncrypted_Night_0_en",20273,], -["libraries.textcomposer_TextComposerFormatting_Day_0_en","libraries.textcomposer_TextComposerFormatting_Night_0_en",20273,], -["libraries.textcomposer_TextComposerLinkDialogCreateLinkWithoutText_Day_0_en","libraries.textcomposer_TextComposerLinkDialogCreateLinkWithoutText_Night_0_en",20273,], -["libraries.textcomposer_TextComposerLinkDialogCreateLink_Day_0_en","libraries.textcomposer_TextComposerLinkDialogCreateLink_Night_0_en",20273,], -["libraries.textcomposer_TextComposerLinkDialogEditLink_Day_0_en","libraries.textcomposer_TextComposerLinkDialogEditLink_Night_0_en",20273,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_0_en",20273,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_10_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_10_en",20273,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_11_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_11_en",20273,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_1_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_1_en",20273,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_2_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_2_en",20273,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_3_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_3_en",20273,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_4_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_4_en",20273,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_5_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_5_en",20273,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_6_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_6_en",20273,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_7_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_7_en",20273,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_8_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_8_en",20273,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_9_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_9_en",20273,], -["libraries.textcomposer_TextComposerReply_Day_0_en","libraries.textcomposer_TextComposerReply_Night_0_en",20273,], -["libraries.textcomposer_TextComposerReply_Day_10_en","libraries.textcomposer_TextComposerReply_Night_10_en",20273,], -["libraries.textcomposer_TextComposerReply_Day_11_en","libraries.textcomposer_TextComposerReply_Night_11_en",20273,], -["libraries.textcomposer_TextComposerReply_Day_1_en","libraries.textcomposer_TextComposerReply_Night_1_en",20273,], -["libraries.textcomposer_TextComposerReply_Day_2_en","libraries.textcomposer_TextComposerReply_Night_2_en",20273,], -["libraries.textcomposer_TextComposerReply_Day_3_en","libraries.textcomposer_TextComposerReply_Night_3_en",20273,], -["libraries.textcomposer_TextComposerReply_Day_4_en","libraries.textcomposer_TextComposerReply_Night_4_en",20273,], -["libraries.textcomposer_TextComposerReply_Day_5_en","libraries.textcomposer_TextComposerReply_Night_5_en",20273,], -["libraries.textcomposer_TextComposerReply_Day_6_en","libraries.textcomposer_TextComposerReply_Night_6_en",20273,], -["libraries.textcomposer_TextComposerReply_Day_7_en","libraries.textcomposer_TextComposerReply_Night_7_en",20273,], -["libraries.textcomposer_TextComposerReply_Day_8_en","libraries.textcomposer_TextComposerReply_Night_8_en",20273,], -["libraries.textcomposer_TextComposerReply_Day_9_en","libraries.textcomposer_TextComposerReply_Night_9_en",20273,], -["libraries.textcomposer_TextComposerSimpleNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerSimpleNotEncrypted_Night_0_en",20273,], -["libraries.textcomposer_TextComposerSimple_Day_0_en","libraries.textcomposer_TextComposerSimple_Night_0_en",20273,], -["libraries.textcomposer_TextComposerVoiceNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerVoiceNotEncrypted_Night_0_en",20273,], +["libraries.textcomposer_TextComposerAddCaption_Day_0_en","libraries.textcomposer_TextComposerAddCaption_Night_0_en",20294,], +["libraries.textcomposer_TextComposerCaption_Day_0_en","libraries.textcomposer_TextComposerCaption_Night_0_en",20294,], +["libraries.textcomposer_TextComposerEditCaption_Day_0_en","libraries.textcomposer_TextComposerEditCaption_Night_0_en",20294,], +["libraries.textcomposer_TextComposerEditNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerEditNotEncrypted_Night_0_en",20294,], +["libraries.textcomposer_TextComposerEdit_Day_0_en","libraries.textcomposer_TextComposerEdit_Night_0_en",20294,], +["libraries.textcomposer_TextComposerFormattingNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerFormattingNotEncrypted_Night_0_en",20294,], +["libraries.textcomposer_TextComposerFormatting_Day_0_en","libraries.textcomposer_TextComposerFormatting_Night_0_en",20294,], +["libraries.textcomposer_TextComposerLinkDialogCreateLinkWithoutText_Day_0_en","libraries.textcomposer_TextComposerLinkDialogCreateLinkWithoutText_Night_0_en",20294,], +["libraries.textcomposer_TextComposerLinkDialogCreateLink_Day_0_en","libraries.textcomposer_TextComposerLinkDialogCreateLink_Night_0_en",20294,], +["libraries.textcomposer_TextComposerLinkDialogEditLink_Day_0_en","libraries.textcomposer_TextComposerLinkDialogEditLink_Night_0_en",20294,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_0_en",20294,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_10_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_10_en",20294,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_11_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_11_en",20294,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_1_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_1_en",20294,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_2_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_2_en",20294,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_3_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_3_en",20294,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_4_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_4_en",20294,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_5_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_5_en",20294,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_6_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_6_en",20294,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_7_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_7_en",20294,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_8_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_8_en",20294,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_9_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_9_en",20294,], +["libraries.textcomposer_TextComposerReply_Day_0_en","libraries.textcomposer_TextComposerReply_Night_0_en",20294,], +["libraries.textcomposer_TextComposerReply_Day_10_en","libraries.textcomposer_TextComposerReply_Night_10_en",20294,], +["libraries.textcomposer_TextComposerReply_Day_11_en","libraries.textcomposer_TextComposerReply_Night_11_en",20294,], +["libraries.textcomposer_TextComposerReply_Day_1_en","libraries.textcomposer_TextComposerReply_Night_1_en",20294,], +["libraries.textcomposer_TextComposerReply_Day_2_en","libraries.textcomposer_TextComposerReply_Night_2_en",20294,], +["libraries.textcomposer_TextComposerReply_Day_3_en","libraries.textcomposer_TextComposerReply_Night_3_en",20294,], +["libraries.textcomposer_TextComposerReply_Day_4_en","libraries.textcomposer_TextComposerReply_Night_4_en",20294,], +["libraries.textcomposer_TextComposerReply_Day_5_en","libraries.textcomposer_TextComposerReply_Night_5_en",20294,], +["libraries.textcomposer_TextComposerReply_Day_6_en","libraries.textcomposer_TextComposerReply_Night_6_en",20294,], +["libraries.textcomposer_TextComposerReply_Day_7_en","libraries.textcomposer_TextComposerReply_Night_7_en",20294,], +["libraries.textcomposer_TextComposerReply_Day_8_en","libraries.textcomposer_TextComposerReply_Night_8_en",20294,], +["libraries.textcomposer_TextComposerReply_Day_9_en","libraries.textcomposer_TextComposerReply_Night_9_en",20294,], +["libraries.textcomposer_TextComposerSimpleNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerSimpleNotEncrypted_Night_0_en",20294,], +["libraries.textcomposer_TextComposerSimple_Day_0_en","libraries.textcomposer_TextComposerSimple_Night_0_en",20294,], +["libraries.textcomposer_TextComposerVoiceNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerVoiceNotEncrypted_Night_0_en",20294,], ["libraries.textcomposer_TextComposerVoice_Day_0_en","libraries.textcomposer_TextComposerVoice_Night_0_en",0,], ["libraries.designsystem.theme.components_TextDark_Text_en","",0,], -["libraries.designsystem.components.dialogs_TextFieldDialogWithError_Day_0_en","libraries.designsystem.components.dialogs_TextFieldDialogWithError_Night_0_en",20273,], -["libraries.designsystem.components.dialogs_TextFieldDialog_Day_0_en","libraries.designsystem.components.dialogs_TextFieldDialog_Night_0_en",20273,], +["libraries.designsystem.components.dialogs_TextFieldDialogWithError_Day_0_en","libraries.designsystem.components.dialogs_TextFieldDialogWithError_Night_0_en",20294,], +["libraries.designsystem.components.dialogs_TextFieldDialog_Day_0_en","libraries.designsystem.components.dialogs_TextFieldDialog_Night_0_en",20294,], ["libraries.designsystem.components.list_TextFieldListItemEmpty_Text_field_List_item_-_empty_List_items_en","",0,], ["libraries.designsystem.components.list_TextFieldListItemTextFieldValue_Text_field_List_item_-_textfieldvalue_List_items_en","",0,], ["libraries.designsystem.components.list_TextFieldListItem_Text_field_List_item_-_text_List_items_en","",0,], @@ -1273,14 +1263,14 @@ export const screenshots = [ ["libraries.mediaviewer.impl.local.txt_TextFileContentView_Day_3_en","libraries.mediaviewer.impl.local.txt_TextFileContentView_Night_3_en",0,], ["libraries.textcomposer.components_TextFormatting_Day_0_en","libraries.textcomposer.components_TextFormatting_Night_0_en",0,], ["libraries.designsystem.theme.components_TextLight_Text_en","",0,], -["libraries.designsystem.theme.components.previews_TimePickerHorizontal_DateTime_pickers_en","",20273,], -["libraries.designsystem.theme.components.previews_TimePickerVerticalDark_DateTime_pickers_en","",20273,], -["libraries.designsystem.theme.components.previews_TimePickerVerticalLight_DateTime_pickers_en","",20273,], +["libraries.designsystem.theme.components.previews_TimePickerHorizontal_DateTime_pickers_en","",20294,], +["libraries.designsystem.theme.components.previews_TimePickerVerticalDark_DateTime_pickers_en","",20294,], +["libraries.designsystem.theme.components.previews_TimePickerVerticalLight_DateTime_pickers_en","",20294,], ["features.messages.impl.timeline.components_TimelineEventTimestampView_Day_0_en","features.messages.impl.timeline.components_TimelineEventTimestampView_Night_0_en",0,], ["features.messages.impl.timeline.components_TimelineEventTimestampView_Day_1_en","features.messages.impl.timeline.components_TimelineEventTimestampView_Night_1_en",0,], ["features.messages.impl.timeline.components_TimelineEventTimestampView_Day_2_en","features.messages.impl.timeline.components_TimelineEventTimestampView_Night_2_en",0,], -["features.messages.impl.timeline.components_TimelineEventTimestampView_Day_3_en","features.messages.impl.timeline.components_TimelineEventTimestampView_Night_3_en",20273,], -["features.messages.impl.timeline.components_TimelineEventTimestampView_Day_4_en","features.messages.impl.timeline.components_TimelineEventTimestampView_Night_4_en",20273,], +["features.messages.impl.timeline.components_TimelineEventTimestampView_Day_3_en","features.messages.impl.timeline.components_TimelineEventTimestampView_Night_3_en",20294,], +["features.messages.impl.timeline.components_TimelineEventTimestampView_Day_4_en","features.messages.impl.timeline.components_TimelineEventTimestampView_Night_4_en",20294,], ["features.messages.impl.timeline.components_TimelineEventTimestampView_Day_5_en","features.messages.impl.timeline.components_TimelineEventTimestampView_Night_5_en",0,], ["features.messages.impl.timeline.components_TimelineEventTimestampView_Day_6_en","features.messages.impl.timeline.components_TimelineEventTimestampView_Night_6_en",0,], ["features.messages.impl.timeline.components_TimelineEventTimestampView_Day_7_en","features.messages.impl.timeline.components_TimelineEventTimestampView_Night_7_en",0,], @@ -1290,18 +1280,18 @@ export const screenshots = [ ["features.messages.impl.timeline.components.event_TimelineItemAudioView_Day_2_en","features.messages.impl.timeline.components.event_TimelineItemAudioView_Night_2_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemAudioView_Day_3_en","features.messages.impl.timeline.components.event_TimelineItemAudioView_Night_3_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemAudioView_Day_4_en","features.messages.impl.timeline.components.event_TimelineItemAudioView_Night_4_en",0,], -["features.messages.impl.timeline.components_TimelineItemCallNotifyView_Day_0_en","features.messages.impl.timeline.components_TimelineItemCallNotifyView_Night_0_en",20273,], +["features.messages.impl.timeline.components_TimelineItemCallNotifyView_Day_0_en","features.messages.impl.timeline.components_TimelineItemCallNotifyView_Night_0_en",20294,], ["features.messages.impl.timeline.components.virtual_TimelineItemDaySeparatorView_Day_0_en","features.messages.impl.timeline.components.virtual_TimelineItemDaySeparatorView_Night_0_en",0,], ["features.messages.impl.timeline.components.virtual_TimelineItemDaySeparatorView_Day_1_en","features.messages.impl.timeline.components.virtual_TimelineItemDaySeparatorView_Night_1_en",0,], -["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_0_en",20273,], -["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_1_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_1_en",20273,], -["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_2_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_2_en",20273,], -["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_3_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_3_en",20273,], -["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_4_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_4_en",20273,], -["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_5_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_5_en",20273,], -["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_6_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_6_en",20273,], -["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_7_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_7_en",20273,], -["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_8_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_8_en",20273,], +["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_0_en",20294,], +["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_1_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_1_en",20294,], +["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_2_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_2_en",20294,], +["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_3_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_3_en",20294,], +["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_4_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_4_en",20294,], +["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_5_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_5_en",20294,], +["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_6_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_6_en",20294,], +["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_7_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_7_en",20294,], +["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_8_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_8_en",20294,], ["features.messages.impl.timeline.components_TimelineItemEventRowDisambiguated_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowDisambiguated_Night_0_en",0,], ["features.messages.impl.timeline.components_TimelineItemEventRowForDirectRoom_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowForDirectRoom_Night_0_en",0,], ["features.messages.impl.timeline.components_TimelineItemEventRowLongSenderName_en","",0,], @@ -1309,18 +1299,18 @@ export const screenshots = [ ["features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_0_en",0,], ["features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_1_en","features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_1_en",0,], ["features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_2_en","features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_2_en",0,], -["features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_3_en","features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_3_en",20273,], -["features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_4_en","features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_4_en",20273,], +["features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_3_en","features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_3_en",20294,], +["features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_4_en","features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_4_en",20294,], ["features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_5_en","features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_5_en",0,], ["features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_6_en","features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_6_en",0,], -["features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_7_en","features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_7_en",20273,], -["features.messages.impl.timeline.components_TimelineItemEventRowUtd_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowUtd_Night_0_en",20273,], -["features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Night_0_en",20273,], +["features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_7_en","features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_7_en",20294,], +["features.messages.impl.timeline.components_TimelineItemEventRowUtd_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowUtd_Night_0_en",20294,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Night_0_en",20294,], ["features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Night_0_en",0,], ["features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Day_1_en","features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Night_1_en",0,], ["features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Day_2_en","features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Night_2_en",0,], -["features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Night_0_en",20273,], -["features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_1_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Night_1_en",20273,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Night_0_en",20294,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_1_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Night_1_en",20294,], ["features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Night_0_en",0,], ["features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_1_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Night_1_en",0,], ["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_0_en",0,], @@ -1329,40 +1319,40 @@ export const screenshots = [ ["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_1_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_1_en",0,], ["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_2_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_2_en",0,], ["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_3_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_3_en",0,], -["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_4_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_4_en",20273,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_4_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_4_en",20294,], ["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_5_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_5_en",0,], ["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_6_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_6_en",0,], ["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_7_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_7_en",0,], -["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_8_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_8_en",20273,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_8_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_8_en",20294,], ["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_9_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_9_en",0,], ["features.messages.impl.timeline.components_TimelineItemEventRow_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRow_Night_0_en",0,], -["features.messages.impl.timeline.components_TimelineItemEventTimestampBelow_en","",20273,], +["features.messages.impl.timeline.components_TimelineItemEventTimestampBelow_en","",20294,], ["features.messages.impl.timeline.components.event_TimelineItemFileView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemFileView_Night_0_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemFileView_Day_1_en","features.messages.impl.timeline.components.event_TimelineItemFileView_Night_1_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemFileView_Day_2_en","features.messages.impl.timeline.components.event_TimelineItemFileView_Night_2_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemFileView_Day_3_en","features.messages.impl.timeline.components.event_TimelineItemFileView_Night_3_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemFileView_Day_4_en","features.messages.impl.timeline.components.event_TimelineItemFileView_Night_4_en",0,], -["features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentCollapse_Day_0_en","features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentCollapse_Night_0_en",20273,], -["features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentExpanded_Day_0_en","features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentExpanded_Night_0_en",20273,], -["features.messages.impl.timeline.components.event_TimelineItemImageViewHideMediaContent_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemImageViewHideMediaContent_Night_0_en",20273,], +["features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentCollapse_Day_0_en","features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentCollapse_Night_0_en",20294,], +["features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentExpanded_Day_0_en","features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentExpanded_Night_0_en",20294,], +["features.messages.impl.timeline.components.event_TimelineItemImageViewHideMediaContent_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemImageViewHideMediaContent_Night_0_en",20294,], ["features.messages.impl.timeline.components.event_TimelineItemImageView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemImageView_Night_0_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemImageView_Day_1_en","features.messages.impl.timeline.components.event_TimelineItemImageView_Night_1_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemImageView_Day_2_en","features.messages.impl.timeline.components.event_TimelineItemImageView_Night_2_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemImageView_Day_3_en","features.messages.impl.timeline.components.event_TimelineItemImageView_Night_3_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemInformativeView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemInformativeView_Night_0_en",0,], -["features.messages.impl.timeline.components.event_TimelineItemLegacyCallInviteView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemLegacyCallInviteView_Night_0_en",20273,], +["features.messages.impl.timeline.components.event_TimelineItemLegacyCallInviteView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemLegacyCallInviteView_Night_0_en",20294,], ["features.messages.impl.timeline.components.event_TimelineItemLocationView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemLocationView_Night_0_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemLocationView_Day_1_en","features.messages.impl.timeline.components.event_TimelineItemLocationView_Night_1_en",0,], -["features.messages.impl.timeline.components.event_TimelineItemPollView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemPollView_Night_0_en",20273,], -["features.messages.impl.timeline.components.event_TimelineItemPollView_Day_1_en","features.messages.impl.timeline.components.event_TimelineItemPollView_Night_1_en",20273,], -["features.messages.impl.timeline.components.event_TimelineItemPollView_Day_2_en","features.messages.impl.timeline.components.event_TimelineItemPollView_Night_2_en",20273,], -["features.messages.impl.timeline.components.event_TimelineItemPollView_Day_3_en","features.messages.impl.timeline.components.event_TimelineItemPollView_Night_3_en",20273,], -["features.messages.impl.timeline.components_TimelineItemReactionsLayout_Day_0_en","features.messages.impl.timeline.components_TimelineItemReactionsLayout_Night_0_en",20273,], +["features.messages.impl.timeline.components.event_TimelineItemPollView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemPollView_Night_0_en",20294,], +["features.messages.impl.timeline.components.event_TimelineItemPollView_Day_1_en","features.messages.impl.timeline.components.event_TimelineItemPollView_Night_1_en",20294,], +["features.messages.impl.timeline.components.event_TimelineItemPollView_Day_2_en","features.messages.impl.timeline.components.event_TimelineItemPollView_Night_2_en",20294,], +["features.messages.impl.timeline.components.event_TimelineItemPollView_Day_3_en","features.messages.impl.timeline.components.event_TimelineItemPollView_Night_3_en",20294,], +["features.messages.impl.timeline.components_TimelineItemReactionsLayout_Day_0_en","features.messages.impl.timeline.components_TimelineItemReactionsLayout_Night_0_en",20294,], ["features.messages.impl.timeline.components_TimelineItemReactionsViewFew_Day_0_en","features.messages.impl.timeline.components_TimelineItemReactionsViewFew_Night_0_en",0,], -["features.messages.impl.timeline.components_TimelineItemReactionsViewIncoming_Day_0_en","features.messages.impl.timeline.components_TimelineItemReactionsViewIncoming_Night_0_en",20273,], -["features.messages.impl.timeline.components_TimelineItemReactionsViewOutgoing_Day_0_en","features.messages.impl.timeline.components_TimelineItemReactionsViewOutgoing_Night_0_en",20273,], +["features.messages.impl.timeline.components_TimelineItemReactionsViewIncoming_Day_0_en","features.messages.impl.timeline.components_TimelineItemReactionsViewIncoming_Night_0_en",20294,], +["features.messages.impl.timeline.components_TimelineItemReactionsViewOutgoing_Day_0_en","features.messages.impl.timeline.components_TimelineItemReactionsViewOutgoing_Night_0_en",20294,], ["features.messages.impl.timeline.components_TimelineItemReactionsView_Day_0_en","features.messages.impl.timeline.components_TimelineItemReactionsView_Night_0_en",0,], -["features.messages.impl.timeline.components.virtual_TimelineItemReadMarkerView_Day_0_en","features.messages.impl.timeline.components.virtual_TimelineItemReadMarkerView_Night_0_en",20273,], +["features.messages.impl.timeline.components.virtual_TimelineItemReadMarkerView_Day_0_en","features.messages.impl.timeline.components.virtual_TimelineItemReadMarkerView_Night_0_en",20294,], ["features.messages.impl.timeline.components.receipt_TimelineItemReadReceiptView_Day_0_en","features.messages.impl.timeline.components.receipt_TimelineItemReadReceiptView_Night_0_en",0,], ["features.messages.impl.timeline.components.receipt_TimelineItemReadReceiptView_Day_1_en","features.messages.impl.timeline.components.receipt_TimelineItemReadReceiptView_Night_1_en",0,], ["features.messages.impl.timeline.components.receipt_TimelineItemReadReceiptView_Day_2_en","features.messages.impl.timeline.components.receipt_TimelineItemReadReceiptView_Night_2_en",0,], @@ -1371,8 +1361,8 @@ export const screenshots = [ ["features.messages.impl.timeline.components.receipt_TimelineItemReadReceiptView_Day_5_en","features.messages.impl.timeline.components.receipt_TimelineItemReadReceiptView_Night_5_en",0,], ["features.messages.impl.timeline.components.receipt_TimelineItemReadReceiptView_Day_6_en","features.messages.impl.timeline.components.receipt_TimelineItemReadReceiptView_Night_6_en",0,], ["features.messages.impl.timeline.components.receipt_TimelineItemReadReceiptView_Day_7_en","features.messages.impl.timeline.components.receipt_TimelineItemReadReceiptView_Night_7_en",0,], -["features.messages.impl.timeline.components.event_TimelineItemRedactedView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemRedactedView_Night_0_en",20273,], -["features.messages.impl.timeline.components.virtual_TimelineItemRoomBeginningView_Day_0_en","features.messages.impl.timeline.components.virtual_TimelineItemRoomBeginningView_Night_0_en",20273,], +["features.messages.impl.timeline.components.event_TimelineItemRedactedView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemRedactedView_Night_0_en",20294,], +["features.messages.impl.timeline.components.virtual_TimelineItemRoomBeginningView_Day_0_en","features.messages.impl.timeline.components.virtual_TimelineItemRoomBeginningView_Night_0_en",20294,], ["features.messages.impl.timeline.components_TimelineItemStateEventRow_Day_0_en","features.messages.impl.timeline.components_TimelineItemStateEventRow_Night_0_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemStateView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemStateView_Night_0_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemStickerView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemStickerView_Night_0_en",0,], @@ -1387,8 +1377,8 @@ export const screenshots = [ ["features.messages.impl.timeline.components.event_TimelineItemTextView_Day_3_en","features.messages.impl.timeline.components.event_TimelineItemTextView_Night_3_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemTextView_Day_4_en","features.messages.impl.timeline.components.event_TimelineItemTextView_Night_4_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemTextView_Day_5_en","features.messages.impl.timeline.components.event_TimelineItemTextView_Night_5_en",0,], -["features.messages.impl.timeline.components.event_TimelineItemUnknownView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemUnknownView_Night_0_en",20273,], -["features.messages.impl.timeline.components.event_TimelineItemVideoViewHideMediaContent_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemVideoViewHideMediaContent_Night_0_en",20273,], +["features.messages.impl.timeline.components.event_TimelineItemUnknownView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemUnknownView_Night_0_en",20294,], +["features.messages.impl.timeline.components.event_TimelineItemVideoViewHideMediaContent_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemVideoViewHideMediaContent_Night_0_en",20294,], ["features.messages.impl.timeline.components.event_TimelineItemVideoView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemVideoView_Night_0_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemVideoView_Day_1_en","features.messages.impl.timeline.components.event_TimelineItemVideoView_Night_1_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemVideoView_Day_2_en","features.messages.impl.timeline.components.event_TimelineItemVideoView_Night_2_en",0,], @@ -1411,75 +1401,75 @@ export const screenshots = [ ["features.messages.impl.timeline.components.event_TimelineItemVoiceView_Day_9_en","features.messages.impl.timeline.components.event_TimelineItemVoiceView_Night_9_en",0,], ["features.messages.impl.timeline.components.virtual_TimelineLoadingMoreIndicator_Day_0_en","features.messages.impl.timeline.components.virtual_TimelineLoadingMoreIndicator_Night_0_en",0,], ["features.messages.impl.timeline.components.event_TimelineVideoWithCaptionRow_Day_0_en","features.messages.impl.timeline.components.event_TimelineVideoWithCaptionRow_Night_0_en",0,], -["features.messages.impl.timeline_TimelineViewMessageShield_Day_0_en","features.messages.impl.timeline_TimelineViewMessageShield_Night_0_en",20273,], -["features.messages.impl.timeline_TimelineView_Day_0_en","features.messages.impl.timeline_TimelineView_Night_0_en",20273,], +["features.messages.impl.timeline_TimelineViewMessageShield_Day_0_en","features.messages.impl.timeline_TimelineViewMessageShield_Night_0_en",20294,], +["features.messages.impl.timeline_TimelineView_Day_0_en","features.messages.impl.timeline_TimelineView_Night_0_en",20294,], ["features.messages.impl.timeline_TimelineView_Day_10_en","features.messages.impl.timeline_TimelineView_Night_10_en",0,], -["features.messages.impl.timeline_TimelineView_Day_11_en","features.messages.impl.timeline_TimelineView_Night_11_en",20273,], -["features.messages.impl.timeline_TimelineView_Day_12_en","features.messages.impl.timeline_TimelineView_Night_12_en",20273,], -["features.messages.impl.timeline_TimelineView_Day_13_en","features.messages.impl.timeline_TimelineView_Night_13_en",20273,], -["features.messages.impl.timeline_TimelineView_Day_14_en","features.messages.impl.timeline_TimelineView_Night_14_en",20273,], -["features.messages.impl.timeline_TimelineView_Day_15_en","features.messages.impl.timeline_TimelineView_Night_15_en",20273,], -["features.messages.impl.timeline_TimelineView_Day_16_en","features.messages.impl.timeline_TimelineView_Night_16_en",20273,], -["features.messages.impl.timeline_TimelineView_Day_17_en","features.messages.impl.timeline_TimelineView_Night_17_en",20273,], -["features.messages.impl.timeline_TimelineView_Day_1_en","features.messages.impl.timeline_TimelineView_Night_1_en",20273,], +["features.messages.impl.timeline_TimelineView_Day_11_en","features.messages.impl.timeline_TimelineView_Night_11_en",20294,], +["features.messages.impl.timeline_TimelineView_Day_12_en","features.messages.impl.timeline_TimelineView_Night_12_en",20294,], +["features.messages.impl.timeline_TimelineView_Day_13_en","features.messages.impl.timeline_TimelineView_Night_13_en",20294,], +["features.messages.impl.timeline_TimelineView_Day_14_en","features.messages.impl.timeline_TimelineView_Night_14_en",20294,], +["features.messages.impl.timeline_TimelineView_Day_15_en","features.messages.impl.timeline_TimelineView_Night_15_en",20294,], +["features.messages.impl.timeline_TimelineView_Day_16_en","features.messages.impl.timeline_TimelineView_Night_16_en",20294,], +["features.messages.impl.timeline_TimelineView_Day_17_en","features.messages.impl.timeline_TimelineView_Night_17_en",20294,], +["features.messages.impl.timeline_TimelineView_Day_1_en","features.messages.impl.timeline_TimelineView_Night_1_en",20294,], ["features.messages.impl.timeline_TimelineView_Day_2_en","features.messages.impl.timeline_TimelineView_Night_2_en",0,], ["features.messages.impl.timeline_TimelineView_Day_3_en","features.messages.impl.timeline_TimelineView_Night_3_en",0,], -["features.messages.impl.timeline_TimelineView_Day_4_en","features.messages.impl.timeline_TimelineView_Night_4_en",20273,], +["features.messages.impl.timeline_TimelineView_Day_4_en","features.messages.impl.timeline_TimelineView_Night_4_en",20294,], ["features.messages.impl.timeline_TimelineView_Day_5_en","features.messages.impl.timeline_TimelineView_Night_5_en",0,], -["features.messages.impl.timeline_TimelineView_Day_6_en","features.messages.impl.timeline_TimelineView_Night_6_en",20273,], +["features.messages.impl.timeline_TimelineView_Day_6_en","features.messages.impl.timeline_TimelineView_Night_6_en",20294,], ["features.messages.impl.timeline_TimelineView_Day_7_en","features.messages.impl.timeline_TimelineView_Night_7_en",0,], -["features.messages.impl.timeline_TimelineView_Day_8_en","features.messages.impl.timeline_TimelineView_Night_8_en",20273,], +["features.messages.impl.timeline_TimelineView_Day_8_en","features.messages.impl.timeline_TimelineView_Night_8_en",20294,], ["features.messages.impl.timeline_TimelineView_Day_9_en","features.messages.impl.timeline_TimelineView_Night_9_en",0,], ["libraries.designsystem.components.avatar.internal_TombstonedRoomAvatar_Avatars_en","",0,], ["libraries.designsystem.theme.components_TopAppBarStr_App_Bars_en","",0,], ["libraries.designsystem.theme.components_TopAppBar_App_Bars_en","",0,], -["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_0_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_0_en",20273,], -["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_1_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_1_en",20273,], -["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_2_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_2_en",20273,], -["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_3_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_3_en",20273,], -["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_4_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_4_en",20273,], -["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_5_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_5_en",20273,], -["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_6_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_6_en",20273,], -["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_7_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_7_en",20273,], +["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_0_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_0_en",20294,], +["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_1_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_1_en",20294,], +["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_2_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_2_en",20294,], +["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_3_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_3_en",20294,], +["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_4_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_4_en",20294,], +["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_5_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_5_en",20294,], +["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_6_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_6_en",20294,], +["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_7_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_7_en",20294,], ["features.messages.impl.typing_TypingNotificationView_Day_0_en","features.messages.impl.typing_TypingNotificationView_Night_0_en",0,], -["features.messages.impl.typing_TypingNotificationView_Day_1_en","features.messages.impl.typing_TypingNotificationView_Night_1_en",20273,], -["features.messages.impl.typing_TypingNotificationView_Day_2_en","features.messages.impl.typing_TypingNotificationView_Night_2_en",20273,], -["features.messages.impl.typing_TypingNotificationView_Day_3_en","features.messages.impl.typing_TypingNotificationView_Night_3_en",20273,], -["features.messages.impl.typing_TypingNotificationView_Day_4_en","features.messages.impl.typing_TypingNotificationView_Night_4_en",20273,], -["features.messages.impl.typing_TypingNotificationView_Day_5_en","features.messages.impl.typing_TypingNotificationView_Night_5_en",20273,], -["features.messages.impl.typing_TypingNotificationView_Day_6_en","features.messages.impl.typing_TypingNotificationView_Night_6_en",20273,], +["features.messages.impl.typing_TypingNotificationView_Day_1_en","features.messages.impl.typing_TypingNotificationView_Night_1_en",20294,], +["features.messages.impl.typing_TypingNotificationView_Day_2_en","features.messages.impl.typing_TypingNotificationView_Night_2_en",20294,], +["features.messages.impl.typing_TypingNotificationView_Day_3_en","features.messages.impl.typing_TypingNotificationView_Night_3_en",20294,], +["features.messages.impl.typing_TypingNotificationView_Day_4_en","features.messages.impl.typing_TypingNotificationView_Night_4_en",20294,], +["features.messages.impl.typing_TypingNotificationView_Day_5_en","features.messages.impl.typing_TypingNotificationView_Night_5_en",20294,], +["features.messages.impl.typing_TypingNotificationView_Day_6_en","features.messages.impl.typing_TypingNotificationView_Night_6_en",20294,], ["features.messages.impl.typing_TypingNotificationView_Day_7_en","features.messages.impl.typing_TypingNotificationView_Night_7_en",0,], ["features.messages.impl.typing_TypingNotificationView_Day_8_en","features.messages.impl.typing_TypingNotificationView_Night_8_en",0,], ["libraries.designsystem.atomic.atoms_UnreadIndicatorAtom_Day_0_en","libraries.designsystem.atomic.atoms_UnreadIndicatorAtom_Night_0_en",0,], -["libraries.matrix.ui.components_UnresolvedUserRow_en","",20273,], +["libraries.matrix.ui.components_UnresolvedUserRow_en","",20294,], ["libraries.matrix.ui.components_UnsavedAvatar_Day_0_en","libraries.matrix.ui.components_UnsavedAvatar_Night_0_en",0,], ["libraries.designsystem.components.avatar.internal_UserAvatarColors_Day_0_en","libraries.designsystem.components.avatar.internal_UserAvatarColors_Night_0_en",0,], -["features.roomdetails.impl.notificationsettings_UserDefinedRoomNotificationSettingsView_Day_0_en","features.roomdetails.impl.notificationsettings_UserDefinedRoomNotificationSettingsView_Night_0_en",20273,], -["features.createroom.impl.components_UserListView_Day_0_en","features.createroom.impl.components_UserListView_Night_0_en",20273,], -["features.createroom.impl.components_UserListView_Day_1_en","features.createroom.impl.components_UserListView_Night_1_en",20273,], -["features.createroom.impl.components_UserListView_Day_2_en","features.createroom.impl.components_UserListView_Night_2_en",20273,], +["features.roomdetails.impl.notificationsettings_UserDefinedRoomNotificationSettingsView_Day_0_en","features.roomdetails.impl.notificationsettings_UserDefinedRoomNotificationSettingsView_Night_0_en",20294,], +["features.createroom.impl.components_UserListView_Day_0_en","features.createroom.impl.components_UserListView_Night_0_en",20294,], +["features.createroom.impl.components_UserListView_Day_1_en","features.createroom.impl.components_UserListView_Night_1_en",20294,], +["features.createroom.impl.components_UserListView_Day_2_en","features.createroom.impl.components_UserListView_Night_2_en",20294,], ["features.createroom.impl.components_UserListView_Day_3_en","features.createroom.impl.components_UserListView_Night_3_en",0,], ["features.createroom.impl.components_UserListView_Day_4_en","features.createroom.impl.components_UserListView_Night_4_en",0,], ["features.createroom.impl.components_UserListView_Day_5_en","features.createroom.impl.components_UserListView_Night_5_en",0,], ["features.createroom.impl.components_UserListView_Day_6_en","features.createroom.impl.components_UserListView_Night_6_en",0,], -["features.createroom.impl.components_UserListView_Day_7_en","features.createroom.impl.components_UserListView_Night_7_en",20273,], +["features.createroom.impl.components_UserListView_Day_7_en","features.createroom.impl.components_UserListView_Night_7_en",20294,], ["features.createroom.impl.components_UserListView_Day_8_en","features.createroom.impl.components_UserListView_Night_8_en",0,], -["features.createroom.impl.components_UserListView_Day_9_en","features.createroom.impl.components_UserListView_Night_9_en",20273,], +["features.createroom.impl.components_UserListView_Day_9_en","features.createroom.impl.components_UserListView_Night_9_en",20294,], ["features.preferences.impl.user_UserPreferences_Day_0_en","features.preferences.impl.user_UserPreferences_Night_0_en",0,], ["features.preferences.impl.user_UserPreferences_Day_1_en","features.preferences.impl.user_UserPreferences_Night_1_en",0,], ["features.preferences.impl.user_UserPreferences_Day_2_en","features.preferences.impl.user_UserPreferences_Night_2_en",0,], -["features.userprofile.shared_UserProfileHeaderSectionWithVerificationViolation_Day_0_en","features.userprofile.shared_UserProfileHeaderSectionWithVerificationViolation_Night_0_en",20273,], -["features.userprofile.shared_UserProfileHeaderSection_Day_0_en","features.userprofile.shared_UserProfileHeaderSection_Night_0_en",20273,], -["features.userprofile.shared_UserProfileView_Day_0_en","features.userprofile.shared_UserProfileView_Night_0_en",20273,], -["features.userprofile.shared_UserProfileView_Day_1_en","features.userprofile.shared_UserProfileView_Night_1_en",20273,], -["features.userprofile.shared_UserProfileView_Day_2_en","features.userprofile.shared_UserProfileView_Night_2_en",20273,], -["features.userprofile.shared_UserProfileView_Day_3_en","features.userprofile.shared_UserProfileView_Night_3_en",20273,], -["features.userprofile.shared_UserProfileView_Day_4_en","features.userprofile.shared_UserProfileView_Night_4_en",20273,], -["features.userprofile.shared_UserProfileView_Day_5_en","features.userprofile.shared_UserProfileView_Night_5_en",20273,], -["features.userprofile.shared_UserProfileView_Day_6_en","features.userprofile.shared_UserProfileView_Night_6_en",20273,], -["features.userprofile.shared_UserProfileView_Day_7_en","features.userprofile.shared_UserProfileView_Night_7_en",20273,], -["features.userprofile.shared_UserProfileView_Day_8_en","features.userprofile.shared_UserProfileView_Night_8_en",20273,], -["features.userprofile.shared_UserProfileView_Day_9_en","features.userprofile.shared_UserProfileView_Night_9_en",20273,], +["features.userprofile.shared_UserProfileHeaderSectionWithVerificationViolation_Day_0_en","features.userprofile.shared_UserProfileHeaderSectionWithVerificationViolation_Night_0_en",20294,], +["features.userprofile.shared_UserProfileHeaderSection_Day_0_en","features.userprofile.shared_UserProfileHeaderSection_Night_0_en",20294,], +["features.userprofile.shared_UserProfileView_Day_0_en","features.userprofile.shared_UserProfileView_Night_0_en",20294,], +["features.userprofile.shared_UserProfileView_Day_1_en","features.userprofile.shared_UserProfileView_Night_1_en",20294,], +["features.userprofile.shared_UserProfileView_Day_2_en","features.userprofile.shared_UserProfileView_Night_2_en",20294,], +["features.userprofile.shared_UserProfileView_Day_3_en","features.userprofile.shared_UserProfileView_Night_3_en",20294,], +["features.userprofile.shared_UserProfileView_Day_4_en","features.userprofile.shared_UserProfileView_Night_4_en",20294,], +["features.userprofile.shared_UserProfileView_Day_5_en","features.userprofile.shared_UserProfileView_Night_5_en",20294,], +["features.userprofile.shared_UserProfileView_Day_6_en","features.userprofile.shared_UserProfileView_Night_6_en",20294,], +["features.userprofile.shared_UserProfileView_Day_7_en","features.userprofile.shared_UserProfileView_Night_7_en",20294,], +["features.userprofile.shared_UserProfileView_Day_8_en","features.userprofile.shared_UserProfileView_Night_8_en",20294,], +["features.userprofile.shared_UserProfileView_Day_9_en","features.userprofile.shared_UserProfileView_Night_9_en",20294,], ["features.verifysession.impl.ui_VerificationUserProfileContent_Day_0_en","features.verifysession.impl.ui_VerificationUserProfileContent_Night_0_en",0,], ["libraries.designsystem.ruler_VerticalRuler_Day_0_en","libraries.designsystem.ruler_VerticalRuler_Night_0_en",0,], ["libraries.mediaviewer.impl.gallery.ui_VideoItemView_Day_0_en","libraries.mediaviewer.impl.gallery.ui_VideoItemView_Night_0_en",0,], @@ -1487,7 +1477,7 @@ export const screenshots = [ ["features.viewfolder.impl.file_ViewFileView_Day_0_en","features.viewfolder.impl.file_ViewFileView_Night_0_en",0,], ["features.viewfolder.impl.file_ViewFileView_Day_1_en","features.viewfolder.impl.file_ViewFileView_Night_1_en",0,], ["features.viewfolder.impl.file_ViewFileView_Day_2_en","features.viewfolder.impl.file_ViewFileView_Night_2_en",0,], -["features.viewfolder.impl.file_ViewFileView_Day_3_en","features.viewfolder.impl.file_ViewFileView_Night_3_en",20273,], +["features.viewfolder.impl.file_ViewFileView_Day_3_en","features.viewfolder.impl.file_ViewFileView_Night_3_en",20294,], ["features.viewfolder.impl.file_ViewFileView_Day_4_en","features.viewfolder.impl.file_ViewFileView_Night_4_en",0,], ["features.viewfolder.impl.file_ViewFileView_Day_5_en","features.viewfolder.impl.file_ViewFileView_Night_5_en",0,], ["features.viewfolder.impl.folder_ViewFolderView_Day_0_en","features.viewfolder.impl.folder_ViewFolderView_Night_0_en",0,], @@ -1506,6 +1496,6 @@ export const screenshots = [ ["libraries.textcomposer.components_VoiceMessageRecording_Day_0_en","libraries.textcomposer.components_VoiceMessageRecording_Night_0_en",0,], ["libraries.textcomposer.components_VoiceMessage_Day_0_en","libraries.textcomposer.components_VoiceMessage_Night_0_en",0,], ["libraries.designsystem.components.media_WaveformPlaybackView_Day_0_en","libraries.designsystem.components.media_WaveformPlaybackView_Night_0_en",0,], -["features.ftue.impl.welcome_WelcomeView_Day_0_en","features.ftue.impl.welcome_WelcomeView_Night_0_en",20273,], +["features.ftue.impl.welcome_WelcomeView_Day_0_en","features.ftue.impl.welcome_WelcomeView_Night_0_en",20294,], ["libraries.designsystem.ruler_WithRulers_Day_0_en","libraries.designsystem.ruler_WithRulers_Night_0_en",0,], ]; diff --git a/settings.gradle.kts b/settings.gradle.kts index f523b72fec..dd4bdd0ad4 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -18,22 +18,6 @@ pluginManagement { dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { - // Snapshot versions - maven { - url = URI("https://s01.oss.sonatype.org/content/repositories/snapshots") - content { - includeModule("org.matrix.rustcomponents", "sdk-android") - includeModule("io.element.android", "wysiwyg") - includeModule("io.element.android", "wysiwyg-compose") - } - } - // To have immediate access to Rust SDK versions without a sync with Maven Central - maven { - url = URI("https://s01.oss.sonatype.org/content/repositories/releases") - content { - includeModule("org.matrix.rustcomponents", "sdk-android") - } - } google() mavenCentral() maven { diff --git a/tests/konsist/src/test/kotlin/io/element/android/tests/konsist/KonsistPreviewTest.kt b/tests/konsist/src/test/kotlin/io/element/android/tests/konsist/KonsistPreviewTest.kt index a45791a6d0..d34dabcb9f 100644 --- a/tests/konsist/src/test/kotlin/io/element/android/tests/konsist/KonsistPreviewTest.kt +++ b/tests/konsist/src/test/kotlin/io/element/android/tests/konsist/KonsistPreviewTest.kt @@ -78,8 +78,6 @@ class KonsistPreviewTest { "MessagesReactionButtonAddPreview", "MessagesReactionButtonExtraPreview", "MessagesViewWithIdentityChangePreview", - "PageTitleWithIconFullPreview", - "PageTitleWithIconMinimalPreview", "PendingMemberRowWithLongNamePreview", "PinUnlockViewInAppPreview", "PollAnswerViewDisclosedNotSelectedPreview", diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_0_en.png index 37c1c0d3dd..e1d8aac1d2 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6d041ccfbc86d63b0fe5278cd0e159b83c4ed93619fe819812db0e0b1f804cba -size 67499 +oid sha256:661a3636249353b60997e1921f5d5eddf663cdfb0e4fbc4bd29f988300dd4e73 +size 66141 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_10_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_10_en.png index a0405de061..7daf035b2e 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_10_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_10_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1d87598df6e41f7a5f9ec593c7f2f871bd03f715f6cf82d558afdcd0390779f4 -size 34856 +oid sha256:04f9b401754eb8c094a2ea9d3f11232988ba7a398b1247c5ff2a4308b447bf7f +size 33538 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_11_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_11_en.png index 383a63a053..4b3c75190c 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_11_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_11_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7652e5adf2e4c49cd58d8b43e9919fe66092c9d94f796f346d0dd19035a4087e -size 29650 +oid sha256:ff169318bdf21a2e857f5da6bd7c7e51fab308eb048dbe2ea9c37b20436cb466 +size 28313 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_13_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_13_en.png index 2f750bd8dd..64652b42b2 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_13_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_13_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:af1b0c8c909e1c632044598f45ad2ad1ec2d7e872faba6b21cd9fe251430e39a -size 90818 +oid sha256:2e1ebc6005af897f9ce727059475e5700a54e711c7c83b7bffcd57c06b3d0b56 +size 89446 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_14_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_14_en.png index f4a38ac8a8..a5d360492a 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_14_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_14_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0afc7b3be1ad7b4b3d46adb4909601215a1dde8c88239fc266a72da98d21a611 -size 85337 +oid sha256:15b211365c06295c7316cc5ab572afc321f16d209ebfc92323484344e75d5f41 +size 83905 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_15_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_15_en.png index f2bfc00624..b385823b22 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_15_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_15_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:24181364fd522d425376ac9908b961d3d70e5ae49d7687128488fa37545ba4ea -size 52416 +oid sha256:cd1b535f162b88262ec96e80f4ef8ee74e88e4f61e2ffcac2faeb0131f32c7e0 +size 51214 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_1_en.png index e8fb9cf117..ffd80d437d 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f049f06d4e3ca6dbdad51e6caf7a66049a89667e742f49c3c67105abb0de2c85 -size 69393 +oid sha256:eadbd396f27f94958aa22fbfbf080e202ecedd0e405b0656b2a7e911bbae5a36 +size 68091 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_2_en.png index 37c1c0d3dd..e1d8aac1d2 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6d041ccfbc86d63b0fe5278cd0e159b83c4ed93619fe819812db0e0b1f804cba -size 67499 +oid sha256:661a3636249353b60997e1921f5d5eddf663cdfb0e4fbc4bd29f988300dd4e73 +size 66141 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_3_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_3_en.png index a3821ebf22..654b904236 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8a51ef76695aa73dc7983acec273299c5c07702003ca6d24f440a4209586f08b -size 69306 +oid sha256:eb923fffd20dc775f31b998e23c39acf79013a831a7c292c4cdba5b9142b4094 +size 68227 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_5_en.png index 37c1c0d3dd..e1d8aac1d2 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6d041ccfbc86d63b0fe5278cd0e159b83c4ed93619fe819812db0e0b1f804cba -size 67499 +oid sha256:661a3636249353b60997e1921f5d5eddf663cdfb0e4fbc4bd29f988300dd4e73 +size 66141 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_9_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_9_en.png index 1c551cee96..c2359f044e 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_9_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_9_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b0976e30537f03ed52b8940ca7721dd63b9dbc0672fc60845c8e55c995ea77b4 -size 85151 +oid sha256:1e57a40ae5989991ca1580bdf88f6f430cc0c40cef5a6c2ec982dc2a021bc68a +size 83711 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_0_en.png index f2499902bc..dcbb6edfd5 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:638845a573295211928850aec992ffca936e917c2775690669aaccf130ce6891 -size 62900 +oid sha256:934ca33803e0c259082090b0632b3c467b58d60a4ac9540d135396914fd6cd59 +size 61758 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_10_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_10_en.png index 951cc992b3..c4d42ecc7b 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_10_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_10_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cc2f55966cbed7d62576ae696596296f74786caf2337ec32ed887b13a7f841f5 -size 30181 +oid sha256:1bdd37d73f63da216690c5b80e756dd762dbc30579a0a72211a0f3eddb8d4724 +size 29189 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_11_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_11_en.png index 6444e473c9..c3633597ac 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_11_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_11_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5c4266fe4825dc0a239dcd34b776214740887814794eee06cdbfbcc57d3fb064 -size 24565 +oid sha256:be4efeee741e29c4b3bbe4ed6c42805707a981b7b2e38e52e0f335fc8224a68c +size 23510 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_13_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_13_en.png index e12303bfcd..ec8a46398e 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_13_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_13_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ae9fc613169ae54f0e7d72ee78c8e1c28b9b2429b6a9bfbf662554289d0df56b -size 85590 +oid sha256:9eb0778d018d3b5461d01f5c35d77219a8187e8fa2fa76612387d38c33a79475 +size 84512 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_14_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_14_en.png index 26306e72e7..6d3fcd05e5 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_14_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_14_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8a1f705af5cd8e9db7e269cb4ace8b8352711d1014535ef8d182a3dff8c47687 -size 80097 +oid sha256:393fb7260f8e0cd27bd728bd0c73c60da6e49f4e9f2713e13db013db87dac980 +size 78998 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_15_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_15_en.png index c88b897037..55a73a7fc0 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_15_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_15_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:aa2ac7dbc98197a38f48634f15c89f8808253cbd3124b92f787a72be91bc4828 -size 47199 +oid sha256:1bfd358c8d6db4b4325b736dce576f6a1975cc8c6c62cd8ccc6ed66bc9b2d421 +size 46235 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_1_en.png index b5aa72ef13..bb9167d18f 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e49a252ad59229ab9b2754851f99826b1c6f4c612881951fb3a9bce1468dd959 -size 64543 +oid sha256:18137269ca278a53dd22ffae400b493a971db75c76fcf04a3d34e8a5e649e399 +size 63570 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_2_en.png index f2499902bc..dcbb6edfd5 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:638845a573295211928850aec992ffca936e917c2775690669aaccf130ce6891 -size 62900 +oid sha256:934ca33803e0c259082090b0632b3c467b58d60a4ac9540d135396914fd6cd59 +size 61758 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_3_en.png index fcbf73e833..6324eecb45 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:37bc4c42b7aec686984e086a282112c041d585b4cb9a7d492ee0f25470289241 -size 65244 +oid sha256:a9066615bfa2f78b77784302ce0272e3a486c79e267629c50c35ec1221c58046 +size 64443 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_5_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_5_en.png index f2499902bc..dcbb6edfd5 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:638845a573295211928850aec992ffca936e917c2775690669aaccf130ce6891 -size 62900 +oid sha256:934ca33803e0c259082090b0632b3c467b58d60a4ac9540d135396914fd6cd59 +size 61758 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_9_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_9_en.png index 9014e32f96..bee099f14c 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_9_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_9_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:db71fdd1f3c7ca7f6d5e238ab959aeaf4c1ec3558c649aaf101182b716b6d869 -size 80093 +oid sha256:348734ee8875ecdfdba9f23da503ffbbe4530d2602a6a254d451617cdb860bb1 +size 78996 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_0_en.png index db910993cf..91eaf04fdf 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e2d9c34ddfcb745a18a26dce9303c1208329f081f4ad1c67fcd394541cdfaca3 -size 20167 +oid sha256:6bcb8fda48dcc881adeeac61de5a400a3b0c680e49d0c620c4e3f6d0f5f588a3 +size 18871 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_1_en.png index d8b285e71d..bdae902238 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1f42226557021bcf58eb0049b43427d44067a534d00c9a4a92b4a468e0580997 -size 35756 +oid sha256:2f6fb5e1bc57b140df88bcd285fdf9e3796f4d21c375acce904797e9a3ede71f +size 34923 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_2_en.png index 8d3f26311c..bb3ee4a575 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:40b31eaaca9bf16a5ec5564369f0aa787e3c9e946debcce73175a7a9758528ea -size 34050 +oid sha256:277a912dd731d105ea03ba24a7202cf2bdfed57f9c6a27e8358df1c85f33eb96 +size 33222 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_3_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_3_en.png index db910993cf..91eaf04fdf 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e2d9c34ddfcb745a18a26dce9303c1208329f081f4ad1c67fcd394541cdfaca3 -size 20167 +oid sha256:6bcb8fda48dcc881adeeac61de5a400a3b0c680e49d0c620c4e3f6d0f5f588a3 +size 18871 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_4_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_4_en.png index 3f1ed0ff94..a085b75607 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Day_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c97c5feaf589f42a5b183eacdbde8d130cd4bae93daab467d60a1a9c4025386e -size 20252 +oid sha256:252bacdc626446536bbe5bbe065792315aa416add8991f79b1631525db61a604 +size 18897 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_0_en.png index aa7d556646..b09e438715 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:892239fde8809ae0e1f8b59f36c934cc43c94d197662364d890585b4f60ef1ad -size 19518 +oid sha256:beeaa7a30a198726a5294f44f9440ca5000b7da5e74b88c54e53ef97f0e31176 +size 18453 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_1_en.png index b63dc91528..c80f327660 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d5b5e4ee6eda67992beacf2f2d497a46a372c95695939488e56ad3a2f5bc6ee0 -size 33614 +oid sha256:b86c470adc660d88bf11263353243ce0c3fe858381b0b109f18f28fc2f35dcfb +size 33004 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_2_en.png index e780203e40..2fdbad7772 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:60f3d5d49b0b6152b2a68aded2bd9634d7b2c9318ca42b0d1c7edfded2c582f4 -size 32219 +oid sha256:c5b9625374061b4332df7b174f245843b617d17864d842619521c11a77a9b7d2 +size 31607 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_3_en.png index aa7d556646..b09e438715 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:892239fde8809ae0e1f8b59f36c934cc43c94d197662364d890585b4f60ef1ad -size 19518 +oid sha256:beeaa7a30a198726a5294f44f9440ca5000b7da5e74b88c54e53ef97f0e31176 +size 18453 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_4_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_4_en.png index a4a62ba2e7..e26a92f96b 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.send_SendLocationView_Night_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f5371c68c8f37abcc750807d24172cec499032ba01d3de60b32f5eafd81ff534 -size 19760 +oid sha256:74ac6eb7a37f58e2a6e420aae97e1569122c6aeb87174dd4b394600101989f4f +size 18562 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_0_en.png index d484968f39..3a99ad6504 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:53da1803ba3f47dc835a82a52487ca2e7cec285c4651837430720a3c00274655 -size 12129 +oid sha256:172d4db4569e62d86700a3279ab77d44c7dcdde4104de04f54e242019825070e +size 10898 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_1_en.png index 7c2023b830..97493f205d 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:88ba6efbc5a752de4c2468e8a957b24bd79ec8594e35bacc5f27a7645a432421 -size 30503 +oid sha256:a3b823ca981b2c215789ba8c1e90a4757a2098242af40d506f2a55d673a6ac34 +size 29632 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_2_en.png index 374728ca6a..35b659225d 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:41820d7e434e0a5af29dcfc3fcfe118a9d504c5ba1dca32026bd04b5fcda6ffe -size 28863 +oid sha256:d93b38ba580a87e0e4c0ed7959a5980861f52adfcd93c8fbcb27a68c91b729e8 +size 28023 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_3_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_3_en.png index d484968f39..3a99ad6504 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:53da1803ba3f47dc835a82a52487ca2e7cec285c4651837430720a3c00274655 -size 12129 +oid sha256:172d4db4569e62d86700a3279ab77d44c7dcdde4104de04f54e242019825070e +size 10898 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_4_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_4_en.png index 65bf4223a3..688a2ba53a 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7ba3ec0aa2268d2512a95fa9008baa5ca567a29d05376bf91262ff08c0686539 -size 12296 +oid sha256:0e7cf8b5488bb9be85472624374a0f01e2778a6673072973efeda2cfac8fc561 +size 10954 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_5_en.png index 1deb0e5928..28fdec1a4b 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ff515e0da1a57182966e9d46f3a6532c0c84a3f9b50ec31b0489b78ec77ca853 -size 15894 +oid sha256:77cb14dccf577cc84a941f5ca4d87f47dcd5c7869bb4b10cbe707b304342fc9a +size 14663 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_6_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_6_en.png index 2af1ea1586..a6bf47c6ee 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1146c7ceb204d2e45652cb17918196bd29ad75f62d97a58533a2eda076eb999f -size 24489 +oid sha256:18ac37da80709d837fa300551c80e7e3985b77984e1ced7f7c7cdd63fdadb51e +size 23339 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_7_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_7_en.png index e9ec889f76..4dbd6d6522 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Day_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c5ba5f2f842d786ec30b98651d4adcc8fc5ed24a3754352490a095a78d40dd1e -size 26846 +oid sha256:78829ed95462f458b9a3a7a13568a6862fb26a70d9bc0552a003802aef56ccdd +size 25672 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_0_en.png index 8112eb063d..68ff78ab39 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3d0368a621d6da4d6989f269cefdc5305f474c5275b20cd2b6df6ad6322c9d23 -size 11589 +oid sha256:e159645fc99b3c96ce5d8ad9df26fa84108e0b7bd21fb6077a385f9678151a06 +size 10561 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_1_en.png index abe7c4fa4c..f9afd6d093 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f320685885792f6f677a97618655565df41b6f574760dc9029af099311ef23b1 -size 28594 +oid sha256:6b195d14b9e652adc3c37b2e2ce07e5ef4dd88a67ee497f08e05a3afd12e893d +size 27952 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_2_en.png index 53f34af2b4..b7a58e7649 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d0ffa8f0d5cd2185ec4ad2a52992ebceb4e5d066f79228a94e530da17cf20ea8 -size 27206 +oid sha256:1f9564315f3187f21b40206259fc9c094753cef5d95c58bfccc3535d0a9822ca +size 26564 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_3_en.png index 8112eb063d..68ff78ab39 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3d0368a621d6da4d6989f269cefdc5305f474c5275b20cd2b6df6ad6322c9d23 -size 11589 +oid sha256:e159645fc99b3c96ce5d8ad9df26fa84108e0b7bd21fb6077a385f9678151a06 +size 10561 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_4_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_4_en.png index b11d08401e..d8e434abca 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8b79aae2fb29e493a66c7c62631d846fff152aa83b41bf8c83cf45f9e74b4af3 -size 11760 +oid sha256:112f058e1d823a5c72cc819d18ea2aa9d2e5d4e22e94ee4102b99ab98b7ccd2c +size 10589 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_5_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_5_en.png index 7e344d0218..32ec1a8027 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7b65884ce154dd3d08589d4a035c710c42610f7b7c3f6d9b830e05e72d166d7c -size 15073 +oid sha256:937b757427895edb268608d72227d0acf673b2ac1ce85390d78f6d24babad44f +size 14042 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_6_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_6_en.png index dc6ce7bf77..3e7c3e51cf 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bdcf502d7406cc8b92f8600e046691e0b76134f3193dbb16d7e3af06e3ed2e19 -size 23477 +oid sha256:eefd330bb57abb201c6afa55db7e3d3879cdc84b9c4f67f89077190ca3c7e580 +size 22510 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_7_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_7_en.png index 9879343643..8d50de84bf 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.show_ShowLocationView_Night_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a7f86a135e2778eb533f42a228e993203c67106ab62800df03c9e2f0a01eb078 -size 25991 +oid sha256:24d5d358b3958736e5114cb1c3564f9388e8035cb14ceb7378c27c435920625a +size 25008 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_0_en.png index 26cc9156db..cc83d715a5 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0420404d363d85a0a1215ac8d11f474e148294d6b4818acb65ab6196536c61f9 -size 55243 +oid sha256:44ee0d9df9d0890ed7bc23a912fb0437d2619de123c9e03c0b22b3df6ece8a66 +size 55274 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_1_en.png index 23ec952c31..a3e03a6e84 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9fced59a8634cae33f42a73cfa1eb2f89ffbec5317622eaf0b1f777ac7eb271b -size 63693 +oid sha256:b683037a407c9f03321019e561cb7549654e219744ce6b2ef985c8c244e1062c +size 63735 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_2_en.png index b00dbcfad9..c0a997520c 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e31c7c892a67cf0f36ad2ba20cc87771d59e8165bdfb1bd3fb0adfc53dd79509 -size 64042 +oid sha256:414e0b655eefd3b77aca05bc3c889393988993f6d2950c8fa32fb358dd5142bb +size 64097 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_0_en.png index 9e80004b76..a5873d3247 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2ba3d44f3ab519ae5e2b85a6b93f14c7c38e8ea8cc52baba03e9efef1bcb1145 -size 54197 +oid sha256:75affc911bf8cf1e428a72992daf8ecc7ffad53ea5bc792c7748df4cd345ec66 +size 54215 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_1_en.png index 4b12c797b8..1743dd2b2d 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:38f24750122c90c71d78000c749a6fae6d440bd3c6b3031cae638c5826f627e9 -size 66323 +oid sha256:cf7884787b718448cb700292fc2cb96f0a8bdf1ee1cfac00dbd96d5858cadfcb +size 66332 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_2_en.png index bc0653ed4b..a69ef9da9e 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:136f087952cc1f7ef024dfcc84668107e76c2adf8984715ef3c42ebeea68686f -size 65837 +oid sha256:616acb83f23f245945487c8da64612b13da64dd8d770d95c0ee4a0fb3f8941b2 +size 65858 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.pinned.list_PinnedMessagesListView_Day_3_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.pinned.list_PinnedMessagesListView_Day_3_en.png index 55d9a9f41e..c72e5281b0 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.pinned.list_PinnedMessagesListView_Day_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.pinned.list_PinnedMessagesListView_Day_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a7711aa43b9c18e15475dcf1a8972dcd5a7d60441991584dd9be70648e83f072 -size 43636 +oid sha256:05680e495870f9701ef9b92d3b111296d0cc2f30a05e8e57fbbb4d7982e1b78b +size 43781 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.pinned.list_PinnedMessagesListView_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.pinned.list_PinnedMessagesListView_Night_3_en.png index 1ca14953bf..594e01c426 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.pinned.list_PinnedMessagesListView_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.pinned.list_PinnedMessagesListView_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:865cdad040d77b82ab7f8d4151595b7843b2d74dea5a8e5a5516ccafb344b5f4 -size 42502 +oid sha256:31c7cbedd2db05b01eb699fbb945a66da36c1b96c5cbeb543b4dafc857e66332 +size 42402 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components.event_TimelineImageWithCaptionRow_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components.event_TimelineImageWithCaptionRow_Day_0_en.png index 446ca5cbff..e90a2ee418 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components.event_TimelineImageWithCaptionRow_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components.event_TimelineImageWithCaptionRow_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3c3a0afd6986943481bff9de80e38a603b0682e8d391da52859cb7691f3c47ca -size 612888 +oid sha256:91e38af6f75f8805b2bc255b29ba8526a49b3a33abb53736d9a7550fa06d1054 +size 612933 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components.event_TimelineImageWithCaptionRow_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components.event_TimelineImageWithCaptionRow_Night_0_en.png index 8aef2143fd..573072c17b 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components.event_TimelineImageWithCaptionRow_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components.event_TimelineImageWithCaptionRow_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9d8f46b60243bab1c969723c14bb43020fb84cad4a8c69e7cc2712e2306efc96 -size 611660 +oid sha256:2bc647e8658b976f535da75c08ff31bf4dec9ca04b512d106c8f96ef588ad8b0 +size 611597 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components.event_TimelineVideoWithCaptionRow_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components.event_TimelineVideoWithCaptionRow_Day_0_en.png index e899c7d79c..a6e3b1d7d0 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components.event_TimelineVideoWithCaptionRow_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components.event_TimelineVideoWithCaptionRow_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bb05880b161ebad9cb5c3f78ff217e9ee64e3d6bc07996e32966d9a3f0a2e30c -size 608283 +oid sha256:d1543e20bb97f4525f9cb3921e9fb94c452d123522aaaa647f79c9109d550f90 +size 608297 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components.event_TimelineVideoWithCaptionRow_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components.event_TimelineVideoWithCaptionRow_Night_0_en.png index 78afe10f31..c16d67a18f 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components.event_TimelineVideoWithCaptionRow_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components.event_TimelineVideoWithCaptionRow_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:80bca1e6c13e4e345a60b53f6c0479a17aeb05f42f3c13a9dc933e0e6d1d7b3a -size 606934 +oid sha256:63d6fc8f1eb986d90ddfca21d680f0a36e0adf564b7e97cc7c408a4b0718623f +size 606884 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_0_en.png index a76b26e9aa..de9062dac4 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b491cce2773778b379853898e495301778fc97bc31e045360b39a2b09f29f844 -size 5789 +oid sha256:32b70aaf3747146d15170e3fbb895149cfad2970b844960923c0fbf8bcad6e39 +size 5874 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_1_en.png index 65909d6d48..1ffa2cc17c 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:675122178c926902a7c6b92ca15b7652a3099de144b9f990c7ef8a495e41b148 -size 5833 +oid sha256:0696cb82f83cf91e95707d35f633317b8128ea751afba1fb8229b185556c6587 +size 5864 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_2_en.png index 67df9853a1..27a70058ce 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6b5981fda0fd6d7016f77c4fe9955690f2d6dab5825f320f1795d3fd460ffa63 -size 6076 +oid sha256:889863eaed9c999de2586d4f8df5db3a4eddb9d0077ab09bebbf2dd63ee041bf +size 6233 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_3_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_3_en.png index 5b61d53e6d..76b275648b 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a9b027e16bf586857cad161205b7ca0445932d00c1f6b630dc50126394233153 -size 6192 +oid sha256:5687e299672d26be37b5ee1f7a11b67e753ba9246a8f5076b3abedec897febc9 +size 6225 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_4_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_4_en.png index d5ef562f0e..651654b949 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3fe1e1da27262a08ed7c59d7c0951e72836b26ec554688f0426ac9a38f436d0f -size 5846 +oid sha256:1d2119771268eb81c50c6a097e43adfb83d0679279ac28ba536fd0c450ecb486 +size 5960 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_5_en.png index ef512ba6ed..ed90405af2 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8022a0fc45eca8d244a4aa2ddaa25e50c1ff03ad380f39c4c4693b8cfc978148 -size 5902 +oid sha256:84f011b0ee113b227047c0eb9108583d8f648c9117c9dce0d2e3d639f5c750c3 +size 5931 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_6_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_6_en.png index e20b582e84..5c906c4c6b 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2e1a2505f900b21e0396bee6733b5ce9170fddd9c15038f121abbbe30ae95281 -size 6076 +oid sha256:83a2d4f6a5c3a86ed789381591beb2f270053d6107c479a03e68754eb3fb97db +size 6231 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_7_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_7_en.png index f20043707f..4f4b739583 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Day_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cb5c7bdb55eaa8b5cd532b3b1b60158a18c4f13f559b1b6040807696343b8775 -size 6096 +oid sha256:1a5cb430ce35b786d7f1d5d89d409fc7fc5a210e54cbc39ee47910518acc0a2b +size 6125 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_0_en.png index c58b83d0ef..adcb699a79 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c98e2c35da18aaa8f5fce58515e86f171cc4df8787d34ae3b1a9567d49c4137e -size 5924 +oid sha256:b2d00f19fe0d71b1edd594b90bb00faacfc9565837cc3323db672ad376f27988 +size 5895 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_1_en.png index b75dd051f0..8e5200bd00 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d8ec24f4135061fbf08aebd29b4b7d8bf3f988bf3b0d28bf602410afcc4a80f4 -size 5815 +oid sha256:47fd34633151ac8724029aa5c8b8807e0f9f3bb71e5ef2d35fd05fe0ceacd3b6 +size 5789 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_2_en.png index 373431a91f..bdbccbc21c 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d86a47bcce5e883f2b94b98258fa7c944532d96f0db518d3bba4365cfde530ed -size 6222 +oid sha256:6f9db269f9de8fd6213a3ec4bb24768a89f96a374a93cf3500da2df94bb10b0e +size 6192 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_3_en.png index ffbd6b1195..3941a7df9a 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:afff10df66307d03f037911b93d58396ab401e020cb74952a4ef76d8564a6cde -size 6167 +oid sha256:fd537c28a1c6f5681ff5471c587ffa0a55792cff425e4f49a5bb59003ad335d3 +size 6154 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_4_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_4_en.png index 80a74dbf26..76c696fb88 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9e0d88f051140b6a31b3007b6ab92f9ba742f7c2de60dc3924a05834533e0e96 -size 5976 +oid sha256:0e973dfb6238a8d4ccd1bababd5a3c0d390d6720fcf73018817ea6db44bf53cc +size 5966 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_5_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_5_en.png index 499fde9e32..35b8913ade 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:44113dd74f49efb18cb98b363c8ff01323cdd8aada466560a8360205732e56d5 -size 5906 +oid sha256:db616c5cae7808d2b4e2a0f4f65182ef350337fbd5d11d04fd37f5158d356db9 +size 5880 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_6_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_6_en.png index 5c5992d39f..c501438fb3 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f47934caa1ed08f3c3a9f70830367b7180f5a2e658d4b6c99f39e339f51dcddd -size 6235 +oid sha256:f16325dc77f6ffe2f469bcd444166979e2429dcfb3d700bf189d2851f796d096 +size 6204 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_7_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_7_en.png index c77cfeda16..995334fb27 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_MessageEventBubble_Night_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a13158fb8eec57147ce15ca8ed29ca485986b99fe4f2801ab166bf6b90cc586d -size 6110 +oid sha256:91025387dfef79d9ef70e57396582edd315c8bf5c8ae25b5be101bc85e78c26d +size 6071 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowDisambiguated_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowDisambiguated_Day_0_en.png index 9fdcbf7e6c..11a8b4ca78 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowDisambiguated_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowDisambiguated_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6693e2e93d21c61c1e3bb6b57bdfca788b8e98aaebf861a5a3ad594344441195 -size 379233 +oid sha256:7706aebd2512d75e011e127811497336a17c1dfdf94931e191f89d3014a77a2e +size 379232 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowDisambiguated_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowDisambiguated_Night_0_en.png index bac357c0b8..c5a26cd80e 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowDisambiguated_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowDisambiguated_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:10fafb2e4788ab76d609e74babe55048b44440d8bc6cfd35e78e8337a210b240 -size 377760 +oid sha256:1eeb420b80434bc63d7b7787bf4b48e15ad18b4e15b2e1dd134f99f8f5bf48d2 +size 377677 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowForDirectRoom_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowForDirectRoom_Day_0_en.png index 9f6c3f4cb7..a220540a2e 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowForDirectRoom_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowForDirectRoom_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b3d1789882ff07396fb4daf788437744bb71eaa7cca127fadd1bae3cea343116 -size 294216 +oid sha256:3cf5f0455ed81b8064f58826463249e7fe6c5d7ebf42891afce04c115f239527 +size 294275 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowForDirectRoom_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowForDirectRoom_Night_0_en.png index 5add18e222..7163113a2c 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowForDirectRoom_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowForDirectRoom_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ca042e33785370974388e4949b871c9cd8936f1578f383088c47d12514f8fd46 -size 292986 +oid sha256:5a7a1a3dae59763985f036f39b89018bc9bb5147e917669ba33bbeed402683f4 +size 292994 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowLongSenderName_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowLongSenderName_en.png index bbdd286574..92a85d1a1c 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowLongSenderName_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowLongSenderName_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:839f50a35d5e9f13051a233a4d4bb75cb5de245efd16937b856c6e05768165cd -size 15720 +oid sha256:844f8d01abdf2b008d8d6e9c677e7b522892c60c3db830c7bf2f41e5f4c18e38 +size 15733 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowShield_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowShield_Day_0_en.png index f218ef6eff..728020071f 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowShield_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowShield_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:660bd025d6cdd9a9cc43309276c46cf14f2567322d849e7ccf99d1741cece894 -size 377499 +oid sha256:221fc058299533d340de75f04f652fef92ac590e4b31a327bd67c0492d1dc5a6 +size 377516 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowShield_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowShield_Night_0_en.png index 18cb5301bb..1600a170a9 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowShield_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowShield_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:daf954ba004cd67f85913e8ff4215a0d32bcba8726179ed77bfd8c9557ce3ddc -size 375420 +oid sha256:640aef6c2483ca23e05cc3055821bd037be83943f1867ba07563d9d22dd06782 +size 375323 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_0_en.png index 07bcfd74dd..2248cd494f 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cd8fe1751c30b5cbc6a9d31227da02b0eb647fed993134ecdfee360f68198410 -size 28544 +oid sha256:0bcaf92b6e3c6d74045c7cc226efbc498ba1efa4d7009d73c3f53e8acba01891 +size 28586 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_1_en.png index 5b5bf2452e..a9d157bb6e 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f2ab83152164617d6a76f84fcb92bc6c16e102c58fb489bb504b3c914a326a20 -size 31111 +oid sha256:eeb5a28de705129910e796a1d3d7ce0ca05f4777cf8d76959b2148654f8a316b +size 31179 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_2_en.png index 8a84354ddb..3028fce4ee 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:500cf2222f5f0d35a7773f42de8f547bd6a81e447dd5ca383ba3d0e3ee208c0e -size 30225 +oid sha256:1ecadf0cb602a808172e00dd58b48a9e76e542e02c66ca4da5c8ea8d1464243b +size 30244 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_3_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_3_en.png index 863589bcc1..8045f9b941 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:afc37df583c55bd7ca8295da4dc6148bc5e8fdb01612b2563cdd8108151227ff -size 32541 +oid sha256:94623a7dcdf6f45ccdb5a00d9f7e0a053fd46d162abcdaba36b6c9be49377e3c +size 32572 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_4_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_4_en.png index 7f4ee2edb6..04ccfe028d 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2e50ab664fe28a486af410bbd93074d8d42dfa578627285f8ad22496755f01c5 -size 33929 +oid sha256:64e42f24d80ce0ced9a752a8dc17abdc64339ca2ed5bd88f98a90e89c69267ec +size 33965 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_5_en.png index 18f3b8cbc1..7183f84b0b 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:87f484e7ee64d776f4874883bdac7fc321a04af86e3a29bcc93a4ca2cf2e70aa -size 30666 +oid sha256:3ca0f8009d72814b4ed49b80ad77a35cac2e0eeaa638975886f6a1a4a7f07b34 +size 30709 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_6_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_6_en.png index 10cc5a767f..fa0d88328b 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a7ba63ae1a0d204db4318a0ec1041532e1b0ce2327908f37f494da04c5a5b975 -size 30533 +oid sha256:cfe9afd4b1c6095b6e941f48407dd5bcb72bda30efd5f27c1823cbac2ea43a03 +size 30573 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_7_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_7_en.png index b647981436..441549d22a 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c87881859fcb3b3c08e4e583604ca455e2f178ea605362f255af8950d069095d -size 11267 +oid sha256:63d43cf54b3861c3e956eea93ac9f59dfbc7b80538bdd3dcb398e250c91a9649 +size 11288 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_0_en.png index 12c46fb9d1..325159b99b 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8b03dfd48c56e2d0bb108a147b2ee04cc66c165bce1da7c724e1ecb4ddb4d286 -size 29139 +oid sha256:34f4b9d301ece03c0cd22a6ff11f16b6063440f7df8932609fc3e03a82f1bc4b +size 29060 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_1_en.png index 8c64ac2fa6..d6d221fc08 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:561714bc8011f7f56d89565f1e0e529ea3626aa5162da47058d4469f16af0641 -size 31742 +oid sha256:b706e61ff09429eeaf302b1557749cb18d6b99c27a3f3d5c505f2ab89c9f5d83 +size 31707 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_2_en.png index d91da94837..0a9296626b 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:94e94d793eb718cccc535a58053d5b4dc2de3b65b007017a8c5647112c78cedb -size 30527 +oid sha256:43fb5adcc27a09478c3b1a60ba3d895e3009d56a1c81b5a07148364b470d7dd6 +size 30462 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_3_en.png index 60aee97b69..bb8879a31f 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a9d8e84329989a02b19269f6294b209fb66c5f3f6a35de7f9a2eee6da517dcdf -size 32903 +oid sha256:73fdbcdd1b0eb7bd401292b3b5ff096f60c286d0a88ec3a8c5ddb9e0799e5c62 +size 32845 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_4_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_4_en.png index ca990cae35..8404539fef 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:25d0849402abdc3639c8bef1da49daf4de20124f367b3e1e413b0dcbf53bbff7 -size 33863 +oid sha256:1ecd9efae1644a62192aa369603bf7a0908726682b9476903ebd5d33989fb8c2 +size 33772 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_5_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_5_en.png index 8d28ce67f5..a0aa6b2e91 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ee7292caede2b69969c7f62bf025b3cff5b59ab99eceac51ff041e6fddea9389 -size 31082 +oid sha256:752f7325824bcda2837926a9e002a45bbd4a9c794a480c1c1a1640bd597e3a76 +size 31013 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_6_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_6_en.png index 37791be7d2..908f487ecc 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:898ff20bd42490e66ece05e6b6435ae951b004b69b44855ce9c1f0b0ab06d635 -size 30894 +oid sha256:1a460b47f90a074f1c2d9ad089b9fcf5248e1f6fb621bb24610363efd14c4c5a +size 30803 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_7_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_7_en.png index bcf06c96f2..660d7e9afd 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:14bd470786ea2a00673adec49d674fd2e575512187056a7c3fd56bf7b4140841 -size 11204 +oid sha256:2ce14e39243c2f937e9c5000065853ce8818fb390e22fc84b3cf2fc0da1f4c91 +size 11187 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowUtd_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowUtd_Day_0_en.png index 02e8c70de9..0bf6cb64c8 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowUtd_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowUtd_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8fd4bb89758d8253aabbcfcee28d2b7962c97394fd2c9bd37bfda15dd8b59abe -size 30255 +oid sha256:690013ef0b1d0fb8b3251ff24d4fc6d4d2530dd377510c773f0ce298b85867f9 +size 30261 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowUtd_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowUtd_Night_0_en.png index f9c581a64e..0caea1df29 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowUtd_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowUtd_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6e6b5ee7f8475aa22f47ca7643f6cf93a2f170710859c22e1c71026fdc1721a5 -size 29445 +oid sha256:70a6a9b6fbef047d942b2fe49aa278a7af78715bfc2c05ce7591190a39d2fe4b +size 29448 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Day_0_en.png index d9f727f261..e7f8047cc2 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dc29aa14fd015ea0a4a2783ff553c086b41c86757aae760b64451f78deca9d45 -size 80122 +oid sha256:bdcdf444a40c4ce1f6170dc15c296cfb3bc6b30f781489e37e415f7af1f17471 +size 80130 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Night_0_en.png index d622d385b0..6356c8bab6 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9adab952ced4b0c51b0e3a5eb8c6cc7c8c717d79dc77ae1eeef328119ebcd597 -size 80489 +oid sha256:f11463f5c6c0badf6a17d97f23434bad190d5a4ca4e121b101dee9d6e85f45ed +size 80465 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Day_0_en.png index 3cd2696467..90106f85a9 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7d46bea9b9177b9f9ce4e08d8a33fa0161662c1611d5ffcd2aeb8aae1d1ad441 -size 25553 +oid sha256:d8b65f51d32e7f555d1ba7e54aaccbe47a8bb13ee45d7a26a3766a758f46720b +size 25611 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Day_1_en.png index 197785a217..3830cb6bea 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dc61b0fcd136cc1087dd0449d80930b86b2f8c8440b55b756450ec26829bd9ea -size 25015 +oid sha256:5ae8b74706bb42003824e44e628f89625c817c42bdb281ab1b049ae1be7c275d +size 25086 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Day_2_en.png index f0dd1f8797..407bd5944c 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2b1d4cecb06128bfc3de98a1a927515d2770220927bb11bb4be040c8ac365274 -size 29310 +oid sha256:432b7c3f95f9c42fc99ee723a303cf59b95d3c72101e4e19898af3c7fcac3c73 +size 29370 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Night_0_en.png index 3520dbd9ca..5b3c357381 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e56a10732744eca3e422be7c7509d2e107b0b93b657fba610812d3c351bfabbe -size 25088 +oid sha256:1403595dca2e308643dd797b25608ffe98a71cde76d46fc699e94bdc2342d724 +size 25043 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Night_1_en.png index 9b134ca9cc..cb2b9cd87c 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:55b22ee6757a6cafb99aa4f35601638dc3dac31c09b0369187379c78583b8e1d -size 24533 +oid sha256:d7916dd1c89c713be922c59a05d7d257f4ac5e663f4dc35c033b937f35b1dee7 +size 24512 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Night_2_en.png index a8795e631c..2c3cd83d5b 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithRR_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:25dfa78e2b466c3bb708c3a08dc02ec4428a9cb82fb4339b348eb1009cc46ffb -size 29875 +oid sha256:1f8248f5824a104fdb915f2c969c476d8e51a7e0a7ecbffc823ab7c78e2c61cd +size 29773 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_0_en.png index f100a0416b..bc41330630 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:192f07e6dd138911a30e5bcebf75a68ed59bad006041e9ba2fad809cd8a94f11 -size 364786 +oid sha256:d5894adf767b85d0ab3a6308b1ec0bd52bcf4013935f2073e5247d0411d846de +size 364818 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_1_en.png index f015705293..9491d49d67 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3e4f5b7139fb1759e9e9c17e0911ab9fff66f4ee14545f2f5977a7d1ef8c7aef +oid sha256:a6687e224523ba846ef71140f18fb25892ab3d96a90ba7b9e03ee92a1e7bd802 size 369967 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Night_0_en.png index 76decf4e09..d650746214 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4ea40e231b7a23ca3ececa68672f13a7391fbc7fd3719ba98d67e02d6cfe0034 -size 363024 +oid sha256:7bebd39ffc26e1d824c9f59e2e9dd277c36ac359c46780c80d992bb7ae2c528a +size 362981 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Night_1_en.png index 8884e46a51..dfb9efd20e 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b12cbdf1b95c272f5482c43686ef549801d2c3d5bffd75b6423d6a3225e40efb -size 367997 +oid sha256:88bc5f47ca764f2e43807050f62778d583343ab914374f6e21c18acc5b6f4239 +size 367929 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_0_en.png index c740ebf66f..a914ade36d 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:582fc51bc3449b2796d3efb0211eaf14dc73fa0ca1817e1d53f29586dfc36d3f -size 353092 +oid sha256:336b2ea44dfa6bdaeffe54db8bfb9fe48ce50c2c4310debb41719bbf02136268 +size 353098 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_1_en.png index 9f42bbee34..f07a2aa7fa 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:540912d38358bdea807311e7803397cf402b434f16860ce434aea7751cf2b28e -size 363471 +oid sha256:8acedc421bcf01fc660ba5754306edaecdb4a360569b4ea80f5249898aa91e35 +size 363564 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Night_0_en.png index 85ed81e3d8..d108975f7a 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6eb1b7b869f25e0d505ba9ff8dac4e6b63c4f59e7d8854a20233b8d4d77ac1e9 -size 351780 +oid sha256:9059ed800f424044fff15ff5f72c5703796636792e816179a593b528762f671d +size 351746 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Night_1_en.png index 0b0af20ed0..5f6b9d4d1c 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d41539a90d7f82364dc3599423ad6a1b51e53be0e70df926365694b75dae6b8f -size 361273 +oid sha256:bdfb908e8f191bf7ed080332c2bcc2ac0fb38f8a3b939cf375720f9c86b3d313 +size 361274 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_0_en.png index cd30e4d1e8..beb265eb78 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d086f9df50219d9134d3cab7e4c198d7bac812fe614d2375e80c2e00766d7161 +oid sha256:40256e1c328a205941f99e929d5db1a5dec00fe6dca1bb7e0c8ed518f1941770 size 369509 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_10_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_10_en.png index 84c0c6732a..462627f90c 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_10_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_10_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9d11576c0e48980bf1505d074a84f11170f042abc92cc80c97b92f5d473588d7 -size 354292 +oid sha256:9a0bb3099ebcd6d917853d3190233b790a573f4d41392bc8aa0eae56a4ee71e7 +size 354306 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_11_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_11_en.png index 8aa5dacdce..35136e1675 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_11_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_11_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:77dd4e2eed54c37a022d6a6beab69953cf64fd9725df0b954eb329e647a00036 -size 367658 +oid sha256:4b512d444f40b5e6436a90b1c5cdbd3084857368fdf1a7b6e297cf66f1ee2c36 +size 367669 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_1_en.png index afc2b8cbd0..36b1b8725b 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d1312e7e3a6b0ead94a30e0d4971277305469fbbaa2015df55334c37ac1a0136 -size 344733 +oid sha256:2363e8e8e63aaac9a6374a584acec64e0e41a433211f7938d2c86c8a838b50e5 +size 344730 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_2_en.png index 47dd865024..04259204e5 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0000cca03cefb845bcc349669b40abddbb5567c4f7d79481e1d17edbd1b705e8 -size 357300 +oid sha256:f6aa2745c2f12037d9c87cb50f3f2e193b5ddccf3da9cdc865060967db52d066 +size 357364 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_3_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_3_en.png index d6bb3466d8..76062304cb 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c9f8957975959f22f321edb1da337268630b2035670ea6a7f1d0253ceee23904 -size 356520 +oid sha256:83c4f4b14235c241a235d16ef5ffa17cf5842ff861c890c7809fac62cf218d09 +size 356555 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_4_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_4_en.png index 9a01b3a0c8..6ac470f4cd 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:59865d91c14d22ac51f03c5a89f22998aec74251ba61c0db013e549ef71bf724 -size 364285 +oid sha256:c1f9a0b579e7c5780fbc0276bda172012508dcd0b77b9ff046bad353f07ab5c5 +size 364349 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_5_en.png index ecb2198054..8d84a1b52b 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1a13e340822f9b7faea91575a5fe8d82a078f7dab567d5f3e573c6090d342d79 -size 396959 +oid sha256:7a0d79b9fa9345391a369c5973809e8d48e7f9b5196da4523d13c0a4afdb8efe +size 396995 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_6_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_6_en.png index 387dfc2067..9d040b022b 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9406216df3f9744d7526ef2bfa208abe22796a5e95c1007bcaa6305b7a7e6dd0 -size 355618 +oid sha256:482708e7e6e4576a5202628e37d2d94ae081d780c79dd4246fe99f3b242062cf +size 355635 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_7_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_7_en.png index 59d432c201..f24c7c3d11 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b8369665c1e4e9e6e34a44897d6496946beef7563703bbd64b0dc0182b4f81ed -size 357542 +oid sha256:a87c369c0ece6e72137b89f023516bd196c6dc0a52c4a91382d9aad64ff07712 +size 357555 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_8_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_8_en.png index f433fe1b6c..f700592f36 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_8_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_8_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:71e21fd5b02aa8ae98519996986e3bd28c37353cfa16fd832f83790a0f2946e5 -size 364744 +oid sha256:87bd3f8bf3d4f40bb70c86f67715ebac00c49e2d0721dfca936a053b737b8ae5 +size 364745 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_9_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_9_en.png index a6b63736df..6cb6c8d17f 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_9_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_9_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dbc3ea0006d57682c5a59ccaf873196b6f5c329d300395935e355e50c9f01906 -size 354991 +oid sha256:89fa6aa6f88f6f906b9507839095870b442eb2e790b79f2b8032c61ba4b25db3 +size 355007 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_0_en.png index c9f4dd107d..b2bfc08894 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cdcbd58a833ac5554260389c9d455aec0bc40ac36bcd378d1a47fd3d3e684b24 -size 367589 +oid sha256:fdebf5219cbcccadeab1d73d86427b0c77aa9d415d353e0012e97616a963e791 +size 367502 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_10_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_10_en.png index c1d8902cf8..650412da56 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_10_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_10_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ba5dd0bd237dd41206cfb92cd5d57e7c46710fb532fb447139014b8da811a324 -size 352565 +oid sha256:91a74a085ffc8641f62a4147096e4bbfba1c63322f963451b1c80db03efdbd92 +size 352515 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_11_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_11_en.png index a127b82fa8..6f1615b08e 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_11_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_11_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3f4d22986976b525a4f4ba5a6ad5372ffc0c77f6b3dadbe3989cdb98ead2caf3 -size 365876 +oid sha256:a7a762e97b32ff8b29dddb477670080706e47783d2c138f9cde942f363c9ebb0 +size 365796 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_1_en.png index 1b81a6a6e4..7e996c8c20 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3d551e6c58cebf53fda518877916e13204c52b4db2af3151678546d7b279e14c -size 342627 +oid sha256:9a506332c8630f3fb5d95c875603a744d8d585b38b431b73dd5f7b4496a068fa +size 342499 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_2_en.png index 7330cb98e6..fcd6952667 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:93319839a10d070b61501e95bf3a555b493c21d5e328213373fe9d0c888e07e6 -size 355803 +oid sha256:5d22ea687b00186fa0443ae55e9bc3648724b7b62a946ebec565131a121012a0 +size 355727 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_3_en.png index edc5dd51a7..9ae18fc2d7 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ac9a160d9e58e3bf44a491e4f1e3c37720ffd91d622729750fb8219428dd2085 -size 355002 +oid sha256:bc19ed695e0e04f30c8c564faf8125c533022dc34b6b00aca876e6b4d14d5123 +size 354877 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_4_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_4_en.png index 5176beb76d..add86349af 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ae4443f10013aa72805aa09b36688cceb013012424843b00b6eef0496a66fa7f -size 362403 +oid sha256:43b14c8772936aece5e1262e18a49b122882d8a8f36fa5a5f198bcfd42edba37 +size 362349 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_5_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_5_en.png index 7a41ce872d..5969c8c0b8 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:37e3043ddf1e8fd9db9c156c9cdb88fe236c7f76e166a75871fc388bb448ec07 -size 395179 +oid sha256:6fd6e871656038726f65303a4142cfb58ef01f22f6e7fb6a53a33cd9d464344d +size 395083 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_6_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_6_en.png index f5c45a8b06..0f5c67291a 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2a842b4b9ea2c1b7235444df058d501de4ac57cc7749b30fd91f934502a7429b -size 353792 +oid sha256:a9f87d9c5ebdff07f097d4da3120c9f94d4fd9473afa3b766e74af966222e61f +size 353756 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_7_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_7_en.png index 40f2cae44f..d3e6733ffc 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3b27153819669af47324316fa7b6433b57fc9cf64928de3f9acbfcdd0657d3be -size 356028 +oid sha256:470df261acb510e6eadd1eab53477b5a78ab99f09a02db571d7cf3dad5c97f64 +size 355973 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_8_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_8_en.png index dad70f4bde..88a6193994 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_8_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_8_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:009b303d3bcf767a4cd58172e5b4f21c1a341ed272ff5ca9f62ef349808740dd -size 362905 +oid sha256:111dd5eb1ccb35d9d4642ea4de03544c3aba7448a8a15daa2ec25bce192d18a7 +size 362845 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_9_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_9_en.png index 0cc82f902d..af5f2cd9aa 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_9_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_9_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:434720f8ad2aa0cb2c8fd708cc7467af92e063dc2c3600a3783762e0364592c2 -size 353266 +oid sha256:77cea97ab2a8c6fc1c681c2e5d8af0a6942e5c0c12de6bbab7f4be9fb5985cad +size 353228 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRow_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRow_Day_0_en.png index d4e9b0e675..b6fafba3e4 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRow_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRow_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ff6e3d41cc1d3a51a4a6d48f47407832d838ed135752e200f588cb12062c18c7 -size 412176 +oid sha256:2e02cb452dc3e619e2afcdf2c94ad8b716d3e5e80b5d27a66859b863b5fd8b86 +size 412241 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRow_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRow_Night_0_en.png index 88638ca095..5f0547a439 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRow_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventRow_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dfa4dc6a76b73b8b2d48234676de66eed10750ad2c561a065909d4745ab6f4e5 -size 409878 +oid sha256:6ebc6b904986459cf7884652d72e905433e0e9ccb13312162710eeedeae11dea +size 409801 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventTimestampBelow_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventTimestampBelow_en.png index b86b025e1b..9b132ed38b 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventTimestampBelow_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline.components_TimelineItemEventTimestampBelow_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:544f7bbee71640356001f0242487e5b10e8e69b4e1cc9d336d6ceb388ff97dc4 -size 52410 +oid sha256:c0ba03a72d07287f0ead865f2c75ee8581d11fb600d1a23e9dfe98535bd549dc +size 54560 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineViewMessageShield_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineViewMessageShield_Day_0_en.png index 630f40e5be..f2bb4af132 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineViewMessageShield_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineViewMessageShield_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fc56f6c3203e71a98395f194b020f5a82030947a7bda56299a89adbe8df52486 -size 37383 +oid sha256:b3863a0823b78b3e433c21b0f9b56d64924fde309b72f14957cc3281ea4dda2b +size 37381 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineViewMessageShield_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineViewMessageShield_Night_0_en.png index b2eccb99fe..db86fb642d 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineViewMessageShield_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineViewMessageShield_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b56ad84259529e985235a0e42589ea91544ffce1cea64d0022cb3b3c2c056316 -size 35257 +oid sha256:ee4eb7e9fb67542965b98362ad8eb474a3de6642a9dc54b5379fba5b3a0855c7 +size 35308 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_0_en.png index 26b930d189..42ff3705eb 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:baea5001524ac109a9b74ca933b28b596706263aef7a5702f0c014343ad98ce6 -size 50370 +oid sha256:e609878293147485a244236784c88eea6243804737dbcb0c9f8bd70e93b8657f +size 50389 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_10_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_10_en.png index 64631daa91..914de1c535 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_10_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_10_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1f6b9808cd09f5be5c2468bbed0a51a49933b9dd6151b6326b1845e8e4a046c1 -size 331804 +oid sha256:261ad5bbcaa5239e2dd51f31f8279edb87f87c9c61b7f91b4a337559b7899d50 +size 332483 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_11_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_11_en.png index 639ecf5d05..c618f593b3 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_11_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_11_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5836fb3172f8628993031751a8cebc840167d157776cee7821ac22c84a0db558 -size 85427 +oid sha256:5950211734db7f410b83eae87c6cf5b3f5d78e82e6b41340c3207f96a74f1916 +size 88557 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_12_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_12_en.png index 0c657aab3d..23e6a0f655 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_12_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_12_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a5fed03c9b5212a5b654ae872af03171923c8944ac9fb69ed233e608603439ed -size 51806 +oid sha256:8e2229d4bf9cb162ac67b56a8a8616b02569f0e3ecb3b165547cf48c4900e6b8 +size 51837 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_13_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_13_en.png index 4cc8858d4a..d6add78886 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_13_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_13_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4bb8a5c67177e2f246e07947d242d0395049409992a108f6cde27fa88ac5d2d9 -size 63465 +oid sha256:df900d4b35c48b7c529180af45476729f5c115ae0d86ef533c4df394ae8ed01c +size 63533 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_14_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_14_en.png index 52e77964a7..bfbc700e2a 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_14_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_14_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ca73884d2ce866368e6f4a99de05730bac5994e93e8bfcb933d23784407b801a -size 48178 +oid sha256:4b202206daa54e9e0a0f2ec07df1647ed465e2f4ea1b18cc464ec5f5df540b5b +size 48194 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_15_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_15_en.png index 399523b0d4..d1a1ed0404 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_15_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_15_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fcde38afea018df257c1ee6f6d17ea969b225ff2acd12f5ed9bcb0414134bcd1 -size 64571 +oid sha256:a1345948c769eee7138c467ba2dcb6fb9f2bf938d945f1772491fee7c98c7360 +size 64603 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_16_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_16_en.png index 1d6706e5ba..949d3596c7 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_16_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_16_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cbf93914e100be8c32f20c32067d0b3660f728a46ba8e43e54cbbb3173ead4f0 -size 55352 +oid sha256:d392659e84ee2e86e703347eefe815dfe29b5f09062758a282f33b860fe26697 +size 55419 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_17_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_17_en.png index 13fe72ec55..0e96cfb147 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_17_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_17_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:16937747975115844bcaf9fdb0d94ba04059389704066973664b9f3b0baa0587 -size 64449 +oid sha256:673c8e3eaa8fc079cbad1d5ef04e041a60d9a53b8dc2a8944cec8a098e646b57 +size 64522 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_1_en.png index 5539212fd0..770a9412ad 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e58cfe72872014d51678373b5500b41201728304c301e6ebd855b2241185e453 -size 71228 +oid sha256:ab36d0242c4314f5b3bf95b570beb967d357fb257a52948feaa1487161d24ab8 +size 71298 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_2_en.png index 98dcc8ce3e..2e4e151293 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dd648155ac39ce346b8ebd24657bafcaf3668020798b3d50e814e54addc28bdf -size 493522 +oid sha256:5bfcb61bd15588f9403aa970d37fdb1e548d837dff7795c2dc07584bd891e06d +size 493508 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_3_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_3_en.png index 1cff108025..cd5820eb64 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cf409a30502ffe99c991fc5315b34a1f2cb9ef27ffaaa230512752bd80b32d2f +oid sha256:3595cb2b615672647abd0561d3461f546621dde489166ba2a7cd1c5b9036145e size 488703 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_4_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_4_en.png index 7c65560105..f7ba1f20ab 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3bd60ebe776788f2c31f6b3e4e9b2ba9e814a559b78554175648b31e04c19247 -size 70305 +oid sha256:f56eb9bd4e49cf62ea5c3165c280ff43d2f3d5de7066a7acef2d99c057e4fec8 +size 70367 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_5_en.png index 19395fe493..ff625a5793 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ea3d7407d2b6f544606c72d2e6dc2b93e3bac1b05a5676b7527dc1a8dff37f7d -size 85260 +oid sha256:a1d988e4d0b8ce811ecc080472b83dd8f19f196db0e034761ee62c92b62fe925 +size 85303 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_6_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_6_en.png index f6be876df9..cbaad6b4ab 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8877cec4c29fab0b4dff35ab963907c6ba05e222581ecd6b81375c6f13ca55b5 -size 73416 +oid sha256:788c7fbd665d4115b39c7ca57a6e10d74bcddecf89b763027f7ddbcc11566872 +size 73479 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_7_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_7_en.png index 764e6823e0..df8193914d 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:54f9c6207d148648bb231e3956faeacb2f6a29af9532a4a8fe74e4db91875a52 -size 103802 +oid sha256:00e84588b6e71579652b0d6402b58d6756ad0db2743e53e44ff18ec3aa68a37d +size 103845 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_8_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_8_en.png index 634e179c3c..abd8c3fb53 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_8_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_8_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:18c3c814f0decaac5608be87344c0fe03509ade2072fca88d774e3858424ff38 -size 53443 +oid sha256:a1c46f7ccfccfb4f452660c27d870cf9176a2e80be8ae6ed5900bec5888cef3d +size 53524 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_9_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_9_en.png index 99b46c8576..22d78f4f25 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_9_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Day_9_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1d44e1adc1822f18540039d86d3f70feb2e28313f6ec0a200c039210a59a042b -size 374608 +oid sha256:5fa41f1cedc142cfd11c83dab1423bd8a309a05f27a75b8f2b6ce1cd8aa64324 +size 374684 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_0_en.png index ca75b7ffc0..953dc68d48 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ff353610a0d865141fe4446850b9808aedc4fc5a77cd969c36ece16d56db043e -size 48793 +oid sha256:fd9fd1ca0737f16346e2553e6eba2a8efd116045181fc1ea80c779b1958be0f1 +size 48763 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_10_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_10_en.png index db1284d64d..90bad128df 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_10_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_10_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d324b6bba80d90b3d0130ce9991c24db94293db567c59eb60c3b21fad2a836c9 -size 147491 +oid sha256:0c5dc962697b93571aa17d170a3746173a55d1175a3c1cbd8c01acabf0e754e0 +size 147561 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_11_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_11_en.png index bab14aaa95..77dce8857c 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_11_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_11_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:59b946ba879346a5aafe0e676153a18210c21795e522777402fe3e0f84492010 -size 83873 +oid sha256:eccad19f9bb99219954de67847ec4bb326d81b15f5820f917a63d3f067019e38 +size 83877 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_12_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_12_en.png index c3912c8d99..4d8f468d7f 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_12_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_12_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4578006b80dc375ec02a92c0492fedda5abec8d6a7c52177abe93845173f412e -size 50440 +oid sha256:415e109f86e2da9956f160b03e6647eab75baa091abd614ef109e726087b346b +size 50400 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_13_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_13_en.png index c1a7cd8a0f..78f597cac8 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_13_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_13_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:66d86dea77a4e465d10a00a376cbc29bf19149c201668e62ba5024fecf141f85 -size 61258 +oid sha256:a7895ba95025a269ac42f97f557e8a1ac1b8e00566e541f291bf4880f0a42f83 +size 61196 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_14_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_14_en.png index 695d268064..eb5f2401d1 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_14_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_14_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:369b0e7b00cb45e6b070fe1186b4cd9f9812d0abad644044ffa30577daf9ad44 -size 46739 +oid sha256:62c76580770913eb840adf2fb957a03d15b45c43c3792e85534a110644539868 +size 46755 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_15_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_15_en.png index febd5cd9f1..0fa8d76764 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_15_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_15_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6475ef61b62b2eba410a91ae2b6feba1cafae929a74dc3708292c571de9d70ce -size 62298 +oid sha256:26719c0a3e5bf9ac5f16db30ecad16eba23489c70a6c0ff082a28f7ef1d9a40c +size 62217 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_16_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_16_en.png index fc36fb2d4e..a55011095b 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_16_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_16_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a1187dc1be99b01d5b85a880ccccfc964975541522c1da1f743380e5bcf696f5 -size 53511 +oid sha256:41222a390f6a16f3a5bd1bb5cab1271fa66f1f8c161628a053a031f6a7e9a7f2 +size 53477 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_17_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_17_en.png index 09e856b4cc..d73ddeb9c9 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_17_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_17_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3dad5e6ca53369039ef201ee81e12e38a9b424b761ef6186abd524115a967bc6 -size 63747 +oid sha256:9c6398c7b51809314356449492d3783e188bfb6c02ca57560c1e287cbb6b2124 +size 63668 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_1_en.png index 88f47c09a0..d9512c39a2 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b49442fb577f028b77660c0da14513c83f0d9b9e6099161f8a9dec130cc0f1bb -size 68768 +oid sha256:cc2b222868fc0c0f0a692cb099720fb1b0cb4f3716dec753267d94e6be40615c +size 68773 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_2_en.png index accba88a8e..73aec3b867 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1536c17c73741153a9451f1e2561391836a82c03074e27e0101c6a356f6e2d54 -size 486001 +oid sha256:3ea6985d33e7f26e8ec70d661c29f841184516aa98384078070517857d80d3fc +size 485942 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_3_en.png index 0a3724ca54..5545fd3d18 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c226f25adae0f2f00cd5fa7e0cdc0d19ed6dcd4bfdfa5a69aa59f30e08d93b6c -size 481234 +oid sha256:1f04a9cca6cbe08a6353e0615fa054d5bde107fa7bbf33fa12106c5698361d5a +size 481181 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_4_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_4_en.png index e8c527f3c6..f308c4a06c 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:186dc944f9636338b0659a44ef4808721dccaa8c81ec8edca218648a6a1abba4 -size 68100 +oid sha256:015d56ecc376c81c54d92ffeae2c5a51b4d6e15a1450a1b09260e491a311b6bd +size 68098 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_5_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_5_en.png index 22bf02c8a1..447d402424 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d7f3e1da54bb359ea68ea710b76c1a88f75fd8cfa563e691be22b8a99b30acba -size 82374 +oid sha256:445ff95f251b17d93cdefbf590e9af819b024ad19c1da7e5b95959da0fe541e7 +size 82304 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_6_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_6_en.png index 45dd41a9da..a095f6a494 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:52369d421be039973c3f6bf57877475209c6f28b81765527a5b9fbdf9dc07cdb -size 71512 +oid sha256:86634129b25456bc6c63e3e075b8c0367670fbc91eeaff3b1b485514fc32e44c +size 71479 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_7_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_7_en.png index 982123952f..efc0cd8863 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8af8e7bf6451974bfa903b31f26631d13aa7df35484bc4abf55d2fd9e8e8d1bc -size 100674 +oid sha256:8251ee7a3350fde749713580da32b7bbadbdc920e994276595ccc29578163705 +size 100612 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_8_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_8_en.png index 698c9976f4..25823da7e6 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_8_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_8_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:15c6568b6c7a34fe1c7abf6fcd22946a5575d85171f7d726c1ee71d8e2d6f281 -size 52113 +oid sha256:746f2e5796ca65c013a9f622ce1762514a38b1719d9adeefbdca2eb73bdd74d5 +size 51956 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_9_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_9_en.png index 71a220c992..230c6ab69e 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_9_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.timeline_TimelineView_Night_9_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3557321130ce8c8d7e780686751a85aeae782a160c97f2fc9c9738d97d119b80 -size 152271 +oid sha256:1fa4936204ab75e4867054e33afd1de63a06cfba285a18f2fb54045ce9e993b8 +size 152293 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_0_en.png index 727209dea2..ab41e7493f 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:280f410b6fc24f81eb4a1ba25af7ac534b6cca01241bdebdd12ad887a2bb58bd -size 57628 +oid sha256:b8ad024b7238e57eeefb3edc9a4088332f5bfefcd4496e01859a07289268d375 +size 57654 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_10_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_10_en.png index ad96af8a7b..0f20156c03 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_10_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_10_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cd640f32ee4c7e7ae81e8f5f150d14272f2ff2adc8f7f0e74a0f7bb5293dc9c9 -size 57656 +oid sha256:84fe388b9d09e8c84f5d290731c482dab57c397a5330b7972be0b10cb9327fb0 +size 57677 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_11_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_11_en.png index 977c2eaf2e..1132a67e3b 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_11_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_11_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6076da963a6bd51349723658661b6fa0da3124ee1aab34b7f140341b6f1c4e38 -size 60710 +oid sha256:885330f32c39c2f27b18e3664bcaf7b6f0a13e6ce9a8b10f9b7a31d5842e195b +size 60730 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_12_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_12_en.png index e49200527f..2676fb304c 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_12_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_12_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0d9b6672ce36d35dff5c0ac1e59597ce54757ccb070f2a896869fa791d866136 -size 59952 +oid sha256:67960a5f3a90df398c7f1473b6fc7db305261aeb8df585f40f45883ce579f6ec +size 59976 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_13_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_13_en.png index 96d1c4392c..f83c223dfd 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_13_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_13_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fbf1d21f6d76005b033425442a058c02f601a2a0b8d11213a9c185bbd59d5ce9 -size 59883 +oid sha256:e2a2cae4cd71d4a9c8fbcf7ada00b56ae4ac7c9a74cabec248bac4c734aa3077 +size 59904 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_14_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_14_en.png index 0a38f5d703..62821e5b1b 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_14_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_14_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2ceca7f0e0e894991270ef35e7526b117ceae74be6798b7b478e5508168ed510 -size 63147 +oid sha256:8f9119707d479d076ee8798534086bfcef9316d1b166afd20b1a5c3619f79793 +size 63161 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_1_en.png index 596c976041..4c9dc39e72 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d77a375dd43cf770949c1e4894894e4a2d9a4242f9b51eaacfe614904f65a195 -size 56800 +oid sha256:96671b14b6d708ee1ce7728bdeb8a28d8d1a671ed26e22fa2c0165ddc14f05b0 +size 56825 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_2_en.png index 363b1f1c5e..419471ba24 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b3b712c21975f5950fb792375b8c89e2bf843a92447ca5333535bcb56b11910b -size 39238 +oid sha256:8a7a67de7ce840ed21d518cb904985d24d58b04478fd5ab16794f7a734ccdc79 +size 39255 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_3_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_3_en.png index be54ce6485..bff33e9d8c 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8577205bd9bce0d751f7cf86fa694bf74a0215ffa81c632f8e8e55178d195816 -size 60001 +oid sha256:326779bbbde0fccb0cdcea4800334db3e2c7152d79cddabe37e6a192e9df61e4 +size 60014 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_4_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_4_en.png index b0e1694aa0..e47d5a0cb1 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ddf70411abf990585c19da1d389cb16f8dc0b56e3dcb66fdc66a17370a570b6d -size 56214 +oid sha256:788861af34979331d162b3c279afbfda12a8cbee73fa1bb18cadd1b0d2e3a996 +size 56222 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_5_en.png index 35016e8190..86bb4a7a62 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8d50f2de558a9fc01af21ee132c415c31606e9ca44ad428ed617c35557a07132 -size 58614 +oid sha256:730e7c4e0ae0b8e2d7abaadb1ed37fdede9fbbc037f27b4e5aa2b8ef7e61925f +size 58637 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_6_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_6_en.png index cace9cf614..628ae67f52 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:62be8977acddff717054374ca18943880f91476e1cd31c7e717d7055425e09df -size 54505 +oid sha256:4d3a031a295ba87dfb0dbb97b079c30914ed2b4de4ea769456f538a6d0602046 +size 54525 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_7_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_7_en.png index 35d7977228..63793456dd 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f5333cf51f88d67d95c2956824497e761aa7045031b597c32d21d62548e63409 -size 59276 +oid sha256:afb4b859d516221560fe6c99cd1d4651b615c3f71608a7ef1fa0faf86ca12172 +size 59280 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_8_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_8_en.png index e7cd501d12..d513445810 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_8_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_8_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:08eb3ca4b9ddd1c956c4217b31689199c605fd361d84476e36ce1d551ce6b2b4 -size 59196 +oid sha256:ecbc2725154449358060342d72099e7eae379497186f227b8ffed1e64b7b5e99 +size 59219 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_9_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_9_en.png index 0f0e52ef59..31f218e61a 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_9_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Day_9_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b90e55d3d75db005b30236f9d0afc0492a0f6d637f411cb386222a2759f73242 -size 49892 +oid sha256:4db62aef3b1872117058b039a99034440d5ec0183d79d177666b192832c4e496 +size 49902 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_0_en.png index 5af66b847e..d5b083f2bc 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8efafb26e149e6079bb7b772caeb1b8cb5729490cf220bf3720469539350d775 -size 55759 +oid sha256:ff052665a67780338d78e0365e8846f17ccd740fec628cd3776fe51168ee7b1e +size 55777 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_10_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_10_en.png index 308a458cda..f4432b4b91 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_10_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_10_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dc7f55508d4b053d6ff8229bb442403a72da7dd5430fd58b33b0c35b4b08e319 -size 55806 +oid sha256:b14e865362317b74c9d1446ee1e5161f612dd79f6a31202b598216b17c5313c9 +size 55824 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_11_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_11_en.png index bc2fcc4aaf..43dc89ff0c 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_11_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_11_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3f5cbe33e605517300be39990d316116af488e528ac638745ef6c3cdf7119194 -size 58531 +oid sha256:c4982e8288343560f75a2ab4314119f6e186106a4fabc417d958254ca18f2661 +size 58551 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_12_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_12_en.png index 34ac467b9f..b82d61b222 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_12_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_12_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:49a8590b84aed8153da35c6e9af7bccd3995060d9f33932780fa18b51439629d -size 58021 +oid sha256:2663bc51c0b8ba65907c1cc56d00953bc92ae0ceff5ec9b79571b5f0963f36cf +size 58042 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_13_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_13_en.png index 90cefabd52..348956f740 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_13_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_13_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:802eeffd5f121223aaec8c93c4eacf43e79441007fe4acb44c7dcb6efb7a2e03 -size 58023 +oid sha256:4026e4436be600f3012a883e6a3bb3b4924ecb39908b9c1f7398e0b8d9dcbdb2 +size 58041 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_14_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_14_en.png index c039ab8b42..46b391f857 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_14_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_14_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:738f7265ebb40363edacfcbf5bc540d87620d9b5c863387cffaec772661a0d8a -size 64282 +oid sha256:47a50563dcaf5c0b0dd72c3c58e06084d023b1106895dd73ac0faedbc8671cdb +size 64290 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_1_en.png index e0fabe9a5e..e34ee21f4c 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:29e662d582c8076b439d7f508f0694bca2a8563c30436d51e487c5285511cde2 -size 54638 +oid sha256:4afaf43856cbc99faae6ee83407ae2fc8505749a39a5cab60a104df6021c4ee3 +size 54659 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_2_en.png index 6eca2d3098..03584a1eb8 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8289d23929280efa5cd5e688c64a8bdac5ef966e0cbbe331b9946a51c2703cfa -size 37320 +oid sha256:32caf9b026ab4f9b1cf355ff468aa18075b01359fa3b0437e0beb97b9e3770a6 +size 37314 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_3_en.png index 41f5628fa9..559442c91d 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:79d46f9fe16f91e58a1660d8f970a499e34c81edc84ce1d2d4e904969a7e8538 -size 58078 +oid sha256:9bd7d1257a5873d57d6752ff43d3ae5324d19514cbcbe9db61b85072da886177 +size 58031 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_4_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_4_en.png index a4cf64c03c..f4a102c753 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:db214cb159a8c614bb7e883af30e644b750ae70abc755eeccb495266167d08a0 -size 50888 +oid sha256:49be289d1f2faf1eda412b74b25433e571cbba41813e09919118b2c278c5d9c7 +size 50942 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_5_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_5_en.png index 1d86858b16..7d81ecefe8 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:887e5a8e76f89ee38b1a48c0e4e165045954108ac5e5a9e776f25fe6e4d2d59b -size 56784 +oid sha256:bf1d130d1d5d4f4e310e2d36b2bb3ba17e98debea80486f868623b6c6bbbd85a +size 56802 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_6_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_6_en.png index 5379692c75..636493e6a7 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:90662f1f386b4d9af7b9f5920d43af38cb44970741aa935a4e1611ca4a4ec4bb -size 52507 +oid sha256:e89946cfa01fa932e9c81b36b217a3396e26ebd18557a0a388055e30db7ab122 +size 52519 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_7_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_7_en.png index 4319ae5a39..48e590f6b9 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ba888edb2f1ef856074a17e1afed3d908a24d4aab7c763057b35edd2e65d0b63 -size 53876 +oid sha256:c2496c87a1b09a5b63c3cd323d8aef379227389a8a766872facd25fe28574884 +size 53915 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_8_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_8_en.png index f0f96d5930..42826e5568 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_8_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_8_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6b69d0089def0886b238cbe3b37585d3aa6192b8405c6c80bd1d6ac364172d10 -size 57251 +oid sha256:b979f12c15d196dfe4c1511fae361855a38bfd5974eb9807475d45fbb1a3b805 +size 57270 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_9_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_9_en.png index 11de94caf6..b6714e048a 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_9_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesView_Night_9_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d78c04a6cf24dab10d20e06f50957e646e596d3208a1c83d6ae27dd8e9c58d74 -size 44375 +oid sha256:b92de971bb2bf266a1afa2f1ac1ddfda4fcfca0998d4cc8f5455ab0a6aeb894a +size 44424 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_10_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_10_en.png index f0d82f9d09..5dec06b739 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_10_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_10_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e5c71623f182b0e2aac51c276d3b61f039997c3dadf6c7bd9de6c4f2dfa352b8 -size 49837 +oid sha256:a1a33eba9c38eb8e518401f19536be0dedeb25e1c6fa805006d25b2354eea9ad +size 50289 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_11_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_11_en.png new file mode 100644 index 0000000000..d526d29dc4 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_11_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01a7f9e4be6f064593c299e84f9bf3926dbeb5be1c243b7293889c178c593672 +size 53305 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_1_en.png index 9c9ce4e803..ffa4748938 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:326e774bb0420b4d55cca0014bcb8aac69f2351e58e756c7d63de3905f5bb6d0 -size 66470 +oid sha256:f002866b7076f6541d2842009e7f0f2df1ab32981ca3d2bca0c8dddb260a3991 +size 65349 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_2_en.png index 39c11d95e7..1275aa4578 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ba30b7ffc1096fd5190fbf7e1881217dce20a5e0865800d49b26d82fd0aac0dd -size 60733 +oid sha256:95e9f4fb1fdce076c41091c8e629fb5e4540d6c820271464a0df62ec9c86d04b +size 60279 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_3_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_3_en.png index 402673d64c..79b11504f2 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0fa5719b287ebb77a79900ffdec8793d9a86f2a07920f32c50924872609b09d5 -size 60682 +oid sha256:9e24c761af34c2256845387f58fa09bd0200a5a325a7f263b1544db1f8109d55 +size 60230 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_4_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_4_en.png index 35975f0208..f7b50c340d 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:46cd3b9a7be00e4f41fbaab11e1cb6aa6528d6db578a84512f7abedf5d4b5492 -size 55610 +oid sha256:ebe33703e823b36249c9ce77c1bc40cd1bc76a7a184947b2b8dd01d04add1126 +size 55151 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_5_en.png index 85bd84bb10..42b8106d12 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:13c8b71ef7331e86d15200b8b1979688b21337237bcccd309ce70d866f9304f4 -size 12932 +oid sha256:128c073395c100b5fa4d61ce8549fac6db753dd1d8ab33475652b5a051130f6e +size 12485 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_6_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_6_en.png index 71757e0f8d..8f18954e8f 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2d992de8f70372d03ca2e701310ab261c1f5ddb5864810071a84f6b17ce5f6a4 -size 57531 +oid sha256:57509ab85d4f7feda8287a9a39353c8213633b0675a638b286523bb9cdc177fe +size 58002 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_7_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_7_en.png index 901af608dd..df34183203 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0b34ca16979d6e496ec13cec78250eace85e17616cfa162d131d2c8f797c6b1f -size 59946 +oid sha256:0ddf77c1776754186a16520834dd32458777cefd02b63e810eae46b85788e825 +size 60434 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_8_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_8_en.png index 4ada35a715..d1d40d0ae3 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_8_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_8_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3dbd48f7c11b0b5881eedf939654e50b37bfc349c28c3c0e93d5ca5bda0717da -size 51691 +oid sha256:0ef2a7ada57b834c8cc062096e5793027ba0e5b86d5d43bef88d3a5c448d5bdb +size 51789 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_9_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_9_en.png index 023f5af795..19d5f7b959 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_9_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Day_9_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:83a9e031d5b928895778ac073d4374863a5e8a6b0ac9d99fee0a95879a0421e9 -size 64502 +oid sha256:699f12cc41c0d766c61db13ea980fb150b7027457526892da636fa020d3e6a2f +size 64046 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_10_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_10_en.png index 1b3fa517d2..bd402d9bac 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_10_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_10_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9a00224f7aea8db03d01c0dbf244b90eb5d2d3f4289ced45cda874dc655fbac9 -size 48320 +oid sha256:0b2908f2612fde0ac68aa872b039e39614004e9207119f34fd480bf9ab558e5f +size 48502 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_11_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_11_en.png new file mode 100644 index 0000000000..15668cbd4b --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_11_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0907cb2655a7a02dd4cc00ffaabf564274eb54ccb739ac61d0b3c6f13a7dd86c +size 54081 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_1_en.png index f5c9bf6755..b3c14a2192 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bbca019f7bb7555bcfea4645ad3ec00445ec55a54cc98611b1e0d7f99bebeea4 -size 67131 +oid sha256:d05b4a8db64921114da702cbbbf3480037a5e95299b6be61b64882063bf3a8d6 +size 66013 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_2_en.png index 06adaeeaa3..eb56e2372f 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:aa22afe652bae97bbe9e3504610f520e6fd7337f2757f79c39e9e0f6115902fe -size 61461 +oid sha256:def295811ae2872a5c882de15ced9613e6699d52d07a7263f2bee4f1cbaabbe8 +size 61093 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_3_en.png index 0d8b2edc9a..92c500c146 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bbb5c63809d556bcc60b11b9c23940e26bfac377ed4a5a0d97971e060365c6f3 -size 61346 +oid sha256:f87e5c5ee46d0d722d468c20b7403393a34eda7c555fc331e5d936fab6bbc5f6 +size 60981 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_4_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_4_en.png index 4daeb638d8..bc2037d7f1 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:17a15796338eaa5a8b7a5c7e5252fe2d9c392f2d0dd78ce9e0976dfd68fa6ad5 -size 55975 +oid sha256:e9721797718883f2130ba5a90037f1edf8d813a02b5b8329fd7c677a517b6657 +size 55601 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_5_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_5_en.png index 31bb7dad85..0272e43931 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:562dc9be79006376346ab1b2635890615eecc381e82c15b16a9ebf1855741e24 -size 12817 +oid sha256:f9a601e883469969a5c585e44d2c3f5da53abf307a9334fa19c27f685d3c7731 +size 12436 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_6_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_6_en.png index 8ae4205f0d..a240e4f154 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2023b53d3a7099f55bc36a738506c6fab2910f3c83ca24a1647b6ba35c29f351 -size 55807 +oid sha256:ca1a7ecdceabde82b8283bba218211a7a86c33a01887a6b1d021cdd0460fdf47 +size 55937 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_7_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_7_en.png index 796180be45..1ed07aef66 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:41c3b6a09bf3899a0a28ac6b9fc96b773687adeb40a4b11ab0f80dadc1139e1e -size 58176 +oid sha256:2865975bc3f091eead3fdab2870622aa8d8336d2bd0bde7110249e14d1bf5527 +size 58289 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_8_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_8_en.png index 1509868c15..228944b78b 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_8_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_8_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:24389189d4955f584fb1ed4b390e6ec829622d457ee7f3205b0104f2bcd90bdd -size 50948 +oid sha256:7f15f8c3e7b04e73ef0af6b013e8b817946016e81c4cc788f3c9fd1bc5e8667e +size 50836 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_9_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_9_en.png index c5fdad0d7d..a9f04fb2b9 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_9_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions.changeroles_ChangeRolesView_Night_9_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:971a027f6aaaa21b7d62af3f08b50eb7cf8369199076226ea92e1b4b30f74342 -size 64234 +oid sha256:f184247e1ed5f006dca11426d94498c12724475011b4509d7f8fd13dd95fe0f9 +size 63882 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_1_en.png index fa54fe8bd0..81568f2c67 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:67a08774600869ff76540d518c0d5f80c38f1f155a65af56374ccf362d5109d4 -size 40618 +oid sha256:8116875aca8d06c8450168555a8e591cb96b23aaa9f194f62456b6b369cfbc50 +size 42699 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_2_en.png index 21bd18a2c0..a209564cf1 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bc1246fbe273fafe61dfacfe4131aeb166a81a4c4befc35fbeb68cf85c0f355f -size 57070 +oid sha256:68af7df886052c7db027225c978b8c10f5bf69beab65834add7456500f2d5cc0 +size 59115 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_3_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_3_en.png index 59f4a409b2..f31dc64e93 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f632403bc5aad7990c8f2a81eec9977db7bbf0fd8db33bbda61af5d25329ac7f -size 37776 +oid sha256:168e8ccfc1be8927e7bab6526e71044786aefc5f8d6f5594b971e75926196481 +size 39424 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_4_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_4_en.png index b393d1eef1..d87ba2d721 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:60df11189f82a42a51fddfcece2d0fdd88c55d06f2a1ee1e2069bae74e9c1378 -size 36410 +oid sha256:3e2fce3603a20cdda8ac969e15cbd0b636185f0ff63930d67795074e740cf807 +size 38175 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_5_en.png index 286ddded30..410e22851e 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4cff66b4102160aeeb3db4bb5df1fef1428b5fadc7a12a62170d2335f506ad3b -size 46662 +oid sha256:79d359483e7bc03c3d5facf61bdc854711f685c1826fd909e8d599892eb28de3 +size 48333 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_6_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_6_en.png index 59f4a409b2..f31dc64e93 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f632403bc5aad7990c8f2a81eec9977db7bbf0fd8db33bbda61af5d25329ac7f -size 37776 +oid sha256:168e8ccfc1be8927e7bab6526e71044786aefc5f8d6f5594b971e75926196481 +size 39424 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_7_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_7_en.png index aa6320755c..bece8aca73 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:554d8d41ed47b34e71f6fff1689ee2c9488580d012d4ad2b867814399899c6e7 -size 36812 +oid sha256:e9be92dc8fbaebaa5c108754180eba18fdab8a31c5a239091b2779480bf89848 +size 38620 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_8_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_8_en.png new file mode 100644 index 0000000000..9295b0a5a8 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Day_8_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:620f0bc7825ebf1d0abcbc824c990162bf6a98afe9d3566b476c16dabaa17935 +size 39106 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_1_en.png index 4115eb9688..65fb11c758 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:036944c74e2a5150d54e9ad4d64fe6b624fe8e889e411c226816398c65110f55 -size 39321 +oid sha256:6cd19bb1be2581e0f1bb50624111bc13717a60778d5141f06857e1edaa34ab69 +size 41325 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_2_en.png index b87b3c6850..572cbee231 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:24df22e86f0fe16ba9d3ce944105c0e2450bed08c8a9556f0d3da0cec32067b5 -size 54642 +oid sha256:79770d1b10c85dc12bf57f0a4cf5cb147aca1dc91841bf680349a4603b266310 +size 56490 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_3_en.png index f4a6eb9f29..559cf71d76 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ca39d5d1f2a24584a695f7e3741a82109870a41a289b72882b9cf476e0526de6 -size 35948 +oid sha256:33bda0d03e1f14113201df4187a0af99e5e415d2cf2cb0e7c24803d5685dbee8 +size 37586 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_4_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_4_en.png index 3dc4557519..e5b7219d4b 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4381d361278286530bbf89b79c56ae37edb722ec0a829ad20f98ebe1205aa1b9 -size 33990 +oid sha256:e7625469fb3ad71c44d84e3b0f55cb952f07c15a57117a5c5b369952c6dab089 +size 35681 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_5_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_5_en.png index 00930872a0..5ca1da955b 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:29863c9616f9ff6eedc59d9c8a78304e061f68448c51c217f8c43d7bb2b5bf69 -size 43568 +oid sha256:4c7bfeaa1a068be4ed2c21f659dedf996442ac4d0dbd27d8fa9c0d49944cc38f +size 45256 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_6_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_6_en.png index f4a6eb9f29..559cf71d76 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ca39d5d1f2a24584a695f7e3741a82109870a41a289b72882b9cf476e0526de6 -size 35948 +oid sha256:33bda0d03e1f14113201df4187a0af99e5e415d2cf2cb0e7c24803d5685dbee8 +size 37586 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_7_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_7_en.png index b0418ba23b..f8c51f7f69 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dea918985f1cb9870d5da1e84ac2c7a43227f03aae4e4b7462bac5d6ba7343c2 -size 34480 +oid sha256:f65d83a0f0b106cd9738b94b99c1fe8ea75fcadb443377da65d8847e72adfd72 +size 36169 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_8_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_8_en.png new file mode 100644 index 0000000000..52eca6f222 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.rolesandpermissions_RolesAndPermissionsView_Night_8_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd8ce7b96a775a029920f5274d4dbc7ed03eb34ed446299ba0043a57ee20c7eb +size 37978 diff --git a/tests/uitests/src/test/snapshots/images/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_5_en.png new file mode 100644 index 0000000000..8974e582a9 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_5_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d55e9236e761726e03742c6292ec3ced7af48b385da5a7be9eccc444a78ec312 +size 35886 diff --git a/tests/uitests/src/test/snapshots/images/features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_5_en.png b/tests/uitests/src/test/snapshots/images/features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_5_en.png new file mode 100644 index 0000000000..dd56483ad5 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_5_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0bc9364efa8aa639f8989d74a5172665ee0fa8f4c9c354b584cfdabfd98d723c +size 32964 diff --git a/tests/uitests/src/test/snapshots/images/features.securebackup.impl.setup_SecureBackupSetupView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.securebackup.impl.setup_SecureBackupSetupView_Day_5_en.png new file mode 100644 index 0000000000..bc5dbd592f --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/features.securebackup.impl.setup_SecureBackupSetupView_Day_5_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34272a001ad54175280dc251375cee45e2978cba78c7d4b08b10d59ae7093d93 +size 34340 diff --git a/tests/uitests/src/test/snapshots/images/features.securebackup.impl.setup_SecureBackupSetupView_Night_5_en.png b/tests/uitests/src/test/snapshots/images/features.securebackup.impl.setup_SecureBackupSetupView_Night_5_en.png new file mode 100644 index 0000000000..72dcc2cfa9 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/features.securebackup.impl.setup_SecureBackupSetupView_Night_5_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86e9cbfe60551d6d7f052ad0a7f75eda029569d9d51cf63339e223df5332ec63 +size 31674 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_0_en.png deleted file mode 100644 index 9e29a276b3..0000000000 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_0_en.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9ea4fd71bc94982578bc061607066dfd3efe55aeccbec69b6826fd345113f95e -size 13296 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_1_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_1_en.png deleted file mode 100644 index 345e8ca643..0000000000 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_1_en.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:56aabf6f359235c77b7bffa3d7e2c4ebf7b2c688eaf9e2d8a67da9a00433ebcb -size 12350 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_2_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_2_en.png deleted file mode 100644 index 110210ee92..0000000000 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_2_en.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:058f539d2f7652342394adb681084147dcc2d4a1e24f9c8efd47781a0def4c33 -size 12925 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_3_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_3_en.png deleted file mode 100644 index 951f776d62..0000000000 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_3_en.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:315e1d831a1e3082a9d4ea749b76b374b0f8018c6d5c11b1f48ed34db3b3a1c5 -size 13279 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_4_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_4_en.png deleted file mode 100644 index 6e54ed1bff..0000000000 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_4_en.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:eb1c80dfc5926f3aa29ab5118f8c5a6a62ab13a1247e198e32f00509723cd4e3 -size 12550 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_5_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_5_en.png deleted file mode 100644 index 54ac4972d6..0000000000 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_5_en.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:61c83e013e73d55a6b3504f34dcdb0111744499172839a71c35ada67cece1184 -size 13162 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_6_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_6_en.png deleted file mode 100644 index 0684f2bcaf..0000000000 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Day_6_en.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d81aade2945be977896038addacdb9246d17bb1a57fb3bd0d43169e382ce9f03 -size 13126 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_0_en.png deleted file mode 100644 index a544956d4f..0000000000 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_0_en.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:46639efc4726cfb78ba5955c7c56619ce06342ef222c4c06eb8829c22d90e6f7 -size 13200 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_1_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_1_en.png deleted file mode 100644 index 1517ba7210..0000000000 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_1_en.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:316d70aa6507a9b0c5ab9833d750033df44f8197ca3f25d7f6acbfc496b68d59 -size 12184 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_2_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_2_en.png deleted file mode 100644 index b3ac22f394..0000000000 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_2_en.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d07c5029da082dcce7b86a202ea611e089ddb1e379d2511395f75dfabdedd5d3 -size 13034 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_3_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_3_en.png deleted file mode 100644 index 5a1526f50b..0000000000 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_3_en.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:da1945462f70133c47e33eaaa9dfc3d64033c6a83d4d50b03776adcc7a7f77e0 -size 13334 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_4_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_4_en.png deleted file mode 100644 index aeeae19771..0000000000 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_4_en.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4871583b442845d3ae8e3dd98f4099fb7906f2ccccf25b61aad59efb8112c62 -size 12259 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_5_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_5_en.png deleted file mode 100644 index 3b86fa73ad..0000000000 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_5_en.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0d2d9b68cff6f00bf12eed5df4123af7da908ae3e25e710e5ce305f36b404382 -size 13101 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_6_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_6_en.png deleted file mode 100644 index 7e7a23ed38..0000000000 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconFull_Night_6_en.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:610e68016011b14db56217ebcd27a86ab597c1668a3a90b09c3e39ac308f8764 -size 13054 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconMinimal_Day_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconMinimal_Day_0_en.png deleted file mode 100644 index 0f0769d977..0000000000 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconMinimal_Day_0_en.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a1638d8805c8029573b8cae9a71c3c2dddf569d5154969f49085def60ec74ec8 -size 7545 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconMinimal_Night_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconMinimal_Night_0_en.png deleted file mode 100644 index 756c1aca44..0000000000 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.components_PageTitleWithIconMinimal_Night_0_en.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:19c89df3b96fad54d28fdd608cec70d2d8c71fb20901746abacd9bcc26fd5332 -size 7579 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_FloatingActionButton_Floating_Action_Buttons_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_FloatingActionButton_Floating_Action_Buttons_en.png index 6adb0ad3aa..9191754495 100644 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_FloatingActionButton_Floating_Action_Buttons_en.png +++ b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_FloatingActionButton_Floating_Action_Buttons_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4c4e8b0d14760c7fa9308861a7050ba715e04b36d161f63d24713c3eb2e7100c -size 9798 +oid sha256:ed070cf843dc0fc6526592484676ba4ea39f103e9b93ee2227fa66d586e5bbc6 +size 8940 diff --git a/tools/localazy/checkForbiddenTerms.py b/tools/localazy/checkForbiddenTerms.py index 2ebe582ba3..dc522ebf33 100755 --- a/tools/localazy/checkForbiddenTerms.py +++ b/tools/localazy/checkForbiddenTerms.py @@ -26,6 +26,9 @@ forbiddenTerms = { "call_invalid_audio_device_bluetooth_devices_disabled", # Contains "Element X" "screen_room_timeline_legacy_call", + # We explicitly want to mention Element Pro in these 2: + "screen_change_server_error_element_pro_required_title", + "screen_change_server_error_element_pro_required_message", ] }