From 2cb68ba8110eecd0fae0c13993a395c2028fe487 Mon Sep 17 00:00:00 2001 From: bxdxnn <267911624+bxdxnn@users.noreply.github.com> Date: Thu, 26 Mar 2026 20:22:31 +0000 Subject: [PATCH 01/97] Max selections support --- .../messages/impl/timeline/TimelineEvent.kt | 2 +- .../impl/timeline/TimelinePresenter.kt | 6 +- .../components/event/TimelineItemPollView.kt | 6 +- .../event/TimelineItemContentPollFactory.kt | 1 + .../model/event/TimelineItemPollContent.kt | 1 + .../event/TimelineItemPollContentProvider.kt | 2 + .../impl/timeline/TimelinePresenterTest.kt | 2 +- .../event/TimelineItemPollViewTest.kt | 2 +- .../api/actions/SendPollResponseAction.kt | 2 +- .../poll/api/pollcontent/PollContentState.kt | 6 +- .../pollcontent/PollContentStateFixtures.kt | 2 + .../poll/api/pollcontent/PollContentView.kt | 67 +++++++++++++++++-- .../features/poll/impl/PollConstants.kt | 2 +- .../actions/DefaultSendPollResponseAction.kt | 4 +- .../poll/impl/create/CreatePollEvent.kt | 1 + .../poll/impl/create/CreatePollPresenter.kt | 9 ++- .../poll/impl/create/CreatePollState.kt | 2 + .../impl/create/CreatePollStateProvider.kt | 20 +++++- .../poll/impl/create/CreatePollView.kt | 63 +++++++++++++++++ .../poll/impl/create/PollFormState.kt | 19 +++++- .../poll/impl/history/PollHistoryEvents.kt | 2 +- .../poll/impl/history/PollHistoryPresenter.kt | 7 +- .../poll/impl/history/PollHistoryView.kt | 8 +-- .../model/DefaultPollContentStateFactory.kt | 9 ++- .../impl/src/main/res/values/temporary.xml | 5 ++ .../impl/create/CreatePollPresenterTest.kt | 2 + .../impl/create/PollFormStateSaverTest.kt | 1 + .../impl/history/PollHistoryPresenterTest.kt | 2 +- .../poll/impl/history/PollHistoryViewTest.kt | 2 +- .../PollContentStateFactoryTest.kt | 13 ++-- .../actions/FakeSendPollResponseAction.kt | 2 +- .../FakePollContentStateFactory.kt | 1 + 32 files changed, 234 insertions(+), 39 deletions(-) create mode 100644 features/poll/impl/src/main/res/values/temporary.xml diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineEvent.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineEvent.kt index 1591cbf6cc..74acfe96e3 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineEvent.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineEvent.kt @@ -47,7 +47,7 @@ sealed interface TimelineEvent { data class SelectPollAnswer( val pollStartId: EventId, - val answerId: String + val answerIds: List ) : TimelineItemPollEvent data class EndPoll( diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelinePresenter.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelinePresenter.kt index 12e4e0b1d1..c64ffd7b0c 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelinePresenter.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelinePresenter.kt @@ -182,8 +182,10 @@ class TimelinePresenter( sendPollResponseAction.execute( timeline = this, pollStartId = event.pollStartId, - answerId = event.answerId - ) + answerIds = event.answerIds + ).onFailure { error -> + Timber.tag(tag).e(error, "Failed to send poll response") + } } } is TimelineEvent.EndPoll -> sessionCoroutineScope.launch { diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemPollView.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemPollView.kt index e956a99b45..6b8886c592 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemPollView.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemPollView.kt @@ -26,8 +26,8 @@ fun TimelineItemPollView( eventSink: (TimelineEvent.TimelineItemPollEvent) -> Unit, modifier: Modifier = Modifier, ) { - fun onSelectAnswer(pollStartId: EventId, answerId: String) { - eventSink(TimelineEvent.SelectPollAnswer(pollStartId, answerId)) + fun onSelectAnswer(pollStartId: EventId, answerIds: List) { + eventSink(TimelineEvent.SelectPollAnswer(pollStartId, answerIds)) } fun onEndPoll(pollStartId: EventId) { @@ -43,6 +43,8 @@ fun TimelineItemPollView( question = content.question, answerItems = content.answerItems.toImmutableList(), pollKind = content.pollKind, + isMultipleSelection = content.maxSelections > 1u, + maxSelections = content.maxSelections, isPollEnded = content.isEnded, isPollEditable = content.isEditable, isMine = content.isMine, diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentPollFactory.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentPollFactory.kt index 2ceb81c487..69c8f16f37 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentPollFactory.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentPollFactory.kt @@ -33,6 +33,7 @@ class TimelineItemContentPollFactory( question = pollContentState.question, answerItems = pollContentState.answerItems, pollKind = pollContentState.pollKind, + maxSelections = pollContentState.maxSelections, isEnded = pollContentState.isPollEnded, isEdited = content.isEdited ) diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemPollContent.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemPollContent.kt index 8ddeb3d041..2e176251ed 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemPollContent.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemPollContent.kt @@ -19,6 +19,7 @@ data class TimelineItemPollContent( val question: String, val answerItems: List, val pollKind: PollKind, + val maxSelections: ULong, val isEnded: Boolean, override val isEdited: Boolean, ) : TimelineItemEventContent, diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemPollContentProvider.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemPollContentProvider.kt index 26577f5230..040a3cd7fe 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemPollContentProvider.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemPollContentProvider.kt @@ -32,12 +32,14 @@ fun aTimelineItemPollContent( isEditable: Boolean = false, isEnded: Boolean = false, isEdited: Boolean = false, + maxSelections: ULong = 1u, ): TimelineItemPollContent { return TimelineItemPollContent( eventId = EventId("\$anEventId"), pollKind = PollKind.Disclosed, question = question, answerItems = answerItems, + maxSelections = maxSelections, isMine = isMine, isEditable = isEditable, isEnded = isEnded, 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 194694714b..176dcca219 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 @@ -428,7 +428,7 @@ class TimelinePresenterTest { ) presenter.test { val initialState = awaitFirstItem() - initialState.eventSink.invoke(TimelineEvent.SelectPollAnswer(AN_EVENT_ID, "anAnswerId")) + initialState.eventSink.invoke(TimelineEvent.SelectPollAnswer(AN_EVENT_ID, listOf("anAnswerId"))) } delay(1) sendPollResponseAction.verifyExecutionCount(1) diff --git a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemPollViewTest.kt b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemPollViewTest.kt index 64b5216d2e..b6c81b2825 100644 --- a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemPollViewTest.kt +++ b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemPollViewTest.kt @@ -52,7 +52,7 @@ class TimelineItemPollViewTest { matcher = hasText(answer.text), useUnmergedTree = true, ).performClick() - eventsRecorder.assertSingle(TimelineEvent.SelectPollAnswer(content.eventId!!, answer.id)) + eventsRecorder.assertSingle(TimelineEvent.SelectPollAnswer(content.eventId!!, listOf(answer.id))) } @Test diff --git a/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/actions/SendPollResponseAction.kt b/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/actions/SendPollResponseAction.kt index 00b60ed5ae..ac70718c57 100644 --- a/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/actions/SendPollResponseAction.kt +++ b/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/actions/SendPollResponseAction.kt @@ -15,6 +15,6 @@ interface SendPollResponseAction { suspend fun execute( timeline: Timeline, pollStartId: EventId, - answerId: String + answerIds: List ): Result } diff --git a/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentState.kt b/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentState.kt index 1689408098..ecadc37a23 100644 --- a/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentState.kt +++ b/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentState.kt @@ -18,6 +18,7 @@ import kotlinx.collections.immutable.ImmutableList * @property question the poll question. * @property answerItems the list of answers. * @property pollKind the kind of poll. + * @property maxSelections the maximum number of selections allowed. * @property isPollEditable whether the poll is editable. * @property isPollEnded whether the poll is ended. * @property isMine whether the poll has been created by me. @@ -27,7 +28,10 @@ data class PollContentState( val question: String, val answerItems: ImmutableList, val pollKind: PollKind, + val maxSelections: ULong, val isPollEditable: Boolean, val isPollEnded: Boolean, val isMine: Boolean, -) +) { + val isMultipleSelection: Boolean get() = maxSelections > 1u +} diff --git a/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentStateFixtures.kt b/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentStateFixtures.kt index 7f15c7d513..57db5672f9 100644 --- a/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentStateFixtures.kt +++ b/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentStateFixtures.kt @@ -84,6 +84,7 @@ fun aPollContentState( hasVotes: Boolean = true, question: String = aPollQuestion(), pollKind: PollKind = PollKind.Disclosed, + maxSelections: ULong = 1u, answerItems: ImmutableList = aPollAnswerItemList( isEnded = isEnded, showVotes = showVotes, @@ -94,6 +95,7 @@ fun aPollContentState( question = question, answerItems = answerItems, pollKind = pollKind, + maxSelections = maxSelections, isPollEditable = isMine && !isEnded && isPollEditable, isPollEnded = isEnded, isMine = isMine, diff --git a/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentView.kt b/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentView.kt index e1df373218..f5078ecd50 100644 --- a/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentView.kt +++ b/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentView.kt @@ -40,7 +40,7 @@ import kotlinx.collections.immutable.ImmutableList @Composable fun PollContentView( state: PollContentState, - onSelectAnswer: (pollStartId: EventId, answerId: String) -> Unit, + onSelectAnswer: (pollStartId: EventId, answerIds: List) -> Unit, onEditPoll: (pollStartId: EventId) -> Unit, onEndPoll: (pollStartId: EventId) -> Unit, modifier: Modifier = Modifier, @@ -50,6 +50,8 @@ fun PollContentView( question = state.question, answerItems = state.answerItems, pollKind = state.pollKind, + isMultipleSelection = state.isMultipleSelection, + maxSelections = state.maxSelections, isPollEditable = state.isPollEditable, isPollEnded = state.isPollEnded, isMine = state.isMine, @@ -66,10 +68,12 @@ fun PollContentView( question: String, answerItems: ImmutableList, pollKind: PollKind, + isMultipleSelection: Boolean, + maxSelections: ULong, isPollEditable: Boolean, isPollEnded: Boolean, isMine: Boolean, - onSelectAnswer: (pollStartId: EventId, answerId: String) -> Unit, + onSelectAnswer: (pollStartId: EventId, answerIds: List) -> Unit, onEditPoll: (pollStartId: EventId) -> Unit, onEndPoll: (pollStartId: EventId) -> Unit, modifier: Modifier = Modifier, @@ -77,7 +81,23 @@ fun PollContentView( val votesCount = remember(answerItems) { answerItems.sumOf { it.votesCount } } fun onSelectAnswer(pollAnswer: PollAnswer) { - eventId?.let { onSelectAnswer(it, pollAnswer.id) } + eventId?.let { + if (isMultipleSelection) { + val newSelections = answerItems.map { item -> + if (item.answer.id == pollAnswer.id) { + item.copy(isSelected = !item.isSelected) + } else { + item + } + }.filter { it.isSelected }.map { it.answer.id } + // Only send the response if the selection count is within the limit + if (newSelections.size <= maxSelections.toInt()) { + onSelectAnswer(it, newSelections) + } + } else { + onSelectAnswer(it, listOf(pollAnswer.id)) + } + } } fun onEditPoll() { @@ -107,7 +127,11 @@ fun PollContentView( ) { PollTitleView(title = question, isPollEnded = isPollEnded) - PollAnswers(answerItems = answerItems, onSelectAnswer = ::onSelectAnswer) + PollAnswers( + answerItems = answerItems, + isMultipleSelection = isMultipleSelection, + onSelectAnswer = ::onSelectAnswer, + ) if (isPollEnded || pollKind == PollKind.Disclosed) { DisclosedPollBottomNotice(votesCount = votesCount) @@ -130,8 +154,10 @@ fun PollContentView( @Composable private fun PollAnswers( answerItems: ImmutableList, + isMultipleSelection: Boolean, onSelectAnswer: (PollAnswer) -> Unit, ) { + val role = if (isMultipleSelection) Role.Checkbox else Role.RadioButton Column( modifier = Modifier.selectableGroup(), verticalArrangement = Arrangement.spacedBy(16.dp), @@ -144,7 +170,7 @@ private fun PollAnswers( selected = it.isSelected, enabled = it.isEnabled, onClick = { onSelectAnswer(it.answer) }, - role = Role.RadioButton, + role = role, ), ) } @@ -207,6 +233,8 @@ internal fun PollContentViewUndisclosedPreview() = ElementPreview { question = "What type of food should we have at the party?", answerItems = aPollAnswerItemList(showVotes = false), pollKind = PollKind.Undisclosed, + isMultipleSelection = false, + maxSelections = 1u, isPollEnded = false, isPollEditable = false, isMine = false, @@ -224,6 +252,27 @@ internal fun PollContentViewDisclosedPreview() = ElementPreview { question = "What type of food should we have at the party?", answerItems = aPollAnswerItemList(), pollKind = PollKind.Disclosed, + isMultipleSelection = false, + maxSelections = 1u, + isPollEnded = false, + isPollEditable = false, + isMine = false, + onSelectAnswer = { _, _ -> }, + onEditPoll = {}, + onEndPoll = {}, + ) +} + +@PreviewsDayNight +@Composable +internal fun PollContentViewMultipleSelectionPreview() = ElementPreview { + PollContentView( + eventId = EventId("\$anEventId"), + question = "What type of food should we have at the party?", + answerItems = aPollAnswerItemList(), + pollKind = PollKind.Disclosed, + isMultipleSelection = true, + maxSelections = 3u, isPollEnded = false, isPollEditable = false, isMine = false, @@ -241,6 +290,8 @@ internal fun PollContentViewEndedPreview() = ElementPreview { question = "What type of food should we have at the party?", answerItems = aPollAnswerItemList(isEnded = true), pollKind = PollKind.Disclosed, + isMultipleSelection = false, + maxSelections = 1u, isPollEnded = true, isPollEditable = false, isMine = false, @@ -258,6 +309,8 @@ internal fun PollContentViewCreatorEditablePreview() = ElementPreview { question = "What type of food should we have at the party?", answerItems = aPollAnswerItemList(hasVotes = false, isEnded = false), pollKind = PollKind.Disclosed, + isMultipleSelection = false, + maxSelections = 1u, isPollEnded = false, isPollEditable = true, isMine = true, @@ -275,6 +328,8 @@ internal fun PollContentViewCreatorPreview() = ElementPreview { question = "What type of food should we have at the party?", answerItems = aPollAnswerItemList(isEnded = false), pollKind = PollKind.Disclosed, + isMultipleSelection = false, + maxSelections = 1u, isPollEnded = false, isPollEditable = false, isMine = true, @@ -292,6 +347,8 @@ internal fun PollContentViewCreatorEndedPreview() = ElementPreview { question = "What type of food should we have at the party?", answerItems = aPollAnswerItemList(isEnded = true), pollKind = PollKind.Disclosed, + isMultipleSelection = false, + maxSelections = 1u, isPollEnded = true, isPollEditable = false, isMine = true, diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/PollConstants.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/PollConstants.kt index c3579dc447..7c6eab370b 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/PollConstants.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/PollConstants.kt @@ -12,5 +12,5 @@ internal object PollConstants { const val MIN_ANSWERS = 2 const val MAX_ANSWERS = 20 const val MAX_ANSWER_LENGTH = 240 - const val MAX_SELECTIONS = 1 + const val DEFAULT_MAX_SELECTIONS = 1 } diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/actions/DefaultSendPollResponseAction.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/actions/DefaultSendPollResponseAction.kt index f48604b21d..b872f9fb27 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/actions/DefaultSendPollResponseAction.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/actions/DefaultSendPollResponseAction.kt @@ -20,10 +20,10 @@ import io.element.android.services.analytics.api.AnalyticsService class DefaultSendPollResponseAction( private val analyticsService: AnalyticsService, ) : SendPollResponseAction { - override suspend fun execute(timeline: Timeline, pollStartId: EventId, answerId: String): Result { + override suspend fun execute(timeline: Timeline, pollStartId: EventId, answerIds: List): Result { return timeline.sendPollResponse( pollStartId = pollStartId, - answers = listOf(answerId), + answers = answerIds, ).onSuccess { analyticsService.capture(PollVote()) } diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollEvent.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollEvent.kt index b98ab899b9..2d686d3d8d 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollEvent.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollEvent.kt @@ -18,6 +18,7 @@ sealed interface CreatePollEvent { data object AddAnswer : CreatePollEvent data class RemoveAnswer(val index: Int) : CreatePollEvent data class SetPollKind(val pollKind: PollKind) : CreatePollEvent + data class SetMaxSelections(val maxSelections: Int) : CreatePollEvent data object NavBack : CreatePollEvent data object ConfirmNavBack : CreatePollEvent data object HideConfirmation : CreatePollEvent diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollPresenter.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollPresenter.kt index 8e01f1a3e4..22d096e763 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollPresenter.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollPresenter.kt @@ -24,7 +24,6 @@ import im.vector.app.features.analytics.plan.Composer import im.vector.app.features.analytics.plan.PollCreation import io.element.android.features.messages.api.MessageComposerContext import io.element.android.features.poll.api.create.CreatePollMode -import io.element.android.features.poll.impl.PollConstants.MAX_SELECTIONS import io.element.android.features.poll.impl.data.PollRepository import io.element.android.libraries.architecture.Presenter import io.element.android.libraries.matrix.api.poll.PollAnswer @@ -81,6 +80,7 @@ class CreatePollPresenter( question = it.question, answers = it.answers.map(PollAnswer::text).toImmutableList(), isDisclosed = it.kind.isDisclosed, + maxSelections = it.maxSelections.toInt(), ) initialPoll = loadedPoll poll = loadedPoll @@ -109,7 +109,7 @@ class CreatePollPresenter( question = poll.question, answers = poll.answers, pollKind = poll.pollKind, - maxSelections = MAX_SELECTIONS, + maxSelections = poll.effectiveMaxSelections, ).onSuccess { analyticsService.capturePollSaved( isUndisclosed = poll.pollKind == PollKind.Undisclosed, @@ -151,6 +151,9 @@ class CreatePollPresenter( is CreatePollEvent.SetPollKind -> { poll = poll.copy(isDisclosed = event.pollKind.isDisclosed) } + is CreatePollEvent.SetMaxSelections -> { + poll = poll.copy(maxSelections = event.maxSelections) + } is CreatePollEvent.SetQuestion -> { poll = poll.copy(question = event.question) } @@ -182,6 +185,8 @@ class CreatePollPresenter( question = poll.question, answers = immutableAnswers, pollKind = poll.pollKind, + maxSelections = poll.effectiveMaxSelections, + maxAllowedSelections = poll.answers.size, showBackConfirmation = showBackConfirmation, showDeleteConfirmation = showDeleteConfirmation, eventSink = ::handleEvent, diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollState.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollState.kt index 80aa7dc4b0..20f4beaf3e 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollState.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollState.kt @@ -18,6 +18,8 @@ data class CreatePollState( val question: String, val answers: ImmutableList, val pollKind: PollKind, + val maxSelections: Int, + val maxAllowedSelections: Int, val showBackConfirmation: Boolean, val showDeleteConfirmation: Boolean, val eventSink: (CreatePollEvent) -> Unit, diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollStateProvider.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollStateProvider.kt index 20d9f0d557..13c1ca0a50 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollStateProvider.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollStateProvider.kt @@ -150,6 +150,21 @@ class CreatePollStateProvider : PreviewParameterProvider { showDeleteConfirmation = true, showBackConfirmation = false, ), + aCreatePollState( + mode = CreatePollState.Mode.New, + canCreate = true, + canAddAnswer = true, + question = "What type of food should we have?", + answers = listOf( + Answer("Italian \uD83C\uDDEE\uD83C\uDDF9", false), + Answer("Chinese \uD83C\uDDE8\uD83C\uDDF3", false), + Answer("Brazilian \uD83C\uDDE7\uD83C\uDDF7", true), + ), + showBackConfirmation = false, + showDeleteConfirmation = false, + pollKind = PollKind.Disclosed, + maxSelections = 2, + ), ) } @@ -161,7 +176,8 @@ private fun aCreatePollState( answers: List, showBackConfirmation: Boolean, showDeleteConfirmation: Boolean, - pollKind: PollKind + pollKind: PollKind, + maxSelections: Int = 1, ): CreatePollState { return CreatePollState( mode = mode, @@ -172,6 +188,8 @@ private fun aCreatePollState( showBackConfirmation = showBackConfirmation, showDeleteConfirmation = showDeleteConfirmation, pollKind = pollKind, + maxSelections = maxSelections, + maxAllowedSelections = answers.size, eventSink = {} ) } diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollView.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollView.kt index 3abf3718af..b316563f02 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollView.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollView.kt @@ -11,11 +11,13 @@ package io.element.android.features.poll.impl.create import androidx.activity.compose.BackHandler import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.consumeWindowInsets import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.imePadding import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.lazy.itemsIndexed import androidx.compose.foundation.lazy.rememberLazyListState @@ -25,6 +27,7 @@ import androidx.compose.runtime.Composable import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.remember import androidx.compose.runtime.rememberCoroutineScope +import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.focus.FocusRequester import androidx.compose.ui.focus.focusRequester @@ -32,6 +35,8 @@ import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.input.ImeAction import androidx.compose.ui.text.input.KeyboardCapitalization 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.features.poll.impl.R import io.element.android.libraries.designsystem.components.button.BackButton @@ -173,6 +178,18 @@ fun CreatePollView( item { Column { HorizontalDivider() + ListItem( + headlineContent = { Text(text = stringResource(id = R.string.screen_create_poll_max_selections_headline)) }, + supportingContent = { Text(text = stringResource(id = R.string.screen_create_poll_max_selections_desc)) }, + trailingContent = ListItemContent.Custom { + MaxSelectionsStepper( + current = state.maxSelections, + max = state.maxAllowedSelections, + onDecrement = { state.eventSink(CreatePollEvent.SetMaxSelections(state.maxSelections - 1)) }, + onIncrement = { state.eventSink(CreatePollEvent.SetMaxSelections(state.maxSelections + 1)) }, + ) + }, + ) ListItem( headlineContent = { Text(text = stringResource(id = R.string.screen_create_poll_anonymous_headline)) }, supportingContent = { Text(text = stringResource(id = R.string.screen_create_poll_anonymous_desc)) }, @@ -229,6 +246,52 @@ private fun CreatePollTopAppBar( ) } +@Composable +private fun MaxSelectionsStepper( + current: Int, + max: Int, + onDecrement: () -> Unit, + onIncrement: () -> Unit, + modifier: Modifier = Modifier, +) { + Row( + modifier = modifier, + verticalAlignment = Alignment.CenterVertically, + ) { + Icon( + imageVector = CompoundIcons.Minus(), + contentDescription = null, + modifier = Modifier + .clickable(enabled = current > 1) { onDecrement() } + .size(32.dp) + .padding(4.dp), + tint = if (current > 1) { + ElementTheme.colors.bgAccentRest + } else { + ElementTheme.colors.iconDisabled + }, + ) + Text( + text = current.toString(), + modifier = Modifier.padding(horizontal = 12.dp), + style = ElementTheme.typography.fontBodyLgRegular, + ) + Icon( + imageVector = CompoundIcons.Plus(), + contentDescription = null, + modifier = Modifier + .clickable(enabled = current < max) { onIncrement() } + .size(32.dp) + .padding(4.dp), + tint = if (current < max) { + ElementTheme.colors.bgAccentRest + } else { + ElementTheme.colors.iconDisabled + }, + ) + } +} + @PreviewsDayNight @Composable internal fun CreatePollViewPreview( diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/PollFormState.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/PollFormState.kt index 46045d711d..eae39a670d 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/PollFormState.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/PollFormState.kt @@ -25,12 +25,14 @@ data class PollFormState( val question: String, val answers: ImmutableList, val isDisclosed: Boolean, + val maxSelections: Int, ) { companion object { val Empty = PollFormState( question = "", answers = MutableList(MIN_ANSWERS) { "" }.toImmutableList(), isDisclosed = true, + maxSelections = 1, ) } @@ -44,13 +46,17 @@ data class PollFormState( * Create a copy of the [PollFormState] with a new blank answer added. * * If the maximum number of answers has already been reached an answer is not added. + * + * Also clamps [maxSelections] to the new answer count to keep state consistent. */ fun withNewAnswer(): PollFormState { if (!canAddAnswer) { return this } - return copy(answers = (answers + "").toImmutableList()) + val newAnswers = (answers + "").toImmutableList() + val clampedMaxSelections = maxSelections.coerceIn(1, newAnswers.size) + return copy(answers = newAnswers, maxSelections = clampedMaxSelections) } /** @@ -67,7 +73,9 @@ data class PollFormState( return this } - return copy(answers = answers.filterIndexed { i, _ -> i != index }.toImmutableList()) + val newAnswers = answers.filterIndexed { i, _ -> i != index }.toImmutableList() + val clampedMaxSelections = maxSelections.coerceIn(1, newAnswers.size) + return copy(answers = newAnswers, maxSelections = clampedMaxSelections) } /** @@ -95,6 +103,11 @@ data class PollFormState( */ val canDeleteAnswer get() = answers.size > MIN_ANSWERS + /** + * The effective max selections, clamped to the number of answers. + */ + val effectiveMaxSelections get() = maxSelections.coerceIn(1, answers.size) + /** * Whether the form is currently valid. */ @@ -110,6 +123,7 @@ internal val pollFormStateSaver = mapSaver( "question" to it.question, "answers" to it.answers.toTypedArray(), "isDisclosed" to it.isDisclosed, + "maxSelections" to it.maxSelections, ) }, restore = { saved -> @@ -117,6 +131,7 @@ internal val pollFormStateSaver = mapSaver( question = saved["question"] as String, answers = (saved["answers"] as Array<*>).map { it as String }.toImmutableList(), isDisclosed = saved["isDisclosed"] as Boolean, + maxSelections = saved["maxSelections"] as Int, ) } ) diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryEvents.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryEvents.kt index 14ce13d67a..0ecd9dde16 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryEvents.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryEvents.kt @@ -13,7 +13,7 @@ import io.element.android.libraries.matrix.api.core.EventId sealed interface PollHistoryEvents { data object LoadMore : PollHistoryEvents - data class SelectPollAnswer(val pollStartId: EventId, val answerId: String) : PollHistoryEvents + data class SelectPollAnswer(val pollStartId: EventId, val answerIds: List) : PollHistoryEvents data class EndPoll(val pollStartId: EventId) : PollHistoryEvents data class SelectFilter(val filter: PollHistoryFilter) : PollHistoryEvents } diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryPresenter.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryPresenter.kt index 434e2ed18c..08a0a17b60 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryPresenter.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryPresenter.kt @@ -31,6 +31,7 @@ import io.element.android.libraries.matrix.api.timeline.Timeline import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.flow.map import kotlinx.coroutines.launch +import timber.log.Timber @Inject class PollHistoryPresenter( @@ -72,8 +73,10 @@ class PollHistoryPresenter( sendPollResponseAction.execute( timeline = timeline, pollStartId = event.pollStartId, - answerId = event.answerId - ) + answerIds = event.answerIds + ).onFailure { error -> + Timber.e(error, "Failed to send poll response") + } } is PollHistoryEvents.EndPoll -> sessionCoroutineScope.launch { endPollAction.execute(timeline = timeline, pollStartId = event.pollStartId) diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryView.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryView.kt index 9a654c2abb..0210f1efcb 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryView.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryView.kt @@ -65,8 +65,8 @@ fun PollHistoryView( state.eventSink(PollHistoryEvents.LoadMore) } - fun onSelectAnswer(pollStartId: EventId, answerId: String) { - state.eventSink(PollHistoryEvents.SelectPollAnswer(pollStartId, answerId)) + fun onSelectAnswer(pollStartId: EventId, answerIds: List) { + state.eventSink(PollHistoryEvents.SelectPollAnswer(pollStartId, answerIds)) } fun onEndPoll(pollStartId: EventId) { @@ -151,7 +151,7 @@ private fun PollHistoryList( pollHistoryItems: ImmutableList, hasMoreToLoad: Boolean, isLoading: Boolean, - onSelectAnswer: (pollStartId: EventId, answerId: String) -> Unit, + onSelectAnswer: (pollStartId: EventId, answerIds: List) -> Unit, onEditPoll: (pollStartId: EventId) -> Unit, onEndPoll: (pollStartId: EventId) -> Unit, onLoadMore: () -> Unit, @@ -222,7 +222,7 @@ private fun LoadMoreButton(isLoading: Boolean, onClick: () -> Unit) { @Composable private fun PollHistoryItemRow( pollHistoryItem: PollHistoryItem, - onSelectAnswer: (pollStartId: EventId, answerId: String) -> Unit, + onSelectAnswer: (pollStartId: EventId, answerIds: List) -> Unit, onEditPoll: (pollStartId: EventId) -> Unit, onEndPoll: (pollStartId: EventId) -> Unit, modifier: Modifier = Modifier, diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/model/DefaultPollContentStateFactory.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/model/DefaultPollContentStateFactory.kt index f781b9474d..16ac2415fa 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/model/DefaultPollContentStateFactory.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/model/DefaultPollContentStateFactory.kt @@ -43,15 +43,21 @@ class DefaultPollContentStateFactory( ?.value .orEmpty() } + val currentSelectionCount = myVotes.size + val maxSelections = content.maxSelections.toInt() + val isSelectionLimitReached = currentSelectionCount >= maxSelections + val answerItems = content.answers.map { answer -> val answerVoteCount = content.votes[answer.id]?.size ?: 0 val isSelected = answer.id in myVotes val isWinner = answer.id in winnerIds val percentage = if (totalVoteCount > 0) answerVoteCount.toFloat() / totalVoteCount.toFloat() else 0f + // An answer is enabled if the poll hasn't ended and either the user can still select more answers or this answer is already selected + val isEnabled = !isPollEnded && (!isSelectionLimitReached || isSelected) PollAnswerItem( answer = answer, isSelected = isSelected, - isEnabled = !isPollEnded, + isEnabled = isEnabled, isWinner = isWinner, showVotes = content.kind.isDisclosed || isPollEnded, votesCount = answerVoteCount, @@ -64,6 +70,7 @@ class DefaultPollContentStateFactory( question = content.question, answerItems = answerItems.toImmutableList(), pollKind = content.kind, + maxSelections = content.maxSelections, isPollEditable = isEditable, isPollEnded = isPollEnded, isMine = isOwn, diff --git a/features/poll/impl/src/main/res/values/temporary.xml b/features/poll/impl/src/main/res/values/temporary.xml new file mode 100644 index 0000000000..8e8935a1e0 --- /dev/null +++ b/features/poll/impl/src/main/res/values/temporary.xml @@ -0,0 +1,5 @@ + + + "Maximum selections" + "How many options each voter can select" + diff --git a/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/create/CreatePollPresenterTest.kt b/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/create/CreatePollPresenterTest.kt index dee0268c1c..61190e20a7 100644 --- a/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/create/CreatePollPresenterTest.kt +++ b/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/create/CreatePollPresenterTest.kt @@ -525,6 +525,8 @@ class CreatePollPresenterTest { assertThat(question).isEmpty() assertThat(answers).isEqualTo(listOf(Answer("", false), Answer("", false))) assertThat(pollKind).isEqualTo(PollKind.Disclosed) + assertThat(maxSelections).isEqualTo(1) + assertThat(maxAllowedSelections).isEqualTo(2) assertThat(showBackConfirmation).isFalse() assertThat(showDeleteConfirmation).isFalse() } diff --git a/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/create/PollFormStateSaverTest.kt b/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/create/PollFormStateSaverTest.kt index 86e4b28676..ba46d77a26 100644 --- a/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/create/PollFormStateSaverTest.kt +++ b/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/create/PollFormStateSaverTest.kt @@ -24,6 +24,7 @@ class PollFormStateSaverTest { question = "question", answers = persistentListOf("answer1", "answer2"), isDisclosed = true, + maxSelections = 2, ) val saved = with(CanSaveScope) { diff --git a/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/history/PollHistoryPresenterTest.kt b/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/history/PollHistoryPresenterTest.kt index 8d4cedc6a8..537dcf7604 100644 --- a/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/history/PollHistoryPresenterTest.kt +++ b/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/history/PollHistoryPresenterTest.kt @@ -117,7 +117,7 @@ class PollHistoryPresenterTest { state.eventSink(PollHistoryEvents.EndPoll(AN_EVENT_ID)) runCurrent() endPollAction.verifyExecutionCount(1) - state.eventSink(PollHistoryEvents.SelectPollAnswer(AN_EVENT_ID, "answer")) + state.eventSink(PollHistoryEvents.SelectPollAnswer(AN_EVENT_ID, listOf("answer"))) runCurrent() sendPollResponseAction.verifyExecutionCount(1) cancelAndConsumeRemainingEvents() diff --git a/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/history/PollHistoryViewTest.kt b/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/history/PollHistoryViewTest.kt index 1ff25a0a81..3614b06ad8 100644 --- a/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/history/PollHistoryViewTest.kt +++ b/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/history/PollHistoryViewTest.kt @@ -137,7 +137,7 @@ class PollHistoryViewTest { useUnmergedTree = true, ).performClick() eventsRecorder.assertSingle( - PollHistoryEvents.SelectPollAnswer(eventId, answer.id) + PollHistoryEvents.SelectPollAnswer(eventId, listOf(answer.id)) ) } diff --git a/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/pollcontent/PollContentStateFactoryTest.kt b/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/pollcontent/PollContentStateFactoryTest.kt index 277508681e..5996b29835 100644 --- a/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/pollcontent/PollContentStateFactoryTest.kt +++ b/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/pollcontent/PollContentStateFactoryTest.kt @@ -59,10 +59,10 @@ class PollContentStateFactoryTest { ) val expectedState = aPollContentState( answerItems = listOf( - aPollAnswerItem(answer = A_POLL_ANSWER_1, votesCount = 3, percentage = 0.3f), + aPollAnswerItem(answer = A_POLL_ANSWER_1, isEnabled = false, votesCount = 3, percentage = 0.3f), aPollAnswerItem(answer = A_POLL_ANSWER_2, isSelected = true, votesCount = 6, percentage = 0.6f), - aPollAnswerItem(answer = A_POLL_ANSWER_3), - aPollAnswerItem(answer = A_POLL_ANSWER_4, votesCount = 1, percentage = 0.1f), + aPollAnswerItem(answer = A_POLL_ANSWER_3, isEnabled = false), + aPollAnswerItem(answer = A_POLL_ANSWER_4, isEnabled = false, votesCount = 1, percentage = 0.1f), ) ) assertThat(state).isEqualTo(expectedState) @@ -139,10 +139,10 @@ class PollContentStateFactoryTest { val expectedState = aPollContentState( pollKind = PollKind.Undisclosed, answerItems = listOf( - aPollAnswerItem(answer = A_POLL_ANSWER_1, showVotes = false, votesCount = 3, percentage = 0.3f), + aPollAnswerItem(answer = A_POLL_ANSWER_1, isEnabled = false, showVotes = false, votesCount = 3, percentage = 0.3f), aPollAnswerItem(answer = A_POLL_ANSWER_2, showVotes = false, isSelected = true, votesCount = 6, percentage = 0.6f), - aPollAnswerItem(answer = A_POLL_ANSWER_3, showVotes = false), - aPollAnswerItem(answer = A_POLL_ANSWER_4, showVotes = false, votesCount = 1, percentage = 0.1f), + aPollAnswerItem(answer = A_POLL_ANSWER_3, isEnabled = false, showVotes = false), + aPollAnswerItem(answer = A_POLL_ANSWER_4, isEnabled = false, showVotes = false, votesCount = 1, percentage = 0.1f), ), ) assertThat(state).isEqualTo(expectedState) @@ -241,6 +241,7 @@ class PollContentStateFactoryTest { question = question, answerItems = answerItems.toImmutableList(), pollKind = pollKind, + maxSelections = 1u, isPollEditable = isEditable, isPollEnded = isEnded, isMine = isMine, diff --git a/features/poll/test/src/main/kotlin/io/element/android/features/poll/test/actions/FakeSendPollResponseAction.kt b/features/poll/test/src/main/kotlin/io/element/android/features/poll/test/actions/FakeSendPollResponseAction.kt index 1a779d5cab..e188dc1e4f 100644 --- a/features/poll/test/src/main/kotlin/io/element/android/features/poll/test/actions/FakeSendPollResponseAction.kt +++ b/features/poll/test/src/main/kotlin/io/element/android/features/poll/test/actions/FakeSendPollResponseAction.kt @@ -19,7 +19,7 @@ class FakeSendPollResponseAction : SendPollResponseAction { assert(executionCount == count) } - override suspend fun execute(timeline: Timeline, pollStartId: EventId, answerId: String): Result { + override suspend fun execute(timeline: Timeline, pollStartId: EventId, answerIds: List): Result { executionCount++ return Result.success(Unit) } diff --git a/features/poll/test/src/main/kotlin/io/element/android/features/poll/test/pollcontent/FakePollContentStateFactory.kt b/features/poll/test/src/main/kotlin/io/element/android/features/poll/test/pollcontent/FakePollContentStateFactory.kt index 87755afaf0..4a3bfc2041 100644 --- a/features/poll/test/src/main/kotlin/io/element/android/features/poll/test/pollcontent/FakePollContentStateFactory.kt +++ b/features/poll/test/src/main/kotlin/io/element/android/features/poll/test/pollcontent/FakePollContentStateFactory.kt @@ -22,6 +22,7 @@ class FakePollContentStateFactory : PollContentStateFactory { question = content.question, answerItems = emptyList().toImmutableList(), pollKind = content.kind, + maxSelections = content.maxSelections, isPollEditable = isEditable, isPollEnded = content.endTime != null, isMine = isOwn, From a3fb65e924447bb00aff2a53e4d6fefc6d8fc170 Mon Sep 17 00:00:00 2001 From: bxdxnn <267911624+bxdxnn@users.noreply.github.com> Date: Tue, 9 Jun 2026 11:00:18 +0000 Subject: [PATCH 02/97] Address design --- .../android/features/poll/impl/create/CreatePollView.kt | 1 - features/poll/impl/src/main/res/values/temporary.xml | 3 +-- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollView.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollView.kt index b316563f02..1ba8044566 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollView.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollView.kt @@ -180,7 +180,6 @@ fun CreatePollView( HorizontalDivider() ListItem( headlineContent = { Text(text = stringResource(id = R.string.screen_create_poll_max_selections_headline)) }, - supportingContent = { Text(text = stringResource(id = R.string.screen_create_poll_max_selections_desc)) }, trailingContent = ListItemContent.Custom { MaxSelectionsStepper( current = state.maxSelections, diff --git a/features/poll/impl/src/main/res/values/temporary.xml b/features/poll/impl/src/main/res/values/temporary.xml index 8e8935a1e0..8292270d45 100644 --- a/features/poll/impl/src/main/res/values/temporary.xml +++ b/features/poll/impl/src/main/res/values/temporary.xml @@ -1,5 +1,4 @@ - "Maximum selections" - "How many options each voter can select" + "Votes allowed per person" From f067ba34e77ca9770ab0ec47f171c0a9e0b4c08d Mon Sep 17 00:00:00 2001 From: bxdxnn <267911624+bxdxnn@users.noreply.github.com> Date: Thu, 11 Jun 2026 17:04:37 +0300 Subject: [PATCH 03/97] Update features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentState.kt Co-authored-by: Benoit Marty --- .../android/features/poll/api/pollcontent/PollContentState.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentState.kt b/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentState.kt index ecadc37a23..796ac179d9 100644 --- a/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentState.kt +++ b/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentState.kt @@ -33,5 +33,5 @@ data class PollContentState( val isPollEnded: Boolean, val isMine: Boolean, ) { - val isMultipleSelection: Boolean get() = maxSelections > 1u + val isMultipleSelection = maxSelections > 1u } From a04078aa9d8fe0e7d51bc4245891177a8a139957 Mon Sep 17 00:00:00 2001 From: bxdxnn <267911624+bxdxnn@users.noreply.github.com> Date: Fri, 7 Aug 2026 13:38:20 +0000 Subject: [PATCH 04/97] Address review --- .../features/poll/impl/create/CreatePollView.kt | 4 ++-- .../android/features/poll/impl/create/PollFormState.kt | 10 +--------- 2 files changed, 3 insertions(+), 11 deletions(-) diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollView.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollView.kt index ea234f1b4d..9800af5b88 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollView.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollView.kt @@ -259,7 +259,7 @@ private fun MaxSelectionsStepper( ) { Icon( imageVector = CompoundIcons.Minus(), - contentDescription = null, + contentDescription = stringResource(id = CommonStrings.a11y_create_poll_votes_allowed_decrease), modifier = Modifier .clickable(enabled = current > 1) { onDecrement() } .size(32.dp) @@ -277,7 +277,7 @@ private fun MaxSelectionsStepper( ) Icon( imageVector = CompoundIcons.Plus(), - contentDescription = null, + contentDescription = stringResource(id = CommonStrings.a11y_create_poll_votes_allowed_increase), modifier = Modifier .clickable(enabled = current < max) { onIncrement() } .size(32.dp) diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/PollFormState.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/PollFormState.kt index eae39a670d..d7198b8c3d 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/PollFormState.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/PollFormState.kt @@ -46,8 +46,6 @@ data class PollFormState( * Create a copy of the [PollFormState] with a new blank answer added. * * If the maximum number of answers has already been reached an answer is not added. - * - * Also clamps [maxSelections] to the new answer count to keep state consistent. */ fun withNewAnswer(): PollFormState { if (!canAddAnswer) { @@ -55,8 +53,7 @@ data class PollFormState( } val newAnswers = (answers + "").toImmutableList() - val clampedMaxSelections = maxSelections.coerceIn(1, newAnswers.size) - return copy(answers = newAnswers, maxSelections = clampedMaxSelections) + return copy(answers = newAnswers) } /** @@ -103,11 +100,6 @@ data class PollFormState( */ val canDeleteAnswer get() = answers.size > MIN_ANSWERS - /** - * The effective max selections, clamped to the number of answers. - */ - val effectiveMaxSelections get() = maxSelections.coerceIn(1, answers.size) - /** * Whether the form is currently valid. */ From 221f13269e0c82c25700354ef98a663e7d042dc7 Mon Sep 17 00:00:00 2001 From: bxdxnn <267911624+bxdxnn@users.noreply.github.com> Date: Fri, 7 Aug 2026 13:42:16 +0000 Subject: [PATCH 05/97] Fix --- .../element/android/features/poll/impl/create/PollFormState.kt | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/PollFormState.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/PollFormState.kt index d7198b8c3d..ef70ac4ae6 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/PollFormState.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/PollFormState.kt @@ -52,8 +52,7 @@ data class PollFormState( return this } - val newAnswers = (answers + "").toImmutableList() - return copy(answers = newAnswers) + return copy(answers = (answers + "").toImmutableList()) } /** From d36daca2420e9835df9dd798765636e2a03359e1 Mon Sep 17 00:00:00 2001 From: bxdxnn <267911624+bxdxnn@users.noreply.github.com> Date: Fri, 7 Aug 2026 13:44:43 +0000 Subject: [PATCH 06/97] Fix --- .../android/features/poll/impl/create/CreatePollPresenter.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollPresenter.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollPresenter.kt index 22d096e763..b2c5bc1276 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollPresenter.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/create/CreatePollPresenter.kt @@ -109,7 +109,7 @@ class CreatePollPresenter( question = poll.question, answers = poll.answers, pollKind = poll.pollKind, - maxSelections = poll.effectiveMaxSelections, + maxSelections = poll.maxSelections, ).onSuccess { analyticsService.capturePollSaved( isUndisclosed = poll.pollKind == PollKind.Undisclosed, @@ -185,7 +185,7 @@ class CreatePollPresenter( question = poll.question, answers = immutableAnswers, pollKind = poll.pollKind, - maxSelections = poll.effectiveMaxSelections, + maxSelections = poll.maxSelections, maxAllowedSelections = poll.answers.size, showBackConfirmation = showBackConfirmation, showDeleteConfirmation = showDeleteConfirmation, From 17365a50d17389c593f58624a9da6e20aba9172a Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Sun, 9 Aug 2026 01:59:17 +0300 Subject: [PATCH 07/97] Keep saving files to Downloads once 32 files share the same name MediaStore de-duplicates the display name of a new file itself, but its uniquifier gives up after 32 collisions and throws IllegalStateException. Saving then failed with "Sorry, an error occurred" and wrote nothing, and because image.png is the name most screenshots arrive with, a user who saves media regularly could reach a state where that name never saved again without deleting files from Downloads by hand. A new saveWithUniqueFileName helper in androidutils retries the insert once with a suffixed name when the platform reports it cannot build a unique one; a second failure propagates so genuine errors still surface. withFileNameSuffix builds that name by inserting the suffix before the extension, and handles names without one. Both call sites are fixed: AndroidLocalMediaActions and DefaultFileSave carried byte-identical logic and therefore the identical defect. While in AndroidLocalMediaActions, a null output uri from ContentResolver.insert now throws instead of reporting success without writing anything. The pre-Android-Q path is untouched: it overwrites rather than uniquifying, so it never reaches this limit. Relates to https://github.com/element-hq/element-x-android/issues/6371 --- .../features/viewfolder/impl/file/FileSave.kt | 24 ++--- .../libraries/androidutils/file/File.kt | 35 ++++++++ .../libraries/androidutils/file/FileTest.kt | 89 +++++++++++++++++++ .../impl/local/AndroidLocalMediaActions.kt | 24 ++--- 4 files changed, 150 insertions(+), 22 deletions(-) create mode 100644 libraries/androidutils/src/test/kotlin/io/element/android/libraries/androidutils/file/FileTest.kt diff --git a/features/viewfolder/impl/src/main/kotlin/io/element/android/features/viewfolder/impl/file/FileSave.kt b/features/viewfolder/impl/src/main/kotlin/io/element/android/features/viewfolder/impl/file/FileSave.kt index 03f442f36e..add55cee36 100644 --- a/features/viewfolder/impl/src/main/kotlin/io/element/android/features/viewfolder/impl/file/FileSave.kt +++ b/features/viewfolder/impl/src/main/kotlin/io/element/android/features/viewfolder/impl/file/FileSave.kt @@ -16,6 +16,7 @@ import android.provider.MediaStore import androidx.annotation.RequiresApi import dev.zacsweers.metro.AppScope import dev.zacsweers.metro.ContributesBinding +import io.element.android.libraries.androidutils.file.saveWithUniqueFileName import io.element.android.libraries.androidutils.system.toast import io.element.android.libraries.core.coroutine.CoroutineDispatchers import io.element.android.libraries.core.extensions.runCatchingExceptions @@ -25,6 +26,7 @@ import kotlinx.coroutines.withContext import timber.log.Timber import java.io.File import java.io.FileOutputStream +import java.io.IOException interface FileSave { suspend fun save( @@ -61,18 +63,18 @@ class DefaultFileSave( @RequiresApi(Build.VERSION_CODES.Q) private fun saveOnDiskUsingMediaStore(path: String) { val file = File(path) - val contentValues = ContentValues().apply { - put(MediaStore.MediaColumns.DISPLAY_NAME, file.name) - put(MediaStore.MediaColumns.MIME_TYPE, MimeTypes.OctetStream) - put(MediaStore.MediaColumns.RELATIVE_PATH, Environment.DIRECTORY_DOWNLOADS) - } val resolver = context.contentResolver - val outputUri = resolver.insert(MediaStore.Downloads.EXTERNAL_CONTENT_URI, contentValues) - if (outputUri != null) { - file.inputStream().use { input -> - resolver.openOutputStream(outputUri).use { output -> - input.copyTo(output!!, DEFAULT_BUFFER_SIZE) - } + val outputUri = saveWithUniqueFileName(file.name) { displayName -> + val contentValues = ContentValues().apply { + put(MediaStore.MediaColumns.DISPLAY_NAME, displayName) + put(MediaStore.MediaColumns.MIME_TYPE, MimeTypes.OctetStream) + put(MediaStore.MediaColumns.RELATIVE_PATH, Environment.DIRECTORY_DOWNLOADS) + } + resolver.insert(MediaStore.Downloads.EXTERNAL_CONTENT_URI, contentValues) + } ?: throw IOException("Unable to create the destination file") + file.inputStream().use { input -> + resolver.openOutputStream(outputUri).use { output -> + input.copyTo(output!!, DEFAULT_BUFFER_SIZE) } } } diff --git a/libraries/androidutils/src/main/kotlin/io/element/android/libraries/androidutils/file/File.kt b/libraries/androidutils/src/main/kotlin/io/element/android/libraries/androidutils/file/File.kt index 21306ff192..dd8dc4eeb0 100644 --- a/libraries/androidutils/src/main/kotlin/io/element/android/libraries/androidutils/file/File.kt +++ b/libraries/androidutils/src/main/kotlin/io/element/android/libraries/androidutils/file/File.kt @@ -42,6 +42,41 @@ fun File.safeRenameTo(dest: File) { ) } +/** + * Returns this file name with [suffix] inserted before its extension, i.e. `"image.png"` with the + * suffix `"_1"` gives `"image_1.png"`. A name without extension simply gets the suffix appended. + */ +fun String.withFileNameSuffix(suffix: String): String { + val extension = substringAfterLast('.', "") + return if (extension.isEmpty()) { + "$this$suffix" + } else { + "${substringBeforeLast('.')}$suffix.$extension" + } +} + +/** + * Runs [saveAs] with [fileName], and runs it once more with a suffixed name if the platform failed to + * build a unique name for it. + * + * `MediaStore` de-duplicates the display name of a new file itself, but gives up after 32 conflicts + * and throws `IllegalStateException("Failed to build unique file")`, which makes saving a file with a + * common name such as `image.png` fail for good. + * See https://github.com/element-hq/element-x-android/issues/6371 + */ +fun saveWithUniqueFileName( + fileName: String, + uniqueSuffix: () -> String = { "_${System.currentTimeMillis()}" }, + saveAs: (String) -> T, +): T { + return try { + saveAs(fileName) + } catch (nameConflict: IllegalStateException) { + Timber.w(nameConflict, "Unable to build a unique file name, retrying with a suffixed one") + saveAs(fileName.withFileNameSuffix(uniqueSuffix())) + } +} + fun Context.createTmpFile(baseDir: File = cacheDir, extension: String? = null): File { val suffix = extension?.let { ".$extension" } return File.createTempFile(UUID.randomUUID().toString(), suffix, baseDir).apply { mkdirs() } diff --git a/libraries/androidutils/src/test/kotlin/io/element/android/libraries/androidutils/file/FileTest.kt b/libraries/androidutils/src/test/kotlin/io/element/android/libraries/androidutils/file/FileTest.kt new file mode 100644 index 0000000000..b2e28f6249 --- /dev/null +++ b/libraries/androidutils/src/test/kotlin/io/element/android/libraries/androidutils/file/FileTest.kt @@ -0,0 +1,89 @@ +/* + * Copyright (c) 2026 Element Creations 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.androidutils.file + +import com.google.common.truth.Truth.assertThat +import org.junit.Test + +class FileTest { + @Test + fun `withFileNameSuffix - inserts the suffix before the extension`() { + assertThat("image.png".withFileNameSuffix("_1")).isEqualTo("image_1.png") + } + + @Test + fun `withFileNameSuffix - appends the suffix when there is no extension`() { + assertThat("README".withFileNameSuffix("_1")).isEqualTo("README_1") + } + + @Test + fun `withFileNameSuffix - only considers the last extension`() { + assertThat("archive.tar.gz".withFileNameSuffix("_1")).isEqualTo("archive.tar_1.gz") + } + + @Test + fun `withFileNameSuffix - handles a name starting with a dot`() { + assertThat(".hidden".withFileNameSuffix("_1")).isEqualTo("_1.hidden") + } + + @Test + fun `saveWithUniqueFileName - uses the original name when it works`() { + val usedNames = mutableListOf() + + val result = saveWithUniqueFileName( + fileName = "image.png", + uniqueSuffix = { "_1" }, + ) { name -> + usedNames.add(name) + "saved as $name" + } + + assertThat(result).isEqualTo("saved as image.png") + assertThat(usedNames).containsExactly("image.png") + } + + @Test + fun `saveWithUniqueFileName - retries with a suffixed name when the name cannot be made unique`() { + val usedNames = mutableListOf() + + val result = saveWithUniqueFileName( + fileName = "image.png", + uniqueSuffix = { "_1" }, + ) { name -> + usedNames.add(name) + if (name == "image.png") { + error("Failed to build unique file") + } + "saved as $name" + } + + assertThat(result).isEqualTo("saved as image_1.png") + assertThat(usedNames).containsExactly("image.png", "image_1.png").inOrder() + } + + @Test + fun `saveWithUniqueFileName - does not retry more than once`() { + val usedNames = mutableListOf() + + val error = try { + saveWithUniqueFileName( + fileName = "image.png", + uniqueSuffix = { "_1" }, + ) { name -> + usedNames.add(name) + error("Failed to build unique file") + } + null + } catch (nameConflict: IllegalStateException) { + nameConflict + } + + assertThat(error).isInstanceOf(IllegalStateException::class.java) + assertThat(usedNames).containsExactly("image.png", "image_1.png").inOrder() + } +} diff --git a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/local/AndroidLocalMediaActions.kt b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/local/AndroidLocalMediaActions.kt index 071e0dba64..4364020052 100644 --- a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/local/AndroidLocalMediaActions.kt +++ b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/local/AndroidLocalMediaActions.kt @@ -32,6 +32,7 @@ import androidx.core.content.PermissionChecker import androidx.core.net.toFile import dev.zacsweers.metro.AppScope import dev.zacsweers.metro.ContributesBinding +import io.element.android.libraries.androidutils.file.saveWithUniqueFileName import io.element.android.libraries.androidutils.system.startInstallFromSourceIntent import io.element.android.libraries.core.coroutine.CoroutineDispatchers import io.element.android.libraries.core.extensions.runCatchingExceptions @@ -44,6 +45,7 @@ import kotlinx.coroutines.withContext import timber.log.Timber import java.io.File import java.io.FileOutputStream +import java.io.IOException import java.io.InputStream @ContributesBinding(AppScope::class) @@ -172,18 +174,18 @@ class AndroidLocalMediaActions( @RequiresApi(Build.VERSION_CODES.Q) private fun saveOnDiskUsingMediaStore(localMedia: LocalMedia) { - val contentValues = ContentValues().apply { - put(MediaStore.MediaColumns.DISPLAY_NAME, localMedia.info.filename) - put(MediaStore.MediaColumns.MIME_TYPE, localMedia.info.mimeType) - put(MediaStore.MediaColumns.RELATIVE_PATH, Environment.DIRECTORY_DOWNLOADS) - } val resolver = context.contentResolver - val outputUri = resolver.insert(MediaStore.Downloads.EXTERNAL_CONTENT_URI, contentValues) - if (outputUri != null) { - localMedia.openStream()?.use { input -> - resolver.openOutputStream(outputUri).use { output -> - input.copyTo(output!!, DEFAULT_BUFFER_SIZE) - } + val outputUri = saveWithUniqueFileName(localMedia.info.filename) { displayName -> + val contentValues = ContentValues().apply { + put(MediaStore.MediaColumns.DISPLAY_NAME, displayName) + put(MediaStore.MediaColumns.MIME_TYPE, localMedia.info.mimeType) + put(MediaStore.MediaColumns.RELATIVE_PATH, Environment.DIRECTORY_DOWNLOADS) + } + resolver.insert(MediaStore.Downloads.EXTERNAL_CONTENT_URI, contentValues) + } ?: throw IOException("Unable to create the destination file") + localMedia.openStream()?.use { input -> + resolver.openOutputStream(outputUri).use { output -> + input.copyTo(output!!, DEFAULT_BUFFER_SIZE) } } } From fbdb99019e8735832cd097f8be02325495beb547 Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Sun, 9 Aug 2026 15:40:20 +0300 Subject: [PATCH 08/97] Drop the MediaStore explanation from the save helper Review feedback: the retry itself is short enough to read, and the platform limit it works around belongs in the commit, not the source. The contract of the name helper keeps its one-line KDoc. --- .../element/android/libraries/androidutils/file/File.kt | 9 --------- 1 file changed, 9 deletions(-) diff --git a/libraries/androidutils/src/main/kotlin/io/element/android/libraries/androidutils/file/File.kt b/libraries/androidutils/src/main/kotlin/io/element/android/libraries/androidutils/file/File.kt index dd8dc4eeb0..7c5f0450e9 100644 --- a/libraries/androidutils/src/main/kotlin/io/element/android/libraries/androidutils/file/File.kt +++ b/libraries/androidutils/src/main/kotlin/io/element/android/libraries/androidutils/file/File.kt @@ -55,15 +55,6 @@ fun String.withFileNameSuffix(suffix: String): String { } } -/** - * Runs [saveAs] with [fileName], and runs it once more with a suffixed name if the platform failed to - * build a unique name for it. - * - * `MediaStore` de-duplicates the display name of a new file itself, but gives up after 32 conflicts - * and throws `IllegalStateException("Failed to build unique file")`, which makes saving a file with a - * common name such as `image.png` fail for good. - * See https://github.com/element-hq/element-x-android/issues/6371 - */ fun saveWithUniqueFileName( fileName: String, uniqueSuffix: () -> String = { "_${System.currentTimeMillis()}" }, From 4558590492a263b554d2a03a68195b5ce9171e34 Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Mon, 10 Aug 2026 11:49:15 +0300 Subject: [PATCH 09/97] Cover both MediaStore save paths with a fake provider DefaultFileSave had no test at all and AndroidLocalMediaActions only exercised the failing path, so neither the uniquifying retry nor the new IOException on a null insert was ever executed. FakeMediaStoreContentProvider stands in for the media authority: it records the display names an insert is attempted with, keeps whatever is copied into it, and can either collide a name the way MediaStore does past 32 files or refuse to create anything. Both call sites now go through it for the plain save, the retry and the rejected insert. Its name cannot follow the Fake convention because it extends the framework ContentProvider, so it joins the existing exceptions in KonsistClassNameTest next to FakeFileSystem and FakeKeyStore. --- .../impl/file/DefaultFileSaveTest.kt | 60 ++++++++++++++++ .../local/AndroidLocalMediaActionsTest.kt | 41 +++++++++++ .../tests/konsist/KonsistClassNameTest.kt | 1 + .../fake/FakeMediaStoreContentProvider.kt | 72 +++++++++++++++++++ 4 files changed, 174 insertions(+) create mode 100644 features/viewfolder/impl/src/test/kotlin/io/element/android/features/viewfolder/impl/file/DefaultFileSaveTest.kt create mode 100644 tests/testutils/src/main/kotlin/io/element/android/tests/testutils/fake/FakeMediaStoreContentProvider.kt diff --git a/features/viewfolder/impl/src/test/kotlin/io/element/android/features/viewfolder/impl/file/DefaultFileSaveTest.kt b/features/viewfolder/impl/src/test/kotlin/io/element/android/features/viewfolder/impl/file/DefaultFileSaveTest.kt new file mode 100644 index 0000000000..a991a11f76 --- /dev/null +++ b/features/viewfolder/impl/src/test/kotlin/io/element/android/features/viewfolder/impl/file/DefaultFileSaveTest.kt @@ -0,0 +1,60 @@ +/* + * Copyright (c) 2026 Element Creations 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.viewfolder.impl.file + +import com.google.common.truth.Truth.assertThat +import io.element.android.tests.testutils.fake.registerFakeMediaStoreContentProvider +import io.element.android.tests.testutils.robolectric.RobolectricTest +import io.element.android.tests.testutils.testCoroutineDispatchers +import kotlinx.coroutines.test.TestScope +import kotlinx.coroutines.test.runTest +import org.junit.Test +import org.robolectric.RuntimeEnvironment +import java.io.File + +class DefaultFileSaveTest : RobolectricTest() { + @Test + fun `save inserts the file in the Downloads collection under its own name`() = runTest { + val mediaStore = registerFakeMediaStoreContentProvider() + createFileSave().save(aFileToSave().path) + assertThat(mediaStore.insertedDisplayNames).containsExactly("a-file.txt") + assertThat(mediaStore.savedContent("a-file.txt")).isEqualTo("Some content") + } + + @Test + fun `save retries with a suffixed name when the name cannot be made unique`() = runTest { + val mediaStore = registerFakeMediaStoreContentProvider().apply { + conflictingDisplayNames = setOf("a-file.txt") + } + createFileSave().save(aFileToSave().path) + assertThat(mediaStore.insertedDisplayNames).hasSize(2) + assertThat(mediaStore.insertedDisplayNames.last()).matches("a-file_\\d+\\.txt") + assertThat(mediaStore.savedContent(mediaStore.insertedDisplayNames.last())).isEqualTo("Some content") + } + + @Test + fun `save writes nothing when the destination cannot be created`() = runTest { + val mediaStore = registerFakeMediaStoreContentProvider().apply { + returnsNoUriOnInsert = true + } + createFileSave().save(aFileToSave().path) + assertThat(mediaStore.insertedDisplayNames).containsExactly("a-file.txt") + assertThat(mediaStore.savedFileNames()).isEmpty() + } + + private fun aFileToSave(): File { + return File(RuntimeEnvironment.getApplication().cacheDir, "a-file.txt").apply { + writeText("Some content") + } + } + + private fun TestScope.createFileSave() = DefaultFileSave( + context = RuntimeEnvironment.getApplication(), + dispatchers = testCoroutineDispatchers(), + ) +} diff --git a/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/local/AndroidLocalMediaActionsTest.kt b/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/local/AndroidLocalMediaActionsTest.kt index cdc5f7220d..ab1b193e26 100644 --- a/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/local/AndroidLocalMediaActionsTest.kt +++ b/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/local/AndroidLocalMediaActionsTest.kt @@ -12,18 +12,22 @@ import android.net.Uri import androidx.activity.compose.LocalActivityResultRegistryOwner import androidx.compose.runtime.CompositionLocalProvider import androidx.compose.ui.platform.LocalContext +import androidx.core.net.toUri import app.cash.molecule.RecompositionMode import app.cash.molecule.moleculeFlow import app.cash.turbine.test import com.google.common.truth.Truth.assertThat import io.element.android.libraries.matrix.test.core.aBuildMeta import io.element.android.libraries.mediaviewer.test.viewer.aLocalMedia +import io.element.android.tests.testutils.fake.registerFakeMediaStoreContentProvider import io.element.android.tests.testutils.robolectric.RobolectricTest import io.element.android.tests.testutils.testCoroutineDispatchers import kotlinx.coroutines.test.TestScope import kotlinx.coroutines.test.runTest import org.junit.Test import org.robolectric.RuntimeEnvironment +import java.io.File +import java.io.IOException class AndroidLocalMediaActionsTest : RobolectricTest() { @Test @@ -62,6 +66,43 @@ class AndroidLocalMediaActionsTest : RobolectricTest() { assertThat(result.exceptionOrNull()).isNotNull() } + @Test + fun `test AndroidLocalMediaAction save on disk inserts the media under its own name`() = runTest { + val mediaStore = registerFakeMediaStoreContentProvider() + val sut = createAndroidLocalMediaActions() + val result = sut.saveOnDisk(aLocalMedia(aMediaFile().toUri())) + assertThat(result.exceptionOrNull()).isNull() + assertThat(mediaStore.insertedDisplayNames).containsExactly("an image file.jpg") + } + + @Test + fun `test AndroidLocalMediaAction save on disk retries with a suffixed name when the name cannot be made unique`() = runTest { + val mediaStore = registerFakeMediaStoreContentProvider().apply { + conflictingDisplayNames = setOf("an image file.jpg") + } + val sut = createAndroidLocalMediaActions() + val result = sut.saveOnDisk(aLocalMedia(aMediaFile().toUri())) + assertThat(result.exceptionOrNull()).isNull() + assertThat(mediaStore.insertedDisplayNames).hasSize(2) + assertThat(mediaStore.insertedDisplayNames.last()).matches("an image file_\\d+\\.jpg") + } + + @Test + fun `test AndroidLocalMediaAction save on disk fails when the destination cannot be created`() = runTest { + registerFakeMediaStoreContentProvider().apply { + returnsNoUriOnInsert = true + } + val sut = createAndroidLocalMediaActions() + val result = sut.saveOnDisk(aLocalMedia(aMediaFile().toUri())) + assertThat(result.exceptionOrNull()).isInstanceOf(IOException::class.java) + } + + private fun aMediaFile(): File { + return File(RuntimeEnvironment.getApplication().cacheDir, "an image file.jpg").apply { + writeText("Some content") + } + } + private fun TestScope.createAndroidLocalMediaActions() = AndroidLocalMediaActions( RuntimeEnvironment.getApplication(), testCoroutineDispatchers(), diff --git a/tests/konsist/src/test/kotlin/io/element/android/tests/konsist/KonsistClassNameTest.kt b/tests/konsist/src/test/kotlin/io/element/android/tests/konsist/KonsistClassNameTest.kt index 93b3200acc..ddb5ba95b3 100644 --- a/tests/konsist/src/test/kotlin/io/element/android/tests/konsist/KonsistClassNameTest.kt +++ b/tests/konsist/src/test/kotlin/io/element/android/tests/konsist/KonsistClassNameTest.kt @@ -104,6 +104,7 @@ class KonsistClassNameTest { "FakeImageLoader", "FakeKeyStore", "FakeListenableFuture", + "FakeMediaStoreContentProvider", ) .assertTrue { val interfaceName = it.name diff --git a/tests/testutils/src/main/kotlin/io/element/android/tests/testutils/fake/FakeMediaStoreContentProvider.kt b/tests/testutils/src/main/kotlin/io/element/android/tests/testutils/fake/FakeMediaStoreContentProvider.kt new file mode 100644 index 0000000000..4a1ffcda29 --- /dev/null +++ b/tests/testutils/src/main/kotlin/io/element/android/tests/testutils/fake/FakeMediaStoreContentProvider.kt @@ -0,0 +1,72 @@ +/* + * Copyright (c) 2026 Element Creations 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.tests.testutils.fake + +import android.content.ContentProvider +import android.content.ContentValues +import android.content.pm.ProviderInfo +import android.database.Cursor +import android.net.Uri +import android.os.ParcelFileDescriptor +import android.provider.MediaStore +import androidx.test.core.app.ApplicationProvider +import org.robolectric.shadows.ShadowContentResolver +import java.io.File +import java.nio.file.Files + +/** + * Stands in for the MediaStore provider: it records the display names an insert is attempted with, + * writes what is copied into it to a temporary directory, and can make any display name collide the + * way MediaStore does once a directory already holds 32 files with the same name. + */ +class FakeMediaStoreContentProvider : ContentProvider() { + private val directory: File = Files.createTempDirectory("fake-media-store").toFile() + + val insertedDisplayNames = mutableListOf() + + var conflictingDisplayNames: Set = emptySet() + + /** When true, an insert reports that it created nothing, the way a rejected insert does. */ + var returnsNoUriOnInsert: Boolean = false + + fun savedFileNames(): List = directory.list().orEmpty().toList() + + fun savedContent(displayName: String): String = File(directory, displayName).readText() + + override fun onCreate() = true + + override fun insert(uri: Uri, values: ContentValues?): Uri? { + val displayName = values?.getAsString(MediaStore.MediaColumns.DISPLAY_NAME).orEmpty() + insertedDisplayNames += displayName + check(displayName !in conflictingDisplayNames) { "Failed to build unique file" } + return if (returnsNoUriOnInsert) null else uri.buildUpon().appendPath(displayName).build() + } + + override fun openFile(uri: Uri, mode: String): ParcelFileDescriptor { + val file = File(directory, uri.lastPathSegment.orEmpty()) + return ParcelFileDescriptor.open(file, ParcelFileDescriptor.MODE_CREATE or ParcelFileDescriptor.MODE_READ_WRITE) + } + + override fun query(uri: Uri, projection: Array?, selection: String?, selectionArgs: Array?, sortOrder: String?): Cursor? = null + + override fun getType(uri: Uri): String? = null + + override fun update(uri: Uri, values: ContentValues?, selection: String?, selectionArgs: Array?) = 0 + + override fun delete(uri: Uri, selection: String?, selectionArgs: Array?) = 0 +} + +fun registerFakeMediaStoreContentProvider(): FakeMediaStoreContentProvider { + return FakeMediaStoreContentProvider().apply { + attachInfo( + ApplicationProvider.getApplicationContext(), + ProviderInfo().apply { authority = MediaStore.AUTHORITY } + ) + ShadowContentResolver.registerProviderInternal(MediaStore.AUTHORITY, this) + } +} From 59b26173a750f450d5f85ec4888de57e0abcde97 Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Thu, 13 Aug 2026 17:36:51 +0300 Subject: [PATCH 10/97] Create the fake MediaStore directory without java.nio.file Files.createTempDirectory needs API 26 and the fake lives in the main source set of tests:testutils, so lint failed it against the minimum of 24. File.createTempFile has been available since API 1 and still gives each provider instance its own directory. --- .../tests/testutils/fake/FakeMediaStoreContentProvider.kt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tests/testutils/src/main/kotlin/io/element/android/tests/testutils/fake/FakeMediaStoreContentProvider.kt b/tests/testutils/src/main/kotlin/io/element/android/tests/testutils/fake/FakeMediaStoreContentProvider.kt index 4a1ffcda29..13077db51f 100644 --- a/tests/testutils/src/main/kotlin/io/element/android/tests/testutils/fake/FakeMediaStoreContentProvider.kt +++ b/tests/testutils/src/main/kotlin/io/element/android/tests/testutils/fake/FakeMediaStoreContentProvider.kt @@ -17,7 +17,6 @@ import android.provider.MediaStore import androidx.test.core.app.ApplicationProvider import org.robolectric.shadows.ShadowContentResolver import java.io.File -import java.nio.file.Files /** * Stands in for the MediaStore provider: it records the display names an insert is attempted with, @@ -25,7 +24,10 @@ import java.nio.file.Files * way MediaStore does once a directory already holds 32 files with the same name. */ class FakeMediaStoreContentProvider : ContentProvider() { - private val directory: File = Files.createTempDirectory("fake-media-store").toFile() + private val directory: File = File.createTempFile("fake-media-store", null).apply { + delete() + mkdir() + } val insertedDisplayNames = mutableListOf() From 0b0124708dd64aec1d55ae1f046484d780065010 Mon Sep 17 00:00:00 2001 From: bxdxnn <267911624+bxdxnn@users.noreply.github.com> Date: Fri, 14 Aug 2026 18:05:32 +0000 Subject: [PATCH 11/97] Add the new test to the list --- .../io/element/android/tests/konsist/KonsistPreviewTest.kt | 1 + 1 file changed, 1 insertion(+) 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 e2a387eede..12b46b1207 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 @@ -124,6 +124,7 @@ class KonsistPreviewTest { "PollContentViewCreatorPreview", "PollContentViewDisclosedPreview", "PollContentViewEndedPreview", + "PollContentViewMultipleSelectionPreview", "PollContentViewUndisclosedPreview", "ProgressDialogWithContentPreview", "ProgressDialogWithTextAndContentPreview", From 2c4cf090cbadba051aa937dd52e7fc2d2788d2d5 Mon Sep 17 00:00:00 2001 From: ElementBot Date: Fri, 14 Aug 2026 18:27:41 +0000 Subject: [PATCH 12/97] Update screenshots --- ....pollcontent_PollContentViewMultipleSelection_Day_0_en.png | 3 +++ ...ollcontent_PollContentViewMultipleSelection_Night_0_en.png | 3 +++ .../features.poll.impl.create_CreatePollView_Day_0_en.png | 4 ++-- .../features.poll.impl.create_CreatePollView_Day_1_en.png | 4 ++-- .../features.poll.impl.create_CreatePollView_Day_2_en.png | 4 ++-- .../features.poll.impl.create_CreatePollView_Day_3_en.png | 4 ++-- .../features.poll.impl.create_CreatePollView_Day_6_en.png | 4 ++-- .../features.poll.impl.create_CreatePollView_Day_7_en.png | 4 ++-- .../features.poll.impl.create_CreatePollView_Day_8_en.png | 3 +++ .../features.poll.impl.create_CreatePollView_Night_0_en.png | 4 ++-- .../features.poll.impl.create_CreatePollView_Night_1_en.png | 4 ++-- .../features.poll.impl.create_CreatePollView_Night_2_en.png | 4 ++-- .../features.poll.impl.create_CreatePollView_Night_3_en.png | 4 ++-- .../features.poll.impl.create_CreatePollView_Night_6_en.png | 4 ++-- .../features.poll.impl.create_CreatePollView_Night_7_en.png | 4 ++-- .../features.poll.impl.create_CreatePollView_Night_8_en.png | 3 +++ 16 files changed, 36 insertions(+), 24 deletions(-) create mode 100644 tests/uitests/src/test/snapshots/images/features.poll.api.pollcontent_PollContentViewMultipleSelection_Day_0_en.png create mode 100644 tests/uitests/src/test/snapshots/images/features.poll.api.pollcontent_PollContentViewMultipleSelection_Night_0_en.png create mode 100644 tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_8_en.png create mode 100644 tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_8_en.png diff --git a/tests/uitests/src/test/snapshots/images/features.poll.api.pollcontent_PollContentViewMultipleSelection_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.poll.api.pollcontent_PollContentViewMultipleSelection_Day_0_en.png new file mode 100644 index 0000000000..276c82c9ec --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/features.poll.api.pollcontent_PollContentViewMultipleSelection_Day_0_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35741e180e6c07b452c485099c11473e80ac308ae81d3620fcd8e3bd1385f977 +size 46801 diff --git a/tests/uitests/src/test/snapshots/images/features.poll.api.pollcontent_PollContentViewMultipleSelection_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.poll.api.pollcontent_PollContentViewMultipleSelection_Night_0_en.png new file mode 100644 index 0000000000..85edbd5662 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/features.poll.api.pollcontent_PollContentViewMultipleSelection_Night_0_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b64a00c01448b8935985343ae33912c80dd84ea2329717b8addfc07dd6ef012 +size 45403 diff --git a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_0_en.png index 671ccdaf1d..eaa6aa90ad 100644 --- a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d71e5d6bdf78f145e573181ba8fe5faccf8fc8121d1b0318affc786222166bdd -size 31928 +oid sha256:af008ab901ea99aa9746625a30e1e6635aa471e12de5e80e6b1b0edd4bbd227f +size 36663 diff --git a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_1_en.png index 8d7a518c24..d0af439fcc 100644 --- a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e4d08ca16ac4ebe85c49387264490c076aa95ed0aa15f467acd0f6d07fa6fc01 -size 36340 +oid sha256:f09703cfe6146050c3828022ad0038e9538d4d57f2de3fb4dbc25f9d1c16e2c9 +size 41135 diff --git a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_2_en.png index 19847bbdc6..511b3e1e8c 100644 --- a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:30ff43a32b34192d49dbe9763fe7649c8fa5723c7f2b9ae6ed1531209d986378 -size 39885 +oid sha256:37758cba9b8f6e925d49f7800643f2a5be1ea3a812b5af49b88679675805af52 +size 42145 diff --git a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_3_en.png b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_3_en.png index c9a0b43e73..dcae3c5d73 100644 --- a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9a5efead7d85b19215a64ccdc9c1f6ddf66558a27358eb197aeae1aebbac71a2 -size 44019 +oid sha256:44ba43c5a994442b16b185918d7132a4588fb16c374025574990ae1c9f5ea8de +size 48877 diff --git a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_6_en.png b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_6_en.png index ea57b81992..189e2a834d 100644 --- a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3c2b6cae066cb50c3916a08009041d7b2a3335baa8e26e8a29d6bda75818000c -size 32650 +oid sha256:c7c9e5e1c89cc3f8be713c4e54f920465a7bde4eddf5516c8c61f3f1ea6da02f +size 37178 diff --git a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_7_en.png b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_7_en.png index b025ff46e1..8e285a9f4e 100644 --- a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f3c20f5f523433f9d750736f006780d943beb47622190bd91980391f2a0ec55d -size 35996 +oid sha256:1d2051f52b7c19bc89fccf03f7df704977d4a57d3d675462f24a3c8a0355718b +size 38311 diff --git a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_8_en.png b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_8_en.png new file mode 100644 index 0000000000..0d37c1465f --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Day_8_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:935d1fcc6281c464da058256c2263e5524dd17d3cb8e6a54e3bed0ab545219bc +size 46248 diff --git a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_0_en.png index 5833854bb3..3d1721d102 100644 --- a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cf48171815e7af7568af42d81c861cd6d66f413f16f76afbb5f472828ecf826b -size 31053 +oid sha256:c4bb28055f351d3086cb211e058d03067b60de339eec9fecce4c3e74e41ecba0 +size 35636 diff --git a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_1_en.png index 1052f840ff..6746f98bd0 100644 --- a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8f38b81f5df1f85f449bc22bd52d19f8dfda7413fd50a880dcf87af6b668a00b -size 35195 +oid sha256:82291f1f901e2f4833d6653b2b706fea02b41cd337351ecf990f887d4c2c4dfe +size 39782 diff --git a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_2_en.png index 0dd50a54c3..f256c57b2b 100644 --- a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e7f6f50bb7b1621f01f21cfde24961080127715be540435a594c356712f10501 -size 37658 +oid sha256:2cc022276e6cecce39bc96f57f03c97e29d42fb94a0645b6b75921d29e6dc5de +size 40067 diff --git a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_3_en.png index d07a35f70b..da856dc91d 100644 --- a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9f3557e5598202ef6d965405a4711bd93f4b7fbee5585b5cd3d4ba8f4307b1a4 -size 42713 +oid sha256:35e6e1cfea95da68f9bd0b3f5616cea73ea8283a1749cab3c3353635ffce56b9 +size 47612 diff --git a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_6_en.png b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_6_en.png index 69a97d0dbb..61ce31e648 100644 --- a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0fbf59e6846ba24941ae9278abf6fa80af208ca5eaea2bd2b65b3c9954f11992 -size 31662 +oid sha256:1f41fd5590ad4fe368091b0522a94b1029982e4d74a8596b3550b6569cc70790 +size 36124 diff --git a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_7_en.png b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_7_en.png index 93a9905735..f1631ddf29 100644 --- a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9954304cc948652c3c63378ac77aeaba623398b72eab6bb90d23b15850fe278c -size 33522 +oid sha256:9432d0011ca454e716717a3c8a0daa72b2bddde3add15686e2470cb61081a3e2 +size 36008 diff --git a/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_8_en.png b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_8_en.png new file mode 100644 index 0000000000..17dd841646 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/features.poll.impl.create_CreatePollView_Night_8_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e65180faa17fa1914f77f4e6cb445e83c383c3de964e66963ebbdf8d116d6888 +size 44818 From fcecc7acba6d7820de69c5faecf3545483c13c8b Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Mon, 17 Aug 2026 11:33:10 +0300 Subject: [PATCH 13/97] Give up on a verification request the other session never accepts The outgoing verification flow had no client side timeout: if the other session never answered, the screen waited on "Waiting to accept request" for as long as the user left it open, with no indication that the request could no longer succeed. Bound the wait to the ten minutes the Matrix specification gives a verification request. Past that the other session can no longer accept it, so cancel the request and move to the canceled state, which already offers to start again. --- .../OutgoingVerificationStateMachine.kt | 17 +++++++++--- .../OutgoingVerificationPresenterTest.kt | 26 ++++++++++++++++--- 2 files changed, 37 insertions(+), 6 deletions(-) diff --git a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationStateMachine.kt b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationStateMachine.kt index 465fc20066..2fd7948c38 100644 --- a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationStateMachine.kt +++ b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationStateMachine.kt @@ -23,9 +23,11 @@ import io.element.android.libraries.matrix.api.verification.SessionVerificationS import io.element.android.libraries.matrix.api.verification.VerificationRequest import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.FlowPreview +import kotlinx.coroutines.delay import kotlinx.coroutines.flow.filter import kotlinx.coroutines.flow.first import kotlinx.coroutines.flow.timeout +import kotlin.time.Duration.Companion.minutes import kotlin.time.Duration.Companion.seconds import com.freeletics.flowredux.dsl.State as MachineState @@ -36,6 +38,11 @@ class OutgoingVerificationStateMachine( ) : FlowReduxStateMachine( initialState = State.Initial, ) { + companion object { + /** Lifetime the Matrix specification gives a verification request; past it the other session can no longer accept ours. */ + private val VERIFICATION_REQUEST_TIMEOUT = 10.minutes + } + init { spec { inState { @@ -44,11 +51,15 @@ class OutgoingVerificationStateMachine( } } inState { - onEnterEffect { event -> - when (event.verificationRequest) { + onEnter { state -> + val verificationRequest = state.snapshot.verificationRequest + when (verificationRequest) { is VerificationRequest.Outgoing.CurrentSession -> sessionVerificationService.requestDeviceVerification() - is VerificationRequest.Outgoing.User -> sessionVerificationService.requestUserVerification(event.verificationRequest.userId) + is VerificationRequest.Outgoing.User -> sessionVerificationService.requestUserVerification(verificationRequest.userId) } + delay(VERIFICATION_REQUEST_TIMEOUT) + sessionVerificationService.cancelVerification() + state.override { State.Canceled.andLogStateChange() } } on { _, state -> state.override { State.VerificationRequestAccepted.andLogStateChange() } diff --git a/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationPresenterTest.kt b/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationPresenterTest.kt index c6cbfca281..bf3f690a07 100644 --- a/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationPresenterTest.kt +++ b/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationPresenterTest.kt @@ -6,8 +6,6 @@ * Please see LICENSE files in the repository root for full details. */ -@file:Suppress("UnusedImports") - package io.element.android.features.verifysession.impl.outgoing import app.cash.turbine.ReceiveTurbine @@ -30,10 +28,12 @@ import io.element.android.tests.testutils.lambda.lambdaRecorder import io.element.android.tests.testutils.test import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.test.TestScope +import kotlinx.coroutines.test.advanceTimeBy import kotlinx.coroutines.test.advanceUntilIdle import kotlinx.coroutines.test.runTest import org.junit.Rule import org.junit.Test +import kotlin.time.Duration.Companion.minutes @ExperimentalCoroutinesApi class OutgoingVerificationPresenterTest { @@ -140,6 +140,26 @@ class OutgoingVerificationPresenterTest { } } + @Test + fun `present - A verification request the other session never accepts is canceled`() = runTest { + val cancelVerificationRecorder = lambdaRecorder {} + val service = unverifiedSessionService( + requestDeviceVerificationLambda = { }, + cancelVerificationLambda = cancelVerificationRecorder, + ) + val presenter = createOutgoingVerificationPresenter(service) + presenter.test { + awaitItem().eventSink(OutgoingVerificationViewEvents.RequestVerification) + advanceTimeBy(1.minutes) + assertThat(awaitItem().step).isEqualTo(Step.AwaitingOtherDeviceResponse) + advanceTimeBy(9.minutes) + expectNoEvents() + advanceTimeBy(2.minutes) + assertThat(awaitItem().step).isEqualTo(Step.Canceled) + cancelVerificationRecorder.assertions().isCalledOnce() + } + } + @Test fun `present - Canceling the flow once it's verifying cancels it`() = runTest { val service = unverifiedSessionService( @@ -283,7 +303,7 @@ class OutgoingVerificationPresenterTest { var state = awaitItem() assertThat(state.step).isEqualTo(Step.Initial) state.eventSink(OutgoingVerificationViewEvents.RequestVerification) - testScope.advanceUntilIdle() + testScope.advanceTimeBy(1.minutes) // Await for other device response: fakeService.emitVerificationFlowState(VerificationFlowState.DidAcceptVerificationRequest) state = awaitItem() From 5bfb614bdb370410d3aaa825eab2c4f3e3895cf1 Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Mon, 17 Aug 2026 15:37:11 +0300 Subject: [PATCH 14/97] Restore the UnusedImports suppression on the outgoing verification test ktlint reports the TestScope import as unused because the type only appears in a context parameter, which the rule does not look at. The file carried a file-level suppression for exactly that before this branch dropped it. --- .../impl/outgoing/OutgoingVerificationPresenterTest.kt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationPresenterTest.kt b/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationPresenterTest.kt index bf3f690a07..f872f495b3 100644 --- a/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationPresenterTest.kt +++ b/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationPresenterTest.kt @@ -6,6 +6,8 @@ * Please see LICENSE files in the repository root for full details. */ +@file:Suppress("UnusedImports") + package io.element.android.features.verifysession.impl.outgoing import app.cash.turbine.ReceiveTurbine From 2ff6a56e7df3e4642f7ffc81416b95df2a24cf77 Mon Sep 17 00:00:00 2001 From: bxdxnn <267911624+bxdxnn@users.noreply.github.com> Date: Wed, 19 Aug 2026 16:12:15 +0000 Subject: [PATCH 15/97] Use the new SDK thread info for redacted messages --- .../impl/timeline/groups/Groupability.kt | 2 +- .../impl/timeline/TimelinePresenterTest.kt | 4 +- .../factories/TimelineItemsFactoryTest.kt | 40 +++++++++++++++++++ .../RedactedVoiceMessageManagerTest.kt | 4 +- .../DefaultPinnedMessagesBannerFormatter.kt | 2 +- .../impl/DefaultRoomLatestEventFormatter.kt | 2 +- .../impl/DefaultTimelineEventFormatter.kt | 2 +- ...efaultPinnedMessagesBannerFormatterTest.kt | 2 +- .../DefaultRoomLatestEventFormatterTest.kt | 2 +- .../api/timeline/item/event/EventContent.kt | 4 +- .../timeline/item/event/EventTimelineItem.kt | 1 + .../item/event/TimelineEventContentMapper.kt | 2 +- .../matrix/test/timeline/TimelineFixture.kt | 5 +++ .../reply/InReplyToDetailsProvider.kt | 2 +- .../messages/reply/InReplyToMetadataKtTest.kt | 2 +- .../impl/datasource/EventItemFactory.kt | 2 +- .../impl/datasource/EventItemFactoryTest.kt | 4 +- 17 files changed, 65 insertions(+), 17 deletions(-) diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/groups/Groupability.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/groups/Groupability.kt index 431942378a..3b16f79f79 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/groups/Groupability.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/groups/Groupability.kt @@ -91,7 +91,7 @@ internal fun MatrixTimelineItem.Event.canBeDisplayedInBubbleBlock(): Boolean { // Can be grouped is FailedToParseMessageLikeContent, is MessageContent, - RedactedContent, + is RedactedContent, is StickerContent, is PollContent, is UnableToDecryptContent, 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 3b0794305f..0db690f928 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 @@ -47,7 +47,6 @@ import io.element.android.libraries.matrix.api.timeline.Timeline import io.element.android.libraries.matrix.api.timeline.item.event.EventReaction import io.element.android.libraries.matrix.api.timeline.item.event.ReactionSender import io.element.android.libraries.matrix.api.timeline.item.event.Receipt -import io.element.android.libraries.matrix.api.timeline.item.event.RedactedContent import io.element.android.libraries.matrix.api.timeline.item.event.TimelineItemEventOrigin import io.element.android.libraries.matrix.api.timeline.item.virtual.VirtualTimelineItem import io.element.android.libraries.matrix.test.AN_EVENT_ID @@ -65,6 +64,7 @@ import io.element.android.libraries.matrix.test.room.aRoomMember import io.element.android.libraries.matrix.test.room.powerlevels.FakeRoomPermissions import io.element.android.libraries.matrix.test.timeline.FakeTimeline import io.element.android.libraries.matrix.test.timeline.aMessageContent +import io.element.android.libraries.matrix.test.timeline.aRedactedContent import io.element.android.libraries.matrix.test.timeline.anEventTimelineItem import io.element.android.libraries.matrix.test.timeline.item.event.aRoomMembershipContent import io.element.android.libraries.matrix.ui.components.aMatrixUserList @@ -876,7 +876,7 @@ class TimelinePresenterTest { (0 until 3).map { index -> MatrixTimelineItem.Event( uniqueId = UniqueId("redacted_$index"), - event = anEventTimelineItem(eventId = EventId("\$R$index"), content = RedactedContent), + event = anEventTimelineItem(eventId = EventId("\$R$index"), content = aRedactedContent()), ) } ), diff --git a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/TimelineItemsFactoryTest.kt b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/TimelineItemsFactoryTest.kt index 53c39ee530..094fa5764e 100644 --- a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/TimelineItemsFactoryTest.kt +++ b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/TimelineItemsFactoryTest.kt @@ -12,10 +12,14 @@ import com.google.common.truth.Truth.assertThat import io.element.android.features.messages.impl.fixtures.aTimelineItemsFactory import io.element.android.features.messages.impl.timeline.model.TimelineItem import io.element.android.features.messages.impl.timeline.model.TimelineItemGroupPosition +import io.element.android.features.messages.impl.timeline.model.TimelineItemThreadInfo import io.element.android.libraries.matrix.api.core.UniqueId import io.element.android.libraries.matrix.api.timeline.MatrixTimelineItem +import io.element.android.libraries.matrix.api.timeline.item.EventThreadInfo +import io.element.android.libraries.matrix.test.A_THREAD_ID import io.element.android.libraries.matrix.test.A_USER_ID import io.element.android.libraries.matrix.test.timeline.aMessageContent +import io.element.android.libraries.matrix.test.timeline.aRedactedContent import io.element.android.libraries.matrix.test.timeline.anEventTimelineItem import kotlinx.coroutines.test.TestScope import kotlinx.coroutines.test.runTest @@ -82,6 +86,42 @@ class TimelineItemsFactoryTest { ).inOrder() } + @Test + fun `redacted message keeps its thread info`() = runTest { + val factory = aTimelineItemsFactory( + config = TimelineItemsFactoryConfig( + computeReadReceipts = false, + computeReactions = false, + ) + ) + val items = listOf( + MatrixTimelineItem.Event( + uniqueId = UniqueId("event-0"), + event = anEventTimelineItem( + sender = A_USER_ID, + timestamp = 0L, + content = aRedactedContent( + threadInfo = EventThreadInfo.ThreadResponse(A_THREAD_ID), + ), + ), + ) + ) + var threadInfo: TimelineItemThreadInfo? = null + factory.timelineItems.test { + factory.replaceWith( + timelineItems = items, + roomMembers = emptyList(), + renderReadReceipts = false, + ) + threadInfo = awaitItem() + .filterIsInstance() + .firstOrNull() + ?.threadInfo + cancelAndIgnoreRemainingEvents() + } + assertThat(threadInfo).isEqualTo(TimelineItemThreadInfo.ThreadResponse(A_THREAD_ID)) + } + private suspend fun TestScope.groupPositionsOf(timestamps: List): List { val factory = aTimelineItemsFactory( config = TimelineItemsFactoryConfig( diff --git a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/voicemessages/timeline/RedactedVoiceMessageManagerTest.kt b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/voicemessages/timeline/RedactedVoiceMessageManagerTest.kt index a1ffd1f02b..9a5eda366b 100644 --- a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/voicemessages/timeline/RedactedVoiceMessageManagerTest.kt +++ b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/voicemessages/timeline/RedactedVoiceMessageManagerTest.kt @@ -16,11 +16,11 @@ import io.element.android.libraries.matrix.api.timeline.MatrixTimelineItem import io.element.android.libraries.matrix.api.timeline.item.TimelineItemDebugInfo import io.element.android.libraries.matrix.api.timeline.item.event.EventTimelineItem import io.element.android.libraries.matrix.api.timeline.item.event.ProfileDetails -import io.element.android.libraries.matrix.api.timeline.item.event.RedactedContent import io.element.android.libraries.matrix.test.AN_EVENT_ID import io.element.android.libraries.matrix.test.AN_EVENT_ID_2 import io.element.android.libraries.matrix.test.A_USER_ID import io.element.android.libraries.matrix.test.core.FakeSendHandle +import io.element.android.libraries.matrix.test.timeline.aRedactedContent import io.element.android.libraries.mediaplayer.api.MediaPlayer import io.element.android.libraries.mediaplayer.test.FakeMediaPlayer import io.element.android.tests.testutils.testCoroutineDispatchers @@ -88,7 +88,7 @@ fun aRedactedMatrixTimeline(eventId: EventId) = listOf( sender = A_USER_ID, senderProfile = ProfileDetails.Unavailable, timestamp = 9442, - content = RedactedContent, + content = aRedactedContent(), origin = null, timelineItemDebugInfoProvider = { TimelineItemDebugInfo( diff --git a/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultPinnedMessagesBannerFormatter.kt b/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultPinnedMessagesBannerFormatter.kt index 1311c524e4..8025591070 100644 --- a/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultPinnedMessagesBannerFormatter.kt +++ b/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultPinnedMessagesBannerFormatter.kt @@ -56,7 +56,7 @@ class DefaultPinnedMessagesBannerFormatter( is PollContent -> { content.question.prefixWith(CommonStrings.a11y_poll) } - RedactedContent -> { + is RedactedContent -> { sp.getString(CommonStrings.common_message_removed) } else -> { diff --git a/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultRoomLatestEventFormatter.kt b/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultRoomLatestEventFormatter.kt index e7bbdb1e7f..bd519b60c2 100644 --- a/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultRoomLatestEventFormatter.kt +++ b/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultRoomLatestEventFormatter.kt @@ -89,7 +89,7 @@ class DefaultRoomLatestEventFormatter( ): CharSequence? { return when (content) { is MessageContent -> content.process(senderDisambiguatedDisplayName, isDmRoom, isOutgoing) - RedactedContent -> { + is RedactedContent -> { val message = sp.getString(CommonStrings.common_message_removed) message.prefixIfNeeded(senderDisambiguatedDisplayName, isDmRoom, isOutgoing) } diff --git a/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultTimelineEventFormatter.kt b/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultTimelineEventFormatter.kt index ff5cce7a59..ffb98fe2ec 100644 --- a/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultTimelineEventFormatter.kt +++ b/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultTimelineEventFormatter.kt @@ -62,7 +62,7 @@ class DefaultTimelineEventFormatter( is CallNotifyContent -> { sp.getString(CommonStrings.common_call_started) } - RedactedContent, + is RedactedContent, is LegacyCallInviteContent, is StickerContent, is PollContent, diff --git a/libraries/eventformatter/impl/src/test/kotlin/io/element/android/libraries/eventformatter/impl/DefaultPinnedMessagesBannerFormatterTest.kt b/libraries/eventformatter/impl/src/test/kotlin/io/element/android/libraries/eventformatter/impl/DefaultPinnedMessagesBannerFormatterTest.kt index 198da2bf7d..38517dab33 100644 --- a/libraries/eventformatter/impl/src/test/kotlin/io/element/android/libraries/eventformatter/impl/DefaultPinnedMessagesBannerFormatterTest.kt +++ b/libraries/eventformatter/impl/src/test/kotlin/io/element/android/libraries/eventformatter/impl/DefaultPinnedMessagesBannerFormatterTest.kt @@ -81,7 +81,7 @@ class DefaultPinnedMessagesBannerFormatterTest : RobolectricTest() { fun `Redacted content`() { val expected = "Message removed" val senderName = "Someone" - val message = createRoomEvent(false, senderName, RedactedContent) + val message = createRoomEvent(false, senderName, RedactedContent(threadInfo = null)) val result = formatter.format(message) assertThat(result).isEqualTo(expected) } diff --git a/libraries/eventformatter/impl/src/test/kotlin/io/element/android/libraries/eventformatter/impl/DefaultRoomLatestEventFormatterTest.kt b/libraries/eventformatter/impl/src/test/kotlin/io/element/android/libraries/eventformatter/impl/DefaultRoomLatestEventFormatterTest.kt index ecd0509269..c293b67975 100644 --- a/libraries/eventformatter/impl/src/test/kotlin/io/element/android/libraries/eventformatter/impl/DefaultRoomLatestEventFormatterTest.kt +++ b/libraries/eventformatter/impl/src/test/kotlin/io/element/android/libraries/eventformatter/impl/DefaultRoomLatestEventFormatterTest.kt @@ -85,7 +85,7 @@ class DefaultRoomLatestEventFormatterTest : RobolectricTest() { val expected = "Message removed" val senderName = "Someone" sequenceOf(false, true).forEach { isDm -> - val message = createLatestEvent(false, senderName, RedactedContent) + val message = createLatestEvent(false, senderName, RedactedContent(threadInfo = null)) val result = formatter.format(message, isDm) if (isDm) { assertThat(result).isEqualTo(expected) diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/item/event/EventContent.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/item/event/EventContent.kt index c2d388ecb0..132b3b3504 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/item/event/EventContent.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/item/event/EventContent.kt @@ -32,7 +32,9 @@ data class MessageContent( val type: MessageType, ) : EventContent -data object RedactedContent : EventContent +data class RedactedContent( + val threadInfo: EventThreadInfo?, +) : EventContent data class StickerContent( val filename: String, diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/item/event/EventTimelineItem.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/item/event/EventTimelineItem.kt index 91703f7fa4..8a3221677d 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/item/event/EventTimelineItem.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/item/event/EventTimelineItem.kt @@ -51,6 +51,7 @@ data class EventTimelineItem( is PollContent -> content.threadInfo is StickerContent -> content.threadInfo is UnableToDecryptContent -> content.threadInfo + is RedactedContent -> content.threadInfo else -> null } diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/timeline/item/event/TimelineEventContentMapper.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/timeline/item/event/TimelineEventContentMapper.kt index 98efa505d0..c8434e207a 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/timeline/item/event/TimelineEventContentMapper.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/timeline/item/event/TimelineEventContentMapper.kt @@ -81,7 +81,7 @@ class TimelineEventContentMapper( ) } is MsgLikeKind.Redacted -> { - RedactedContent + RedactedContent(threadInfo = extractThreadInfo(it.content)) } is MsgLikeKind.Poll -> { PollContent( diff --git a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/timeline/TimelineFixture.kt b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/timeline/TimelineFixture.kt index b61009a5c6..da8b872ef0 100644 --- a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/timeline/TimelineFixture.kt +++ b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/timeline/TimelineFixture.kt @@ -29,6 +29,7 @@ import io.element.android.libraries.matrix.api.timeline.item.event.PollContent import io.element.android.libraries.matrix.api.timeline.item.event.ProfileChangeContent import io.element.android.libraries.matrix.api.timeline.item.event.ProfileDetails import io.element.android.libraries.matrix.api.timeline.item.event.Receipt +import io.element.android.libraries.matrix.api.timeline.item.event.RedactedContent import io.element.android.libraries.matrix.api.timeline.item.event.SendHandleProvider import io.element.android.libraries.matrix.api.timeline.item.event.StickerContent import io.element.android.libraries.matrix.api.timeline.item.event.TextMessageType @@ -137,6 +138,10 @@ fun aStickerContent( threadInfo = threadInfo, ) +fun aRedactedContent( + threadInfo: EventThreadInfo? = null, +) = RedactedContent(threadInfo = threadInfo) + fun aTimelineItemDebugInfo( model: String = "Rust(Model())", originalJson: String? = null, diff --git a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/messages/reply/InReplyToDetailsProvider.kt b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/messages/reply/InReplyToDetailsProvider.kt index b335ef9609..0b7db84ae1 100644 --- a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/messages/reply/InReplyToDetailsProvider.kt +++ b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/messages/reply/InReplyToDetailsProvider.kt @@ -117,7 +117,7 @@ class InReplyToDetailsDisambiguatedProvider : InReplyToDetailsProvider() { class InReplyToDetailsInformativeProvider : InReplyToDetailsProvider() { override val values: Sequence get() = sequenceOf( - RedactedContent, + RedactedContent(threadInfo = null), UnableToDecryptContent(data = UnableToDecryptContent.Data.Unknown, threadInfo = null), ).map { aInReplyToDetails( diff --git a/libraries/matrixui/src/test/kotlin/io/element/android/libraries/matrix/ui/messages/reply/InReplyToMetadataKtTest.kt b/libraries/matrixui/src/test/kotlin/io/element/android/libraries/matrix/ui/messages/reply/InReplyToMetadataKtTest.kt index 3fcb2f8f18..64e647ab19 100644 --- a/libraries/matrixui/src/test/kotlin/io/element/android/libraries/matrix/ui/messages/reply/InReplyToMetadataKtTest.kt +++ b/libraries/matrixui/src/test/kotlin/io/element/android/libraries/matrix/ui/messages/reply/InReplyToMetadataKtTest.kt @@ -656,7 +656,7 @@ class InReplyToMetadataKtTest : RobolectricTest() { fun `redacted content`() = runTest { moleculeFlow(RecompositionMode.Immediate) { anInReplyToDetailsReady( - eventContent = RedactedContent + eventContent = RedactedContent(threadInfo = null) ).metadata(hideImage = false) }.test { awaitItem().let { diff --git a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/datasource/EventItemFactory.kt b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/datasource/EventItemFactory.kt index 40a9a0351d..f140fc6628 100644 --- a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/datasource/EventItemFactory.kt +++ b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/datasource/EventItemFactory.kt @@ -79,7 +79,7 @@ class EventItemFactory( LegacyCallInviteContent, is PollContent, is ProfileChangeContent, - RedactedContent, + is RedactedContent, is RoomMembershipContent, is StateContent, is StickerContent, diff --git a/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/datasource/EventItemFactoryTest.kt b/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/datasource/EventItemFactoryTest.kt index 4ed89e8923..4f02637a62 100644 --- a/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/datasource/EventItemFactoryTest.kt +++ b/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/datasource/EventItemFactoryTest.kt @@ -35,7 +35,6 @@ import io.element.android.libraries.matrix.api.timeline.item.event.LocationMessa import io.element.android.libraries.matrix.api.timeline.item.event.NoticeMessageType import io.element.android.libraries.matrix.api.timeline.item.event.OtherMessageType import io.element.android.libraries.matrix.api.timeline.item.event.OtherState -import io.element.android.libraries.matrix.api.timeline.item.event.RedactedContent import io.element.android.libraries.matrix.api.timeline.item.event.StateContent import io.element.android.libraries.matrix.api.timeline.item.event.StickerMessageType import io.element.android.libraries.matrix.api.timeline.item.event.TextMessageType @@ -49,6 +48,7 @@ import io.element.android.libraries.matrix.test.A_USER_ID import io.element.android.libraries.matrix.test.timeline.aMessageContent import io.element.android.libraries.matrix.test.timeline.aPollContent import io.element.android.libraries.matrix.test.timeline.aProfileChangeMessageContent +import io.element.android.libraries.matrix.test.timeline.aRedactedContent import io.element.android.libraries.matrix.test.timeline.aStickerContent import io.element.android.libraries.matrix.test.timeline.anEventTimelineItem import io.element.android.libraries.matrix.test.timeline.item.event.aRoomMembershipContent @@ -80,7 +80,7 @@ class EventItemFactoryTest { LegacyCallInviteContent, aPollContent(), aProfileChangeMessageContent(), - RedactedContent, + aRedactedContent(), aRoomMembershipContent( userId = A_USER_ID, ), From 8a32e3d4bfbaea20868822ed08b2c1d3aba12026 Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Fri, 21 Aug 2026 16:40:49 +0300 Subject: [PATCH 16/97] Order the outgoing verification state machine imports ktlint's import-ordering rule expects lexicographic order within the first group, so TimeoutCancellationException has to precede delay. --- .../impl/outgoing/OutgoingVerificationStateMachine.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationStateMachine.kt b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationStateMachine.kt index 130dca3eb6..05851437cc 100644 --- a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationStateMachine.kt +++ b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationStateMachine.kt @@ -22,8 +22,8 @@ import io.element.android.libraries.matrix.api.verification.SessionVerificationS import io.element.android.libraries.matrix.api.verification.VerificationRequest import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.FlowPreview -import kotlinx.coroutines.delay import kotlinx.coroutines.TimeoutCancellationException +import kotlinx.coroutines.delay import kotlinx.coroutines.flow.filter import kotlinx.coroutines.flow.first import kotlinx.coroutines.flow.timeout From feb87ead8d740ac89cfafc60a82ed09ef7ef0332 Mon Sep 17 00:00:00 2001 From: Jenna Vassar Date: Mon, 24 Aug 2026 08:59:11 -0700 Subject: [PATCH 17/97] Make the account provider screen scrollable so its description is not clipped by the keyboard --- .../confirmaccountprovider/ConfirmAccountProviderView.kt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/features/login/impl/src/main/kotlin/io/element/android/features/login/impl/screens/confirmaccountprovider/ConfirmAccountProviderView.kt b/features/login/impl/src/main/kotlin/io/element/android/features/login/impl/screens/confirmaccountprovider/ConfirmAccountProviderView.kt index 1dab5cd31c..3ade999bfc 100644 --- a/features/login/impl/src/main/kotlin/io/element/android/features/login/impl/screens/confirmaccountprovider/ConfirmAccountProviderView.kt +++ b/features/login/impl/src/main/kotlin/io/element/android/features/login/impl/screens/confirmaccountprovider/ConfirmAccountProviderView.kt @@ -115,6 +115,9 @@ fun ConfirmAccountProviderView( HeaderFooterPage( modifier = modifier, + // Let the header and content scroll so the supporting text is not clipped by the footer when the + // keyboard is visible and vertical space is reduced. + isScrollable = true, header = { IconTitleSubtitleMolecule( modifier = Modifier.padding(top = 60.dp), From 9586478039fec2d39697c5b759364d83cebe522b Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Mon, 24 Aug 2026 18:58:54 +0200 Subject: [PATCH 18/97] Updates to text sizes in Chats header and Space hero Closes #7476 --- .../home/impl/components/HomeTopBar.kt | 103 ++++++++++-------- .../atomic/atoms/RoomPreviewTitleAtom.kt | 4 +- .../ui/components/SpaceHeaderRootView.kt | 2 +- .../matrix/ui/components/SpaceHeaderView.kt | 9 +- 4 files changed, 67 insertions(+), 51 deletions(-) diff --git a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/components/HomeTopBar.kt b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/components/HomeTopBar.kt index 63d28dca21..1a351be9b6 100644 --- a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/components/HomeTopBar.kt +++ b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/components/HomeTopBar.kt @@ -80,7 +80,6 @@ import io.element.android.libraries.designsystem.modifiers.backgroundVerticalGra import io.element.android.libraries.designsystem.preview.ElementPreview import io.element.android.libraries.designsystem.preview.PreviewsDayNight import io.element.android.libraries.designsystem.preview.USER_NAME_ALICE -import io.element.android.libraries.designsystem.theme.aliasScreenTitle import io.element.android.libraries.designsystem.theme.components.DropdownMenu import io.element.android.libraries.designsystem.theme.components.DropdownMenuItem import io.element.android.libraries.designsystem.theme.components.Icon @@ -141,15 +140,23 @@ fun HomeTopBar( else -> stringResource(selectedNavigationItem.labelRes) } } - HomeNavigationBarItem.Spaces -> stringResource(selectedNavigationItem.labelRes) + HomeNavigationBarItem.Spaces -> null + } + displayTitle?.let { + val style = when (spaceFiltersState) { + // Space name + is SpaceFiltersState.Selected -> ElementTheme.typography.fontHeadingSmMedium + // "Chats" + else -> ElementTheme.typography.fontHeadingLgBold + } + Text( + modifier = Modifier.semantics { + heading() + }, + style = style, + text = displayTitle, + ) } - Text( - modifier = Modifier.semantics { - heading() - }, - style = ElementTheme.typography.aliasScreenTitle, - text = displayTitle, - ) }, navigationIcon = { NavigationIcon( @@ -179,7 +186,9 @@ fun HomeTopBar( TopAppBarScrollBehaviorLayout(scrollBehavior = scrollBehavior) { RoomListFiltersView( state = filtersState, - modifier = Modifier.padding(bottom = 16.dp).padding(contentPadding) + modifier = Modifier + .padding(bottom = 16.dp) + .padding(contentPadding) ) } } @@ -348,45 +357,45 @@ private fun AccountIcon( ), contentAlignment = Alignment.Center, ) { - val avatarData by remember(matrixUser) { - derivedStateOf { - matrixUser.getAvatarData(size = AvatarSize.CurrentUserTopBar) - } + val avatarData by remember(matrixUser) { + derivedStateOf { + matrixUser.getAvatarData(size = AvatarSize.CurrentUserTopBar) } - val statusEmoji = matrixUser.displayedStatus?.toEmojiText() - val avatarModifier = if (statusEmoji != null) { - Modifier.eraseStatusEmojiBackground( - parentSize = AvatarSize.CurrentUserTopBar.dp, - layoutDirection = LocalLayoutDirection.current, - ) - } else { - Modifier - } - Avatar( - avatarData = avatarData, - avatarType = AvatarType.User, - modifier = avatarModifier, - contentDescription = if (isCurrentAccount) { - if (showAvatarIndicator) { - stringResource(CommonStrings.a11y_settings_with_required_action) - } else { - stringResource(CommonStrings.common_settings) - } - } else { - null - }, + } + val statusEmoji = matrixUser.displayedStatus?.toEmojiText() + val avatarModifier = if (statusEmoji != null) { + Modifier.eraseStatusEmojiBackground( + parentSize = AvatarSize.CurrentUserTopBar.dp, + layoutDirection = LocalLayoutDirection.current, ) - if (statusEmoji != null) { - StatusEmojiBadge( - emoji = statusEmoji, - modifier = Modifier.align(Alignment.BottomEnd), - ) - } - if (showAvatarIndicator) { - RedIndicatorAtom( - modifier = Modifier.align(Alignment.TopEnd) - ) - } + } else { + Modifier + } + Avatar( + avatarData = avatarData, + avatarType = AvatarType.User, + modifier = avatarModifier, + contentDescription = if (isCurrentAccount) { + if (showAvatarIndicator) { + stringResource(CommonStrings.a11y_settings_with_required_action) + } else { + stringResource(CommonStrings.common_settings) + } + } else { + null + }, + ) + if (statusEmoji != null) { + StatusEmojiBadge( + emoji = statusEmoji, + modifier = Modifier.align(Alignment.BottomEnd), + ) + } + if (showAvatarIndicator) { + RedIndicatorAtom( + modifier = Modifier.align(Alignment.TopEnd) + ) + } } } diff --git a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/atoms/RoomPreviewTitleAtom.kt b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/atoms/RoomPreviewTitleAtom.kt index 740605fe88..4188827a8a 100644 --- a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/atoms/RoomPreviewTitleAtom.kt +++ b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/atoms/RoomPreviewTitleAtom.kt @@ -10,6 +10,7 @@ package io.element.android.libraries.designsystem.atomic.atoms import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier +import androidx.compose.ui.text.TextStyle import androidx.compose.ui.text.font.FontStyle import androidx.compose.ui.text.style.TextAlign import io.element.android.compound.theme.ElementTheme @@ -20,11 +21,12 @@ fun RoomPreviewTitleAtom( title: String, modifier: Modifier = Modifier, fontStyle: FontStyle? = null, + style: TextStyle = ElementTheme.typography.fontHeadingLgBold ) { Text( modifier = modifier, text = title, - style = ElementTheme.typography.fontHeadingLgBold, + style = style, textAlign = TextAlign.Center, fontStyle = fontStyle, color = ElementTheme.colors.textPrimary, diff --git a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/SpaceHeaderRootView.kt b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/SpaceHeaderRootView.kt index 1e8fb864a7..2b5e8c6fce 100644 --- a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/SpaceHeaderRootView.kt +++ b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/SpaceHeaderRootView.kt @@ -46,7 +46,7 @@ fun SpaceHeaderRootView( ) Text( text = stringResource(CommonStrings.screen_space_list_title), - style = ElementTheme.typography.fontHeadingLgBold, + style = ElementTheme.typography.fontHeadingMdBold, color = ElementTheme.colors.textPrimary, textAlign = TextAlign.Center, ) diff --git a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/SpaceHeaderView.kt b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/SpaceHeaderView.kt index 7aee62902f..8a833cee44 100644 --- a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/SpaceHeaderView.kt +++ b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/SpaceHeaderView.kt @@ -19,6 +19,7 @@ import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.font.FontStyle import androidx.compose.ui.tooling.preview.datasource.LoremIpsum import androidx.compose.ui.unit.dp +import io.element.android.compound.theme.ElementTheme import io.element.android.libraries.designsystem.atomic.atoms.RoomPreviewAliasAtom import io.element.android.libraries.designsystem.atomic.atoms.RoomPreviewDescriptionAtom import io.element.android.libraries.designsystem.atomic.atoms.RoomPreviewTitleAtom @@ -68,11 +69,15 @@ fun SpaceHeaderView( }, title = { if (name != null) { - RoomPreviewTitleAtom(title = name) + RoomPreviewTitleAtom( + title = name, + style = ElementTheme.typography.fontHeadingMdBold, + ) } else { RoomPreviewTitleAtom( title = stringResource(id = CommonStrings.common_no_space_name), - fontStyle = FontStyle.Italic + fontStyle = FontStyle.Italic, + style = ElementTheme.typography.fontHeadingMdBold, ) } }, From 95866f960eccb722414800f1cb57e891e74b2d0a Mon Sep 17 00:00:00 2001 From: ElementBot Date: Mon, 24 Aug 2026 17:16:01 +0000 Subject: [PATCH 19/97] Update screenshots --- ...s.home.impl.components_HomeTopBarMultiAccount_Day_0_en.png | 4 ++-- ...home.impl.components_HomeTopBarMultiAccount_Night_0_en.png | 4 ++-- ...eatures.home.impl.components_HomeTopBarSpaces_Day_0_en.png | 4 ++-- ...tures.home.impl.components_HomeTopBarSpaces_Night_0_en.png | 4 ++-- ....home.impl.components_HomeTopBarWithIndicator_Day_0_en.png | 4 ++-- ...ome.impl.components_HomeTopBarWithIndicator_Night_0_en.png | 4 ++-- ...res.home.impl.components_HomeTopBarWithStatus_Day_0_en.png | 4 ++-- ...s.home.impl.components_HomeTopBarWithStatus_Night_0_en.png | 4 ++-- .../features.home.impl.components_HomeTopBar_Day_0_en.png | 4 ++-- .../features.home.impl.components_HomeTopBar_Night_0_en.png | 4 ++-- .../features.home.impl.spaces_HomeSpacesView_Day_0_en.png | 4 ++-- .../features.home.impl.spaces_HomeSpacesView_Day_1_en.png | 4 ++-- .../features.home.impl.spaces_HomeSpacesView_Night_0_en.png | 4 ++-- .../features.home.impl.spaces_HomeSpacesView_Night_1_en.png | 4 ++-- .../snapshots/images/features.home.impl_HomeViewA11y_en.png | 4 ++-- .../snapshots/images/features.home.impl_HomeView_Day_0_en.png | 4 ++-- .../images/features.home.impl_HomeView_Day_10_en.png | 4 ++-- .../images/features.home.impl_HomeView_Day_11_en.png | 4 ++-- .../images/features.home.impl_HomeView_Day_13_en.png | 4 ++-- .../images/features.home.impl_HomeView_Day_14_en.png | 4 ++-- .../images/features.home.impl_HomeView_Day_15_en.png | 4 ++-- .../images/features.home.impl_HomeView_Day_16_en.png | 4 ++-- .../snapshots/images/features.home.impl_HomeView_Day_1_en.png | 4 ++-- .../snapshots/images/features.home.impl_HomeView_Day_2_en.png | 4 ++-- .../snapshots/images/features.home.impl_HomeView_Day_3_en.png | 4 ++-- .../snapshots/images/features.home.impl_HomeView_Day_4_en.png | 4 ++-- .../snapshots/images/features.home.impl_HomeView_Day_5_en.png | 4 ++-- .../snapshots/images/features.home.impl_HomeView_Day_6_en.png | 4 ++-- .../snapshots/images/features.home.impl_HomeView_Day_7_en.png | 4 ++-- .../snapshots/images/features.home.impl_HomeView_Day_8_en.png | 4 ++-- .../snapshots/images/features.home.impl_HomeView_Day_9_en.png | 4 ++-- .../images/features.home.impl_HomeView_Night_0_en.png | 4 ++-- .../images/features.home.impl_HomeView_Night_10_en.png | 4 ++-- .../images/features.home.impl_HomeView_Night_11_en.png | 4 ++-- .../images/features.home.impl_HomeView_Night_13_en.png | 4 ++-- .../images/features.home.impl_HomeView_Night_14_en.png | 4 ++-- .../images/features.home.impl_HomeView_Night_15_en.png | 4 ++-- .../images/features.home.impl_HomeView_Night_16_en.png | 4 ++-- .../images/features.home.impl_HomeView_Night_1_en.png | 4 ++-- .../images/features.home.impl_HomeView_Night_2_en.png | 4 ++-- .../images/features.home.impl_HomeView_Night_3_en.png | 4 ++-- .../images/features.home.impl_HomeView_Night_4_en.png | 4 ++-- .../images/features.home.impl_HomeView_Night_5_en.png | 4 ++-- .../images/features.home.impl_HomeView_Night_6_en.png | 4 ++-- .../images/features.home.impl_HomeView_Night_7_en.png | 4 ++-- .../images/features.home.impl_HomeView_Night_8_en.png | 4 ++-- .../images/features.home.impl_HomeView_Night_9_en.png | 4 ++-- .../images/features.space.impl.root_SpaceView_Day_0_en.png | 4 ++-- .../images/features.space.impl.root_SpaceView_Day_1_en.png | 4 ++-- .../images/features.space.impl.root_SpaceView_Day_2_en.png | 4 ++-- .../images/features.space.impl.root_SpaceView_Day_3_en.png | 4 ++-- .../images/features.space.impl.root_SpaceView_Day_4_en.png | 4 ++-- .../images/features.space.impl.root_SpaceView_Day_5_en.png | 4 ++-- .../images/features.space.impl.root_SpaceView_Night_0_en.png | 4 ++-- .../images/features.space.impl.root_SpaceView_Night_1_en.png | 4 ++-- .../images/features.space.impl.root_SpaceView_Night_2_en.png | 4 ++-- .../images/features.space.impl.root_SpaceView_Night_3_en.png | 4 ++-- .../images/features.space.impl.root_SpaceView_Night_4_en.png | 4 ++-- .../images/features.space.impl.root_SpaceView_Night_5_en.png | 4 ++-- ...ries.matrix.ui.components_SpaceHeaderRootView_Day_0_en.png | 4 ++-- ...es.matrix.ui.components_SpaceHeaderRootView_Night_0_en.png | 4 ++-- ...ibraries.matrix.ui.components_SpaceHeaderView_Day_0_en.png | 4 ++-- ...raries.matrix.ui.components_SpaceHeaderView_Night_0_en.png | 4 ++-- 63 files changed, 126 insertions(+), 126 deletions(-) diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarMultiAccount_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarMultiAccount_Day_0_en.png index d68c73c3dd..5f17df2b70 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarMultiAccount_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarMultiAccount_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:32ad73a97cbf59783c6f5ba2ba216c180af3b8ff30280b712b9b936293a2ecf1 -size 22034 +oid sha256:16eff51daa024855e4843c78ac5d8f381e0ca66d7fd4102319ae74bc5298d4bd +size 22758 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarMultiAccount_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarMultiAccount_Night_0_en.png index 3df4db4b5f..a381f7a081 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarMultiAccount_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarMultiAccount_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:13fac4328987e056ff03284d8d8814d762e8134ea8e3c33ccd95036d1c662b16 -size 20306 +oid sha256:41a251131b2d236b7e5d24730def468e9bf1861409dd1a7ef8eaf9c3b5ab2226 +size 20909 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarSpaces_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarSpaces_Day_0_en.png index 690fad4569..0f3475b8ce 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarSpaces_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarSpaces_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:499d48e33c188e42e066e30644d2ce4d1a2516b6b26d15c385d613234777d738 -size 12105 +oid sha256:a6b9a6700cc66e74dced47f658cc8a6bff533e29e026dfada6c733180b72a19b +size 9126 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarSpaces_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarSpaces_Night_0_en.png index 82f1da2494..c5e641590e 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarSpaces_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarSpaces_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1f9d7c7900c41fbc10b27a68bf079e4750c28cfdcc4d96db35a79f3606cd5796 -size 11205 +oid sha256:e4db5dc9d61a6c3e7f19d79efe8b247e91f77d04885b1b63a86682137d009023 +size 8232 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithIndicator_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithIndicator_Day_0_en.png index 2a515ca368..1fd8dfd36f 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithIndicator_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithIndicator_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dd697e25338f15e3dfeb82370f1726cc337fa74a5e65240cad22c404ec949976 -size 22485 +oid sha256:d5accca8cea12a266d137db293d48261e7bb92ae84e38167dc287ed39a34df5c +size 23207 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithIndicator_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithIndicator_Night_0_en.png index 7dd2daea6e..91b11e062a 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithIndicator_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithIndicator_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0567d8419972054d7dce9a080b856324a1bc97529ff2d15776aba6c023eb90e2 -size 20730 +oid sha256:3bc4c15cdee0758dfb100efb9c2571152940f0a7724b8e3838ef223c0bd122c8 +size 21325 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithStatus_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithStatus_Day_0_en.png index 4fa1c78188..54b10704ee 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithStatus_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithStatus_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bd896bfc1111dcb04d94584c19a395e69612dd9ceda8beea6432c14aa4f18023 -size 23126 +oid sha256:6a38ac7b1ae8a91f08a8010d684204474e815fb967bbabe3a1080d152d802d44 +size 23742 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithStatus_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithStatus_Night_0_en.png index 9111455bec..a41049657f 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithStatus_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithStatus_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:262622cd1124902ab45ccd645d33193dd8d0e4a99ba7e4d2cff786393b350118 -size 21299 +oid sha256:520288193ac12637e44d96ce99ca2f44d447699ae840674c146ec05fe41493d1 +size 21902 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBar_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBar_Day_0_en.png index 539216dd6b..495b8b894b 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBar_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBar_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d1f98cbd7fb3856f01738bca57088ee72c859aef8f09ae8f597b7769ef372ed7 -size 22144 +oid sha256:1981c2ba67db5027a3dad0a477dd33ee2947044574c2b89a55cf7972ab64b3bf +size 22863 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBar_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBar_Night_0_en.png index 353ee965dc..2b154c8425 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBar_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBar_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:038445401184aa84312acebbcc52327202ca0613a88d2667591db00b0121b287 -size 20378 +oid sha256:b31e258cd95a44e39943224285751a1b0ca51b9d490dc70479bf11bb63385dae +size 20974 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Day_0_en.png index c69cba2125..fb9ed3f101 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:09c0613d19abd7673223bc5eac12b4e87c73e66e7ff9d437c5f97ae8bcaf9303 -size 85239 +oid sha256:43b2800a5fb8014557801f35210a98752529c3c71ec285e95be1d405d2910327 +size 84602 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Day_1_en.png index bd9fa30de2..82f5491b50 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:df0dc04b3946a58dda5c3499d965ab23cd3c172eedcb8a23461201c2aca95934 -size 38713 +oid sha256:9640707e06cf5ac5b4f60305c2166b3562f072bcfa13b56b1ed8e6bdd446d24e +size 37854 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Night_0_en.png index 8ec9b1585e..f1a441a0b3 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e28f120a919db7c7a0ced5ca0d56239197785a0ecfbd37af0c5dacb5f8316c1f -size 83583 +oid sha256:330103af450379bc1ea3bd9815779324384d6025a68ba8e3bb9a76b2565fa2dc +size 82909 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Night_1_en.png index 72e173c493..29f23a6b80 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cc37ee6efade5947d0fdc25f6925cf45ba55442eb3fb715f942178513a00e8fc -size 37416 +oid sha256:8d6216bd19d1fae4b5cb70aefe2f3959a18d08f0e1f0ae82e174c10427df400f +size 36596 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeViewA11y_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeViewA11y_en.png index aca66273b4..fbb9365c88 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeViewA11y_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeViewA11y_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9cf305c0e52881fb40fee2ba7bdcdc3dfa5c899577b3e252af19e37ee2efacf7 -size 143213 +oid sha256:610593d1acf3fa39f937f787a5e6531c3dd0a2262bc1abf63b8489f227917ba5 +size 144141 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 b5f80f2faf..091b77a218 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:8247dedc9811f2b325568973a2b714cd4b46322bcd0bf89af0e662518fa77747 -size 67694 +oid sha256:265d1fd77f393724a26a410e343b1dde4ce8e986db16ba00bb07def24aa52139 +size 68363 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 f106244405..e2b3622d86 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:c393b13532fba4d4ef25dda45b6ca3e1f6da6d49c5b2de412beded261a4f9311 -size 36164 +oid sha256:3c3e85ad3d267db2fa0964b4d28ef9fd50ce4989259646d5d07bdea7e24c7a4c +size 36872 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 f2a69ea475..48b80d3c0c 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:6b493bc5151f15d6ba91bfb0c27b41f3abcf13ee7d511aa59db171cecdbd95f3 -size 31958 +oid sha256:3c3580427877cca8f59538bccd47ee19f57b4bdce28d60135da7de185e17f8f1 +size 32636 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 f4dff45422..80e9263c7e 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:1a33681fe064d5e12f53273bfd9262af8c7b902e237cb8d0641573b0645e291c -size 94687 +oid sha256:7758cf4023fa542f29fd8ade54bab1f2707666c640ad62ed8a6805c8ec2256a3 +size 95336 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 bdad242551..2d5574b88a 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:022954bdca89572b74bc70f6d91820e99eef8826409c0a06e6145a5c3ec8eaf4 -size 87268 +oid sha256:60eec8085688c228b28cef3f1922b984f2cdc54a9207ea04c27c44900fb4d7ee +size 87932 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 edf07a66f3..0f310c78a8 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:af36d0e3383935d256b3730e6f955e858ae42a82f54485b879e7a6a71fc25f6c -size 55237 +oid sha256:0f2280adb5d99a20fbe98b8d097e97c2de0c05a083382a905075bfb5795a2290 +size 55890 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_16_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_16_en.png index aa313049f5..559a928a97 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_16_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_16_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e55407ac7116b3127a979f630777d0d528a349c38d37829d8bc0c37a316c7c5b -size 42526 +oid sha256:7a694440a4ac9db68a24ef77f0502b3936370974b1f6932c49accb6736eb5566 +size 39875 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 b5f80f2faf..091b77a218 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:8247dedc9811f2b325568973a2b714cd4b46322bcd0bf89af0e662518fa77747 -size 67694 +oid sha256:265d1fd77f393724a26a410e343b1dde4ce8e986db16ba00bb07def24aa52139 +size 68363 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 b5f80f2faf..091b77a218 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:8247dedc9811f2b325568973a2b714cd4b46322bcd0bf89af0e662518fa77747 -size 67694 +oid sha256:265d1fd77f393724a26a410e343b1dde4ce8e986db16ba00bb07def24aa52139 +size 68363 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 e01335907a..f4db0cfcf2 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:25e5ac35ddf79fdc78c21dbd031f506da04caac7bdd53f279c88fd4574f72a82 -size 64644 +oid sha256:564360123154706aceed6daf43f33c96c7e3c49b787222ecc236aabb1349e3a1 +size 65323 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_4_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_4_en.png index fe41a54fcc..9eb0a6a43d 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8c1245da0a4cf56aba8e102e7f297996ed58fc8c50165288dea11ca86fbc0dcc -size 57235 +oid sha256:0227ce3fa0664ff4a99649532683837835733d1bb26dcd05b7f6277964b5115c +size 54342 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 b5f80f2faf..091b77a218 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:8247dedc9811f2b325568973a2b714cd4b46322bcd0bf89af0e662518fa77747 -size 67694 +oid sha256:265d1fd77f393724a26a410e343b1dde4ce8e986db16ba00bb07def24aa52139 +size 68363 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_6_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_6_en.png index 0894037dc4..c301dfd550 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e389bce27c241cc13f60c247fea578fa4cd1ecc7448c9bf3ac3af1179e693216 -size 54701 +oid sha256:de11af4e521b9ea166dd422b94e1a6405753a8c00a9b637c76dd3b0e14774294 +size 55355 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_7_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_7_en.png index c4630c3e45..05b71c486e 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5d56802b3e6dd21b20c4e92d47d9b880085f499feac855a46af601a5eb0bfc2f -size 54510 +oid sha256:6596062bc9bcbd81f51e1c7118426ec389c3bcae65df0793754c1a319399998f +size 55159 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_8_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_8_en.png index ce7b5ea699..85ef4f3937 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_8_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_8_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ef1246daff44b29ee4c2b50538a3a948c2593749c70e15e053b8258a377c5756 -size 52745 +oid sha256:af598c1be693235acf29785c487fe69f0bdfc32408bddc948be78bc5fd8ce558 +size 53394 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 b6779aca93..f3460a5dd4 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:0769e243dc60de52c16df23a86eb62167bb60cb756d113f88b9b476c025e402b -size 87117 +oid sha256:d2151f61b19e6d1710c9b9074abbcf2a927fca510cc6d3ef08746dcc4cf8e14a +size 87791 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 fe171e26b7..226f054223 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:8a7b2a6ccb43dc572140e2ce658967cd273d1122bf0216269a648920099a68d0 -size 62572 +oid sha256:a4c896b9025d301961b134c22ec1af858cec8a7b0eb1d823936f5af3cad38271 +size 63094 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 420cb7c631..fc6b74a2f6 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:d56c1af9fc73f4aaeed33dd8b6113ec64ddbfdf63506aa31ae6996732870baa2 -size 31127 +oid sha256:588859e742ca76818510abb9326969da5c227d0946ea6aac9de216e1a62a7d6a +size 31657 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 f36b5c2f83..6f2a17627d 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:6c3fb8ae530989e5a6d6e4193fbac4d4356af34076b684b782a0f8fec31226f1 -size 26657 +oid sha256:827036f5c685629037b5bb7ae3265b3261a52ab3d8b912344cd06137839512be +size 27266 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 48b07fc9bd..d905171a03 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:5d302be6dbaef08b501f4f33d3e01338e068767702a7018bd5bb24ade6eee2cb -size 88558 +oid sha256:3691f9a0e8e90001011735c7496cc977995347eee2333d0f9bb37bd57b488fb8 +size 89113 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 5cb7d766cd..a4ffe24031 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:6be5cd35eec917bf1c96d03079df8235d0bc7b52159f54c8a177a64f648e58c2 -size 81212 +oid sha256:649be03a09cc9f34c0d59f035cdf26096b54b04d9dcb06f53882aae7a6c098cb +size 81789 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 2691d1c1df..2e8b7314f6 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:66d241a4270bef0a1f80c62c302cb5b40b4370f73e8175a746d32c90d1f98208 -size 49882 +oid sha256:422c10006716ea99ae5d3222334f4fe74a002e42fa2ab8b7890dff31a60ca8f7 +size 50444 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_16_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_16_en.png index 451ca0c3ec..cbe5cf415b 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_16_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_16_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1838a9839badf62d4d427a66a15a7d220996bdb0b60f0373249d62e4afae2910 -size 37390 +oid sha256:c748d1ae791d77ddfed18024a4ea04188adba1ac00aa43b5faa7660153cc9209 +size 34734 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 fe171e26b7..226f054223 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:8a7b2a6ccb43dc572140e2ce658967cd273d1122bf0216269a648920099a68d0 -size 62572 +oid sha256:a4c896b9025d301961b134c22ec1af858cec8a7b0eb1d823936f5af3cad38271 +size 63094 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 fe171e26b7..226f054223 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:8a7b2a6ccb43dc572140e2ce658967cd273d1122bf0216269a648920099a68d0 -size 62572 +oid sha256:a4c896b9025d301961b134c22ec1af858cec8a7b0eb1d823936f5af3cad38271 +size 63094 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 89c4934dd9..b8280a1e69 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:8172ca867a8c2e827ead36a22cefe967a5b57c69cae6d5aca1c941e4dd2ba16f -size 60160 +oid sha256:6329073993661030954c535849498a33dc3a95700ef3b1fae9f80cf0b5e6ffaa +size 60728 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_4_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_4_en.png index 390c9f6818..95f3da33c4 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:13740b4fc4cbd24075606e45bf070a8fbb762d298857bc071399def91dda7175 -size 52189 +oid sha256:a04f8865034c36f32f0f7dd098fd6bf3e80f96869036f965c755a7a48286a071 +size 49232 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 fe171e26b7..226f054223 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:8a7b2a6ccb43dc572140e2ce658967cd273d1122bf0216269a648920099a68d0 -size 62572 +oid sha256:a4c896b9025d301961b134c22ec1af858cec8a7b0eb1d823936f5af3cad38271 +size 63094 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_6_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_6_en.png index 0950a6881e..75d8b98f01 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:842d5e0a5cc1102a2e320b43ea5ffda6cf63e94acdbf42adc39edaa1fb355812 -size 51742 +oid sha256:18d684eb1d4bbb7c3eb5de88a5123a60ff66ae625809761ae5f3624e443961c4 +size 52297 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_7_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_7_en.png index b29ccd3a11..0c77cb1a94 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:82b75ce20a535cf1062c4b3ad86d08dc9044cf58d8035a5fdc68c48119157aae -size 51477 +oid sha256:6d4567aa39bf44dbf66c8c81f9195f0520364b1478b0bf9ef499923e0c267b9f +size 52015 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_8_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_8_en.png index 1b1e2edb98..f9b5ae643f 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_8_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_8_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9bde8e9c5618ffc2b3019ce10db6fca44e4f23f3b987c222b7e838beb0dcb488 -size 49749 +oid sha256:729160a038512d10dbce06e6bdf8db15a2aca6b22624a096ade6687ca9c8b7de +size 50335 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 1092dcd1b9..3ae5a4a153 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:bce0bc8590037705369735e83e576f0818f4528298b4b2face999c8802f855b9 -size 81081 +oid sha256:76035b0f36179e93f4e35b9c59d51acee15e7db9d02249ee102656da88e04341 +size 81635 diff --git a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_0_en.png index cf3ad87af2..1ba6334833 100644 --- a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5bf5bde86a7f7e873a6871d359f04f2139099724f9977601f5077b2590e97965 -size 46711 +oid sha256:a4e87a86ec5448c005cc236354c08668380023f3f734413edd38130af7ac9846 +size 46183 diff --git a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_1_en.png index a31ad79f82..e165278f84 100644 --- a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:078079bf6b37471c7a16363c9d49f7deb5bd9d044ed0591ab86ac8a20800ba03 -size 46795 +oid sha256:9d7ecf7e48fc351e1936d9dcb7485873c93941248a5c63af8334fa4967bcca5b +size 46285 diff --git a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_2_en.png index 5f77c0fa62..5b3e741c3f 100644 --- a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d36b97324b3794ff1d01fc13e9e59afb010130d6e022dcc2d7cc9387a13a787e -size 48387 +oid sha256:9db9d270801acdc43a87955bc055e5a25b9b1617de7e2aad93e4d390a36ac653 +size 47797 diff --git a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_3_en.png b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_3_en.png index 5f67807828..8b83d0555c 100644 --- a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:986cfe49b91c522cf3a85d0425c0677a6929c44dca1531923bff2c1766ce46ae -size 59583 +oid sha256:373cfbe1fbd3d9e06bc2079b7ceadccce999efd0cbb1d43f7e791450f3882cad +size 59876 diff --git a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_4_en.png b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_4_en.png index bc27628ac1..6febc55310 100644 --- a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8f8ef2430abd11b31b3e90976f85bd4578e667bd0acc0851544ee4d16358479d -size 60237 +oid sha256:5192794371b4b3d10d5e8035f5ccf5dad66b04f16abb686cb5820d4647f678ef +size 60550 diff --git a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_5_en.png index 490c357afb..b73534e92c 100644 --- a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7228db8e07c808d0a8780ed06f04f22ff8f1d620327f9243b1dedd476cecb902 -size 56896 +oid sha256:59c20c6ef29f76824f67bf26062586455a792bcbee79b7a0c648a1d69db08a65 +size 56400 diff --git a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_0_en.png index 039776804a..463df3804a 100644 --- a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d28be1c00397b6ac456ef93dab7b1da469a7665380ab2c326124efeef3a1c150 -size 45143 +oid sha256:13cf913c2a26e30ad4c9700b110802a00213a514d3c9fcfbce81a82f7316f9fe +size 44515 diff --git a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_1_en.png index 6847911e3c..3423750384 100644 --- a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:81523eeba6cf9e4ea1e92cc819845bc95bbd76f9e977b462f2357fe1d2e3d335 -size 45230 +oid sha256:5a20e35cfde7c96c6f4ceb5fe51af915f7a5ebdd16dc4dc4a0b4187b0163c42a +size 44611 diff --git a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_2_en.png index 763fae759e..cb5e4713ba 100644 --- a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cdff40a4ce4b77a98818798c2b6ce3ad18ee5117f40c47c075b30d7006626f10 -size 46703 +oid sha256:28698a3c2fbbee2f76b6a3fb6312596102e7fc8743dc95db62816606b4109be0 +size 46054 diff --git a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_3_en.png index 760d8a7533..8d9d32385a 100644 --- a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1d331297c0912ffc278828cd00f886c926a71e59aadbee9fef994258ea56c822 -size 57757 +oid sha256:1ee744055473f7b652d874ff024ece68434e88ef085571dbab6466bcd3557c23 +size 58226 diff --git a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_4_en.png b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_4_en.png index 058f822302..2c24a43118 100644 --- a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8265b9acc3932df6f0e1eee5e85c2b16d13060c4164c3fbb5b1b0b598745770c -size 58326 +oid sha256:e3c991f23daeb792f580afc18f3f528649cc92f27555ed05cc1abedad8accc27 +size 58781 diff --git a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_5_en.png b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_5_en.png index 5f5b2315e6..abeece9d09 100644 --- a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:936cf07258d4a001b80b08df4b804c990b9e399bf8a5a544443beebf93caa298 -size 54825 +oid sha256:a95e67e4fd7d8886691d5df2571325254f49db24f8ab16335505b0c201cafb14 +size 54363 diff --git a/tests/uitests/src/test/snapshots/images/libraries.matrix.ui.components_SpaceHeaderRootView_Day_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.matrix.ui.components_SpaceHeaderRootView_Day_0_en.png index 3caed99b5a..7230e781b2 100644 --- a/tests/uitests/src/test/snapshots/images/libraries.matrix.ui.components_SpaceHeaderRootView_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/libraries.matrix.ui.components_SpaceHeaderRootView_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:53ec492b0a46d3add165e01c7ce540f304574791d10232a825e28cd15ae22248 -size 16903 +oid sha256:e582696ce8f1354353347853e8ad5e774b0c8fd2d34de5b1bc22460d372b2cf0 +size 16207 diff --git a/tests/uitests/src/test/snapshots/images/libraries.matrix.ui.components_SpaceHeaderRootView_Night_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.matrix.ui.components_SpaceHeaderRootView_Night_0_en.png index c653ffd3fe..6f079aa16c 100644 --- a/tests/uitests/src/test/snapshots/images/libraries.matrix.ui.components_SpaceHeaderRootView_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/libraries.matrix.ui.components_SpaceHeaderRootView_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:938b51a3e4e4466056da464fabd34066b716fbf55622b179f799181ff900819f -size 15978 +oid sha256:e34e3ba2f0c3bb8cbb0a21dea399dfa4ee34607c7ad4b2f86153d60f325696c3 +size 15232 diff --git a/tests/uitests/src/test/snapshots/images/libraries.matrix.ui.components_SpaceHeaderView_Day_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.matrix.ui.components_SpaceHeaderView_Day_0_en.png index f1bd04835c..341974f70a 100644 --- a/tests/uitests/src/test/snapshots/images/libraries.matrix.ui.components_SpaceHeaderView_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/libraries.matrix.ui.components_SpaceHeaderView_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7853b79eda8a4b82cc49d553f78f545af62bc44b708a20a5bb5e4582ed07bc22 -size 63262 +oid sha256:72ea344a67f0c3cdb0037d63265414868bdc886ee0ef548ace738a7c95aa8ef6 +size 62034 diff --git a/tests/uitests/src/test/snapshots/images/libraries.matrix.ui.components_SpaceHeaderView_Night_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.matrix.ui.components_SpaceHeaderView_Night_0_en.png index 9eba778594..e813b4086b 100644 --- a/tests/uitests/src/test/snapshots/images/libraries.matrix.ui.components_SpaceHeaderView_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/libraries.matrix.ui.components_SpaceHeaderView_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7daff199310c41900d0ca650f38ad2561c8db8542a4d48161a5a88f7fe976318 -size 61899 +oid sha256:0af67c43f3a8b3a5b322a9ab46a46468aa45df57e181e661b9a8c4489d737aff +size 61205 From 6b2e83cb6331644ac4f725d151aabb11cf3ce869 Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Tue, 25 Aug 2026 11:03:42 +0300 Subject: [PATCH 20/97] Fall back to the message body when the formatted body has nothing to render MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The HTML sanitiser in toHtmlDocument() drops every tag outside its safelist, which does not include img. A formatted body whose only content is an image — a custom emoji, or a bot posting an image inline — therefore cleans down to an empty document, and because that document is not null the ?: body fallbacks in the timeline item factory, the room list preview, the notification resolver and plainText are all dead. The message renders as an empty bubble. Return null from toHtmlDocument() when no text survives the sanitisation, so the existing fallbacks take the plain text body, which for these messages carries the alt text the sender provided. --- .../TimelineItemContentMessageFactoryTest.kt | 19 +++++++++++++++ .../matrix/ui/messages/ToHtmlDocument.kt | 5 ++-- .../matrix/ui/messages/ToHtmlDocumentTest.kt | 24 +++++++++++++++++++ .../matrix/ui/messages/ToPlainTextTest.kt | 12 ++++++++++ 4 files changed, 58 insertions(+), 2 deletions(-) diff --git a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentMessageFactoryTest.kt b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentMessageFactoryTest.kt index fc01184764..c014b003d7 100644 --- a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentMessageFactoryTest.kt +++ b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentMessageFactoryTest.kt @@ -229,6 +229,25 @@ class TimelineItemContentMessageFactoryTest : RobolectricTest() { assertThat((result as TimelineItemTextContent).formattedBody).isEqualTo(SpannedString("body")) } + @Test + fun `test create TextMessageType with a formatted body containing only an image falls back to the body`() = runTest { + val sut = createTimelineItemContentMessageFactory() + val result = sut.create( + content = createMessageContent( + type = TextMessageType( + body = "\uD83D\uDE1C", + formatted = FormattedBody(MessageFormat.HTML, "\"\uD83D\uDE1C\"") + ) + ), + senderId = A_USER_ID, + senderProfile = aProfileDetails(), + eventId = AN_EVENT_ID, + ) + assertThat((result as TimelineItemTextContent).formattedBody).isEqualTo(SpannedString("\uD83D\uDE1C")) + assertThat(result.htmlDocument).isNull() + assertThat(result.plainText).isEqualTo("\uD83D\uDE1C") + } + @Test fun `test create VideoMessageType`() = runTest { val sut = createTimelineItemContentMessageFactory() diff --git a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/messages/ToHtmlDocument.kt b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/messages/ToHtmlDocument.kt index d29a28cba9..2f52320b0d 100644 --- a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/messages/ToHtmlDocument.kt +++ b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/messages/ToHtmlDocument.kt @@ -19,7 +19,8 @@ import org.jsoup.safety.Safelist /** * Converts the HTML string [FormattedBody.body] to a [Document] by parsing it. - * If the message is not formatted or the format is not [MessageFormat.HTML] we return `null`. + * If the message is not formatted, the format is not [MessageFormat.HTML], or nothing renderable is left once the + * unsupported tags have been removed, we return `null` so that the plain text body is used instead. * * This will also make sure mentions are prefixed with `@`. * @@ -44,7 +45,7 @@ fun FormattedBody.toHtmlDocument( // Prepend `@` to mentions fixMentions(dom, permalinkParser) - dom + dom.takeIf { it.text().isNotBlank() } } } diff --git a/libraries/matrixui/src/test/kotlin/io/element/android/libraries/matrix/ui/messages/ToHtmlDocumentTest.kt b/libraries/matrixui/src/test/kotlin/io/element/android/libraries/matrix/ui/messages/ToHtmlDocumentTest.kt index ae336cd0d0..dcf8935e57 100644 --- a/libraries/matrixui/src/test/kotlin/io/element/android/libraries/matrix/ui/messages/ToHtmlDocumentTest.kt +++ b/libraries/matrixui/src/test/kotlin/io/element/android/libraries/matrix/ui/messages/ToHtmlDocumentTest.kt @@ -103,4 +103,28 @@ class ToHtmlDocumentTest : RobolectricTest() { }) assertThat(document?.text()).isEqualTo("Hey Alice!") } + + @Test + fun `toHtmlDocument - returns null if the body only contains unsupported tags`() { + val body = FormattedBody( + format = MessageFormat.HTML, + body = "\"\uD83D\uDE1C\"" + ) + + val document = body.toHtmlDocument(permalinkParser = FakePermalinkParser()) + + assertThat(document).isNull() + } + + @Test + fun `toHtmlDocument - returns a Document if some text survives next to unsupported tags`() { + val body = FormattedBody( + format = MessageFormat.HTML, + body = "Look at this \"cat\"!" + ) + + val document = body.toHtmlDocument(permalinkParser = FakePermalinkParser()) + + assertThat(document?.text()).isEqualTo("Look at this !") + } } 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 b1031176e7..aa5cf2e96e 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 @@ -149,4 +149,16 @@ class ToPlainTextTest : RobolectricTest() { ) assertThat(messageType.toPlainText(permalinkParser = FakePermalinkParser())).isEqualTo("This is the message content.") } + + @Test + fun `TextMessageType toPlainText - returns the body if the formatted one only contains an image`() { + val messageType = TextMessageType( + body = "\uD83D\uDE1C", + formatted = FormattedBody( + format = MessageFormat.HTML, + body = "\"\uD83D\uDE1C\"" + ) + ) + assertThat(messageType.toPlainText(permalinkParser = FakePermalinkParser())).isEqualTo("\uD83D\uDE1C") + } } From 47f4e136ddbe0835316fded54447843590f04e87 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 25 Aug 2026 10:22:31 +0200 Subject: [PATCH 21/97] Use fontHeadingMdBold for empty space title. --- .../element/android/features/home/impl/spaces/HomeSpacesView.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/spaces/HomeSpacesView.kt b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/spaces/HomeSpacesView.kt index 914d08d7f6..f9cf38a1aa 100644 --- a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/spaces/HomeSpacesView.kt +++ b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/spaces/HomeSpacesView.kt @@ -143,7 +143,7 @@ private fun EmptySpaceHomeView( ) Text( text = stringResource(CommonStrings.screen_space_list_empty_state_title), - style = ElementTheme.typography.fontHeadingLgBold, + style = ElementTheme.typography.fontHeadingMdBold, color = ElementTheme.colors.textPrimary, textAlign = TextAlign.Center, ) From c62ff733fbad8a54ea530980c34ad9ab7f1d64cc Mon Sep 17 00:00:00 2001 From: ElementBot Date: Tue, 25 Aug 2026 08:37:53 +0000 Subject: [PATCH 22/97] Update screenshots --- .../features.home.impl.spaces_HomeSpacesView_Day_2_en.png | 4 ++-- .../features.home.impl.spaces_HomeSpacesView_Night_2_en.png | 4 ++-- .../images/features.home.impl_HomeView_Day_16_en.png | 4 ++-- .../images/features.home.impl_HomeView_Night_16_en.png | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Day_2_en.png index 03d7d97186..be9847ac64 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ecd79d3f8c4efbb54efa6a5b8dee79274ae9957b01146025dab42a45fc328fc0 -size 24740 +oid sha256:e3f09104202b0d1ba857ef376c32733bb598bebe1dbb47fd2765f7bbf5f756eb +size 22218 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Night_2_en.png index 049aa93a8a..3a37cae365 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.spaces_HomeSpacesView_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0fd37517b8913e2bac3275f717aa15bed18055a7525e0404b25b43cb8bd8422d -size 23840 +oid sha256:037171836a783617d4c6907e73e4738c38bdef6c328302a14f8dcb5535105e41 +size 21553 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_16_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_16_en.png index 559a928a97..17ff86bf54 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_16_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_16_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7a694440a4ac9db68a24ef77f0502b3936370974b1f6932c49accb6736eb5566 -size 39875 +oid sha256:2e2d1b5923dd2941bd7e60a9019a7770ed3383529ad9a8f3572c9e3d450310e0 +size 37461 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_16_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_16_en.png index cbe5cf415b..a26f43f289 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_16_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_16_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c748d1ae791d77ddfed18024a4ea04188adba1ac00aa43b5faa7660153cc9209 -size 34734 +oid sha256:858ed6993ba8d322e9acc40ca3e759372e19cd3aae9854709f374c0c8d1c4429 +size 32549 From 0634cadc9ccb971994527a19e17e74f6c054c4ce Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 25 Aug 2026 11:36:23 +0200 Subject: [PATCH 23/97] Ensure translation of "Chats" does not render in big font when displayed on 2 lines. They can add the end be displayed on one line using the small font. --- .../home/impl/components/HomeTopBar.kt | 11 +- .../designsystem/text/AdaptativeTitle.kt | 144 ++++++++++++++++++ 2 files changed, 148 insertions(+), 7 deletions(-) create mode 100644 libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/text/AdaptativeTitle.kt diff --git a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/components/HomeTopBar.kt b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/components/HomeTopBar.kt index 1a351be9b6..9f4a2403f7 100644 --- a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/components/HomeTopBar.kt +++ b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/components/HomeTopBar.kt @@ -53,8 +53,6 @@ import androidx.compose.ui.graphics.graphicsLayer import androidx.compose.ui.platform.LocalDensity import androidx.compose.ui.platform.LocalLayoutDirection import androidx.compose.ui.res.stringResource -import androidx.compose.ui.semantics.heading -import androidx.compose.ui.semantics.semantics import androidx.compose.ui.unit.Density import androidx.compose.ui.unit.Dp import androidx.compose.ui.unit.LayoutDirection @@ -80,6 +78,7 @@ import io.element.android.libraries.designsystem.modifiers.backgroundVerticalGra import io.element.android.libraries.designsystem.preview.ElementPreview import io.element.android.libraries.designsystem.preview.PreviewsDayNight import io.element.android.libraries.designsystem.preview.USER_NAME_ALICE +import io.element.android.libraries.designsystem.text.AdaptativeTitle import io.element.android.libraries.designsystem.theme.components.DropdownMenu import io.element.android.libraries.designsystem.theme.components.DropdownMenuItem import io.element.android.libraries.designsystem.theme.components.Icon @@ -149,12 +148,10 @@ fun HomeTopBar( // "Chats" else -> ElementTheme.typography.fontHeadingLgBold } - Text( - modifier = Modifier.semantics { - heading() - }, + AdaptativeTitle( + title = displayTitle, style = style, - text = displayTitle, + twoLinesStyle = ElementTheme.typography.fontHeadingSmMedium, ) } }, diff --git a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/text/AdaptativeTitle.kt b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/text/AdaptativeTitle.kt new file mode 100644 index 0000000000..f73347d67f --- /dev/null +++ b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/text/AdaptativeTitle.kt @@ -0,0 +1,144 @@ +/* + * Copyright (c) 2026 Element Creations 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.text + +import androidx.compose.foundation.background +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.BoxWithConstraints +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.width +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.semantics.heading +import androidx.compose.ui.semantics.semantics +import androidx.compose.ui.text.TextStyle +import androidx.compose.ui.text.rememberTextMeasurer +import androidx.compose.ui.unit.dp +import io.element.android.compound.theme.ElementTheme +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 + +/** + * Render the title of a screen, but adapt the style if it does not fit on a single line, + * so that a wrapped title does not look oversized. + * + * @param title the title to render. + * @param style the style to use to render the [title]. + * @param twoLinesStyle the style to use instead of [style] when the [title] does not fit on a single line with [style], + * so that a wrapped title does not look oversized. + * @param modifier the [Modifier] to apply to this layout. + */ +@Composable +fun AdaptativeTitle( + title: String, + style: TextStyle, + twoLinesStyle: TextStyle, + modifier: Modifier = Modifier, +) { + // If style and twoLinesStyle are the same, we don't need to measure the text. + if (style == twoLinesStyle) { + Text( + modifier = modifier.semantics { + heading() + }, + style = style, + maxLines = 2, + text = title, + ) + } else { + val textMeasurer = rememberTextMeasurer() + BoxWithConstraints(modifier = modifier) { + // Measure the title before rendering it, so that the style is picked in a single layout pass. + val fitsOnASingleLine = textMeasurer.measure( + text = title, + style = style, + constraints = constraints, + ).lineCount == 1 + Text( + modifier = Modifier.semantics { + heading() + }, + style = if (fitsOnASingleLine) style else twoLinesStyle, + maxLines = 2, + text = title, + ) + } + } +} + +@PreviewsDayNight +@Composable +internal fun AdaptativeTitlePreview() = ElementPreview { + @Composable + fun AdaptativeTitleItem( + text: String, + content: @Composable () -> Unit, + ) { + Column( + modifier = Modifier + .width(180.dp) + .background(ElementTheme.colors.bgSubtlePrimary), + verticalArrangement = Arrangement.spacedBy(4.dp), + ) { + Text( + text = text, + style = ElementTheme.typography.fontBodyXsRegular, + color = ElementTheme.colors.textSecondary, + ) + content() + } + } + Column( + modifier = Modifier.padding(4.dp), + verticalArrangement = Arrangement.spacedBy(8.dp), + ) { + // Fits on a single line: the large style is kept. + AdaptativeTitleItem("Adaptative, 1 line:") { + AdaptativeTitle( + title = "Chats", + style = ElementTheme.typography.fontHeadingLgBold, + twoLinesStyle = ElementTheme.typography.fontHeadingSmMedium, + ) + } + // Would be rendered on two lines with the large style: the smaller style is used instead. + AdaptativeTitleItem("Adaptative, 2 lines:") { + AdaptativeTitle( + title = "Tutte le conversazioni:", + style = ElementTheme.typography.fontHeadingLgBold, + twoLinesStyle = ElementTheme.typography.fontHeadingSmMedium, + ) + } + // Would be rendered on two lines with the large style: the smaller style is used instead + // and it's finally rendered on a single line with the smaller style. + AdaptativeTitleItem("Adaptative, but 1 line:") { + AdaptativeTitle( + title = "Tous les chats", + style = ElementTheme.typography.fontHeadingLgBold, + twoLinesStyle = ElementTheme.typography.fontHeadingSmMedium, + ) + } + // Short title, with small font, 1 line. + AdaptativeTitleItem("Always small, 1 line:") { + AdaptativeTitle( + title = "My space", + style = ElementTheme.typography.fontHeadingSmMedium, + twoLinesStyle = ElementTheme.typography.fontHeadingSmMedium, + ) + } + // Space name, which can still be rendered on two lines. + AdaptativeTitleItem("Always small, 2 lines:") { + AdaptativeTitle( + title = "A very long space name", + style = ElementTheme.typography.fontHeadingSmMedium, + twoLinesStyle = ElementTheme.typography.fontHeadingSmMedium, + ) + } + } +} From 806f7c500c942f0c2f714da81f3187812c7865c5 Mon Sep 17 00:00:00 2001 From: ElementBot Date: Tue, 25 Aug 2026 10:09:30 +0000 Subject: [PATCH 24/97] Update screenshots --- .../libraries.designsystem.text_AdaptativeTitle_Day_0_en.png | 3 +++ ...libraries.designsystem.text_AdaptativeTitle_Night_0_en.png | 3 +++ ...eme.components_HorizontalFloatingToolbarNoFab_Day_0_en.png | 4 ++-- ...e.components_HorizontalFloatingToolbarNoFab_Night_0_en.png | 4 ++-- ...em.theme.components_HorizontalFloatingToolbar_Day_0_en.png | 4 ++-- ....theme.components_HorizontalFloatingToolbar_Night_0_en.png | 4 ++-- 6 files changed, 14 insertions(+), 8 deletions(-) create mode 100644 tests/uitests/src/test/snapshots/images/libraries.designsystem.text_AdaptativeTitle_Day_0_en.png create mode 100644 tests/uitests/src/test/snapshots/images/libraries.designsystem.text_AdaptativeTitle_Night_0_en.png diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.text_AdaptativeTitle_Day_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.text_AdaptativeTitle_Day_0_en.png new file mode 100644 index 0000000000..87822df7c7 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/libraries.designsystem.text_AdaptativeTitle_Day_0_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5bbefd78bcd53367f72ca11d4f57ea87903a677ff24ba4bc80cc50ddd33108fa +size 34859 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.text_AdaptativeTitle_Night_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.text_AdaptativeTitle_Night_0_en.png new file mode 100644 index 0000000000..57b121b8fa --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/libraries.designsystem.text_AdaptativeTitle_Night_0_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17941844b79274e31880c09b5ee8052693c4425eb7f09c3c2c8687bf2ef64863 +size 34113 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Day_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Day_0_en.png index ee5c582240..58546b8522 100644 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:75de341f705bb22955f9399180519b65ad59c2e1917317d56e50ea4db78f35bc -size 12102 +oid sha256:30357bf18792db5ab20085010251170a724ffe8c00313facd04ee704e806af64 +size 10982 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Night_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Night_0_en.png index 52fd9b9693..fedead0fa8 100644 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:58b9491aaa5554b89d86c62a5c9c44975367538c6baa5562f8dc5768f76d8264 -size 8705 +oid sha256:4811667dec0f32accc5e2c8a5dd5c0b34017fcff8d1e0376ee7a4708426bca0f +size 9838 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Day_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Day_0_en.png index 38ad0e4b56..83302d6ba4 100644 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:326d59cf768b2dbd96eb7964d54c8eda509a5cd57c6e62087625e3314da0bb4d -size 13658 +oid sha256:16dee1dfe746cd40dac9fe8f0af3ecb42cd14bab5cc490917b589beed065ed1b +size 14686 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Night_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Night_0_en.png index 687e0d436a..4da2a98aca 100644 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d57df7110371c9224e232b707d6a1b10ce14afcb56c803a78220792f2a0d4cf2 -size 11354 +oid sha256:ef0dc4d53daeb986f378b6e4d85928b4b6729336c89cf21e642c88c53688a3ab +size 10292 From 88b3559c6b8e1b6b0ef096abd7e810d9fb3c0eeb Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Tue, 25 Aug 2026 14:30:09 +0300 Subject: [PATCH 25/97] Rank the mention suggestions by how well they match what was typed The member suggestions were emitted in whatever order the room member list happened to be in, so a member who only matches somewhere in the middle of their name could be offered above one whose name starts with the query. Matches are now ordered by how well they match: display name prefix first, then user ID localpart prefix, then any other match. The sort is stable, so members of equal rank keep the order the member list gave them. The @room suggestion was also matched case sensitively, so typing @Ro or @ROOM dropped it while @ro kept it. It now matches the query the same way the members do. --- .../suggestions/SuggestionsProcessor.kt | 15 ++++++- .../suggestions/SuggestionsProcessorTest.kt | 42 +++++++++++++++++++ 2 files changed, 56 insertions(+), 1 deletion(-) diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/messagecomposer/suggestions/SuggestionsProcessor.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/messagecomposer/suggestions/SuggestionsProcessor.kt index 010aff5d4b..8f29693e9a 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/messagecomposer/suggestions/SuggestionsProcessor.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/messagecomposer/suggestions/SuggestionsProcessor.kt @@ -115,9 +115,10 @@ class SuggestionsProcessor( .filterUpTo(MAX_BATCH_ITEMS) { member -> isJoinedMemberAndNotSelf(member) && memberMatchesQuery(member, query) } + .sortedBy { member -> matchRank(member, query) } .map(ResolvedSuggestion::Member) - if ("room".contains(query) && canSendRoomMention) { + if ("room".startsWith(query, ignoreCase = true) && canSendRoomMention) { listOf(ResolvedSuggestion.AtRoom) + matchingMembers } else { matchingMembers @@ -125,6 +126,18 @@ class SuggestionsProcessor( } } + /** + * Members whose display name starts with the query come first, then members whose user id + * localpart starts with it, then the remaining matches on any other part of the name or id. + */ + private fun matchRank(member: RoomMember, query: String): Int { + return when { + member.displayName?.startsWith(query, ignoreCase = true) == true -> 0 + member.userId.extractedDisplayName.startsWith(query, ignoreCase = true) -> 1 + else -> 2 + } + } + companion object { // We don't want to retrieve thousands of members private const val MAX_BATCH_ITEMS = 100 diff --git a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/messagecomposer/suggestions/SuggestionsProcessorTest.kt b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/messagecomposer/suggestions/SuggestionsProcessorTest.kt index 6283d7236a..71a9ada1a8 100644 --- a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/messagecomposer/suggestions/SuggestionsProcessorTest.kt +++ b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/messagecomposer/suggestions/SuggestionsProcessorTest.kt @@ -383,6 +383,48 @@ class SuggestionsProcessorTest { ) } + @Test + fun `processing Mention suggestion returns the members matching the start of the query first`() = runTest { + val matchingOnAnyPart = aRoomMember(userId = UserId("@carol:server.org"), displayName = "Not Alice") + val matchingOnUserIdStart = aRoomMember(userId = UserId("@alicia:server.org"), displayName = null) + val matchingOnDisplayNameStart = aRoomMember(userId = UserId("@zoe:server.org"), displayName = "Alice") + val result = suggestionsProcessor.process( + suggestion = aMentionSuggestion("ali"), + roomMembersState = RoomMembersState.Ready( + persistentListOf(matchingOnAnyPart, matchingOnUserIdStart, matchingOnDisplayNameStart) + ), + roomAliasSuggestions = emptyList(), + currentUserId = A_USER_ID_2, + canSendRoomMention = { false }, + isInThread = false, + ) + assertThat(result).isEqualTo( + listOf( + ResolvedSuggestion.Member(matchingOnDisplayNameStart), + ResolvedSuggestion.Member(matchingOnUserIdStart), + ResolvedSuggestion.Member(matchingOnAnyPart), + ) + ) + } + + @Test + fun `processing Mention suggestion returns room ignoring the case of the query`() = runTest { + val aRoomMember = aRoomMember(userId = UserId("@alice:server.org"), displayName = "alice") + val result = suggestionsProcessor.process( + suggestion = aMentionSuggestion("RO"), + roomMembersState = RoomMembersState.Ready(persistentListOf(aRoomMember)), + roomAliasSuggestions = emptyList(), + currentUserId = A_USER_ID_2, + canSendRoomMention = { true }, + isInThread = false, + ) + assertThat(result).isEqualTo( + listOf( + ResolvedSuggestion.AtRoom, + ) + ) + } + @Test fun `processing Mention suggestion with return matching display name but not room if not allowed`() = runTest { val aRoomMember = aRoomMember(userId = UserId("@alice:server.org"), displayName = "ro") From af7e7655997b3b6db8826101206337736e0898e9 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 25 Aug 2026 13:32:11 +0200 Subject: [PATCH 26/97] Fixing compilation issue after merging develop --- .../impl/outgoing/OutgoingVerificationPresenterTest.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationPresenterTest.kt b/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationPresenterTest.kt index a65437ba50..7dfacc40f1 100644 --- a/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationPresenterTest.kt +++ b/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/outgoing/OutgoingVerificationPresenterTest.kt @@ -152,7 +152,7 @@ class OutgoingVerificationPresenterTest { ) val presenter = createOutgoingVerificationPresenter(service) presenter.test { - awaitItem().eventSink(OutgoingVerificationViewEvents.RequestVerification) + awaitItem().eventSink(OutgoingVerificationViewEvent.RequestVerification) advanceTimeBy(1.minutes) assertThat(awaitItem().step).isEqualTo(Step.AwaitingOtherDeviceResponse) advanceTimeBy(9.minutes) From e09d6e0a224da90cdedc99807f5248f34e64d7d6 Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Tue, 25 Aug 2026 15:22:32 +0300 Subject: [PATCH 27/97] Name a sender the timeline has no profile for from the room member list The timeline renders a message with the sender's raw Matrix ID whenever the SDK has no profile for them, even though the room member list the same screen already holds usually knows their display name and avatar. The timeline item factory now falls back to the room member for a sender whose profile is not resolved, both when the item is first built and when the member list arrives afterwards, so the name and the avatar settle on the display name instead of staying on the ID. --- .../event/TimelineItemEventFactory.kt | 25 ++++++- .../factories/TimelineItemsFactoryTest.kt | 71 +++++++++++++++++++ 2 files changed, 95 insertions(+), 1 deletion(-) diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemEventFactory.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemEventFactory.kt index af3e18e3cc..6cd6b66cf1 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemEventFactory.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemEventFactory.kt @@ -28,10 +28,12 @@ import io.element.android.libraries.dateformatter.api.DateFormatterMode 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.MatrixClient +import io.element.android.libraries.matrix.api.core.UserId import io.element.android.libraries.matrix.api.permalink.PermalinkParser import io.element.android.libraries.matrix.api.room.RoomMember import io.element.android.libraries.matrix.api.timeline.MatrixTimelineItem import io.element.android.libraries.matrix.api.timeline.item.EventThreadInfo +import io.element.android.libraries.matrix.api.timeline.item.event.ProfileDetails import io.element.android.libraries.matrix.api.timeline.item.event.getAvatarUrl import io.element.android.libraries.matrix.api.timeline.item.event.getDisambiguatedDisplayName import io.element.android.libraries.matrix.ui.messages.reply.map @@ -64,7 +66,7 @@ class TimelineItemEventFactory( val currentSender = currentTimelineItem.event.sender val groupPosition = computeGroupPosition(currentTimelineItem, timelineItems, index) - val senderProfile = currentTimelineItem.event.senderProfile + val senderProfile = currentTimelineItem.event.senderProfile.orFallbackTo(roomMembers, currentSender) val sentTime = dateFormatter.format( timestamp = currentTimelineItem.event.timestamp, mode = DateFormatterMode.TimeOnly, @@ -138,11 +140,32 @@ class TimelineItemEventFactory( roomMembers: List, renderReadReceipts: Boolean, ): TimelineItem.Event { + val senderProfile = receivedMatrixTimelineItem.event.senderProfile.orFallbackTo(roomMembers, timelineItem.senderId) return timelineItem.copy( + senderProfile = senderProfile, + senderAvatar = timelineItem.senderAvatar.copy( + name = senderProfile.getDisambiguatedDisplayName(timelineItem.senderId), + url = senderProfile.getAvatarUrl(), + ), readReceiptState = receivedMatrixTimelineItem.computeReadReceiptState(roomMembers, renderReadReceipts) ) } + /** + * The timeline only knows the profiles the SDK has resolved, so a sender it has nothing for is rendered as a raw + * user ID. The room member list usually knows that user, so use it rather than showing the ID. + */ + private fun ProfileDetails.orFallbackTo(roomMembers: List, senderId: UserId): ProfileDetails { + if (this is ProfileDetails.Ready) return this + val member = roomMembers.find { it.userId == senderId } ?: return this + return ProfileDetails.Ready( + displayName = member.displayName, + displayNameAmbiguous = member.isNameAmbiguous, + avatarUrl = member.avatarUrl, + displayedStatus = member.displayedStatus, + ) + } + private fun MatrixTimelineItem.Event.computeReactionsState(): TimelineItemReactions { if (!config.computeReactions) { return TimelineItemReactions(reactions = persistentListOf()) diff --git a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/TimelineItemsFactoryTest.kt b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/TimelineItemsFactoryTest.kt index f93c8f196e..3c51fc88ef 100644 --- a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/TimelineItemsFactoryTest.kt +++ b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/TimelineItemsFactoryTest.kt @@ -16,7 +16,10 @@ import io.element.android.features.messages.impl.timeline.model.event.TimelineIt import io.element.android.libraries.matrix.api.core.UniqueId import io.element.android.libraries.matrix.api.timeline.MatrixTimelineItem import io.element.android.libraries.matrix.api.timeline.item.event.OtherMessageType +import io.element.android.libraries.matrix.api.timeline.item.event.ProfileDetails 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.room.aRoomMember import io.element.android.libraries.matrix.test.timeline.aMessageContent import io.element.android.libraries.matrix.test.timeline.anEventTimelineItem import kotlinx.coroutines.test.TestScope @@ -128,6 +131,74 @@ class TimelineItemsFactoryTest { } } + @Test + fun `a sender the timeline knows nothing about is named from the room member list`() = runTest { + val factory = aTimelineItemsFactory( + config = TimelineItemsFactoryConfig( + computeReadReceipts = false, + computeReactions = false, + ) + ) + val items = listOf( + MatrixTimelineItem.Event( + uniqueId = UniqueId("event-0"), + event = anEventTimelineItem( + sender = A_USER_ID, + senderProfile = ProfileDetails.Unavailable, + content = aMessageContent(body = "A regular message"), + ), + ), + ) + factory.timelineItems.test { + factory.replaceWith( + timelineItems = items, + roomMembers = listOf(aRoomMember(userId = A_USER_ID, displayName = "Alice")), + renderReadReceipts = false, + ) + val event = awaitItem().filterIsInstance().single() + assertThat(event.senderProfile).isEqualTo( + ProfileDetails.Ready( + displayName = "Alice", + displayNameAmbiguous = false, + avatarUrl = null, + displayedStatus = null, + ) + ) + assertThat(event.senderAvatar.name).isEqualTo("Alice") + cancelAndIgnoreRemainingEvents() + } + } + + @Test + fun `a sender the room member list knows nothing about keeps the profile the timeline gave`() = runTest { + val factory = aTimelineItemsFactory( + config = TimelineItemsFactoryConfig( + computeReadReceipts = false, + computeReactions = false, + ) + ) + val items = listOf( + MatrixTimelineItem.Event( + uniqueId = UniqueId("event-0"), + event = anEventTimelineItem( + sender = A_USER_ID, + senderProfile = ProfileDetails.Unavailable, + content = aMessageContent(body = "A regular message"), + ), + ), + ) + factory.timelineItems.test { + factory.replaceWith( + timelineItems = items, + roomMembers = listOf(aRoomMember(userId = A_USER_ID_2, displayName = "Bob")), + renderReadReceipts = false, + ) + val event = awaitItem().filterIsInstance().single() + assertThat(event.senderProfile).isEqualTo(ProfileDetails.Unavailable) + cancelAndIgnoreRemainingEvents() + } + } + private suspend fun TestScope.groupPositionsOf(timestamps: List): List { val factory = aTimelineItemsFactory( config = TimelineItemsFactoryConfig( From 23a60cf20a8140bff51541b705ad6860cfc1b1f8 Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Tue, 25 Aug 2026 15:54:45 +0300 Subject: [PATCH 28/97] Point the proxy debugging doc at the method that builds the clients The doc told the reader to add disableSslVerification() to RustMatrixClientFactory.create(), which has not built the client for a long time; getBaseClientBuilder() is where the chain lives, and it covers both the login client and the restored session client. It also only described the emulator's own proxy setting, while the app already follows the device's global proxy through DefaultProxyProvider, which is the only way to do this on a physical device. --- docs/debug_proxying.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/debug_proxying.md b/docs/debug_proxying.md index a28163c959..f76c24eecb 100644 --- a/docs/debug_proxying.md +++ b/docs/debug_proxying.md @@ -9,13 +9,18 @@ 1) Set `127.0.0.1` as "Host name" and `8080` as "Port number". 1) Click "Apply" and verify that "Proxy status" is "Success" and close the settings window. Screenshot 2023-10-04 at 14 48 47 + 1) Alternatively, set the proxy on the device itself, which the app honours through `DefaultProxyProvider`, and which also works on a physical device: + ``` + adb shell settings put global http_proxy 10.0.2.2:8080 + ``` + Use `adb shell settings delete global http_proxy` to remove it afterwards. On a physical device, replace `10.0.2.2` with the address of the machine running mitmproxy. 1) Install the mitmproxy CA cert (this is needed to see traffic from java/kotlin code, it's not needed for traffic coming from native code e.g. the matrix-rust-sdk). 1) Open the emulator Chrome browser app 1) Go to the url `mitm.it` 1) Follow the instructions to install the CA cert on Android devices. Screenshot 2023-10-04 at 14 51 27 1) Slightly modify the Element X app source code. - 1) Go to the `RustMatrixClientFactory.create()` method. + 1) Go to the `RustMatrixClientFactory.getBaseClientBuilder()` method, which builds every client the app creates, whether it is logging in or restoring a session. 1) Add `.disableSslVerification()` in the `ClientBuilder` method chain. 1) Build and run the Element X app. 1) Enjoy, you will see all the traffic in mitmproxy's web interface. From 76b19a158f6c69962605173359754286a2c28381 Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Tue, 25 Aug 2026 15:56:16 +0300 Subject: [PATCH 29/97] Show the build date in the screenshot gallery footer The gallery gave no indication of how old the screenshots on the page were, which is one of the remaining items on the GitHub Pages improvement list. The generator now writes the time it ran alongside the screenshot data, and the page renders it in the footer next to the existing links. --- screenshots/html/data.js | 1 + screenshots/html/screenshots.css | 5 +++++ screenshots/html/script.js | 10 +++++++++- tools/test/generateAllScreenshots.py | 1 + 4 files changed, 16 insertions(+), 1 deletion(-) diff --git a/screenshots/html/data.js b/screenshots/html/data.js index 62cea77dcf..8cf60a31ef 100644 --- a/screenshots/html/data.js +++ b/screenshots/html/data.js @@ -1,4 +1,5 @@ // Generated file, do not edit +export const buildDate = 1787667600; export const screenshots = [ ["en","en-dark","de",], ["features.messages.impl.timeline.components.event_ATimelineItemEventRow_Day_0_en","features.messages.impl.timeline.components.event_ATimelineItemEventRow_Night_0_en",20675,], diff --git a/screenshots/html/screenshots.css b/screenshots/html/screenshots.css index f946c82e81..90842b7ac9 100644 --- a/screenshots/html/screenshots.css +++ b/screenshots/html/screenshots.css @@ -150,6 +150,11 @@ input { height: 40px; } +.build-date { + margin-right: 20px; + font-size: 13px; +} + a:link { color: white; font-size: 14px; diff --git a/screenshots/html/script.js b/screenshots/html/script.js index 4a9586d591..44b2522a5d 100644 --- a/screenshots/html/script.js +++ b/screenshots/html/script.js @@ -5,7 +5,7 @@ * SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial. * Please see LICENSE files in the repository root for full details. */ -import { screenshots } from './data.js'; +import { buildDate, screenshots } from './data.js'; const URL_PARAM_LANGUAGES = "l"; const URL_PARAM_IMAGE_WIDTH = "w"; @@ -360,5 +360,13 @@ function addTable() { document.getElementById('lines').textContent = `${linesCounter} lines`; } +function addBuildDate() { + const element = document.createElement('div'); + element.className = 'build-date'; + element.textContent = `Built on ${new Date(buildDate * 1000).toLocaleDateString()}`; + document.getElementById('footer').appendChild(element); +} + addForm(); +addBuildDate(); addTable(); diff --git a/tools/test/generateAllScreenshots.py b/tools/test/generateAllScreenshots.py index e10a7abb74..a4e3468d80 100755 --- a/tools/test/generateAllScreenshots.py +++ b/tools/test/generateAllScreenshots.py @@ -167,6 +167,7 @@ def generateJavascriptFile(): with open("screenshots/html/data.js", "w") as f: f.write("// Generated file, do not edit\n") + f.write("export const buildDate = %d;\n" % int(time.time())) f.write("export const screenshots = [\n") for line in data: f.write("[") From 898baca9d5bfe44fd6a60d54ad2432ee6516fa2b Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 25 Aug 2026 15:25:50 +0200 Subject: [PATCH 30/97] SDK 26.08.25 --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 46890d253f..c22264eaf1 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -185,7 +185,7 @@ test_detekt_test = { module = "io.gitlab.arturbosch.detekt:detekt-test", version # https://github.com/matrix-org/matrix-rust-components-kotlin/commits/main/sdk/sdk-android/src/main/kotlin/org/matrix/rustcomponents/sdk/matrix_sdk_ffi.kt # All new features should not be implemented in the pull request that upgrades the version, developers should # only fix API breaks and may add some TODOs. -matrix_sdk = "org.matrix.rustcomponents:sdk-android:26.08.19" +matrix_sdk = "org.matrix.rustcomponents:sdk-android:26.08.25" # Others coil = { module = "io.coil-kt.coil3:coil", version.ref = "coil" } From c893657aa01897b635f14510a9ee80f9f84ed103 Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Tue, 25 Aug 2026 16:30:49 +0300 Subject: [PATCH 31/97] Document how the Element Call base URL developer option is used The developer option passes its value through to the widget URL verbatim, so it has to be the URL of the page that joins a room rather than the deployment root. That is not obvious from the field, and hughns asked for it to be written down in docs/ rather than expanded inline in the app, because the path depends on how the deployment was hosted. Part of #4475. --- docs/element_call.md | 53 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 docs/element_call.md diff --git a/docs/element_call.md b/docs/element_call.md new file mode 100644 index 0000000000..e4bd46e2cb --- /dev/null +++ b/docs/element_call.md @@ -0,0 +1,53 @@ +# Element Call + + + +* [Overview](#overview) +* [Setting a custom base URL](#setting-a-custom-base-url) +* [Why the application does not add the room path itself](#why-the-application-does-not-add-the-room-path-itself) +* [Where the value is read](#where-the-value-is-read) + + + +## Overview + +Element X embeds a copy of [Element Call](https://github.com/element-hq/element-call) in the +application assets and loads it from +`https://appassets.androidplatform.net/element-call/index.html`. Calls therefore work out of the box +with no extra deployment, and the embedded copy is the one every user gets. + +Developers can point the application at another Element Call deployment instead — a local +development server, a staging deployment, or a self-hosted one — with the **Element Call base URL** +developer option. + +## Setting a custom base URL + +The option lives in *Settings* → *Developer options* → *Element Call*, under "Element Call base +URL". On a release build the *Developer options* entry is hidden until the version number at the +bottom of *Settings* is tapped seven times. Leaving the field empty restores the embedded copy. + +The value is used verbatim as the widget base URL, so it must be the URL of the page that joins a +room, not the URL of the deployment root. For the public deployments that means: + +| Deployment | Value to enter | +|---|---| +| `call.element.io` | `https://call.element.io/room` | +| `call.element.dev` | `https://call.element.dev/room` | + +Entering `https://call.element.io` without the `/room` suffix loads the Element Call lobby rather +than the room, so the call is never joined. + +## Why the application does not add the room path itself + +The path that joins a room is a property of the deployment, not of Element Call. Unpacking the +Element Call release tarball behind a reverse proxy can put it at any path — `https://call.foo.tld`, +`https://call.foo.tld/some/path/somewhere` — and a proxy that already maps a subdomain onto +`https://1.2.3.4/room` would end up with the suffix twice. The application passes the value through +unchanged so that every one of those deployments can be reached. + +## Where the value is read + +`AppDeveloperSettingsView` renders the field and sends +`AppDeveloperSettingsEvent.SetCustomElementCallBaseUrl`, which `DefaultAppPreferencesStore` persists. +`DefaultCallWidgetProvider.getWidget` reads it back and falls back to the embedded copy when it is +unset. From 1cd27761adfbf8805cfb33ddcb5368787d94d914 Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Tue, 25 Aug 2026 16:44:08 +0300 Subject: [PATCH 32/97] Say so when this session has no secrets to verify another one with MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A session whose recovery state is INCOMPLETE has not got the secrets it would need to sign another device, so accepting an incoming verification request from it can only fail. The screen offered "Start verification" anyway, and the user learnt otherwise at the end of the flow. Show the design's alert step instead — "Verification with this device is currently unavailable" — with only the Ignore action, and leave the request unacknowledged in every other respect. Part of #5344. --- .../incoming/IncomingVerificationPresenter.kt | 12 ++++- .../incoming/IncomingVerificationState.kt | 2 + .../IncomingVerificationStatePreviewParam.kt | 1 + .../impl/incoming/IncomingVerificationView.kt | 14 +++++- .../impl/src/main/res/values/temporary.xml | 11 +++++ .../IncomingVerificationPresenterTest.kt | 46 +++++++++++++++++++ 6 files changed, 83 insertions(+), 3 deletions(-) create mode 100644 features/verifysession/impl/src/main/res/values/temporary.xml diff --git a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationPresenter.kt b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationPresenter.kt index 4cde3f927f..d619058199 100644 --- a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationPresenter.kt +++ b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationPresenter.kt @@ -13,6 +13,7 @@ package io.element.android.features.verifysession.impl.incoming import androidx.compose.runtime.Composable import androidx.compose.runtime.DisposableEffect import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.collectAsState import androidx.compose.runtime.derivedStateOf import androidx.compose.runtime.getValue import androidx.compose.runtime.remember @@ -26,6 +27,8 @@ import io.element.android.libraries.architecture.Presenter import io.element.android.libraries.dateformatter.api.DateFormatter import io.element.android.libraries.dateformatter.api.DateFormatterMode import io.element.android.libraries.di.annotations.SessionCoroutineScope +import io.element.android.libraries.matrix.api.encryption.EncryptionService +import io.element.android.libraries.matrix.api.encryption.RecoveryState import io.element.android.libraries.matrix.api.verification.SessionVerificationRequestDetails import io.element.android.libraries.matrix.api.verification.SessionVerificationService import io.element.android.libraries.matrix.api.verification.VerificationFlowState @@ -45,6 +48,7 @@ class IncomingVerificationPresenter( @Assisted private val navigator: IncomingVerificationNavigator, @SessionCoroutineScope private val sessionCoroutineScope: CoroutineScope, private val sessionVerificationService: SessionVerificationService, + private val encryptionService: EncryptionService, private val stateMachine: IncomingVerificationStateMachine, private val dateFormatter: DateFormatter, ) : Presenter { @@ -92,12 +96,15 @@ class IncomingVerificationPresenter( mode = DateFormatterMode.TimeOrDate, ) } - val step by remember { + val recoveryState by encryptionService.recoveryStateStateFlow.collectAsState() + val isMissingSecrets = recoveryState == RecoveryState.INCOMPLETE + val step by remember(isMissingSecrets) { derivedStateOf { - stateAndDispatch.state.value.toVerificationStep( + val currentStep = stateAndDispatch.state.value.toVerificationStep( sessionVerificationRequestDetails = verificationRequest.details, formattedSignInTime = formattedSignInTime, ) + if (isMissingSecrets && currentStep is Step.Initial) Step.Unavailable else currentStep } } @@ -131,6 +138,7 @@ class IncomingVerificationPresenter( } else { stateAndDispatch.dispatchAction(StateMachineEvent.DeclineChallenge) } + Step.Unavailable, Step.Canceled, Step.Completed, Step.Failure -> navigator.onFinish() 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 e3663800b2..a772cfe861 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 @@ -32,6 +32,8 @@ data class IncomingVerificationState( val isWaiting: Boolean, ) : Step + data object Unavailable : Step + data object Canceled : Step data object Completed : Step data object Failure : Step diff --git a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationStatePreviewParam.kt b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationStatePreviewParam.kt index 68672be025..1214ba29ef 100644 --- a/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationStatePreviewParam.kt +++ b/features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationStatePreviewParam.kt @@ -43,6 +43,7 @@ open class IncomingVerificationStatePreviewParam : PreviewParameterProvider BigIcon.Style.AlertSolid + Step.Canceled, + Step.Unavailable -> BigIcon.Style.AlertSolid is Step.Initial -> when (request) { is VerificationRequest.Incoming.OtherSession -> BigIcon.Style.Default(CompoundIcons.Devices()) is VerificationRequest.Incoming.User -> BigIcon.Style.Default(CompoundIcons.UserProfileSolid()) @@ -106,6 +107,7 @@ private fun IncomingVerificationHeader(step: Step, request: VerificationRequest. } val titleTextId = when (step) { Step.Canceled -> CommonStrings.common_verification_failed + Step.Unavailable -> R.string.screen_session_verification_unavailable_title is Step.Initial -> R.string.screen_session_verification_request_title is Step.Verifying -> when (step.data) { is SessionVerificationData.Decimals -> R.string.screen_session_verification_compare_numbers_title @@ -116,6 +118,7 @@ private fun IncomingVerificationHeader(step: Step, request: VerificationRequest. } val subtitleTextId = when (step) { Step.Canceled -> R.string.screen_session_verification_request_failure_subtitle + Step.Unavailable -> R.string.screen_session_verification_unavailable_subtitle is Step.Initial -> when (request) { is VerificationRequest.Incoming.OtherSession -> R.string.screen_session_verification_request_subtitle is VerificationRequest.Incoming.User -> R.string.screen_session_verification_user_responder_subtitle @@ -246,6 +249,15 @@ private fun IncomingVerificationBottomMenu( ) } } + Step.Unavailable -> { + VerificationBottomMenu { + Button( + modifier = Modifier.fillMaxWidth(), + text = stringResource(CommonStrings.action_ignore), + onClick = { eventSink(IncomingVerificationViewEvent.IgnoreVerification) }, + ) + } + } Step.Canceled, is Step.Completed, is Step.Failure -> { diff --git a/features/verifysession/impl/src/main/res/values/temporary.xml b/features/verifysession/impl/src/main/res/values/temporary.xml new file mode 100644 index 0000000000..b0db8e7fc6 --- /dev/null +++ b/features/verifysession/impl/src/main/res/values/temporary.xml @@ -0,0 +1,11 @@ + + + + Verification with this device is currently unavailable + Please use another device or recovery key. + diff --git a/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationPresenterTest.kt b/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationPresenterTest.kt index 45d5c623c4..1574224ed9 100644 --- a/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationPresenterTest.kt +++ b/features/verifysession/impl/src/test/kotlin/io/element/android/features/verifysession/impl/incoming/IncomingVerificationPresenterTest.kt @@ -13,6 +13,8 @@ import io.element.android.features.verifysession.impl.ui.aEmojisSessionVerificat import io.element.android.libraries.dateformatter.api.DateFormatter import io.element.android.libraries.dateformatter.test.FakeDateFormatter import io.element.android.libraries.matrix.api.core.FlowId +import io.element.android.libraries.matrix.api.encryption.EncryptionService +import io.element.android.libraries.matrix.api.encryption.RecoveryState import io.element.android.libraries.matrix.api.user.MatrixUser import io.element.android.libraries.matrix.api.verification.SessionVerificationRequestDetails import io.element.android.libraries.matrix.api.verification.SessionVerificationService @@ -21,6 +23,7 @@ import io.element.android.libraries.matrix.api.verification.VerificationRequest import io.element.android.libraries.matrix.test.A_DEVICE_ID import io.element.android.libraries.matrix.test.A_TIMESTAMP import io.element.android.libraries.matrix.test.A_USER_ID +import io.element.android.libraries.matrix.test.encryption.FakeEncryptionService import io.element.android.libraries.matrix.test.verification.FakeSessionVerificationService import io.element.android.tests.testutils.WarmUpRule import io.element.android.tests.testutils.lambda.lambdaError @@ -294,6 +297,47 @@ class IncomingVerificationPresenterTest { navigatorLambda.assertions().isCalledOnce() } } + + @Test + fun `present - a session missing its secrets cannot be used to verify and offers no verification action`() = runTest { + val acknowledgeVerificationRequestLambda = lambdaRecorder { _ -> } + val resetLambda = lambdaRecorder { } + val acceptVerificationRequestLambda = lambdaRecorder { lambdaError() } + val encryptionService = FakeEncryptionService().apply { + recoveryStateStateFlow.value = RecoveryState.INCOMPLETE + } + createPresenter( + service = FakeSessionVerificationService( + acknowledgeVerificationRequestLambda = acknowledgeVerificationRequestLambda, + acceptVerificationRequestLambda = acceptVerificationRequestLambda, + resetLambda = resetLambda, + ), + encryptionService = encryptionService, + ).test { + advanceUntilIdle() + assertThat(awaitItem().step).isEqualTo(IncomingVerificationState.Step.Unavailable) + acceptVerificationRequestLambda.assertions().isNeverCalled() + cancelAndIgnoreRemainingEvents() + } + } + + @Test + fun `present - a session that holds its secrets is offered the verification action`() = runTest { + val encryptionService = FakeEncryptionService().apply { + recoveryStateStateFlow.value = RecoveryState.ENABLED + } + createPresenter( + service = FakeSessionVerificationService( + acknowledgeVerificationRequestLambda = { }, + resetLambda = { }, + ), + encryptionService = encryptionService, + ).test { + advanceUntilIdle() + assertThat(awaitItem().step).isInstanceOf(IncomingVerificationState.Step.Initial::class.java) + cancelAndIgnoreRemainingEvents() + } + } } private val anIncomingSessionVerificationRequest = VerificationRequest.Incoming.OtherSession( @@ -314,11 +358,13 @@ internal fun TestScope.createPresenter( verificationRequest: VerificationRequest.Incoming = anIncomingSessionVerificationRequest, navigator: IncomingVerificationNavigator = IncomingVerificationNavigator { lambdaError() }, service: SessionVerificationService = FakeSessionVerificationService(), + encryptionService: EncryptionService = FakeEncryptionService(), dateFormatter: DateFormatter = FakeDateFormatter(), ) = IncomingVerificationPresenter( verificationRequest = verificationRequest, navigator = navigator, sessionVerificationService = service, + encryptionService = encryptionService, stateMachine = IncomingVerificationStateMachine(service), dateFormatter = dateFormatter, sessionCoroutineScope = backgroundScope, From 16bc825c173d8d9d8f847c951b32c49369457079 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 25 Aug 2026 15:33:47 +0200 Subject: [PATCH 33/97] `username` has been renamed to `serverNameFromUserId`, but it is not necessary if we call `homeserverUrl`, so just remove it. --- .../android/libraries/matrix/impl/RustMatrixClientFactory.kt | 1 - .../matrix/impl/fixtures/fakes/FakeFfiClientBuilder.kt | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/RustMatrixClientFactory.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/RustMatrixClientFactory.kt index 0d593626bb..b1d93fd903 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/RustMatrixClientFactory.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/RustMatrixClientFactory.kt @@ -99,7 +99,6 @@ class RustMatrixClientFactory( isMessageSearchAvailable = isMessageSearchAvailable, ) .homeserverUrl(sessionData.homeserverUrl) - .username(sessionData.userId) .let { (clientBuilderEnterpriseHook(RustMatrixClientBuilder(it), SessionId(sessionData.userId)) as RustMatrixClientBuilder).inner } .use { it.build() } diff --git a/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/fixtures/fakes/FakeFfiClientBuilder.kt b/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/fixtures/fakes/FakeFfiClientBuilder.kt index 623fe9a8cf..ba010ed728 100644 --- a/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/fixtures/fakes/FakeFfiClientBuilder.kt +++ b/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/fixtures/fakes/FakeFfiClientBuilder.kt @@ -42,7 +42,7 @@ class FakeFfiClientBuilder( override fun setSessionDelegate(sessionDelegate: ClientSessionDelegate) = this override fun slidingSyncVersionBuilder(versionBuilder: SlidingSyncVersionBuilder) = this override fun userAgent(userAgent: String) = this - override fun username(username: String) = this + override fun serverNameFromUserId(userId: String): ClientBuilder = this override fun enableShareHistoryOnInvite(enableShareHistoryOnInvite: Boolean): ClientBuilder = this override fun threadsEnabled(enabled: Boolean, threadSubscriptions: Boolean): ClientBuilder = this override fun sqliteStore(config: SqliteStoreBuilder): ClientBuilder = this From 776cfc9c808af57501f211739fe10352882a4883 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 25 Aug 2026 15:55:51 +0200 Subject: [PATCH 34/97] Add new type RoomRetention --- .../element/android/libraries/matrix/api/room/StateEventType.kt | 1 + .../android/libraries/matrix/impl/room/StateEventType.kt | 2 ++ 2 files changed, 3 insertions(+) diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/StateEventType.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/StateEventType.kt index 7bfc5dc6bb..2994683a61 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/StateEventType.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/room/StateEventType.kt @@ -35,6 +35,7 @@ sealed interface StateEventType { data object RoomImagePack : StateEventType data object RoomLanguage : StateEventType data object RoomPolicy : StateEventType + data object RoomRetention : StateEventType data class Custom(val type: String) : StateEventType } diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/StateEventType.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/StateEventType.kt index 13a040525e..e64eb87570 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/StateEventType.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/StateEventType.kt @@ -39,6 +39,7 @@ fun StateEventType.map(): RustStateEventType = when (this) { StateEventType.RoomImagePack -> RustStateEventType.RoomImagePack StateEventType.RoomLanguage -> RustStateEventType.RoomLanguage StateEventType.RoomPolicy -> RustStateEventType.RoomPolicy + StateEventType.RoomRetention -> RustStateEventType.RoomRetention is StateEventType.Custom -> stateEventTypeFromString(type) } @@ -69,5 +70,6 @@ fun RustStateEventType.map(): StateEventType = when (this) { RustStateEventType.RoomImagePack -> StateEventType.RoomImagePack RustStateEventType.RoomLanguage -> StateEventType.RoomLanguage RustStateEventType.RoomPolicy -> StateEventType.RoomPolicy + RustStateEventType.RoomRetention -> StateEventType.RoomRetention is RustStateEventType.Custom -> StateEventType.Custom(this.toString()) } From ca117ebcdd09ee68a3f40636d85f3fdf49f6cf80 Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Tue, 25 Aug 2026 17:04:49 +0300 Subject: [PATCH 35/97] Record the screenshots for the new incoming verification step --- ...ession.impl.incoming_IncomingVerificationView_Day_14_en.png | 3 +++ ...sion.impl.incoming_IncomingVerificationView_Night_14_en.png | 3 +++ 2 files changed, 6 insertions(+) create mode 100644 tests/uitests/src/test/snapshots/images/features.verifysession.impl.incoming_IncomingVerificationView_Day_14_en.png create mode 100644 tests/uitests/src/test/snapshots/images/features.verifysession.impl.incoming_IncomingVerificationView_Night_14_en.png diff --git a/tests/uitests/src/test/snapshots/images/features.verifysession.impl.incoming_IncomingVerificationView_Day_14_en.png b/tests/uitests/src/test/snapshots/images/features.verifysession.impl.incoming_IncomingVerificationView_Day_14_en.png new file mode 100644 index 0000000000..d0f515b65f --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/features.verifysession.impl.incoming_IncomingVerificationView_Day_14_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24a0c3bc293d49ce04d5da69f0b10ffabe623c8666da694851f014cd022bebfb +size 26261 diff --git a/tests/uitests/src/test/snapshots/images/features.verifysession.impl.incoming_IncomingVerificationView_Night_14_en.png b/tests/uitests/src/test/snapshots/images/features.verifysession.impl.incoming_IncomingVerificationView_Night_14_en.png new file mode 100644 index 0000000000..b80b4adf04 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/features.verifysession.impl.incoming_IncomingVerificationView_Night_14_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a4ea3326363c87f3c0cd0122d298fd40d2354749a97551ee32914463ceaeb83 +size 25723 From 30c18b8a008208d9d252bf79a59326a9447e8a37 Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Tue, 25 Aug 2026 20:51:27 +0300 Subject: [PATCH 36/97] Say when the server cannot be reached instead of showing nothing While the homeserver is unreachable but the device still has a working network, the app showed no indication at all: the syncing chip is hidden as soon as the SDK reports the session offline, and the offline banner only appears when the device itself has no connectivity. A blocked or down server was therefore indistinguishable from a quiet, healthy one. The chip now has three states rather than a boolean, and the third says "Server unreachable" for exactly that case. When the device has no network the chip stays hidden, because the offline banner already says so and two overlapping messages would be worse than one. Part of #4099 --- .../appnav/loggedin/LoggedInPresenter.kt | 15 ++++++++-- .../android/appnav/loggedin/LoggedInState.kt | 8 ++++- .../loggedin/LoggedInStatePreviewParam.kt | 7 +++-- .../android/appnav/loggedin/LoggedInView.kt | 2 +- .../android/appnav/loggedin/SyncStateView.kt | 28 +++++++++++++---- .../appnav/loggedin/LoggedInPresenterTest.kt | 30 ++++++++++++++++--- 6 files changed, 72 insertions(+), 18 deletions(-) diff --git a/appnav/src/main/kotlin/io/element/android/appnav/loggedin/LoggedInPresenter.kt b/appnav/src/main/kotlin/io/element/android/appnav/loggedin/LoggedInPresenter.kt index f6faee0acf..f2f6e1312f 100644 --- a/appnav/src/main/kotlin/io/element/android/appnav/loggedin/LoggedInPresenter.kt +++ b/appnav/src/main/kotlin/io/element/android/appnav/loggedin/LoggedInPresenter.kt @@ -105,9 +105,18 @@ class LoggedInPresenter( } val syncIndicator by matrixClient.roomListService.syncIndicator.collectAsState() val isOnline by syncService.isOnline.collectAsState() - val showSyncSpinner by remember { + val hasNetwork by networkMonitor.connectivity.collectAsState() + val syncIndicatorState by remember { derivedStateOf { - isOnline && syncIndicator == RoomListService.SyncIndicator.Show + when { + isOnline -> if (syncIndicator == RoomListService.SyncIndicator.Show) { + SyncIndicatorState.Syncing + } else { + SyncIndicatorState.Hidden + } + hasNetwork == NetworkStatus.Connected -> SyncIndicatorState.ServerUnreachable + else -> SyncIndicatorState.Hidden + } } } var forceNativeSlidingSyncMigration by remember { mutableStateOf(false) } @@ -181,7 +190,7 @@ class LoggedInPresenter( } return LoggedInState( - showSyncSpinner = showSyncSpinner, + syncIndicatorState = syncIndicatorState, pusherRegistrationState = pusherRegistrationState.value, ignoreRegistrationError = ignoreRegistrationError, forceNativeSlidingSyncMigration = forceNativeSlidingSyncMigration, diff --git a/appnav/src/main/kotlin/io/element/android/appnav/loggedin/LoggedInState.kt b/appnav/src/main/kotlin/io/element/android/appnav/loggedin/LoggedInState.kt index 33499341e7..8ac675a146 100644 --- a/appnav/src/main/kotlin/io/element/android/appnav/loggedin/LoggedInState.kt +++ b/appnav/src/main/kotlin/io/element/android/appnav/loggedin/LoggedInState.kt @@ -11,8 +11,14 @@ package io.element.android.appnav.loggedin import io.element.android.libraries.architecture.AsyncData import io.element.android.libraries.permissions.api.localnetwork.LocalNetworkPermissionDialog +enum class SyncIndicatorState { + Hidden, + Syncing, + ServerUnreachable, +} + data class LoggedInState( - val showSyncSpinner: Boolean, + val syncIndicatorState: SyncIndicatorState, val pusherRegistrationState: AsyncData, val ignoreRegistrationError: Boolean, val forceNativeSlidingSyncMigration: Boolean, diff --git a/appnav/src/main/kotlin/io/element/android/appnav/loggedin/LoggedInStatePreviewParam.kt b/appnav/src/main/kotlin/io/element/android/appnav/loggedin/LoggedInStatePreviewParam.kt index b479e00279..705f6fbe61 100644 --- a/appnav/src/main/kotlin/io/element/android/appnav/loggedin/LoggedInStatePreviewParam.kt +++ b/appnav/src/main/kotlin/io/element/android/appnav/loggedin/LoggedInStatePreviewParam.kt @@ -17,7 +17,8 @@ open class LoggedInStatePreviewParam : PreviewParameterProvider { override val values: Sequence get() = sequenceOf( aLoggedInState(), - aLoggedInState(showSyncSpinner = true), + aLoggedInState(syncIndicatorState = SyncIndicatorState.Syncing), + aLoggedInState(syncIndicatorState = SyncIndicatorState.ServerUnreachable), aLoggedInState(pusherRegistrationState = AsyncData.Failure(PusherRegistrationFailure.NoDistributorsAvailable())), aLoggedInState(forceNativeSlidingSyncMigration = true), aLoggedInState(localNetworkPermissionDialog = LocalNetworkPermissionDialog.Rationale), @@ -26,13 +27,13 @@ open class LoggedInStatePreviewParam : PreviewParameterProvider { } fun aLoggedInState( - showSyncSpinner: Boolean = false, + syncIndicatorState: SyncIndicatorState = SyncIndicatorState.Hidden, pusherRegistrationState: AsyncData = AsyncData.Uninitialized, forceNativeSlidingSyncMigration: Boolean = false, appName: String = "Element X", localNetworkPermissionDialog: LocalNetworkPermissionDialog = LocalNetworkPermissionDialog.None, ) = LoggedInState( - showSyncSpinner = showSyncSpinner, + syncIndicatorState = syncIndicatorState, pusherRegistrationState = pusherRegistrationState, ignoreRegistrationError = false, forceNativeSlidingSyncMigration = forceNativeSlidingSyncMigration, diff --git a/appnav/src/main/kotlin/io/element/android/appnav/loggedin/LoggedInView.kt b/appnav/src/main/kotlin/io/element/android/appnav/loggedin/LoggedInView.kt index 060a24855a..1d3a355663 100644 --- a/appnav/src/main/kotlin/io/element/android/appnav/loggedin/LoggedInView.kt +++ b/appnav/src/main/kotlin/io/element/android/appnav/loggedin/LoggedInView.kt @@ -47,7 +47,7 @@ fun LoggedInView( ) { SyncStateView( modifier = Modifier.align(Alignment.TopCenter), - isVisible = state.showSyncSpinner, + state = state.syncIndicatorState, ) } when (state.pusherRegistrationState) { diff --git a/appnav/src/main/kotlin/io/element/android/appnav/loggedin/SyncStateView.kt b/appnav/src/main/kotlin/io/element/android/appnav/loggedin/SyncStateView.kt index 7c5f196a4c..db39658ad4 100644 --- a/appnav/src/main/kotlin/io/element/android/appnav/loggedin/SyncStateView.kt +++ b/appnav/src/main/kotlin/io/element/android/appnav/loggedin/SyncStateView.kt @@ -25,18 +25,23 @@ import io.element.android.libraries.ui.strings.CommonStrings @Composable fun SyncStateView( - isVisible: Boolean, + state: SyncIndicatorState, modifier: Modifier = Modifier ) { AnimatedVisibility( - visible = isVisible, + visible = state != SyncIndicatorState.Hidden, modifier = modifier, enter = fadeIn(spring(stiffness = 500F)), exit = fadeOut(spring(stiffness = 500F)), ) { - AsyncIndicator.Loading( - text = stringResource(id = CommonStrings.common_syncing), - ) + when (state) { + SyncIndicatorState.ServerUnreachable -> AsyncIndicator.Failure( + text = stringResource(id = CommonStrings.common_server_unreachable), + ) + else -> AsyncIndicator.Loading( + text = stringResource(id = CommonStrings.common_syncing), + ) + } } } @@ -46,7 +51,18 @@ internal fun SyncStateViewPreview() = ElementPreview { // Add a box to see the shadow Box(modifier = Modifier.padding(24.dp)) { SyncStateView( - isVisible = true + state = SyncIndicatorState.Syncing + ) + } +} + +@PreviewsDayNight +@Composable +internal fun SyncStateViewServerUnreachablePreview() = ElementPreview { + // Add a box to see the shadow + Box(modifier = Modifier.padding(24.dp)) { + SyncStateView( + state = SyncIndicatorState.ServerUnreachable ) } } diff --git a/appnav/src/test/kotlin/io/element/android/appnav/loggedin/LoggedInPresenterTest.kt b/appnav/src/test/kotlin/io/element/android/appnav/loggedin/LoggedInPresenterTest.kt index f85d35bbb5..474253c8df 100644 --- a/appnav/src/test/kotlin/io/element/android/appnav/loggedin/LoggedInPresenterTest.kt +++ b/appnav/src/test/kotlin/io/element/android/appnav/loggedin/LoggedInPresenterTest.kt @@ -67,7 +67,7 @@ class LoggedInPresenterTest { fun `present - initial state`() = runTest { createLoggedInPresenter().test { val initialState = awaitItem() - assertThat(initialState.showSyncSpinner).isFalse() + assertThat(initialState.syncIndicatorState).isEqualTo(SyncIndicatorState.Hidden) assertThat(initialState.pusherRegistrationState.isUninitialized()).isTrue() assertThat(initialState.ignoreRegistrationError).isFalse() } @@ -97,11 +97,33 @@ class LoggedInPresenterTest { matrixClient = FakeMatrixClient(roomListService = roomListService), ).test { val initialState = awaitItem() - assertThat(initialState.showSyncSpinner).isFalse() + assertThat(initialState.syncIndicatorState).isEqualTo(SyncIndicatorState.Hidden) roomListService.postSyncIndicator(RoomListService.SyncIndicator.Show) - consumeItemsUntilPredicate { it.showSyncSpinner } + consumeItemsUntilPredicate { it.syncIndicatorState == SyncIndicatorState.Syncing } roomListService.postSyncIndicator(RoomListService.SyncIndicator.Hide) - consumeItemsUntilPredicate { !it.showSyncSpinner } + consumeItemsUntilPredicate { it.syncIndicatorState != SyncIndicatorState.Syncing } + } + } + + @Test + fun `present - say the server is unreachable when the device has network but the sync is offline`() = runTest { + createLoggedInPresenter( + syncState = SyncState.Offline, + networkMonitor = FakeNetworkMonitor(initialStatus = NetworkStatus.Connected), + ).test { + consumeItemsUntilPredicate { it.syncIndicatorState == SyncIndicatorState.ServerUnreachable } + cancelAndConsumeRemainingEvents() + } + } + + @Test + fun `present - say nothing when the device itself has no network`() = runTest { + createLoggedInPresenter( + syncState = SyncState.Offline, + networkMonitor = FakeNetworkMonitor(initialStatus = NetworkStatus.Disconnected), + ).test { + consumeItemsUntilPredicate { it.syncIndicatorState == SyncIndicatorState.Hidden } + cancelAndConsumeRemainingEvents() } } From 65c2cd8a79855ce9be7f0c1a6b845fc10f1f7b93 Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Tue, 25 Aug 2026 20:55:38 +0300 Subject: [PATCH 37/97] Drop the sender's name from the room list preview of two-person rooms The room list preview prefixes the sender's name unless the room is a direct message. A room that was created as a group and later converted to a direct message is not marked as one by the server, so its preview kept naming the only other person in it on every message, while iOS did not. The prefix now depends on how many people are actually in the room rather than on the direct message flag, which is the behaviour asked for in the issue: no name while only two people can be talking, the name back as soon as a third joins. Part of #1548 --- .../datasource/RoomListRoomSummaryFactory.kt | 7 ++++- .../RoomListRoomSummaryFactoryTest.kt | 26 +++++++++++++++++++ .../test/FakeRoomLatestEventFormatter.kt | 5 ++++ 3 files changed, 37 insertions(+), 1 deletion(-) diff --git a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/datasource/RoomListRoomSummaryFactory.kt b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/datasource/RoomListRoomSummaryFactory.kt index 96e9f9344b..ba3e8592b6 100644 --- a/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/datasource/RoomListRoomSummaryFactory.kt +++ b/features/home/impl/src/main/kotlin/io/element/android/features/home/impl/datasource/RoomListRoomSummaryFactory.kt @@ -19,6 +19,7 @@ import io.element.android.libraries.designsystem.components.avatar.AvatarSize import io.element.android.libraries.eventformatter.api.RoomLatestEventFormatter import io.element.android.libraries.matrix.api.room.CallIntentConsensus 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.roomlist.LatestEventValue import io.element.android.libraries.matrix.api.roomlist.RoomSummary import io.element.android.libraries.matrix.ui.model.dmUserStatus @@ -47,7 +48,7 @@ class RoomListRoomSummaryFactory( mode = DateFormatterMode.TimeOrDate, useRelative = true, ), - latestEvent = computeLatestEvent(roomSummary.latestEvent, roomInfo.isDm), + latestEvent = computeLatestEvent(roomSummary.latestEvent, roomInfo.hasOnlyTwoMembers()), avatarData = avatarData, userDefinedNotificationMode = roomInfo.userDefinedNotificationMode, hasRoomCall = roomInfo.hasRoomCall, @@ -81,6 +82,10 @@ class RoomListRoomSummaryFactory( ) } + private fun RoomInfo.hasOnlyTwoMembers(): Boolean { + return isDm || activeMembersCount <= 2 + } + private fun computeLatestEvent(latestEvent: LatestEventValue, dm: Boolean): LatestEvent { return when (latestEvent) { is LatestEventValue.None -> { diff --git a/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/datasource/RoomListRoomSummaryFactoryTest.kt b/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/datasource/RoomListRoomSummaryFactoryTest.kt index 5f307918be..bfd92094a5 100644 --- a/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/datasource/RoomListRoomSummaryFactoryTest.kt +++ b/features/home/impl/src/test/kotlin/io/element/android/features/home/impl/datasource/RoomListRoomSummaryFactoryTest.kt @@ -8,10 +8,36 @@ package io.element.android.features.home.impl.datasource +import com.google.common.truth.Truth.assertThat import io.element.android.libraries.dateformatter.api.DateFormatter import io.element.android.libraries.dateformatter.test.FakeDateFormatter import io.element.android.libraries.eventformatter.api.RoomLatestEventFormatter import io.element.android.libraries.eventformatter.test.FakeRoomLatestEventFormatter +import io.element.android.libraries.matrix.test.room.aRoomInfo +import io.element.android.libraries.matrix.test.room.aRoomSummary +import org.junit.Test + +class RoomListRoomSummaryFactoryTest { + @Test + fun `a room with two members does not prefix its preview with the sender`() { + val formatter = FakeRoomLatestEventFormatter() + val factory = aRoomListRoomSummaryFactory(roomLatestEventFormatter = formatter) + + factory.create(aRoomSummary(info = aRoomInfo(isDm = false, activeMembersCount = 2))) + + assertThat(formatter.lastIsDmRoom).isTrue() + } + + @Test + fun `a room with more than two members prefixes its preview with the sender`() { + val formatter = FakeRoomLatestEventFormatter() + val factory = aRoomListRoomSummaryFactory(roomLatestEventFormatter = formatter) + + factory.create(aRoomSummary(info = aRoomInfo(isDm = false, activeMembersCount = 3))) + + assertThat(formatter.lastIsDmRoom).isFalse() + } +} fun aRoomListRoomSummaryFactory( dateFormatter: DateFormatter = FakeDateFormatter { _, _, _ -> "Today" }, diff --git a/libraries/eventformatter/test/src/main/kotlin/io/element/android/libraries/eventformatter/test/FakeRoomLatestEventFormatter.kt b/libraries/eventformatter/test/src/main/kotlin/io/element/android/libraries/eventformatter/test/FakeRoomLatestEventFormatter.kt index 5e1a056a6c..de1b40e14c 100644 --- a/libraries/eventformatter/test/src/main/kotlin/io/element/android/libraries/eventformatter/test/FakeRoomLatestEventFormatter.kt +++ b/libraries/eventformatter/test/src/main/kotlin/io/element/android/libraries/eventformatter/test/FakeRoomLatestEventFormatter.kt @@ -14,11 +14,16 @@ import io.element.android.libraries.matrix.api.roomlist.LatestEventValue class FakeRoomLatestEventFormatter : RoomLatestEventFormatter { private var result: CharSequence? = null + var lastIsDmRoom: Boolean? = null + private set + override fun format(latestEvent: LatestEventValue.Local, isDmRoom: Boolean): CharSequence? { + lastIsDmRoom = isDmRoom return result } override fun format(latestEvent: LatestEventValue.Remote, isDmRoom: Boolean): CharSequence? { + lastIsDmRoom = isDmRoom return result } From 69ba9cf21e96b75de05e0bb4ace4d386771b0981 Mon Sep 17 00:00:00 2001 From: ElementBot Date: Tue, 25 Aug 2026 18:10:19 +0000 Subject: [PATCH 38/97] Update screenshots --- .../images/appnav.loggedin_LoggedInView_Day_2_en.png | 4 ++-- .../images/appnav.loggedin_LoggedInView_Day_3_en.png | 4 ++-- .../images/appnav.loggedin_LoggedInView_Day_4_en.png | 4 ++-- .../images/appnav.loggedin_LoggedInView_Day_5_en.png | 4 ++-- .../images/appnav.loggedin_LoggedInView_Day_6_en.png | 3 +++ .../images/appnav.loggedin_LoggedInView_Night_2_en.png | 4 ++-- .../images/appnav.loggedin_LoggedInView_Night_3_en.png | 4 ++-- .../images/appnav.loggedin_LoggedInView_Night_4_en.png | 4 ++-- .../images/appnav.loggedin_LoggedInView_Night_5_en.png | 4 ++-- .../images/appnav.loggedin_LoggedInView_Night_6_en.png | 3 +++ ...ppnav.loggedin_SyncStateViewServerUnreachable_Day_0_en.png | 3 +++ ...nav.loggedin_SyncStateViewServerUnreachable_Night_0_en.png | 3 +++ 12 files changed, 28 insertions(+), 16 deletions(-) create mode 100644 tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_6_en.png create mode 100644 tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_6_en.png create mode 100644 tests/uitests/src/test/snapshots/images/appnav.loggedin_SyncStateViewServerUnreachable_Day_0_en.png create mode 100644 tests/uitests/src/test/snapshots/images/appnav.loggedin_SyncStateViewServerUnreachable_Night_0_en.png diff --git a/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_2_en.png b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_2_en.png index 6082c07349..ae687af6c7 100644 --- a/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:062413bedff67d6264f7c498db69e38babdfad4cc5b5c0a581f9031dcd03ae10 -size 36968 +oid sha256:fdce2c0a9c41b04870e79cc5e0413bf09ddea7907650d798cc4206ece881933f +size 9782 diff --git a/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_3_en.png b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_3_en.png index ad2925d791..6082c07349 100644 --- a/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_3_en.png +++ b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8ed6c634f81fca7a0d8cf242f294d37fe44b4dd5f0832c1bb1e29df245f06546 -size 24161 +oid sha256:062413bedff67d6264f7c498db69e38babdfad4cc5b5c0a581f9031dcd03ae10 +size 36968 diff --git a/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_4_en.png b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_4_en.png index 5adfe35003..ad2925d791 100644 --- a/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_4_en.png +++ b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:965cd4692e88a413e5e0a83e16a190386e8f199716fdd7288f4e05b8c623a8b2 -size 33756 +oid sha256:8ed6c634f81fca7a0d8cf242f294d37fe44b4dd5f0832c1bb1e29df245f06546 +size 24161 diff --git a/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_5_en.png index bf9aed6830..5adfe35003 100644 --- a/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:771c01d4563687aff208b0f279c9fb98192b0cd2b2ba56d43627f6c785e92b90 -size 32956 +oid sha256:965cd4692e88a413e5e0a83e16a190386e8f199716fdd7288f4e05b8c623a8b2 +size 33756 diff --git a/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_6_en.png b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_6_en.png new file mode 100644 index 0000000000..bf9aed6830 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Day_6_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:771c01d4563687aff208b0f279c9fb98192b0cd2b2ba56d43627f6c785e92b90 +size 32956 diff --git a/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_2_en.png b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_2_en.png index 72eca81304..5439563841 100644 --- a/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8e612d46ec9d5234d26768bf68f7f58877f9344858184bd54c6d6be893e972fa -size 34955 +oid sha256:5b11f9ba2fda961d1571b46c1bcbd7a7ccde6efb4a320ead276779c391421223 +size 8543 diff --git a/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_3_en.png b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_3_en.png index 8e38bbe539..72eca81304 100644 --- a/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bb9ef99adff85610ec2808bc468a5f8161db436283e51bde77fc2d6f5b61e214 -size 22502 +oid sha256:8e612d46ec9d5234d26768bf68f7f58877f9344858184bd54c6d6be893e972fa +size 34955 diff --git a/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_4_en.png b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_4_en.png index 75fdd8172d..8e38bbe539 100644 --- a/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_4_en.png +++ b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8f2d01f11bcca2ba3465b6308f7368797c6fd9712bf90f4e9493b30dbece8277 -size 31907 +oid sha256:bb9ef99adff85610ec2808bc468a5f8161db436283e51bde77fc2d6f5b61e214 +size 22502 diff --git a/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_5_en.png b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_5_en.png index 28fd0cfc21..75fdd8172d 100644 --- a/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_5_en.png +++ b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:484173d52fcb0acff42f62d28f88cd544e205bde49370ccc8230c30b193e1959 -size 31173 +oid sha256:8f2d01f11bcca2ba3465b6308f7368797c6fd9712bf90f4e9493b30dbece8277 +size 31907 diff --git a/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_6_en.png b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_6_en.png new file mode 100644 index 0000000000..28fd0cfc21 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/appnav.loggedin_LoggedInView_Night_6_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:484173d52fcb0acff42f62d28f88cd544e205bde49370ccc8230c30b193e1959 +size 31173 diff --git a/tests/uitests/src/test/snapshots/images/appnav.loggedin_SyncStateViewServerUnreachable_Day_0_en.png b/tests/uitests/src/test/snapshots/images/appnav.loggedin_SyncStateViewServerUnreachable_Day_0_en.png new file mode 100644 index 0000000000..d1e672507d --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/appnav.loggedin_SyncStateViewServerUnreachable_Day_0_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:433fd969f604ec432cc0b324109c5aa3f60abb44c692c6965731314c66377924 +size 10200 diff --git a/tests/uitests/src/test/snapshots/images/appnav.loggedin_SyncStateViewServerUnreachable_Night_0_en.png b/tests/uitests/src/test/snapshots/images/appnav.loggedin_SyncStateViewServerUnreachable_Night_0_en.png new file mode 100644 index 0000000000..95c1b90315 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/appnav.loggedin_SyncStateViewServerUnreachable_Night_0_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab1c87fe0b7d5c7e5f1ccad62fba68c2a12607bad342046e58ae11abe981a383 +size 8834 From 362acd6cab8c6b8a1f28ff9c8dd4f6d14860adb4 Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Tue, 25 Aug 2026 21:41:17 +0300 Subject: [PATCH 39/97] Run the database migrations again when a database is upgraded Upgrading over an older install crashed before the login screen with `SQLiteException: no such column: SessionData.position`. The session, cache and push databases were opened at their new schema version but their tables were never migrated. `SqlCipherDriverFactory` overrides `AndroidSqliteDriver.Callback.onUpgrade` so the database key can be replaced, and never called through to the base implementation - which is the only thing that runs `schema.migrate`. Every SQLDelight migration in the app was skipped as a result. The override now calls `super.onUpgrade` after the re-key, so a database that crosses the re-key version is still re-encrypted before its tables are migrated. It moved out of an anonymous object into a named `MigrationCallback` so the behaviour can be tested. Part of #7509 --- libraries/encrypted-db/build.gradle.kts | 4 ++ .../encrypteddb/SqlCipherDriverFactory.kt | 30 +++++++--- .../encrypteddb/MigrationCallbackTest.kt | 55 +++++++++++++++++++ 3 files changed, 82 insertions(+), 7 deletions(-) create mode 100644 libraries/encrypted-db/src/test/kotlin/io/element/encrypteddb/MigrationCallbackTest.kt diff --git a/libraries/encrypted-db/build.gradle.kts b/libraries/encrypted-db/build.gradle.kts index a2150945a5..d48d4aefd1 100644 --- a/libraries/encrypted-db/build.gradle.kts +++ b/libraries/encrypted-db/build.gradle.kts @@ -5,6 +5,8 @@ * SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial. * Please see LICENSE files in the repository root for full details. */ +import extension.testCommonDependencies + plugins { id("io.element.android-library") } @@ -27,4 +29,6 @@ dependencies { implementation(libs.google.tink) implementation(projects.libraries.androidutils) + + testCommonDependencies(libs) } diff --git a/libraries/encrypted-db/src/main/kotlin/io/element/encrypteddb/SqlCipherDriverFactory.kt b/libraries/encrypted-db/src/main/kotlin/io/element/encrypteddb/SqlCipherDriverFactory.kt index 84ab2d2a18..0f2e954b1f 100644 --- a/libraries/encrypted-db/src/main/kotlin/io/element/encrypteddb/SqlCipherDriverFactory.kt +++ b/libraries/encrypted-db/src/main/kotlin/io/element/encrypteddb/SqlCipherDriverFactory.kt @@ -51,12 +51,28 @@ class SqlCipherDriverFactory( is ClientSecret.Passphrase -> secret.formattedAsString().hexToByteArray() } val factory = SupportOpenHelperFactory(key) - return AndroidSqliteDriver(schema = schema, context = context, name = name, factory = factory, callback = object : AndroidSqliteDriver.Callback( - schema - ) { - override fun onUpgrade(db: SupportSQLiteDatabase, oldVersion: Int, newVersion: Int) { - onUpgradeCallback?.invoke(db, oldVersion, newVersion) - } - }) + return AndroidSqliteDriver( + schema = schema, + context = context, + name = name, + factory = factory, + callback = MigrationCallback(schema, onUpgradeCallback), + ) + } +} + +/** + * Runs [onUpgradeCallback] and then the schema migrations themselves. + * + * @param schema The SQLite DB schema, whose migrations are applied by [AndroidSqliteDriver.Callback.onUpgrade]. + * @param onUpgradeCallback Called before the migrations run, so that the database key can be replaced first. + */ +internal class MigrationCallback( + schema: SqlSchema>, + private val onUpgradeCallback: ((driver: SupportSQLiteDatabase, oldVersion: Int, newVersion: Int) -> Unit)?, +) : AndroidSqliteDriver.Callback(schema) { + override fun onUpgrade(db: SupportSQLiteDatabase, oldVersion: Int, newVersion: Int) { + onUpgradeCallback?.invoke(db, oldVersion, newVersion) + super.onUpgrade(db, oldVersion, newVersion) } } diff --git a/libraries/encrypted-db/src/test/kotlin/io/element/encrypteddb/MigrationCallbackTest.kt b/libraries/encrypted-db/src/test/kotlin/io/element/encrypteddb/MigrationCallbackTest.kt new file mode 100644 index 0000000000..5e16184951 --- /dev/null +++ b/libraries/encrypted-db/src/test/kotlin/io/element/encrypteddb/MigrationCallbackTest.kt @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2026 Element Creations 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.encrypteddb + +import app.cash.sqldelight.db.AfterVersion +import app.cash.sqldelight.db.QueryResult +import app.cash.sqldelight.db.SqlDriver +import app.cash.sqldelight.db.SqlSchema +import com.google.common.truth.Truth.assertThat +import io.mockk.mockk +import org.junit.Test + +class MigrationCallbackTest { + @Test + fun `onUpgrade migrates the schema`() { + val schema = RecordingSchema() + MigrationCallback(schema, onUpgradeCallback = null).onUpgrade(mockk(relaxed = true), 9, 11) + assertThat(schema.migrations).containsExactly(9L to 11L) + } + + @Test + fun `onUpgrade replaces the database key before migrating the schema`() { + val order = mutableListOf() + val schema = RecordingSchema(onMigrate = { order.add("migrate") }) + MigrationCallback(schema, onUpgradeCallback = { _, _, _ -> order.add("rekey") }) + .onUpgrade(mockk(relaxed = true), 9, 11) + assertThat(order).containsExactly("rekey", "migrate").inOrder() + } +} + +private class RecordingSchema( + private val onMigrate: () -> Unit = {}, +) : SqlSchema> { + val migrations = mutableListOf>() + + override val version = 11L + + override fun create(driver: SqlDriver) = QueryResult.Unit + + override fun migrate( + driver: SqlDriver, + oldVersion: Long, + newVersion: Long, + vararg callbacks: AfterVersion, + ): QueryResult.Value { + migrations.add(oldVersion to newVersion) + onMigrate() + return QueryResult.Unit + } +} From 594a5612ad70aa730e7c458033b38da7ae82098a Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Tue, 25 Aug 2026 21:45:59 +0300 Subject: [PATCH 40/97] Register the second sync state preview with konsist --- .../io/element/android/tests/konsist/KonsistPreviewTest.kt | 1 + 1 file changed, 1 insertion(+) 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 e066a6b7ec..ed901a99b4 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 @@ -133,6 +133,7 @@ class KonsistPreviewTest { "SecureBackupSetupViewChangePreview", "SelectedUserCannotRemovePreview", "SpaceMembersViewNoHeroesPreview", + "SyncStateViewServerUnreachablePreview", "TextComposerAddCaptionPreview", "TextComposerCaptionPreview", "TextComposerEditCaptionPreview", From 2278116579681b7a129e756d813023783ee311fa Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Tue, 25 Aug 2026 21:52:20 +0300 Subject: [PATCH 41/97] Keep the thread of a message that has been deleted Deleting a message that headed a thread took the thread with it: the "N replies" summary under the message disappeared and there was no way back to the replies, which are still there. Every branch of the timeline content mapper passes `MsgLikeContent`'s thread information on except the redacted one, which returned a bare `RedactedContent` and dropped it. The thread summary lives on `MsgLikeContent` next to `kind`, so it survives the redaction; only the app was throwing it away. `RedactedContent` now carries the thread info like the other contents do, and `EventTimelineItem.threadInfo()` reads it. A deleted message that still heads a thread is also left out of the "N removed messages" group, which would otherwise hide the summary again as soon as three deletions ended up next to each other. Part of #7397 --- .../impl/timeline/groups/Groupability.kt | 2 +- .../timeline/groups/TimelineItemGrouper.kt | 6 ++- .../impl/timeline/TimelinePresenterTest.kt | 2 +- .../factories/TimelineItemsFactoryTest.kt | 42 +++++++++++++++++++ .../groups/TimelineItemGrouperTest.kt | 19 +++++++++ .../RedactedVoiceMessageManagerTest.kt | 2 +- .../DefaultPinnedMessagesBannerFormatter.kt | 2 +- .../impl/DefaultRoomLatestEventFormatter.kt | 2 +- .../impl/DefaultTimelineEventFormatter.kt | 2 +- ...efaultPinnedMessagesBannerFormatterTest.kt | 2 +- .../DefaultRoomLatestEventFormatterTest.kt | 2 +- .../api/timeline/item/event/EventContent.kt | 4 +- .../timeline/item/event/EventTimelineItem.kt | 1 + .../item/event/TimelineEventContentMapper.kt | 2 +- .../reply/InReplyToDetailsPreviewParam.kt | 2 +- .../messages/reply/InReplyToMetadataKtTest.kt | 2 +- .../impl/datasource/EventItemFactory.kt | 2 +- .../impl/datasource/EventItemFactoryTest.kt | 2 +- 18 files changed, 82 insertions(+), 16 deletions(-) diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/groups/Groupability.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/groups/Groupability.kt index 431942378a..3b16f79f79 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/groups/Groupability.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/groups/Groupability.kt @@ -91,7 +91,7 @@ internal fun MatrixTimelineItem.Event.canBeDisplayedInBubbleBlock(): Boolean { // Can be grouped is FailedToParseMessageLikeContent, is MessageContent, - RedactedContent, + is RedactedContent, is StickerContent, is PollContent, is UnableToDecryptContent, diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/groups/TimelineItemGrouper.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/groups/TimelineItemGrouper.kt index 2e01e53828..b34c66a08d 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/groups/TimelineItemGrouper.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/groups/TimelineItemGrouper.kt @@ -12,6 +12,7 @@ import androidx.annotation.VisibleForTesting import dev.zacsweers.metro.Inject import dev.zacsweers.metro.SingleIn import io.element.android.features.messages.impl.timeline.model.TimelineItem +import io.element.android.features.messages.impl.timeline.model.TimelineItemThreadInfo import io.element.android.features.messages.impl.timeline.model.event.TimelineItemRedactedContent import io.element.android.libraries.di.RoomScope import io.element.android.libraries.matrix.api.core.UniqueId @@ -99,7 +100,8 @@ internal const val MIN_REDACTED_RUN_SIZE = 3 * Fold runs of [MIN_REDACTED_RUN_SIZE] or more consecutive deleted (redacted) messages into a single * [TimelineItem.GroupedEvents], so a long stretch of "Message removed" tiles shows as one expandable * "N removed messages" line, like element-web. Shorter runs, and anything that is not a redacted event - * (day dividers included), are left untouched. + * (day dividers included), are left untouched. A deleted message that still heads a thread is left + * untouched too, so that its thread summary stays reachable. * * This runs as the final step of [TimelineItemGrouper.group], after the state and membership events * have been grouped. It is deliberately kept out of the normal grouping: a run needs a higher minimum @@ -134,7 +136,7 @@ internal fun List.collapseRedactedRuns(groupIds: MutableMap MatrixTimelineItem.Event( uniqueId = UniqueId("redacted_$index"), - event = anEventTimelineItem(eventId = EventId("\$R$index"), content = RedactedContent), + event = anEventTimelineItem(eventId = EventId("\$R$index"), content = RedactedContent(threadInfo = null)), ) } ), diff --git a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/TimelineItemsFactoryTest.kt b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/TimelineItemsFactoryTest.kt index f93c8f196e..eb3b0529ca 100644 --- a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/TimelineItemsFactoryTest.kt +++ b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/TimelineItemsFactoryTest.kt @@ -12,10 +12,15 @@ import com.google.common.truth.Truth.assertThat import io.element.android.features.messages.impl.fixtures.aTimelineItemsFactory import io.element.android.features.messages.impl.timeline.model.TimelineItem import io.element.android.features.messages.impl.timeline.model.TimelineItemGroupPosition +import io.element.android.features.messages.impl.timeline.model.TimelineItemThreadInfo import io.element.android.features.messages.impl.timeline.model.event.TimelineItemTextContent +import io.element.android.libraries.architecture.AsyncData import io.element.android.libraries.matrix.api.core.UniqueId import io.element.android.libraries.matrix.api.timeline.MatrixTimelineItem +import io.element.android.libraries.matrix.api.timeline.item.EventThreadInfo +import io.element.android.libraries.matrix.api.timeline.item.ThreadSummary import io.element.android.libraries.matrix.api.timeline.item.event.OtherMessageType +import io.element.android.libraries.matrix.api.timeline.item.event.RedactedContent import io.element.android.libraries.matrix.test.A_USER_ID import io.element.android.libraries.matrix.test.timeline.aMessageContent import io.element.android.libraries.matrix.test.timeline.anEventTimelineItem @@ -128,6 +133,43 @@ class TimelineItemsFactoryTest { } } + @Test + fun `a deleted message keeps the summary of the thread it heads`() = runTest { + val factory = aTimelineItemsFactory( + config = TimelineItemsFactoryConfig( + computeReadReceipts = false, + computeReactions = false, + ) + ) + val items = listOf( + MatrixTimelineItem.Event( + uniqueId = UniqueId("event-0"), + event = anEventTimelineItem( + sender = A_USER_ID, + content = RedactedContent( + threadInfo = EventThreadInfo.ThreadRoot( + summary = ThreadSummary(latestEvent = AsyncData.Uninitialized, numberOfReplies = 3), + ), + ), + ), + ), + ) + factory.timelineItems.test { + factory.replaceWith( + timelineItems = items, + roomMembers = emptyList(), + renderReadReceipts = false, + ) + val threadInfo = awaitItem() + .filterIsInstance() + .single() + .threadInfo + assertThat(threadInfo).isInstanceOf(TimelineItemThreadInfo.ThreadRoot::class.java) + assertThat((threadInfo as TimelineItemThreadInfo.ThreadRoot).summary.numberOfReplies).isEqualTo(3) + cancelAndIgnoreRemainingEvents() + } + } + private suspend fun TestScope.groupPositionsOf(timestamps: List): List { val factory = aTimelineItemsFactory( config = TimelineItemsFactoryConfig( diff --git a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/groups/TimelineItemGrouperTest.kt b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/groups/TimelineItemGrouperTest.kt index 005eb5730e..f6ef4f0fc2 100644 --- a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/groups/TimelineItemGrouperTest.kt +++ b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/groups/TimelineItemGrouperTest.kt @@ -15,11 +15,14 @@ import io.element.android.features.messages.impl.timeline.aTimelineItemReactions import io.element.android.features.messages.impl.timeline.model.ReadReceiptData import io.element.android.features.messages.impl.timeline.model.TimelineItem import io.element.android.features.messages.impl.timeline.model.TimelineItemReadReceipts +import io.element.android.features.messages.impl.timeline.model.TimelineItemThreadInfo import io.element.android.features.messages.impl.timeline.model.event.TimelineItemRedactedContent import io.element.android.features.messages.impl.timeline.model.event.TimelineItemStateEventContent import io.element.android.features.messages.impl.timeline.model.virtual.aTimelineItemDaySeparatorModel +import io.element.android.libraries.architecture.AsyncData import io.element.android.libraries.designsystem.components.avatar.anAvatarData import io.element.android.libraries.matrix.api.core.UniqueId +import io.element.android.libraries.matrix.api.timeline.item.ThreadSummary import io.element.android.libraries.matrix.api.timeline.item.event.LocalEventSendState import io.element.android.libraries.matrix.test.AN_EVENT_ID import io.element.android.libraries.matrix.test.A_USER_ID @@ -190,6 +193,22 @@ class TimelineItemGrouperTest { ) } + @Test + fun `a deleted message that still heads a thread is left out of the removed messages group`() { + val threadRoot = aGroupableItem.copy( + id = UniqueId("r1"), + content = TimelineItemRedactedContent, + threadInfo = TimelineItemThreadInfo.ThreadRoot( + summary = ThreadSummary(latestEvent = AsyncData.Uninitialized, numberOfReplies = 2), + latestEventText = null, + ), + ) + val r0 = aGroupableItem.copy(id = UniqueId("r0"), content = TimelineItemRedactedContent) + val r2 = aGroupableItem.copy(id = UniqueId("r2"), content = TimelineItemRedactedContent) + val result = sut.group(listOf(r0, threadRoot, r2)) + assertThat(result).isEqualTo(listOf(r0, threadRoot, r2)) + } + @Test fun `a run of fewer than three redacted events is left untouched`() { val r0 = aGroupableItem.copy(id = UniqueId("r0"), content = TimelineItemRedactedContent) diff --git a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/voicemessages/timeline/RedactedVoiceMessageManagerTest.kt b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/voicemessages/timeline/RedactedVoiceMessageManagerTest.kt index a1ffd1f02b..73cfce399e 100644 --- a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/voicemessages/timeline/RedactedVoiceMessageManagerTest.kt +++ b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/voicemessages/timeline/RedactedVoiceMessageManagerTest.kt @@ -88,7 +88,7 @@ fun aRedactedMatrixTimeline(eventId: EventId) = listOf( sender = A_USER_ID, senderProfile = ProfileDetails.Unavailable, timestamp = 9442, - content = RedactedContent, + content = RedactedContent(threadInfo = null), origin = null, timelineItemDebugInfoProvider = { TimelineItemDebugInfo( diff --git a/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultPinnedMessagesBannerFormatter.kt b/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultPinnedMessagesBannerFormatter.kt index 1311c524e4..8025591070 100644 --- a/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultPinnedMessagesBannerFormatter.kt +++ b/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultPinnedMessagesBannerFormatter.kt @@ -56,7 +56,7 @@ class DefaultPinnedMessagesBannerFormatter( is PollContent -> { content.question.prefixWith(CommonStrings.a11y_poll) } - RedactedContent -> { + is RedactedContent -> { sp.getString(CommonStrings.common_message_removed) } else -> { diff --git a/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultRoomLatestEventFormatter.kt b/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultRoomLatestEventFormatter.kt index e7bbdb1e7f..bd519b60c2 100644 --- a/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultRoomLatestEventFormatter.kt +++ b/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultRoomLatestEventFormatter.kt @@ -89,7 +89,7 @@ class DefaultRoomLatestEventFormatter( ): CharSequence? { return when (content) { is MessageContent -> content.process(senderDisambiguatedDisplayName, isDmRoom, isOutgoing) - RedactedContent -> { + is RedactedContent -> { val message = sp.getString(CommonStrings.common_message_removed) message.prefixIfNeeded(senderDisambiguatedDisplayName, isDmRoom, isOutgoing) } diff --git a/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultTimelineEventFormatter.kt b/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultTimelineEventFormatter.kt index ff5cce7a59..ffb98fe2ec 100644 --- a/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultTimelineEventFormatter.kt +++ b/libraries/eventformatter/impl/src/main/kotlin/io/element/android/libraries/eventformatter/impl/DefaultTimelineEventFormatter.kt @@ -62,7 +62,7 @@ class DefaultTimelineEventFormatter( is CallNotifyContent -> { sp.getString(CommonStrings.common_call_started) } - RedactedContent, + is RedactedContent, is LegacyCallInviteContent, is StickerContent, is PollContent, diff --git a/libraries/eventformatter/impl/src/test/kotlin/io/element/android/libraries/eventformatter/impl/DefaultPinnedMessagesBannerFormatterTest.kt b/libraries/eventformatter/impl/src/test/kotlin/io/element/android/libraries/eventformatter/impl/DefaultPinnedMessagesBannerFormatterTest.kt index 198da2bf7d..38517dab33 100644 --- a/libraries/eventformatter/impl/src/test/kotlin/io/element/android/libraries/eventformatter/impl/DefaultPinnedMessagesBannerFormatterTest.kt +++ b/libraries/eventformatter/impl/src/test/kotlin/io/element/android/libraries/eventformatter/impl/DefaultPinnedMessagesBannerFormatterTest.kt @@ -81,7 +81,7 @@ class DefaultPinnedMessagesBannerFormatterTest : RobolectricTest() { fun `Redacted content`() { val expected = "Message removed" val senderName = "Someone" - val message = createRoomEvent(false, senderName, RedactedContent) + val message = createRoomEvent(false, senderName, RedactedContent(threadInfo = null)) val result = formatter.format(message) assertThat(result).isEqualTo(expected) } diff --git a/libraries/eventformatter/impl/src/test/kotlin/io/element/android/libraries/eventformatter/impl/DefaultRoomLatestEventFormatterTest.kt b/libraries/eventformatter/impl/src/test/kotlin/io/element/android/libraries/eventformatter/impl/DefaultRoomLatestEventFormatterTest.kt index ecd0509269..c293b67975 100644 --- a/libraries/eventformatter/impl/src/test/kotlin/io/element/android/libraries/eventformatter/impl/DefaultRoomLatestEventFormatterTest.kt +++ b/libraries/eventformatter/impl/src/test/kotlin/io/element/android/libraries/eventformatter/impl/DefaultRoomLatestEventFormatterTest.kt @@ -85,7 +85,7 @@ class DefaultRoomLatestEventFormatterTest : RobolectricTest() { val expected = "Message removed" val senderName = "Someone" sequenceOf(false, true).forEach { isDm -> - val message = createLatestEvent(false, senderName, RedactedContent) + val message = createLatestEvent(false, senderName, RedactedContent(threadInfo = null)) val result = formatter.format(message, isDm) if (isDm) { assertThat(result).isEqualTo(expected) diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/item/event/EventContent.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/item/event/EventContent.kt index c2d388ecb0..132b3b3504 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/item/event/EventContent.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/item/event/EventContent.kt @@ -32,7 +32,9 @@ data class MessageContent( val type: MessageType, ) : EventContent -data object RedactedContent : EventContent +data class RedactedContent( + val threadInfo: EventThreadInfo?, +) : EventContent data class StickerContent( val filename: String, diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/item/event/EventTimelineItem.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/item/event/EventTimelineItem.kt index 91703f7fa4..8a3221677d 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/item/event/EventTimelineItem.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/timeline/item/event/EventTimelineItem.kt @@ -51,6 +51,7 @@ data class EventTimelineItem( is PollContent -> content.threadInfo is StickerContent -> content.threadInfo is UnableToDecryptContent -> content.threadInfo + is RedactedContent -> content.threadInfo else -> null } diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/timeline/item/event/TimelineEventContentMapper.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/timeline/item/event/TimelineEventContentMapper.kt index 98efa505d0..c8434e207a 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/timeline/item/event/TimelineEventContentMapper.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/timeline/item/event/TimelineEventContentMapper.kt @@ -81,7 +81,7 @@ class TimelineEventContentMapper( ) } is MsgLikeKind.Redacted -> { - RedactedContent + RedactedContent(threadInfo = extractThreadInfo(it.content)) } is MsgLikeKind.Poll -> { PollContent( diff --git a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/messages/reply/InReplyToDetailsPreviewParam.kt b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/messages/reply/InReplyToDetailsPreviewParam.kt index 1b48e0eb9b..ce9fd884eb 100644 --- a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/messages/reply/InReplyToDetailsPreviewParam.kt +++ b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/messages/reply/InReplyToDetailsPreviewParam.kt @@ -118,7 +118,7 @@ class InReplyToDetailsDisambiguatedPreviewParam : InReplyToDetailsPreviewParam() class InReplyToDetailsInformativePreviewParam : InReplyToDetailsPreviewParam() { override val values: Sequence get() = sequenceOf( - RedactedContent, + RedactedContent(threadInfo = null), UnableToDecryptContent(data = UnableToDecryptContent.Data.Unknown, threadInfo = null), ).map { aInReplyToDetails( diff --git a/libraries/matrixui/src/test/kotlin/io/element/android/libraries/matrix/ui/messages/reply/InReplyToMetadataKtTest.kt b/libraries/matrixui/src/test/kotlin/io/element/android/libraries/matrix/ui/messages/reply/InReplyToMetadataKtTest.kt index 3fcb2f8f18..64e647ab19 100644 --- a/libraries/matrixui/src/test/kotlin/io/element/android/libraries/matrix/ui/messages/reply/InReplyToMetadataKtTest.kt +++ b/libraries/matrixui/src/test/kotlin/io/element/android/libraries/matrix/ui/messages/reply/InReplyToMetadataKtTest.kt @@ -656,7 +656,7 @@ class InReplyToMetadataKtTest : RobolectricTest() { fun `redacted content`() = runTest { moleculeFlow(RecompositionMode.Immediate) { anInReplyToDetailsReady( - eventContent = RedactedContent + eventContent = RedactedContent(threadInfo = null) ).metadata(hideImage = false) }.test { awaitItem().let { diff --git a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/datasource/EventItemFactory.kt b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/datasource/EventItemFactory.kt index 40a9a0351d..f140fc6628 100644 --- a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/datasource/EventItemFactory.kt +++ b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/datasource/EventItemFactory.kt @@ -79,7 +79,7 @@ class EventItemFactory( LegacyCallInviteContent, is PollContent, is ProfileChangeContent, - RedactedContent, + is RedactedContent, is RoomMembershipContent, is StateContent, is StickerContent, diff --git a/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/datasource/EventItemFactoryTest.kt b/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/datasource/EventItemFactoryTest.kt index 4ed89e8923..56dd5fc937 100644 --- a/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/datasource/EventItemFactoryTest.kt +++ b/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/datasource/EventItemFactoryTest.kt @@ -80,7 +80,7 @@ class EventItemFactoryTest { LegacyCallInviteContent, aPollContent(), aProfileChangeMessageContent(), - RedactedContent, + RedactedContent(threadInfo = null), aRoomMembershipContent( userId = A_USER_ID, ), From 4290a9c3b3b2b6251229c8f89bb997a055bf849e Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Tue, 25 Aug 2026 22:03:14 +0300 Subject: [PATCH 42/97] Keep the formatting of a caption that is being edited Editing the caption of a media message dropped all of its formatting: bold, links and the rest came back as plain text, and saving wrote that plain text over the formatted caption. The composer was being opened on the plain caption. Editing a message body already starts from its HTML when rich text editing is on, and the caption path was the only one that did not - it read `captionOrNull()` and never had the caption's HTML to read, because the timeline content only kept the already-parsed `formattedCaption`. Media contents now carry the caption's HTML alongside the parsed one, the same way text contents carry `htmlBody`, and editing a caption starts from it when rich text editing is on. The save path already sent the composer's HTML, so nothing changes there. Part of #6730 --- .../messages/impl/MessagesPresenter.kt | 10 +++++-- .../TimelineItemContentMessageFactory.kt | 8 ++++++ .../event/TimelineItemAttachmentsContent.kt | 1 + .../model/event/TimelineItemAudioContent.kt | 1 + .../model/event/TimelineItemEventContent.kt | 10 +++++++ .../model/event/TimelineItemFileContent.kt | 1 + .../model/event/TimelineItemGalleryContent.kt | 1 + .../model/event/TimelineItemImageContent.kt | 1 + .../TimelineItemImageContentPreviewParam.kt | 2 ++ .../model/event/TimelineItemStickerContent.kt | 1 + .../model/event/TimelineItemVideoContent.kt | 1 + .../model/event/TimelineItemVoiceContent.kt | 1 + .../messages/impl/MessagesPresenterTest.kt | 27 +++++++++++++++++++ .../TimelineItemContentMessageFactoryTest.kt | 2 ++ 14 files changed, 65 insertions(+), 2 deletions(-) diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesPresenter.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesPresenter.kt index 3ba8099ecb..6a019d865b 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesPresenter.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesPresenter.kt @@ -51,6 +51,7 @@ import io.element.android.features.messages.impl.timeline.model.event.TimelineIt import io.element.android.features.messages.impl.timeline.model.event.TimelineItemStateContent import io.element.android.features.messages.impl.timeline.model.event.TimelineItemTextBasedContent import io.element.android.features.messages.impl.timeline.model.event.captionOrNull +import io.element.android.features.messages.impl.timeline.model.event.htmlCaptionOrNull import io.element.android.features.messages.impl.timeline.protection.TimelineProtectionState import io.element.android.features.messages.impl.voicemessages.composer.DefaultVoiceMessageComposerPresenter import io.element.android.features.roomcall.api.RoomCallState @@ -377,7 +378,7 @@ class MessagesPresenter( TimelineItemAction.Edit, TimelineItemAction.EditPoll -> handleActionEdit(targetEvent, composerState, enableTextFormatting) TimelineItemAction.AddCaption -> handleActionAddCaption(targetEvent, composerState) - TimelineItemAction.EditCaption -> handleActionEditCaption(targetEvent, composerState) + TimelineItemAction.EditCaption -> handleActionEditCaption(targetEvent, composerState, enableTextFormatting) TimelineItemAction.RemoveCaption -> handleRemoveCaption(targetEvent) TimelineItemAction.Reply -> handleActionReply(targetEvent, composerState, timelineProtectionState) TimelineItemAction.ReplyInThread -> { @@ -546,10 +547,15 @@ class MessagesPresenter( private suspend fun handleActionEditCaption( targetEvent: TimelineItem.Event, composerState: MessageComposerState, + enableTextFormatting: Boolean, ) { val composerMode = MessageComposerMode.EditCaption( eventOrTransactionId = targetEvent.eventOrTransactionId, - content = targetEvent.content.captionOrNull().orEmpty(), + content = if (enableTextFormatting) { + targetEvent.content.htmlCaptionOrNull() ?: targetEvent.content.captionOrNull() + } else { + targetEvent.content.captionOrNull() + }.orEmpty(), ) composerState.eventSink( MessageComposerEvent.SetMode(composerMode) diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentMessageFactory.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentMessageFactory.kt index 040d0450ff..75966db1a3 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentMessageFactory.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentMessageFactory.kt @@ -108,6 +108,7 @@ class TimelineItemContentMessageFactory( fileSize = messageType.info?.size ?: 0, caption = messageType.caption?.trimEnd(), formattedCaption = formattedCaption, + htmlCaption = messageType.formattedCaption?.body, isEdited = content.isEdited, mediaSource = messageType.source, thumbnailSource = messageType.info?.thumbnailSource, @@ -132,6 +133,7 @@ class TimelineItemContentMessageFactory( fileSize = messageType.info?.size ?: 0, caption = messageType.caption?.trimEnd(), formattedCaption = formattedCaption, + htmlCaption = messageType.formattedCaption?.body, isEdited = content.isEdited, mediaSource = messageType.source, thumbnailSource = messageType.info?.thumbnailSource, @@ -174,6 +176,7 @@ class TimelineItemContentMessageFactory( fileSize = messageType.info?.size ?: 0, caption = messageType.caption?.trimEnd(), formattedCaption = formattedCaption, + htmlCaption = messageType.formattedCaption?.body, isEdited = content.isEdited, thumbnailSource = messageType.info?.thumbnailSource, mediaSource = messageType.source, @@ -198,6 +201,7 @@ class TimelineItemContentMessageFactory( fileSize = messageType.info?.size ?: 0, caption = messageType.caption?.trimEnd(), formattedCaption = formattedCaption, + htmlCaption = messageType.formattedCaption?.body, isEdited = content.isEdited, mediaSource = messageType.source, duration = messageType.info?.duration ?: Duration.ZERO, @@ -216,6 +220,7 @@ class TimelineItemContentMessageFactory( fileSize = messageType.info?.size ?: 0, caption = messageType.caption?.trimEnd(), formattedCaption = formattedCaption, + htmlCaption = messageType.formattedCaption?.body, isEdited = content.isEdited, mediaSource = messageType.source, duration = messageType.info?.duration ?: Duration.ZERO, @@ -235,6 +240,7 @@ class TimelineItemContentMessageFactory( fileSize = messageType.info?.size ?: 0, caption = messageType.caption?.trimEnd(), formattedCaption = formattedCaption, + htmlCaption = messageType.formattedCaption?.body, isEdited = content.isEdited, thumbnailSource = messageType.info?.thumbnailSource, mediaSource = messageType.source, @@ -345,6 +351,7 @@ class TimelineItemContentMessageFactory( body = messageType.body, caption = messageType.body.trimEnd().takeIf { it.isNotEmpty() }, formattedCaption = formattedCaption, + htmlCaption = messageType.formatted?.body, isEdited = content.isEdited, items = galleryItems.toImmutableList(), ) @@ -402,6 +409,7 @@ class TimelineItemContentMessageFactory( body = messageType.body, caption = messageType.body.trimEnd().takeIf { it.isNotEmpty() }, formattedCaption = formattedCaption, + htmlCaption = messageType.formatted?.body, isEdited = content.isEdited, attachments = attachments.toImmutableList(), ) diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemAttachmentsContent.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemAttachmentsContent.kt index 66d28598a1..dd3578ea61 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemAttachmentsContent.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemAttachmentsContent.kt @@ -14,6 +14,7 @@ data class TimelineItemAttachmentsContent( val body: String, val caption: String?, val formattedCaption: CharSequence?, + val htmlCaption: String? = null, override val isEdited: Boolean, val attachments: ImmutableList, ) : TimelineItemEventContent, TimelineItemEventMutableContent { diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemAudioContent.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemAudioContent.kt index f28de4f673..8c191ef140 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemAudioContent.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemAudioContent.kt @@ -17,6 +17,7 @@ data class TimelineItemAudioContent( override val fileSize: Long?, override val caption: String?, override val formattedCaption: CharSequence?, + override val htmlCaption: String? = null, override val isEdited: Boolean, val duration: Duration, override val mediaSource: MediaSource, diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEventContent.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEventContent.kt index 01146a070b..efa73b91fc 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEventContent.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEventContent.kt @@ -33,6 +33,9 @@ sealed interface TimelineItemEventContentWithAttachment : val fileSize: Long? val caption: String? val formattedCaption: CharSequence? + + /** The caption as it was written, in HTML, so that editing it can start from the formatted text. */ + val htmlCaption: String? val mediaSource: MediaSource val mimeType: String val formattedFileSize: String @@ -127,6 +130,13 @@ fun TimelineItemEventContent.formattedCaptionOrNull(): CharSequence? = when (thi else -> null } +fun TimelineItemEventContent.htmlCaptionOrNull(): String? = when (this) { + is TimelineItemEventContentWithAttachment -> htmlCaption + is TimelineItemGalleryContent -> htmlCaption + is TimelineItemAttachmentsContent -> htmlCaption + else -> null +} + fun TimelineItemEventContentWithAttachment.duration(): Duration? { return when (this) { is TimelineItemAudioContent -> duration diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemFileContent.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemFileContent.kt index 680797e36b..36beeeb91d 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemFileContent.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemFileContent.kt @@ -16,6 +16,7 @@ data class TimelineItemFileContent( override val fileSize: Long?, override val caption: String?, override val formattedCaption: CharSequence?, + override val htmlCaption: String? = null, override val isEdited: Boolean, override val mediaSource: MediaSource, val thumbnailSource: MediaSource?, diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemGalleryContent.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemGalleryContent.kt index f376a2a00a..840f19488d 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemGalleryContent.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemGalleryContent.kt @@ -16,6 +16,7 @@ data class TimelineItemGalleryContent( val body: String, val caption: String?, val formattedCaption: CharSequence?, + val htmlCaption: String? = null, override val isEdited: Boolean, val items: ImmutableList, ) : TimelineItemEventContent, TimelineItemEventMutableContent { diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemImageContent.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemImageContent.kt index 4828f22ba8..5e78adc945 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemImageContent.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemImageContent.kt @@ -19,6 +19,7 @@ data class TimelineItemImageContent( override val fileSize: Long?, override val caption: String?, override val formattedCaption: CharSequence?, + override val htmlCaption: String? = null, override val isEdited: Boolean, override val mediaSource: MediaSource, val thumbnailSource: MediaSource?, diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemImageContentPreviewParam.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemImageContentPreviewParam.kt index cd93c7c006..316b2ab79b 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemImageContentPreviewParam.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemImageContentPreviewParam.kt @@ -28,6 +28,7 @@ fun aTimelineItemImageContent( blurhash: String? = A_BLUR_HASH, filename: String = "A picture.jpg", caption: String? = null, + htmlCaption: String? = null, width: Int? = null, height: Int? = 300, ) = TimelineItemImageContent( @@ -35,6 +36,7 @@ fun aTimelineItemImageContent( fileSize = 4 * 1024 * 1024L, caption = caption, formattedCaption = null, + htmlCaption = htmlCaption, isEdited = false, mediaSource = MediaSource(""), thumbnailSource = null, diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemStickerContent.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemStickerContent.kt index 9e2f08d5c7..65585bc028 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemStickerContent.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemStickerContent.kt @@ -15,6 +15,7 @@ data class TimelineItemStickerContent( override val fileSize: Long?, override val caption: String?, override val formattedCaption: CharSequence?, + override val htmlCaption: String? = null, override val isEdited: Boolean, override val mediaSource: MediaSource, val thumbnailSource: MediaSource?, diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemVideoContent.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemVideoContent.kt index 80635c6e18..a1c8e279cd 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemVideoContent.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemVideoContent.kt @@ -16,6 +16,7 @@ data class TimelineItemVideoContent( override val fileSize: Long?, override val caption: String?, override val formattedCaption: CharSequence?, + override val htmlCaption: String? = null, override val isEdited: Boolean, val duration: Duration, override val mediaSource: MediaSource, diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemVoiceContent.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemVoiceContent.kt index 29a432e6bd..806a703ea5 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemVoiceContent.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemVoiceContent.kt @@ -19,6 +19,7 @@ data class TimelineItemVoiceContent( override val fileSize: Long?, override val caption: String?, override val formattedCaption: CharSequence?, + override val htmlCaption: String? = null, override val isEdited: Boolean, val duration: Duration, override val mediaSource: MediaSource, diff --git a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/MessagesPresenterTest.kt b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/MessagesPresenterTest.kt index 227088f78c..4c0abc0a34 100644 --- a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/MessagesPresenterTest.kt +++ b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/MessagesPresenterTest.kt @@ -989,6 +989,33 @@ class MessagesPresenterTest { } } + @Test + fun `present - handle action edit caption starts from the formatted caption`() = runTest { + val messageEvent = aMessageEvent( + content = aTimelineItemImageContent( + caption = "Hello world", + htmlCaption = "Hello world", + ) + ) + val composerRecorder = EventsRecorder() + val presenter = createMessagesPresenter( + messageComposerPresenter = { aMessageComposerState(eventSink = composerRecorder, showTextFormatting = true) }, + ) + presenter.testWithLifecycleOwner { + val initialState = awaitItem() + initialState.eventSink(MessagesEvent.HandleAction(TimelineItemAction.EditCaption, messageEvent)) + awaitItem() + composerRecorder.assertSingle( + MessageComposerEvent.SetMode( + composerMode = MessageComposerMode.EditCaption( + eventOrTransactionId = AN_EVENT_ID.toEventOrTransactionId(), + content = "Hello world", + ) + ) + ) + } + } + @Test fun `present - handle action add caption`() = runTest { val composerRecorder = EventsRecorder() diff --git a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentMessageFactoryTest.kt b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentMessageFactoryTest.kt index fc01184764..1c9de095d3 100644 --- a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentMessageFactoryTest.kt +++ b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/factories/event/TimelineItemContentMessageFactoryTest.kt @@ -297,6 +297,7 @@ class TimelineItemContentMessageFactoryTest : RobolectricTest() { fileSize = 555L, caption = "body.mp4 caption", formattedCaption = SpannedString("formatted"), + htmlCaption = "formatted", isEdited = true, duration = 1.minutes, mediaSource = MediaSource(url = "url", json = null), @@ -539,6 +540,7 @@ class TimelineItemContentMessageFactoryTest : RobolectricTest() { fileSize = 888L, caption = "body.jpg caption", formattedCaption = SpannedString("formatted"), + htmlCaption = "formatted", isEdited = true, mediaSource = MediaSource(url = "url", json = null), thumbnailSource = MediaSource("url_thumbnail"), From 6d28d91541f9338fc01265659a8feaa4e723d9cb Mon Sep 17 00:00:00 2001 From: hayaksi1 <193020925+hayaksi1@users.noreply.github.com> Date: Wed, 26 Aug 2026 03:18:28 +0300 Subject: [PATCH 43/97] Offer conversations in the system share sheet Sharing from another app listed Element X once, with no way to pick a conversation: the Direct Share row never showed any. The app already publishes a long-lived, conversation-categorised shortcut per room, which is most of what the sharing shortcuts API needs. The part that was missing is the declaration that ties those shortcuts to the share intent: the launcher activity had no `android.app.shortcuts` meta-data, so there was no `` for the system to match them against. It now ships one, matching the activity that already receives ACTION_SEND, and the shortcuts carry the category it names. The system offers these from Android 10 onwards, where sharing shortcuts are handled natively. Reaching further back would additionally need the androidx.sharetarget library, which is not added here. Part of #3835 --- app/src/main/AndroidManifest.xml | 6 +++++ app/src/main/res/xml/shortcuts.xml | 18 +++++++++++++++ .../DefaultNotificationConversationService.kt | 9 +++++++- ...aultNotificationConversationServiceTest.kt | 22 +++++++++++++++++++ 4 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 app/src/main/res/xml/shortcuts.xml diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index f6a3225cb8..d5f08e0795 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -139,6 +139,12 @@ + + diff --git a/app/src/main/res/xml/shortcuts.xml b/app/src/main/res/xml/shortcuts.xml new file mode 100644 index 0000000000..d4995157d8 --- /dev/null +++ b/app/src/main/res/xml/shortcuts.xml @@ -0,0 +1,18 @@ + + + + + + + + + diff --git a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/conversations/DefaultNotificationConversationService.kt b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/conversations/DefaultNotificationConversationService.kt index f898e4a9ed..7b08958cd1 100644 --- a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/conversations/DefaultNotificationConversationService.kt +++ b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/conversations/DefaultNotificationConversationService.kt @@ -42,6 +42,12 @@ import kotlinx.coroutines.flow.launchIn import kotlinx.coroutines.flow.onEach import timber.log.Timber +/** + * Category shared with the `` in `app/src/main/res/xml/shortcuts.xml`. The system only offers a shortcut + * in the Direct Share row of the share sheet when the two match, so the literal has to be kept in step with that file. + */ +private const val SHARE_TARGET_CATEGORY = "io.element.android.category.SHARE_TARGET" + @SingleIn(AppScope::class) @ContributesBinding(AppScope::class) class DefaultNotificationConversationService( @@ -86,7 +92,8 @@ class DefaultNotificationConversationService( } val categories = setOfNotNull( - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N_MR1) ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION else null + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N_MR1) ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION else null, + SHARE_TARGET_CATEGORY, ) val client = matrixClientProvider.getOrRestore(sessionId).getOrNull() ?: return diff --git a/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/conversations/DefaultNotificationConversationServiceTest.kt b/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/conversations/DefaultNotificationConversationServiceTest.kt index 41e601c50d..cb5fad7509 100644 --- a/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/conversations/DefaultNotificationConversationServiceTest.kt +++ b/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/conversations/DefaultNotificationConversationServiceTest.kt @@ -10,6 +10,7 @@ package io.element.android.libraries.push.impl.notifications.conversations import android.content.Context import android.content.Intent +import android.content.pm.ShortcutInfo import android.os.Build import androidx.core.content.pm.ShortcutInfoCompat import androidx.core.content.pm.ShortcutManagerCompat @@ -52,6 +53,27 @@ class DefaultNotificationConversationServiceTest : RobolectricTest() { assertThat(shortcuts).isNotEmpty() } + @Test + fun `the shortcut is offered to the share sheet as a conversation`() = runTest { + val context = InstrumentationRegistry.getInstrumentation().context + val service = createService(context) + + service.onSendMessage( + sessionId = A_SESSION_ID, + roomId = A_ROOM_ID, + roomName = "Room title", + roomIsDirect = false, + roomAvatarUrl = null, + ) + + val shortcut = ShortcutManagerCompat.getDynamicShortcuts(context).single() + assertThat(shortcut.categories).containsAtLeast( + ShortcutInfo.SHORTCUT_CATEGORY_CONVERSATION, + // Matches the category in app/src/main/res/xml/shortcuts.xml + "io.element.android.category.SHARE_TARGET", + ) + } + @Test fun `onLeftRoom removes a shortcut`() = runTest { val context = InstrumentationRegistry.getInstrumentation().context From 0801a415b59d89504a1815601eca8730c9de0dfc Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 26 Aug 2026 12:11:04 +0200 Subject: [PATCH 44/97] Add a FileViewerEntryPoint to render in-memory content as a file Introduce io.element.android.libraries.mediaviewer.api.FileViewerEntryPoint, a reusable screen which renders content that is not a Matrix media the same way the media viewer renders a file, with Share and Download actions. The caller provides a filename, a mime type and the whole content as a String. The node writes it to a temporary file in the cache directory, then reuses LocalMediaView (so text content goes through TextFileViewer) and LocalMediaActions for sharing and saving on disk. The node is contributed to AppScope so that the screen can be used from any graph, since MediaViewerNode itself is bound to RoomScope and depends on the timeline data sources. Also route MimeTypes.Json to TextFileView in LocalMediaView, so that a json file is rendered as text instead of falling back to the generic file card. Co-Authored-By: Claude Opus 5 (1M context) --- .../mediaviewer/api/FileViewerEntryPoint.kt | 44 ++++++ .../fileviewer/DefaultFileViewerEntryPoint.kt | 30 ++++ .../impl/fileviewer/FileViewerEvent.kt | 13 ++ .../impl/fileviewer/FileViewerNode.kt | 47 ++++++ .../impl/fileviewer/FileViewerPresenter.kt | 143 ++++++++++++++++++ .../impl/fileviewer/FileViewerState.kt | 19 +++ .../fileviewer/FileViewerStatePreviewParam.kt | 62 ++++++++ .../impl/fileviewer/FileViewerView.kt | 134 ++++++++++++++++ .../mediaviewer/impl/local/LocalMediaView.kt | 2 +- .../DefaultFileViewerEntryPointTest.kt | 73 +++++++++ .../fileviewer/FileViewerPresenterTest.kt | 100 ++++++++++++ .../impl/fileviewer/FileViewerViewTest.kt | 87 +++++++++++ .../test/FakeFileViewerEntryPoint.kt | 22 +++ 13 files changed, 775 insertions(+), 1 deletion(-) create mode 100644 libraries/mediaviewer/api/src/main/kotlin/io/element/android/libraries/mediaviewer/api/FileViewerEntryPoint.kt create mode 100644 libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/DefaultFileViewerEntryPoint.kt create mode 100644 libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerEvent.kt create mode 100644 libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerNode.kt create mode 100644 libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerPresenter.kt create mode 100644 libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerState.kt create mode 100644 libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerStatePreviewParam.kt create mode 100644 libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerView.kt create mode 100644 libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/DefaultFileViewerEntryPointTest.kt create mode 100644 libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerPresenterTest.kt create mode 100644 libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerViewTest.kt create mode 100644 libraries/mediaviewer/test/src/main/kotlin/io/element/android/libraries/mediaviewer/test/FakeFileViewerEntryPoint.kt diff --git a/libraries/mediaviewer/api/src/main/kotlin/io/element/android/libraries/mediaviewer/api/FileViewerEntryPoint.kt b/libraries/mediaviewer/api/src/main/kotlin/io/element/android/libraries/mediaviewer/api/FileViewerEntryPoint.kt new file mode 100644 index 0000000000..8f90a5802b --- /dev/null +++ b/libraries/mediaviewer/api/src/main/kotlin/io/element/android/libraries/mediaviewer/api/FileViewerEntryPoint.kt @@ -0,0 +1,44 @@ +/* + * Copyright (c) 2026 Element Creations 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.mediaviewer.api + +import com.bumble.appyx.core.modality.BuildContext +import com.bumble.appyx.core.node.Node +import com.bumble.appyx.core.plugin.Plugin +import io.element.android.libraries.architecture.FeatureEntryPoint +import io.element.android.libraries.architecture.NodeInputs + +/** + * Renders content which is not a Matrix media as a file, the same way the media viewer does. + * + * The content is provided by the caller and written to a temporary file, so that it can be + * displayed, shared and saved on disk. + */ +interface FileViewerEntryPoint : FeatureEntryPoint { + fun createNode( + parentNode: Node, + buildContext: BuildContext, + params: Params, + callback: Callback, + ): Node + + /** + * @param filename the name of the file, used as the screen title and for the shared and saved files. + * @param mimeType the mime type of [content], it drives how the content is rendered. + * @param content the whole content of the file. + */ + data class Params( + val filename: String, + val mimeType: String, + val content: String, + ) : NodeInputs + + interface Callback : Plugin { + fun onDone() + } +} diff --git a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/DefaultFileViewerEntryPoint.kt b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/DefaultFileViewerEntryPoint.kt new file mode 100644 index 0000000000..2692e8461d --- /dev/null +++ b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/DefaultFileViewerEntryPoint.kt @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2026 Element Creations 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.mediaviewer.impl.fileviewer + +import com.bumble.appyx.core.modality.BuildContext +import com.bumble.appyx.core.node.Node +import dev.zacsweers.metro.AppScope +import dev.zacsweers.metro.ContributesBinding +import io.element.android.libraries.architecture.createNode +import io.element.android.libraries.mediaviewer.api.FileViewerEntryPoint + +@ContributesBinding(AppScope::class) +class DefaultFileViewerEntryPoint : FileViewerEntryPoint { + override fun createNode( + parentNode: Node, + buildContext: BuildContext, + params: FileViewerEntryPoint.Params, + callback: FileViewerEntryPoint.Callback, + ): Node { + return parentNode.createNode( + buildContext = buildContext, + plugins = listOf(params, callback), + ) + } +} diff --git a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerEvent.kt b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerEvent.kt new file mode 100644 index 0000000000..f36e1b87cf --- /dev/null +++ b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerEvent.kt @@ -0,0 +1,13 @@ +/* + * Copyright (c) 2026 Element Creations 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.mediaviewer.impl.fileviewer + +sealed interface FileViewerEvent { + data object Share : FileViewerEvent + data object SaveOnDisk : FileViewerEvent +} diff --git a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerNode.kt b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerNode.kt new file mode 100644 index 0000000000..ee1b35c990 --- /dev/null +++ b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerNode.kt @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2026 Element Creations 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.mediaviewer.impl.fileviewer + +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import com.bumble.appyx.core.modality.BuildContext +import com.bumble.appyx.core.node.Node +import com.bumble.appyx.core.plugin.Plugin +import dev.zacsweers.metro.AppScope +import dev.zacsweers.metro.Assisted +import dev.zacsweers.metro.AssistedInject +import io.element.android.annotations.ContributesNode +import io.element.android.features.viewfolder.api.TextFileViewer +import io.element.android.libraries.architecture.callback +import io.element.android.libraries.architecture.inputs +import io.element.android.libraries.mediaviewer.api.FileViewerEntryPoint + +@ContributesNode(AppScope::class) +@AssistedInject +class FileViewerNode( + @Assisted buildContext: BuildContext, + @Assisted plugins: List, + presenterFactory: FileViewerPresenter.Factory, + private val textFileViewer: TextFileViewer, +) : Node(buildContext, plugins = plugins) { + private val callback: FileViewerEntryPoint.Callback = callback() + private val inputs = inputs() + + private val presenter = presenterFactory.create(params = inputs) + + @Composable + override fun View(modifier: Modifier) { + val state = presenter.present() + FileViewerView( + state = state, + textFileViewer = textFileViewer, + onBackClick = callback::onDone, + modifier = modifier, + ) + } +} diff --git a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerPresenter.kt b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerPresenter.kt new file mode 100644 index 0000000000..61be47ebb2 --- /dev/null +++ b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerPresenter.kt @@ -0,0 +1,143 @@ +/* + * Copyright (c) 2026 Element Creations 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.mediaviewer.impl.fileviewer + +import android.content.ActivityNotFoundException +import android.content.Context +import androidx.compose.runtime.Composable +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.rememberCoroutineScope +import androidx.core.net.toUri +import dev.zacsweers.metro.Assisted +import dev.zacsweers.metro.AssistedFactory +import dev.zacsweers.metro.AssistedInject +import io.element.android.libraries.androidutils.filesize.FileSizeFormatter +import io.element.android.libraries.architecture.AsyncData +import io.element.android.libraries.architecture.Presenter +import io.element.android.libraries.architecture.runCatchingUpdatingState +import io.element.android.libraries.core.coroutine.CoroutineDispatchers +import io.element.android.libraries.designsystem.utils.snackbar.SnackbarDispatcher +import io.element.android.libraries.designsystem.utils.snackbar.SnackbarMessage +import io.element.android.libraries.designsystem.utils.snackbar.collectSnackbarMessageAsState +import io.element.android.libraries.di.annotations.ApplicationContext +import io.element.android.libraries.mediaviewer.api.FileViewerEntryPoint +import io.element.android.libraries.mediaviewer.api.MediaInfo +import io.element.android.libraries.mediaviewer.api.local.LocalMedia +import io.element.android.libraries.mediaviewer.api.util.FileExtensionExtractor +import io.element.android.libraries.mediaviewer.impl.local.LocalMediaActions +import io.element.android.libraries.ui.strings.CommonStrings +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.launch +import kotlinx.coroutines.withContext +import java.io.File +import io.element.android.libraries.androidutils.R as UtilsR + +@AssistedInject +class FileViewerPresenter( + @Assisted private val params: FileViewerEntryPoint.Params, + @ApplicationContext private val context: Context, + private val coroutineDispatchers: CoroutineDispatchers, + private val fileSizeFormatter: FileSizeFormatter, + private val fileExtensionExtractor: FileExtensionExtractor, + private val localMediaActions: LocalMediaActions, +) : Presenter { + @AssistedFactory + fun interface Factory { + fun create(params: FileViewerEntryPoint.Params): FileViewerPresenter + } + + // Use a local snackbarDispatcher, because this screen can be rendered from any Node. + private val snackbarDispatcher = SnackbarDispatcher() + + @Composable + override fun present(): FileViewerState { + val coroutineScope = rememberCoroutineScope() + val localMedia = remember { mutableStateOf>(AsyncData.Uninitialized) } + val snackbarMessage by snackbarDispatcher.collectSnackbarMessageAsState() + + localMediaActions.Configure() + + LaunchedEffect(Unit) { + suspend { createLocalMedia() }.runCatchingUpdatingState(localMedia) + } + + fun handleEvent(event: FileViewerEvent) { + when (event) { + FileViewerEvent.SaveOnDisk -> coroutineScope.saveOnDisk(localMedia.value) + FileViewerEvent.Share -> coroutineScope.share(localMedia.value) + } + } + + return FileViewerState( + filename = params.filename, + localMedia = localMedia.value, + snackbarMessage = snackbarMessage, + eventSink = ::handleEvent, + ) + } + + /** + * Write the content to a temporary file, so that it can be rendered, shared and saved on disk. + * The file is always written to the same location, so it does not need to be cleaned up. + */ + private suspend fun createLocalMedia(): LocalMedia = withContext(coroutineDispatchers.io) { + val folder = File(context.cacheDir, "temp/fileviewer").apply { mkdirs() } + val file = File(folder, params.filename) + file.writeText(params.content) + LocalMedia( + uri = file.toUri(), + info = MediaInfo( + filename = params.filename, + caption = null, + mimeType = params.mimeType, + fileSize = file.length(), + formattedFileSize = fileSizeFormatter.format(file.length()), + fileExtension = fileExtensionExtractor.extractFromName(params.filename), + senderId = null, + senderName = null, + senderAvatar = null, + dateSent = null, + dateSentFull = null, + waveform = null, + duration = null, + ), + ) + } + + private fun CoroutineScope.saveOnDisk(localMedia: AsyncData) = launch { + if (localMedia is AsyncData.Success) { + localMediaActions.saveOnDisk(localMedia.data) + .onSuccess { + snackbarDispatcher.post(SnackbarMessage(CommonStrings.common_file_saved_on_disk_android)) + } + .onFailure { + snackbarDispatcher.post(SnackbarMessage(mediaActionsError(it))) + } + } + } + + private fun CoroutineScope.share(localMedia: AsyncData) = launch { + if (localMedia is AsyncData.Success) { + localMediaActions.share(localMedia.data) + .onFailure { + snackbarDispatcher.post(SnackbarMessage(mediaActionsError(it))) + } + } + } + + private fun mediaActionsError(throwable: Throwable): Int { + return if (throwable is ActivityNotFoundException) { + UtilsR.string.error_no_compatible_app_found + } else { + CommonStrings.error_unknown + } + } +} diff --git a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerState.kt b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerState.kt new file mode 100644 index 0000000000..0edc198205 --- /dev/null +++ b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerState.kt @@ -0,0 +1,19 @@ +/* + * Copyright (c) 2026 Element Creations 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.mediaviewer.impl.fileviewer + +import io.element.android.libraries.architecture.AsyncData +import io.element.android.libraries.designsystem.utils.snackbar.SnackbarMessage +import io.element.android.libraries.mediaviewer.api.local.LocalMedia + +data class FileViewerState( + val filename: String, + val localMedia: AsyncData, + val snackbarMessage: SnackbarMessage?, + val eventSink: (FileViewerEvent) -> Unit, +) diff --git a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerStatePreviewParam.kt b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerStatePreviewParam.kt new file mode 100644 index 0000000000..3f48dbdc31 --- /dev/null +++ b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerStatePreviewParam.kt @@ -0,0 +1,62 @@ +/* + * Copyright (c) 2026 Element Creations 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.mediaviewer.impl.fileviewer + +import android.net.Uri +import androidx.compose.ui.tooling.preview.PreviewParameterProvider +import io.element.android.libraries.architecture.AsyncData +import io.element.android.libraries.core.mimetype.MimeTypes +import io.element.android.libraries.mediaviewer.api.MediaInfo +import io.element.android.libraries.mediaviewer.api.local.LocalMedia + +private const val A_FILENAME = "push_rules@alice_server.org.json" + +open class FileViewerStatePreviewParam : PreviewParameterProvider { + override val values: Sequence + get() = sequenceOf( + aFileViewerState(), + aFileViewerState(localMedia = AsyncData.Failure(Exception("A failure"))), + aFileViewerState( + localMedia = AsyncData.Success( + LocalMedia( + uri = Uri.EMPTY, + info = aJsonMediaInfo(), + ) + ) + ), + ) +} + +fun aFileViewerState( + filename: String = A_FILENAME, + localMedia: AsyncData = AsyncData.Uninitialized, + eventSink: (FileViewerEvent) -> Unit = {}, +) = FileViewerState( + filename = filename, + localMedia = localMedia, + snackbarMessage = null, + eventSink = eventSink, +) + +fun aJsonMediaInfo( + filename: String = A_FILENAME, +) = MediaInfo( + filename = filename, + caption = null, + mimeType = MimeTypes.Json, + fileSize = 2 * 1024, + formattedFileSize = "2kB", + fileExtension = "json", + senderId = null, + senderName = null, + senderAvatar = null, + dateSent = null, + dateSentFull = null, + waveform = null, + duration = null, +) diff --git a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerView.kt b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerView.kt new file mode 100644 index 0000000000..613e3af269 --- /dev/null +++ b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerView.kt @@ -0,0 +1,134 @@ +/* + * Copyright (c) 2026 Element Creations Ltd. + * + * SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial. + * Please see LICENSE files in the repository root for full details. + */ + +@file:OptIn(ExperimentalMaterial3Api::class) + +package io.element.android.libraries.mediaviewer.impl.fileviewer + +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.padding +import androidx.compose.material3.ExperimentalMaterial3Api +import androidx.compose.material3.TopAppBarDefaults +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.tooling.preview.PreviewParameter +import io.element.android.compound.tokens.generated.CompoundIcons +import io.element.android.features.viewfolder.api.TextFileViewer +import io.element.android.libraries.architecture.AsyncData +import io.element.android.libraries.designsystem.components.async.AsyncFailure +import io.element.android.libraries.designsystem.components.async.AsyncLoading +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.Icon +import io.element.android.libraries.designsystem.theme.components.IconButton +import io.element.android.libraries.designsystem.theme.components.Scaffold +import io.element.android.libraries.designsystem.theme.components.TopAppBar +import io.element.android.libraries.designsystem.utils.snackbar.SnackbarHost +import io.element.android.libraries.designsystem.utils.snackbar.rememberSnackbarHostState +import io.element.android.libraries.mediaviewer.impl.local.LocalMediaView +import io.element.android.libraries.mediaviewer.impl.util.bgCanvasWithTransparency +import io.element.android.libraries.ui.strings.CommonStrings + +@Composable +fun FileViewerView( + state: FileViewerState, + textFileViewer: TextFileViewer, + onBackClick: () -> Unit, + modifier: Modifier = Modifier, +) { + val snackbarHostState = rememberSnackbarHostState(snackbarMessage = state.snackbarMessage) + Scaffold( + modifier = modifier, + topBar = { + FileViewerTopBar( + filename = state.filename, + actionsEnabled = state.localMedia.isSuccess(), + onBackClick = onBackClick, + onShareClick = { state.eventSink(FileViewerEvent.Share) }, + onSaveClick = { state.eventSink(FileViewerEvent.SaveOnDisk) }, + ) + }, + snackbarHost = { SnackbarHost(snackbarHostState) }, + ) { padding -> + when (val localMedia = state.localMedia) { + AsyncData.Uninitialized, + is AsyncData.Loading -> AsyncLoading( + modifier = Modifier.padding(padding), + ) + is AsyncData.Failure -> AsyncFailure( + modifier = Modifier.padding(padding), + throwable = localMedia.error, + onRetry = null, + ) + is AsyncData.Success -> { + // Do not apply the padding, the content is rendered behind the translucent top bar, + // the same way the media viewer does. + LocalMediaView( + localMedia = localMedia.data, + bottomPaddingInPixels = 0, + audioFocus = null, + onClick = {}, + onOpenWith = null, + textFileViewer = textFileViewer, + forPreview = false, + modifier = Modifier.fillMaxSize(), + ) + } + } + } +} + +@Composable +private fun FileViewerTopBar( + filename: String, + actionsEnabled: Boolean, + onBackClick: () -> Unit, + onShareClick: () -> Unit, + onSaveClick: () -> Unit, +) { + TopAppBar( + titleStr = filename, + colors = TopAppBarDefaults.topAppBarColors( + containerColor = bgCanvasWithTransparency, + ), + navigationIcon = { BackButton(onClick = onBackClick) }, + actions = { + IconButton( + onClick = onShareClick, + enabled = actionsEnabled, + ) { + Icon( + imageVector = CompoundIcons.ShareAndroid(), + contentDescription = stringResource(id = CommonStrings.action_share), + ) + } + IconButton( + onClick = onSaveClick, + enabled = actionsEnabled, + ) { + Icon( + imageVector = CompoundIcons.Download(), + contentDescription = stringResource(id = CommonStrings.action_download), + ) + } + }, + ) +} + +@PreviewsDayNight +@Composable +internal fun FileViewerViewPreview( + @PreviewParameter(FileViewerStatePreviewParam::class) state: FileViewerState, +) = ElementPreview { + FileViewerView( + state = state, + textFileViewer = { _, _ -> }, + onBackClick = {}, + ) +} diff --git a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/local/LocalMediaView.kt b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/local/LocalMediaView.kt index 01b44f1246..e370361696 100644 --- a/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/local/LocalMediaView.kt +++ b/libraries/mediaviewer/impl/src/main/kotlin/io/element/android/libraries/mediaviewer/impl/local/LocalMediaView.kt @@ -59,7 +59,7 @@ fun LocalMediaView( forPreview = forPreview, modifier = modifier, ) - mimeType == MimeTypes.PlainText -> TextFileView( + mimeType == MimeTypes.PlainText || mimeType == MimeTypes.Json -> TextFileView( localMedia = localMedia, textFileViewer = textFileViewer, modifier = modifier, diff --git a/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/DefaultFileViewerEntryPointTest.kt b/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/DefaultFileViewerEntryPointTest.kt new file mode 100644 index 0000000000..2a84ad00b8 --- /dev/null +++ b/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/DefaultFileViewerEntryPointTest.kt @@ -0,0 +1,73 @@ +/* + * Copyright (c) 2026 Element Creations 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.mediaviewer.impl.fileviewer + +import android.content.Context +import androidx.arch.core.executor.testing.InstantTaskExecutorRule +import com.bumble.appyx.core.modality.BuildContext +import com.bumble.appyx.testing.junit4.util.MainDispatcherRule +import com.google.common.truth.Truth.assertThat +import io.element.android.libraries.androidutils.filesize.FakeFileSizeFormatter +import io.element.android.libraries.core.mimetype.MimeTypes +import io.element.android.libraries.mediaviewer.api.FileViewerEntryPoint +import io.element.android.libraries.mediaviewer.test.FakeLocalMediaActions +import io.element.android.libraries.mediaviewer.test.util.FileExtensionExtractorWithoutValidation +import io.element.android.tests.testutils.lambda.lambdaError +import io.element.android.tests.testutils.node.TestParentNode +import io.element.android.tests.testutils.testCoroutineDispatchers +import io.mockk.mockk +import kotlinx.coroutines.test.runTest +import org.junit.Rule +import org.junit.Test + +class DefaultFileViewerEntryPointTest { + @get:Rule + val instantTaskExecutorRule = InstantTaskExecutorRule() + + @get:Rule + val mainDispatcherRule = MainDispatcherRule() + + @Test + fun `test node builder`() = runTest { + val entryPoint = DefaultFileViewerEntryPoint() + val parentNode = TestParentNode.create { buildContext, plugins -> + FileViewerNode( + buildContext = buildContext, + plugins = plugins, + presenterFactory = { nodeParams -> + FileViewerPresenter( + params = nodeParams, + context = mockk(relaxed = true), + coroutineDispatchers = testCoroutineDispatchers(), + fileSizeFormatter = FakeFileSizeFormatter(), + fileExtensionExtractor = FileExtensionExtractorWithoutValidation(), + localMediaActions = FakeLocalMediaActions(), + ) + }, + textFileViewer = { _, _ -> lambdaError() }, + ) + } + val params = FileViewerEntryPoint.Params( + filename = "a file.json", + mimeType = MimeTypes.Json, + content = "{}", + ) + val callback = object : FileViewerEntryPoint.Callback { + override fun onDone() = lambdaError() + } + val result = entryPoint.createNode( + parentNode = parentNode, + buildContext = BuildContext.root(null), + params = params, + callback = callback, + ) + assertThat(result).isInstanceOf(FileViewerNode::class.java) + assertThat(result.plugins).contains(params) + assertThat(result.plugins).contains(callback) + } +} diff --git a/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerPresenterTest.kt b/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerPresenterTest.kt new file mode 100644 index 0000000000..7a8a85d69e --- /dev/null +++ b/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerPresenterTest.kt @@ -0,0 +1,100 @@ +/* + * Copyright (c) 2026 Element Creations 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.mediaviewer.impl.fileviewer + +import android.content.ActivityNotFoundException +import androidx.core.net.toFile +import com.google.common.truth.Truth.assertThat +import io.element.android.libraries.androidutils.filesize.FakeFileSizeFormatter +import io.element.android.libraries.architecture.AsyncData +import io.element.android.libraries.core.mimetype.MimeTypes +import io.element.android.libraries.mediaviewer.api.FileViewerEntryPoint +import io.element.android.libraries.mediaviewer.api.local.LocalMedia +import io.element.android.libraries.mediaviewer.impl.local.LocalMediaActions +import io.element.android.libraries.mediaviewer.test.FakeLocalMediaActions +import io.element.android.libraries.mediaviewer.test.util.FileExtensionExtractorWithoutValidation +import io.element.android.libraries.ui.strings.CommonStrings +import io.element.android.tests.testutils.consumeItemsUntilPredicate +import io.element.android.tests.testutils.lambda.lambdaRecorder +import io.element.android.tests.testutils.robolectric.RobolectricTest +import io.element.android.tests.testutils.test +import io.element.android.tests.testutils.testCoroutineDispatchers +import kotlinx.coroutines.test.TestScope +import kotlinx.coroutines.test.runTest +import org.junit.Test +import org.robolectric.RuntimeEnvironment +import io.element.android.libraries.androidutils.R as UtilsR + +private const val A_FILENAME = "push_rules@alice_server.org.json" +private const val A_CONTENT = """{"global":{"override":[]}}""" + +class FileViewerPresenterTest : RobolectricTest() { + @Test + fun `present - writes the content to a file and exposes it as a local media`() = runTest { + val presenter = createFileViewerPresenter() + presenter.test { + assertThat(awaitItem().localMedia).isEqualTo(AsyncData.Uninitialized) + consumeItemsUntilPredicate { it.localMedia.isSuccess() }.last().also { state -> + assertThat(state.filename).isEqualTo(A_FILENAME) + val localMedia = state.localMedia.dataOrNull()!! + assertThat(localMedia.info.filename).isEqualTo(A_FILENAME) + assertThat(localMedia.info.mimeType).isEqualTo(MimeTypes.Json) + assertThat(localMedia.info.fileExtension).isEqualTo("json") + val file = localMedia.uri.toFile() + assertThat(file.name).isEqualTo(A_FILENAME) + assertThat(file.readText()).isEqualTo(A_CONTENT) + } + } + } + + @Test + fun `present - SaveOnDisk event saves the file and posts a snackbar message`() = runTest { + val saveOnDiskResult = lambdaRecorder> { Result.success(Unit) } + val presenter = createFileViewerPresenter( + localMediaActions = FakeLocalMediaActions(saveOnDiskResult = saveOnDiskResult), + ) + presenter.test { + consumeItemsUntilPredicate { it.localMedia.isSuccess() }.last().eventSink(FileViewerEvent.SaveOnDisk) + consumeItemsUntilPredicate { it.snackbarMessage != null }.last().also { state -> + assertThat(state.snackbarMessage?.messageResId).isEqualTo(CommonStrings.common_file_saved_on_disk_android) + } + saveOnDiskResult.assertions().isCalledOnce() + } + } + + @Test + fun `present - Share event failure posts a snackbar message`() = runTest { + val shareResult = lambdaRecorder> { Result.failure(ActivityNotFoundException()) } + val presenter = createFileViewerPresenter( + localMediaActions = FakeLocalMediaActions(shareResult = shareResult), + ) + presenter.test { + consumeItemsUntilPredicate { it.localMedia.isSuccess() }.last().eventSink(FileViewerEvent.Share) + consumeItemsUntilPredicate { it.snackbarMessage != null }.last().also { state -> + assertThat(state.snackbarMessage?.messageResId).isEqualTo(UtilsR.string.error_no_compatible_app_found) + } + shareResult.assertions().isCalledOnce() + } + } + + private fun TestScope.createFileViewerPresenter( + params: FileViewerEntryPoint.Params = FileViewerEntryPoint.Params( + filename = A_FILENAME, + mimeType = MimeTypes.Json, + content = A_CONTENT, + ), + localMediaActions: LocalMediaActions = FakeLocalMediaActions(), + ) = FileViewerPresenter( + params = params, + context = RuntimeEnvironment.getApplication(), + coroutineDispatchers = testCoroutineDispatchers(), + fileSizeFormatter = FakeFileSizeFormatter(), + fileExtensionExtractor = FileExtensionExtractorWithoutValidation(), + localMediaActions = localMediaActions, + ) +} diff --git a/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerViewTest.kt b/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerViewTest.kt new file mode 100644 index 0000000000..96f5de7007 --- /dev/null +++ b/libraries/mediaviewer/impl/src/test/kotlin/io/element/android/libraries/mediaviewer/impl/fileviewer/FileViewerViewTest.kt @@ -0,0 +1,87 @@ +/* + * Copyright (c) 2026 Element Creations Ltd. + * + * SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial. + * Please see LICENSE files in the repository root for full details. + */ + +@file:OptIn(ExperimentalTestApi::class) + +package io.element.android.libraries.mediaviewer.impl.fileviewer + +import android.net.Uri +import androidx.activity.ComponentActivity +import androidx.annotation.StringRes +import androidx.compose.ui.test.AndroidComposeUiTest +import androidx.compose.ui.test.ExperimentalTestApi +import androidx.compose.ui.test.hasClickAction +import androidx.compose.ui.test.hasContentDescription +import androidx.compose.ui.test.performClick +import androidx.compose.ui.test.v2.runAndroidComposeUiTest +import io.element.android.libraries.architecture.AsyncData +import io.element.android.libraries.mediaviewer.api.local.LocalMedia +import io.element.android.libraries.ui.strings.CommonStrings +import io.element.android.tests.testutils.EnsureNeverCalled +import io.element.android.tests.testutils.EventsRecorder +import io.element.android.tests.testutils.ensureCalledOnce +import io.element.android.tests.testutils.pressBack +import io.element.android.tests.testutils.robolectric.RobolectricTest +import org.junit.Test + +class FileViewerViewTest : RobolectricTest() { + @Test + fun `clicking on back invokes the expected callback`() = runAndroidComposeUiTest { + val eventsRecorder = EventsRecorder(expectEvents = false) + ensureCalledOnce { + setFileViewerView( + state = aFileViewerState(eventSink = eventsRecorder), + onBackClick = it, + ) + pressBack() + } + } + + @Test + fun `clicking on share emits the expected event`() = runAndroidComposeUiTest { + val eventsRecorder = EventsRecorder() + setFileViewerView( + state = aFileViewerState( + localMedia = AsyncData.Success(LocalMedia(Uri.EMPTY, aJsonMediaInfo())), + eventSink = eventsRecorder, + ), + ) + clickOnContentDescription(CommonStrings.action_share) + eventsRecorder.assertSingle(FileViewerEvent.Share) + } + + @Test + fun `clicking on download emits the expected event`() = runAndroidComposeUiTest { + val eventsRecorder = EventsRecorder() + setFileViewerView( + state = aFileViewerState( + localMedia = AsyncData.Success(LocalMedia(Uri.EMPTY, aJsonMediaInfo())), + eventSink = eventsRecorder, + ), + ) + clickOnContentDescription(CommonStrings.action_download) + eventsRecorder.assertSingle(FileViewerEvent.SaveOnDisk) + } +} + +private fun AndroidComposeUiTest.clickOnContentDescription(@StringRes res: Int) { + val text = activity!!.getString(res) + onNode(hasContentDescription(text) and hasClickAction()).performClick() +} + +private fun AndroidComposeUiTest.setFileViewerView( + state: FileViewerState, + onBackClick: () -> Unit = EnsureNeverCalled(), +) { + setContent { + FileViewerView( + state = state, + textFileViewer = { _, _ -> }, + onBackClick = onBackClick, + ) + } +} diff --git a/libraries/mediaviewer/test/src/main/kotlin/io/element/android/libraries/mediaviewer/test/FakeFileViewerEntryPoint.kt b/libraries/mediaviewer/test/src/main/kotlin/io/element/android/libraries/mediaviewer/test/FakeFileViewerEntryPoint.kt new file mode 100644 index 0000000000..0379bff47d --- /dev/null +++ b/libraries/mediaviewer/test/src/main/kotlin/io/element/android/libraries/mediaviewer/test/FakeFileViewerEntryPoint.kt @@ -0,0 +1,22 @@ +/* + * Copyright (c) 2026 Element Creations 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.mediaviewer.test + +import com.bumble.appyx.core.modality.BuildContext +import com.bumble.appyx.core.node.Node +import io.element.android.libraries.mediaviewer.api.FileViewerEntryPoint +import io.element.android.tests.testutils.lambda.lambdaError + +class FakeFileViewerEntryPoint : FileViewerEntryPoint { + override fun createNode( + parentNode: Node, + buildContext: BuildContext, + params: FileViewerEntryPoint.Params, + callback: FileViewerEntryPoint.Callback, + ): Node = lambdaError() +} From 373d2f1eb5c13fb8599f121315bbbd65e375eadf Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 26 Aug 2026 12:11:16 +0200 Subject: [PATCH 45/97] Add a Push rules entry to the developer options Add a "Push rules" item in the Notifications section of the developer options, above "Push history". It displays the raw push rules of the account, which were only available as a rageshake attachment so far. The content is read using NotificationSettingsService.getRawPushRules(), then rendered by the new FileViewerEntryPoint, so that the screen looks like the media viewer rendering a file, with Share and Download actions on a push_rules.json file. The user id contains a colon, which is not a valid file name character on all the file systems, so it is replaced by an underscore. Co-Authored-By: Claude Opus 5 (1M context) --- features/preferences/impl/build.gradle.kts | 2 + .../preferences/impl/PreferencesFlowNode.kt | 30 ++++++++++ .../impl/developer/DeveloperSettingsEvent.kt | 2 + .../developer/DeveloperSettingsNavigator.kt | 15 +++++ .../impl/developer/DeveloperSettingsNode.kt | 11 +++- .../developer/DeveloperSettingsPresenter.kt | 43 ++++++++++++++- .../impl/developer/DeveloperSettingsState.kt | 5 +- .../DeveloperSettingsStatePreviewParam.kt | 5 ++ .../impl/developer/DeveloperSettingsView.kt | 24 +++++++- .../impl/DefaultPreferencesEntryPointTest.kt | 2 + .../DeveloperSettingsPresenterTest.kt | 55 +++++++++++++++++++ .../developer/DeveloperSettingsViewTest.kt | 13 +++++ 12 files changed, 200 insertions(+), 7 deletions(-) create mode 100644 features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsNavigator.kt diff --git a/features/preferences/impl/build.gradle.kts b/features/preferences/impl/build.gradle.kts index e647ebb919..80ac4b3ba3 100644 --- a/features/preferences/impl/build.gradle.kts +++ b/features/preferences/impl/build.gradle.kts @@ -64,6 +64,7 @@ dependencies { implementation(projects.libraries.testtags) implementation(projects.libraries.uiStrings) implementation(projects.libraries.matrixui) + implementation(projects.libraries.mediaviewer.api) implementation(projects.libraries.mediapickers.api) implementation(projects.libraries.mediaupload.api) implementation(projects.libraries.permissions.api) @@ -108,6 +109,7 @@ dependencies { testImplementation(projects.libraries.push.test) testImplementation(projects.libraries.pushstore.test) testImplementation(projects.libraries.roomselect.test) + testImplementation(projects.libraries.mediaviewer.test) testImplementation(projects.libraries.troubleshoot.test) testImplementation(projects.features.deactivation.test) testImplementation(projects.features.enterprise.test) diff --git a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/PreferencesFlowNode.kt b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/PreferencesFlowNode.kt index 15718ca0f0..c85eed5b9d 100644 --- a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/PreferencesFlowNode.kt +++ b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/PreferencesFlowNode.kt @@ -40,10 +40,12 @@ import io.element.android.libraries.architecture.BaseFlowNode import io.element.android.libraries.architecture.appyx.canPop import io.element.android.libraries.architecture.callback import io.element.android.libraries.architecture.createNode +import io.element.android.libraries.core.mimetype.MimeTypes import io.element.android.libraries.di.SessionScope 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.user.MatrixUser +import io.element.android.libraries.mediaviewer.api.FileViewerEntryPoint import io.element.android.libraries.troubleshoot.api.NotificationTroubleShootEntryPoint import io.element.android.libraries.troubleshoot.api.PushHistoryEntryPoint import kotlinx.parcelize.Parcelize @@ -56,6 +58,7 @@ class PreferencesFlowNode( private val lockScreenEntryPoint: LockScreenEntryPoint, private val notificationTroubleShootEntryPoint: NotificationTroubleShootEntryPoint, private val pushHistoryEntryPoint: PushHistoryEntryPoint, + private val fileViewerEntryPoint: FileViewerEntryPoint, private val logoutEntryPoint: LogoutEntryPoint, private val openSourceLicensesEntryPoint: OpenSourceLicensesEntryPoint, private val accountDeactivationEntryPoint: AccountDeactivationEntryPoint, @@ -95,6 +98,9 @@ class PreferencesFlowNode( @Parcelize data object PushHistory : NavTarget + @Parcelize + data class PushRules(val filename: String, val content: String) : NavTarget + @Parcelize data object LockScreenSettings : NavTarget @@ -187,6 +193,10 @@ class PreferencesFlowNode( } NavTarget.DeveloperSettings -> { val developerSettingsCallback = object : DeveloperSettingsNode.Callback { + override fun navigateToPushRules(filename: String, content: String) { + backstack.push(NavTarget.PushRules(filename = filename, content = content)) + } + override fun navigateToPushHistory() { backstack.push(NavTarget.PushHistory) } @@ -270,6 +280,26 @@ class PreferencesFlowNode( }, ) } + is NavTarget.PushRules -> { + fileViewerEntryPoint.createNode( + parentNode = this, + buildContext = buildContext, + params = FileViewerEntryPoint.Params( + filename = navTarget.filename, + mimeType = MimeTypes.Json, + content = navTarget.content, + ), + callback = object : FileViewerEntryPoint.Callback { + override fun onDone() { + if (backstack.canPop()) { + backstack.pop() + } else { + navigateUp() + } + } + }, + ) + } is NavTarget.EditDefaultNotificationSetting -> { val callback = object : EditDefaultNotificationSettingNode.Callback { override fun navigateToRoomNotificationSettings(roomId: RoomId) { diff --git a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsEvent.kt b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsEvent.kt index e0ad208fc1..34ccba2abe 100644 --- a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsEvent.kt +++ b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsEvent.kt @@ -17,4 +17,6 @@ sealed interface DeveloperSettingsEvent { data object VacuumStores : DeveloperSettingsEvent data class MarkAllRoomsAsRead(val needsConfirmation: Boolean) : DeveloperSettingsEvent data object DismissMarkAllRoomsAsReadConfirmation : DeveloperSettingsEvent + data object OpenPushRules : DeveloperSettingsEvent + data object DismissPushRulesError : DeveloperSettingsEvent } diff --git a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsNavigator.kt b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsNavigator.kt new file mode 100644 index 0000000000..8201c7a14d --- /dev/null +++ b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsNavigator.kt @@ -0,0 +1,15 @@ +/* + * Copyright (c) 2026 Element Creations 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.preferences.impl.developer + +/** + * Navigation performed by the developer settings screen, when data has to be loaded first. + */ +fun interface DeveloperSettingsNavigator { + fun openPushRules(filename: String, content: String) +} diff --git a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsNode.kt b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsNode.kt index a8a8c63eed..7a8c3222d1 100644 --- a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsNode.kt +++ b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsNode.kt @@ -28,15 +28,22 @@ import io.element.android.libraries.di.SessionScope class DeveloperSettingsNode( @Assisted buildContext: BuildContext, @Assisted plugins: List, - private val presenter: DeveloperSettingsPresenter, + presenterFactory: DeveloperSettingsPresenter.Factory, private val extraDeveloperOptionsRenderer: ExtraDeveloperOptionsRenderer, -) : Node(buildContext, plugins = plugins) { +) : Node(buildContext, plugins = plugins), + DeveloperSettingsNavigator { interface Callback : Plugin { + fun navigateToPushRules(filename: String, content: String) fun navigateToPushHistory() fun onDone() } private val callback: Callback = callback() + private val presenter = presenterFactory.create(navigator = this) + + override fun openPushRules(filename: String, content: String) { + callback.navigateToPushRules(filename = filename, content = content) + } @Composable override fun View(modifier: Modifier) { diff --git a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenter.kt b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenter.kt index c925433608..9b523d1c34 100644 --- a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenter.kt +++ b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenter.kt @@ -17,7 +17,9 @@ import androidx.compose.runtime.remember import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.runtime.setValue import androidx.compose.ui.graphics.toArgb -import dev.zacsweers.metro.Inject +import dev.zacsweers.metro.Assisted +import dev.zacsweers.metro.AssistedFactory +import dev.zacsweers.metro.AssistedInject import io.element.android.features.enterprise.api.EnterpriseService import io.element.android.features.preferences.impl.developer.appsettings.AppDeveloperSettingsState import io.element.android.features.preferences.impl.tasks.ClearCacheUseCase @@ -34,13 +36,15 @@ import io.element.android.libraries.core.meta.BuildMeta import io.element.android.libraries.matrix.api.analytics.GetDatabaseSizesUseCase import io.element.android.libraries.matrix.api.core.DeviceId import io.element.android.libraries.matrix.api.core.SessionId +import io.element.android.libraries.matrix.api.notificationsettings.NotificationSettingsService import kotlinx.collections.immutable.ImmutableMap import kotlinx.collections.immutable.toImmutableMap import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.launch -@Inject +@AssistedInject class DeveloperSettingsPresenter( + @Assisted private val navigator: DeveloperSettingsNavigator, private val appDeveloperSettingsPresenter: Presenter, private val sessionId: SessionId, private val deviceId: DeviceId, @@ -52,7 +56,13 @@ class DeveloperSettingsPresenter( private val fileSizeFormatter: FileSizeFormatter, private val markAllRoomsAsRead: MarkAllRoomsAsRead, private val buildMeta: BuildMeta, + private val notificationSettingsService: NotificationSettingsService, ) : Presenter { + @AssistedFactory + fun interface Factory { + fun create(navigator: DeveloperSettingsNavigator): DeveloperSettingsPresenter + } + @Composable override fun present(): DeveloperSettingsState { val cacheSize = remember { @@ -67,6 +77,9 @@ class DeveloperSettingsPresenter( val markAllRoomsAsReadAction = remember { mutableStateOf>(AsyncAction.Uninitialized) } + val pushRulesAction = remember { + mutableStateOf>(AsyncAction.Uninitialized) + } var showColorPicker by remember { mutableStateOf(false) } @@ -109,6 +122,10 @@ class DeveloperSettingsPresenter( DeveloperSettingsEvent.DismissMarkAllRoomsAsReadConfirmation -> { markAllRoomsAsReadAction.value = AsyncAction.Uninitialized } + DeveloperSettingsEvent.OpenPushRules -> coroutineScope.openPushRules(pushRulesAction) + DeveloperSettingsEvent.DismissPushRulesError -> { + pushRulesAction.value = AsyncAction.Uninitialized + } } } @@ -119,6 +136,7 @@ class DeveloperSettingsPresenter( databaseSizes = databaseSizes.value, clearCacheAction = clearCacheAction.value, markAllRoomsAsReadAction = markAllRoomsAsReadAction.value, + pushRulesAction = pushRulesAction.value, isEnterpriseBuild = buildMeta.isEnterpriseBuild, showColorPicker = showColorPicker, deviceId = deviceId, @@ -164,4 +182,25 @@ class DeveloperSettingsPresenter( markAllRoomsAsRead().getOrThrow() }.runCatchingUpdatingState(state = markAllRoomsAsReadAction) } + + private fun CoroutineScope.openPushRules(pushRulesAction: MutableState>) = launch { + pushRulesAction.value = AsyncAction.Loading + notificationSettingsService.getRawPushRules() + .onSuccess { content -> + pushRulesAction.value = AsyncAction.Uninitialized + navigator.openPushRules( + filename = pushRulesFilename(), + content = content.orEmpty(), + ) + } + .onFailure { + pushRulesAction.value = AsyncAction.Failure(it) + } + } + + /** + * The user id contains a colon, which is not a valid character for a file name on all the file systems, + * so replace it by an underscore. + */ + private fun pushRulesFilename() = "push_rules${sessionId.value.replace(':', '_')}.json" } diff --git a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsState.kt b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsState.kt index 3a859f14bb..a4345c6452 100644 --- a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsState.kt +++ b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsState.kt @@ -20,10 +20,13 @@ data class DeveloperSettingsState( val databaseSizes: AsyncData>, val clearCacheAction: AsyncAction, val markAllRoomsAsReadAction: AsyncAction, + val pushRulesAction: AsyncAction, val isEnterpriseBuild: Boolean, val showColorPicker: Boolean, val deviceId: DeviceId, val eventSink: (DeveloperSettingsEvent) -> Unit ) { - val showLoader = clearCacheAction is AsyncAction.Loading || markAllRoomsAsReadAction is AsyncAction.Loading + val showLoader = clearCacheAction is AsyncAction.Loading || + markAllRoomsAsReadAction is AsyncAction.Loading || + pushRulesAction is AsyncAction.Loading } diff --git a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsStatePreviewParam.kt b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsStatePreviewParam.kt index cbe95d6b20..0a42251b40 100644 --- a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsStatePreviewParam.kt +++ b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsStatePreviewParam.kt @@ -32,6 +32,9 @@ open class DeveloperSettingsStatePreviewParam : PreviewParameterProvider = AsyncAction.Uninitialized, markAllRoomsAsReadAction: AsyncAction = AsyncAction.Uninitialized, + pushRulesAction: AsyncAction = AsyncAction.Uninitialized, isEnterpriseBuild: Boolean = false, showColorPicker: Boolean = false, deviceId: DeviceId = DeviceId("ILAKNDNASDLK"), @@ -49,6 +53,7 @@ fun aDeveloperSettingsState( databaseSizes = AsyncData.Success(persistentMapOf("state_store" to "1.2MB")), clearCacheAction = clearCacheAction, markAllRoomsAsReadAction = markAllRoomsAsReadAction, + pushRulesAction = pushRulesAction, isEnterpriseBuild = isEnterpriseBuild, showColorPicker = showColorPicker, deviceId = deviceId, diff --git a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsView.kt b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsView.kt index e143f42b0b..8eff49c471 100644 --- a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsView.kt +++ b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsView.kt @@ -23,8 +23,10 @@ import io.element.android.compound.theme.ElementTheme import io.element.android.features.preferences.impl.R import io.element.android.features.preferences.impl.developer.appsettings.AppDeveloperSettingsView import io.element.android.libraries.androidutils.system.copyToClipboard +import io.element.android.libraries.architecture.AsyncAction import io.element.android.libraries.designsystem.components.ProgressDialog import io.element.android.libraries.designsystem.components.dialogs.ConfirmationDialog +import io.element.android.libraries.designsystem.components.dialogs.ErrorDialog import io.element.android.libraries.designsystem.components.list.ListItemContent import io.element.android.libraries.designsystem.components.preferences.PreferenceCategory import io.element.android.libraries.designsystem.components.preferences.PreferencePage @@ -60,6 +62,12 @@ fun DeveloperSettingsView( onDismiss = { state.eventSink(DeveloperSettingsEvent.DismissMarkAllRoomsAsReadConfirmation) }, ) } + (state.pushRulesAction as? AsyncAction.Failure)?.let { failure -> + ErrorDialog( + content = failure.error.message ?: stringResource(CommonStrings.error_unknown), + onSubmit = { state.eventSink(DeveloperSettingsEvent.DismissPushRulesError) }, + ) + } BackHandler( enabled = !state.showLoader, onBack = onBackClick, @@ -79,7 +87,10 @@ fun DeveloperSettingsView( onOpenShowkase = onOpenShowkase, ) SessionCategory(deviceId = state.deviceId) - NotificationCategory(onPushHistoryClick) + NotificationCategory( + onPushRulesClick = { state.eventSink(DeveloperSettingsEvent.OpenPushRules) }, + onPushHistoryClick = onPushHistoryClick, + ) MarkAllRoomsAsReadCategory(state) if (state.isEnterpriseBuild) { @@ -217,8 +228,17 @@ private fun MarkAllRoomsAsReadCategory(state: DeveloperSettingsState) { } @Composable -private fun NotificationCategory(onPushHistoryClick: () -> Unit) { +private fun NotificationCategory( + onPushRulesClick: () -> Unit, + onPushHistoryClick: () -> Unit, +) { PreferenceCategory(title = stringResource(id = R.string.screen_notification_settings_title)) { + ListItem( + content = { + Text("Push rules") + }, + onClick = onPushRulesClick, + ) ListItem( content = { Text(stringResource(R.string.troubleshoot_notifications_entry_point_push_history_title)) diff --git a/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/DefaultPreferencesEntryPointTest.kt b/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/DefaultPreferencesEntryPointTest.kt index 963d7846b4..afc3801c88 100644 --- a/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/DefaultPreferencesEntryPointTest.kt +++ b/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/DefaultPreferencesEntryPointTest.kt @@ -19,6 +19,7 @@ import io.element.android.features.logout.test.FakeLogoutEntryPoint import io.element.android.features.preferences.api.PreferencesEntryPoint import io.element.android.libraries.matrix.api.core.EventId import io.element.android.libraries.matrix.api.core.RoomId +import io.element.android.libraries.mediaviewer.test.FakeFileViewerEntryPoint import io.element.android.libraries.troubleshoot.test.FakeNotificationTroubleShootEntryPoint import io.element.android.libraries.troubleshoot.test.FakePushHistoryEntryPoint import io.element.android.tests.testutils.lambda.lambdaError @@ -43,6 +44,7 @@ class DefaultPreferencesEntryPointTest { lockScreenEntryPoint = FakeLockScreenEntryPoint(), notificationTroubleShootEntryPoint = FakeNotificationTroubleShootEntryPoint(), pushHistoryEntryPoint = FakePushHistoryEntryPoint(), + fileViewerEntryPoint = FakeFileViewerEntryPoint(), logoutEntryPoint = FakeLogoutEntryPoint(), openSourceLicensesEntryPoint = FakeOpenSourceLicensesEntryPoint(), accountDeactivationEntryPoint = FakeAccountDeactivationEntryPoint(), diff --git a/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenterTest.kt b/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenterTest.kt index 753d89da95..66f96e5eb3 100644 --- a/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenterTest.kt +++ b/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenterTest.kt @@ -28,10 +28,13 @@ import io.element.android.libraries.matrix.api.analytics.GetDatabaseSizesUseCase import io.element.android.libraries.matrix.api.analytics.SdkStoreSizes import io.element.android.libraries.matrix.api.core.DeviceId import io.element.android.libraries.matrix.api.core.SessionId +import io.element.android.libraries.matrix.api.notificationsettings.NotificationSettingsService 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.core.aBuildMeta +import io.element.android.libraries.matrix.test.notificationsettings.FakeNotificationSettingsService import io.element.android.tests.testutils.WarmUpRule +import io.element.android.tests.testutils.lambda.lambdaError import io.element.android.tests.testutils.lambda.lambdaRecorder import io.element.android.tests.testutils.lambda.value import io.element.android.tests.testutils.test @@ -41,6 +44,9 @@ import kotlinx.coroutines.test.runTest import org.junit.Rule import org.junit.Test +private const val A_PUSH_RULES_CONTENT = "{\"global\":{}}" +private val AN_EXCEPTION = Exception("A failure") + class DeveloperSettingsPresenterTest { @get:Rule val warmUpRule = WarmUpRule() @@ -170,7 +176,53 @@ class DeveloperSettingsPresenterTest { } } + @Test + fun `present - OpenPushRules event navigates to the push rules content`() = runTest { + val openPushRulesLambda = lambdaRecorder { _, _ -> } + val presenter = createDeveloperSettingsPresenter( + navigator = DeveloperSettingsNavigator(openPushRulesLambda), + notificationSettingsService = FakeNotificationSettingsService( + getRawPushRulesResult = { Result.success(A_PUSH_RULES_CONTENT) }, + ), + ) + presenter.test { + val state = awaitItem() + assertThat(state.pushRulesAction).isEqualTo(AsyncAction.Uninitialized) + state.eventSink(DeveloperSettingsEvent.OpenPushRules) + skipItems(1) + awaitItem().also { + assertThat(it.pushRulesAction).isEqualTo(AsyncAction.Uninitialized) + } + openPushRulesLambda.assertions().isCalledOnce().with( + value("push_rules@alice_server.org.json"), + value(A_PUSH_RULES_CONTENT), + ) + } + } + + @Test + fun `present - OpenPushRules event failure can be dismissed`() = runTest { + val presenter = createDeveloperSettingsPresenter( + notificationSettingsService = FakeNotificationSettingsService( + getRawPushRulesResult = { Result.failure(AN_EXCEPTION) }, + ), + ) + presenter.test { + val state = awaitItem() + state.eventSink(DeveloperSettingsEvent.OpenPushRules) + skipItems(1) + awaitItem().also { + assertThat(it.pushRulesAction).isEqualTo(AsyncAction.Failure(AN_EXCEPTION)) + it.eventSink(DeveloperSettingsEvent.DismissPushRulesError) + } + awaitItem().also { + assertThat(it.pushRulesAction).isEqualTo(AsyncAction.Uninitialized) + } + } + } + private fun createDeveloperSettingsPresenter( + navigator: DeveloperSettingsNavigator = DeveloperSettingsNavigator { _, _ -> lambdaError() }, sessionId: SessionId = A_SESSION_ID, deviceId: DeviceId = A_DEVICE_ID, cacheSizeUseCase: FakeComputeCacheSizeUseCase = FakeComputeCacheSizeUseCase(), @@ -180,8 +232,10 @@ class DeveloperSettingsPresenterTest { databaseSizesUseCase: GetDatabaseSizesUseCase = GetDatabaseSizesUseCase { Result.success(SdkStoreSizes(null, null, null, null)) }, markAllRoomsAsRead: FakeMarkAllRoomsAsRead = FakeMarkAllRoomsAsRead(), buildMeta: BuildMeta = aBuildMeta(), + notificationSettingsService: NotificationSettingsService = FakeNotificationSettingsService(), ): DeveloperSettingsPresenter { return DeveloperSettingsPresenter( + navigator = navigator, appDeveloperSettingsPresenter = { anAppDeveloperSettingsState() }, sessionId = sessionId, deviceId = deviceId, @@ -193,6 +247,7 @@ class DeveloperSettingsPresenterTest { fileSizeFormatter = FakeFileSizeFormatter(), markAllRoomsAsRead = markAllRoomsAsRead, buildMeta = buildMeta, + notificationSettingsService = notificationSettingsService, ) } } diff --git a/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsViewTest.kt b/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsViewTest.kt index f1151bd3e1..fcc69cda91 100644 --- a/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsViewTest.kt +++ b/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsViewTest.kt @@ -57,6 +57,19 @@ class DeveloperSettingsViewTest : RobolectricTest() { } } + @Config(qualifiers = "h2400dp") + @Test + fun `clicking on push rules emits the expected event`() = runAndroidComposeUiTest { + val eventsRecorder = EventsRecorder() + setDeveloperSettingsView( + state = aDeveloperSettingsState( + eventSink = eventsRecorder + ), + ) + onNodeWithText("Push rules").performScrollTo().performClick() + eventsRecorder.assertSingle(DeveloperSettingsEvent.OpenPushRules) + } + @Config(qualifiers = "h2000dp") @Test fun `clicking on open showkase invokes the expected callback`() = runAndroidComposeUiTest { From 2fcf806f59de756c10e4b4a02666a9f53b1086a1 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 26 Aug 2026 12:55:07 +0200 Subject: [PATCH 46/97] Pretty print the push rules content before displaying it The raw push rules returned by the SDK are a single long line of json, which is hard to read on a phone. Re-encode the content with a pretty printer using a two space indentation before handing it to the file viewer. Parsing to a JsonElement and re-encoding preserves the order of the keys, so the rules are still listed in the order the server returned them. Content which cannot be parsed is passed through unchanged, so that a malformed payload remains viewable. Co-Authored-By: Claude Opus 5 (1M context) --- features/preferences/impl/build.gradle.kts | 1 + .../developer/DeveloperSettingsPresenter.kt | 21 +++++++++++- .../DeveloperSettingsPresenterTest.kt | 33 +++++++++++++++++-- 3 files changed, 52 insertions(+), 3 deletions(-) diff --git a/features/preferences/impl/build.gradle.kts b/features/preferences/impl/build.gradle.kts index 80ac4b3ba3..12554eb6fa 100644 --- a/features/preferences/impl/build.gradle.kts +++ b/features/preferences/impl/build.gradle.kts @@ -92,6 +92,7 @@ dependencies { implementation(libs.color.picker) implementation(libs.androidx.browser) implementation(libs.androidx.datastore.preferences) + implementation(libs.serialization.json) api(projects.features.preferences.api) implementation(libs.showkase) diff --git a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenter.kt b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenter.kt index 9b523d1c34..74bf595ce4 100644 --- a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenter.kt +++ b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenter.kt @@ -32,6 +32,7 @@ import io.element.android.libraries.architecture.AsyncData import io.element.android.libraries.architecture.Presenter import io.element.android.libraries.architecture.runCatchingUpdatingState import io.element.android.libraries.core.data.ByteUnit +import io.element.android.libraries.core.extensions.runCatchingExceptions import io.element.android.libraries.core.meta.BuildMeta import io.element.android.libraries.matrix.api.analytics.GetDatabaseSizesUseCase import io.element.android.libraries.matrix.api.core.DeviceId @@ -41,6 +42,9 @@ import kotlinx.collections.immutable.ImmutableMap import kotlinx.collections.immutable.toImmutableMap import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.launch +import kotlinx.serialization.ExperimentalSerializationApi +import kotlinx.serialization.json.Json +import kotlinx.serialization.json.JsonElement @AssistedInject class DeveloperSettingsPresenter( @@ -190,7 +194,7 @@ class DeveloperSettingsPresenter( pushRulesAction.value = AsyncAction.Uninitialized navigator.openPushRules( filename = pushRulesFilename(), - content = content.orEmpty(), + content = content.orEmpty().prettyPrintJson(), ) } .onFailure { @@ -204,3 +208,18 @@ class DeveloperSettingsPresenter( */ private fun pushRulesFilename() = "push_rules${sessionId.value.replace(':', '_')}.json" } + +@OptIn(ExperimentalSerializationApi::class) +private val prettyPrintJson = Json { + prettyPrint = true + // Keep the indentation small, for a better rendering on mobile. + prettyPrintIndent = " " +} + +/** + * Pretty print this json content, so that it is readable when rendered. + * Return the content as is if it is not valid json. + */ +private fun String.prettyPrintJson(): String = runCatchingExceptions { + prettyPrintJson.encodeToString(JsonElement.serializer(), prettyPrintJson.parseToJsonElement(this)) +}.getOrDefault(this) diff --git a/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenterTest.kt b/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenterTest.kt index 66f96e5eb3..b76939f72c 100644 --- a/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenterTest.kt +++ b/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenterTest.kt @@ -44,7 +44,17 @@ import kotlinx.coroutines.test.runTest import org.junit.Rule import org.junit.Test -private const val A_PUSH_RULES_CONTENT = "{\"global\":{}}" +private const val A_PUSH_RULES_CONTENT = """{"global":{"override":[{"rule_id":".m.rule.master","enabled":false}]}}""" +private const val A_PUSH_RULES_CONTENT_PRETTY_PRINTED = """{ + "global": { + "override": [ + { + "rule_id": ".m.rule.master", + "enabled": false + } + ] + } +}""" private val AN_EXCEPTION = Exception("A failure") class DeveloperSettingsPresenterTest { @@ -195,7 +205,26 @@ class DeveloperSettingsPresenterTest { } openPushRulesLambda.assertions().isCalledOnce().with( value("push_rules@alice_server.org.json"), - value(A_PUSH_RULES_CONTENT), + value(A_PUSH_RULES_CONTENT_PRETTY_PRINTED), + ) + } + } + + @Test + fun `present - OpenPushRules event keeps the content as is when it is not valid json`() = runTest { + val openPushRulesLambda = lambdaRecorder { _, _ -> } + val presenter = createDeveloperSettingsPresenter( + navigator = DeveloperSettingsNavigator(openPushRulesLambda), + notificationSettingsService = FakeNotificationSettingsService( + getRawPushRulesResult = { Result.success("not json") }, + ), + ) + presenter.test { + awaitItem().eventSink(DeveloperSettingsEvent.OpenPushRules) + skipItems(2) + openPushRulesLambda.assertions().isCalledOnce().with( + value("push_rules@alice_server.org.json"), + value("not json"), ) } } From 0e93a943a5bfa9f8778d8d0231275bb723912bbc Mon Sep 17 00:00:00 2001 From: ElementBot Date: Wed, 26 Aug 2026 11:16:07 +0000 Subject: [PATCH 47/97] Update screenshots --- ...ferences.impl.developer_DeveloperSettingsView_Day_3_en.png | 3 +++ ...rences.impl.developer_DeveloperSettingsView_Night_3_en.png | 3 +++ ...es.preferences.impl.userstatus_UserStatusView_Day_5_en.png | 4 ++-- ...es.preferences.impl.userstatus_UserStatusView_Day_6_en.png | 4 ++-- ....preferences.impl.userstatus_UserStatusView_Night_5_en.png | 4 ++-- ....preferences.impl.userstatus_UserStatusView_Night_6_en.png | 4 ++-- ...embermoderation.impl_RoomMemberModerationView_Day_5_en.png | 4 ++-- ...embermoderation.impl_RoomMemberModerationView_Day_7_en.png | 4 ++-- ...bermoderation.impl_RoomMemberModerationView_Night_5_en.png | 4 ++-- ...bermoderation.impl_RoomMemberModerationView_Night_7_en.png | 4 ++-- ...eme.components_HorizontalFloatingToolbarNoFab_Day_0_en.png | 4 ++-- ...e.components_HorizontalFloatingToolbarNoFab_Night_0_en.png | 4 ++-- ...em.theme.components_HorizontalFloatingToolbar_Day_0_en.png | 4 ++-- ....theme.components_HorizontalFloatingToolbar_Night_0_en.png | 4 ++-- ...es.mediaviewer.impl.fileviewer_FileViewerView_Day_0_en.png | 3 +++ ...es.mediaviewer.impl.fileviewer_FileViewerView_Day_1_en.png | 3 +++ ...es.mediaviewer.impl.fileviewer_FileViewerView_Day_2_en.png | 3 +++ ....mediaviewer.impl.fileviewer_FileViewerView_Night_0_en.png | 3 +++ ....mediaviewer.impl.fileviewer_FileViewerView_Night_1_en.png | 3 +++ ....mediaviewer.impl.fileviewer_FileViewerView_Night_2_en.png | 3 +++ 20 files changed, 48 insertions(+), 24 deletions(-) create mode 100644 tests/uitests/src/test/snapshots/images/features.preferences.impl.developer_DeveloperSettingsView_Day_3_en.png create mode 100644 tests/uitests/src/test/snapshots/images/features.preferences.impl.developer_DeveloperSettingsView_Night_3_en.png create mode 100644 tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Day_0_en.png create mode 100644 tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Day_1_en.png create mode 100644 tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Day_2_en.png create mode 100644 tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Night_0_en.png create mode 100644 tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Night_1_en.png create mode 100644 tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Night_2_en.png diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.developer_DeveloperSettingsView_Day_3_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.developer_DeveloperSettingsView_Day_3_en.png new file mode 100644 index 0000000000..da05331f32 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.developer_DeveloperSettingsView_Day_3_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a5a8e393b6c77066e69b25e41a82850f86d0b8b283cecc7f7c8416d612974d7 +size 43097 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.developer_DeveloperSettingsView_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.developer_DeveloperSettingsView_Night_3_en.png new file mode 100644 index 0000000000..0fe722a849 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.developer_DeveloperSettingsView_Night_3_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81cffb805bfeda8d0ce58f6c54fb298cc2b35d0ce210f514fd7ccb2fa23ab82f +size 40978 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.userstatus_UserStatusView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.userstatus_UserStatusView_Day_5_en.png index 2c15fd6a37..82f344f714 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.userstatus_UserStatusView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.userstatus_UserStatusView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7260abe16fc2ab4f6ada97ea0f756dc5c9908ff3b61d6ec1723ffde302bb3dc5 -size 11955 +oid sha256:8d96eefa01a5de803b0cc9d9109c20df86eaff01b73ff24a91945b43d53d5d01 +size 11960 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.userstatus_UserStatusView_Day_6_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.userstatus_UserStatusView_Day_6_en.png index 7c422591ad..fdd8fcd5a5 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.userstatus_UserStatusView_Day_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.userstatus_UserStatusView_Day_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2e16fc1daa0f284c442f66591e1d1f59161272a67998d26740b0b403bfe82495 -size 11866 +oid sha256:22678a2a8505e1d9d5bfcb44459b6fac69c11a4bf72fae09c48ffa2e54f5a110 +size 12128 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.userstatus_UserStatusView_Night_5_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.userstatus_UserStatusView_Night_5_en.png index acb8afa74a..f6e27475da 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.userstatus_UserStatusView_Night_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.userstatus_UserStatusView_Night_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bed7565420e11c43acc06896ef298683d2f2dd1dc16c430eab7018e9ead9937a -size 11652 +oid sha256:9ee89826c8aa2ac0371ed31959243f62bf9968806a7b27117cd7b4d849423a33 +size 11667 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.userstatus_UserStatusView_Night_6_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.userstatus_UserStatusView_Night_6_en.png index e0a4cb1c97..b1bb69efb8 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.userstatus_UserStatusView_Night_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.userstatus_UserStatusView_Night_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:87811df502c760816e74beb006341627857c39380ce715f1a747ac9fce77b226 -size 11516 +oid sha256:e27cb9e501ccbac54926f0252b4098867643a2d2683c5b267f86ad99edf6f5d7 +size 11817 diff --git a/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Day_5_en.png index 5c597300e4..73b8b8e50c 100644 --- a/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:21aee17ee9a292bb2f0d3d2ec2db565ebb8d5df753454a5a002f033ed5ed39c5 -size 3853 +oid sha256:e8a3ad99763929d2783147814e44fa9ec7e7efb7b99949e3580f23c38fb5d971 +size 9398 diff --git a/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Day_7_en.png b/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Day_7_en.png index f8a1f24b34..5c597300e4 100644 --- a/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Day_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Day_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1342b6427f5b2e3075ae3ccee60bf1d3b11afaccf3e152643d6ef2d65c21b54e -size 9108 +oid sha256:21aee17ee9a292bb2f0d3d2ec2db565ebb8d5df753454a5a002f033ed5ed39c5 +size 3853 diff --git a/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Night_5_en.png b/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Night_5_en.png index 4ae7279fe7..d47bf90664 100644 --- a/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Night_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Night_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:410a8596d4c70b9a3856d959d6d71ade8e831e8581ff410c9900957a93b3eb50 -size 8114 +oid sha256:520cae2544153ba45f8fe4b021286c2d22da06aa1b60be7f1b13879723ff994c +size 3664 diff --git a/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Night_7_en.png b/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Night_7_en.png index d47bf90664..a87d89c701 100644 --- a/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Night_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Night_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:520cae2544153ba45f8fe4b021286c2d22da06aa1b60be7f1b13879723ff994c -size 3664 +oid sha256:0f3a0cb5d9bae6725a1c527f3d9575aabf85d3edf63a28d9faa23f4f0b65e2d0 +size 7624 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Day_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Day_0_en.png index ee5c582240..58546b8522 100644 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:75de341f705bb22955f9399180519b65ad59c2e1917317d56e50ea4db78f35bc -size 12102 +oid sha256:30357bf18792db5ab20085010251170a724ffe8c00313facd04ee704e806af64 +size 10982 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Night_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Night_0_en.png index 52fd9b9693..fedead0fa8 100644 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:58b9491aaa5554b89d86c62a5c9c44975367538c6baa5562f8dc5768f76d8264 -size 8705 +oid sha256:4811667dec0f32accc5e2c8a5dd5c0b34017fcff8d1e0376ee7a4708426bca0f +size 9838 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Day_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Day_0_en.png index 38ad0e4b56..83302d6ba4 100644 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:326d59cf768b2dbd96eb7964d54c8eda509a5cd57c6e62087625e3314da0bb4d -size 13658 +oid sha256:16dee1dfe746cd40dac9fe8f0af3ecb42cd14bab5cc490917b589beed065ed1b +size 14686 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Night_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Night_0_en.png index 687e0d436a..4da2a98aca 100644 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d57df7110371c9224e232b707d6a1b10ce14afcb56c803a78220792f2a0d4cf2 -size 11354 +oid sha256:ef0dc4d53daeb986f378b6e4d85928b4b6729336c89cf21e642c88c53688a3ab +size 10292 diff --git a/tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Day_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Day_0_en.png new file mode 100644 index 0000000000..3cec94cb44 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Day_0_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1bfd26e506a4e1693d0d0720add60ab9aa2b01558e0d14c8294bedd5b42ca2fb +size 15005 diff --git a/tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Day_1_en.png b/tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Day_1_en.png new file mode 100644 index 0000000000..5d370f30d9 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Day_1_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5103803369870f9cd661f1b5cbbb70023cef586276fca80f010432596b8ecbc3 +size 15026 diff --git a/tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Day_2_en.png b/tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Day_2_en.png new file mode 100644 index 0000000000..a62a416966 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Day_2_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec16ff6ed3abbd4a04cf8d4b0664424e109736013868e790496afe5c7b106646 +size 14861 diff --git a/tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Night_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Night_0_en.png new file mode 100644 index 0000000000..8fe23cb9be --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Night_0_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7351236d535315198d7d6d8d63d36deb26360af1ff3ed6f148e7c811ee69056 +size 14852 diff --git a/tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Night_1_en.png b/tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Night_1_en.png new file mode 100644 index 0000000000..d679329fb8 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Night_1_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5bff0dd25d4ea06c23bc2fa8968892e8b07da65dfba57a61788d2955187b7c9c +size 14845 diff --git a/tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Night_2_en.png b/tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Night_2_en.png new file mode 100644 index 0000000000..ac90f5b949 --- /dev/null +++ b/tests/uitests/src/test/snapshots/images/libraries.mediaviewer.impl.fileviewer_FileViewerView_Night_2_en.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ffc62fd0e9b765cfe43193cf0dd443fcf7199330f4a3f9691f9627e423c3f64 +size 14774 From 267e48aa697bd8c5c280cffcf3ea76287ea77437 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 26 Aug 2026 13:48:11 +0200 Subject: [PATCH 48/97] Add instructions to let the CI record the screenshot if necessary. Also update instruction about PR size. --- AGENTS.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/AGENTS.md b/AGENTS.md index 917285ab30..a4a73ca965 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -50,9 +50,10 @@ PRs must meet these rules. - Title = changelog entry — descriptive, no "Fixes #…". - Leave description template for the developer. Redirect them to the [contributing etiquette](CONTRIBUTING.md#etiquette). - Screenshots/videos for visual changes. -- 500 additions max — split large changes. +- 500 additions max into production code. Test code can be larger — split large changes. - Commits need a title and description; no tiny or massive commits. - No history rewrites. +- When creating a pull request and if changes contain new or update(s) of the Composable Previews, add the label "Record-Screenshots" to the PR so that the CI will record the screenshots. --- From 94259962a07517722ce8e7ad47b1fc9d6526324a Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 26 Aug 2026 13:56:12 +0200 Subject: [PATCH 49/97] Setting version for the release 26.08.3 --- plugins/src/main/kotlin/Versions.kt | 2 +- tools/manifest/gplay/release/aaptDump.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/src/main/kotlin/Versions.kt b/plugins/src/main/kotlin/Versions.kt index 89ad4a63fc..3e4b4f5c7f 100644 --- a/plugins/src/main/kotlin/Versions.kt +++ b/plugins/src/main/kotlin/Versions.kt @@ -45,7 +45,7 @@ private const val versionMonth = 8 * Release number in the month. Value must be in [0,99]. * Do not update this value. it is updated by the release script. */ -private const val versionReleaseNumber = 2 +private const val versionReleaseNumber = 3 object Versions { /** diff --git a/tools/manifest/gplay/release/aaptDump.txt b/tools/manifest/gplay/release/aaptDump.txt index 7eae1a5a78..457a6ea1cc 100644 --- a/tools/manifest/gplay/release/aaptDump.txt +++ b/tools/manifest/gplay/release/aaptDump.txt @@ -1,4 +1,4 @@ -package: name='io.element.android.x' versionCode='202608020' versionName='26.08.2' platformBuildVersionName='17' platformBuildVersionCode='37' compileSdkVersion='37' compileSdkVersionCodename='17' +package: name='io.element.android.x' versionCode='202608030' versionName='26.08.3' platformBuildVersionName='17' platformBuildVersionCode='37' compileSdkVersion='37' compileSdkVersionCodename='17' sdkVersion:'24' targetSdkVersion:'37' uses-permission: name='android.permission.POST_NOTIFICATIONS' From cbc7de9982800b3da92992a965857be28f8dceae Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 26 Aug 2026 13:56:41 +0200 Subject: [PATCH 50/97] Adding fastlane file for version 26.08.3 --- fastlane/metadata/android/en-US/changelogs/202608030.txt | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 fastlane/metadata/android/en-US/changelogs/202608030.txt diff --git a/fastlane/metadata/android/en-US/changelogs/202608030.txt b/fastlane/metadata/android/en-US/changelogs/202608030.txt new file mode 100644 index 0000000000..a4b397f1bb --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/202608030.txt @@ -0,0 +1,2 @@ +Main changes in this version: bug fixes and improvements. +Full changelog: https://github.com/element-hq/element-x-android/releases \ No newline at end of file From 0e86de4e584811d5ea9755d52184cfd4e466e530 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 26 Aug 2026 15:35:00 +0200 Subject: [PATCH 51/97] Changelog for version 26.08.3 --- CHANGES.md | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) diff --git a/CHANGES.md b/CHANGES.md index db18e59251..a56dd4d1bb 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,3 +1,67 @@ +Changes in Element X v26.08.3 +============================= + + + +## What's Changed +### ✨ Features +* Let users enter their full Matrix user ID on the account provider screen by @jennaharris7 in https://github.com/element-hq/element-x-android/pull/7500 +* Enable user status feature and hide status text in the timeline by @bmarty in https://github.com/element-hq/element-x-android/pull/7517 +### 🐛 Bugfixes +* Fix cold start with a mobile deep link by @bmarty in https://github.com/element-hq/element-x-android/pull/7488 +* Make the account provider screen scrollable so its description is not clipped by the keyboard by @jennaharris7 in https://github.com/element-hq/element-x-android/pull/7521 +### 🧱 Build +* Update Gradle Wrapper from 9.7.0 to 9.7.1 by @ElementBot in https://github.com/element-hq/element-x-android/pull/7485 +* Fix flaky test in `DefaultVoiceMessageComposerPresenterTest` by @jmartinesp in https://github.com/element-hq/element-x-android/pull/7487 +* Fix warning about deprecated Gradle `keepRules.file` API by @jmartinesp in https://github.com/element-hq/element-x-android/pull/7498 +* Update Enterprise Copyright in idea settings, so that new files get an expected header. by @bmarty in https://github.com/element-hq/element-x-android/pull/7501 +* Remove workaround for Renovate. by @bmarty in https://github.com/element-hq/element-x-android/pull/7502 +### 🚧 In development 🚧 +* Make PIP react to camera orientation changes in the other participant's device by @jmartinesp in https://github.com/element-hq/element-x-android/pull/6951 +* Feature: global search by @jmartinesp in https://github.com/element-hq/element-x-android/pull/7410 +### Dependency upgrades +* Update dependency org.maplibre.gl:android-sdk to v13.5.0 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/7486 +* Update dependency androidx.webkit:webkit to v1.17.0 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/7484 +* Update dependency io.sentry:sentry-android to v8.53.0 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/7481 +* Update dependency io.element.android:element-call-embedded to v0.24.0 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/7474 +* Update roborazzi to v1.72.0 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/7489 +* Update metro to v1.4.2 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/7493 +* Update dependency com.squareup.okhttp3:okhttp-bom to v5.5.0 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/7512 +* Update dependency com.google.guava:guava to v33.7.0-android by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/7516 +* Update sdk to version 26.08.25 by @bmarty in https://github.com/element-hq/element-x-android/pull/7550 +### 💼 Element Pro +* Add `ClientEnterpriseHook` and `ClientBuilderEnterpriseHook` by @jmartinesp in https://github.com/element-hq/element-x-android/pull/7495 +* Remove dependency on enterprise module. by @bmarty in https://github.com/element-hq/element-x-android/pull/7505 +### Others +* Show the right image when opening one that has not finished sending by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7359 +* Move strings to the login module by @bmarty in https://github.com/element-hq/element-x-android/pull/7494 +* Allow empty problem description if the GitHub issue number is present for rageshakes by @bxdxnn in https://github.com/element-hq/element-x-android/pull/7497 +* Apply the system theme when switching back to it from a forced light or dark theme by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7453 +* Show dialog with reason when user clicks on a message with a failure by @bmarty in https://github.com/element-hq/element-x-android/pull/7490 +* Keep a focused timeline focused until the event has been rendered by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7463 +* Do not render in-chat key verification requests in the timeline by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7443 +* Share a file whose mime type is not one of the supported ones by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7435 +* Show reactions in the pinned messages list by @bxdxnn in https://github.com/element-hq/element-x-android/pull/6676 +* Send a concrete mime type for media shared with a wildcard one by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7449 +* Rename module and ensure that naming convention is followed by @bmarty in https://github.com/element-hq/element-x-android/pull/7514 +* Fix lint issue, ensure that PiP methods are not called on old devices not supporting them. by @bmarty in https://github.com/element-hq/element-x-android/pull/7515 +* Rename PreviewParameterProvider subclasses to the PreviewParam suffix by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7468 +* Update Ref. by @bmarty in https://github.com/element-hq/element-x-android/pull/7518 +* Remove the reference to the decommissioned OIDC playground by @sandhose in https://github.com/element-hq/element-x-android/pull/7519 +* Hide the encryption badge when key storage is set up on the server by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7447 +* Rename remaining events sealed interface by @bmarty in https://github.com/element-hq/element-x-android/pull/7533 +* Stop waiting on a verification request the other session never accepts by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7457 +* Point the proxy debugging doc at the method that builds the clients by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7543 +* Show the build date in the screenshot gallery footer by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7544 +* Run the database migrations again when a database is upgraded by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7570 +* Update fonts on the headings by @bmarty in https://github.com/element-hq/element-x-android/pull/7520 +* Add a "Push rules" entry in the developer options by @bmarty in https://github.com/element-hq/element-x-android/pull/7577 + +## New Contributors +* @sandhose made their first contribution in https://github.com/element-hq/element-x-android/pull/7519 + +**Full Changelog**: https://github.com/element-hq/element-x-android/compare/v26.08.2...v26.08.3 + Changes in Element X v26.08.2 ============================= From c5f70de9043831d15e595802864f02b3e5f05883 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 26 Aug 2026 17:26:23 +0200 Subject: [PATCH 52/97] Add releaseV2.sh, a release script automating the GitHub release releaseV2.sh is a copy of release.sh in which the GitHub CLI is mandatory and does what was previously done by hand: it finds and waits for the release.yml run, downloads and extracts its artifacts, creates the pre-release with its 6 assets and the generated release notes, and prepends those notes to CHANGES.md. It also compares the version code and version name of the signed artifacts to the expected values instead of asking the user to check them, and no longer needs ELEMENT_GITHUB_TOKEN, since the CLI uses its own credentials. release.sh is left untouched, so that the next release can be done with releaseV2.sh while keeping a way back if something goes wrong. The installation documentation is also fixed, as it referred to an asset name that does not exist anymore. Co-Authored-By: Claude Opus 5 (1M context) --- docs/install_from_github_release.md | 6 +- tools/release/releaseV2.sh | 541 ++++++++++++++++++++++++++++ 2 files changed, 544 insertions(+), 3 deletions(-) create mode 100755 tools/release/releaseV2.sh diff --git a/docs/install_from_github_release.md b/docs/install_from_github_release.md index 5ac27ff812..1fd963e953 100644 --- a/docs/install_from_github_release.md +++ b/docs/install_from_github_release.md @@ -64,16 +64,16 @@ brew install bundletool ### Steps 1. Open the GitHub release that you want to install from https://github.com/element-hq/element-x-android/releases -2. Download the asset `app-release-signed.aab` +2. Download the asset `app-gplay-release-signed.aab` 3. Navigate to the folder where you cloned the project and run the following command: ```bash -bundletool build-apks --bundle= --output=./tmp/elementx.apks \ +bundletool build-apks --bundle= --output=./tmp/elementx.apks \ --ks=./app/signature/debug.keystore --ks-pass=pass:android --ks-key-alias=androiddebugkey --key-pass=pass:android \ --overwrite ``` For instance: ```bash -bundletool build-apks --bundle=./tmp/Element/0.1.5/app-release-signed.aab --output=./tmp/elementx.apks \ +bundletool build-apks --bundle=./tmp/Element/26.08.3/app-gplay-release-signed.aab --output=./tmp/elementx.apks \ --ks=./app/signature/debug.keystore --ks-pass=pass:android --ks-key-alias=androiddebugkey --key-pass=pass:android \ --overwrite ``` diff --git a/tools/release/releaseV2.sh b/tools/release/releaseV2.sh new file mode 100755 index 0000000000..071d416d00 --- /dev/null +++ b/tools/release/releaseV2.sh @@ -0,0 +1,541 @@ +#!/usr/bin/env bash + +# Copyright (c) 2026 Element Creations Ltd. +# +# SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial. +# Please see LICENSE files in the repository root for full details. + +# do not exit when any command fails (issue with git flow) +set +e + +printf "\n================================================================================\n" +printf "| Welcome to the release script (V2)! |\n" +printf "================================================================================\n" + +printf "Checking environment...\n" +envError=0 + +# Check that bundletool is installed +if ! command -v bundletool &> /dev/null +then + printf "Fatal: bundletool is not installed. You can install it running \`brew install bundletool\`\n" + envError=1 +fi + +# Check that the GitHub CLI is installed. It is expected to be already authenticated, see `gh auth login`. +if ! command -v gh &> /dev/null +then + printf "Fatal: gh (the GitHub CLI) is not installed. You can install it running \`brew install gh\`\n" + envError=1 +fi + +# Path of the key store (it's a file) +keyStorePath="${ELEMENT_X_KEYSTORE_PATH}" +if [[ -z "${keyStorePath}" ]]; then + printf "Fatal: ELEMENT_X_KEYSTORE_PATH is not defined in the environment.\n" + envError=1 +fi +# Keystore password +keyStorePassword="${ELEMENT_X_KEYSTORE_PASSWORD}" +if [[ -z "${keyStorePassword}" ]]; then + printf "Fatal: ELEMENT_X_KEYSTORE_PASSWORD is not defined in the environment.\n" + envError=1 +fi +# Key password +keyPassword="${ELEMENT_X_KEY_PASSWORD}" +if [[ -z "${keyPassword}" ]]; then + printf "Fatal: ELEMENT_X_KEY_PASSWORD is not defined in the environment.\n" + envError=1 +fi +# Android home +androidHome="${ANDROID_HOME}" +if [[ -z "${androidHome}" ]]; then + printf "Fatal: ANDROID_HOME is not defined in the environment.\n" + envError=1 +fi +# @elementbot:matrix.org matrix token / Not mandatory +elementBotToken="${ELEMENT_BOT_MATRIX_TOKEN}" +if [[ -z "${elementBotToken}" ]]; then + printf "Warning: ELEMENT_BOT_MATRIX_TOKEN is not defined in the environment.\n" +fi + +if [ ${envError} == 1 ]; then + exit 1 +fi + +# Handle the result of a version check. ${checkError} must be set to 1 when a check has failed. +checkVersionResult() { + if [[ ${checkError} -ne 0 ]]; then + printf "\nThe check above has failed, this is not expected.\n" + read -r -p "Do you want to continue anyway (yes/no) default to no? " doContinue + doContinue=${doContinue:-no} + if [ "${doContinue}" != "yes" ]; then + exit 1 + fi + else + printf "The versions are correct.\n" + fi +} + +# Read minSdkVersion from file plugins/src/main/kotlin/Versions.kt +minSdkVersion=$(grep "MIN_SDK_FOSS =" ./plugins/src/main/kotlin/Versions.kt |cut -d '=' -f 2 |xargs) +# Read buildToolsVersion from file plugins/src/main/kotlin/Versions.kt +buildToolsVersion=$(grep "BUILD_TOOLS_VERSION =" ./plugins/src/main/kotlin/Versions.kt |cut -d '=' -f 2 |xargs) +buildToolsPath="${androidHome}/build-tools/${buildToolsVersion}" + +if [[ ! -d ${buildToolsPath} ]]; then + printf "Fatal: %s folder not found, ensure that you have installed the SDK version %s.\n" "${buildToolsPath}" "${buildToolsVersion}" + exit 1 +fi + +# Check if git flow is enabled +gitFlowDevelop=$(git config gitflow.branch.develop) +if [[ ${gitFlowDevelop} != "" ]] +then + printf "Git flow is initialized\n" +else + printf "Git flow is not initialized. Initializing...\n" + ./tools/gitflow/gitflow-init.sh +fi + +printf "OK\n" + +printf "\n================================================================================\n" +printf "Ensuring main and develop branches are up to date...\n" + +git checkout main +git pull +git checkout develop +git pull + +printf "\n================================================================================\n" +# Guessing version to propose a default version +versionsFile="./plugins/src/main/kotlin/Versions.kt" +# The version of the release must match the date of next monday, where the release is supposed to go live +# The command below gets the date of next monday +nextMondayDateCommand="date -v +1w -v -monday" +# Get release year on 2 digits +versionYearCandidate=$(${nextMondayDateCommand} +%y) +currentVersionMonth=$(grep "val versionMonth" ${versionsFile} | cut -d " " -f6) +# Get release month on 2 digits +versionMonthCandidate=$(${nextMondayDateCommand} +%m) +versionMonthCandidateNoLeadingZero=${versionMonthCandidate/#0/} +currentVersionReleaseNumber=$(grep "val versionReleaseNumber" ${versionsFile} | cut -d " " -f6) +# if the release month is the same as the current version, we increment the release number, else we reset it to 0 +if [[ ${currentVersionMonth} -eq ${versionMonthCandidateNoLeadingZero} ]]; then + versionReleaseNumberCandidate=$((currentVersionReleaseNumber + 1)) +else + versionReleaseNumberCandidate=0 +fi +versionCandidate="${versionYearCandidate}.${versionMonthCandidate}.${versionReleaseNumberCandidate}" + +read -r -p "Please enter the release version (example: ${versionCandidate}). Format must be 'YY.MM.x' or 'YY.MM.xy', with year and month matching next Monday. Just press enter if ${versionCandidate} is correct. " version +version=${version:-${versionCandidate}} + +# extract year, month and release number for future use +versionYear=$(echo "${version}" | cut -d "." -f1) +versionMonth=$(echo "${version}" | cut -d "." -f2) +versionMonthNoLeadingZero=${versionMonth/#0/} +versionReleaseNumber=$(echo "${version}" | cut -d "." -f3) + +printf "\n================================================================================\n" +printf "Starting the release %s\n" "${version}" +git flow release start "${version}" + +# Note: in case the release is already started and the script is started again, checkout the release branch again. +ret=$? +if [[ $ret -ne 0 ]]; then + printf "Mmh, it seems that the release is already started. I'm displaying the changes now:\n" + git diff --stat "release/${version}" origin/main + printf "Do you want to continue the release using its contents?\n\n" + read -r -p "Continue (yes/no) default to yes? " doContinue + doContinue=${doContinue:-yes} + if [ "${doContinue}" == "no" ]; then + printf "OK, exiting, you can start the release again with the command 'git flow release start %s'\n" "${version}" + exit 1 + fi + git checkout "release/${version}" +fi + +# Ensure version is OK +versionsFileBak="${versionsFile}.bak" +cp ${versionsFile} ${versionsFileBak} +sed "s/private const val versionYear = .*/private const val versionYear = ${versionYear}/" ${versionsFileBak} > ${versionsFile} +sed "s/private const val versionMonth = .*/private const val versionMonth = ${versionMonthNoLeadingZero}/" ${versionsFile} > ${versionsFileBak} +sed "s/private const val versionReleaseNumber = .*/private const val versionReleaseNumber = ${versionReleaseNumber}/" ${versionsFileBak} > ${versionsFile} +rm ${versionsFileBak} + +printf -v versionReleaseNumber2Digits "%02d" "${versionReleaseNumber}" +versionCode="20${versionYear}${versionMonth}${versionReleaseNumber2Digits}0" + +# Update the file aaptDump.txt with the new version +aaptDumpFile="./tools/manifest/gplay/release/aaptDump.txt" +sed "s/versionCode='[0-9]*'/versionCode='${versionCode}'/" ${aaptDumpFile} > ${aaptDumpFile}.bak +sed "s/versionName='[0-9]*\.[0-9]*\.[0-9]*'/versionName='${version}'/" ${aaptDumpFile}.bak > ${aaptDumpFile} +rm ${aaptDumpFile}.bak + +git commit -a -m "Setting version for the release ${version}" + +printf "\n================================================================================\n" +printf "Creating fastlane file...\n" +fastlaneFile="${versionCode}.txt" +fastlanePathFile="./fastlane/metadata/android/en-US/changelogs/${fastlaneFile}" +printf "Main changes in this version: bug fixes and improvements.\nFull changelog: https://github.com/element-hq/element-x-android/releases" > "${fastlanePathFile}" + +read -r -p "I have created the file ${fastlanePathFile}, please edit it and press enter to continue. " +git add "${fastlanePathFile}" +git commit -a -m "Adding fastlane file for version ${version}" + +printf "\n================================================================================\n" +printf "OK, finishing the release...\n" +git flow release finish "${version}" + +printf "\n================================================================================\n" +read -r -p "Done, push the branch 'main' and the new tag (yes/no) default to yes? " doPush +doPush=${doPush:-yes} + +if [ "${doPush}" == "yes" ]; then + printf "Pushing branch 'main' and tag 'v%s'...\n" "${version}" + git push origin main + git push origin "v${version}" +else + printf "Not pushing, do not forget to push manually!\n" +fi + +printf "\n================================================================================\n" +printf "Checking out develop...\n" +git checkout develop + +printf "\n================================================================================\n" +printf "Downloading the artifacts...\n" + +targetPath="./tmp/Element/${version}" +fdroidTargetPath="${targetPath}/fdroid" +gplayTargetPath="${targetPath}/gplay" + +releaseCommit=$(git rev-parse --verify --quiet "v${version}^{commit}") +if [[ -z "${releaseCommit}" ]]; then + # Without a commit, `gh run list` would return the latest run of the workflow, which may be another one. + printf "Fatal: the tag v%s cannot be resolved.\n" "${version}" + exit 1 +fi + +printf "Looking for the run of the workflow release.yml for the commit %s...\n" "${releaseCommit}" + +runId="" + +# The run can take a few seconds to appear after the push, so retry for a couple of minutes. +for _ in $(seq 1 12); do + runId=$(gh run list --repo element-hq/element-x-android --workflow release.yml --commit "${releaseCommit}" --limit 1 --json databaseId -q '.[0].databaseId' 2> /dev/null) + if [[ -n "${runId}" ]]; then + break + fi + printf "No run found yet, waiting...\n" + sleep 10 +done + +if [[ -z "${runId}" ]]; then + printf "Fatal: no run of the workflow release.yml found for the commit %s.\n" "${releaseCommit}" + exit 1 +fi + +printf "Found the run https://github.com/element-hq/element-x-android/actions/runs/%s\n" "${runId}" +printf "Waiting for the run to complete...\n" +gh run watch "${runId}" --repo element-hq/element-x-android --compact --exit-status + +ret=1 + +while [[ $ret -ne 0 ]]; do + gh run download "${runId}" --repo element-hq/element-x-android \ + --dir "${gplayTargetPath}" \ + --name elementx-app-gplay-bundle-unsigned + + ret=$? + if [[ $ret -eq 0 ]]; then + gh run download "${runId}" --repo element-hq/element-x-android \ + --dir "${fdroidTargetPath}" \ + --name elementx-app-fdroid-apks-unsigned + + ret=$? + fi + if [[ $ret -ne 0 ]]; then + read -r -p "Error while downloading the artifacts. You may want to fix the issue and retry. Retry (yes/no) default to yes? " doRetry + doRetry=${doRetry:-yes} + if [ "${doRetry}" == "no" ]; then + exit 1 + fi + fi +done + +printf "\n================================================================================\n" +printf "Signing the FDroid APKs...\n" + +cp "${fdroidTargetPath}"/app-fdroid-arm64-v8a-release.apk \ + "${fdroidTargetPath}"/app-fdroid-arm64-v8a-release-signed.apk +"${buildToolsPath}"/apksigner sign \ + -v \ + --alignment-preserved true \ + --ks "${keyStorePath}" \ + --ks-pass pass:"${keyStorePassword}" \ + --ks-key-alias elementx \ + --key-pass pass:"${keyPassword}" \ + --min-sdk-version "${minSdkVersion}" \ + "${fdroidTargetPath}"/app-fdroid-arm64-v8a-release-signed.apk + +cp "${fdroidTargetPath}"/app-fdroid-armeabi-v7a-release.apk \ + "${fdroidTargetPath}"/app-fdroid-armeabi-v7a-release-signed.apk +"${buildToolsPath}"/apksigner sign \ + -v \ + --alignment-preserved true \ + --ks "${keyStorePath}" \ + --ks-pass pass:"${keyStorePassword}" \ + --ks-key-alias elementx \ + --key-pass pass:"${keyPassword}" \ + --min-sdk-version "${minSdkVersion}" \ + "${fdroidTargetPath}"/app-fdroid-armeabi-v7a-release-signed.apk + +cp "${fdroidTargetPath}"/app-fdroid-x86-release.apk \ + "${fdroidTargetPath}"/app-fdroid-x86-release-signed.apk +"${buildToolsPath}"/apksigner sign \ + -v \ + --alignment-preserved true \ + --ks "${keyStorePath}" \ + --ks-pass pass:"${keyStorePassword}" \ + --ks-key-alias elementx \ + --key-pass pass:"${keyPassword}" \ + --min-sdk-version "${minSdkVersion}" \ + "${fdroidTargetPath}"/app-fdroid-x86-release-signed.apk + +cp "${fdroidTargetPath}"/app-fdroid-x86_64-release.apk \ + "${fdroidTargetPath}"/app-fdroid-x86_64-release-signed.apk +"${buildToolsPath}"/apksigner sign \ + -v \ + --alignment-preserved true \ + --ks "${keyStorePath}" \ + --ks-pass pass:"${keyStorePassword}" \ + --ks-key-alias elementx \ + --key-pass pass:"${keyPassword}" \ + --min-sdk-version "${minSdkVersion}" \ + "${fdroidTargetPath}"/app-fdroid-x86_64-release-signed.apk + +printf "\n================================================================================\n" +printf "Checking the signed APKs...\n" + +checkError=0 + +# Each APK gets the version code of the app bundle, plus the code of its ABI. +# Must be kept in sync with the abiVersionCodes map in app/build.gradle.kts. +fdroidAbis="armeabi-v7a:1 arm64-v8a:2 x86:3 x86_64:4" + +for abiEntry in ${fdroidAbis}; do + abi="${abiEntry%%:*}" + abiCode="${abiEntry##*:}" + expectedApkVersionCode=$((versionCode + abiCode)) + apkFile="${fdroidTargetPath}/app-fdroid-${abi}-release-signed.apk" + apkBadging=$("${buildToolsPath}"/aapt dump badging "${apkFile}" | grep -m 1 "^package") + apkVersionCode=$(printf "%s" "${apkBadging}" | sed -n "s/.*versionCode='\([0-9]*\)'.*/\1/p") + apkVersionName=$(printf "%s" "${apkBadging}" | sed -n "s/.*versionName='\([^']*\)'.*/\1/p") + printf "File app-fdroid-%s-release-signed.apk: version code %s, version name %s\n" "${abi}" "${apkVersionCode}" "${apkVersionName}" + if [[ "${apkVersionCode}" != "${expectedApkVersionCode}" ]]; then + printf "Warning: was expecting the version code %s, but got %s.\n" "${expectedApkVersionCode}" "${apkVersionCode}" + checkError=1 + fi + if [[ "${apkVersionName}" != "${version}" ]]; then + printf "Warning: was expecting the version name %s, but got %s.\n" "${version}" "${apkVersionName}" + checkError=1 + fi +done + +checkVersionResult + +printf "\n================================================================================\n" +printf "The APKs in %s have been signed!\n" "${fdroidTargetPath}" + +unsignedBundlePath="${gplayTargetPath}/app-gplay-release.aab" +signedBundlePath="${gplayTargetPath}/app-gplay-release-signed.aab" +# The universal APK is downloaded manually from the GooglePlay console, and is named after the version code. +universalApkPath="${gplayTargetPath}/${versionCode}.apk" + +printf "\n================================================================================\n" +printf "Signing file %s with build-tools version %s for min SDK version %s...\n" "${unsignedBundlePath}" "${buildToolsVersion}" "${minSdkVersion}" + +cp "${unsignedBundlePath}" "${signedBundlePath}" + +"${buildToolsPath}"/apksigner sign \ + -v \ + --ks "${keyStorePath}" \ + --ks-pass pass:"${keyStorePassword}" \ + --ks-key-alias elementx \ + --key-pass pass:"${keyPassword}" \ + --min-sdk-version "${minSdkVersion}" \ + "${signedBundlePath}" + +printf "\n================================================================================\n" +printf "Checking the signed app bundle...\n" + +checkError=0 + +bundleVersionCode=$(bundletool dump manifest --bundle="${signedBundlePath}" --xpath=/manifest/@android:versionCode) +bundleVersionName=$(bundletool dump manifest --bundle="${signedBundlePath}" --xpath=/manifest/@android:versionName) +printf "File %s: version code %s, version name %s\n" "$(basename "${signedBundlePath}")" "${bundleVersionCode}" "${bundleVersionName}" +if [[ "${bundleVersionCode}" != "${versionCode}" ]]; then + printf "Warning: was expecting the version code %s, but got %s.\n" "${versionCode}" "${bundleVersionCode}" + checkError=1 +fi +if [[ "${bundleVersionName}" != "${version}" ]]; then + printf "Warning: was expecting the version name %s, but got %s.\n" "${version}" "${bundleVersionName}" + checkError=1 +fi + +checkVersionResult + +printf "\n================================================================================\n" +printf "The file %s has been signed and can be uploaded to the PlayStore!\n" "${signedBundlePath}" + +printf "\n================================================================================\n" +read -r -p "Do you want to build the APKs from the app bundle? You need to do this step if you want to install the application to your device. (yes/no) default to no " doBuildApks +doBuildApks=${doBuildApks:-no} + +if [ "${doBuildApks}" == "yes" ]; then + printf "Building apks...\n" + bundletool build-apks --bundle="${signedBundlePath}" --output="${gplayTargetPath}"/elementx.apks \ + --ks=./app/signature/debug.keystore --ks-pass=pass:android --ks-key-alias=androiddebugkey --key-pass=pass:android \ + --overwrite + + read -r -p "Do you want to install the application to your device? Make sure there is one (and only one!) connected device first. (yes/no) default to yes " doDeploy + doDeploy=${doDeploy:-yes} + if [ "${doDeploy}" == "yes" ]; then + printf "Installing apk for your device...\n" + bundletool install-apks --apks="${gplayTargetPath}"/elementx.apks + read -r -p "Please run the application on your phone to check that the upgrade went well. Press enter to continue. " + else + printf "APK will not be deployed!\n" + fi +else + printf "APKs will not be generated!\n" +fi + +printf "\n================================================================================\n" +printf "Create the open testing release on GooglePlay.\n" + +printf "On GooglePlay console, go the the open testing section and click on \"Create new release\" button, then:\n" +printf " - upload the file %s.\n" "${signedBundlePath}" +printf " - copy the release note from the fastlane file.\n" +printf " - download the universal APK, to be able to provide it to the GitHub release: click on the right arrow next to the \"App bundle\", then click on the \"Download\" tab, and download the \"Signed, universal APK\". Save it, without renaming it, to the folder %s. The expected final path is %s\n" "${gplayTargetPath}" "${universalApkPath}" +printf " - submit the release.\n" +read -r -p "Press enter to continue. " + +printf "You can then go to \"Publishing overview\" and send the new release for a review by Google.\n" +read -r -p "Press enter to continue. " + +printf "\n================================================================================\n" +printf "Creating the release on GitHub.\n" + +releaseAssets=( + "${signedBundlePath}" + "${universalApkPath}" + "${fdroidTargetPath}/app-fdroid-arm64-v8a-release-signed.apk" + "${fdroidTargetPath}/app-fdroid-armeabi-v7a-release-signed.apk" + "${fdroidTargetPath}/app-fdroid-x86-release-signed.apk" + "${fdroidTargetPath}/app-fdroid-x86_64-release-signed.apk" +) + +missingAsset=0 + +for releaseAsset in "${releaseAssets[@]}"; do + if [[ ! -f "${releaseAsset}" ]]; then + printf "Error: the file %s does not exist.\n" "${releaseAsset}" + missingAsset=1 + fi +done + +if [[ ${missingAsset} -ne 0 ]]; then + printf "Fatal: some files are missing, cannot create the GitHub release.\n" + exit 1 +fi + +printf "Creating the pre-release v%s and uploading the %d files, this can take a while...\n" "${version}" "${#releaseAssets[@]}" +gh release create "v${version}" \ + --repo element-hq/element-x-android \ + --title "Element X Android v${version}" \ + --generate-notes \ + --prerelease \ + --verify-tag \ + "${releaseAssets[@]}" + +if [[ $? -ne 0 ]]; then + printf "Fatal: error while creating the GitHub release.\n" + exit 1 +fi + +printf "The pre-release has been created: https://github.com/element-hq/element-x-android/releases/tag/v%s\n" "${version}" +printf "Please check the generated release notes, and optionally reorder items and fix typos.\n" +read -r -p "Press enter to continue. " + +printf "\n================================================================================\n" +printf "Update the project release notes:\n\n" + +printf "Getting the release notes from GitHub...\n" +releaseNotes=$(gh release view "v${version}" --repo element-hq/element-x-android --json body -q .body) + +if [[ $? -ne 0 || -z "${releaseNotes}" ]]; then + printf "Fatal: error while getting the release notes from GitHub.\n" + exit 1 +fi + +# GitHub returns the release notes with CRLF line endings, remove the CR. +releaseNotes="${releaseNotes//$'\r'/}" +changesTitle="Changes in Element X v${version}" +# Underline the title with as many '=' as there are characters in the title. +changesUnderline="${changesTitle//?/=}" +changesFile="./CHANGES.md" +changesFileBak="${changesFile}.bak" +mv "${changesFile}" "${changesFileBak}" +{ + printf "%s\n%s\n\n" "${changesTitle}" "${changesUnderline}" + printf "%s\n\n" "${releaseNotes}" + cat "${changesFileBak}" +} > "${changesFile}" +rm "${changesFileBak}" +printf "The file CHANGES.md has been updated.\n" +read -r -p "Please check the change and press enter to commit it. " + +printf "\n================================================================================\n" +printf "Committing...\n" +git commit -a -m "Changelog for version ${version}" + +printf "\n================================================================================\n" +read -r -p "Done, push the branch 'develop' (yes/no) default to yes? (A rebase may be necessary in case develop got new commits) " doPush +doPush=${doPush:-yes} + +if [ "${doPush}" == "yes" ]; then + printf "Pushing branch 'develop'...\n" + git push origin develop +else + printf "Not pushing, do not forget to push manually!\n" +fi + +printf "\n================================================================================\n" +printf "Message for the Android internal room:\n\n" +message="@room Element X Android ${version} is ready to be tested. You can get it from https://github.com/element-hq/element-x-android/releases/tag/v${version}. You can install the universal APK. If you want to install the application from the app bundle, you can follow instructions [here](https://github.com/element-hq/element-x-android/blob/develop/docs/install_from_github_release.md). Please report any feedback. Thanks!" +printf "%s\n\n" "${message}" + +if [[ -z "${elementBotToken}" ]]; then + read -r -p "ELEMENT_BOT_MATRIX_TOKEN is not defined in the environment. Cannot send the message for you. Please send it manually, and press enter to continue. " +else + read -r -p "Send this message to the room (yes/no) default to yes? " doSend + doSend=${doSend:-yes} + if [ "${doSend}" == "yes" ]; then + printf "Sending message...\n" + transactionId=$(openssl rand -hex 16) + # Element Android internal + matrixRoomId="!LiSLXinTDCsepePiYW:matrix.org" + curl -X PUT --data "{\"msgtype\":\"m.text\",\"body\":\"${message}\"}" -H "Authorization: Bearer ${elementBotToken}" https://matrix-client.matrix.org/_matrix/client/r0/rooms/${matrixRoomId}/send/m.room.message/\$local."${transactionId}" + else + printf "Message not sent, please send it manually!\n" + fi +fi + +printf "\n================================================================================\n" +printf "Congratulation! Kudos for using this script! Have a nice day!\n" +printf "================================================================================\n" From 3758aac6d3c64e8b61c11da1704f6a8135e12c4c Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Thu, 27 Aug 2026 08:52:44 +0200 Subject: [PATCH 53/97] Do not build the enterprise build, it's built elsewhere. --- .github/workflows/release.yml | 38 ----------------------------------- 1 file changed, 38 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index b9d8be16c9..a9cc829697 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -63,44 +63,6 @@ jobs: path: | app/build/outputs/bundle/gplayRelease/app-gplay-release.aab - enterprise: - name: Create App Bundle Enterprise - runs-on: ubuntu-latest - if: ${{ github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == 'element-hq/element-x-android' }} - concurrency: - group: ${{ format('build-release-main-enterprise-{0}', github.sha) }} - cancel-in-progress: true - steps: - - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - with: - persist-credentials: false - - name: Add SSH private keys for submodule repositories - uses: webfactory/ssh-agent@e83874834305fe9a4a2997156cb26c5de65a8555 # v0.10.0 - if: ${{ github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == 'element-hq/element-x-android' }} - with: - ssh-private-key: ${{ secrets.ELEMENT_ENTERPRISE_DEPLOY_KEY }} - - name: Clone submodules - run: git submodule update --init --recursive - - name: Use JDK 21 - uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5.7.0 - with: - distribution: 'temurin' # See 'Supported distributions' for available options - java-version: '21' - - name: Configure gradle - uses: gradle/actions/setup-gradle@9c971963bec38e04b3d30dcc455b5382be2fdbfb # v6.3.0 - - name: Create Enterprise app bundle - env: - ELEMENT_ANDROID_MAPTILER_API_KEY: ${{ secrets.MAPTILER_KEY }} - ELEMENT_ANDROID_MAPTILER_LIGHT_MAP_ID: ${{ secrets.MAPTILER_LIGHT_MAP_ID }} - ELEMENT_ANDROID_MAPTILER_DARK_MAP_ID: ${{ secrets.MAPTILER_DARK_MAP_ID }} - run: ./gradlew bundleGplayRelease $CI_GRADLE_ARG_PROPERTIES - - name: Upload bundle as artifact - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 - with: - name: elementx-enterprise-app-gplay-bundle-unsigned - path: | - app/build/outputs/bundle/gplayRelease/app-gplay-release.aab - fdroid: name: Create APKs (FDroid) runs-on: ubuntu-latest From 6fbccbc8972d660282b7540167858e436bbe6c54 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Thu, 27 Aug 2026 12:03:32 +0200 Subject: [PATCH 54/97] Update submodule ref. --- enterprise | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/enterprise b/enterprise index e633a343b1..53750903f2 160000 --- a/enterprise +++ b/enterprise @@ -1 +1 @@ -Subproject commit e633a343b12088b1fe3fd6b27ec319c1f7f2931c +Subproject commit 53750903f229a410ec4dded2bb6357431a55662e From 2f3d197060ef7d83848fe31f4e7620479d78abae Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Thu, 27 Aug 2026 14:20:36 +0200 Subject: [PATCH 55/97] Setting version for the release 26.08.4 --- plugins/src/main/kotlin/Versions.kt | 2 +- tools/manifest/gplay/release/aaptDump.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/src/main/kotlin/Versions.kt b/plugins/src/main/kotlin/Versions.kt index 3e4b4f5c7f..0c2885aaa1 100644 --- a/plugins/src/main/kotlin/Versions.kt +++ b/plugins/src/main/kotlin/Versions.kt @@ -45,7 +45,7 @@ private const val versionMonth = 8 * Release number in the month. Value must be in [0,99]. * Do not update this value. it is updated by the release script. */ -private const val versionReleaseNumber = 3 +private const val versionReleaseNumber = 4 object Versions { /** diff --git a/tools/manifest/gplay/release/aaptDump.txt b/tools/manifest/gplay/release/aaptDump.txt index 457a6ea1cc..ff8cec3036 100644 --- a/tools/manifest/gplay/release/aaptDump.txt +++ b/tools/manifest/gplay/release/aaptDump.txt @@ -1,4 +1,4 @@ -package: name='io.element.android.x' versionCode='202608030' versionName='26.08.3' platformBuildVersionName='17' platformBuildVersionCode='37' compileSdkVersion='37' compileSdkVersionCodename='17' +package: name='io.element.android.x' versionCode='202608040' versionName='26.08.4' platformBuildVersionName='17' platformBuildVersionCode='37' compileSdkVersion='37' compileSdkVersionCodename='17' sdkVersion:'24' targetSdkVersion:'37' uses-permission: name='android.permission.POST_NOTIFICATIONS' From 383519aff5b13597955b62470218de21007ad171 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Thu, 27 Aug 2026 14:21:17 +0200 Subject: [PATCH 56/97] Adding fastlane file for version 26.08.4 --- fastlane/metadata/android/en-US/changelogs/202608040.txt | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 fastlane/metadata/android/en-US/changelogs/202608040.txt diff --git a/fastlane/metadata/android/en-US/changelogs/202608040.txt b/fastlane/metadata/android/en-US/changelogs/202608040.txt new file mode 100644 index 0000000000..a4b397f1bb --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/202608040.txt @@ -0,0 +1,2 @@ +Main changes in this version: bug fixes and improvements. +Full changelog: https://github.com/element-hq/element-x-android/releases \ No newline at end of file From 4996819812cee98a995123734c2ffc2ba1c0cf1b Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Thu, 27 Aug 2026 14:53:48 +0200 Subject: [PATCH 57/97] Changelog for version 26.08.4 --- CHANGES.md | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/CHANGES.md b/CHANGES.md index a56dd4d1bb..5f4be5d6eb 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,3 +1,23 @@ +Changes in Element X v26.08.4 +============================= + + + +## What's Changed +### 🧱 Build +* Add releaseV2.sh, a release script automating the GitHub release by @bmarty in https://github.com/element-hq/element-x-android/pull/7579 +* Update submodule ref. by @bmarty in https://github.com/element-hq/element-x-android/pull/7582 +### Others +* Keep the formatting of a caption that is being edited by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7572 +* Say when the server cannot be reached instead of showing nothing by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7567 +* Keep saving files to Downloads once 32 files share the same name by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7344 +* Fix removed messages hiding its thread on deletion by @bxdxnn in https://github.com/element-hq/element-x-android/pull/7480 +* Drop the sender's name from the room list preview of two-person rooms by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7562 +* Document how the Element Call base URL developer option is used by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7546 + + +**Full Changelog**: https://github.com/element-hq/element-x-android/compare/v26.08.3...v26.08.4 + Changes in Element X v26.08.3 ============================= From 8645260d4691b5ceef6efb8417201a78e4b3df9d Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Thu, 27 Aug 2026 14:58:39 +0200 Subject: [PATCH 58/97] Do not open the editor when finishing the release `git flow release finish` opened the editor three times, and the content was never edited: twice for the merge commits, where the message generated by git is always kept, and once for the message of the annotated tag, where a placeholder was typed by hand. The last tags carry the message "tag" for that reason. GIT_MERGE_AUTOEDIT=no keeps the merge messages git already generates, and -m provides the tag message. git flow appends the tag name to that message, so the tag of the next release will read "Release v26.09.0". Co-Authored-By: Claude Opus 5 (1M context) --- tools/release/releaseV2.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tools/release/releaseV2.sh b/tools/release/releaseV2.sh index 071d416d00..cef4b7e6b0 100755 --- a/tools/release/releaseV2.sh +++ b/tools/release/releaseV2.sh @@ -188,7 +188,10 @@ git commit -a -m "Adding fastlane file for version ${version}" printf "\n================================================================================\n" printf "OK, finishing the release...\n" -git flow release finish "${version}" +# GIT_MERGE_AUTOEDIT avoids opening the editor for the 2 merge commits, whose default message is +# always used, and -m provides the message of the annotated tag. git flow appends the tag name to +# it, so the tag message ends up being "Release v${version}". +GIT_MERGE_AUTOEDIT=no git flow release finish -m "Release" "${version}" printf "\n================================================================================\n" read -r -p "Done, push the branch 'main' and the new tag (yes/no) default to yes? " doPush From 586ae00cda27725314b51a336d06c142426a6ef8 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Thu, 27 Aug 2026 15:54:43 +0200 Subject: [PATCH 59/97] Ensure that noisy notifications are still noisy when content is hidden when a PIN code is protecting the application. Closes #7575 --- .../test/notification/NotificationData.kt | 3 +- .../DefaultNotifiableEventResolver.kt | 1 + .../DefaultNotificationDrawerManager.kt | 7 + .../FallbackNotificationFactory.kt | 2 + .../NotificationResultProcessor.kt | 1 + .../factories/NotificationCreator.kt | 2 +- .../model/FallbackNotifiableEvent.kt | 1 + .../DefaultNotifiableEventResolverTest.kt | 35 +++++ .../DefaultNotificationDrawerManagerTest.kt | 143 +++++++++++++++++- .../DefaultNotificationResultProcessorTest.kt | 36 +++++ .../FallbackNotificationFactoryTest.kt | 58 +++++++ .../DefaultNotificationCreatorTest.kt | 55 ++++++- .../fixtures/NotifiableEventFixture.kt | 33 ++-- 13 files changed, 362 insertions(+), 15 deletions(-) create mode 100644 libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/FallbackNotificationFactoryTest.kt diff --git a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/notification/NotificationData.kt b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/notification/NotificationData.kt index 803c9d8f42..6e57100781 100644 --- a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/notification/NotificationData.kt +++ b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/notification/NotificationData.kt @@ -30,6 +30,7 @@ fun aNotificationData( senderIsNameAmbiguous: Boolean = false, roomDisplayName: String? = A_ROOM_NAME, roomJoinRule: JoinRule? = null, + isNoisy: Boolean = false, ): NotificationData { return NotificationData( sessionId = A_SESSION_ID, @@ -45,7 +46,7 @@ fun aNotificationData( isDm = false, isSpace = isSpace, isEncrypted = false, - isNoisy = false, + isNoisy = isNoisy, timestamp = timestamp, content = content, hasMention = hasMention, 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 fdffad3049..e22ae1f7d1 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 @@ -298,6 +298,7 @@ class DefaultNotifiableEventResolver( roomId = roomId, eventId = eventId, cause = "Unable to decrypt event content", + noisy = isNoisy, ) ResolvedPushEvent.Event(fallbackNotifiableEvent) } diff --git a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotificationDrawerManager.kt b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotificationDrawerManager.kt index b6d15dac4e..6834f404ed 100644 --- a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotificationDrawerManager.kt +++ b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotificationDrawerManager.kt @@ -274,6 +274,12 @@ private fun NotifiableEvent.toFallbackNotifiableEvent(): FallbackNotifiableEvent is FallbackNotifiableEvent -> timestamp is NotifiableRingingCallEvent -> return null } + val noisy = when (this) { + is NotifiableMessageEvent -> noisy + is InviteNotifiableEvent -> noisy + is SimpleNotifiableEvent -> noisy + is FallbackNotifiableEvent -> noisy + } return FallbackNotifiableEvent( sessionId = sessionId, roomId = roomId, @@ -283,6 +289,7 @@ private fun NotifiableEvent.toFallbackNotifiableEvent(): FallbackNotifiableEvent canBeReplaced = false, isRedacted = false, isUpdated = false, + noisy = noisy, timestamp = timestamp, cause = null, ) 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 970f19fd45..d2083f7333 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( roomId: RoomId, eventId: EventId, cause: String?, + noisy: Boolean, ): FallbackNotifiableEvent = FallbackNotifiableEvent( sessionId = sessionId, roomId = roomId, @@ -32,6 +33,7 @@ class FallbackNotificationFactory( canBeReplaced = true, isRedacted = false, isUpdated = false, + noisy = noisy, timestamp = clock.epochMillis(), description = "", cause = cause, diff --git a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/NotificationResultProcessor.kt b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/NotificationResultProcessor.kt index a97937f5d0..88ba6c5ff9 100644 --- a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/NotificationResultProcessor.kt +++ b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/NotificationResultProcessor.kt @@ -170,6 +170,7 @@ class DefaultNotificationResultProcessor( roomId = RoomId(request.roomId), eventId = EventId(request.eventId), cause = exception.message, + noisy = false, ) ) } diff --git a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/factories/NotificationCreator.kt b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/factories/NotificationCreator.kt index afbbe4af4f..26412abebc 100755 --- a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/factories/NotificationCreator.kt +++ b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/notifications/factories/NotificationCreator.kt @@ -317,7 +317,7 @@ class DefaultNotificationCreator( val fallbackNotifiableEvent = fallbackNotifiableEvents.first() val channelId = notificationChannels.getChannelIdForMessage( sessionId = fallbackNotifiableEvent.sessionId, - noisy = false, + noisy = fallbackNotifiableEvents.any { it.noisy }, ) val existingCounter = existingNotification ?.extras 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 97f66face0..3b3210a580 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,6 +25,7 @@ data class FallbackNotifiableEvent( override val canBeReplaced: Boolean, override val isRedacted: Boolean, override val isUpdated: Boolean, + val noisy: Boolean, val timestamp: Long, val cause: String?, ) : NotifiableEvent 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 24e88e72d2..5918329c40 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 @@ -712,6 +712,41 @@ class DefaultNotifiableEventResolverTest : RobolectricTest() { canBeReplaced = true, isRedacted = false, isUpdated = false, + noisy = false, + timestamp = A_FAKE_TIMESTAMP, + cause = "Unable to decrypt event content", + ) + ) + assertThat(result.getEvent(request)).isEqualTo(Result.success(expectedResult)) + } + + @Test + fun `resolve RoomEncrypted noisy`() = runTest { + val sut = createDefaultNotifiableEventResolver( + notificationResult = Result.success( + mapOf( + AN_EVENT_ID to Result.success( + aNotificationData( + content = NotificationContent.MessageLike.RoomEncrypted, + isNoisy = true, + ) + ) + ) + ) + ) + val request = aPushRequest(A_SESSION_ID, A_ROOM_ID, AN_EVENT_ID, "firebase") + val result = sut.resolveEvents(A_SESSION_ID, listOf(request)) + val expectedResult = ResolvedPushEvent.Event( + FallbackNotifiableEvent( + sessionId = A_SESSION_ID, + roomId = A_ROOM_ID, + eventId = AN_EVENT_ID, + editedEventId = null, + description = "", + canBeReplaced = true, + isRedacted = false, + isUpdated = false, + noisy = true, timestamp = A_FAKE_TIMESTAMP, cause = "Unable to decrypt event content", ) diff --git a/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotificationDrawerManagerTest.kt b/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotificationDrawerManagerTest.kt index 4e2685e63a..cdc6a01fad 100644 --- a/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotificationDrawerManagerTest.kt +++ b/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotificationDrawerManagerTest.kt @@ -15,28 +15,35 @@ import io.element.android.features.enterprise.api.EnterpriseService import io.element.android.features.enterprise.test.FakeEnterpriseService import io.element.android.features.lockscreen.api.LockScreenService import io.element.android.features.lockscreen.test.FakeLockScreenService +import io.element.android.libraries.matrix.api.core.EventId import io.element.android.libraries.matrix.test.AN_EVENT_ID +import io.element.android.libraries.matrix.test.AN_EVENT_ID_2 import io.element.android.libraries.matrix.test.A_ROOM_ID import io.element.android.libraries.matrix.test.A_ROOM_ID_2 import io.element.android.libraries.matrix.test.A_SESSION_ID import io.element.android.libraries.matrix.test.A_SESSION_ID_2 import io.element.android.libraries.matrix.test.A_THREAD_ID import io.element.android.libraries.matrix.test.A_THREAD_ID_2 +import io.element.android.libraries.matrix.test.A_TIMESTAMP import io.element.android.libraries.matrix.test.FakeMatrixClient import io.element.android.libraries.matrix.test.FakeMatrixClientProvider import io.element.android.libraries.matrix.ui.components.aMatrixUser import io.element.android.libraries.matrix.ui.media.test.FakeImageLoaderHolder import io.element.android.libraries.push.api.notifications.NotificationIdProvider +import io.element.android.libraries.push.impl.notifications.factories.NotificationAccountParams +import io.element.android.libraries.push.impl.notifications.factories.NotificationCreator import io.element.android.libraries.push.impl.notifications.factories.aNotificationAccountParams import io.element.android.libraries.push.impl.notifications.fake.FakeActiveNotificationsProvider import io.element.android.libraries.push.impl.notifications.fake.FakeNotificationCreator import io.element.android.libraries.push.impl.notifications.fake.FakeNotificationDisplayer import io.element.android.libraries.push.impl.notifications.fake.FakeRoomGroupMessageCreator import io.element.android.libraries.push.impl.notifications.fake.FakeSummaryGroupMessageCreator +import io.element.android.libraries.push.impl.notifications.fixtures.A_NOTIFICATION import io.element.android.libraries.push.impl.notifications.fixtures.aFallbackNotifiableEvent import io.element.android.libraries.push.impl.notifications.fixtures.aNotifiableMessageEvent import io.element.android.libraries.push.impl.notifications.fixtures.aSimpleNotifiableEvent import io.element.android.libraries.push.impl.notifications.fixtures.anInviteNotifiableEvent +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.sessionstorage.api.SessionStore import io.element.android.libraries.sessionstorage.api.observer.SessionObserver @@ -48,6 +55,8 @@ import io.element.android.services.appnavstate.api.AppNavigationStateService import io.element.android.services.appnavstate.test.FakeAppNavigationStateService import io.element.android.services.appnavstate.test.aNavigationState import io.element.android.services.appnavstate.test.anAppNavigationState +import io.element.android.services.toolbox.test.systemclock.A_FAKE_TIMESTAMP +import io.element.android.tests.testutils.lambda.LambdaThreeParamsRecorder import io.element.android.tests.testutils.lambda.any import io.element.android.tests.testutils.lambda.lambdaRecorder import io.element.android.tests.testutils.lambda.value @@ -472,6 +481,137 @@ class DefaultNotificationDrawerManagerTest { extraInvocationsForNotificationSummary = 1, ) + @Test + fun `when the app is locked, a noisy message event produces a noisy fallback notification`() = testAppLockedNotifiableEventReceived( + notifiableEvent = aNotifiableMessageEvent(noisy = true), + expectedFallbackEvent = anExpectedFallbackNotifiableEvent(noisy = true, timestamp = A_TIMESTAMP), + ) + + @Test + fun `when the app is locked, a silent message event produces a silent fallback notification`() = testAppLockedNotifiableEventReceived( + notifiableEvent = aNotifiableMessageEvent(noisy = false), + expectedFallbackEvent = anExpectedFallbackNotifiableEvent(noisy = false, timestamp = A_TIMESTAMP), + ) + + @Test + fun `when the app is locked, a noisy invite event produces a noisy fallback notification`() = testAppLockedNotifiableEventReceived( + notifiableEvent = anInviteNotifiableEvent(noisy = true), + expectedFallbackEvent = anExpectedFallbackNotifiableEvent(noisy = true, timestamp = 0), + ) + + @Test + fun `when the app is locked, a silent invite event produces a silent fallback notification`() = testAppLockedNotifiableEventReceived( + notifiableEvent = anInviteNotifiableEvent(noisy = false), + expectedFallbackEvent = anExpectedFallbackNotifiableEvent(noisy = false, timestamp = 0), + ) + + @Test + fun `when the app is locked, a noisy simple event produces a noisy fallback notification`() = testAppLockedNotifiableEventReceived( + notifiableEvent = aSimpleNotifiableEvent(noisy = true), + expectedFallbackEvent = anExpectedFallbackNotifiableEvent(noisy = true, timestamp = 0), + ) + + @Test + fun `when the app is locked, a silent simple event produces a silent fallback notification`() = testAppLockedNotifiableEventReceived( + notifiableEvent = aSimpleNotifiableEvent(noisy = false), + expectedFallbackEvent = anExpectedFallbackNotifiableEvent(noisy = false, timestamp = 0), + ) + + @Test + fun `when the app is locked, a noisy fallback event stays noisy`() = testAppLockedNotifiableEventReceived( + notifiableEvent = aFallbackNotifiableEvent(noisy = true), + expectedFallbackEvent = anExpectedFallbackNotifiableEvent(noisy = true, timestamp = A_FAKE_TIMESTAMP), + ) + + @Test + fun `when the app is locked, a silent fallback event stays silent`() = testAppLockedNotifiableEventReceived( + notifiableEvent = aFallbackNotifiableEvent(noisy = false), + expectedFallbackEvent = anExpectedFallbackNotifiableEvent(noisy = false, timestamp = A_FAKE_TIMESTAMP), + ) + + @Test + fun `when the app is locked, all the events are grouped into a single fallback notification`() = runTest { + val createFallbackNotificationResult = aCreateFallbackNotificationRecorder() + val sut = createAppLockedNotificationDrawerManager(createFallbackNotificationResult) + sut.onNotifiableEventsReceived( + listOf( + aNotifiableMessageEvent(noisy = false), + aNotifiableMessageEvent(eventId = AN_EVENT_ID_2, noisy = true), + ) + ) + createFallbackNotificationResult.assertions() + .isCalledOnce() + .with( + value(null), + any(), + value( + listOf( + anExpectedFallbackNotifiableEvent(noisy = false, timestamp = A_TIMESTAMP), + anExpectedFallbackNotifiableEvent(eventId = AN_EVENT_ID_2, noisy = true, timestamp = A_TIMESTAMP), + ) + ), + ) + } + + @Test + fun `when the app is not locked, no fallback notification is created`() = runTest { + val createFallbackNotificationResult = aCreateFallbackNotificationRecorder() + val sut = createDefaultNotificationDrawerManager( + appNavigationStateService = FakeAppNavigationStateService( + initialAppNavigationState = anAppNavigationState(isInForeground = false), + ), + notificationCreator = FakeNotificationCreator( + createFallbackNotificationResult = createFallbackNotificationResult, + ), + lockScreenService = FakeLockScreenService().apply { setIsPinSetup(false) }, + ) + sut.onNotifiableEventsReceived(listOf(aNotifiableMessageEvent(noisy = true))) + createFallbackNotificationResult.assertions().isNeverCalled() + } + + /** + * The content of the original event must be stripped, only the noisy flag, the ids and the timestamp are kept. + */ + private fun anExpectedFallbackNotifiableEvent( + eventId: EventId = AN_EVENT_ID, + noisy: Boolean, + timestamp: Long, + ) = aFallbackNotifiableEvent( + eventId = eventId, + description = null, + canBeReplaced = false, + noisy = noisy, + timestamp = timestamp, + cause = null, + ) + + private fun aCreateFallbackNotificationRecorder() = + lambdaRecorder, Notification> { _, _, _ -> A_NOTIFICATION } + + private fun TestScope.createAppLockedNotificationDrawerManager( + createFallbackNotificationResult: LambdaThreeParamsRecorder, Notification>, + ) = createDefaultNotificationDrawerManager( + appNavigationStateService = FakeAppNavigationStateService( + initialAppNavigationState = anAppNavigationState(isInForeground = false), + ), + notificationCreator = FakeNotificationCreator( + createFallbackNotificationResult = createFallbackNotificationResult, + ), + lockScreenService = FakeLockScreenService().apply { setIsPinSetup(true) }, + ) + + private fun testAppLockedNotifiableEventReceived( + notifiableEvent: NotifiableEvent, + expectedFallbackEvent: FallbackNotifiableEvent, + ) = runTest { + val createFallbackNotificationResult = aCreateFallbackNotificationRecorder() + val sut = createAppLockedNotificationDrawerManager(createFallbackNotificationResult) + sut.onNotifiableEventsReceived(listOf(notifiableEvent)) + createFallbackNotificationResult.assertions() + .isCalledOnce() + .with(value(null), any(), value(listOf(expectedFallbackEvent))) + } + private fun testOnNotifiableEventReceived( appNavigationState: AppNavigationState, notifiableEvents: List, @@ -503,6 +643,7 @@ class DefaultNotificationDrawerManagerTest { fun TestScope.createDefaultNotificationDrawerManager( notificationDisplayer: NotificationDisplayer = FakeNotificationDisplayer(), notificationRenderer: NotificationRenderer? = null, + notificationCreator: NotificationCreator = FakeNotificationCreator(), appNavigationStateService: AppNavigationStateService = FakeAppNavigationStateService(), roomGroupMessageCreator: RoomGroupMessageCreator = FakeRoomGroupMessageCreator(), summaryGroupMessageCreator: SummaryGroupMessageCreator = FakeSummaryGroupMessageCreator(), @@ -519,7 +660,7 @@ fun TestScope.createDefaultNotificationDrawerManager( notificationRenderer = notificationRenderer ?: NotificationRenderer( notificationDisplayer = notificationDisplayer, notificationDataFactory = DefaultNotificationDataFactory( - notificationCreator = FakeNotificationCreator(), + notificationCreator = notificationCreator, roomGroupMessageCreator = roomGroupMessageCreator, summaryGroupMessageCreator = summaryGroupMessageCreator, activeNotificationsProvider = activeNotificationsProvider, diff --git a/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotificationResultProcessorTest.kt b/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotificationResultProcessorTest.kt index 91f29dd28e..21a2c6cb91 100644 --- a/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotificationResultProcessorTest.kt +++ b/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/DefaultNotificationResultProcessorTest.kt @@ -267,6 +267,42 @@ class DefaultNotificationResultProcessorTest { assertThat(receivedFallbackEvent).isTrue() } + @Test + fun `when an event cannot be resolved, the generated fallback event is silent`() = runTest { + val onNotifiableEventsReceived = lambdaRecorder, Unit> {} + val onPushReceivedResult = lambdaRecorder { _, _, _, _, _, _, _ -> } + val processor = createDefaultNotificationResultProcessor( + mutableBatteryOptimizationStore = FakeMutableBatteryOptimizationStore( + showBatteryOptimizationBannerResult = lambdaRecorder {}, + ), + pushHistoryService = FakePushHistoryService( + onPushReceivedResult = onPushReceivedResult, + ), + onNotifiableEventsReceived = onNotifiableEventsReceived, + ) + + runningProcessor(processor) { + emit(mapOf(aPushRequest() to Result.failure(NotificationResolverException.UnknownError("Unable to resolve event")))) + } + + advanceTimeBy(300.milliseconds) + + onNotifiableEventsReceived.assertions() + .isCalledOnce() + .with( + value( + listOf( + aFallbackNotifiableEvent( + description = "", + canBeReplaced = true, + noisy = false, + cause = "Unable to resolve event", + ) + ) + ) + ) + } + private suspend fun TestScope.runningProcessor(processor: NotificationResultProcessor, block: suspend NotificationResultProcessor.() -> Unit) { processor.start() diff --git a/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/FallbackNotificationFactoryTest.kt b/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/FallbackNotificationFactoryTest.kt new file mode 100644 index 0000000000..58825f07b9 --- /dev/null +++ b/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/FallbackNotificationFactoryTest.kt @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2026 Element Creations 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.push.impl.notifications + +import com.google.common.truth.Truth.assertThat +import io.element.android.libraries.matrix.test.AN_EVENT_ID +import io.element.android.libraries.matrix.test.A_ROOM_ID +import io.element.android.libraries.matrix.test.A_SESSION_ID +import io.element.android.libraries.push.impl.notifications.fixtures.aFallbackNotifiableEvent +import io.element.android.services.toolbox.test.systemclock.FakeSystemClock +import org.junit.Test + +class FallbackNotificationFactoryTest { + @Test + fun `create silent event`() { + val sut = FallbackNotificationFactory(FakeSystemClock()) + val result = sut.create( + sessionId = A_SESSION_ID, + roomId = A_ROOM_ID, + eventId = AN_EVENT_ID, + cause = "A cause", + noisy = false, + ) + assertThat(result).isEqualTo( + aFallbackNotifiableEvent( + description = "", + canBeReplaced = true, + noisy = false, + cause = "A cause", + ) + ) + } + + @Test + fun `create noisy event`() { + val sut = FallbackNotificationFactory(FakeSystemClock()) + val result = sut.create( + sessionId = A_SESSION_ID, + roomId = A_ROOM_ID, + eventId = AN_EVENT_ID, + cause = "A cause", + noisy = true, + ) + assertThat(result).isEqualTo( + aFallbackNotifiableEvent( + description = "", + canBeReplaced = true, + noisy = true, + cause = "A cause", + ) + ) + } +} 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 299c5ad213..ead16c02d7 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 @@ -18,6 +18,7 @@ import io.element.android.appconfig.NotificationConfig import io.element.android.features.enterprise.api.EnterpriseService import io.element.android.features.enterprise.test.FakeEnterpriseService import io.element.android.libraries.core.meta.BuildMeta +import io.element.android.libraries.matrix.api.core.SessionId import io.element.android.libraries.matrix.test.AN_EVENT_ID import io.element.android.libraries.matrix.test.AN_EVENT_ID_2 import io.element.android.libraries.matrix.test.A_COLOR_INT @@ -33,6 +34,7 @@ import io.element.android.libraries.push.impl.notifications.DefaultNotificationB import io.element.android.libraries.push.impl.notifications.NotificationActionIds import io.element.android.libraries.push.impl.notifications.RoomEventGroupInfo import io.element.android.libraries.push.impl.notifications.channels.DefaultNotificationChannels +import io.element.android.libraries.push.impl.notifications.channels.FakeNotificationChannels import io.element.android.libraries.push.impl.notifications.channels.NotificationChannels import io.element.android.libraries.push.impl.notifications.factories.action.AcceptInvitationActionFactory import io.element.android.libraries.push.impl.notifications.factories.action.MarkAsReadActionFactory @@ -47,6 +49,8 @@ import io.element.android.services.toolbox.test.sdk.FakeBuildVersionSdkIntProvid import io.element.android.services.toolbox.test.strings.FakeStringProvider import io.element.android.services.toolbox.test.systemclock.A_FAKE_TIMESTAMP import io.element.android.services.toolbox.test.systemclock.FakeSystemClock +import io.element.android.tests.testutils.lambda.lambdaRecorder +import io.element.android.tests.testutils.lambda.value import io.element.android.tests.testutils.robolectric.RobolectricTest import kotlinx.coroutines.test.runTest import org.junit.Test @@ -82,7 +86,10 @@ class DefaultNotificationCreatorTest : RobolectricTest() { @Test fun `test createFallbackNotification`() { - val sut = createNotificationCreator() + val channelIdForMessage = lambdaRecorder { _, _ -> A_CHANNEL_ID } + val sut = createNotificationCreator( + notificationChannels = FakeNotificationChannels(channelIdForMessage = channelIdForMessage), + ) val result = sut.createFallbackNotification( existingNotification = null, notificationAccountParams = aNotificationAccountParams(), @@ -93,6 +100,50 @@ class DefaultNotificationCreatorTest : RobolectricTest() { result.commonAssertions( expectedCategory = null, ) + assertThat(result.channelId).isEqualTo(A_CHANNEL_ID) + // The notification must be posted on the silent channel. + channelIdForMessage.assertions().isCalledOnce().with(value(A_SESSION_ID), value(false)) + } + + @Test + fun `test createFallbackNotification noisy`() { + val channelIdForMessage = lambdaRecorder { _, _ -> A_CHANNEL_ID } + val sut = createNotificationCreator( + notificationChannels = FakeNotificationChannels(channelIdForMessage = channelIdForMessage), + ) + val result = sut.createFallbackNotification( + existingNotification = null, + notificationAccountParams = aNotificationAccountParams(), + fallbackNotifiableEvents = listOf( + aFallbackNotifiableEvent(noisy = true), + ) + ) + result.commonAssertions( + expectedCategory = null, + ) + assertThat(result.channelId).isEqualTo(A_CHANNEL_ID) + // The notification must be posted on the noisy channel. + channelIdForMessage.assertions().isCalledOnce().with(value(A_SESSION_ID), value(true)) + } + + @Test + fun `test createFallbackNotification is noisy when at least one event is noisy`() { + val channelIdForMessage = lambdaRecorder { _, _ -> A_CHANNEL_ID } + val sut = createNotificationCreator( + notificationChannels = FakeNotificationChannels(channelIdForMessage = channelIdForMessage), + ) + val result = sut.createFallbackNotification( + existingNotification = null, + notificationAccountParams = aNotificationAccountParams(), + fallbackNotifiableEvents = listOf( + aFallbackNotifiableEvent(noisy = false), + aFallbackNotifiableEvent(eventId = AN_EVENT_ID_2, noisy = true), + ) + ) + result.commonAssertions( + expectedCategory = null, + ) + channelIdForMessage.assertions().isCalledOnce().with(value(A_SESSION_ID), value(true)) } @Test @@ -389,6 +440,8 @@ class DefaultNotificationCreatorTest : RobolectricTest() { } } +private const val A_CHANNEL_ID = "aChannelId" + const val MARK_AS_READ_ACTION_TITLE = "MarkAsReadAction" const val QUICK_REPLY_ACTION_TITLE = "QuickReplyAction" const val ACCEPT_INVITATION_ACTION_TITLE = "AcceptInvitationAction" diff --git a/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/fixtures/NotifiableEventFixture.kt b/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/fixtures/NotifiableEventFixture.kt index 4242632fe5..cb4bffcfb3 100644 --- a/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/fixtures/NotifiableEventFixture.kt +++ b/libraries/push/impl/src/test/kotlin/io/element/android/libraries/push/impl/notifications/fixtures/NotifiableEventFixture.kt @@ -39,13 +39,14 @@ fun aSimpleNotifiableEvent( type: String? = null, isRedacted: Boolean = false, canBeReplaced: Boolean = false, - editedEventId: EventId? = null + editedEventId: EventId? = null, + noisy: Boolean = false, ) = SimpleNotifiableEvent( sessionId = sessionId, roomId = roomId, eventId = eventId, editedEventId = editedEventId, - noisy = false, + noisy = noisy, title = "title", description = "description", type = type, @@ -59,14 +60,15 @@ fun anInviteNotifiableEvent( sessionId: SessionId = A_SESSION_ID, roomId: RoomId = A_ROOM_ID, eventId: EventId = AN_EVENT_ID, - isRedacted: Boolean = false + isRedacted: Boolean = false, + noisy: Boolean = false, ) = InviteNotifiableEvent( sessionId = sessionId, eventId = eventId, roomId = roomId, roomName = A_ROOM_NAME, editedEventId = null, - noisy = false, + noisy = noisy, title = "title", description = "description", type = null, @@ -89,11 +91,12 @@ fun aNotifiableMessageEvent( senderId: UserId = A_USER_ID_2, senderDisambiguatedDisplayName: String = A_USER_NAME_2, roomName: String? = A_ROOM_NAME, + noisy: Boolean = false, ) = NotifiableMessageEvent( sessionId = sessionId, eventId = eventId, editedEventId = null, - noisy = false, + noisy = noisy, timestamp = timestamp, senderDisambiguatedDisplayName = senderDisambiguatedDisplayName, senderId = senderId, @@ -149,15 +152,23 @@ fun aNotifiableCallEvent( fun aFallbackNotifiableEvent( sessionId: SessionId = A_SESSION_ID, + roomId: RoomId = A_ROOM_ID, + eventId: EventId = AN_EVENT_ID, + description: String? = "A fallback notification", + canBeReplaced: Boolean = false, + noisy: Boolean = false, + timestamp: Long = A_FAKE_TIMESTAMP, + cause: String? = "Unable to decrypt event", ) = FallbackNotifiableEvent( sessionId = sessionId, - roomId = A_ROOM_ID, - eventId = AN_EVENT_ID, + roomId = roomId, + eventId = eventId, editedEventId = null, - description = "A fallback notification", - canBeReplaced = false, + description = description, + canBeReplaced = canBeReplaced, isRedacted = false, isUpdated = false, - timestamp = A_FAKE_TIMESTAMP, - cause = "Unable to decrypt event", + noisy = noisy, + timestamp = timestamp, + cause = cause, ) From f0c88eb12e7d8bbf775c09836ae75533207bc79f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 27 Aug 2026 18:47:22 +0200 Subject: [PATCH 60/97] Update dependency net.zetetic:sqlcipher-android to v4.18.0 (#7552) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index c22264eaf1..444ac05d8e 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -208,7 +208,7 @@ matrix_richtexteditor_compose = { module = "io.element.android:wysiwyg-compose", sqldelight-driver-android = { module = "app.cash.sqldelight:android-driver", version.ref = "sqldelight" } sqldelight-driver-jvm = { module = "app.cash.sqldelight:sqlite-driver", version.ref = "sqldelight" } sqldelight-coroutines = { module = "app.cash.sqldelight:coroutines-extensions", version.ref = "sqldelight" } -sqlcipher = "net.zetetic:sqlcipher-android:4.17.0" +sqlcipher = "net.zetetic:sqlcipher-android:4.18.0" sqlite = "androidx.sqlite:sqlite-ktx:2.7.0" unifiedpush = "org.unifiedpush.android:connector:3.3.3" vanniktech_blurhash = "com.vanniktech:blurhash:0.3.0" From 616ed92d00aa025045ef0494351b18863acb5a4e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 27 Aug 2026 18:47:58 +0200 Subject: [PATCH 61/97] Update dependency com.google.firebase:firebase-bom to v34.18.0 (#7581) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 444ac05d8e..b129d1cf27 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -84,7 +84,7 @@ kotlinpoet-ksp = { module = "com.squareup:kotlinpoet-ksp", version.ref = "kotlin kover_gradle_plugin = { module = "org.jetbrains.kotlinx:kover-gradle-plugin", version.ref = "kover" } ksp_gradle_plugin = { module = "com.google.devtools.ksp:com.google.devtools.ksp.gradle.plugin", version.ref = "ksp" } # https://firebase.google.com/docs/android/setup#available-libraries -google_firebase_bom = "com.google.firebase:firebase-bom:34.17.0" +google_firebase_bom = "com.google.firebase:firebase-bom:34.18.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" } From b8981ff493dc368e92c150b917ae9a93da1eaf42 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 27 Aug 2026 20:01:26 +0200 Subject: [PATCH 62/97] Update dependency io.github.sergio-sastre.ComposablePreviewScanner:android to v0.9.3 (#7535) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index b129d1cf27..bb3759fdf7 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -175,7 +175,7 @@ test_truth = "com.google.truth:truth:1.4.5" test_parameter_injector = "com.google.testparameterinjector:test-parameter-injector:1.22" test_robolectric = "org.robolectric:robolectric:4.16.1" test_appyx_junit = { module = "com.bumble.appyx:testing-junit4", version.ref = "appyx" } -test_composable_preview_scanner = "io.github.sergio-sastre.ComposablePreviewScanner:android:0.9.2" +test_composable_preview_scanner = "io.github.sergio-sastre.ComposablePreviewScanner:android:0.9.3" test_detekt_api = { module = "io.gitlab.arturbosch.detekt:detekt-api", version.ref = "detekt" } test_detekt_test = { module = "io.gitlab.arturbosch.detekt:detekt-test", version.ref = "detekt" } From c986a2a97106795c4cd4fc84dc55f13823a8efad Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 27 Aug 2026 20:01:45 +0200 Subject: [PATCH 63/97] Update dependency com.google.guava:guava to v33.7.1-android (#7534) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index bb3759fdf7..395d5bfc62 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -222,7 +222,7 @@ maplibre_annotation = "org.maplibre.gl:android-plugin-annotation-v9:3.0.2" opusencoder = "io.element.android:opusencoder:1.2.0" zxing_cpp = "io.github.zxing-cpp:android:3.1.1" google_zxing = "com.google.zxing:core:3.5.4" -google_guava = "com.google.guava:guava:33.7.0-android" +google_guava = "com.google.guava:guava:33.7.1-android" haze = { module = "dev.chrisbanes.haze:haze", version.ref = "haze" } haze_materials = { module = "dev.chrisbanes.haze:haze-materials", version.ref = "haze" } From 712fe5b2179097feb5a14b171aee316680300744 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff Date: Thu, 27 Aug 2026 19:19:01 +0100 Subject: [PATCH 64/97] Implement a hook allowing enterprise modules to perform actions on startup Add an interface `io.element.android.features.enterprise.api.AppStartupHook`, which can be implemented in the enterprise build to perform certain actions on startup. It's a bit of a kludge for now since it doesn't block the rest of the app from proceeding, but it will serve our purposes for now. --- .../io/element/android/x/MainActivity.kt | 7 +++++++ .../io/element/android/x/di/AppBindings.kt | 5 +++++ .../features/enterprise/api/AppStartupHook.kt | 20 +++++++++++++++++++ 3 files changed, 32 insertions(+) create mode 100644 features/enterprise/api/src/main/kotlin/io/element/android/features/enterprise/api/AppStartupHook.kt diff --git a/app/src/main/kotlin/io/element/android/x/MainActivity.kt b/app/src/main/kotlin/io/element/android/x/MainActivity.kt index a882dd8769..c5551f11aa 100644 --- a/app/src/main/kotlin/io/element/android/x/MainActivity.kt +++ b/app/src/main/kotlin/io/element/android/x/MainActivity.kt @@ -61,6 +61,13 @@ class MainActivity : NodeActivity() { setContent { MainContent(appBindings) } + + val activity = this + appBindings.appStartupHooks().forEach { + lifecycleScope.launch { + it.onAppStartup(activity) + } + } } @Composable diff --git a/app/src/main/kotlin/io/element/android/x/di/AppBindings.kt b/app/src/main/kotlin/io/element/android/x/di/AppBindings.kt index 6768d0d8db..638ba0e38c 100644 --- a/app/src/main/kotlin/io/element/android/x/di/AppBindings.kt +++ b/app/src/main/kotlin/io/element/android/x/di/AppBindings.kt @@ -10,7 +10,9 @@ package io.element.android.x.di import dev.zacsweers.metro.AppScope import dev.zacsweers.metro.ContributesTo +import dev.zacsweers.metro.Multibinds import io.element.android.features.api.MigrationEntryPoint +import io.element.android.features.enterprise.api.AppStartupHook import io.element.android.features.enterprise.api.EnterpriseService import io.element.android.features.lockscreen.api.LockScreenEntryPoint import io.element.android.features.lockscreen.api.LockScreenService @@ -51,4 +53,7 @@ interface AppBindings { fun buildMeta(): BuildMeta fun sentrySdkDsn(): SentrySdkDsn? + + @Multibinds(allowEmpty = true) + fun appStartupHooks(): Set } diff --git a/features/enterprise/api/src/main/kotlin/io/element/android/features/enterprise/api/AppStartupHook.kt b/features/enterprise/api/src/main/kotlin/io/element/android/features/enterprise/api/AppStartupHook.kt new file mode 100644 index 0000000000..15922291f7 --- /dev/null +++ b/features/enterprise/api/src/main/kotlin/io/element/android/features/enterprise/api/AppStartupHook.kt @@ -0,0 +1,20 @@ +/* + * Copyright (c) 2026 Element Creations 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.enterprise.api + +import android.app.Activity + +/** + * A hook that is called during app startup, from the `MainActivity`. + * + * Note that the hook is run in the background: it will not block startup of the app. + */ +fun interface AppStartupHook { + /** @param activity The activity which is active while the app starts (i.e. the `MainActivity`). */ + suspend fun onAppStartup(activity: Activity) +} From a52d13ab5f45047ea8f9a2b6677d435d89899209 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 28 Aug 2026 10:08:53 +0200 Subject: [PATCH 65/97] Update dependency org.unifiedpush.android:connector to v3.3.4 (#7586) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 395d5bfc62..0ab5aec173 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -210,7 +210,7 @@ sqldelight-driver-jvm = { module = "app.cash.sqldelight:sqlite-driver", version. sqldelight-coroutines = { module = "app.cash.sqldelight:coroutines-extensions", version.ref = "sqldelight" } sqlcipher = "net.zetetic:sqlcipher-android:4.18.0" sqlite = "androidx.sqlite:sqlite-ktx:2.7.0" -unifiedpush = "org.unifiedpush.android:connector:3.3.3" +unifiedpush = "org.unifiedpush.android:connector:3.3.4" vanniktech_blurhash = "com.vanniktech:blurhash:0.3.0" telephoto_zoomableimage = { module = "me.saket.telephoto:zoomable-image-coil3", version.ref = "telephoto" } telephoto_flick = { module = "me.saket.telephoto:flick-android", version.ref = "telephoto" } From cca60ebc3aad6c516eb59db0f7fb2f0fccea4375 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Fri, 28 Aug 2026 11:01:54 +0200 Subject: [PATCH 66/97] Limit usage of nullable callback. --- .../api/RoomMemberModerationRenderer.kt | 4 ++-- .../impl/DefaultRoomMemberModerationRenderer.kt | 9 +++++++-- .../impl/RoomMemberModerationView.kt | 8 ++++---- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/features/roommembermoderation/api/src/main/kotlin/io/element/android/features/roommembermoderation/api/RoomMemberModerationRenderer.kt b/features/roommembermoderation/api/src/main/kotlin/io/element/android/features/roommembermoderation/api/RoomMemberModerationRenderer.kt index 7696f826a1..5a9ba9898d 100644 --- a/features/roommembermoderation/api/src/main/kotlin/io/element/android/features/roommembermoderation/api/RoomMemberModerationRenderer.kt +++ b/features/roommembermoderation/api/src/main/kotlin/io/element/android/features/roommembermoderation/api/RoomMemberModerationRenderer.kt @@ -21,14 +21,14 @@ interface RoomMemberModerationRenderer { * * @param state the state produced by the moderation presenter. * @param onSelectAction called when the user picks an action, so the host screen can navigate if that action needs its own screen. - * @param onAvatarClick called when the user taps the member's avatar, or `null` to make it non-interactive. + * @param onAvatarClick called when the user taps the member's avatar, only if the user has an avatar. * @param modifier layout modifier for the container. */ @Composable fun Render( state: RoomMemberModerationState, onSelectAction: (ModerationAction, MatrixUser) -> Unit, - onAvatarClick: ((MatrixUser) -> Unit)?, + onAvatarClick: (MatrixUser) -> Unit, modifier: Modifier, ) } diff --git a/features/roommembermoderation/impl/src/main/kotlin/io/element/android/features/roommembermoderation/impl/DefaultRoomMemberModerationRenderer.kt b/features/roommembermoderation/impl/src/main/kotlin/io/element/android/features/roommembermoderation/impl/DefaultRoomMemberModerationRenderer.kt index 0eeded6434..de941a7970 100644 --- a/features/roommembermoderation/impl/src/main/kotlin/io/element/android/features/roommembermoderation/impl/DefaultRoomMemberModerationRenderer.kt +++ b/features/roommembermoderation/impl/src/main/kotlin/io/element/android/features/roommembermoderation/impl/DefaultRoomMemberModerationRenderer.kt @@ -25,11 +25,16 @@ class DefaultRoomMemberModerationRenderer : RoomMemberModerationRenderer { override fun Render( state: RoomMemberModerationState, onSelectAction: (ModerationAction, MatrixUser) -> Unit, - onAvatarClick: ((MatrixUser) -> Unit)?, + onAvatarClick: (MatrixUser) -> Unit, modifier: Modifier ) { if (state is InternalRoomMemberModerationState) { - RoomMemberModerationView(modifier = modifier, state = state, onSelectAction = onSelectAction, onAvatarClick = onAvatarClick) + RoomMemberModerationView( + modifier = modifier, + state = state, + onSelectAction = onSelectAction, + onAvatarClick = onAvatarClick, + ) } else { SideEffect { Timber.d("RoomMemberModerationRenderer: Render called with unsupported state: $state") diff --git a/features/roommembermoderation/impl/src/main/kotlin/io/element/android/features/roommembermoderation/impl/RoomMemberModerationView.kt b/features/roommembermoderation/impl/src/main/kotlin/io/element/android/features/roommembermoderation/impl/RoomMemberModerationView.kt index 3ec00fd232..2dd232e9b1 100644 --- a/features/roommembermoderation/impl/src/main/kotlin/io/element/android/features/roommembermoderation/impl/RoomMemberModerationView.kt +++ b/features/roommembermoderation/impl/src/main/kotlin/io/element/android/features/roommembermoderation/impl/RoomMemberModerationView.kt @@ -66,7 +66,7 @@ import timber.log.Timber fun RoomMemberModerationView( state: InternalRoomMemberModerationState, onSelectAction: (ModerationAction, MatrixUser) -> Unit, - onAvatarClick: ((MatrixUser) -> Unit)?, + onAvatarClick: (MatrixUser) -> Unit, modifier: Modifier = Modifier, ) { Box(modifier = modifier) { @@ -218,7 +218,7 @@ private fun RoomMemberActionsBottomSheet( user: MatrixUser, actions: ImmutableList, onSelectAction: (ModerationAction, MatrixUser) -> Unit, - onAvatarClick: ((MatrixUser) -> Unit)? = null, + onAvatarClick: (MatrixUser) -> Unit, onDismiss: () -> Unit, ) { val coroutineScope = rememberCoroutineScope() @@ -248,10 +248,10 @@ private fun RoomMemberActionsBottomSheet( modifier = Modifier .padding(bottom = 24.dp) .align(Alignment.CenterHorizontally) - .clickable(enabled = user.avatarUrl != null && onAvatarClick != null) { + .clickable(enabled = user.avatarUrl != null) { coroutineScope.launch { bottomSheetState.hide() - onAvatarClick?.invoke(user) + onAvatarClick(user) onDismiss() } } From 65878c6a34ee417737670cbeae2cd02ce0e87861 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Fri, 28 Aug 2026 12:02:18 +0200 Subject: [PATCH 67/97] Log the SDK git Sha at application startup Also improve the rendering of the log --- .../element/android/x/ElementXApplication.kt | 9 +++++- .../android/x/di/ApplicationBindings.kt | 17 ++++++++++ .../kotlin/io/element/android/x/info/Logs.kt | 32 +++++++------------ .../libraries/core/log/logger/BoxWrapper.kt | 31 ++++++++++++++++++ 4 files changed, 67 insertions(+), 22 deletions(-) create mode 100644 app/src/main/kotlin/io/element/android/x/di/ApplicationBindings.kt create mode 100644 libraries/core/src/main/kotlin/io/element/android/libraries/core/log/logger/BoxWrapper.kt diff --git a/app/src/main/kotlin/io/element/android/x/ElementXApplication.kt b/app/src/main/kotlin/io/element/android/x/ElementXApplication.kt index 38952b144f..a3712ebbf6 100644 --- a/app/src/main/kotlin/io/element/android/x/ElementXApplication.kt +++ b/app/src/main/kotlin/io/element/android/x/ElementXApplication.kt @@ -13,10 +13,14 @@ import androidx.compose.material3.ComposeMaterial3Flags.isAnchoredDraggableCompo import androidx.compose.material3.ExperimentalMaterial3Api import androidx.startup.AppInitializer import androidx.work.Configuration +import dev.zacsweers.metro.Inject import dev.zacsweers.metro.createGraphFactory +import io.element.android.libraries.architecture.bindings import io.element.android.libraries.di.DependencyInjectionGraphOwner +import io.element.android.libraries.matrix.api.SdkMetadata import io.element.android.libraries.workmanager.api.di.MetroWorkerFactory import io.element.android.x.di.AppGraph +import io.element.android.x.di.ApplicationBindings import io.element.android.x.info.logApplicationInfo import io.element.android.x.initializer.CacheCleanerInitializer import io.element.android.x.initializer.CrashInitializer @@ -29,6 +33,8 @@ class ElementXApplication : Application(), DependencyInjectionGraphOwner, Config .setWorkerFactory(MetroWorkerFactory(graph.workerProviders)) .build() + @Inject lateinit var sdkMetadata: SdkMetadata + @OptIn(ExperimentalMaterial3Api::class) override fun onCreate() { super.onCreate() @@ -38,7 +44,8 @@ class ElementXApplication : Application(), DependencyInjectionGraphOwner, Config initializeComponent(CacheCleanerInitializer::class.java) } - logApplicationInfo(this) + bindings().inject(this) + logApplicationInfo(this, sdkMetadata.sdkGitSha) // Disable the strict offset check for anchored draggable components, as it can cause issues with bottom sheets. // Remove once https://issuetracker.google.com/issues/477038695 is fixed. diff --git a/app/src/main/kotlin/io/element/android/x/di/ApplicationBindings.kt b/app/src/main/kotlin/io/element/android/x/di/ApplicationBindings.kt new file mode 100644 index 0000000000..3bc2445f58 --- /dev/null +++ b/app/src/main/kotlin/io/element/android/x/di/ApplicationBindings.kt @@ -0,0 +1,17 @@ +/* + * Copyright (c) 2026 Element Creations 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.x.di + +import dev.zacsweers.metro.AppScope +import dev.zacsweers.metro.ContributesTo +import io.element.android.x.ElementXApplication + +@ContributesTo(AppScope::class) +interface ApplicationBindings { + fun inject(application: ElementXApplication) +} diff --git a/app/src/main/kotlin/io/element/android/x/info/Logs.kt b/app/src/main/kotlin/io/element/android/x/info/Logs.kt index 2b66fef55e..a9c6f6cee6 100644 --- a/app/src/main/kotlin/io/element/android/x/info/Logs.kt +++ b/app/src/main/kotlin/io/element/android/x/info/Logs.kt @@ -10,32 +10,22 @@ package io.element.android.x.info import android.content.Context import io.element.android.libraries.androidutils.system.getVersionCodeFromManifest +import io.element.android.libraries.core.log.logger.wrapInBox import io.element.android.x.BuildConfig import timber.log.Timber import java.text.SimpleDateFormat import java.util.Date import java.util.Locale -fun logApplicationInfo(context: Context) { - val appVersion = buildString { - append(BuildConfig.VERSION_NAME) - append(" (") - append(context.getVersionCodeFromManifest()) - append(") - ") - append(BuildConfig.BUILD_TYPE) - append(" / ") - append(BuildConfig.FLAVOR) - } - // TODO Get SDK version somehow - val sdkVersion = "SDK VERSION (TODO)" +fun logApplicationInfo(context: Context, sdkGitSha: String) { + val appVersion = "${BuildConfig.VERSION_NAME} (${context.getVersionCodeFromManifest()}) - ${BuildConfig.BUILD_TYPE} / ${BuildConfig.FLAVOR}" val date = SimpleDateFormat("MM-dd HH:mm:ss.SSSZ", Locale.US).format(Date()) - - Timber.d("----------------------------------------------------------------") - Timber.d("----------------------------------------------------------------") - Timber.d(" Application version: $appVersion") - Timber.d(" Git SHA: ${BuildConfig.GIT_REVISION}") - Timber.d(" SDK version: $sdkVersion") - Timber.d(" Local time: $date") - Timber.d("----------------------------------------------------------------") - Timber.d("----------------------------------------------------------------\n\n\n\n") + listOf( + " Application version: $appVersion", + " Element X: https://github.com/element-hq/element-x-android/commit/${BuildConfig.GIT_REVISION}", + " SDK : https://github.com/matrix-org/matrix-rust-sdk/commit/$sdkGitSha", + " Local time: $date", + ) + .wrapInBox(minBoxInsideWidth = 80) + .forEach { Timber.d(it) } } diff --git a/libraries/core/src/main/kotlin/io/element/android/libraries/core/log/logger/BoxWrapper.kt b/libraries/core/src/main/kotlin/io/element/android/libraries/core/log/logger/BoxWrapper.kt new file mode 100644 index 0000000000..ed69332b72 --- /dev/null +++ b/libraries/core/src/main/kotlin/io/element/android/libraries/core/log/logger/BoxWrapper.kt @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2026 Element Creations 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.core.log.logger + +import kotlin.math.max + +/** + * Wraps a list of strings in a box with borders. + * Allow to print pretty logs. + * + * @param minBoxInsideWidth The minimum width of the box inside, default is 80. + * @return A list of strings representing the boxed lines. + */ +fun List.wrapInBox( + minBoxInsideWidth: Int = 80, +): List { + val maxLength = maxOfOrNull { it.length } ?: 0 + val boxWidth = max(maxLength, minBoxInsideWidth) + 4 + val topBorder = "┌" + "─".repeat(boxWidth - 2) + "┐" + val bottomBorder = "└" + "─".repeat(boxWidth - 2) + "┘" + val boxedLines = map { line -> + val padding = " ".repeat(max(0, boxWidth - line.length - 4)) + "│ $line$padding │" + } + return listOf(topBorder) + boxedLines + listOf(bottomBorder) +} From c4606e59efab49640a18c5e46edef1727242d83f Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Fri, 28 Aug 2026 19:02:43 +0200 Subject: [PATCH 68/97] Fix test compilation issue. --- .../roommembermoderation/impl/RoomMemberModerationViewTest.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/features/roommembermoderation/impl/src/test/kotlin/io/element/android/features/roommembermoderation/impl/RoomMemberModerationViewTest.kt b/features/roommembermoderation/impl/src/test/kotlin/io/element/android/features/roommembermoderation/impl/RoomMemberModerationViewTest.kt index ff7183ed5f..263fb9777c 100644 --- a/features/roommembermoderation/impl/src/test/kotlin/io/element/android/features/roommembermoderation/impl/RoomMemberModerationViewTest.kt +++ b/features/roommembermoderation/impl/src/test/kotlin/io/element/android/features/roommembermoderation/impl/RoomMemberModerationViewTest.kt @@ -218,7 +218,7 @@ class RoomMemberModerationViewTest : RobolectricTest() { private fun AndroidComposeUiTest.setRoomMemberModerationView( state: InternalRoomMemberModerationState, onSelectAction: (ModerationAction, MatrixUser) -> Unit = EnsureNeverCalledWithTwoParams(), - onAvatarClick: ((MatrixUser) -> Unit)? = EnsureNeverCalledWithParam(), + onAvatarClick: (MatrixUser) -> Unit = EnsureNeverCalledWithParam(), ) { setSafeContent { RoomMemberModerationView( From bd81a0ce9b79d2ec21b5eba52515c626f84e1fc7 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 29 Aug 2026 13:35:28 +0000 Subject: [PATCH 69/97] Update dependency org.unifiedpush.android:connector to v3.3.5 --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 0ab5aec173..5be4eab26f 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -210,7 +210,7 @@ sqldelight-driver-jvm = { module = "app.cash.sqldelight:sqlite-driver", version. sqldelight-coroutines = { module = "app.cash.sqldelight:coroutines-extensions", version.ref = "sqldelight" } sqlcipher = "net.zetetic:sqlcipher-android:4.18.0" sqlite = "androidx.sqlite:sqlite-ktx:2.7.0" -unifiedpush = "org.unifiedpush.android:connector:3.3.4" +unifiedpush = "org.unifiedpush.android:connector:3.3.5" vanniktech_blurhash = "com.vanniktech:blurhash:0.3.0" telephoto_zoomableimage = { module = "me.saket.telephoto:zoomable-image-coil3", version.ref = "telephoto" } telephoto_flick = { module = "me.saket.telephoto:flick-android", version.ref = "telephoto" } From 7e8efebe4d353a5e65ed3d7a6049c831add3b2ce Mon Sep 17 00:00:00 2001 From: "Timo K." Date: Sun, 30 Aug 2026 12:38:04 +0200 Subject: [PATCH 70/97] Fix crash due to JSON.stringify on a cirular structure in injectes js. --- .../utils/WebViewWidgetMessageInterceptor.kt | 20 ++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/features/call/impl/src/main/kotlin/io/element/android/features/call/impl/utils/WebViewWidgetMessageInterceptor.kt b/features/call/impl/src/main/kotlin/io/element/android/features/call/impl/utils/WebViewWidgetMessageInterceptor.kt index c74ae90abd..3e1aa015d0 100644 --- a/features/call/impl/src/main/kotlin/io/element/android/features/call/impl/utils/WebViewWidgetMessageInterceptor.kt +++ b/features/call/impl/src/main/kotlin/io/element/android/features/call/impl/utils/WebViewWidgetMessageInterceptor.kt @@ -54,10 +54,28 @@ class WebViewWidgetMessageInterceptor( // objects in log lines. view.evaluateJavascript( """ + // Removing any parts that result in a circular structure. Circular structures crash JSON.stringify. + function simpleStringify(object) { + const simpleObject = {}; + for (const prop in object) { + if (!object.hasOwnProperty(prop)) { + continue; + } + if (typeof(object[prop]) == 'object') { + continue; + } + if (typeof(object[prop]) == 'function') { + continue; + } + simpleObject[prop] = object[prop]; + } + return JSON.stringify(simpleObject); + } + function logFn(consoleLogFn, ...args) { consoleLogFn( args.map( - a => typeof a === "string" ? a : JSON.stringify(a) + a => typeof a === "string" ? a : simpleStringify(a) ).join(' ') ); }; From dc2d05f9daac762ce1c0a81330c0cbad97c735e9 Mon Sep 17 00:00:00 2001 From: "Timo K." Date: Sun, 30 Aug 2026 13:12:57 +0200 Subject: [PATCH 71/97] also add try catch block --- .../call/impl/utils/WebViewWidgetMessageInterceptor.kt | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/features/call/impl/src/main/kotlin/io/element/android/features/call/impl/utils/WebViewWidgetMessageInterceptor.kt b/features/call/impl/src/main/kotlin/io/element/android/features/call/impl/utils/WebViewWidgetMessageInterceptor.kt index 3e1aa015d0..db81975bf1 100644 --- a/features/call/impl/src/main/kotlin/io/element/android/features/call/impl/utils/WebViewWidgetMessageInterceptor.kt +++ b/features/call/impl/src/main/kotlin/io/element/android/features/call/impl/utils/WebViewWidgetMessageInterceptor.kt @@ -55,7 +55,7 @@ class WebViewWidgetMessageInterceptor( view.evaluateJavascript( """ // Removing any parts that result in a circular structure. Circular structures crash JSON.stringify. - function simpleStringify(object) { + function safeStringify(object) { const simpleObject = {}; for (const prop in object) { if (!object.hasOwnProperty(prop)) { @@ -69,13 +69,17 @@ class WebViewWidgetMessageInterceptor( } simpleObject[prop] = object[prop]; } - return JSON.stringify(simpleObject); + try { + return JSON.stringify(simpleObject); + } catch { + return "{Failed to stringify object}"; + } } function logFn(consoleLogFn, ...args) { consoleLogFn( args.map( - a => typeof a === "string" ? a : simpleStringify(a) + a => typeof a === "string" ? a : safeStringify(a) ).join(' ') ); }; From 8b03e4d41a520269a4467df528d92648225178dd Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Fri, 28 Aug 2026 18:34:27 +0200 Subject: [PATCH 72/97] Ensure that sessionVerifiedStatus is updated when the crypto is ready. If we do not do that the FTUE state stays on WaitingForInitialState and user is stuck on a blank screen. --- .../matrix/impl/verification/RustSessionVerificationService.kt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/verification/RustSessionVerificationService.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/verification/RustSessionVerificationService.kt index b2a13f5f1a..760937c567 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/verification/RustSessionVerificationService.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/verification/RustSessionVerificationService.kt @@ -266,6 +266,9 @@ class RustSessionVerificationService( if (!isInitialized.get()) { encryptionService.waitForE2eeInitializationTasks() isInitialized.set(true) + // Also update the state, because update may have been ignored by VerificationStateListener.onUpdate + // If we do not do that the FTUE is stuck on blank screen. + updateVerificationStatus() } if (!this::verificationController.isInitialized) { From f97d207b16824e7123ad103f0a7e8723811094b6 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Mon, 31 Aug 2026 09:51:03 +0200 Subject: [PATCH 73/97] [release] Check that there is no unmerged PR with the label "Z-NextRelease", else exit --- tools/release/releaseV2.sh | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tools/release/releaseV2.sh b/tools/release/releaseV2.sh index cef4b7e6b0..1b31449122 100755 --- a/tools/release/releaseV2.sh +++ b/tools/release/releaseV2.sh @@ -88,6 +88,15 @@ if [[ ! -d ${buildToolsPath} ]]; then exit 1 fi +# Check that there is no unmerged PR with the label "Z-NextRelease", else exit +unmergedPrs=$(gh pr list --repo element-hq/element-x-android --label "Z-NextRelease" --state open --json title,url -q '.[] | "\(.url): \(.title)"') +if [[ ${unmergedPrs} != "" ]]; then + printf "Fatal: There are unmerged PRs with the label Z-NextRelease:\n%s" "${unmergedPrs}" + printf "\n" + exit 1 +fi + + # Check if git flow is enabled gitFlowDevelop=$(git config gitflow.branch.develop) if [[ ${gitFlowDevelop} != "" ]] From b85174d35ef22eea461796dd86d5e3bd5c3522ee Mon Sep 17 00:00:00 2001 From: hayyaksi <193020925+hayaksi1@users.noreply.github.com> Date: Mon, 31 Aug 2026 12:44:40 +0300 Subject: [PATCH 74/97] Only track read receipts on message-like events (#7361) Ask the SDK to track receipts on message-like events only, for the live timeline and for the focused and threaded ones, so all three agree. The disabled case for the media and pinned-event timelines is unchanged. This matches the behaviour on Element X iOS. The SDK attaches the receipt to the preceding event rather than the next one, which is the placement its API offers. --- .../android/libraries/matrix/impl/room/JoinedRustRoom.kt | 2 +- .../android/libraries/matrix/impl/room/RustRoomFactory.kt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/JoinedRustRoom.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/JoinedRustRoom.kt index d454d7c775..e892c62e84 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/JoinedRustRoom.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/JoinedRustRoom.kt @@ -265,7 +265,7 @@ class JoinedRustRoom( filter = filter, internalIdPrefix = internalIdPrefix, dateDividerMode = dateDividerMode, - trackReadReceipts = if (trackReadReceipts) TimelineReadReceiptTracking.ALL_EVENTS else TimelineReadReceiptTracking.DISABLED, + trackReadReceipts = if (trackReadReceipts) TimelineReadReceiptTracking.MESSAGE_LIKE_EVENTS else TimelineReadReceiptTracking.DISABLED, reportUtds = true, ) ).let { innerTimeline -> diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/RustRoomFactory.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/RustRoomFactory.kt index b5f9c3ee80..960509b503 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/RustRoomFactory.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/RustRoomFactory.kt @@ -140,7 +140,7 @@ class RustRoomFactory( filter = timelineFilter?.let(TimelineFilter::EventFilter) ?: TimelineFilter.All, internalIdPrefix = "live", dateDividerMode = DateDividerMode.DAILY, - trackReadReceipts = TimelineReadReceiptTracking.ALL_EVENTS, + trackReadReceipts = TimelineReadReceiptTracking.MESSAGE_LIKE_EVENTS, reportUtds = true, ) ) From 8081682f8fc38d54c3bfae1bd78f6433830bb38f Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Fri, 28 Aug 2026 17:21:54 +0200 Subject: [PATCH 75/97] Remove ExternalSession, fallback login with Element Web is gone. --- .../api/auth/MatrixAuthenticationService.kt | 8 ---- .../api/auth/external/ExternalSession.kt | 20 -------- .../auth/RustMatrixAuthenticationService.kt | 34 ------------- .../libraries/matrix/impl/mapper/Session.kt | 25 ---------- .../matrix/impl/mapper/SessionKtTest.kt | 48 ------------------- .../auth/FakeMatrixAuthenticationService.kt | 6 --- 6 files changed, 141 deletions(-) delete mode 100644 libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/auth/external/ExternalSession.kt diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/auth/MatrixAuthenticationService.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/auth/MatrixAuthenticationService.kt index 3ff1eaa337..f5b2ea2bde 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/auth/MatrixAuthenticationService.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/auth/MatrixAuthenticationService.kt @@ -10,7 +10,6 @@ package io.element.android.libraries.matrix.api.auth import io.element.android.libraries.matrix.api.MatrixClient import io.element.android.libraries.matrix.api.MatrixClientProvider -import io.element.android.libraries.matrix.api.auth.external.ExternalSession import io.element.android.libraries.matrix.api.auth.qrlogin.MatrixQrCodeLoginData import io.element.android.libraries.matrix.api.auth.qrlogin.QrCodeLoginStep import io.element.android.libraries.matrix.api.core.SessionId @@ -47,13 +46,6 @@ interface MatrixAuthenticationService { */ suspend fun login(username: String, password: String): Result - /** - * Import a session that was created using another client, for instance Element Web. - * - * @param externalSession the tokens and identifiers of the session to import. - */ - suspend fun importCreatedSession(externalSession: ExternalSession): Result - /* * OAuth part. */ diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/auth/external/ExternalSession.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/auth/external/ExternalSession.kt deleted file mode 100644 index 1241f5fb15..0000000000 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/auth/external/ExternalSession.kt +++ /dev/null @@ -1,20 +0,0 @@ -/* - * Copyright (c) 2025 Element Creations Ltd. - * Copyright 2024, 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.auth.external - -/*** - * Represents a session data of a session created by another client. - */ -data class ExternalSession( - val userId: String, - val deviceId: String, - val accessToken: String, - val refreshToken: String?, - val homeserverUrl: String, -) 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 a1dacbee91..25e177ea7a 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 @@ -27,7 +27,6 @@ import io.element.android.libraries.matrix.api.auth.MatrixHomeServerDetails import io.element.android.libraries.matrix.api.auth.OAuthDetails import io.element.android.libraries.matrix.api.auth.OAuthPrompt import io.element.android.libraries.matrix.api.auth.SessionRestorationException -import io.element.android.libraries.matrix.api.auth.external.ExternalSession import io.element.android.libraries.matrix.api.auth.qrlogin.MatrixQrCodeLoginData import io.element.android.libraries.matrix.api.auth.qrlogin.QrCodeLoginStep import io.element.android.libraries.matrix.api.core.SessionId @@ -232,39 +231,6 @@ class RustMatrixAuthenticationService( } } - override suspend fun importCreatedSession(externalSession: ExternalSession): Result = - withContext(coroutineDispatchers.io) { - runCatchingExceptions { - val client = currentClient ?: error("You need to call `setHomeserver()` first") - val currentSessionPaths = sessionPaths ?: error("You need to call `setHomeserver()` first") - val sessionData = externalSession.toSessionData( - isTokenValid = true, - loginType = LoginType.PASSWORD, - passphrase = pendingKey.formattedAsString(), - sessionPaths = currentSessionPaths, - ) - - // We restore the client using the just retrieved session data - client.restoreSession(sessionData.toSession()) - val matrixClient = rustMatrixClientFactory.create(client, sessionData, isMessageSearchAvailable()) - - // Apply enterprise hooks to the newly created client as soon as possible - clientEnterpriseHook(matrixClient) - - // We wait for the verification state to be known - matrixClient.waitForKnownVerificationState() - - // And once it's ready we share it and save the actual session data - newMatrixClientObservers.forEach { it.invoke(matrixClient) } - sessionStore.addSession(sessionData) - - // Clean up the strong reference held here since it's no longer necessary - clear(destroyClient = false) - - SessionId(sessionData.userId) - } - } - private var pendingOAuthAuthorizationData: OAuthAuthorizationData? = null override suspend fun getOAuthUrl( diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/mapper/Session.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/mapper/Session.kt index b5964f1a2e..69a76f2825 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/mapper/Session.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/mapper/Session.kt @@ -8,7 +8,6 @@ package io.element.android.libraries.matrix.impl.mapper -import io.element.android.libraries.matrix.api.auth.external.ExternalSession import io.element.android.libraries.matrix.api.paths.SessionPaths import io.element.android.libraries.sessionstorage.api.LoginType import io.element.android.libraries.sessionstorage.api.SessionData @@ -40,27 +39,3 @@ internal fun Session.toSessionData( userDisplayName = null, userAvatarUrl = null, ) - -internal fun ExternalSession.toSessionData( - isTokenValid: Boolean, - loginType: LoginType, - passphrase: String?, - sessionPaths: SessionPaths, -) = SessionData( - userId = userId, - deviceId = deviceId, - accessToken = accessToken, - refreshToken = refreshToken, - homeserverUrl = homeserverUrl, - oAuthData = null, - loginTimestamp = Date(), - isTokenValid = isTokenValid, - loginType = loginType, - passphrase = passphrase, - sessionPath = sessionPaths.fileDirectory.absolutePath, - cachePath = sessionPaths.cacheDirectory.absolutePath, - position = 0, - lastUsageIndex = 0, - userDisplayName = null, - userAvatarUrl = null, -) diff --git a/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/mapper/SessionKtTest.kt b/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/mapper/SessionKtTest.kt index 6042f195f8..572c00cb18 100644 --- a/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/mapper/SessionKtTest.kt +++ b/libraries/matrix/impl/src/test/kotlin/io/element/android/libraries/matrix/impl/mapper/SessionKtTest.kt @@ -9,7 +9,6 @@ package io.element.android.libraries.matrix.impl.mapper import com.google.common.truth.Truth.assertThat -import io.element.android.libraries.matrix.api.auth.external.ExternalSession import io.element.android.libraries.matrix.api.paths.SessionPaths import io.element.android.libraries.matrix.impl.fixtures.factories.aRustSession import io.element.android.libraries.matrix.test.A_DEVICE_ID @@ -67,51 +66,4 @@ class SessionKtTest { ) assertThat(result.homeserverUrl).isEqualTo(A_HOMESERVER_URL_2) } - - @Test - fun `ExternalSession toSessionData compute the expected result`() { - val result = anExternalSession().toSessionData( - isTokenValid = true, - loginType = LoginType.PASSWORD, - passphrase = A_SECRET, - sessionPaths = SessionPaths(File("/a/file"), File("/a/cache")), - ) - assertThat(result.userId).isEqualTo(A_USER_ID.value) - assertThat(result.deviceId).isEqualTo(A_DEVICE_ID.value) - assertThat(result.accessToken).isEqualTo("accessToken") - assertThat(result.refreshToken).isNull() - assertThat(result.homeserverUrl).isEqualTo(A_HOMESERVER_URL) - assertThat(result.isTokenValid).isTrue() - assertThat(result.oAuthData).isNull() - assertThat(result.loginType).isEqualTo(LoginType.PASSWORD) - assertThat(result.loginTimestamp).isNotNull() - assertThat(result.passphrase).isEqualTo(A_SECRET) - assertThat(result.sessionPath).isEqualTo("/a/file") - assertThat(result.cachePath).isEqualTo("/a/cache") - } - - @Test - fun `ExternalSession toSessionData can change the validity of the token`() { - val result = anExternalSession().toSessionData( - isTokenValid = false, - loginType = LoginType.PASSWORD, - passphrase = A_SECRET, - sessionPaths = SessionPaths(File("/a/file"), File("/a/cache")), - ) - assertThat(result.isTokenValid).isFalse() - } } - -private fun anExternalSession( - userId: String = A_USER_ID.value, - deviceId: String = A_DEVICE_ID.value, - accessToken: String = "accessToken", - refreshToken: String? = null, - homeserverUrl: String = A_HOMESERVER_URL, -) = ExternalSession( - userId = userId, - deviceId = deviceId, - accessToken = accessToken, - refreshToken = refreshToken, - homeserverUrl = homeserverUrl, -) diff --git a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/auth/FakeMatrixAuthenticationService.kt b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/auth/FakeMatrixAuthenticationService.kt index 1eac6c0a1d..694f208344 100644 --- a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/auth/FakeMatrixAuthenticationService.kt +++ b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/auth/FakeMatrixAuthenticationService.kt @@ -14,7 +14,6 @@ import io.element.android.libraries.matrix.api.auth.MatrixAuthenticationService import io.element.android.libraries.matrix.api.auth.MatrixHomeServerDetails import io.element.android.libraries.matrix.api.auth.OAuthDetails import io.element.android.libraries.matrix.api.auth.OAuthPrompt -import io.element.android.libraries.matrix.api.auth.external.ExternalSession import io.element.android.libraries.matrix.api.auth.qrlogin.MatrixQrCodeLoginData import io.element.android.libraries.matrix.api.auth.qrlogin.QrCodeLoginStep import io.element.android.libraries.matrix.api.core.SessionId @@ -32,7 +31,6 @@ class FakeMatrixAuthenticationService( var matrixClientResult: ((SessionId) -> Result)? = null, var loginWithQrCodeResult: (qrCodeData: MatrixQrCodeLoginData, progress: (QrCodeLoginStep) -> Unit) -> Result = lambdaRecorder Unit, Result> { _, _ -> Result.success(A_SESSION_ID) }, - private val importCreatedSessionLambda: (ExternalSession) -> Result = { lambdaError() }, private val setHomeserverResult: (String) -> Result = { lambdaError() }, private val setElementClassicSessionResult: (ElementClassicSession?) -> Unit = { lambdaError() }, private val doSecretsContainBackupKeyResult: (UserId, String, String) -> Boolean = { _, _, _ -> lambdaError() }, @@ -66,10 +64,6 @@ class FakeMatrixAuthenticationService( } } - override suspend fun importCreatedSession(externalSession: ExternalSession): Result = simulateLongTask { - return importCreatedSessionLambda(externalSession) - } - /** The login hint passed to the most recent [getOAuthUrl] call. */ var getOAuthUrlLoginHint: String? = null private set From c6fe9786a9a76a3d3b5773c28ed57566cdcf940f Mon Sep 17 00:00:00 2001 From: hayyaksi <193020925+hayaksi1@users.noreply.github.com> Date: Mon, 31 Aug 2026 13:23:01 +0300 Subject: [PATCH 76/97] Stop rescanning message bodies for emoji only on every recomposition (#7531) Deciding whether a text message is emoji only compares the formatted body to the plain one and runs a grapheme scan over the whole message. Nothing was remembered, so both ran again on every recomposition of every visible message. Remember the decision against the body and the formatted body. The preview branch moves into the same computation, so the composable wrapper around containsOnlyEmojis, which had a single caller and existed only to read LocalInspectionMode, is no longer needed. --- .../components/event/TimelineItemTextView.kt | 12 ++++++-- .../features/messages/impl/utils/Emoji.kt | 12 +------- .../features/messages/impl/utils/EmojiTest.kt | 30 +++++++++---------- 3 files changed, 26 insertions(+), 28 deletions(-) diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemTextView.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemTextView.kt index a7d54e819b..86b50f3015 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemTextView.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemTextView.kt @@ -15,7 +15,9 @@ import androidx.compose.material3.LocalContentColor import androidx.compose.material3.LocalTextStyle import androidx.compose.runtime.Composable import androidx.compose.runtime.CompositionLocalProvider +import androidx.compose.runtime.remember import androidx.compose.ui.Modifier +import androidx.compose.ui.platform.LocalInspectionMode import androidx.compose.ui.semantics.contentDescription import androidx.compose.ui.semantics.semantics import androidx.compose.ui.tooling.preview.Preview @@ -23,6 +25,7 @@ import androidx.compose.ui.tooling.preview.PreviewParameter import io.element.android.compound.theme.ElementTheme import io.element.android.features.messages.impl.timeline.components.layout.ContentAvoidingLayout import io.element.android.features.messages.impl.timeline.components.layout.ContentAvoidingLayoutData +import io.element.android.features.messages.impl.timeline.model.event.AN_EMOJI_ONLY_TEXT import io.element.android.features.messages.impl.timeline.model.event.TimelineItemTextBasedContent import io.element.android.features.messages.impl.timeline.model.event.TimelineItemTextBasedContentPreviewParam import io.element.android.features.messages.impl.timeline.model.event.aTimelineItemTextContent @@ -47,8 +50,13 @@ fun TimelineItemTextView( // The View <-> Compose interop is not working well with Compose UI tests (it loops indefinitely), so we skip it in the UI test mode. if (LocalUiTestMode.current) return - val emojiOnly = content.formattedBody.toString() == content.body && - content.body.replace(" ", "").containsOnlyEmojis() + val isInPreview = LocalInspectionMode.current + val emojiOnly = remember(content.body, content.formattedBody, isInPreview) { + content.formattedBody.toString() == content.body && + content.body.replace(" ", "").let { body -> + if (isInPreview) body == AN_EMOJI_ONLY_TEXT else body.containsOnlyEmojis() + } + } val textStyle = when { emojiOnly -> ElementTheme.typography.fontHeadingXlRegular else -> ElementTheme.typography.fontBodyLgRegular diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/utils/Emoji.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/utils/Emoji.kt index 3a0f16b3e9..68019f0c04 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/utils/Emoji.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/utils/Emoji.kt @@ -8,25 +8,15 @@ package io.element.android.features.messages.impl.utils -import androidx.compose.runtime.Composable -import androidx.compose.ui.platform.LocalInspectionMode import com.sigpwned.emoji4j.core.Grapheme.Type.EMOJI import com.sigpwned.emoji4j.core.Grapheme.Type.PICTOGRAPHIC import com.sigpwned.emoji4j.core.GraphemeMatchResult import com.sigpwned.emoji4j.core.GraphemeMatcher -import io.element.android.features.messages.impl.timeline.model.event.AN_EMOJI_ONLY_TEXT /** * Returns true if the string consists exclusively of "emoji or pictographic graphemes". */ -@Composable -fun String.containsOnlyEmojis(): Boolean { - if (LocalInspectionMode.current) return this == AN_EMOJI_ONLY_TEXT - if (isEmpty()) return false - return containsOnlyEmojisInternal() -} - -internal fun String.containsOnlyEmojisInternal(): Boolean { +internal fun String.containsOnlyEmojis(): Boolean { val matcher = GraphemeMatcher(this) var m: GraphemeMatchResult? = null var contiguous = true diff --git a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/utils/EmojiTest.kt b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/utils/EmojiTest.kt index 5c979dbb7c..e75eb83d62 100644 --- a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/utils/EmojiTest.kt +++ b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/utils/EmojiTest.kt @@ -16,23 +16,23 @@ class EmojiTest { @Test fun validEmojis() { // Simple single/multiple single-codepoint emojis per string - assertTrue("👍".containsOnlyEmojisInternal()) - assertTrue("😀".containsOnlyEmojisInternal()) - assertTrue("🙂🙁".containsOnlyEmojisInternal()) - assertTrue("👁❤️🍝".containsOnlyEmojisInternal()) // 👁 is a pictographic - assertTrue("👨‍👩‍👦1️⃣🚀👳🏾‍♂️🪩".containsOnlyEmojisInternal()) - assertTrue("🌍🌎🌏".containsOnlyEmojisInternal()) + assertTrue("👍".containsOnlyEmojis()) + assertTrue("😀".containsOnlyEmojis()) + assertTrue("🙂🙁".containsOnlyEmojis()) + assertTrue("👁❤️🍝".containsOnlyEmojis()) // 👁 is a pictographic + assertTrue("👨‍👩‍👦1️⃣🚀👳🏾‍♂️🪩".containsOnlyEmojis()) + assertTrue("🌍🌎🌏".containsOnlyEmojis()) // Awkward multi-codepoint graphemes - assertTrue("🧑‍🧑‍🧒‍🧒".containsOnlyEmojisInternal()) - assertTrue("🏴‍☠".containsOnlyEmojisInternal()) - assertTrue("👩🏿‍🔧".containsOnlyEmojisInternal()) + assertTrue("🧑‍🧑‍🧒‍🧒".containsOnlyEmojis()) + assertTrue("🏴‍☠".containsOnlyEmojis()) + assertTrue("👩🏿‍🔧".containsOnlyEmojis()) - Assert.assertFalse("".containsOnlyEmojisInternal()) - Assert.assertFalse(" ".containsOnlyEmojisInternal()) - Assert.assertFalse("🙂 🙁".containsOnlyEmojisInternal()) - Assert.assertFalse(" 🙂 🙁 ".containsOnlyEmojisInternal()) - Assert.assertFalse("Hello".containsOnlyEmojisInternal()) - Assert.assertFalse("Hello 👋".containsOnlyEmojisInternal()) + Assert.assertFalse("".containsOnlyEmojis()) + Assert.assertFalse(" ".containsOnlyEmojis()) + Assert.assertFalse("🙂 🙁".containsOnlyEmojis()) + Assert.assertFalse(" 🙂 🙁 ".containsOnlyEmojis()) + Assert.assertFalse("Hello".containsOnlyEmojis()) + Assert.assertFalse("Hello 👋".containsOnlyEmojis()) } } From ab09500e7e907beeeda462d3496cb431b526cae7 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Mon, 31 Aug 2026 15:06:39 +0200 Subject: [PATCH 77/97] Remove unused import --- .../matrix/impl/auth/RustMatrixAuthenticationService.kt | 1 - 1 file changed, 1 deletion(-) 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 25e177ea7a..a175f253ca 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 @@ -43,7 +43,6 @@ import io.element.android.libraries.matrix.impl.exception.mapClientException import io.element.android.libraries.matrix.impl.keys.SecretGenerator import io.element.android.libraries.matrix.impl.mapper.toSessionData import io.element.android.libraries.matrix.impl.paths.SessionPathsFactory -import io.element.android.libraries.matrix.impl.toSession import io.element.android.libraries.sessionstorage.api.LoginType import io.element.android.libraries.sessionstorage.api.SessionStore import kotlinx.coroutines.CancellationException From 012c5a1f81e2f68c9884b971fead7740896925e5 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Mon, 31 Aug 2026 15:45:14 +0200 Subject: [PATCH 78/97] Do some renaming now that user can select multiple answers per poll --- .../messages/impl/timeline/TimelineEvent.kt | 2 +- .../impl/timeline/TimelinePresenter.kt | 4 ++-- .../components/event/TimelineItemPollView.kt | 6 ++--- .../impl/timeline/TimelinePresenterTest.kt | 4 ++-- .../event/TimelineItemPollViewTest.kt | 2 +- .../api/actions/SendPollResponseAction.kt | 6 ++--- .../poll/api/pollcontent/PollContentView.kt | 24 +++++++++---------- .../poll/impl/history/PollHistoryEvent.kt | 2 +- .../poll/impl/history/PollHistoryPresenter.kt | 2 +- .../poll/impl/history/PollHistoryView.kt | 14 +++++------ .../impl/history/PollHistoryPresenterTest.kt | 2 +- .../poll/impl/history/PollHistoryViewTest.kt | 2 +- 12 files changed, 35 insertions(+), 35 deletions(-) diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineEvent.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineEvent.kt index de4031d1a4..66807b74f2 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineEvent.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelineEvent.kt @@ -52,7 +52,7 @@ sealed interface TimelineEvent { */ sealed interface TimelineItemPollEvent : TimelineItemEvent - data class SelectPollAnswer( + data class SendPollResponse( val pollStartId: EventId, val answerIds: List ) : TimelineItemPollEvent diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelinePresenter.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelinePresenter.kt index 3317d8f05c..2fc4351cea 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelinePresenter.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/TimelinePresenter.kt @@ -201,12 +201,12 @@ class TimelinePresenter( newEventState.value = NewEventState.None } } - is TimelineEvent.SelectPollAnswer -> sessionCoroutineScope.launch { + is TimelineEvent.SendPollResponse -> sessionCoroutineScope.launch { timelineController.invokeOnCurrentTimeline { sendPollResponseAction.execute( timeline = this, pollStartId = event.pollStartId, - answerIds = event.answerIds + answerIds = event.answerIds, ).onFailure { error -> Timber.tag(tag).e(error, "Failed to send poll response") } diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemPollView.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemPollView.kt index 041f3ad5a5..c51d449fbc 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemPollView.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemPollView.kt @@ -26,8 +26,8 @@ fun TimelineItemPollView( eventSink: (TimelineEvent.TimelineItemPollEvent) -> Unit, modifier: Modifier = Modifier, ) { - fun onSelectAnswer(pollStartId: EventId, answerIds: List) { - eventSink(TimelineEvent.SelectPollAnswer(pollStartId, answerIds)) + fun onSendPollResponse(pollStartId: EventId, answerIds: List) { + eventSink(TimelineEvent.SendPollResponse(pollStartId, answerIds)) } fun onEndPoll(pollStartId: EventId) { @@ -48,7 +48,7 @@ fun TimelineItemPollView( isPollEnded = content.isEnded, isPollEditable = content.isEditable, isMine = content.isMine, - onSelectAnswer = ::onSelectAnswer, + onSendPollResponse = ::onSendPollResponse, onEditPoll = ::onEditPoll, onEndPoll = ::onEndPoll, modifier = modifier, 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 17cf61459e..290246ffb9 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 @@ -951,14 +951,14 @@ class TimelinePresenterTest { } @Test - fun `present - PollAnswerSelected event`() = runTest { + fun `present - SendPollResponse event`() = runTest { val sendPollResponseAction = FakeSendPollResponseAction() val presenter = createTimelinePresenter( sendPollResponseAction = sendPollResponseAction, ) presenter.test { val initialState = awaitFirstItem() - initialState.eventSink.invoke(TimelineEvent.SelectPollAnswer(AN_EVENT_ID, listOf("anAnswerId"))) + initialState.eventSink.invoke(TimelineEvent.SendPollResponse(AN_EVENT_ID, listOf("anAnswerId"))) } delay(1) sendPollResponseAction.verifyExecutionCount(1) diff --git a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemPollViewTest.kt b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemPollViewTest.kt index b4977e7f3a..2da5691736 100644 --- a/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemPollViewTest.kt +++ b/features/messages/impl/src/test/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemPollViewTest.kt @@ -50,7 +50,7 @@ class TimelineItemPollViewTest : RobolectricTest() { matcher = hasText(answer.text), useUnmergedTree = true, ).performClick() - eventsRecorder.assertSingle(TimelineEvent.SelectPollAnswer(content.eventId!!, listOf(answer.id))) + eventsRecorder.assertSingle(TimelineEvent.SendPollResponse(content.eventId!!, listOf(answer.id))) } @Test diff --git a/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/actions/SendPollResponseAction.kt b/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/actions/SendPollResponseAction.kt index 6cfc46a754..fe9f5b12a3 100644 --- a/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/actions/SendPollResponseAction.kt +++ b/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/actions/SendPollResponseAction.kt @@ -12,17 +12,17 @@ import io.element.android.libraries.matrix.api.core.EventId import io.element.android.libraries.matrix.api.timeline.Timeline /** - * Sends the current user's answer to a poll, wrapping the timeline call so the analytics are captured in one place. + * Sends the current user's answer(s) to a poll, wrapping the timeline call so the analytics are captured in one place. */ interface SendPollResponseAction { /** * @param timeline the timeline the poll lives in. * @param pollStartId the poll start event being answered. - * @param answerId the id of the chosen answer. + * @param answerIds the ids of the chosen answers. */ suspend fun execute( timeline: Timeline, pollStartId: EventId, - answerIds: List + answerIds: List, ): Result } diff --git a/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentView.kt b/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentView.kt index f5078ecd50..fdcadd7240 100644 --- a/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentView.kt +++ b/features/poll/api/src/main/kotlin/io/element/android/features/poll/api/pollcontent/PollContentView.kt @@ -40,7 +40,7 @@ import kotlinx.collections.immutable.ImmutableList @Composable fun PollContentView( state: PollContentState, - onSelectAnswer: (pollStartId: EventId, answerIds: List) -> Unit, + onSendPollResponse: (pollStartId: EventId, answerIds: List) -> Unit, onEditPoll: (pollStartId: EventId) -> Unit, onEndPoll: (pollStartId: EventId) -> Unit, modifier: Modifier = Modifier, @@ -56,7 +56,7 @@ fun PollContentView( isPollEnded = state.isPollEnded, isMine = state.isMine, onEditPoll = onEditPoll, - onSelectAnswer = onSelectAnswer, + onSendPollResponse = onSendPollResponse, onEndPoll = onEndPoll, modifier = modifier, ) @@ -73,7 +73,7 @@ fun PollContentView( isPollEditable: Boolean, isPollEnded: Boolean, isMine: Boolean, - onSelectAnswer: (pollStartId: EventId, answerIds: List) -> Unit, + onSendPollResponse: (pollStartId: EventId, answerIds: List) -> Unit, onEditPoll: (pollStartId: EventId) -> Unit, onEndPoll: (pollStartId: EventId) -> Unit, modifier: Modifier = Modifier, @@ -92,10 +92,10 @@ fun PollContentView( }.filter { it.isSelected }.map { it.answer.id } // Only send the response if the selection count is within the limit if (newSelections.size <= maxSelections.toInt()) { - onSelectAnswer(it, newSelections) + onSendPollResponse(it, newSelections) } } else { - onSelectAnswer(it, listOf(pollAnswer.id)) + onSendPollResponse(it, listOf(pollAnswer.id)) } } } @@ -238,7 +238,7 @@ internal fun PollContentViewUndisclosedPreview() = ElementPreview { isPollEnded = false, isPollEditable = false, isMine = false, - onSelectAnswer = { _, _ -> }, + onSendPollResponse = { _, _ -> }, onEditPoll = {}, onEndPoll = {}, ) @@ -257,7 +257,7 @@ internal fun PollContentViewDisclosedPreview() = ElementPreview { isPollEnded = false, isPollEditable = false, isMine = false, - onSelectAnswer = { _, _ -> }, + onSendPollResponse = { _, _ -> }, onEditPoll = {}, onEndPoll = {}, ) @@ -276,7 +276,7 @@ internal fun PollContentViewMultipleSelectionPreview() = ElementPreview { isPollEnded = false, isPollEditable = false, isMine = false, - onSelectAnswer = { _, _ -> }, + onSendPollResponse = { _, _ -> }, onEditPoll = {}, onEndPoll = {}, ) @@ -295,7 +295,7 @@ internal fun PollContentViewEndedPreview() = ElementPreview { isPollEnded = true, isPollEditable = false, isMine = false, - onSelectAnswer = { _, _ -> }, + onSendPollResponse = { _, _ -> }, onEditPoll = {}, onEndPoll = {}, ) @@ -314,7 +314,7 @@ internal fun PollContentViewCreatorEditablePreview() = ElementPreview { isPollEnded = false, isPollEditable = true, isMine = true, - onSelectAnswer = { _, _ -> }, + onSendPollResponse = { _, _ -> }, onEditPoll = {}, onEndPoll = {}, ) @@ -333,7 +333,7 @@ internal fun PollContentViewCreatorPreview() = ElementPreview { isPollEnded = false, isPollEditable = false, isMine = true, - onSelectAnswer = { _, _ -> }, + onSendPollResponse = { _, _ -> }, onEditPoll = {}, onEndPoll = {}, ) @@ -352,7 +352,7 @@ internal fun PollContentViewCreatorEndedPreview() = ElementPreview { isPollEnded = true, isPollEditable = false, isMine = true, - onSelectAnswer = { _, _ -> }, + onSendPollResponse = { _, _ -> }, onEditPoll = {}, onEndPoll = {}, ) diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryEvent.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryEvent.kt index 81cc8f522e..8afd6721ec 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryEvent.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryEvent.kt @@ -13,7 +13,7 @@ import io.element.android.libraries.matrix.api.core.EventId sealed interface PollHistoryEvent { data object LoadMore : PollHistoryEvent - data class SelectPollAnswer(val pollStartId: EventId, val answerIds: List) : PollHistoryEvent + data class SendPollResponse(val pollStartId: EventId, val answerIds: List) : PollHistoryEvent data class EndPoll(val pollStartId: EventId) : PollHistoryEvent data class SelectFilter(val filter: PollHistoryFilter) : PollHistoryEvent } diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryPresenter.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryPresenter.kt index 46da83e945..44d27ae607 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryPresenter.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryPresenter.kt @@ -69,7 +69,7 @@ class PollHistoryPresenter( is PollHistoryEvent.LoadMore -> { coroutineScope.loadMore(timeline) } - is PollHistoryEvent.SelectPollAnswer -> sessionCoroutineScope.launch { + is PollHistoryEvent.SendPollResponse -> sessionCoroutineScope.launch { sendPollResponseAction.execute( timeline = timeline, pollStartId = event.pollStartId, diff --git a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryView.kt b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryView.kt index 219c39ed23..40bc2f893a 100644 --- a/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryView.kt +++ b/features/poll/impl/src/main/kotlin/io/element/android/features/poll/impl/history/PollHistoryView.kt @@ -65,8 +65,8 @@ fun PollHistoryView( state.eventSink(PollHistoryEvent.LoadMore) } - fun onSelectAnswer(pollStartId: EventId, answerIds: List) { - state.eventSink(PollHistoryEvent.SelectPollAnswer(pollStartId, answerIds)) + fun onSendPollResponse(pollStartId: EventId, answerIds: List) { + state.eventSink(PollHistoryEvent.SendPollResponse(pollStartId, answerIds)) } fun onEndPoll(pollStartId: EventId) { @@ -114,7 +114,7 @@ fun PollHistoryView( pollHistoryItems = pollHistoryItems, hasMoreToLoad = state.hasMoreToLoad, isLoading = state.isLoading, - onSelectAnswer = ::onSelectAnswer, + onSendPollResponse = ::onSendPollResponse, onEditPoll = onEditPoll, onEndPoll = ::onEndPoll, onLoadMore = ::onLoadMore, @@ -151,7 +151,7 @@ private fun PollHistoryList( pollHistoryItems: ImmutableList, hasMoreToLoad: Boolean, isLoading: Boolean, - onSelectAnswer: (pollStartId: EventId, answerIds: List) -> Unit, + onSendPollResponse: (pollStartId: EventId, answerIds: List) -> Unit, onEditPoll: (pollStartId: EventId) -> Unit, onEndPoll: (pollStartId: EventId) -> Unit, onLoadMore: () -> Unit, @@ -166,7 +166,7 @@ private fun PollHistoryList( items(pollHistoryItems) { pollHistoryItem -> PollHistoryItemRow( pollHistoryItem = pollHistoryItem, - onSelectAnswer = onSelectAnswer, + onSendPollResponse = onSendPollResponse, onEditPoll = onEditPoll, onEndPoll = onEndPoll, modifier = Modifier.padding(vertical = 8.dp, horizontal = 16.dp) @@ -222,7 +222,7 @@ private fun LoadMoreButton(isLoading: Boolean, onClick: () -> Unit) { @Composable private fun PollHistoryItemRow( pollHistoryItem: PollHistoryItem, - onSelectAnswer: (pollStartId: EventId, answerIds: List) -> Unit, + onSendPollResponse: (pollStartId: EventId, answerIds: List) -> Unit, onEditPoll: (pollStartId: EventId) -> Unit, onEndPoll: (pollStartId: EventId) -> Unit, modifier: Modifier = Modifier, @@ -244,7 +244,7 @@ private fun PollHistoryItemRow( Spacer(modifier = Modifier.height(4.dp)) PollContentView( state = pollHistoryItem.state, - onSelectAnswer = onSelectAnswer, + onSendPollResponse = onSendPollResponse, onEditPoll = onEditPoll, onEndPoll = onEndPoll, ) diff --git a/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/history/PollHistoryPresenterTest.kt b/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/history/PollHistoryPresenterTest.kt index d1c67943c8..ca20cc2ee9 100644 --- a/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/history/PollHistoryPresenterTest.kt +++ b/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/history/PollHistoryPresenterTest.kt @@ -117,7 +117,7 @@ class PollHistoryPresenterTest { state.eventSink(PollHistoryEvent.EndPoll(AN_EVENT_ID)) runCurrent() endPollAction.verifyExecutionCount(1) - state.eventSink(PollHistoryEvent.SelectPollAnswer(AN_EVENT_ID, listOf("answer"))) + state.eventSink(PollHistoryEvent.SendPollResponse(AN_EVENT_ID, listOf("answer"))) runCurrent() sendPollResponseAction.verifyExecutionCount(1) cancelAndConsumeRemainingEvents() diff --git a/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/history/PollHistoryViewTest.kt b/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/history/PollHistoryViewTest.kt index 998ec0ca48..e0a6eb98b1 100644 --- a/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/history/PollHistoryViewTest.kt +++ b/features/poll/impl/src/test/kotlin/io/element/android/features/poll/impl/history/PollHistoryViewTest.kt @@ -133,7 +133,7 @@ class PollHistoryViewTest : RobolectricTest() { useUnmergedTree = true, ).performClick() eventsRecorder.assertSingle( - PollHistoryEvent.SelectPollAnswer(eventId, listOf(answer.id)) + PollHistoryEvent.SendPollResponse(eventId, listOf(answer.id)) ) } From e6c2b962750ad2dade2da228951a8c3ad912620a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Mart=C3=ADn?= Date: Mon, 31 Aug 2026 18:59:38 +0200 Subject: [PATCH 79/97] Setting version for the release 26.09.0 --- plugins/src/main/kotlin/Versions.kt | 4 ++-- tools/manifest/gplay/release/aaptDump.txt | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/plugins/src/main/kotlin/Versions.kt b/plugins/src/main/kotlin/Versions.kt index 0c2885aaa1..28154af737 100644 --- a/plugins/src/main/kotlin/Versions.kt +++ b/plugins/src/main/kotlin/Versions.kt @@ -39,13 +39,13 @@ private const val versionYear = 26 * Month of the version on 2 digits. Value must be in [1,12]. * Do not update this value. it is updated by the release script. */ -private const val versionMonth = 8 +private const val versionMonth = 9 /** * Release number in the month. Value must be in [0,99]. * Do not update this value. it is updated by the release script. */ -private const val versionReleaseNumber = 4 +private const val versionReleaseNumber = 0 object Versions { /** diff --git a/tools/manifest/gplay/release/aaptDump.txt b/tools/manifest/gplay/release/aaptDump.txt index ff8cec3036..2dcdb2245b 100644 --- a/tools/manifest/gplay/release/aaptDump.txt +++ b/tools/manifest/gplay/release/aaptDump.txt @@ -1,4 +1,4 @@ -package: name='io.element.android.x' versionCode='202608040' versionName='26.08.4' platformBuildVersionName='17' platformBuildVersionCode='37' compileSdkVersion='37' compileSdkVersionCodename='17' +package: name='io.element.android.x' versionCode='202609000' versionName='26.09.0' platformBuildVersionName='17' platformBuildVersionCode='37' compileSdkVersion='37' compileSdkVersionCodename='17' sdkVersion:'24' targetSdkVersion:'37' uses-permission: name='android.permission.POST_NOTIFICATIONS' From b385a936837881e2fb018ca5d07f1a5b2ba68244 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Mart=C3=ADn?= Date: Mon, 31 Aug 2026 19:00:51 +0200 Subject: [PATCH 80/97] Adding fastlane file for version 26.09.0 --- fastlane/metadata/android/en-US/changelogs/202609000.txt | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 fastlane/metadata/android/en-US/changelogs/202609000.txt diff --git a/fastlane/metadata/android/en-US/changelogs/202609000.txt b/fastlane/metadata/android/en-US/changelogs/202609000.txt new file mode 100644 index 0000000000..0b54ecc6f8 --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/202609000.txt @@ -0,0 +1,2 @@ +Main changes in this version: several important bug fixes and improvements. +Full changelog: https://github.com/element-hq/element-x-android/releases \ No newline at end of file From 987d343379a6e6cf9311163ebfeb627b4f690af5 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 1 Sep 2026 07:05:00 +0000 Subject: [PATCH 81/97] Update roborazzi to v1.73.0 --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 5be4eab26f..70bf6894bf 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -32,7 +32,7 @@ accompanist = "0.37.3" # Test test_core = "1.7.0" -roborazzi = "1.72.0" +roborazzi = "1.73.0" # Jetbrain datetime = "0.8.0" From e5065d9baac2873a4063e2327c74ae5c380d6703 Mon Sep 17 00:00:00 2001 From: Jorge Martin Espinosa Date: Tue, 1 Sep 2026 12:40:05 +0200 Subject: [PATCH 82/97] Fix invalid placeholders in translations (#7612) * Add logic to find invalid string placeholders in `checkForbiddenTerms.py` * Fix found invalid placeholder in Chinese translations --- .../src/main/res/values-zh/translations.xml | 2 +- tools/localazy/checkForbiddenTerms.py | 31 +++++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/features/poll/api/src/main/res/values-zh/translations.xml b/features/poll/api/src/main/res/values-zh/translations.xml index 15f71240d4..4cde80b945 100644 --- a/features/poll/api/src/main/res/values-zh/translations.xml +++ b/features/poll/api/src/main/res/values-zh/translations.xml @@ -1,7 +1,7 @@ - "占总投票的 %1$d%" + "占总投票的 %1$d%%" "将移除之前的选择" "此为胜出的答案" diff --git a/tools/localazy/checkForbiddenTerms.py b/tools/localazy/checkForbiddenTerms.py index 48bf7030b8..3bf893dd0b 100755 --- a/tools/localazy/checkForbiddenTerms.py +++ b/tools/localazy/checkForbiddenTerms.py @@ -42,6 +42,31 @@ forbiddenTerms = { ] } +# A complete, VALID placeholder, anchored to consume the whole token: +# %% -> literal percent (allowed) +# %s %d %f ... -> simple conversion +# %1$s %2$d ... -> positional +# %.2f %1$.2f -> optional precision +_VALID_PLACEHOLDER = re.compile( + r'%(?:\d+\$)?(?:\.\d+)?[a-zA-Z]' +) + +# Grab each candidate token: a '%' plus the run of chars that could belong to a +# specifier (digits, '$', '.', and letters). This makes '%sd' and '%1d' surface +# as single tokens instead of being partially swallowed. +_PLACEHOLDER_MATCHES = re.compile(r'%%|%[0-9$.A-Za-z]*') + +def find_invalid_placeholders(value): + """Return the list of malformed placeholder tokens found in `value`.""" + invalid = [] + for token in _PLACEHOLDER_MATCHES.findall(value): + if token == '%%': + continue # escaped percent is fine + if not _VALID_PLACEHOLDER.fullmatch(token): + invalid.append(token) + return invalid + + content = minidom.parse(file) errors = [] @@ -60,6 +85,9 @@ for elem in content.getElementsByTagName('string'): matches = re.search(term, value) if matches and name not in exceptions: errors.append('Forbidden term "' + term + '" in string: "' + name + '": ' + value) + invalid_placeholders = find_invalid_placeholders(value) + for placeholder in invalid_placeholders: + errors.append('Invalid placeholder "' + placeholder + '" in string: "' + name + '": ' + value) ### Plurals for elem in content.getElementsByTagName('plurals'): @@ -78,6 +106,9 @@ for elem in content.getElementsByTagName('plurals'): matches = re.search(term, value) if matches and name not in exceptions: errors.append('Forbidden term "' + term + '" in plural: "' + name + '": ' + value) + invalid_placeholders = find_invalid_placeholders(value) + for placeholder in invalid_placeholders: + errors.append('Invalid placeholder "' + placeholder + '" in plural: "' + name + '": ' + value) # If errors is not empty print the report if errors: From 7c42f22b7c105bfd849f96e77ecab7b9a818d905 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Mart=C3=ADn?= Date: Tue, 1 Sep 2026 13:57:32 +0200 Subject: [PATCH 83/97] Setting version for the release 26.09.1 --- plugins/src/main/kotlin/Versions.kt | 4 ++-- tools/manifest/gplay/release/aaptDump.txt | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/plugins/src/main/kotlin/Versions.kt b/plugins/src/main/kotlin/Versions.kt index 0c2885aaa1..e33351f2ef 100644 --- a/plugins/src/main/kotlin/Versions.kt +++ b/plugins/src/main/kotlin/Versions.kt @@ -39,13 +39,13 @@ private const val versionYear = 26 * Month of the version on 2 digits. Value must be in [1,12]. * Do not update this value. it is updated by the release script. */ -private const val versionMonth = 8 +private const val versionMonth = 9 /** * Release number in the month. Value must be in [0,99]. * Do not update this value. it is updated by the release script. */ -private const val versionReleaseNumber = 4 +private const val versionReleaseNumber = 1 object Versions { /** diff --git a/tools/manifest/gplay/release/aaptDump.txt b/tools/manifest/gplay/release/aaptDump.txt index ff8cec3036..b67c1f527c 100644 --- a/tools/manifest/gplay/release/aaptDump.txt +++ b/tools/manifest/gplay/release/aaptDump.txt @@ -1,4 +1,4 @@ -package: name='io.element.android.x' versionCode='202608040' versionName='26.08.4' platformBuildVersionName='17' platformBuildVersionCode='37' compileSdkVersion='37' compileSdkVersionCodename='17' +package: name='io.element.android.x' versionCode='202609010' versionName='26.09.1' platformBuildVersionName='17' platformBuildVersionCode='37' compileSdkVersion='37' compileSdkVersionCodename='17' sdkVersion:'24' targetSdkVersion:'37' uses-permission: name='android.permission.POST_NOTIFICATIONS' From aa695d2ad6af94f278464cc0e4ccdb9702a8549c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Mart=C3=ADn?= Date: Tue, 1 Sep 2026 13:57:54 +0200 Subject: [PATCH 84/97] Adding fastlane file for version 26.09.1 --- fastlane/metadata/android/en-US/changelogs/202609010.txt | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 fastlane/metadata/android/en-US/changelogs/202609010.txt diff --git a/fastlane/metadata/android/en-US/changelogs/202609010.txt b/fastlane/metadata/android/en-US/changelogs/202609010.txt new file mode 100644 index 0000000000..e3380c06f5 --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/202609010.txt @@ -0,0 +1,2 @@ +Main changes in this version: important bug fixes and improvements. +Full changelog: https://github.com/element-hq/element-x-android/releases From 99fce78f76bba965512ce6cbb2422789fd7c8b43 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Mart=C3=ADn?= Date: Tue, 1 Sep 2026 14:39:23 +0200 Subject: [PATCH 85/97] Changelog for version v26.09.1 --- CHANGES.md | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/CHANGES.md b/CHANGES.md index 5f4be5d6eb..edb2c08856 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,3 +1,44 @@ +Changes in Element X v26.09.1 +============================= + +## What's Changed +### ✨ Features +* Support creating polls with multiple answers and send response with multiple answers by @bmarty in https://github.com/element-hq/element-x-android/pull/7613 +### 🙌 Improvements +* Only track read receipts on message-like events by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7361 +* Stop rescanning message bodies for emoji only on every recomposition by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7531 +### 🐛 Bugfixes +* Ensure that noisy notifications are still noisy when the app has a PIN code. by @bmarty in https://github.com/element-hq/element-x-android/pull/7584 +* Ensure that sessionVerifiedStatus is updated when the crypto is ready. by @bmarty in https://github.com/element-hq/element-x-android/pull/7604 +* Fix invalid placeholders in translations by @jmartinesp in https://github.com/element-hq/element-x-android/pull/7612 +### 🧱 Build +* Do not open the editor when finishing the release by @bmarty in https://github.com/element-hq/element-x-android/pull/7583 +* [release] Check that there is no unmerged PR with the label "Z-NextRelease", else exit by @bmarty in https://github.com/element-hq/element-x-android/pull/7606 +### Dependency upgrades +* Update dependency net.zetetic:sqlcipher-android to v4.18.0 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/7552 +* Update dependency com.google.firebase:firebase-bom to v34.18.0 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/7581 +* Update dependency io.github.sergio-sastre.ComposablePreviewScanner:android to v0.9.3 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/7535 +* Update dependency com.google.guava:guava to v33.7.1-android by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/7534 +* Update dependency org.unifiedpush.android:connector to v3.3.4 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/7586 +* Update dependency org.unifiedpush.android:connector to v3.3.5 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/7595 +* Update roborazzi to v1.73.0 by @renovate[bot] in https://github.com/element-hq/element-x-android/pull/7618 +### 💼 Element Pro +* Implement a hook allowing enterprise modules to perform actions on startup by @richvdh in https://github.com/element-hq/element-x-android/pull/7585 +### Others +* Don't hide the thread of a deleted message inside the removed messages group by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7571 +* Name a sender the timeline has no profile for from the room member list by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7539 +* Offer conversations in the system share sheet by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7574 +* Rank the mention suggestions by how well they match what was typed by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7536 +* Log the SDK git Sha at application startup by @bmarty in https://github.com/element-hq/element-x-android/pull/7589 +* Limit usage of nullable callback. by @bmarty in https://github.com/element-hq/element-x-android/pull/7588 +* Fix crash due to JSON.stringify on a cirular structure in injectes js. by @toger5 in https://github.com/element-hq/element-x-android/pull/7600 +* Support multi-select polls by @bxdxnn in https://github.com/element-hq/element-x-android/pull/6477 +* Remove ExternalSession, fallback login with Element Web is gone. by @bmarty in https://github.com/element-hq/element-x-android/pull/7608 +* Fall back to the message body when the formatted body has nothing to render by @hayaksi1 in https://github.com/element-hq/element-x-android/pull/7523 + + +**Full Changelog**: https://github.com/element-hq/element-x-android/compare/v26.08.4...v26.09.1 + Changes in Element X v26.08.4 ============================= From 27e161605fee96bd0836cc62dddbc6415161f31b Mon Sep 17 00:00:00 2001 From: Jorge Martin Espinosa Date: Tue, 1 Sep 2026 16:59:56 +0200 Subject: [PATCH 86/97] Allow retrying finding the release assets in release script (#7619) --- tools/release/releaseV2.sh | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/tools/release/releaseV2.sh b/tools/release/releaseV2.sh index 1b31449122..23f3910311 100755 --- a/tools/release/releaseV2.sh +++ b/tools/release/releaseV2.sh @@ -452,20 +452,23 @@ releaseAssets=( "${fdroidTargetPath}/app-fdroid-x86_64-release-signed.apk" ) -missingAsset=0 +# Set this variable to something other than 0 to enter the loop, and reset it to 0 when all files are found. +missingAsset=-1 -for releaseAsset in "${releaseAssets[@]}"; do - if [[ ! -f "${releaseAsset}" ]]; then - printf "Error: the file %s does not exist.\n" "${releaseAsset}" - missingAsset=1 +while [[ ${missingAsset} -ne 0 ]]; do + missingAsset=0 + for releaseAsset in "${releaseAssets[@]}"; do + if [[ ! -f "${releaseAsset}" ]]; then + printf "Error: the file %s does not exist.\n" "${releaseAsset}" + missingAsset=1 + fi + done + + if [[ ${missingAsset} -ne 0 ]]; then + read -r -p "Some files are missing, please fix the issue and press enter to retry. Press Ctrl+C to exit. " fi done -if [[ ${missingAsset} -ne 0 ]]; then - printf "Fatal: some files are missing, cannot create the GitHub release.\n" - exit 1 -fi - printf "Creating the pre-release v%s and uploading the %d files, this can take a while...\n" "${version}" "${#releaseAssets[@]}" gh release create "v${version}" \ --repo element-hq/element-x-android \ From 3b37bef39c68e4b6fe7395cfd50ec9a428e6580d Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 1 Sep 2026 18:20:02 +0200 Subject: [PATCH 87/97] Update dependency com.posthog:posthog-android to v3.60.7 (#7616) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 70bf6894bf..b7d8ee1580 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -229,7 +229,7 @@ haze_materials = { module = "dev.chrisbanes.haze:haze-materials", version.ref = color_picker = "io.mhssn:colorpicker:1.0.0" # Analytics -posthog = "com.posthog:posthog-android:3.56.4" +posthog = "com.posthog:posthog-android:3.60.7" sentry = "io.sentry:sentry-android:8.53.0" # main branch can be tested replacing the version with main-SNAPSHOT matrix_analytics_events = "com.github.matrix-org:matrix-analytics-events:0.37.0" From b97d085f9b75cfcf551d04fc286f9e50c1ffc413 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 2 Sep 2026 08:53:22 +0200 Subject: [PATCH 88/97] Update dependency org.jsoup:jsoup to v1.23.2 (#7620) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index b7d8ee1580..50953594d5 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -199,7 +199,7 @@ serialization_json = { module = "org.jetbrains.kotlinx:kotlinx-serialization-jso kotlinx_collections_immutable = "org.jetbrains.kotlinx:kotlinx-collections-immutable:0.5.1" showkase = { module = "com.airbnb.android:showkase", version.ref = "showkase" } showkase_processor = { module = "com.airbnb.android:showkase-processor", version.ref = "showkase" } -jsoup = "org.jsoup:jsoup:1.23.1" +jsoup = "org.jsoup:jsoup:1.23.2" appyx_core = { module = "com.bumble.appyx:core", version.ref = "appyx" } molecule-runtime = "app.cash.molecule:molecule-runtime:2.2.0" timber = "com.jakewharton.timber:timber:5.0.1" From afc640631227472037a81869f58fd1a46cf9957a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 2 Sep 2026 06:55:15 +0000 Subject: [PATCH 89/97] Update dependencyAnalysis to v3.19.1 --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 50953594d5..b3d3b35efb 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -51,7 +51,7 @@ telephoto = "0.19.0" haze = "1.7.2" # Dependency analysis -dependencyAnalysis = "3.18.0" +dependencyAnalysis = "3.19.1" # DI metro = "1.4.2" From 09d95393d9d4827c58a63cff10544ba2a7e81595 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 2 Sep 2026 09:31:06 +0200 Subject: [PATCH 90/97] Update dependency io.element.android:element-call-embedded to v0.25.0 (#7622) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- gradle/libs.versions.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 50953594d5..9f6f0f6e37 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -242,7 +242,7 @@ sigpwned_emoji4j = "com.sigpwned:emoji4j-core:16.0.0" metro_runtime = { module = "dev.zacsweers.metro:runtime", version.ref = "metro" } # Element Call -element_call_embedded = "io.element.android:element-call-embedded:0.24.0" +element_call_embedded = "io.element.android:element-call-embedded:0.25.0" # Auto services google_autoservice = { module = "com.google.auto.service:auto-service", version.ref = "autoservice" } From 7a2f3952cb1fcf393865c676224aa61dbc6fdb94 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 2 Sep 2026 10:59:51 +0200 Subject: [PATCH 91/97] Move Gallery and Knock feature flags to Labs. --- .../android/features/preferences/impl/labs/LabsPresenter.kt | 6 ++++++ features/preferences/impl/src/main/res/values/localazy.xml | 4 ++++ .../android/libraries/featureflag/api/FeatureFlags.kt | 2 ++ 3 files changed, 12 insertions(+) diff --git a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/labs/LabsPresenter.kt b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/labs/LabsPresenter.kt index f9576f93e4..158135e616 100644 --- a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/labs/LabsPresenter.kt +++ b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/labs/LabsPresenter.kt @@ -89,14 +89,20 @@ class LabsPresenter( key(enabledFeature.feature.key) { val title = when (enabledFeature.feature) { FeatureFlags.Threads -> stringProvider.getString(R.string.screen_labs_enable_threads) + FeatureFlags.SendGalleryMessages -> stringProvider.getString(R.string.screen_labs_enable_gallery) + FeatureFlags.Knock -> stringProvider.getString(R.string.screen_labs_enable_knocking) else -> enabledFeature.feature.title } val description = when (enabledFeature.feature) { FeatureFlags.Threads -> stringProvider.getString(R.string.screen_labs_enable_threads_description) + FeatureFlags.SendGalleryMessages -> stringProvider.getString(R.string.screen_labs_enable_gallery_description) + FeatureFlags.Knock -> stringProvider.getString(R.string.screen_labs_enable_knocking_description) else -> enabledFeature.feature.description } val icon = when (enabledFeature.feature) { FeatureFlags.Threads -> CompoundIcons.Threads() + FeatureFlags.SendGalleryMessages -> CompoundIcons.Image() + FeatureFlags.Knock -> CompoundIcons.AskToJoin() else -> null } remember(enabledFeature) { diff --git a/features/preferences/impl/src/main/res/values/localazy.xml b/features/preferences/impl/src/main/res/values/localazy.xml index b4b97375b5..b6e4eeffe3 100644 --- a/features/preferences/impl/src/main/res/values/localazy.xml +++ b/features/preferences/impl/src/main/res/values/localazy.xml @@ -52,6 +52,10 @@ "Unable to update profile" "Edit profile" "Updating profile…" + "Gallery messages" + "Send multiple images or videos in one go. Stable on mobile, but not yet supported by web." + "Ask to join" + "Users can request access to a room that is not open for anyone to join. Stable on mobile, web implementation exists but is experimental." "Enable thread replies" "The app will restart to apply this change." "Try out our latest ideas in development. These features are not finalised; they may be unstable, may change." 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 4a8894e99c..afceabba25 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 @@ -51,6 +51,7 @@ enum class FeatureFlags( description = "Allow creating rooms which users can request access to.", defaultValue = { false }, isFinished = false, + isInLabs = true, ), PrintLogsToLogcat( key = "feature.print_logs_to_logcat", @@ -151,6 +152,7 @@ enum class FeatureFlags( description = "Allow sending multiple media items in a single message.", defaultValue = { false }, isFinished = false, + isInLabs = true, ), MessageSearch( key = "feature.message_search", From 924cf2caf30079a11050e2c106144f704ed1c96b Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 2 Sep 2026 11:02:49 +0200 Subject: [PATCH 92/97] Reorder feature flags in labs: Thread, Gallery, Knock --- .../libraries/featureflag/api/FeatureFlags.kt | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) 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 afceabba25..af7ccef97f 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 @@ -45,14 +45,6 @@ enum class FeatureFlags( defaultValue = { false }, isFinished = false, ), - Knock( - key = "feature.knock", - title = "Ask to join", - description = "Allow creating rooms which users can request access to.", - defaultValue = { false }, - isFinished = false, - isInLabs = true, - ), PrintLogsToLogcat( key = "feature.print_logs_to_logcat", title = "Print logs to logcat", @@ -154,6 +146,14 @@ enum class FeatureFlags( isFinished = false, isInLabs = true, ), + Knock( + key = "feature.knock", + title = "Ask to join", + description = "Allow creating rooms which users can request access to.", + defaultValue = { false }, + isFinished = false, + isInLabs = true, + ), MessageSearch( key = "feature.message_search", title = "Message search", From eb121289fef250ab3245e5a6167256037194cc12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jorge=20Mart=C3=ADn?= Date: Wed, 2 Sep 2026 11:29:41 +0200 Subject: [PATCH 93/97] Add `GRADLE_OPTS` for `sync-localazy.yml` flow --- .github/workflows/sync-localazy.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/sync-localazy.yml b/.github/workflows/sync-localazy.yml index 939354f12f..2961988540 100644 --- a/.github/workflows/sync-localazy.yml +++ b/.github/workflows/sync-localazy.yml @@ -7,6 +7,9 @@ on: permissions: {} +env: + GRADLE_OPTS: -Dorg.gradle.jvmargs=-Xmx8g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError -XX:+UseG1GC -Dkotlin.daemon.jvm.options=-Xmx4g + jobs: sync-localazy: runs-on: ubuntu-latest From dfccde93c672fb91831fdbdd99b41754ebcaf6b4 Mon Sep 17 00:00:00 2001 From: jmartinesp <480955+jmartinesp@users.noreply.github.com> Date: Wed, 2 Sep 2026 10:07:08 +0000 Subject: [PATCH 94/97] Sync Strings from Localazy --- app/src/main/res/xml/locales_config.xml | 1 + .../src/main/res/values-de/translations.xml | 2 +- .../src/main/res/values-fr/translations.xml | 2 +- .../src/main/res/values-it/translations.xml | 2 +- .../src/main/res/values-pl/translations.xml | 2 +- .../src/main/res/values-uk/translations.xml | 2 +- .../src/main/res/values-zh/translations.xml | 2 +- appnav/src/main/res/values/localazy.xml | 2 +- .../main/res/values-zh-rTW/translations.xml | 4 +- .../src/main/res/values-de/translations.xml | 2 +- .../main/res/values-zh-rTW/translations.xml | 2 +- .../src/main/res/values-pl/translations.xml | 2 +- .../src/main/res/values-de/translations.xml | 14 +- .../src/main/res/values-de/translations.xml | 16 +- .../src/main/res/values-it/translations.xml | 4 +- .../src/main/res/values-pl/translations.xml | 4 +- .../src/main/res/values-ro/translations.xml | 4 +- .../src/main/res/values-uk/translations.xml | 2 + .../src/main/res/values-zh/translations.xml | 2 + .../impl/src/main/res/values/localazy.xml | 4 +- .../src/main/res/values-de/translations.xml | 6 +- .../src/main/res/values-el/translations.xml | 4 + .../src/main/res/values-de/translations.xml | 4 +- .../src/main/res/values-pl/translations.xml | 2 +- .../src/main/res/values-uk/translations.xml | 2 +- .../src/main/res/values-zh/translations.xml | 2 +- .../impl/src/main/res/values/localazy.xml | 2 +- .../src/main/res/values-de/translations.xml | 4 +- .../src/main/res/values-de/translations.xml | 2 +- .../src/main/res/values-de/translations.xml | 15 +- .../src/main/res/values-it/translations.xml | 1 + .../src/main/res/values-ja/translations.xml | 1 + .../src/main/res/values-de/translations.xml | 1 + .../src/main/res/values-de/translations.xml | 10 +- .../src/main/res/values-de/translations.xml | 45 +- .../src/main/res/values-el/translations.xml | 4 +- .../src/main/res/values-et/translations.xml | 2 +- .../src/main/res/values-fr/translations.xml | 6 +- .../src/main/res/values-hr/translations.xml | 8 + .../src/main/res/values-it/translations.xml | 14 +- .../src/main/res/values-ko/translations.xml | 2 +- .../src/main/res/values-pl/translations.xml | 6 +- .../src/main/res/values-uk/translations.xml | 8 +- .../main/res/values-zh-rTW/translations.xml | 8 + .../src/main/res/values-zh/translations.xml | 4 +- .../impl/src/main/res/values/localazy.xml | 6 +- .../src/main/res/values-de/translations.xml | 30 +- .../src/main/res/values-el/translations.xml | 2 +- .../src/main/res/values-et/translations.xml | 4 + .../src/main/res/values-fr/translations.xml | 5 + .../src/main/res/values-hr/translations.xml | 5 + .../src/main/res/values-in/translations.xml | 11 + .../src/main/res/values-it/translations.xml | 11 +- .../src/main/res/values-ja/translations.xml | 3 + .../src/main/res/values-pl/translations.xml | 7 +- .../src/main/res/values-uk/translations.xml | 7 +- .../src/main/res/values-zh/translations.xml | 7 +- .../impl/src/main/res/values/localazy.xml | 2 +- .../src/main/res/values-el/translations.xml | 4 +- .../src/main/res/values-ja/translations.xml | 2 +- .../src/main/res/values-de/translations.xml | 34 +- .../src/main/res/values-el/translations.xml | 6 + .../src/main/res/values-et/translations.xml | 2 +- .../src/main/res/values-fr/translations.xml | 4 +- .../src/main/res/values-in/translations.xml | 14 + .../src/main/res/values-it/translations.xml | 10 +- .../src/main/res/values-ja/translations.xml | 8 + .../src/main/res/values-ko/translations.xml | 2 +- .../src/main/res/values-pl/translations.xml | 4 +- .../src/main/res/values-uk/translations.xml | 4 +- .../src/main/res/values-zh/translations.xml | 8 +- .../impl/src/main/res/values/localazy.xml | 4 +- .../src/main/res/values-de/translations.xml | 2 + .../src/main/res/values-in/translations.xml | 2 + .../src/main/res/values-de/translations.xml | 2 +- .../src/main/res/values-fr/translations.xml | 2 +- .../src/main/res/values-pl/translations.xml | 2 +- .../src/main/res/values-uk/translations.xml | 2 +- .../src/main/res/values-zh/translations.xml | 2 +- .../impl/src/main/res/values/localazy.xml | 2 +- .../src/main/res/values-de/translations.xml | 7 +- .../src/main/res/values-de/translations.xml | 37 +- .../src/main/res/values-el/translations.xml | 1 + .../src/main/res/values-et/translations.xml | 2 + .../src/main/res/values-fr/translations.xml | 2 +- .../src/main/res/values-hr/translations.xml | 3 + .../src/main/res/values-in/translations.xml | 3 +- .../src/main/res/values-it/translations.xml | 6 +- .../src/main/res/values-ja/translations.xml | 3 + .../src/main/res/values-pl/translations.xml | 4 +- .../src/main/res/values-uk/translations.xml | 6 +- .../main/res/values-zh-rTW/translations.xml | 3 +- .../src/main/res/values-zh/translations.xml | 8 +- .../impl/src/main/res/values/localazy.xml | 4 +- .../src/main/res/values-de/translations.xml | 10 +- .../src/main/res/values-de/translations.xml | 62 +- .../src/main/res/values-in/translations.xml | 2 + .../src/main/res/values-pl/translations.xml | 2 +- .../impl/src/main/res/values/localazy.xml | 2 +- .../src/main/res/values-de/translations.xml | 12 +- .../src/main/res/values-zh/translations.xml | 2 +- .../src/main/res/values-de/translations.xml | 10 +- .../src/main/res/values-fr/translations.xml | 2 +- .../src/main/res/values-it/translations.xml | 2 +- .../src/main/res/values-pl/translations.xml | 2 +- .../src/main/res/values-uk/translations.xml | 2 +- .../src/main/res/values-zh/translations.xml | 2 +- .../impl/src/main/res/values/localazy.xml | 6 +- .../src/main/res/values-de/translations.xml | 4 +- .../src/main/res/values-de/translations.xml | 4 +- .../src/main/res/values-de/translations.xml | 4 +- .../src/main/res/values-zh/translations.xml | 4 +- .../src/main/res/values-de/translations.xml | 1 + .../src/main/res/values-de/translations.xml | 25 +- .../src/main/res/values-el/translations.xml | 2 +- .../src/main/res/values-et/translations.xml | 5 +- .../src/main/res/values-fr/translations.xml | 2 + .../src/main/res/values-hr/translations.xml | 2 + .../src/main/res/values-in/translations.xml | 5 + .../src/main/res/values-it/translations.xml | 7 + .../src/main/res/values-ja/translations.xml | 6 + .../src/main/res/values-pl/translations.xml | 6 +- .../src/main/res/values-uk/translations.xml | 6 +- .../main/res/values-zh-rTW/translations.xml | 2 + .../impl/src/main/res/values/localazy.xml | 4 +- .../src/main/res/values-de/translations.xml | 4 +- .../src/main/res/values-de/translations.xml | 162 +- .../src/main/res/values-el/translations.xml | 4 +- .../src/main/res/values-fr/translations.xml | 2 +- .../src/main/res/values-hr/translations.xml | 9 + .../src/main/res/values-in/translations.xml | 12 + .../src/main/res/values-it/translations.xml | 31 +- .../src/main/res/values-ja/translations.xml | 31 + .../src/main/res/values-pl/translations.xml | 6 +- .../src/main/res/values-uk/translations.xml | 2 +- .../main/res/values-zh-rTW/translations.xml | 8 + .../src/main/res/values-zh/translations.xml | 4 +- .../src/main/res/values/localazy.xml | 2 +- plugins/src/main/kotlin/extension/locales.kt | 1 + .../appnav.loggedin_LoggedInView_Day_1_de.png | 4 +- .../appnav.loggedin_LoggedInView_Day_2_de.png | 4 +- .../appnav.loggedin_LoggedInView_Day_3_de.png | 4 +- .../appnav.loggedin_LoggedInView_Day_4_de.png | 4 +- .../appnav.loggedin_LoggedInView_Day_5_de.png | 4 +- .../appnav.loggedin_LoggedInView_Day_6_de.png | 3 + ...yncStateViewServerUnreachable_Day_0_de.png | 3 + ...appnav.loggedin_SyncStateView_Day_0_de.png | 4 +- ...ytics.impl_AnalyticsOptInView_Day_0_de.png | 4 +- ...ytics.impl_AnalyticsOptInView_Day_1_de.png | 4 +- ...s.call.impl.ui_CallScreenView_Day_1_de.png | 4 +- ....impl.addpeople_AddPeopleView_Day_0_de.png | 4 +- ....impl.addpeople_AddPeopleView_Day_1_de.png | 4 +- ....impl.addpeople_AddPeopleView_Day_2_de.png | 4 +- ....impl.addpeople_AddPeopleView_Day_3_de.png | 4 +- ...nfigureroom_ConfigureRoomViewDark_0_de.png | 4 +- ...nfigureroom_ConfigureRoomViewDark_1_de.png | 4 +- ...nfigureroom_ConfigureRoomViewDark_2_de.png | 4 +- ...nfigureroom_ConfigureRoomViewDark_3_de.png | 4 +- ...nfigureroom_ConfigureRoomViewDark_4_de.png | 4 +- ...nfigureroom_ConfigureRoomViewDark_5_de.png | 4 +- ...nfigureroom_ConfigureRoomViewDark_6_de.png | 4 +- ...nfigureroom_ConfigureRoomViewDark_7_de.png | 4 +- ...nfigureroom_ConfigureRoomViewDark_8_de.png | 4 +- ...figureroom_ConfigureRoomViewLight_0_de.png | 4 +- ...figureroom_ConfigureRoomViewLight_1_de.png | 4 +- ...figureroom_ConfigureRoomViewLight_2_de.png | 4 +- ...figureroom_ConfigureRoomViewLight_3_de.png | 4 +- ...figureroom_ConfigureRoomViewLight_4_de.png | 4 +- ...figureroom_ConfigureRoomViewLight_5_de.png | 4 +- ...figureroom_ConfigureRoomViewLight_6_de.png | 4 +- ...figureroom_ConfigureRoomViewLight_7_de.png | 4 +- ...figureroom_ConfigureRoomViewLight_8_de.png | 4 +- ..._SelectParentSpaceBottomSheet_Day_0_de.png | 4 +- ...hooseSelfVerificationModeView_Day_4_de.png | 4 +- ...onents_HomeTopBarMultiAccount_Day_0_de.png | 4 +- ...nents_HomeTopBarWithIndicator_Day_0_de.png | 4 +- ...mponents_HomeTopBarWithStatus_Day_0_de.png | 3 + ...me.impl.components_HomeTopBar_Day_0_de.png | 4 +- ...omponents_RoomListContentView_Day_1_de.png | 4 +- ...omponents_RoomListContentView_Day_4_de.png | 4 +- ...pl.components_RoomSummaryRow_Day_33_de.png | 4 +- ...pl.components_RoomSummaryRow_Day_34_de.png | 4 +- ...onents_SetUpRecoveryKeyBanner_Day_0_de.png | 4 +- ....roomlist_RoomListContextMenu_Day_0_de.png | 4 +- ....roomlist_RoomListContextMenu_Day_1_de.png | 4 +- ....roomlist_RoomListContextMenu_Day_2_de.png | 4 +- ...ist_RoomListDeclineInviteMenu_Day_0_de.png | 4 +- ...ist_RoomListDeclineInviteMenu_Day_1_de.png | 4 +- ...ist_RoomListDeclineInviteMenu_Day_2_de.png | 4 +- ...me.impl.spaces_HomeSpacesView_Day_0_de.png | 4 +- ...me.impl.spaces_HomeSpacesView_Day_1_de.png | 4 +- ...me.impl.spaces_HomeSpacesView_Day_2_de.png | 4 +- .../features.home.impl_HomeView_Day_0_de.png | 4 +- .../features.home.impl_HomeView_Day_10_de.png | 4 +- .../features.home.impl_HomeView_Day_13_de.png | 4 +- .../features.home.impl_HomeView_Day_14_de.png | 4 +- .../features.home.impl_HomeView_Day_15_de.png | 4 +- .../features.home.impl_HomeView_Day_16_de.png | 4 +- .../features.home.impl_HomeView_Day_1_de.png | 4 +- .../features.home.impl_HomeView_Day_2_de.png | 4 +- .../features.home.impl_HomeView_Day_3_de.png | 4 +- .../features.home.impl_HomeView_Day_4_de.png | 4 +- .../features.home.impl_HomeView_Day_5_de.png | 4 +- .../features.home.impl_HomeView_Day_6_de.png | 4 +- .../features.home.impl_HomeView_Day_7_de.png | 4 +- .../features.home.impl_HomeView_Day_8_de.png | 4 +- .../features.home.impl_HomeView_Day_9_de.png | 4 +- ...cline_AcceptDeclineInviteView_Day_1_de.png | 4 +- ...cline_AcceptDeclineInviteView_Day_2_de.png | 4 +- ...cline_AcceptDeclineInviteView_Day_3_de.png | 4 +- ...cline_AcceptDeclineInviteView_Day_4_de.png | 4 +- ...cline_AcceptDeclineInviteView_Day_5_de.png | 4 +- ...eandblock_DeclineAndBlockView_Day_0_de.png | 4 +- ...eandblock_DeclineAndBlockView_Day_1_de.png | 4 +- ...eandblock_DeclineAndBlockView_Day_2_de.png | 4 +- ...eandblock_DeclineAndBlockView_Day_3_de.png | 4 +- ...eandblock_DeclineAndBlockView_Day_4_de.png | 4 +- ...s.joinroom.impl_JoinRoomView_Day_13_de.png | 4 +- ...es.joinroom.impl_JoinRoomView_Day_5_de.png | 4 +- ...anner_KnockRequestsBannerView_Day_2_de.png | 4 +- ...anner_KnockRequestsBannerView_Day_3_de.png | 4 +- ....leaveroom.impl_LeaveRoomView_Day_1_de.png | 4 +- ....leaveroom.impl_LeaveRoomView_Day_2_de.png | 4 +- ....leaveroom.impl_LeaveRoomView_Day_3_de.png | 4 +- ....leaveroom.impl_LeaveRoomView_Day_4_de.png | 4 +- ....leaveroom.impl_LeaveRoomView_Day_6_de.png | 4 +- ....leaveroom.impl_LeaveRoomView_Day_7_de.png | 4 +- ...ens.desktop_DesktopNoticeView_Day_0_de.png | 4 +- ...ens.desktop_DesktopNoticeView_Day_1_de.png | 4 +- ....impl.screens.error_ErrorView_Day_4_de.png | 4 +- ....impl.screens.error_ErrorView_Day_5_de.png | 4 +- ....impl.screens.error_ErrorView_Day_7_de.png | 4 +- ....impl.screens.error_ErrorView_Day_8_de.png | 4 +- ...screens.qrcode_ShowQrCodeView_Day_0_de.png | 4 +- ...screens.qrcode_ShowQrCodeView_Day_1_de.png | 4 +- ...ns.root_LinkNewDeviceRootView_Day_0_de.png | 4 +- ...ns.root_LinkNewDeviceRootView_Day_4_de.png | 4 +- ...api_LiveLocationSharingBanner_Day_0_de.png | 4 +- ...nderingMapsNotSupportedDialog_Day_0_de.png | 4 +- ...pl.common.ui_LocationShareRow_Day_0_de.png | 4 +- ...on.impl.show_ShowLocationView_Day_1_de.png | 4 +- ....components_PinEntryTextField_Day_0_de.png | 3 + ...ttings_LockScreenSettingsView_Day_1_de.png | 4 +- ....biometric_SetupBiometricView_Day_0_de.png | 4 +- ...n.impl.setup.pin_SetupPinView_Day_3_de.png | 4 +- ...n.impl.setup.pin_SetupPinView_Day_4_de.png | 4 +- ...ider_AccountProviderOtherView_Day_0_de.png | 3 - ...changeserver_ChangeServerView_Day_2_de.png | 4 +- ...changeserver_ChangeServerView_Day_5_de.png | 4 +- ...changeserver_ChangeServerView_Day_6_de.png | 4 +- ...SlidingSyncNotSupportedDialog_Day_0_de.png | 4 +- ...ogin.impl.login_LoginModeView_Day_0_de.png | 4 +- ...ogin.impl.login_LoginModeView_Day_4_de.png | 4 +- ...ogin.impl.login_LoginModeView_Day_5_de.png | 4 +- ...der_ChangeAccountProviderView_Day_0_de.png | 3 - ...der_ChangeAccountProviderView_Day_1_de.png | 3 - ...hclassic_LoginWithClassicView_Day_0_de.png | 4 +- ...hclassic_LoginWithClassicView_Day_1_de.png | 4 +- ...eybackup_MissingKeyBackupView_Day_0_de.png | 4 +- ...er_ConfirmAccountProviderView_Day_0_de.png | 4 +- ...er_ConfirmAccountProviderView_Day_1_de.png | 4 +- ...er_ConfirmAccountProviderView_Day_2_de.png | 4 +- ...er_ConfirmAccountProviderView_Day_3_de.png | 3 + ...eateaccount_CreateAccountView_Day_0_de.png | 3 - ...eateaccount_CreateAccountView_Day_1_de.png | 3 - ...eateaccount_CreateAccountView_Day_2_de.png | 3 - ...eateaccount_CreateAccountView_Day_3_de.png | 3 - ...ens.onboarding_OnBoardingView_Day_0_de.png | 4 +- ...ens.onboarding_OnBoardingView_Day_1_de.png | 4 +- ...ens.onboarding_OnBoardingView_Day_2_de.png | 4 +- ...ens.onboarding_OnBoardingView_Day_3_de.png | 4 +- ...ens.onboarding_OnBoardingView_Day_4_de.png | 4 +- ...ens.onboarding_OnBoardingView_Day_5_de.png | 4 +- ...ens.onboarding_OnBoardingView_Day_8_de.png | 4 +- ...mation_QrCodeConfirmationView_Day_1_de.png | 4 +- ...mation_QrCodeConfirmationView_Day_2_de.png | 4 +- ....qrcode.error_QrCodeErrorView_Day_4_de.png | 4 +- ....qrcode.error_QrCodeErrorView_Day_6_de.png | 4 +- ....qrcode.intro_QrCodeIntroView_Day_0_de.png | 4 +- ...ns.qrcode.scan_QrCodeScanView_Day_1_de.png | 4 +- ...der_SearchAccountProviderView_Day_0_de.png | 3 - ...der_SearchAccountProviderView_Day_1_de.png | 3 - ....impl_AccountDeactivationView_Day_2_de.png | 4 +- ....impl_AccountDeactivationView_Day_3_de.png | 4 +- ...onlist_ActionListViewContent_Day_11_de.png | 4 +- ...onlist_ActionListViewContent_Day_12_de.png | 4 +- ...ionlist_ActionListViewContent_Day_2_de.png | 4 +- ...ionlist_ActionListViewContent_Day_3_de.png | 4 +- ...ionlist_ActionListViewContent_Day_4_de.png | 4 +- ...ionlist_ActionListViewContent_Day_5_de.png | 4 +- ...ionlist_ActionListViewContent_Day_6_de.png | 4 +- ...ionlist_ActionListViewContent_Day_7_de.png | 4 +- ...ionlist_ActionListViewContent_Day_8_de.png | 4 +- ...ionlist_ActionListViewContent_Day_9_de.png | 4 +- ...eeditor_AttachmentImageEditorView_0_de.png | 4 +- ...eeditor_AttachmentImageEditorView_1_de.png | 4 +- ...eeditor_AttachmentImageEditorView_2_de.png | 4 +- ...eeditor_AttachmentImageEditorView_3_de.png | 4 +- ...eeditor_AttachmentImageEditorView_4_de.png | 4 +- ...eeditor_AttachmentImageEditorView_5_de.png | 4 +- ...eeditor_AttachmentImageEditorView_6_de.png | 4 +- ...eeditor_AttachmentImageEditorView_7_de.png | 4 +- ...eview_AttachmentsPreviewGalleryView_de.png | 4 +- ...ts.preview_AttachmentsPreviewView_0_de.png | 4 +- ...ts.preview_AttachmentsPreviewView_1_de.png | 4 +- ...ts.preview_AttachmentsPreviewView_2_de.png | 4 +- ...ts.preview_AttachmentsPreviewView_3_de.png | 4 +- ...ts.preview_AttachmentsPreviewView_4_de.png | 4 +- ...ts.preview_AttachmentsPreviewView_5_de.png | 4 +- ...ts.preview_AttachmentsPreviewView_6_de.png | 4 +- ...ts.preview_AttachmentsPreviewView_7_de.png | 4 +- ...ts.preview_AttachmentsPreviewView_8_de.png | 4 +- ...ts.preview_AttachmentsPreviewView_9_de.png | 4 +- ...ntity_IdentityChangeStateView_Day_1_de.png | 4 +- ...ntity_IdentityChangeStateView_Day_2_de.png | 4 +- ...essagesViewWithIdentityChange_Day_0_de.png | 4 +- ...essagesViewWithIdentityChange_Day_1_de.png | 4 +- ...essagesViewWithIdentityChange_Day_2_de.png | 4 +- ...veVerifiedUserSendFailureView_Day_2_de.png | 4 +- ...ecomposer_MessageComposerView_Day_0_de.png | 4 +- ...d.list_PinnedMessagesListView_Day_2_de.png | 4 +- ...impl.report_ReportMessageView_Day_0_de.png | 4 +- ...impl.report_ReportMessageView_Day_1_de.png | 4 +- ...impl.report_ReportMessageView_Day_2_de.png | 4 +- ...impl.report_ReportMessageView_Day_3_de.png | 4 +- ...impl.report_ReportMessageView_Day_4_de.png | 4 +- ...impl.report_ReportMessageView_Day_5_de.png | 4 +- ...ent_TimelineItemEncryptedView_Day_1_de.png | 4 +- ...ent_TimelineItemEncryptedView_Day_2_de.png | 4 +- ...ts_ActiveCallTimelineItemView_Day_0_de.png | 4 +- ...mponents_ActiveCallTimelineItemView_de.png | 4 +- ....components_MessageShieldView_Day_0_de.png | 4 +- ...entsViewScanningContentFailed_Day_0_de.png | 3 + ...ts_TimelineItemCallNotifyView_Day_0_de.png | 4 +- ...lineItemEventRowDisambiguated_Day_0_de.png | 3 + ...nents_TimelineItemEventRowUtd_Day_0_de.png | 4 +- ...ineItemEventRowWithReplyOther_Day_0_de.png | 3 - ...ineItemEventRowWithReplyOther_Day_1_de.png | 4 +- ...TimelineItemEventRowWithReply_Day_0_de.png | 3 - ...imelineItemEventRowWithReply_Day_10_de.png | 3 + ...TimelineItemEventRowWithReply_Day_2_de.png | 3 + ...TimelineItemEventRowWithReply_Day_6_de.png | 3 + ...lineItemRedactedMessagesGroup_Day_0_de.png | 3 + ...lineItemScanningContentFailed_Day_0_de.png | 3 + ...neItemScanningContentNotFound_Day_0_de.png | 3 + ...ningContentWithInvalidReplies_Day_0_de.png | 3 + ...nningContentWithRepliesFailed_Day_0_de.png | 3 + ...failure_SendFailureDialogView_Day_1_de.png | 3 + ...failure_SendFailureDialogView_Day_2_de.png | 3 + ...failure_SendFailureDialogView_Day_3_de.png | 3 + ...failure_SendFailureDialogView_Day_4_de.png | 3 + ...failure_SendFailureDialogView_Day_5_de.png | 3 + ...typing_TypingNotificationView_Day_6_de.png | 4 +- ...s.messages.impl_MessagesView_Day_11_de.png | 4 +- ...es.messages.impl_MessagesView_Day_4_de.png | 4 +- ...es.messages.impl_MessagesView_Day_8_de.png | 4 +- ....migration.impl_MigrationView_Day_1_de.png | 4 +- ...lContentViewMultipleSelection_Day_0_de.png | 3 + ...ll.impl.create_CreatePollView_Day_0_de.png | 4 +- ...ll.impl.create_CreatePollView_Day_1_de.png | 4 +- ...ll.impl.create_CreatePollView_Day_2_de.png | 4 +- ...ll.impl.create_CreatePollView_Day_3_de.png | 4 +- ...ll.impl.create_CreatePollView_Day_6_de.png | 4 +- ...ll.impl.create_CreatePollView_Day_7_de.png | 4 +- ...ll.impl.create_CreatePollView_Day_8_de.png | 3 + ....impl.history_PollHistoryView_Day_1_de.png | 4 +- ....impl.history_PollHistoryView_Day_4_de.png | 4 +- ...dvanced_AdvancedSettingsViewBlack_0_de.png | 4 +- ...dvanced_AdvancedSettingsViewBlack_1_de.png | 4 +- ...dvanced_AdvancedSettingsViewBlack_2_de.png | 4 +- ...dvanced_AdvancedSettingsViewBlack_3_de.png | 4 +- ...dvanced_AdvancedSettingsViewBlack_4_de.png | 4 +- ...dvanced_AdvancedSettingsViewBlack_5_de.png | 4 +- ...dvanced_AdvancedSettingsViewBlack_6_de.png | 4 +- ...dvanced_AdvancedSettingsViewBlack_7_de.png | 4 +- ...dvanced_AdvancedSettingsViewBlack_8_de.png | 4 +- ...advanced_AdvancedSettingsViewDark_0_de.png | 4 +- ...advanced_AdvancedSettingsViewDark_1_de.png | 4 +- ...advanced_AdvancedSettingsViewDark_2_de.png | 4 +- ...advanced_AdvancedSettingsViewDark_3_de.png | 4 +- ...advanced_AdvancedSettingsViewDark_4_de.png | 4 +- ...advanced_AdvancedSettingsViewDark_5_de.png | 4 +- ...advanced_AdvancedSettingsViewDark_6_de.png | 4 +- ...advanced_AdvancedSettingsViewDark_7_de.png | 4 +- ...advanced_AdvancedSettingsViewDark_8_de.png | 4 +- ...dvanced_AdvancedSettingsViewLight_0_de.png | 4 +- ...dvanced_AdvancedSettingsViewLight_1_de.png | 4 +- ...dvanced_AdvancedSettingsViewLight_2_de.png | 4 +- ...dvanced_AdvancedSettingsViewLight_3_de.png | 4 +- ...dvanced_AdvancedSettingsViewLight_4_de.png | 4 +- ...dvanced_AdvancedSettingsViewLight_5_de.png | 4 +- ...dvanced_AdvancedSettingsViewLight_6_de.png | 4 +- ...dvanced_AdvancedSettingsViewLight_7_de.png | 4 +- ...dvanced_AdvancedSettingsViewLight_8_de.png | 4 +- ...veloper_DeveloperSettingsView_Day_3_de.png | 3 + ...aultNotificationSettingOption_Day_0_de.png | 4 +- ...efaultNotificationSettingView_Day_4_de.png | 4 +- ...ions_NotificationSettingsView_Day_0_de.png | 4 +- ...ons_NotificationSettingsView_Day_12_de.png | 4 +- ...ons_NotificationSettingsView_Day_14_de.png | 4 +- ...ons_NotificationSettingsView_Day_15_de.png | 4 +- ...ons_NotificationSettingsView_Day_16_de.png | 4 +- ...ons_NotificationSettingsView_Day_17_de.png | 4 +- ...ons_NotificationSettingsView_Day_18_de.png | 4 +- ...ons_NotificationSettingsView_Day_19_de.png | 4 +- ...ions_NotificationSettingsView_Day_1_de.png | 4 +- ...ons_NotificationSettingsView_Day_20_de.png | 4 +- ...ions_NotificationSettingsView_Day_2_de.png | 4 +- ...ions_NotificationSettingsView_Day_3_de.png | 4 +- ...ions_NotificationSettingsView_Day_4_de.png | 4 +- ...ions_NotificationSettingsView_Day_5_de.png | 4 +- ...ions_NotificationSettingsView_Day_6_de.png | 4 +- ...ions_NotificationSettingsView_Day_7_de.png | 4 +- ...ions_NotificationSettingsView_Day_8_de.png | 4 +- ...ions_NotificationSettingsView_Day_9_de.png | 4 +- ...impl.root_PreferencesRootViewDark_0_de.png | 4 +- ...impl.root_PreferencesRootViewDark_1_de.png | 4 +- ...impl.root_PreferencesRootViewDark_2_de.png | 4 +- ...impl.root_PreferencesRootViewDark_3_de.png | 4 +- ...impl.root_PreferencesRootViewDark_4_de.png | 4 +- ...impl.root_PreferencesRootViewDark_5_de.png | 4 +- ...mpl.root_PreferencesRootViewLight_0_de.png | 4 +- ...mpl.root_PreferencesRootViewLight_1_de.png | 4 +- ...mpl.root_PreferencesRootViewLight_2_de.png | 4 +- ...mpl.root_PreferencesRootViewLight_3_de.png | 4 +- ...mpl.root_PreferencesRootViewLight_4_de.png | 4 +- ...mpl.root_PreferencesRootViewLight_5_de.png | 4 +- ...mpl.userstatus_UserStatusView_Day_0_de.png | 3 + ...mpl.userstatus_UserStatusView_Day_2_de.png | 3 + ...mpl.userstatus_UserStatusView_Day_3_de.png | 3 + ...mpl.userstatus_UserStatusView_Day_4_de.png | 3 + ...mpl.userstatus_UserStatusView_Day_5_de.png | 4 +- ...e.impl.bugreport_BugReportViewDay_0_de.png | 4 +- ...e.impl.bugreport_BugReportViewDay_1_de.png | 4 +- ...e.impl.bugreport_BugReportViewDay_2_de.png | 4 +- ...e.impl.bugreport_BugReportViewDay_3_de.png | 4 +- ...e.impl.bugreport_BugReportViewDay_4_de.png | 4 +- ...eportroom.impl_ReportRoomView_Day_0_de.png | 4 +- ...eportroom.impl_ReportRoomView_Day_1_de.png | 4 +- ...eportroom.impl_ReportRoomView_Day_2_de.png | 4 +- ...eportroom.impl_ReportRoomView_Day_3_de.png | 4 +- ...eportroom.impl_ReportRoomView_Day_4_de.png | 4 +- ...ons_ChangeRoomPermissionsView_Day_0_de.png | 4 +- ...ons_ChangeRoomPermissionsView_Day_1_de.png | 4 +- ...ons_ChangeRoomPermissionsView_Day_2_de.png | 4 +- ...ons_ChangeRoomPermissionsView_Day_3_de.png | 4 +- ...ons_ChangeRoomPermissionsView_Day_4_de.png | 4 +- ...ons_ChangeRoomPermissionsView_Day_5_de.png | 4 +- ...ons_ChangeRoomPermissionsView_Day_6_de.png | 4 +- ....invite_RoomInviteMembersView_Day_0_de.png | 4 +- ....invite_RoomInviteMembersView_Day_1_de.png | 4 +- ....invite_RoomInviteMembersView_Day_2_de.png | 4 +- ....invite_RoomInviteMembersView_Day_3_de.png | 4 +- ...pl.members_RoomMemberListView_Day_6_de.png | 4 +- ...oomNotificationSettingsOption_Day_0_de.png | 4 +- ..._RoomNotificationSettingsView_Day_0_de.png | 4 +- ..._RoomNotificationSettingsView_Day_1_de.png | 4 +- ..._RoomNotificationSettingsView_Day_2_de.png | 4 +- ..._RoomNotificationSettingsView_Day_3_de.png | 4 +- ..._RoomNotificationSettingsView_Day_4_de.png | 4 +- ..._RoomNotificationSettingsView_Day_5_de.png | 4 +- ..._RoomNotificationSettingsView_Day_6_de.png | 4 +- ...dRoomNotificationSettingsView_Day_0_de.png | 4 +- ....roomdetails.impl_RoomDetailsDark_0_de.png | 4 +- ...roomdetails.impl_RoomDetailsDark_10_de.png | 4 +- ...roomdetails.impl_RoomDetailsDark_11_de.png | 4 +- ...roomdetails.impl_RoomDetailsDark_12_de.png | 4 +- ...roomdetails.impl_RoomDetailsDark_13_de.png | 4 +- ...roomdetails.impl_RoomDetailsDark_14_de.png | 4 +- ...roomdetails.impl_RoomDetailsDark_15_de.png | 4 +- ...roomdetails.impl_RoomDetailsDark_16_de.png | 4 +- ...roomdetails.impl_RoomDetailsDark_17_de.png | 4 +- ...roomdetails.impl_RoomDetailsDark_18_de.png | 4 +- ...roomdetails.impl_RoomDetailsDark_19_de.png | 4 +- ....roomdetails.impl_RoomDetailsDark_1_de.png | 4 +- ...roomdetails.impl_RoomDetailsDark_20_de.png | 4 +- ...roomdetails.impl_RoomDetailsDark_21_de.png | 4 +- ...roomdetails.impl_RoomDetailsDark_22_de.png | 4 +- ....roomdetails.impl_RoomDetailsDark_2_de.png | 4 +- ....roomdetails.impl_RoomDetailsDark_3_de.png | 4 +- ....roomdetails.impl_RoomDetailsDark_4_de.png | 4 +- ....roomdetails.impl_RoomDetailsDark_5_de.png | 4 +- ....roomdetails.impl_RoomDetailsDark_6_de.png | 4 +- ....roomdetails.impl_RoomDetailsDark_7_de.png | 4 +- ....roomdetails.impl_RoomDetailsDark_8_de.png | 4 +- ....roomdetails.impl_RoomDetailsDark_9_de.png | 4 +- ...ures.roomdetails.impl_RoomDetails_0_de.png | 4 +- ...res.roomdetails.impl_RoomDetails_10_de.png | 4 +- ...res.roomdetails.impl_RoomDetails_11_de.png | 4 +- ...res.roomdetails.impl_RoomDetails_12_de.png | 4 +- ...res.roomdetails.impl_RoomDetails_13_de.png | 4 +- ...res.roomdetails.impl_RoomDetails_14_de.png | 4 +- ...res.roomdetails.impl_RoomDetails_15_de.png | 4 +- ...res.roomdetails.impl_RoomDetails_16_de.png | 4 +- ...res.roomdetails.impl_RoomDetails_17_de.png | 4 +- ...res.roomdetails.impl_RoomDetails_18_de.png | 4 +- ...res.roomdetails.impl_RoomDetails_19_de.png | 4 +- ...ures.roomdetails.impl_RoomDetails_1_de.png | 4 +- ...res.roomdetails.impl_RoomDetails_20_de.png | 4 +- ...res.roomdetails.impl_RoomDetails_21_de.png | 4 +- ...res.roomdetails.impl_RoomDetails_22_de.png | 4 +- ...ures.roomdetails.impl_RoomDetails_2_de.png | 4 +- ...ures.roomdetails.impl_RoomDetails_3_de.png | 4 +- ...ures.roomdetails.impl_RoomDetails_4_de.png | 4 +- ...ures.roomdetails.impl_RoomDetails_5_de.png | 4 +- ...ures.roomdetails.impl_RoomDetails_6_de.png | 4 +- ...ures.roomdetails.impl_RoomDetails_7_de.png | 4 +- ...ures.roomdetails.impl_RoomDetails_8_de.png | 4 +- ...ures.roomdetails.impl_RoomDetails_9_de.png | 4 +- ...impl_RoomMemberModerationView_Day_0_de.png | 4 +- ...impl_RoomMemberModerationView_Day_1_de.png | 4 +- ...impl_RoomMemberModerationView_Day_2_de.png | 4 +- ...impl_RoomMemberModerationView_Day_3_de.png | 4 +- ...impl_RoomMemberModerationView_Day_6_de.png | 4 +- ...impl_RoomMemberModerationView_Day_7_de.png | 4 +- ...impl_RoomMemberModerationView_Day_8_de.png | 4 +- ...sable_SecureBackupDisableView_Day_0_de.png | 4 +- ...sable_SecureBackupDisableView_Day_1_de.png | 4 +- ...sable_SecureBackupDisableView_Day_2_de.png | 4 +- ...sable_SecureBackupDisableView_Day_3_de.png | 4 +- ...ureBackupEnterRecoveryKeyView_Day_0_de.png | 4 +- ...ureBackupEnterRecoveryKeyView_Day_1_de.png | 4 +- ...ureBackupEnterRecoveryKeyView_Day_2_de.png | 4 +- ...ureBackupEnterRecoveryKeyView_Day_3_de.png | 4 +- ...ureBackupEnterRecoveryKeyView_Day_4_de.png | 4 +- ...et.root_ResetIdentityRootView_Day_0_de.png | 4 +- ...et.root_ResetIdentityRootView_Day_1_de.png | 4 +- ...mpl.root_SecureBackupRootView_Day_0_de.png | 4 +- ...pl.root_SecureBackupRootView_Day_10_de.png | 4 +- ...pl.root_SecureBackupRootView_Day_11_de.png | 4 +- ...pl.root_SecureBackupRootView_Day_12_de.png | 4 +- ...pl.root_SecureBackupRootView_Day_13_de.png | 4 +- ...pl.root_SecureBackupRootView_Day_14_de.png | 4 +- ...pl.root_SecureBackupRootView_Day_15_de.png | 4 +- ...pl.root_SecureBackupRootView_Day_16_de.png | 4 +- ...pl.root_SecureBackupRootView_Day_17_de.png | 4 +- ...mpl.root_SecureBackupRootView_Day_1_de.png | 4 +- ...mpl.root_SecureBackupRootView_Day_2_de.png | 4 +- ...mpl.root_SecureBackupRootView_Day_3_de.png | 4 +- ...mpl.root_SecureBackupRootView_Day_4_de.png | 4 +- ...mpl.root_SecureBackupRootView_Day_5_de.png | 4 +- ...mpl.root_SecureBackupRootView_Day_6_de.png | 4 +- ...mpl.root_SecureBackupRootView_Day_7_de.png | 4 +- ...mpl.root_SecureBackupRootView_Day_8_de.png | 4 +- ...mpl.root_SecureBackupRootView_Day_9_de.png | 4 +- ....setup.views_RecoveryKeyView_Day_10_de.png | 4 +- ....setup.views_RecoveryKeyView_Day_11_de.png | 4 +- ....setup.views_RecoveryKeyView_Day_12_de.png | 4 +- ....setup.views_RecoveryKeyView_Day_13_de.png | 4 +- ....setup.views_RecoveryKeyView_Day_14_de.png | 4 +- ...l.setup.views_RecoveryKeyView_Day_1_de.png | 4 +- ...l.setup.views_RecoveryKeyView_Day_5_de.png | 4 +- ...l.setup.views_RecoveryKeyView_Day_8_de.png | 4 +- ...l.setup.views_RecoveryKeyView_Day_9_de.png | 4 +- ...p_SecureBackupSetupViewChange_Day_1_de.png | 4 +- ...p_SecureBackupSetupViewChange_Day_2_de.png | 4 +- ...p_SecureBackupSetupViewChange_Day_3_de.png | 4 +- ...p_SecureBackupSetupViewChange_Day_5_de.png | 4 +- ...l.setup_SecureBackupSetupView_Day_0_de.png | 4 +- ...l.setup_SecureBackupSetupView_Day_1_de.png | 4 +- ...l.setup_SecureBackupSetupView_Day_2_de.png | 4 +- ...l.setup_SecureBackupSetupView_Day_3_de.png | 4 +- ...l.setup_SecureBackupSetupView_Day_5_de.png | 4 +- ...omaddress_EditRoomAddressView_Day_4_de.png | 4 +- ...l.root_SecurityAndPrivacyViewDark_0_de.png | 4 +- ....root_SecurityAndPrivacyViewDark_10_de.png | 4 +- ....root_SecurityAndPrivacyViewDark_11_de.png | 4 +- ....root_SecurityAndPrivacyViewDark_12_de.png | 4 +- ....root_SecurityAndPrivacyViewDark_13_de.png | 4 +- ....root_SecurityAndPrivacyViewDark_14_de.png | 4 +- ....root_SecurityAndPrivacyViewDark_15_de.png | 4 +- ....root_SecurityAndPrivacyViewDark_16_de.png | 4 +- ....root_SecurityAndPrivacyViewDark_17_de.png | 4 +- ....root_SecurityAndPrivacyViewDark_18_de.png | 4 +- ....root_SecurityAndPrivacyViewDark_19_de.png | 4 +- ...l.root_SecurityAndPrivacyViewDark_1_de.png | 4 +- ....root_SecurityAndPrivacyViewDark_20_de.png | 4 +- ....root_SecurityAndPrivacyViewDark_21_de.png | 4 +- ....root_SecurityAndPrivacyViewDark_22_de.png | 4 +- ....root_SecurityAndPrivacyViewDark_23_de.png | 4 +- ...l.root_SecurityAndPrivacyViewDark_2_de.png | 4 +- ...l.root_SecurityAndPrivacyViewDark_3_de.png | 4 +- ...l.root_SecurityAndPrivacyViewDark_4_de.png | 4 +- ...l.root_SecurityAndPrivacyViewDark_5_de.png | 4 +- ...l.root_SecurityAndPrivacyViewDark_6_de.png | 4 +- ...l.root_SecurityAndPrivacyViewDark_7_de.png | 4 +- ...l.root_SecurityAndPrivacyViewDark_8_de.png | 4 +- ...l.root_SecurityAndPrivacyViewDark_9_de.png | 4 +- ....root_SecurityAndPrivacyViewLight_0_de.png | 4 +- ...root_SecurityAndPrivacyViewLight_10_de.png | 4 +- ...root_SecurityAndPrivacyViewLight_11_de.png | 4 +- ...root_SecurityAndPrivacyViewLight_12_de.png | 4 +- ...root_SecurityAndPrivacyViewLight_13_de.png | 4 +- ...root_SecurityAndPrivacyViewLight_14_de.png | 4 +- ...root_SecurityAndPrivacyViewLight_15_de.png | 4 +- ...root_SecurityAndPrivacyViewLight_16_de.png | 4 +- ...root_SecurityAndPrivacyViewLight_17_de.png | 4 +- ...root_SecurityAndPrivacyViewLight_18_de.png | 4 +- ...root_SecurityAndPrivacyViewLight_19_de.png | 4 +- ....root_SecurityAndPrivacyViewLight_1_de.png | 4 +- ...root_SecurityAndPrivacyViewLight_20_de.png | 4 +- ...root_SecurityAndPrivacyViewLight_21_de.png | 4 +- ...root_SecurityAndPrivacyViewLight_22_de.png | 4 +- ...root_SecurityAndPrivacyViewLight_23_de.png | 4 +- ....root_SecurityAndPrivacyViewLight_2_de.png | 4 +- ....root_SecurityAndPrivacyViewLight_3_de.png | 4 +- ....root_SecurityAndPrivacyViewLight_4_de.png | 4 +- ....root_SecurityAndPrivacyViewLight_5_de.png | 4 +- ....root_SecurityAndPrivacyViewLight_6_de.png | 4 +- ....root_SecurityAndPrivacyViewLight_7_de.png | 4 +- ....root_SecurityAndPrivacyViewLight_8_de.png | 4 +- ....root_SecurityAndPrivacyViewLight_9_de.png | 4 +- ...pl.addroom_AddRoomToSpaceView_Day_0_de.png | 4 +- ...pl.addroom_AddRoomToSpaceView_Day_4_de.png | 4 +- ...pl.addroom_AddRoomToSpaceView_Day_5_de.png | 4 +- ...pl.addroom_AddRoomToSpaceView_Day_6_de.png | 4 +- ...ace.impl.leave_LeaveSpaceView_Day_2_de.png | 4 +- ...ace.impl.leave_LeaveSpaceView_Day_3_de.png | 4 +- ...ace.impl.leave_LeaveSpaceView_Day_4_de.png | 4 +- ...ace.impl.leave_LeaveSpaceView_Day_5_de.png | 4 +- ...ace.impl.leave_LeaveSpaceView_Day_6_de.png | 4 +- ...ace.impl.leave_LeaveSpaceView_Day_7_de.png | 4 +- ...ace.impl.leave_LeaveSpaceView_Day_9_de.png | 4 +- ...res.space.impl.root_SpaceView_Day_0_de.png | 4 +- ...res.space.impl.root_SpaceView_Day_1_de.png | 4 +- ...res.space.impl.root_SpaceView_Day_2_de.png | 4 +- ...res.space.impl.root_SpaceView_Day_3_de.png | 4 +- ...res.space.impl.root_SpaceView_Day_4_de.png | 4 +- ...res.space.impl.root_SpaceView_Day_5_de.png | 4 +- ...res.space.impl.root_SpaceView_Day_8_de.png | 4 +- ...address_JoinRoomByAddressView_Day_0_de.png | 4 +- ...address_JoinRoomByAddressView_Day_1_de.png | 4 +- ...address_JoinRoomByAddressView_Day_3_de.png | 4 +- ...tchat.impl.root_StartChatView_Day_1_de.png | 4 +- ...tionWithVerificationViolation_Day_0_de.png | 4 +- ...ared_UserProfileHeaderSection_Day_0_de.png | 4 +- ...rofile.shared_UserProfileView_Day_3_de.png | 4 +- ...rofile.shared_UserProfileView_Day_6_de.png | 4 +- ...rofile.shared_UserProfileView_Day_9_de.png | 4 +- ...orizontalFloatingToolbarNoFab_Day_0_de.png | 3 + ...nts_HorizontalFloatingToolbar_Day_0_de.png | 3 + ...omponents_SpaceHeaderRootView_Day_0_de.png | 4 +- ...ui.components_SpaceHeaderView_Day_0_de.png | 4 +- ...validation_InvalidContentView_Day_0_de.png | 3 + ...alidation_NotFoundContentView_Day_0_de.png | 3 + ...s.reply_ReplyToInvalidContent_Day_0_de.png | 3 + ....reply_ReplyToNotFoundContent_Day_0_de.png | 3 + ...tails_MediaDetailsBottomSheet_Day_0_de.png | 4 +- ...tails_MediaDetailsBottomSheet_Day_1_de.png | 4 +- ...tails_MediaDetailsBottomSheet_Day_2_de.png | 4 +- ...tails_MediaDetailsBottomSheet_Day_3_de.png | 4 +- ...tails_MediaDetailsBottomSheet_Day_4_de.png | 4 +- ...impl.gallery.ui_AudioItemView_Day_0_de.png | 3 + ...impl.gallery.ui_AudioItemView_Day_1_de.png | 3 + ...impl.gallery.ui_AudioItemView_Day_2_de.png | 3 + ....impl.gallery.ui_FileItemView_Day_0_de.png | 3 + ....impl.gallery.ui_FileItemView_Day_1_de.png | 3 + ....impl.gallery.ui_FileItemView_Day_2_de.png | 3 + ....gallery.ui_VoiceItemViewPlay_Day_0_de.png | 3 + ....gallery.ui_VoiceItemViewPlay_Day_1_de.png | 3 + ....gallery.ui_VoiceItemViewPlay_Day_2_de.png | 3 + ....gallery.ui_VoiceItemViewPlay_Day_3_de.png | 3 + ....gallery.ui_VoiceItemViewPlay_Day_4_de.png | 3 + ...impl.gallery.ui_VoiceItemView_Day_0_de.png | 3 + ...impl.gallery.ui_VoiceItemView_Day_1_de.png | 3 + ...impl.gallery.ui_VoiceItemView_Day_2_de.png | 3 + ...impl.gallery.ui_VoiceItemView_Day_3_de.png | 3 + ...impl.gallery_MediaGalleryView_Day_7_de.png | 4 +- ...impl.gallery_MediaGalleryView_Day_8_de.png | 4 +- ....viewer_MediaViewerViewLandscape_11_de.png | 4 +- ....viewer_MediaViewerViewLandscape_14_de.png | 4 +- ....viewer_MediaViewerViewLandscape_15_de.png | 3 + ....viewer_MediaViewerViewLandscape_23_de.png | 3 + ....viewer_MediaViewerViewLandscape_24_de.png | 3 + ...ewer.impl.viewer_MediaViewerView_11_de.png | 4 +- ...ewer.impl.viewer_MediaViewerView_14_de.png | 4 +- ...ewer.impl.viewer_MediaViewerView_15_de.png | 3 + ...ewer.impl.viewer_MediaViewerView_23_de.png | 3 + ...ewer.impl.viewer_MediaViewerView_24_de.png | 3 + ...oomselect.impl_RoomSelectView_Day_2_de.png | 4 +- ...oomselect.impl_RoomSelectView_Day_3_de.png | 4 +- ...oomselect.impl_RoomSelectView_Day_4_de.png | 4 +- ...oomselect.impl_RoomSelectView_Day_5_de.png | 4 +- ...oomselect.impl_RoomSelectView_Day_6_de.png | 4 +- ...oser_MarkdownTextComposerEdit_Day_0_de.png | 4 +- ...mposer_TextComposerAddCaption_Day_0_de.png | 4 +- ...poser_TextComposerEditCaption_Day_0_de.png | 4 +- ..._TextComposerEditNotEncrypted_Day_0_de.png | 4 +- ...textcomposer_TextComposerEdit_Day_0_de.png | 4 +- ...omposerFormattingNotEncrypted_Day_0_de.png | 4 +- ...mposer_TextComposerFormatting_Day_0_de.png | 4 +- ...TextComposerReplyNotEncrypted_Day_0_de.png | 4 +- ...extComposerReplyNotEncrypted_Day_10_de.png | 4 +- ...extComposerReplyNotEncrypted_Day_11_de.png | 4 +- ...TextComposerReplyNotEncrypted_Day_1_de.png | 4 +- ...TextComposerReplyNotEncrypted_Day_2_de.png | 4 +- ...TextComposerReplyNotEncrypted_Day_3_de.png | 4 +- ...TextComposerReplyNotEncrypted_Day_4_de.png | 4 +- ...TextComposerReplyNotEncrypted_Day_5_de.png | 4 +- ...TextComposerReplyNotEncrypted_Day_6_de.png | 4 +- ...TextComposerReplyNotEncrypted_Day_7_de.png | 4 +- ...TextComposerReplyNotEncrypted_Day_8_de.png | 4 +- ...TextComposerReplyNotEncrypted_Day_9_de.png | 4 +- ...extcomposer_TextComposerReply_Day_0_de.png | 4 +- ...xtcomposer_TextComposerReply_Day_10_de.png | 4 +- ...xtcomposer_TextComposerReply_Day_11_de.png | 4 +- ...extcomposer_TextComposerReply_Day_1_de.png | 4 +- ...extcomposer_TextComposerReply_Day_2_de.png | 4 +- ...extcomposer_TextComposerReply_Day_3_de.png | 4 +- ...extcomposer_TextComposerReply_Day_4_de.png | 4 +- ...extcomposer_TextComposerReply_Day_5_de.png | 4 +- ...extcomposer_TextComposerReply_Day_6_de.png | 4 +- ...extcomposer_TextComposerReply_Day_7_de.png | 4 +- ...extcomposer_TextComposerReply_Day_8_de.png | 4 +- ...extcomposer_TextComposerReply_Day_9_de.png | 4 +- ..._TextComposerScaledDensityWithReply_de.png | 4 +- ...extComposerSimpleNotEncrypted_Day_0_de.png | 4 +- ...xtcomposer_TextComposerSimple_Day_0_de.png | 4 +- screenshots/html/data.js | 2348 +++++++++-------- ...onents_HomeTopBarMultiAccount_Day_0_en.png | 4 +- ...ents_HomeTopBarMultiAccount_Night_0_en.png | 4 +- ...omeTopBarSpaceFiltersSelected_Day_0_en.png | 4 +- ...eTopBarSpaceFiltersSelected_Night_0_en.png | 4 +- ...nents_HomeTopBarWithIndicator_Day_0_en.png | 4 +- ...nts_HomeTopBarWithIndicator_Night_0_en.png | 4 +- ...mponents_HomeTopBarWithStatus_Day_0_en.png | 4 +- ...onents_HomeTopBarWithStatus_Night_0_en.png | 4 +- ...me.impl.components_HomeTopBar_Day_0_en.png | 4 +- ....impl.components_HomeTopBar_Night_0_en.png | 4 +- ...l.filters_RoomListFiltersView_Day_0_en.png | 4 +- ...l.filters_RoomListFiltersView_Day_1_en.png | 4 +- ...filters_RoomListFiltersView_Night_0_en.png | 4 +- ...filters_RoomListFiltersView_Night_1_en.png | 4 +- .../features.home.impl_HomeViewA11y_en.png | 4 +- .../features.home.impl_HomeView_Day_0_en.png | 4 +- .../features.home.impl_HomeView_Day_13_en.png | 4 +- .../features.home.impl_HomeView_Day_14_en.png | 4 +- .../features.home.impl_HomeView_Day_1_en.png | 4 +- .../features.home.impl_HomeView_Day_2_en.png | 4 +- .../features.home.impl_HomeView_Day_3_en.png | 4 +- .../features.home.impl_HomeView_Day_5_en.png | 4 +- .../features.home.impl_HomeView_Day_6_en.png | 4 +- .../features.home.impl_HomeView_Day_7_en.png | 4 +- .../features.home.impl_HomeView_Day_8_en.png | 4 +- .../features.home.impl_HomeView_Day_9_en.png | 4 +- ...features.home.impl_HomeView_Night_0_en.png | 4 +- ...eatures.home.impl_HomeView_Night_13_en.png | 4 +- ...eatures.home.impl_HomeView_Night_14_en.png | 4 +- ...features.home.impl_HomeView_Night_1_en.png | 4 +- ...features.home.impl_HomeView_Night_2_en.png | 4 +- ...features.home.impl_HomeView_Night_3_en.png | 4 +- ...features.home.impl_HomeView_Night_5_en.png | 4 +- ...features.home.impl_HomeView_Night_6_en.png | 4 +- ...features.home.impl_HomeView_Night_7_en.png | 4 +- ...features.home.impl_HomeView_Night_8_en.png | 4 +- ...features.home.impl_HomeView_Night_9_en.png | 4 +- ....impl.share_ShareLocationView_Day_1_en.png | 4 +- ....impl.share_ShareLocationView_Day_5_en.png | 4 +- ....impl.share_ShareLocationView_Day_9_en.png | 4 +- ...mpl.share_ShareLocationView_Night_3_en.png | 4 +- ...mpl.share_ShareLocationView_Night_7_en.png | 4 +- ...omponents_PinEntryTextField_Night_0_en.png | 4 +- ...changeserver_ChangeServerView_Day_2_en.png | 4 +- ...changeserver_ChangeServerView_Day_5_en.png | 4 +- ...angeserver_ChangeServerView_Night_2_en.png | 4 +- ...angeserver_ChangeServerView_Night_5_en.png | 4 +- ...SlidingSyncNotSupportedDialog_Day_0_en.png | 4 +- ...idingSyncNotSupportedDialog_Night_0_en.png | 4 +- ...ogin.impl.login_LoginModeView_Day_0_en.png | 4 +- ...ogin.impl.login_LoginModeView_Day_4_en.png | 4 +- ...ogin.impl.login_LoginModeView_Day_5_en.png | 4 +- ...in.impl.login_LoginModeView_Night_0_en.png | 4 +- ...in.impl.login_LoginModeView_Night_4_en.png | 4 +- ...in.impl.login_LoginModeView_Night_5_en.png | 4 +- ...er_ConfirmAccountProviderView_Day_3_en.png | 4 +- ..._ConfirmAccountProviderView_Night_3_en.png | 4 +- ...eeditor_AttachmentImageEditorView_2_en.png | 4 +- ...essagesViewWithIdentityChange_Day_0_en.png | 4 +- ...sagesViewWithIdentityChange_Night_1_en.png | 4 +- ...veVerifiedUserSendFailureView_Day_2_en.png | 4 +- ...impl.report_ReportMessageView_Day_0_en.png | 4 +- ...impl.report_ReportMessageView_Day_1_en.png | 4 +- ...impl.report_ReportMessageView_Day_2_en.png | 4 +- ...impl.report_ReportMessageView_Day_3_en.png | 4 +- ...impl.report_ReportMessageView_Day_4_en.png | 4 +- ...impl.report_ReportMessageView_Day_5_en.png | 4 +- ...pl.report_ReportMessageView_Night_0_en.png | 4 +- ...pl.report_ReportMessageView_Night_1_en.png | 4 +- ...pl.report_ReportMessageView_Night_2_en.png | 4 +- ...pl.report_ReportMessageView_Night_3_en.png | 4 +- ...pl.report_ReportMessageView_Night_4_en.png | 4 +- ...pl.report_ReportMessageView_Night_5_en.png | 4 +- ...neItemEventRowDisambiguated_Night_0_en.png | 4 +- ...ventRowWithReplyInformative_Night_1_en.png | 4 +- ...eItemEventRowWithReplyOther_Night_1_en.png | 4 +- ...imelineItemEventRowWithReply_Day_11_en.png | 4 +- ...TimelineItemEventRowWithReply_Day_3_en.png | 4 +- ...TimelineItemEventRowWithReply_Day_7_en.png | 4 +- ...elineItemEventRowWithReply_Night_11_en.png | 4 +- ...melineItemEventRowWithReply_Night_3_en.png | 4 +- ...melineItemEventRowWithReply_Night_7_en.png | 4 +- ...es.messages.impl_MessagesView_Day_1_en.png | 4 +- ...es.messages.impl_MessagesView_Day_5_en.png | 4 +- ...es.messages.impl_MessagesView_Day_9_en.png | 4 +- ....messages.impl_MessagesView_Night_1_en.png | 4 +- ....messages.impl_MessagesView_Night_5_en.png | 4 +- ....messages.impl_MessagesView_Night_9_en.png | 4 +- ...blockedusers_BlockedUsersView_Day_5_en.png | 4 +- ...aultNotificationSettingOption_Day_0_en.png | 4 +- ...ltNotificationSettingOption_Night_0_en.png | 4 +- ...efaultNotificationSettingView_Day_4_en.png | 4 +- ...aultNotificationSettingView_Night_4_en.png | 4 +- ...ions_NotificationSettingsView_Day_0_en.png | 4 +- ...ons_NotificationSettingsView_Day_12_en.png | 4 +- ...ons_NotificationSettingsView_Day_14_en.png | 4 +- ...ons_NotificationSettingsView_Day_15_en.png | 4 +- ...ons_NotificationSettingsView_Day_16_en.png | 4 +- ...ons_NotificationSettingsView_Day_17_en.png | 4 +- ...ons_NotificationSettingsView_Day_18_en.png | 4 +- ...ons_NotificationSettingsView_Day_19_en.png | 4 +- ...ions_NotificationSettingsView_Day_1_en.png | 4 +- ...ons_NotificationSettingsView_Day_20_en.png | 4 +- ...ions_NotificationSettingsView_Day_2_en.png | 4 +- ...ions_NotificationSettingsView_Day_3_en.png | 4 +- ...ions_NotificationSettingsView_Day_4_en.png | 4 +- ...ions_NotificationSettingsView_Day_5_en.png | 4 +- ...ions_NotificationSettingsView_Day_6_en.png | 4 +- ...ions_NotificationSettingsView_Day_7_en.png | 4 +- ...ions_NotificationSettingsView_Day_8_en.png | 4 +- ...ions_NotificationSettingsView_Day_9_en.png | 4 +- ...ns_NotificationSettingsView_Night_0_en.png | 4 +- ...s_NotificationSettingsView_Night_12_en.png | 4 +- ...s_NotificationSettingsView_Night_14_en.png | 4 +- ...s_NotificationSettingsView_Night_15_en.png | 4 +- ...s_NotificationSettingsView_Night_16_en.png | 4 +- ...s_NotificationSettingsView_Night_17_en.png | 4 +- ...s_NotificationSettingsView_Night_18_en.png | 4 +- ...s_NotificationSettingsView_Night_19_en.png | 4 +- ...ns_NotificationSettingsView_Night_1_en.png | 4 +- ...s_NotificationSettingsView_Night_20_en.png | 4 +- ...ns_NotificationSettingsView_Night_2_en.png | 4 +- ...ns_NotificationSettingsView_Night_3_en.png | 4 +- ...ns_NotificationSettingsView_Night_4_en.png | 4 +- ...ns_NotificationSettingsView_Night_5_en.png | 4 +- ...ns_NotificationSettingsView_Night_6_en.png | 4 +- ...ns_NotificationSettingsView_Night_7_en.png | 4 +- ...ns_NotificationSettingsView_Night_8_en.png | 4 +- ...ns_NotificationSettingsView_Night_9_en.png | 4 +- ...eportroom.impl_ReportRoomView_Day_0_en.png | 4 +- ...eportroom.impl_ReportRoomView_Day_1_en.png | 4 +- ...eportroom.impl_ReportRoomView_Day_2_en.png | 4 +- ...eportroom.impl_ReportRoomView_Day_3_en.png | 4 +- ...eportroom.impl_ReportRoomView_Day_4_en.png | 4 +- ...ortroom.impl_ReportRoomView_Night_0_en.png | 4 +- ...ortroom.impl_ReportRoomView_Night_1_en.png | 4 +- ...ortroom.impl_ReportRoomView_Night_2_en.png | 4 +- ...ortroom.impl_ReportRoomView_Night_3_en.png | 4 +- ...ortroom.impl_ReportRoomView_Night_4_en.png | 4 +- ...oomNotificationSettingsOption_Day_0_en.png | 4 +- ...mNotificationSettingsOption_Night_0_en.png | 4 +- ...impl_RoomMemberModerationView_Day_5_en.png | 4 +- ...pl_RoomMemberModerationView_Night_7_en.png | 4 +- ...ace.impl.leave_LeaveSpaceView_Day_9_en.png | 4 +- ...e.impl.leave_LeaveSpaceView_Night_9_en.png | 4 +- ...res.space.impl.root_SpaceView_Day_8_en.png | 4 +- ...s.space.impl.root_SpaceView_Night_8_en.png | 4 +- ...orizontalFloatingToolbarNoFab_Day_0_en.png | 4 +- ...izontalFloatingToolbarNoFab_Night_0_en.png | 4 +- ...nts_HorizontalFloatingToolbar_Day_0_en.png | 4 +- tools/manifest/gplay/release/aaptDump.txt | 3 +- 870 files changed, 3398 insertions(+), 2838 deletions(-) create mode 100644 screenshots/de/appnav.loggedin_LoggedInView_Day_6_de.png create mode 100644 screenshots/de/appnav.loggedin_SyncStateViewServerUnreachable_Day_0_de.png create mode 100644 screenshots/de/features.home.impl.components_HomeTopBarWithStatus_Day_0_de.png create mode 100644 screenshots/de/features.lockscreen.impl.components_PinEntryTextField_Day_0_de.png delete mode 100644 screenshots/de/features.login.impl.accountprovider_AccountProviderOtherView_Day_0_de.png delete mode 100644 screenshots/de/features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Day_0_de.png delete mode 100644 screenshots/de/features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Day_1_de.png create mode 100644 screenshots/de/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_3_de.png delete mode 100644 screenshots/de/features.login.impl.screens.createaccount_CreateAccountView_Day_0_de.png delete mode 100644 screenshots/de/features.login.impl.screens.createaccount_CreateAccountView_Day_1_de.png delete mode 100644 screenshots/de/features.login.impl.screens.createaccount_CreateAccountView_Day_2_de.png delete mode 100644 screenshots/de/features.login.impl.screens.createaccount_CreateAccountView_Day_3_de.png delete mode 100644 screenshots/de/features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Day_0_de.png delete mode 100644 screenshots/de/features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Day_1_de.png create mode 100644 screenshots/de/features.messages.impl.timeline.components_TimelineItemAttachmentsViewScanningContentFailed_Day_0_de.png create mode 100644 screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowDisambiguated_Day_0_de.png delete mode 100644 screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_0_de.png delete mode 100644 screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_0_de.png create mode 100644 screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_10_de.png create mode 100644 screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_2_de.png create mode 100644 screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_6_de.png create mode 100644 screenshots/de/features.messages.impl.timeline.components_TimelineItemRedactedMessagesGroup_Day_0_de.png create mode 100644 screenshots/de/features.messages.impl.timeline.components_TimelineItemScanningContentFailed_Day_0_de.png create mode 100644 screenshots/de/features.messages.impl.timeline.components_TimelineItemScanningContentNotFound_Day_0_de.png create mode 100644 screenshots/de/features.messages.impl.timeline.components_TimelineItemScanningContentWithInvalidReplies_Day_0_de.png create mode 100644 screenshots/de/features.messages.impl.timeline.components_TimelineItemScanningContentWithRepliesFailed_Day_0_de.png create mode 100644 screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_1_de.png create mode 100644 screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_2_de.png create mode 100644 screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_3_de.png create mode 100644 screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_4_de.png create mode 100644 screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_5_de.png create mode 100644 screenshots/de/features.poll.api.pollcontent_PollContentViewMultipleSelection_Day_0_de.png create mode 100644 screenshots/de/features.poll.impl.create_CreatePollView_Day_8_de.png create mode 100644 screenshots/de/features.preferences.impl.developer_DeveloperSettingsView_Day_3_de.png create mode 100644 screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_0_de.png create mode 100644 screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_2_de.png create mode 100644 screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_3_de.png create mode 100644 screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_4_de.png create mode 100644 screenshots/de/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Day_0_de.png create mode 100644 screenshots/de/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Day_0_de.png create mode 100644 screenshots/de/libraries.matrix.ui.media.contentvalidation_InvalidContentView_Day_0_de.png create mode 100644 screenshots/de/libraries.matrix.ui.media.contentvalidation_NotFoundContentView_Day_0_de.png create mode 100644 screenshots/de/libraries.matrix.ui.messages.reply_ReplyToInvalidContent_Day_0_de.png create mode 100644 screenshots/de/libraries.matrix.ui.messages.reply_ReplyToNotFoundContent_Day_0_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.gallery.ui_AudioItemView_Day_0_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.gallery.ui_AudioItemView_Day_1_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.gallery.ui_AudioItemView_Day_2_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.gallery.ui_FileItemView_Day_0_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.gallery.ui_FileItemView_Day_1_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.gallery.ui_FileItemView_Day_2_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_0_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_1_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_2_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_3_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_4_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_0_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_1_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_2_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_3_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_15_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_23_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_24_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_15_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_23_de.png create mode 100644 screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_24_de.png diff --git a/app/src/main/res/xml/locales_config.xml b/app/src/main/res/xml/locales_config.xml index a77f42817d..a67a6e28e9 100644 --- a/app/src/main/res/xml/locales_config.xml +++ b/app/src/main/res/xml/locales_config.xml @@ -1,5 +1,6 @@ + diff --git a/appnav/src/main/res/values-de/translations.xml b/appnav/src/main/res/values-de/translations.xml index 13d085e3dc..f09eca875c 100644 --- a/appnav/src/main/res/values-de/translations.xml +++ b/appnav/src/main/res/values-de/translations.xml @@ -2,5 +2,5 @@ "Abmelden und aktualisieren" "%1$s unterstützt das alte Protokoll nicht mehr. Bitte melde dich ab und wieder an, um die App weiter nutzen zu können." - "Dein Homeserver unterstützt das alte Protokoll nicht mehr. Bitte logge dich aus und melde dich wieder an, um die App weiter zu nutzen." + "Dein Kontoanbieter unterstützt das alte Protokoll nicht mehr. Bitte melde dich ab und wieder an, um die App weiter zu nutzen." diff --git a/appnav/src/main/res/values-fr/translations.xml b/appnav/src/main/res/values-fr/translations.xml index e3885f84ba..a6c199ee23 100644 --- a/appnav/src/main/res/values-fr/translations.xml +++ b/appnav/src/main/res/values-fr/translations.xml @@ -2,5 +2,5 @@ "Déconnecter et mettre à niveau" "%1$s ne prend plus en charge l’ancien protocole. Veuillez vous déconnecter puis vous reconnecter pour continuer à utiliser l’application." - "Votre serveur d’accueil ne prend plus en charge l’ancien protocole. Veuillez vous déconnecter puis vous reconnecter pour continuer à utiliser l’application." + "Votre fournisseur de compte ne prend plus en charge l’ancien protocole. Veuillez vous déconnecter puis vous reconnecter pour continuer à utiliser l’application." diff --git a/appnav/src/main/res/values-it/translations.xml b/appnav/src/main/res/values-it/translations.xml index 725604ed3f..c13a7a3245 100644 --- a/appnav/src/main/res/values-it/translations.xml +++ b/appnav/src/main/res/values-it/translations.xml @@ -2,5 +2,5 @@ "Esci e aggiorna" "%1$s non supporta più il vecchio protocollo. Esci e accedi nuovamente per continuare a utilizzare l\'app." - "Il tuo homeserver non supporta più il vecchio protocollo. Esci e rientra per continuare a usare l\'app." + "Il tuo gestore dell\'account non supporta più il vecchio protocollo. Esci ed accedi di nuovo per continuare ad utilizzare l\'app." diff --git a/appnav/src/main/res/values-pl/translations.xml b/appnav/src/main/res/values-pl/translations.xml index 68de66a54e..6f63350af8 100644 --- a/appnav/src/main/res/values-pl/translations.xml +++ b/appnav/src/main/res/values-pl/translations.xml @@ -2,5 +2,5 @@ "Wyloguj się i zaktualizuj" "%1$s już nie wspiera starego protokołu. Zaloguj się ponownie, aby dalej korzystać z aplikacji." - "Twój serwer domowy już nie wspiera starego protokołu. Zaloguj się ponownie, aby kontynuować korzystanie z aplikacji." + "Twój dostawca konta już nie wspiera starego protokołu. Zaloguj się ponownie, aby kontynuować korzystanie z aplikacji." diff --git a/appnav/src/main/res/values-uk/translations.xml b/appnav/src/main/res/values-uk/translations.xml index b65ab1a1cb..b6d3eea842 100644 --- a/appnav/src/main/res/values-uk/translations.xml +++ b/appnav/src/main/res/values-uk/translations.xml @@ -2,5 +2,5 @@ "Вийти та оновити" "%1$s більше не підтримує старий протокол. Вийдіть і знов увійдіть, щоб продовжити користуватися застосунком." - "Ваш домашній сервер більше не підтримує старий протокол. Будь ласка, вийдіть і увійдіть знову, щоб продовжити використання програми." + "Постачальник вашого облікового запису більше не підтримує старий протокол. Вийдіть і знову ввійдіть, щоб продовжити користуватися застосунком." diff --git a/appnav/src/main/res/values-zh/translations.xml b/appnav/src/main/res/values-zh/translations.xml index f6eac30310..0925fffa85 100644 --- a/appnav/src/main/res/values-zh/translations.xml +++ b/appnav/src/main/res/values-zh/translations.xml @@ -2,5 +2,5 @@ "注销并升级" "%1$s 不再支持旧协议。请注销并重新登录以继续使用该应用程序。" - "你的主服务器不再支持旧协议。请注销并重新登录以继续使用此 app。" + "你的账户提供者不再支持旧协议。请注销并重新登录以继续使用此 app。" diff --git a/appnav/src/main/res/values/localazy.xml b/appnav/src/main/res/values/localazy.xml index c018fbf7fd..31eac7eafb 100644 --- a/appnav/src/main/res/values/localazy.xml +++ b/appnav/src/main/res/values/localazy.xml @@ -2,5 +2,5 @@ "Log Out & Upgrade" "%1$s no longer supports the old protocol. Please log out and log back in to continue using the app." - "Your homeserver no longer supports the old protocol. Please log out and log back in to continue using the app." + "Your account provider no longer supports the old protocol. Please sign out and sign back in to continue using the app." diff --git a/features/analytics/api/src/main/res/values-zh-rTW/translations.xml b/features/analytics/api/src/main/res/values-zh-rTW/translations.xml index 2a3df106ec..eb8dc0bf3b 100644 --- a/features/analytics/api/src/main/res/values-zh-rTW/translations.xml +++ b/features/analytics/api/src/main/res/values-zh-rTW/translations.xml @@ -1,7 +1,7 @@ - "提供匿名的使用數據以協助我們釐清問題。" + "提供匿名的使用資料以協助我們釐清問題。" "您可以到%1$s閱讀我們的條款。" "這裡" - "提供分析數據" + "提供分析資料" diff --git a/features/analytics/impl/src/main/res/values-de/translations.xml b/features/analytics/impl/src/main/res/values-de/translations.xml index 9fd4dbf0a8..030c30938d 100644 --- a/features/analytics/impl/src/main/res/values-de/translations.xml +++ b/features/analytics/impl/src/main/res/values-de/translations.xml @@ -1,6 +1,6 @@ - "Wir speichern oder profilieren keine personenbezogenen Daten." + "Wir speichern oder profilieren keine personenbezogenen Daten" "Teile anonyme Nutzungsdaten, um uns bei der Identifizierung von Problemen zu helfen." "Weitere Informationen findest du %1$s." "hier" diff --git a/features/analytics/impl/src/main/res/values-zh-rTW/translations.xml b/features/analytics/impl/src/main/res/values-zh-rTW/translations.xml index ef7a3c7cbe..e84c142050 100644 --- a/features/analytics/impl/src/main/res/values-zh-rTW/translations.xml +++ b/features/analytics/impl/src/main/res/values-zh-rTW/translations.xml @@ -1,7 +1,7 @@ "我們不會紀錄或剖繪您的個人資料" - "提供匿名的使用數據以協助我們釐清問題。" + "提供匿名的使用資料以協助我們釐清問題。" "您可以到%1$s閱讀我們的條款。" "這裡" "您可以在任何時候關閉它" 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 d2978994e7..81bde756c2 100644 --- a/features/call/impl/src/main/res/values-pl/translations.xml +++ b/features/call/impl/src/main/res/values-pl/translations.xml @@ -1,7 +1,7 @@ "Połączenie w trakcie" - "Stuknij, aby wrócić do rozmowy" + "Dotknij, 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/res/values-de/translations.xml b/features/createroom/impl/src/main/res/values-de/translations.xml index c3f42ca287..982f32e2a4 100644 --- a/features/createroom/impl/src/main/res/values-de/translations.xml +++ b/features/createroom/impl/src/main/res/values-de/translations.xml @@ -1,17 +1,17 @@ "Neuer Chat" - "Nutzer einladen" + "Personen einladen" "Beim Erstellen des Chats ist ein Fehler aufgetreten" - "Der Space konnte wegen eines unbekannten Fehlers nicht erstellt werden. Versuch\' es später nochmal." + "Der Space konnte wegen eines unbekannten Fehlers nicht erstellt werden. Bitte versuche es später erneut." "Name hinzufügen…" - "Neuer Chat" + "Neue Gruppe" "Neuer Space" "Nur eingeladene Personen haben Zutritt zu diesem Chat." "Privat" "Jeder kann diesen Chat finden. Du kannst dies jederzeit in den Einstellungen des Chats ändern." - "Jeder kann beitreten." + "Alle können beitreten." "Öffentlich" "Jeder kann den Beitritt zum Chat erbitten, aber ein Admin oder Moderator muss die Anfrage akzeptieren." "Anfrage zum Beitritt zulassen" @@ -19,18 +19,18 @@ Du kannst dies jederzeit in den Einstellungen des Chats ändern." "Beitritt anfragen" "Nur eingeladene Personen können beitreten." "Privat" - "Jeder darf diesem Chat beitreten." + "Alle können beitreten." "Öffentlich" "Jeder in %1$s kann beitreten." "Standard" "Wer hat Zugang" "Du benötigst eine Adresse, um diesen Chat im öffentlichen Verzeichnis sichtbar zu machen." "Adresse" - " Sichtbarkeit des Chats" + "Sichtbarkeit des Chats" "(kein Space)" "Nicht zu einem Space hinzufügen" "Kein Space ausgewählt" - "Space hinzufügen" + "Zu Space hinzufügen" "Thema (optional)" "Beschreibung hinzufügen…" 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 ee6cef29de..1f0d21d6f0 100644 --- a/features/home/impl/src/main/res/values-de/translations.xml +++ b/features/home/impl/src/main/res/values-de/translations.xml @@ -5,9 +5,9 @@ "Kommen die Benachrichtigungen nicht an?" "Dein Benachrichtigungs-Ping wurde aktualisiert – klarer, schneller und weniger störend." "Wir haben deine Sounds aktualisiert" - "Deine Chats werden automatisch gesichert und mit einer Ende-zu-Ende-Verschlüsselung geschützt. Um dieses Backup wiederherzustellen und deine digitale Identität zu bewahren, falls du den Zugriff auf alle deine Geräte verlierst, benötigst du deinen Wiederherstellungsschlüssel." - "Wiederherstellungsschlüssel einrichten" - "Sichere deine Chats" + "Von deinen Chats wird automatisch ein Ende-zu-Ende-verschlüsseltes Backup erstellt. Wenn du den Zugriff auf alle deine Geräte verlierst, brauchst du deinen Wiederherstellungsschlüssel, um dieses Backup wiederherzustellen und deine digitale Identität zu behalten." + "Wiederherstellungsschlüssel erstellen" + "Deine Chats sichern" "Bestätige deinen Wiederherstellungsschlüssel, um weiterhin auf deinen Schlüsselspeicher und den Nachrichtenverlauf zugreifen zu können." "Gib deinen Wiederherstellungsschlüssel ein" "Hast du deinen Wiederherstellungsschlüssel vergessen?" @@ -16,7 +16,7 @@ "Verbessere dein Anruferlebnis" "Chats" "Spaces" - "Möchtest du die Einladung zum Betreten von %1$s wirklich ablehnen?" + "Möchtest du die Einladung zu %1$s wirklich ablehnen?" "Einladung ablehnen" "Bist du sicher, dass du diese Direktnachricht von %1$s ablehnen möchtest?" "Einladung ablehnen" @@ -35,9 +35,9 @@ Deaktiviere den entsprechenden Filter, um deine anderen Chats zu sehen" "Einladungen" "Du hast keine ausstehenden Einladungen." "Niedrige Priorität" - "Du hast noch keine Chats mit niedriger Priorität." - "Wähle Filter ab, um Chats zu sehen." - "Für diese Auswahl hast du keinen Chat." + "Du hast noch keine Chats mit niedriger Priorität" + "Entferne Filter, um Chats zu sehen" + "Für diese Auswahl hast du keinen Chat" "Personen" "Du hast noch keine Direktnachrichten" "Gruppen" @@ -45,7 +45,7 @@ Deaktiviere den entsprechenden Filter, um deine anderen Chats zu sehen" "Ungelesen" "Glückwunsch! Du hast keine ungelesenen Nachrichten!" - "Beitrittsanfrage geschickt" + "Beitrittsanfrage gestellt" "Chats" "Als gelesen markieren" "Als ungelesen markieren" diff --git a/features/home/impl/src/main/res/values-it/translations.xml b/features/home/impl/src/main/res/values-it/translations.xml index 2c5461bfa8..62db7de98e 100644 --- a/features/home/impl/src/main/res/values-it/translations.xml +++ b/features/home/impl/src/main/res/values-it/translations.xml @@ -14,7 +14,7 @@ "L\'archiviazione delle chiavi non è sincronizzata" "Per non perdere mai una chiamata importante, modifica le impostazioni per consentire le notifiche a schermo intero quando il telefono è bloccato." "Migliora la tua esperienza di chiamata" - "Tutte le conversazioni" + "Conversazioni" "Spazi" "Vuoi davvero rifiutare l\'invito ad entrare in %1$s?" "Rifiuta l\'invito" @@ -46,7 +46,7 @@ Per il momento, puoi deselezionare i filtri per vedere le altre conversazioni."< "Congratulazioni! Non hai messaggi non letti!" "Richiesta di accesso inviata" - "Tutte le conversazioni" + "Conversazioni" "Segna come letto" "Segna come non letto" "Questa stanza è stata aggiornata" 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 f6e2e70519..a77e38e3ea 100644 --- a/features/home/impl/src/main/res/values-pl/translations.xml +++ b/features/home/impl/src/main/res/values-pl/translations.xml @@ -14,7 +14,7 @@ "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" - "Wszystkie czaty" + "Czaty" "Przestrzenie" "Czy na pewno chcesz odrzucić zaproszenie dołączenia do %1$s?" "Odrzuć zaproszenie" @@ -46,7 +46,7 @@ Na razie możesz wyczyścić filtry, aby zobaczyć pozostałe czaty" "Gratulacje! Nie masz żadnych nieprzeczytanych wiadomości!" "Wysłano prośbę o dołączenie" - "Wszystkie czaty" + "Czaty" "Oznacz jako przeczytane" "Oznacz jako nieprzeczytane" "Ten pokój został ulepszony" diff --git a/features/home/impl/src/main/res/values-ro/translations.xml b/features/home/impl/src/main/res/values-ro/translations.xml index 2446ebd495..24be0e88e7 100644 --- a/features/home/impl/src/main/res/values-ro/translations.xml +++ b/features/home/impl/src/main/res/values-ro/translations.xml @@ -14,7 +14,7 @@ "Backup-ul nu este sincronizat" "Pentru a vă asigura că nu pierdeți niciodată un apel important, vă rugăm să modificați setările pentru a permite notificări fullscreen atunci când telefonul este blocat." "Îmbunătățiți-vă experiența in timpul unui apel" - "Toate conversatiile" + "Conversații" "Spații" "Sigur doriți să refuzați alăturarea la %1$s?" "Refuzați invitația" @@ -46,7 +46,7 @@ Deocamdată, puteți deselecta filtrele pentru a vedea celelalte chat-uri""Felicitari! Nu aveți mesaje necitite!" "Cererea de alăturare a fost trimisă" - "Toate conversatiile" + "Conversații" "Marcați ca citită" "Marcați ca necitită" "Această cameră a fost modernizată." diff --git a/features/home/impl/src/main/res/values-uk/translations.xml b/features/home/impl/src/main/res/values-uk/translations.xml index 38eeb47f56..a3c68661b6 100644 --- a/features/home/impl/src/main/res/values-uk/translations.xml +++ b/features/home/impl/src/main/res/values-uk/translations.xml @@ -36,6 +36,8 @@ "У вас немає запрошень, що очікують на розгляд." "Низький пріоритет" "У вас ще немає неважливих бесід" + "Згадка" + "У вас немає непрочитаних згадок" "Ви можете зняти фільтри, щоб побачити інші ваші бесіди" "Ви не маєте бесід для цієї категорії" "Люди" diff --git a/features/home/impl/src/main/res/values-zh/translations.xml b/features/home/impl/src/main/res/values-zh/translations.xml index 575adc6bb9..c746f9572f 100644 --- a/features/home/impl/src/main/res/values-zh/translations.xml +++ b/features/home/impl/src/main/res/values-zh/translations.xml @@ -36,6 +36,8 @@ "没有待处理的邀请。" "低优先级" "你暂无任何低优先级聊天" + "提及" + "你没有任何未读提及" "你可以取消选择筛选器以查看其它对话" "你暂无适用于此选项的聊天" "人员" diff --git a/features/home/impl/src/main/res/values/localazy.xml b/features/home/impl/src/main/res/values/localazy.xml index d47386005b..b3c14354f5 100644 --- a/features/home/impl/src/main/res/values/localazy.xml +++ b/features/home/impl/src/main/res/values/localazy.xml @@ -36,13 +36,15 @@ For now, you can deselect filters in order to see your other chats" "You don\'t have any pending invites." "Low Priority" "You don’t have any low priority chats yet" + "Mention" + "You don’t have any unread mentions" "You can deselect filters in order to see your other chats" "You don’t have chats for this selection" "People" "You don’t have any DMs yet" "Rooms" "You’re not in any room yet" - "Unreads" + "Unread" "Congrats! You don’t have any unread messages!" "Request to join sent" diff --git a/features/invite/impl/src/main/res/values-de/translations.xml b/features/invite/impl/src/main/res/values-de/translations.xml index 7b6ca2eb61..c84dfa0e3e 100644 --- a/features/invite/impl/src/main/res/values-de/translations.xml +++ b/features/invite/impl/src/main/res/values-de/translations.xml @@ -1,11 +1,11 @@ - "Du wirst keine Nachrichten oder Chat-Einladungen von diesem Nutzer sehen." + "Du wirst keine Nachrichten oder Chat-Einladungen von diesem Nutzer sehen" "Nutzer blockieren" - "Melde diesen Chat deinem Konto-Anbieter." + "Melde diesen Chat deinem Kontoanbieter." "Beschreibe den Grund für die Meldung…" "Ablehnen und blockieren" - "Möchtest du die Einladung zum Betreten von %1$s wirklich ablehnen?" + "Möchtest du die Einladung zu %1$s wirklich ablehnen?" "Einladung ablehnen" "Bist du sicher, dass du diese Direktnachricht von %1$s ablehnen möchtest?" "Einladung ablehnen" diff --git a/features/invitepeople/impl/src/main/res/values-el/translations.xml b/features/invitepeople/impl/src/main/res/values-el/translations.xml index 3e3c1fd5d2..8758ffdf3d 100644 --- a/features/invitepeople/impl/src/main/res/values-el/translations.xml +++ b/features/invitepeople/impl/src/main/res/values-el/translations.xml @@ -2,4 +2,8 @@ "Ήδη μέλος" "Ήδη προσκεκλημένος" + "Προς το παρόν δεν έχετε καμία συνομιλία με αυτές τις επαφές. Επιβεβαιώστε την πρόσκλησή τους σε αυτήν την αίθουσα πριν συνεχίσετε." + "Προς το παρόν δεν έχετε καμία συνομιλία με αυτήν την επαφή. Επιβεβαιώστε την πρόσκληση σε αυτήν την αίθουσα συνομιλίας πριν συνεχίσετε." + "Πρόσκληση νέων επαφών σε αυτη την αίθουσα;" + "Θέλετε να προσκαλέσετε νέα επαφή σε αυτήν την αίθουσα;" diff --git a/features/joinroom/impl/src/main/res/values-de/translations.xml b/features/joinroom/impl/src/main/res/values-de/translations.xml index c6d97d6fcb..c94cc54fe8 100644 --- a/features/joinroom/impl/src/main/res/values-de/translations.xml +++ b/features/joinroom/impl/src/main/res/values-de/translations.xml @@ -22,12 +22,12 @@ "%1$d von %2$d erlaubte Zeichen" "Nachricht (optional)" "Sollte deine Anfrage akzeptiert werden, erhältst du eine Einladung, dem Chat beizutreten." - "Beitrittsanfrage geschickt" + "Beitrittsanfrage gestellt" "Wir konnten die Chat Vorschau nicht anzeigen. Dies kann an Netzwerk- oder Serverproblemen liegen." "Wir konnten diese Chat-Vorschau nicht anzeigen" "%1$s unterstützt noch keine Spaces. Du kannst auf Spaces im Web zugreifen." "Spaces werden noch nicht unterstützt" - "Klopfe an um einen Admin zu benachrichtigen. Nach der Freigabe kannst du dich an der Unterhaltung beteiligen." + "Wähle die Schaltfläche unten – eine Chat-Administration wird benachrichtigt. Nach der Freigabe kannst du dich an der Unterhaltung beteiligen." "Du musst Mitglied in diesem Chat sein, um den Nachrichtenverlauf zu sehen." "Willst du diesem Chat beitreten?" "Vorschau nicht verfügbar" diff --git a/features/joinroom/impl/src/main/res/values-pl/translations.xml b/features/joinroom/impl/src/main/res/values-pl/translations.xml index fcac55d546..948bd3945d 100644 --- a/features/joinroom/impl/src/main/res/values-pl/translations.xml +++ b/features/joinroom/impl/src/main/res/values-pl/translations.xml @@ -27,7 +27,7 @@ "Nie udało nam się wyświetlić podglądu tego pokoju" "%1$s jeszcze nie obsługuje przestrzeni. Uzyskaj dostęp do przestrzeni w wersji web." "Przestrzenie nie są jeszcze obsługiwane" - "Kliknij przycisk poniżej, aby powiadomić administratora pokoju. Po zatwierdzeniu będziesz mógł dołączyć do rozmowy." + "Dotknij przycisku poniżej, aby powiadomić administratora czatu. Po zatwierdzeniu będziesz mógł dołączyć do rozmowy." "Musisz być członkiem tego pokoju, aby wyświetlić historię wiadomości." "Chcesz dołączyć do tego pokoju?" "Podgląd nie jest dostępny" diff --git a/features/joinroom/impl/src/main/res/values-uk/translations.xml b/features/joinroom/impl/src/main/res/values-uk/translations.xml index 1a83a6ca8c..d6d88c4bf7 100644 --- a/features/joinroom/impl/src/main/res/values-uk/translations.xml +++ b/features/joinroom/impl/src/main/res/values-uk/translations.xml @@ -27,7 +27,7 @@ "Ми не можемо показати попередній перегляд цієї кімнати" "%1$s ще не підтримує простори. Ви можете отримати доступ до них у вебверсії." "Простори поки що не підтримуються" - "Натисніть кнопку нижче, і адміністратор кімнати отримає сповіщення. Ви зможете приєднатися до розмови після схвалення." + "Торкніться кнопки нижче і адміністратор бесіди отримає сповіщення. Ви зможете приєднатися до розмови після схвалення." "Ви мусите бути учасником цієї кімнати, щоб переглядати історію повідомлень." "Хочете приєднатися до цієї кімнати?" "Попередній перегляд недоступний" diff --git a/features/joinroom/impl/src/main/res/values-zh/translations.xml b/features/joinroom/impl/src/main/res/values-zh/translations.xml index e4de8dfec4..af41f31aa2 100644 --- a/features/joinroom/impl/src/main/res/values-zh/translations.xml +++ b/features/joinroom/impl/src/main/res/values-zh/translations.xml @@ -27,7 +27,7 @@ "无法显示此房间预览" "%1$s 暂不支持空间。你可以通过 Web 客户端访问空间。" "空间尚未受到支持" - "点击以下按钮以通知房间管理员。获得批准后你将能加入对话。" + "点击以下按钮聊天管理员将收到通知。获得批准后即可加入对话。" "只有房间成员才能查看消息历史。" "想加入此房间吗?" "预览不可用" diff --git a/features/joinroom/impl/src/main/res/values/localazy.xml b/features/joinroom/impl/src/main/res/values/localazy.xml index 0e1787fc0b..32e69f2f57 100644 --- a/features/joinroom/impl/src/main/res/values/localazy.xml +++ b/features/joinroom/impl/src/main/res/values/localazy.xml @@ -27,7 +27,7 @@ "We couldn’t display this room preview" "%1$s does not support spaces yet. You can access spaces on web." "Spaces are not supported yet" - "Click the button below and a room administrator will be notified. You’ll be able to join the conversation once approved." + "Tap the button below and a chat administrator will be notified. You\'ll be able to join the conversation once approved." "You must be a member of this room to view the message history." "Want to join this room?" "Preview is not available" diff --git a/features/knockrequests/impl/src/main/res/values-de/translations.xml b/features/knockrequests/impl/src/main/res/values-de/translations.xml index 33e9e1be70..b3ce1590d8 100644 --- a/features/knockrequests/impl/src/main/res/values-de/translations.xml +++ b/features/knockrequests/impl/src/main/res/values-de/translations.xml @@ -9,7 +9,7 @@ "Alle Beitrittsanfragen werden angenommen" "Wir konnten diese Beitrittsanfrage nicht annehmen. Möchtest du es noch mal versuchen?" "Die Beitrittsanfrage konnte nicht akzeptiert werden" - "Beitrittsanfrage annehmen" + "Beitrittsanfrage wird angenommen" "Ja, ablehnen und sperren" "Bist du sicher, dass du %1$s ablehnen und sperren möchtest? Dieser Nutzer kann dann keinen erneuten Beitritt zu diesem Chat anfragen." "Ablehnen und Zugriff sperren" @@ -29,7 +29,7 @@ "%1$s +%2$d weiterer möchten diesem Chat beitreten" "%1$s +%2$d weitere möchten diesem Chat beitreten" - "Alles ansehen" + "Alle anzeigen" "Akzeptieren" "%1$s möchte diesem Chat beitreten" "Ansicht" diff --git a/features/leaveroom/api/src/main/res/values-de/translations.xml b/features/leaveroom/api/src/main/res/values-de/translations.xml index 2a0326d5ea..70be6cb29c 100644 --- a/features/leaveroom/api/src/main/res/values-de/translations.xml +++ b/features/leaveroom/api/src/main/res/values-de/translations.xml @@ -1,7 +1,7 @@ "Bist du sicher, dass du diese Unterhaltung verlassen willst? Diese Unterhaltung ist nicht öffentlich und du kannst ihr ohne Einladung nicht wieder beitreten." - "Bist du sicher, dass du diesen Chat verlassen möchtest? Du bist die einzige Person hier. Wenn du gehst, kann in Zukunft niemand mehr eintreten, auch du nicht." + "Bist du sicher, dass du diesen Chat verlassen möchtest? Du bist die einzige Person hier. Wenn du gehst, kann in Zukunft niemand mehr beitreten, auch du nicht." "Bist du sicher, dass du diesen Chat verlassen möchtest? Dieser Chat ist nicht öffentlich und du kannst ihm ohne Einladung nicht erneut beitreten." "Wähle Eigentümer" "Du bist der einzige Eigentümer dieses Chats. Du musst die Eigentumsrechte an jemand anderen übertragen, bevor du den Chat verlässt." diff --git a/features/linknewdevice/impl/src/main/res/values-de/translations.xml b/features/linknewdevice/impl/src/main/res/values-de/translations.xml index 773878c736..18b5238752 100644 --- a/features/linknewdevice/impl/src/main/res/values-de/translations.xml +++ b/features/linknewdevice/impl/src/main/res/values-de/translations.xml @@ -5,6 +5,7 @@ "Scanne den QR-Code mit diesem Gerät" "Bereit zum Scannen" "Öffne %1$s auf einem Desktop-Computer, um den QR-Code zu erhalten" + "Scanne einen QR-Code nur, nachdem du die obigen Schritte auf deinem eigenen Gerät ausgeführt hast. Scanne niemals einen Code, den dir eine andere Person geschickt hat." "Die Zahlen stimmen nicht überein" "Gib den 2-stelligen Code ein" "Dadurch wird überprüft, ob die Verbindung zu deinem anderen Gerät sicher ist." @@ -19,19 +20,19 @@ "Die Anmeldung wurde nicht rechtzeitig abgeschlossen" "Öffne %1$s auf dem anderen Gerät" "Wähle %1$s" - "„Mit QR-Code anmelden”" - "Scanne den hier gezeigten QR-Code mit dem anderen Gerät." + "„Mit QR-Code anmelden“" + "Scanne den hier gezeigten QR-Code mit dem anderen Gerät" "Öffne %1$s auf dem anderen Gerät" "Desktop-Computer" - "QR-Code wird geladen…" + "QR-Code wird geladen …" "Mobilgerät" "Welchen Gerätetyp möchtest du verknüpfen?" - "Versuch\' es bitte noch mal und stell sicher, dass du den zweistelligen Code richtig eingegeben hast. Wenn die Zahlen immer noch nicht übereinstimmen, wende dich an deinen Kontoanbieter." + "Bitte versuche es erneut und stelle sicher, dass du den zweistelligen Code richtig eingegeben hast. Wenn die Zahlen weiterhin nicht übereinstimmen, wende dich an deinen Kontoanbieter." "Die Zahlen stimmen nicht überein" "Es konnte keine sichere Verbindung zu dem neuen Gerät hergestellt werden." "Und jetzt?" - "Versuche, dich erneut mit einem QR-Code anzumelden, falls dies ein Netzwerkproblem war." - "Wenn das Problem bestehen bleibt, versuche es mit einem anderen WLAN-Netzwerk oder verwende deine mobilen Daten statt WLAN." + "Versuche, dich erneut mit einem QR-Code anzumelden, falls dies ein Netzwerkproblem war" + "Wenn das Problem bestehen bleibt, versuche es mit einem anderen WLAN-Netzwerk oder verwende deine mobilen Daten statt WLAN" "Wenn das nicht funktioniert, melde dich manuell an" "Die Verbindung ist nicht sicher" "Du wirst aufgefordert, die beiden unten abgebildeten Ziffern einzugeben." @@ -41,7 +42,7 @@ "Die Anmeldung auf dem anderen Gerät wurde abgelehnt." "Anmelden abgelehnt" "Du musst nichts weiter tun." - "Dein anderes Gerät ist schon angemeldet." + "Dein anderes Gerät ist schon angemeldet" "Die Anmeldung ist abgelaufen. Bitte versuche es erneut." "Die Anmeldung wurde nicht rechtzeitig abgeschlossen" "Dein anderes Gerät unterstützt die Anmeldung bei %s mit einem QR-Code nicht. diff --git a/features/linknewdevice/impl/src/main/res/values-it/translations.xml b/features/linknewdevice/impl/src/main/res/values-it/translations.xml index 6a32c70fe4..1254400462 100644 --- a/features/linknewdevice/impl/src/main/res/values-it/translations.xml +++ b/features/linknewdevice/impl/src/main/res/values-it/translations.xml @@ -5,6 +5,7 @@ "Scansiona il codice QR con questo dispositivo" "Pronto per la scansione" "Apri %1$s su un computer desktop per ottenere il codice QR" + "Scansiona un codice QR solo dopo aver seguito i passaggi sopra descritti sul tuo dispositivo. Non scansionare mai un codice inviato da un\'altra persona." "I numeri non corrispondono" "Inserisci il codice a 2 cifre" "Questo verificherà che la connessione con l\'altro dispositivo sia sicura." diff --git a/features/linknewdevice/impl/src/main/res/values-ja/translations.xml b/features/linknewdevice/impl/src/main/res/values-ja/translations.xml index c4f09dcd0e..917d9e330c 100644 --- a/features/linknewdevice/impl/src/main/res/values-ja/translations.xml +++ b/features/linknewdevice/impl/src/main/res/values-ja/translations.xml @@ -5,6 +5,7 @@ "この端末でQRコードを読み取る" "読み取る" "%1$s をコンピュータで開き、QRコードを表示してください" + "あなた自身の端末においてのみ、以上の手順にならってQRコードを読み取ってください。他者から送られたコードは絶対に読み取らないでください。" "数字が一致しません" "2桁の数字を入力してください" "他の端末との接続が安全であることを確認します。" diff --git a/features/location/impl/src/main/res/values-de/translations.xml b/features/location/impl/src/main/res/values-de/translations.xml index 1d10fea641..7650a70717 100644 --- a/features/location/impl/src/main/res/values-de/translations.xml +++ b/features/location/impl/src/main/res/values-de/translations.xml @@ -2,4 +2,5 @@ "Der Verlauf deines Live-Standorts wird im Chat gespeichert und bleibt für die Mitglieder sichtbar, auch nachdem du die Freigabe beendet hast." "Wie lange soll der Live-Standort geteilt werden?" + "Du hast keine Berechtigung, deinen Live-Standort in diesem Chat zu teilen" diff --git a/features/lockscreen/impl/src/main/res/values-de/translations.xml b/features/lockscreen/impl/src/main/res/values-de/translations.xml index e1819583f0..4bdd321710 100644 --- a/features/lockscreen/impl/src/main/res/values-de/translations.xml +++ b/features/lockscreen/impl/src/main/res/values-de/translations.xml @@ -7,20 +7,20 @@ "PIN vergessen?" "PIN-Code ändern" "Biometrisches Entsperren zulassen" - "Pin entfernen" + "PIN entfernen" "Bist du sicher, dass du die PIN entfernen willst?" "PIN entfernen?" "%1$s zulassen" - "Ich möchte diese PIN verwenden." + "Ich würde lieber eine PIN verwenden" "Spare dir etwas Zeit und benutze %1$s, um die App zu entsperren" "PIN wählen" "PIN bestätigen" "Sperre %1$s um deine Chats zusätzlich abzusichern. Wähle eine einprägsame PIN. Wenn du sie vergisst, wirst du aus der App abgemeldet." - "Aus Sicherheitsgründen kann dieser PIN-Code nicht verwendet werden." - "Bitte eine andere PIN verwenden." - "Bitte gib die gleiche PIN wie zuvor ein." + "Aus Sicherheitsgründen kann dieser PIN-Code nicht verwendet werden" + "Bitte eine andere PIN verwenden" + "Bitte gib die gleiche PIN wie zuvor ein" "Die PINs stimmen nicht überein" "Um fortzufahren, musst du dich erneut anmelden und eine neue PIN erstellen" "Dieses Gerät wurde entfernt" diff --git a/features/login/impl/src/main/res/values-de/translations.xml b/features/login/impl/src/main/res/values-de/translations.xml index 4f04c87d34..5a8d2a4ae3 100644 --- a/features/login/impl/src/main/res/values-de/translations.xml +++ b/features/login/impl/src/main/res/values-de/translations.xml @@ -5,9 +5,9 @@ "Gib einen Suchbegriff oder eine Domainadresse ein." "Suche nach einem Unternehmen, einer Community oder einem privaten Server." "Kontoanbieter finden" - "Hier werden deine Gespräche gespeichert - so wie du deine E-Mails bei einem E-Mail-Anbieter aufbewahren würdest." + "Hier werden deine Gespräche gespeichert – so wie du deine E-Mails bei einem E-Mail-Anbieter aufbewahren würdest." "Du bist dabei, dich bei %s anzumelden" - "Hier werden deine Gespräche gespeichert - so wie du deine E-Mails bei einem E-Mail-Anbieter aufbewahren würdest." + "Hier werden deine Gespräche gespeichert – so wie du deine E-Mails bei einem E-Mail-Anbieter aufbewahren würdest." "Du bist dabei, ein Konto bei %s zu erstellen" "Matrix.org ist ein großer, kostenloser Server im öffentlichen Matrix-Netzwerk für eine sichere, dezentralisierte Kommunikation, der von der Matrix.org Foundation betrieben wird." "Sonstige" @@ -16,23 +16,31 @@ "Google Play" "Auf %1$s ist die Element Pro App erforderlich. Bitte lade diese aus dem Store." "Element Pro erforderlich" - "Wir konnten diesen Homeserver nicht erreichen. Bitte überprüfe, ob du die Homeserver-URL korrekt eingegeben hast. Wenn die URL korrekt ist, wende dich an deinen Homeserver-Administrator, um weitere Hilfe zu erhalten." - "Der Server ist aufgrund eines Problems in der \".well-known\" Datei nicht verfügbar: + "Wir konnten diesen Kontoanbieter nicht erreichen. Bitte überprüfe, ob du die Homeserver-URL korrekt eingegeben hast. Wenn die URL korrekt ist, wende dich an deinen Kontoanbieter, um weitere Hilfe zu erhalten." + "Der Server ist aufgrund eines Problems in der Datei .well-known nicht verfügbar: %1$s" - "Der gewählte Kontoanbieter unterstützt Sliding-Sync nicht. Für die Verwendung von %1$s ist eine Aktualisierung des Servers erforderlich." + "Der gewählte Kontoanbieter unterstützt Sliding-Sync nicht. Für die Verwendung von %1$s ist eine Aktualisierung erforderlich." "%1$s darf keine Verbindung zu %2$s herstellen." "Die App wurde so konfiguriert, dass sie %1$s zulässt." "Kontoanbieter %1$s ist nicht zulässig." "Homeserver-URL" "Gib eine Domain-Adresse ein." + "Anmelden" + "Konto erstellen" "Wie lautet die Adresse deines Servers?" + "Wenn dein Konto von deinem Unternehmen oder einer Community bereitgestellt wird, ändere den Kontoanbieter (Beispiel: firmenname.com)." + "Erstelle kostenlos ein Konto auf matrix.org. Wenn du ein Konto bei einem anderen Anbieter erstellen möchtest, passe die Eingabe entsprechend an (Beispiel: communityname.org)." + "Kontoanbieter" + "example.com" "Wähle deinen Server aus" + "Gib deinen Kontoanbieter ein" + "Wähle einen Kontoanbieter" "Konto erstellen" "Dieses Konto wurde gelöscht." "Falscher Nutzername und/oder Passwort" - "Dies ist keine gültige Nutzerkennung. Erwartetes Format: \'@nutzer:homeserver.org\'" + "Dies ist keine gültige Nutzerkennung. Erwartetes Format: ‚@nutzer:homeserver.org‘" "Dieser Server ist so konfiguriert, dass er Refresh-Tokens verwendet. Diese werden für die passwortbasierte Anmeldung nicht unterstützt." - "Der ausgewählte Homeserver unterstützt weder den Login per Passwort noch per OAuth. Bitte kontaktiere deinen Administrator oder wähle einen anderen Homeserver." + "Der ausgewählte Kontoanbieter unterstützt weder die Anmeldung per Passwort noch per OAuth. Wende dich an deinen Kontoanbieter oder wähle einen anderen." "Gib deine Daten ein" "Matrix ist ein offenes Netzwerk für eine sichere, dezentrale Kommunikation." "Willkommen zurück!" @@ -40,9 +48,10 @@ "Element Classic öffnen" "Öffne Element Classic auf deinem Gerät" "Geh zu Einstellungen > Sicherheit & Datenschutz" - "Folge den Anweisungen, um den Schlüsselspeicher zu aktivieren." + "Wähle unter „Verwaltung der Verschlüsselungs-Schlüssel“ den Eintrag „Wiederherstellung verschlüsselter Nachrichten“" + "Folge den Anweisungen, um deinen Schlüsselspeicher zu aktivieren" "Zurück zu %1$s" - "Aktiviere deinen Schlüsselspeicher, bevor du mit %1$s fortfährst." + "Aktiviere deinen Schlüsselspeicher, bevor du mit %1$s fortfährst" "Version %1$s" "Konto wird geprüft" "Manuell anmelden" @@ -52,12 +61,12 @@ "Willkommen zurück" "Willkommen beim schnellsten %1$s aller Zeiten. Optimiert für Geschwindigkeit und Einfachheit." "Willkommen zu %1$s. Aufgeladen, für Geschwindigkeit und Einfachheit." - "Sei in Deinem Element" - "Sichere Verbindung aufbauen" + "Sei in deinem Element" + "Sichere Verbindung wird aufgebaut" "Es konnte keine sichere Verbindung zu dem neuen Gerät hergestellt werden." "Und jetzt?" - "Versuche, dich erneut mit einem QR-Code anzumelden, falls dies ein Netzwerkproblem war." - "Wenn das Problem bestehen bleibt, versuche es mit einem anderen WLAN-Netzwerk oder verwende deine mobilen Daten statt WLAN." + "Versuche, dich erneut mit einem QR-Code anzumelden, falls dies ein Netzwerkproblem war" + "Wenn das Problem bestehen bleibt, versuche es mit einem anderen WLAN-Netzwerk oder verwende deine mobilen Daten statt WLAN" "Wenn das nicht funktioniert, melde dich manuell an" "Die Verbindung ist nicht sicher" "Du wirst aufgefordert, die beiden unten abgebildeten Ziffern einzugeben." @@ -69,7 +78,7 @@ "Die Anmeldung auf dem anderen Gerät wurde abgelehnt." "Anmelden abgelehnt" "Du musst nichts weiter tun." - "Dein anderes Gerät ist schon angemeldet." + "Dein anderes Gerät ist schon angemeldet" "Die Anmeldung ist abgelaufen. Bitte versuche es erneut." "Die Anmeldung wurde nicht rechtzeitig abgeschlossen" "Dein anderes Gerät unterstützt die Anmeldung bei %s mit einem QR-Code nicht. @@ -80,9 +89,9 @@ Versuche, dich manuell anzumelden, oder scanne den QR-Code mit einem anderen Ger "%1$s wird nicht unterstützt" "Bereit zum Scannen" "%1$s auf einem Desktop-Gerät öffnen" - "Klick auf deinen Avatar" + "Wähle dein Profilbild" "Wähle %1$s" - "\"Neues Gerät verknüpfen\"" + "„Neues Gerät verknüpfen“" "Scanne den QR-Code mit diesem Gerät" "Nur verfügbar falls dein Kontoanbieter dies unterstützt." "Öffne %1$s auf einem anderen Gerät, um den QR-Code zu erhalten" @@ -96,12 +105,12 @@ Versuche, dich manuell anzumelden, oder scanne den QR-Code mit einem anderen Ger "Neu beginnen" "Ein unerwarteter Fehler ist aufgetreten. Bitte versuche es erneut." "Warten auf dein anderes Gerät" - "Dein Konto-Provider kann nach dem folgenden Code fragen, um die Anmeldung zu bestätigen." + "Dein Kontoanbieter fragt möglicherweise nach dem folgenden Code, um die Anmeldung zu bestätigen." "Dein Verifizierungscode" "Kontoanbieter wechseln" "Ein privater Server für die Mitarbeiter von Element." "Matrix ist ein offenes Netzwerk für eine sichere, dezentrale Kommunikation." - "Hier werden deine Gespräche gespeichert - so wie du deine E-Mails bei einem E-Mail-Anbieter aufbewahren würdest." + "Hier werden deine Gespräche gespeichert – so wie du deine E-Mails bei einem E-Mail-Anbieter aufbewahren würdest." "Du bist dabei, dich bei %1$s anzumelden" "Kontoanbieter auswählen" "Du bist dabei, auf %1$s ein Konto zu erstellen" diff --git a/features/login/impl/src/main/res/values-el/translations.xml b/features/login/impl/src/main/res/values-el/translations.xml index 9852eac5cc..6107fc54dd 100644 --- a/features/login/impl/src/main/res/values-el/translations.xml +++ b/features/login/impl/src/main/res/values-el/translations.xml @@ -16,7 +16,7 @@ "Google Play" "Η εφαρμογή Element Pro απαιτείται στο %1$s. Παρακαλώ κατεβάστε την από το κατάστημα." "Απαιτείται το Element Pro" - "Δεν μπορούσαμε να επικοινωνήσουμε με αυτόν τον οικιακό διακομιστή. Βεβαιώσου ότι έχεις εισαγάγει σωστά τη διεύθυνση URL του αρχικού διακομιστή. Εάν η διεύθυνση URL είναι σωστή, επικοινώνησε με τον διαχειριστή του κεντρικού διακομιστή για περαιτέρω βοήθεια." + "Δεν ήταν δυνατή η επικοινωνία με αυτόν τον πάροχο λογαριασμού. Ελέγξτε ότι έχετε εισαγάγει σωστά τη διεύθυνση URL του παρόχου λογαριασμού. Εάν η διεύθυνση URL είναι σωστή, επικοινωνήστε με τον διαχειριστή του παρόχου λογαριασμού σας για περαιτέρω βοήθεια." "Ο διακομιστής δεν είναι διαθέσιμος λόγω προβλήματος στο αρχείο .well-known: %1$s" "Ο επιλεγμένος πάροχος λογαριασμού δεν υποστηρίζει sliding sync. Απαιτείται αναβάθμιση στο διακομιστή για χρήση του %1$s." @@ -32,7 +32,7 @@ "Λανθασμένο όνομα χρήστη ή κωδικός πρόσβασης" "Αυτό δεν είναι έγκυρο αναγνωριστικό χρήστη. Αναμενόμενη μορφή: \'@χρήστης:homeserver.org\'" "Αυτός ο διακομιστής έχει ρυθμιστεί ώστε να χρησιμοποιεί διακριτικά ανανέωσης. Αυτά δεν υποστηρίζονται όταν χρησιμοποιείς σύνδεση μέσω κωδικού πρόσβασης." - "Ο επιλεγμένος οικιακός διακομιστής δεν υποστηρίζει κωδικό πρόσβασης ή σύνδεση OAuth. Επικοινωνήστε με τον διαχειριστή σου ή επέλεξε άλλο οικιακό διακομιστή." + "Ο επιλεγμένος πάροχος λογαριασμού δεν υποστηρίζει σύνδεση με κωδικό πρόσβασης ή OAuth. Παρακαλούμε επικοινωνήστε με τον πάροχο του λογαριασμού σας ή επιλέξτε διαφορετικό." "Εισήγαγε τα στοιχεία σου" "Το Matrix είναι ένα ανοιχτό δίκτυο για ασφαλή, αποκεντρωμένη επικοινωνία." "Καλωσόρισες ξανά!" 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 a27bc18e3e..5bd8895001 100644 --- a/features/login/impl/src/main/res/values-et/translations.xml +++ b/features/login/impl/src/main/res/values-et/translations.xml @@ -89,7 +89,7 @@ Proovi käsitsi sisselogimist või skaneeri QR-koodi mõne muu seadmega.""%1$s pole toetatud" "Skaneerimiseks valmis" "Ava %1$s töölauarakenduses" - "Klõpsi oma tunnuspilti" + "Klõpsa oma tunnuspilti" "Vali %1$s" "„Seo uus seade“" "Skaneeri QR-koodi selle seadmega" 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 0af658d34f..2135978d7b 100644 --- a/features/login/impl/src/main/res/values-fr/translations.xml +++ b/features/login/impl/src/main/res/values-fr/translations.xml @@ -16,10 +16,10 @@ "Google Play" "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." + "Impossible de se connecter à ce fournisseur de compte. Vérifiez que l’URL saisie est correcte. Si c’est le cas, contactez l’administrateur de votre fournisseur de compte 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" - "Le fournisseur de compte sélectionné ne prend pas en charge le sliding sync. Une mise à jour du serveur est nécessaire pour pouvoir utiliser %1$s." + "Le fournisseur de compte sélectionné ne prend pas en charge le sliding sync. Le serveur doit être mis à jour pour pouvoir utiliser %1$s." "%1$s n’est pas autorisé à se connecter à %2$s." "Cette application a été configurée pour autoriser: %1$s." "Le fournisseur de compte %1$s n’est pas autorisé." @@ -40,7 +40,7 @@ "Nom d’utilisateur et/ou mot de passe incorrects" "Il ne s’agit pas d’un identifiant utilisateur valide. Format attendu : « @user:homeserver.org »" "Ce serveur est configuré pour utiliser des tokens d’actualisation. Ils ne sont pas pris en charge lors de l’utilisation d’une connexion basée sur un mot de passe." - "Le serveur d’accueil sélectionné ne prend pas en charge le mot de passe ou la connexion OAuth. Contactez votre administrateur ou choisissez un autre serveur d’accueil." + "Le fournisseur de compte sélectionné ne prend pas en charge la connexion avec mot de passe ni OAuth. Contactez votre administrateur ou choisissez un autre fournisseur de compte." "Saisissez vos identifiants" "Matrix est un réseau ouvert pour une communication sécurisée et décentralisée." "Content de vous revoir !" diff --git a/features/login/impl/src/main/res/values-hr/translations.xml b/features/login/impl/src/main/res/values-hr/translations.xml index f578790380..3a13931b9e 100644 --- a/features/login/impl/src/main/res/values-hr/translations.xml +++ b/features/login/impl/src/main/res/values-hr/translations.xml @@ -25,8 +25,16 @@ "Davatelj usluga računa %1$s nije dopušten." "URL matičnog poslužitelja" "Unesite adresu domene." + "Prijava" + "Izradi račun" "Koja je adresa vašeg poslužitelja?" + "Ako vam je račun omogućila vaša tvrtka ili zajednica, promijenite pružatelja računa (primjer: nazivtvrtke.com)." + "Besplatno kreirajte račun na matrix.org. Ako želite kreirati račun kod drugog pružatelja usluga, promijenite ga u skladu s tim (primjer: communityname.org)." + "Pružatelj usluga računa" + "primjer.com" "Odaberite svoj poslužitelj" + "Unesite davatelja usluge računa" + "Odaberite pružatelja usluga računa" "Izradi račun" "Ovaj je račun deaktiviran." "Netočno korisničko ime i/ili zaporka" diff --git a/features/login/impl/src/main/res/values-it/translations.xml b/features/login/impl/src/main/res/values-it/translations.xml index 1f1b51cda8..ea5a9d32b6 100644 --- a/features/login/impl/src/main/res/values-it/translations.xml +++ b/features/login/impl/src/main/res/values-it/translations.xml @@ -16,23 +16,31 @@ "Google Play" "L\'app Element Pro è necessaria su %1$s. Scaricala dallo store." "Element Pro è richiesto" - "Non siamo riusciti a raggiungere questo homeserver. Verifica di aver inserito correttamente l\'URL. Se l\'URL è corretto, contatta l\'amministratore del homeserver per ulteriore assistenza." + "Non è stato possibile contattare il gestorehomeserver di questo account. Verifica di aver inserito correttamente l\'URL dell\'homeserver. Se l\'URL è corretto, contatta il gestore del tuo account per ulteriore assistenza." "Il server non è disponibile per un problema nel file well-known: %1$s" - "Il fornitore di account selezionato non supporta la Sliding sync. Per utilizzare %1$s è necessario un aggiornamento del server." + "Il gestore dell\'account selezionato non supporta la sliding sync. È necessario un aggiornamento per utilizzare %1$s." "%1$s non è autorizzato a connettersi a %2$s." "Questa app è stata configurata per consentire: %1$s." "Fornitore dell\'account %1$s non consentito." "URL dell\'homeserver" "Inserisci un indirizzo di dominio." + "Accedi" + "Crea account" "Qual è l\'indirizzo del tuo server?" + "Se il tuo account è fornito dalla tua azienda o da una comunità, cambia il gestore dell\'account (esempio: companyname.com)." + "Crea un account gratuito su matrix.org. Se desideri creare un account con un provider diverso, modificalo di conseguenza (esempio: communityname.org)." + "Gestore dell\'account" + "esempio.com" "Seleziona il tuo server" + "Inserisci il tuo gestore dell\'account" + "Scegli un gestore dell\'account" "Crea account" "Questo account è stato eliminato." "Nome utente e/o password errati" "Questo non è un identità utente valida. il formato atteso é: \'@user:homeserver.org\'" "Questo server è configurato per usare i token di aggiornamento. Non sono supportati quando si usa l\'accesso basato su password." - "L\'homeserver selezionato non supporta la password o l\'accesso OAuth. Contatta il tuo amministratore o scegli un altro homeserver." + "Il gestore dell\'account selezionato non supporta l\'accesso tramite password o OAuth. Si prega di contattare il proprio gestore dell\'account o di sceglierne uno diverso." "Inserisci i tuoi dati" "Matrix è una rete aperta per comunicazioni sicure e decentralizzate." "Bentornato!" diff --git a/features/login/impl/src/main/res/values-ko/translations.xml b/features/login/impl/src/main/res/values-ko/translations.xml index 8f313b15ee..967d91486d 100644 --- a/features/login/impl/src/main/res/values-ko/translations.xml +++ b/features/login/impl/src/main/res/values-ko/translations.xml @@ -53,7 +53,7 @@ "다시 오신 것을 환영합니다" "%1$s 에 오신 것을 환영합니다. 속도와 단순성을 극대화한 가장 빠른 버전입니다." "%1$s 에 오신 것을 환영합니다. 속도와 단순성을 위해 최적화된 앱입니다." - "당신의 엘리먼트에 있어" + "가장 나다운 공간, Element에서" "안전한 연결 설정" "새 장치에 안전하게 연결할 수 없습니다. 기존 장치는 여전히 안전하므로 걱정할 필요가 없습니다." "이제 어떻게 해야 할까?" 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 81d8570e32..b2741537d5 100644 --- a/features/login/impl/src/main/res/values-pl/translations.xml +++ b/features/login/impl/src/main/res/values-pl/translations.xml @@ -16,10 +16,10 @@ "Google Play" "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." + "Nie mogliśmy połączyć się z dostawcą konta. Sprawdź, czy adres URL serwera został wprowadzony poprawnie. Jeśli adres URL jest poprawny, skontaktuj się z administratorem dostawcy konta 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." + "Wybrany dostawca konta nie wspiera funkcji sliding sync. Wymagana jest aktualizacja serwera, aby korzystać z %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." @@ -40,7 +40,7 @@ "Nieprawidłowa nazwa użytkownika i/lub hasło" "To nie jest prawidłowy identyfikator użytkownika. Oczekiwany format: \'@user:homeserver.org\'" "Ten serwer został skonfigurowany do korzystania z tokenów odświeżania. Nie są one obsługiwane, gdy korzystasz z hasła." - "Wybrany serwer domowy nie obsługuje uwierzytelniania hasłem, ani OAuth. Skontaktuj się z jego administratorem lub wybierz inny serwer domowy." + "Wybrany dostawca konta nie obsługuje uwierzytelniania hasłem, ani OAuth. Spróbuj się z nim skontaktować lub wybierz innego." "Wprowadź swoje dane" "Matrix to otwarta sieć do bezpiecznej i zdecentralizowanej komunikacji." "Witaj ponownie!" diff --git a/features/login/impl/src/main/res/values-uk/translations.xml b/features/login/impl/src/main/res/values-uk/translations.xml index 918caf5530..aa20510649 100644 --- a/features/login/impl/src/main/res/values-uk/translations.xml +++ b/features/login/impl/src/main/res/values-uk/translations.xml @@ -16,10 +16,10 @@ "Google Play" "Необхідно встановити застосунок Element Pro на %1$s. Завантажте його з магазину." "Потрібен Element Pro" - "Не вдалося під\'єднатися до цього домашнього сервера. Перевірте правильність введеної URL-адреси домашнього сервера. Якщо URL-адреса правильна, зверніться по додаткову допомогу до адміністратора домашнього сервера." + "Нам не вдалося зв’язатися з цим постачальником облікового запису. Перевірте, чи правильно ви ввели URL-адресу постачальника облікового запису. Якщо URL-адреса правильна, зверніться до адміністратора постачальника вашого облікового запису по додаткову допомогу." "Сервер недоступний через помилку у файлі well-known: %1$s" - "Вибраний постачальник облікових записів не підтримує sliding sync. Щоб користуватися %1$s необхідно оновити сервер." + "Вибраний постачальник облікового запису не підтримує Sliding sync. Для використання функції %1$s потрібно оновити сервер." "%1$s не дозволено під\'єднуватися до %2$s." "Цей застосунок налаштовано так, щоб дозволити: %1$s." "Постачальник облікового запису %1$s не дозволений." @@ -40,7 +40,7 @@ "Неправильне ім\'я користувача та/або пароль" "Це недійсний ідентифікатор користувача. Очікуваний формат: \'@user:homeserver.org\'" "Цей сервер налаштований на використання оновлюваних токенів. Вони не підтримуються, якщо використовується вхід за допомогою основі пароля." - "Обраний домашній сервер не підтримує вхід за допомогою пароля або OAuth. Зверніться до адміністратора або виберіть інший домашній сервер." + "Вибраний постачальник облікового запису не підтримує пароль або вхід через OAuth. Зверніться до постачальника облікового запису або виберіть іншого." "Введіть свої дані" "Matrix — це відкрита мережа для безпечної, децентралізованої комунікації." "З поверненням!" @@ -89,7 +89,7 @@ "%1$s не підтримується" "Готовий до сканування" "Відкрийте %1$s на комп\'ютері" - "Натисніть на свою аватарку" + "Натисніть на свій аватар" "Виберіть %1$s" "“Під\'єднати новий пристрій”" "Зіскануйте QR-код цим пристроєм" diff --git a/features/login/impl/src/main/res/values-zh-rTW/translations.xml b/features/login/impl/src/main/res/values-zh-rTW/translations.xml index 76477eb36e..3b329c2000 100644 --- a/features/login/impl/src/main/res/values-zh-rTW/translations.xml +++ b/features/login/impl/src/main/res/values-zh-rTW/translations.xml @@ -25,8 +25,16 @@ "不允許帳號提供者 %1$s。" "家伺服器 URL" "輸入網域位址。" + "登入" + "建立帳號" "您的伺服器地址?" + "若您的帳號是由您的公司或社群提供的,請變更帳號提供者(範例:companyname.com)。" + "在 matrix.org 上建立免費帳號。若您想要使用其他提供者建立帳號,請據此調整(範例:communityname.org)。" + "帳號提供者" + "example.com" "選擇您的伺服器" + "輸入您的帳號提供者" + "選擇帳號提供者" "建立帳號" "此帳號已被刪除。" "不正確的使用者名稱或密碼" diff --git a/features/login/impl/src/main/res/values-zh/translations.xml b/features/login/impl/src/main/res/values-zh/translations.xml index 85de302dc1..aca4962922 100644 --- a/features/login/impl/src/main/res/values-zh/translations.xml +++ b/features/login/impl/src/main/res/values-zh/translations.xml @@ -16,7 +16,7 @@ "Google Play" "%1$s 要求 Element Pro。请从应用商店下载。" "需要 Element Pro" - "我们无法访问此服务器。请检查输入的服务器 URL 是否正确。如果 URL 正确,请联系服务器管理员寻求进一步帮助。" + "我们无法访问此账户提供者。请检查输入的账户提供者 URL 是否正确。如果 URL 正确,请联系账户提供者管理员寻求进一步帮助。" "由于 .well-known 文件存在问题,服务器不可用: %1$s" "所选账户提供者不支持滑动同步。需要升级服务器才能使用 %1$s。" @@ -40,7 +40,7 @@ "用户名与(或)密码不正确" "这不是合法的用户 ID。预期格式:“@user:homeserver.org”。" "此服务器使用刷新令牌。使用密码登录时不支持这些功能。" - "该服务器不支持密码登录与 OAuth 登录。请联系服务器管理员或选择另一服务器。" + "所选账户提供者不支持密码或 OAuth 登录。请联系账户提供者或选择另一账户提供者。" "输入详细信息" "Matrix 是一个用于安全、去中心化通信的开放网络。" "欢迎回来!" diff --git a/features/login/impl/src/main/res/values/localazy.xml b/features/login/impl/src/main/res/values/localazy.xml index 7e798081f5..d77081a70f 100644 --- a/features/login/impl/src/main/res/values/localazy.xml +++ b/features/login/impl/src/main/res/values/localazy.xml @@ -16,10 +16,10 @@ "Google Play" "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." + "We couldn\'t reach this account provider. Please check that you have entered the account provider URL correctly. If the URL is correct, contact your account provider administrator for further help." "Server isn\'t available due to an issue in the .well-known file: %1$s" - "The selected account provider does not support sliding sync. An upgrade to the server is needed to use %1$s." + "The selected account provider does not support sliding sync. The server needs to be upgraded to use %1$s." "%1$s is not allowed to connect to %2$s." "This app has been configured to allow: %1$s." "Account provider %1$s not allowed." @@ -40,7 +40,7 @@ "Incorrect username and/or password" "This is not a valid user identifier. Expected format: ‘@user:homeserver.org’" "This server is configured to use refresh tokens. These aren\'t supported when using password based login." - "The selected homeserver doesn\'t support password or OAuth login. Please contact your admin or choose another homeserver." + "The selected account provider doesn\'t support password or OAuth login. Please contact your account provider or choose a different one." "Enter your details" "Matrix is an open network for secure, decentralised communication." "Welcome back!" diff --git a/features/messages/impl/src/main/res/values-de/translations.xml b/features/messages/impl/src/main/res/values-de/translations.xml index 1bdb3e0b16..389e868b5a 100644 --- a/features/messages/impl/src/main/res/values-de/translations.xml +++ b/features/messages/impl/src/main/res/values-de/translations.xml @@ -7,19 +7,37 @@ "Verschlüsselt von einem unbekannten oder gelöschten Gerät." "Verschlüsselt durch ein Gerät, das nicht von seinem Besitzer verifiziert wurde." "Verschlüsselt durch einen nicht verifizierten Nutzer." + "Ungültiger MIME-Typ: %s" + "Fehlende Medieninhalte" + "Fehlerdetails: %s" + "Senden von einem nicht verifizierten Gerät" + "Unbekannter Fehler" + "Bild horizontal spiegeln" + "Horizontal gespiegelt" + "Original" + "Bild vertikal spiegeln" + "Vertikal gespiegelt" + "Original" + "Drehe das Bild nach links" + + "%1$d Grad" + "%1$d Grad" + + "Foto bearbeiten" "Bildunterschriften sind für Nutzer älterer Apps möglicherweise nicht sichtbar." "Tippe, um die Qualität des Video-Uploads zu ändern" "Die Datei konnte nicht hochgeladen werden." "Fehler beim Verarbeiten des hochgeladenen Mediums. Bitte versuche es erneut." "Das Hochladen der Medien ist fehlgeschlagen. Bitte versuche es erneut." "Die maximal zulässige Dateigröße beträgt %1$s." - "Die Datei ist zu groß zum Hochladen." + "Die Datei ist zu groß zum Hochladen" "%1$d von %2$d" "Optimiere die Bildqualität" "Verarbeitung läuft …" + "Medien hinzufügen" "Nutzer blockieren" "Prüfe, ob du alle aktuellen und zukünftigen Nachrichten dieses Nutzers ausblenden möchtest" - "Diese Nachricht wird dem Administrator deines Homeservers gemeldet. Dieser kann allerdings keine verschlüsselten Nachrichten lesen." + "Diese Nachricht wird an deinen Kontoanbieter gemeldet. Verschlüsselte Nachrichten kann dieser nicht lesen." "Grund für die Meldung dieses Inhalts" "Kamera" "Foto aufnehmen" @@ -29,7 +47,7 @@ "Standort teilen" "Umfrage" "Textformatierung" - "Der Nachrichtenverlauf ist derzeit nicht verfügbar" + "Der Nachrichtenverlauf ist derzeit nicht verfügbar." "Der Nachrichtenverlauf ist nicht verfügbar. Verifiziere dieses Gerät, um deinen Nachrichtenverlauf zu sehen." "Möchtest du sie wieder einladen?" "Du bist allein in diesem Chat" @@ -57,6 +75,10 @@ "Mehr anzeigen" "Zusammenfassung der Reaktionen anzeigen" "Neu" + + "%1$d entfernte Nachricht" + "%1$d entfernte Nachrichten" + "%1$d Änderung im Chat" "%1$d Änderungen im Chat" @@ -67,7 +89,7 @@ "Dieser Chat ist eine Fortsetzung eines anderen Chats" "%1$s, %2$s und %3$d weitere Person" - "%1$s, %2$s und %3$d weitere Person" + "%1$s, %2$s und %3$d weitere Personen" "%1$s schreibt…" diff --git a/features/messages/impl/src/main/res/values-el/translations.xml b/features/messages/impl/src/main/res/values-el/translations.xml index 4a944d5250..8a4e935b9e 100644 --- a/features/messages/impl/src/main/res/values-el/translations.xml +++ b/features/messages/impl/src/main/res/values-el/translations.xml @@ -19,7 +19,7 @@ "Επεξεργασία…" "Αποκλεισμός χρήστη" "Επέλεξε εάν θες να αποκρύψεις όλα τα τρέχοντα και μελλοντικά μηνύματα από αυτόν τον χρήστη" - "Αυτό το μήνυμα θα αναφερθεί στον διαχειριστή του οικιακού διακομιστή σας. Δεν θα μπορεί να διαβάσει κρυπτογραφημένα μηνύματα." + "Αυτό το μήνυμα θα αναφερθεί στον πάροχο του λογαριασμού σας. Δεν θα μπορεί να διαβάσει κανένα κρυπτογραφημένο μήνυμα." "Λόγος αναφοράς αυτού του περιεχομένου" "Κάμερα" "Τράβηξε φωτογραφία" diff --git a/features/messages/impl/src/main/res/values-et/translations.xml b/features/messages/impl/src/main/res/values-et/translations.xml index ab46eeee45..c7e368781e 100644 --- a/features/messages/impl/src/main/res/values-et/translations.xml +++ b/features/messages/impl/src/main/res/values-et/translations.xml @@ -7,6 +7,10 @@ "Krüptitud tundmatu või kustutatud seadme poolt." "Krüptitud seadme poolt, mida tema omanik pole verifitseerinud." "Krüptitud verifitseerimata kasutaja poolt." + "Vigane MIME-tüüp: %s" + "Vea üksikasjad: %s" + "Saadetakse verifitseerimata seadmest" + "Tundmatu viga" "Pööra pilti ümber rõhttelje" "Pilt on pööratud ümber rõhttelje" "Pildi algne variant" diff --git a/features/messages/impl/src/main/res/values-fr/translations.xml b/features/messages/impl/src/main/res/values-fr/translations.xml index 6d10d9a493..b02b08dad5 100644 --- a/features/messages/impl/src/main/res/values-fr/translations.xml +++ b/features/messages/impl/src/main/res/values-fr/translations.xml @@ -7,6 +7,11 @@ "Chiffré par un appareil inconnu ou supprimé." "Chiffré par un appareil non vérifié par son propriétaire." "Chiffré par un utilisateur non vérifié." + "Type MIME invalide : %s" + "Contenu multimédia manquant" + "Détails de l’erreur : %s" + "Envoi depuis un appareil non vérifié" + "Erreur inconnue" "Retourner l’image horizontalement" "Retournée horizontalement" "Originale" diff --git a/features/messages/impl/src/main/res/values-hr/translations.xml b/features/messages/impl/src/main/res/values-hr/translations.xml index 2fe73bf7de..41bf751738 100644 --- a/features/messages/impl/src/main/res/values-hr/translations.xml +++ b/features/messages/impl/src/main/res/values-hr/translations.xml @@ -7,6 +7,11 @@ "Šifrirano nepoznatim ili izbrisanim uređajem." "Šifrirano uređajem koji vlasnik nije potvrdio." "Šifrirao neprovjereni korisnik." + "Nevažeći MIME tip: %s" + "Nedostaje medijski sadržaj" + "Detalji pogreške: %s" + "Slanje s neprovjerenog uređaja" + "Nepoznata pogreška" "Okreni sliku vodoravno" "Okrenuto vodoravno" "Izvornik" diff --git a/features/messages/impl/src/main/res/values-in/translations.xml b/features/messages/impl/src/main/res/values-in/translations.xml index 00233facfd..ec0b739013 100644 --- a/features/messages/impl/src/main/res/values-in/translations.xml +++ b/features/messages/impl/src/main/res/values-in/translations.xml @@ -7,6 +7,17 @@ "Dienkripsi oleh perangkat yang tidak dikenal atau dihapus." "Dienkripsi oleh perangkat yang tidak diverifikasi oleh pemiliknya." "Dienkripsi oleh pengguna yang tidak terverifikasi." + "Tipe MIME tidak valid: %s" + "Konten media tidak ditemukan" + "Detail kesalahan: %s" + "Mengirim dari perangkat yang belum terverifikasi" + "Kesalahan tidak diketahui" + "Balikkan gambar secara horizontal" + "Dibalik secara horizontal" + "Asli" + "Balikkan gambar secara vertikal" + "Dibalik secara vertikal" + "Asli" "Putar gambar ke kiri" "%1$d derajat" diff --git a/features/messages/impl/src/main/res/values-it/translations.xml b/features/messages/impl/src/main/res/values-it/translations.xml index 273efe803f..26ea6212b7 100644 --- a/features/messages/impl/src/main/res/values-it/translations.xml +++ b/features/messages/impl/src/main/res/values-it/translations.xml @@ -7,6 +7,11 @@ "Cifrato da un dispositivo sconosciuto o eliminato." "Cifrato da un dispositivo non verificato dal proprietario." "Cifrato da un utente non verificato." + "Tipo MIME non valido: %s" + "Contenuto multimediale mancante" + "Dettagli dell\'errore: %s" + "Invio da dispositivo non verificato" + "Errore sconosciuto" "Capovolgi l\'immagine orizzontalmente" "Capovolto orizzontalmente" "Originale" @@ -32,7 +37,7 @@ "Aggiungi contenuti multimediali" "Blocca utente" "Seleziona se vuoi nascondere tutti i messaggi attuali e futuri di questo utente" - "Questo messaggio verrà segnalato all\'amministratore dell\'homeserver. Questi non sarà in grado di leggere i messaggi cifrati." + "Questo messaggio verrà segnalato al gestore del tuo account. Quest’ultimo non potrà leggere alcun messaggio cifrato." "Motivo della segnalazione di questo contenuto" "Fotocamera" "Scatta foto" @@ -70,6 +75,10 @@ "Mostra di più" "Mostra il riepilogo delle reazioni" "Nuovo" + + "%1$d messaggio rimosso" + "%1$d messaggi rimossi" + "%1$d modifica alla stanza" "%1$d modifiche alla stanza" diff --git a/features/messages/impl/src/main/res/values-ja/translations.xml b/features/messages/impl/src/main/res/values-ja/translations.xml index 15851b893e..ae571e2751 100644 --- a/features/messages/impl/src/main/res/values-ja/translations.xml +++ b/features/messages/impl/src/main/res/values-ja/translations.xml @@ -67,6 +67,9 @@ "さらに表示" "リアクションのまとめを表示" "新着" + + "%1$d 件の削除されたメッセージ" + "%1$d 個のルーム更新点" 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 ac94594e99..915eedf61e 100644 --- a/features/messages/impl/src/main/res/values-pl/translations.xml +++ b/features/messages/impl/src/main/res/values-pl/translations.xml @@ -7,6 +7,11 @@ "Zaszyfrowana przez nieznane lub usunięte urządzenie." "Zaszyfrowana przez urządzenie niezweryfikowane przez jego właściciela." "Zaszyfrowana przez niezweryfikowanego użytkownika." + "Nieprawidłowy typ MIME: %s" + "Brak treści multimedialnych" + "Szczegóły błędu: %s" + "Wysyłanie z niezweryfikowanego urządzenia" + "Nieznany błąd" "Odwróć obraz w poziomie" "Odwrócono w poziomie" "Oryginalny" @@ -33,7 +38,7 @@ "Dodaj media" "Zablokuj użytkownika" "Zaznacz, jeśli chcesz ukryć wszystkie bieżące i przyszłe wiadomości od tego użytkownika." - "Ta wiadomość zostanie zgłoszona do administratora Twojego serwera domowego. Nie będzie mógł on przeczytać żadnych zaszyfrowanych wiadomości." + "Wiadomość zostanie zgłoszona do Twojego dostawcy konta. Nie będzie mógł on przeczytać żadnych zaszyfrowanych wiadomości." "Powód zgłoszenia treści" "Kamera" "Zrób zdjęcie" diff --git a/features/messages/impl/src/main/res/values-uk/translations.xml b/features/messages/impl/src/main/res/values-uk/translations.xml index 1e35a2eee1..bcac792fc3 100644 --- a/features/messages/impl/src/main/res/values-uk/translations.xml +++ b/features/messages/impl/src/main/res/values-uk/translations.xml @@ -7,6 +7,11 @@ "Зашифровано невідомим або видаленим пристроєм." "Зашифровано пристроєм, який не звірено його власником." "Зашифровано не звіреним користувачем." + "Недійсний тип MIME: %s" + "Відсутній медіавміст" + "Подробиці помилки: %s" + "Надсилання з незвіреного пристрою" + "Невідома помилка" "Повернути зображення по горизонталі" "Перевернуто по горизонталі" "Оригінал" @@ -33,7 +38,7 @@ "Додати медіа" "Заблокувати користувача" "Перевірте, чи хочете ви приховати всі поточні та майбутні повідомлення від цього користувача" - "Це повідомлення буде надіслано адміністраторам вашого домашнього сервера. Вони не зможуть прочитати зашифровані повідомлення." + "Це повідомлення буде передано постачальнику вашого облікового запису. Він не зможе прочитати зашифрованих повідомлень." "Причина скарги на цей вміст" "Камера" "Зробити фото" diff --git a/features/messages/impl/src/main/res/values-zh/translations.xml b/features/messages/impl/src/main/res/values-zh/translations.xml index 350ade6535..609db9f40b 100644 --- a/features/messages/impl/src/main/res/values-zh/translations.xml +++ b/features/messages/impl/src/main/res/values-zh/translations.xml @@ -7,6 +7,11 @@ "由未知或已删除的设备加密。" "由未经其所有者验证的设备加密。" "由未经验证的用户加密。" + "无效的 MIME 类型:%s" + "媒体内容丢失" + "错误详细信息:%s" + "由未经验证的设备发送" + "未知错误" "水平翻转图像" "水平翻转" "原始" @@ -31,7 +36,7 @@ "添加媒体" "屏蔽用户" "请确认是否要隐藏该用户当前和未来的所有消息" - "此消息将举报给服务器管理员。他们无法读取任何加密消息。" + "此消息将举报给账户提供者。他们无法读取任何加密消息。" "举报此内容的理由" "相机" "拍摄照片" diff --git a/features/messages/impl/src/main/res/values/localazy.xml b/features/messages/impl/src/main/res/values/localazy.xml index e29b83af41..0c45fc01e1 100644 --- a/features/messages/impl/src/main/res/values/localazy.xml +++ b/features/messages/impl/src/main/res/values/localazy.xml @@ -37,7 +37,7 @@ "Add media" "Block user" "Check if you want to hide all current and future messages from this user" - "This message will be reported to your homeserver’s administrator. They will not be able to read any encrypted messages." + "This message will be reported to your account provider. They will not be able to read any encrypted messages." "Reason for reporting this content" "Camera" "Take photo" diff --git a/features/poll/api/src/main/res/values-el/translations.xml b/features/poll/api/src/main/res/values-el/translations.xml index ebf3a0a8f7..37a0f71353 100644 --- a/features/poll/api/src/main/res/values-el/translations.xml +++ b/features/poll/api/src/main/res/values-el/translations.xml @@ -1,8 +1,8 @@ - "%1$d τοις εκατό των συνολικών ψήφων" - "%1$d τοις εκατό του συνόλου των ψήφων" + "%1$d ποσοστό των συνολικών ψήφων" + "%1$d ποσοστά επί του συνόλου των ψήφων" "Θα καταργήσει την προηγούμενη επιλογή" "Αυτή είναι η νικητήρια απάντηση" diff --git a/features/poll/api/src/main/res/values-ja/translations.xml b/features/poll/api/src/main/res/values-ja/translations.xml index b40e58d11f..ea4020a5f1 100644 --- a/features/poll/api/src/main/res/values-ja/translations.xml +++ b/features/poll/api/src/main/res/values-ja/translations.xml @@ -1,7 +1,7 @@ - "総投票数うち%1$d%%" + "総投票数うち%1$d% パーセント" "前の項目を削除します" "投票の勝者はこちらです" diff --git a/features/preferences/impl/src/main/res/values-de/translations.xml b/features/preferences/impl/src/main/res/values-de/translations.xml index 31add7855a..e33bd743eb 100644 --- a/features/preferences/impl/src/main/res/values-de/translations.xml +++ b/features/preferences/impl/src/main/res/values-de/translations.xml @@ -12,6 +12,8 @@ "Medienvorschau im Nachrichtenverlauf ausblenden" "Labs" "Die Entfernung, die du zurücklegen musst, um ein Update auszulösen." + "Stelle sicher, dass „Genauer Standort“ für diese App aktiviert ist. Um die Berechtigung zu ändern, gehe zu %1$s." + "App-Einstellungen" "Live-Standort-Updates" "Alle %1$d Meter" @@ -21,7 +23,7 @@ "Optimiere die Medienqualität" "Moderation und Sicherheit" "Optimiere Bilder automatisch für schnellere Uploads und kleinere Dateigrößen." - "Optimiere die Qualität zum Hochladen von Bildern." + "Optimiere die Qualität zum Hochladen von Bildern" "%1$s. Tippe hier, um zu ändern." "Hoch (1080p)" "Niedrig (480p)" @@ -49,13 +51,14 @@ "Ein unbekannter Fehler ist aufgetreten und die Informationen konnten nicht geändert werden." "Profil kann nicht aktualisiert werden" "Profil bearbeiten" - "Profil wird aktualisiert…" + "Profil wird aktualisiert …" "Thread-Antworten aktivieren" "Die App wird neu gestartet, um diese Änderung zu übernehmen." "Probier unsere neuesten Ideen in der Entwicklung aus. Diese Funktionen sind noch nicht fertiggestellt; sie können instabil sein und sich noch ändern." "Entdeckungsfreudig?" "Labs" "Zusätzliche Einstellungen" + "Klingelton für Anrufe" "Audio- und Videoanrufe" "Konfiguration stimmt nicht überein" "Wir haben die Einstellungen für Benachrichtigungen vereinfacht. Einige Einstellungen, die du gewählt hast, werden hier nicht angezeigt, sind aber immer noch aktiv. @@ -72,16 +75,41 @@ Wenn du fortfährst, können sich einige deiner Einstellungen ändern." "Die Konfiguration wurde nicht korrigiert, bitte versuche es erneut." "Gruppenchats" "Einladungen" - "Dein Homeserver unterstützt diese Option in verschlüsselten Chats nicht. In einigen Chats erhältst du möglicherweise keine Benachrichtigungen." + "Dein Kontoanbieter unterstützt diese Option in verschlüsselten Chats nicht. In einigen Chats erhältst du möglicherweise keine Benachrichtigungen." "Erwähnungen" + "Wähle einen anderen Ton aus…" + "Aktuell wird %1$s verwendet" + "Nachrichtenton" + "Nachrichtenton" "Alle" "Erwähnungen" "Benachrichtige mich bei" "Benachrichtige mich bei @room" + "Benutzerdefiniert" + "Eigener Ton …" + "Fehler beim Löschen der Datei" + "Element-Standard" + "Element Fade" + "Fehler beim Importieren der Datei" + "Fehler beim Abspielen der Hinweiston-Vorschau" + "Ton" + "Fehlermeldung zum Hinweiston schließen" + "Fehler beim Festlegen des Hinweistons" + "Stumm" + "Systemstandard" "Um Benachrichtigungen zu erhalten, ändere bitte deine %1$s." "Systemeinstellungen" "Systembenachrichtigungen deaktiviert" "Benachrichtigungen" + "Abwesend" + "Gleich zurück" + "Benutzerdefiniert …" + "Benutzerdefinierter Status …" + "Fokuszeit" + "In einer Besprechung" + "Unterwegs" + "Wie ist dein Status?" + "Schwarz" "Dunkel" "Hell" "System" diff --git a/features/preferences/impl/src/main/res/values-el/translations.xml b/features/preferences/impl/src/main/res/values-el/translations.xml index 6db52343d3..81cf9d555d 100644 --- a/features/preferences/impl/src/main/res/values-el/translations.xml +++ b/features/preferences/impl/src/main/res/values-el/translations.xml @@ -11,6 +11,12 @@ "Απόκρυψη εικόνων προφίλ σε αιτήματα πρόσκλησης αίθουσας" "Απόκρυψη προεπισκοπήσεων πολυμέσων στο timeline" "Εργαστήρια" + "Η απόσταση που πρέπει να διανύσετε για να ενεργοποιήσετε μια ενημέρωση." + "Ζωντανές ενημερώσεις της τοποθεσίας" + + "Κάθε %1$d μέτρο" + "Κάθε %1$d μέτρα" + "Ανέβασε φωτογραφίες και βίντεο γρηγορότερα και μείωσε τη χρήση δεδομένων" "Βελτιστοποίηση ποιότητας των μέσων" "Συντονισμός και Ασφάλεια" diff --git a/features/preferences/impl/src/main/res/values-et/translations.xml b/features/preferences/impl/src/main/res/values-et/translations.xml index 37f3348583..04a65f8f5c 100644 --- a/features/preferences/impl/src/main/res/values-et/translations.xml +++ b/features/preferences/impl/src/main/res/values-et/translations.xml @@ -84,7 +84,7 @@ Kui sa jätkad muutmist, siis võivad muutuda ka need peidetud eelistused.""Kõik" "Mainimiste alusel" "Teavita mind" - "Teavita mind @jututoa puhul" + @jututoa mainimised "Kohandatud" "Sinu valitud helin…" "Viga faili kustutamisel" diff --git a/features/preferences/impl/src/main/res/values-fr/translations.xml b/features/preferences/impl/src/main/res/values-fr/translations.xml index 06fe3be814..98854a6ba5 100644 --- a/features/preferences/impl/src/main/res/values-fr/translations.xml +++ b/features/preferences/impl/src/main/res/values-fr/translations.xml @@ -75,7 +75,7 @@ Si vous continuez, il est possible que certains de vos paramètres soient modifi "La configuration n’a pas été corrigée, veuillez réessayer." "Discussions de groupe" "Invitations" - "Votre serveur d’accueil ne supporte pas cette option pour les salons chiffrés, vous pourriez ne pas être notifié(e) dans certains salons." + "Votre fournisseur de compte ne supporte pas cette option pour les salons chiffrés, vous pourriez ne pas être notifié(e) dans certains salons." "Mentions" "Choisir un autre son…" "Vous utilisez actuellement %1$s" @@ -84,7 +84,7 @@ Si vous continuez, il est possible que certains de vos paramètres soient modifi "Tous" "Mentions" "Prévenez-moi pour" - "Prévenez-moi si un message contient \"@room\"" + "Un message qui contient @room" "Personnalisé" "Son personnalisé…" "Erreur lors de la suppression du fichier" diff --git a/features/preferences/impl/src/main/res/values-in/translations.xml b/features/preferences/impl/src/main/res/values-in/translations.xml index 11d0673606..d8fde7c033 100644 --- a/features/preferences/impl/src/main/res/values-in/translations.xml +++ b/features/preferences/impl/src/main/res/values-in/translations.xml @@ -57,6 +57,7 @@ "Merasa ingin bereksperimen?" "Uji Coba" "Pengaturan tambahan" + "Nada dering panggilan" "Panggilan audio dan video" "Ketidakcocokan pengaturan" "Kami telah menyederhanakan Pengaturan Pemberitahuan untuk membuat opsi lebih mudah ditemukan. @@ -77,13 +78,26 @@ Jika Anda melanjutkan, beberapa pengaturan Anda dapat berubah." "Undangan" "Homeserver Anda tidak mendukung opsi ini dalam ruangan terenkripsi, Anda mungkin tidak diberi tahu dalam beberapa ruangan." "Sebutan" + "Pilih suara lain…" + "Saat ini menggunakan %1$s" + "Suara pesan" + "Suara pesan" "Semua" "Sebutan" "Beri tahu saya tentang" "Beri tahu saya pada @room" + "Kustom" + "Suara kustom" + "Terjadi kesalahan saat menghapus file." "Pengaturan Default Element" + "Element Fade" + "Terjadi kesalahan saat mengimpor file" + "Pratinjau suara peringatan bermasalah" "Suara" + "Tutup suara peringatan kesalahan" "Masalah pengaturan suara peringatan" + "Diam" + "Default sistem" "Untuk menerima pemberitahuan, silakan ubah %1$s Anda." "pengaturan sistem" "Pemberitahuan sistem dimatikan" diff --git a/features/preferences/impl/src/main/res/values-it/translations.xml b/features/preferences/impl/src/main/res/values-it/translations.xml index 3da5e1e6ce..a88ccbc8f3 100644 --- a/features/preferences/impl/src/main/res/values-it/translations.xml +++ b/features/preferences/impl/src/main/res/values-it/translations.xml @@ -75,7 +75,7 @@ Se procedi, alcune delle tue impostazioni potrebbero cambiare." "La configurazione non è stata corretta, riprova." "Chat di gruppo" "Inviti" - "Il tuo homeserver non supporta questa opzione nelle stanze crifrate, quindi potresti non ricevere notifiche in alcune stanze." + "Il tuo gestore dell\'account non supporta questa opzione nelle conversazioni cifrate, pertanto potresti non ricevere notifiche in alcune conversazioni." "Menzioni" "Scegli un altro suono…" "Attualmente si utilizza %1$s" @@ -101,6 +101,14 @@ Se procedi, alcune delle tue impostazioni potrebbero cambiare." "impostazioni di sistema" "Notifiche di sistema disattivate" "Notifiche" + "Assente" + "Torno subito" + "Personalizzato…" + "Stato personalizzato…" + "Mi sto concentrando" + "In una riunione" + "In viaggio" + "Quale è il tuo stato?" "Nero" "Scuro" "Chiaro" diff --git a/features/preferences/impl/src/main/res/values-ja/translations.xml b/features/preferences/impl/src/main/res/values-ja/translations.xml index 8e97d03c54..5010402532 100644 --- a/features/preferences/impl/src/main/res/values-ja/translations.xml +++ b/features/preferences/impl/src/main/res/values-ja/translations.xml @@ -100,6 +100,14 @@ "システム設定" "システムで通知がオフです" "通知" + "離席中" + "すぐに戻る" + "任意…" + "任意のステータス…" + "集中タイム" + "会議中" + "移動中" + "現在のステータスは?" "ブラック" "ダーク" "ライト" diff --git a/features/preferences/impl/src/main/res/values-ko/translations.xml b/features/preferences/impl/src/main/res/values-ko/translations.xml index dcff2d7b6c..db601bacff 100644 --- a/features/preferences/impl/src/main/res/values-ko/translations.xml +++ b/features/preferences/impl/src/main/res/values-ko/translations.xml @@ -89,7 +89,7 @@ "소리 사용자 지정" "파일 삭제 오류" "Element 기본 설정" - "엘리먼트 페이드" + "Element Fade" "파일 가져오기 오류" "알림음 미리듣기 문제 발생" "소리" diff --git a/features/preferences/impl/src/main/res/values-pl/translations.xml b/features/preferences/impl/src/main/res/values-pl/translations.xml index 93c02d9f95..92ae9062bf 100644 --- a/features/preferences/impl/src/main/res/values-pl/translations.xml +++ b/features/preferences/impl/src/main/res/values-pl/translations.xml @@ -76,7 +76,7 @@ Niektóre ustawienia mogą ulec zmianie, jeśli kontynuujesz." "Konfiguracja nie została poprawiona, spróbuj ponownie." "Czaty grupowe" "Zaproszenia" - "Twój serwer domowy nie wspiera tej opcji w pokojach szyfrowanych, możesz nie otrzymać powiadomień z niektórych pokoi." + "Twój dostawca konta nie wspiera tej opcji w pokojach szyfrowanych, możesz nie otrzymać powiadomień z niektórych pokoi." "Wzmianki" "Wybierz inny dźwięk…" "Aktualnie używany %1$s" @@ -85,7 +85,7 @@ Niektóre ustawienia mogą ulec zmianie, jeśli kontynuujesz." "Wszystkie" "Wzmianki" "Powiadamiaj mnie przez" - "Powiadom mnie na @pokój" + "Wzmianki @room" "Własny" "Własny dźwięk…" "Błąd usuwania pliku" diff --git a/features/preferences/impl/src/main/res/values-uk/translations.xml b/features/preferences/impl/src/main/res/values-uk/translations.xml index db42d153aa..bcd90a3934 100644 --- a/features/preferences/impl/src/main/res/values-uk/translations.xml +++ b/features/preferences/impl/src/main/res/values-uk/translations.xml @@ -76,7 +76,7 @@ "Конфігурацію не виправлено, спробуйте ще раз." "Групові бесіди" "Запрошення" - "Ваш домашній сервер не підтримує цю опцію в зашифрованих кімнатах, ви можете не отримати сповіщення в деяких кімнатах." + "Постачальник вашого облікового запису не підтримує цю опцію в зашифрованих бесідах, тому ви можете не отримувати сповіщення в деяких бесідах." "Згадки" "Обрати інший звук…" "Наразі використовується %1$s" @@ -85,7 +85,7 @@ "Усі" "Згадки" "Сповіщати мене про" - "Сповіщати про @room" + "Згадки @room" "Власний" "Користувацький звук…" "Помилка видалення файлу" diff --git a/features/preferences/impl/src/main/res/values-zh/translations.xml b/features/preferences/impl/src/main/res/values-zh/translations.xml index 5a6e75fdd6..a286c4b832 100644 --- a/features/preferences/impl/src/main/res/values-zh/translations.xml +++ b/features/preferences/impl/src/main/res/values-zh/translations.xml @@ -51,6 +51,10 @@ "无法更新个人资料" "编辑个人资料" "正在更新个人资料…" + "含有媒体组的消息" + "一次性发送多个图像或视频。此功能已在移动客户端稳定运行,但 Web 客户端尚未支持。" + "申请加入" + "用户可以申请加入一个不对任何人开放的房间。此功能已在移动客户端稳定运行,在 Web 客户端也已推出,但尚处于实验阶段。" "启用消息列中的回复" "App 将重启以应用此更改。" "尝试我们最新的开发理念。这些功能尚未最终确定,可能不稳定,也可能会发生变化。" @@ -74,7 +78,7 @@ "配置尚未更正,请重试。" "群聊" "邀请" - "主服务器不支持在加密房间中的此选项,因此在某些房间你可能无法收到通知。" + "你的账户提供者不支持在加密房间中的此选项,因此在某些聊天中你可能无法收到通知。" "提及" "选择其它提示音…" "当前正在使用 %1$s" @@ -83,7 +87,7 @@ "全部" "提及" "通知我以下类型" - "提及所有成员(@room)时通知我" + "含有 @room 的提及" "自定义" "自定义提示音…" "删除文件时出错" diff --git a/features/preferences/impl/src/main/res/values/localazy.xml b/features/preferences/impl/src/main/res/values/localazy.xml index b6e4eeffe3..9da592170e 100644 --- a/features/preferences/impl/src/main/res/values/localazy.xml +++ b/features/preferences/impl/src/main/res/values/localazy.xml @@ -79,7 +79,7 @@ If you proceed, some of your settings may change." "The configuration has not been corrected, please try again." "Group chats" "Invitations" - "Your homeserver does not support this option in encrypted rooms, you may not get notified in some rooms." + "Your account provider does not support this option in encrypted chats, you may not get notified in some chats." "Mentions" "Choose another sound…" "Currently using %1$s" @@ -88,7 +88,7 @@ If you proceed, some of your settings may change." "All" "Mentions" "Notify me for" - "Notify me on @room" + "Mentions of @room" "Custom" "Custom sound…" "Error deleting file" diff --git a/features/rageshake/impl/src/main/res/values-de/translations.xml b/features/rageshake/impl/src/main/res/values-de/translations.xml index 33baf29d59..033a1ea251 100644 --- a/features/rageshake/impl/src/main/res/values-de/translations.xml +++ b/features/rageshake/impl/src/main/res/values-de/translations.xml @@ -8,6 +8,8 @@ "Beschreibe den Fehler…" "Wenn möglich, verfasse die Beschreibung bitte auf Englisch." "Die Beschreibung ist zu kurz. Bitte gib weitere Informationen darüber an, was passiert ist." + "Du kannst die Nummer eines zugehörigen GitHub-Issues angeben, falls vorhanden." + "GitHub-Issue" "Absturzprotokolle senden" "Logdateien mitsenden" "Deine Logs sind zu groß und können dem Bericht nicht beigefügt werden. Bitte sende sie uns auf einem anderen Weg." diff --git a/features/rageshake/impl/src/main/res/values-in/translations.xml b/features/rageshake/impl/src/main/res/values-in/translations.xml index d58a5ef9ca..3622750fc7 100644 --- a/features/rageshake/impl/src/main/res/values-in/translations.xml +++ b/features/rageshake/impl/src/main/res/values-in/translations.xml @@ -8,6 +8,8 @@ "Jelaskan masalah tersebut…" "Jika memungkinkan, silakan tulis deskripsi dalam bahasa Inggris." "Deskripsinya terlalu pendek, silakan menyediakan detail tambahan tentang apa yang terjadi. Terima kasih!" + "Anda dapat memasukkan nomor masalah GitHub terkait, jika ada." + "Masalah GitHub" "Kirim log kerusakan" "Izinkan log" "Log Anda terlalu besar sehingga tidak dapat dimasukkan dalam laporan ini, kirimkan kepada kami dengan cara lain." diff --git a/features/reportroom/impl/src/main/res/values-de/translations.xml b/features/reportroom/impl/src/main/res/values-de/translations.xml index fe7adff258..e9c062bbb4 100644 --- a/features/reportroom/impl/src/main/res/values-de/translations.xml +++ b/features/reportroom/impl/src/main/res/values-de/translations.xml @@ -2,7 +2,7 @@ "Deine Meldung wurde erfolgreich übermittelt. Beim Versuch, den Chat zu verlassen, ist allerdings ein Problem aufgetreten. Bitte versuche es erneut." "Der Chat kann nicht verlassen werden" - "Melde diesen Chat deinem Administrator. Wenn die Nachrichten verschlüsselt sind, kann dein Administrator sie nicht lesen." + "Melde diesen Chat deinem Kontoanbieter. Wenn die Nachrichten verschlüsselt sind, kann dieser sie nicht lesen." "Beschreibe den Grund für die Meldung…" "Chat melden" diff --git a/features/reportroom/impl/src/main/res/values-fr/translations.xml b/features/reportroom/impl/src/main/res/values-fr/translations.xml index 4936a4d54f..21a96622d2 100644 --- a/features/reportroom/impl/src/main/res/values-fr/translations.xml +++ b/features/reportroom/impl/src/main/res/values-fr/translations.xml @@ -2,7 +2,7 @@ "Votre rapport a été envoyé avec succès, mais nous avons rencontré un problème en essayant de quitter le salon. Veuillez réessayer." "Impossible de quitter le salon" - "Signaler ce salon à votre admin. Si les messages sont chiffrés, votre admin ne pourra pas les lire." + "Signaler ce salon à votre fournisseur de compte. Si les messages sont chiffrés, votre fournisseur de compte ne pourra pas les lire." "Décrivez la raison du signalement…" "Signaler le salon" diff --git a/features/reportroom/impl/src/main/res/values-pl/translations.xml b/features/reportroom/impl/src/main/res/values-pl/translations.xml index dd1b928e81..309251326e 100644 --- a/features/reportroom/impl/src/main/res/values-pl/translations.xml +++ b/features/reportroom/impl/src/main/res/values-pl/translations.xml @@ -2,7 +2,7 @@ "Twoje zgłoszenie zostało wysłane pomyślnie, ale napotkaliśmy problem podczas opuszczania pokoju. Spróbuj ponownie." "Nie można wyjść z pokoju" - "Zgłoś ten pokój swojemu administratorowi. Jeśli wiadomości są zaszyfrowane, administrator nie będzie mógł ich odczytać." + "Zgłoś ten pokój swojemu dostawcy konta. Jeśli wiadomości są zaszyfrowane, dostawca nie będzie mógł ich odczytać." "Opisz powód…" "Zgłoś pokój" diff --git a/features/reportroom/impl/src/main/res/values-uk/translations.xml b/features/reportroom/impl/src/main/res/values-uk/translations.xml index e720852848..fb69091439 100644 --- a/features/reportroom/impl/src/main/res/values-uk/translations.xml +++ b/features/reportroom/impl/src/main/res/values-uk/translations.xml @@ -2,7 +2,7 @@ "Ваша скарга надіслана, але ми зіткнулися з проблемою під час спроби вийти з кімнати. Повторіть спробу." "Не вдалося вийти з кімнати" - "Поскаржтеся на цю кімнату своєму адміністратору. Якщо повідомлення зашифровані, ваш адміністратор не зможе їх прочитати." + "Поскаржитися на цю бесіду постачальнику облікового запису. Якщо повідомлення зашифровані, адміністратор не зможе прочитати їх." "Опишіть причину…" "Поскаржитися на кімнату" diff --git a/features/reportroom/impl/src/main/res/values-zh/translations.xml b/features/reportroom/impl/src/main/res/values-zh/translations.xml index 4366e33455..f44f8e028e 100644 --- a/features/reportroom/impl/src/main/res/values-zh/translations.xml +++ b/features/reportroom/impl/src/main/res/values-zh/translations.xml @@ -2,7 +2,7 @@ "你的举报已成功提交,但在尝试退出房间时遇到问题。请重试。" "无法离开房间" - "向管理员举报此房间。如果消息已加密,管理员将无法读取。" + "向管理员举报此聊天。如果消息已加密,账户提供者将无法读取。" "描述举报的理由…" "举报房间" diff --git a/features/reportroom/impl/src/main/res/values/localazy.xml b/features/reportroom/impl/src/main/res/values/localazy.xml index 16183e6f1b..e303f61fbd 100644 --- a/features/reportroom/impl/src/main/res/values/localazy.xml +++ b/features/reportroom/impl/src/main/res/values/localazy.xml @@ -2,7 +2,7 @@ "Your report was submitted successfully, but we encountered an issue while trying to leave the room. Please try again." "Unable to Leave Room" - "Report this room to your admin. If the messages are encrypted, your admin will not be able to read them." + "Report this chat to your account provider. If the messages are encrypted, your account provider will not be able to read them." "Describe the reason to report…" "Report room" diff --git a/features/rolesandpermissions/impl/src/main/res/values-de/translations.xml b/features/rolesandpermissions/impl/src/main/res/values-de/translations.xml index f51f96672b..b3ee52cef4 100644 --- a/features/rolesandpermissions/impl/src/main/res/values-de/translations.xml +++ b/features/rolesandpermissions/impl/src/main/res/values-de/translations.xml @@ -5,7 +5,8 @@ "Einstellungen ändern" "Nachrichten entfernen" "Mitglied" - "Mitglieder hinzufügen" + "Personen einladen" + "Live-Standort teilen" "Space konfigurieren" "Chats und Gruppen konfigurieren" "Mitglieder verwalten" @@ -42,7 +43,7 @@ "%1$d gesperrt" "%1$d gesperrt" - "Überprüfe die Schreibweise oder versuch\'s mit einer neuen Suche" + "Überprüfe die Schreibweise oder versuche eine neue Suche" "Keine Ergebnisse für „%1$s“" "%1$d Person" @@ -64,7 +65,7 @@ "Moderator" "Eigentümer" "Mitglieder" - "%1$s wird entsperrt." + "Die Sperre für %1$s wird aufgehoben" "Admins" "Admins und Eigentümer" "Ändere meine Rolle" 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 08201fdc34..351284bf60 100644 --- a/features/roomdetails/impl/src/main/res/values-de/translations.xml +++ b/features/roomdetails/impl/src/main/res/values-de/translations.xml @@ -2,17 +2,17 @@ "Neue Mitglieder sehen den Nachrichtenverlauf nicht" "Neue Mitglieder sehen den Nachrichtenverlauf" - "Jeder sieht den Nachrichtenverlauf" + "Jeder kann den Nachrichtenverlauf sehen" "Du benötigst eine Chat-Adresse, um den Chat im öffentlichen Verzeichnis sichtbar zu machen." "Chat-Adresse bearbeiten" "Beim Aktualisieren der Benachrichtigungseinstellungen ist ein Fehler aufgetreten." - "Dein Homeserver unterstützt diese Option in verschlüsselten Chats nicht. In einigen Chats erhältst du möglicherweise keine Benachrichtigungen." + "Dein Kontoanbieter unterstützt diese Option in verschlüsselten Chats nicht. In einigen Chats erhältst du möglicherweise keine Benachrichtigungen." "Umfragen" "Admin" "Mitglieder sperren" "Nachrichten entfernen" "Mitglied" - "Mitglieder hinzufügen" + "Personen einladen" "Mitglieder verwalten" "Nachrichten senden & löschen" "Moderator" @@ -54,11 +54,11 @@ "Die Stummschaltung ist fehlgeschlagen, bitte versuche es erneut." "Die Deaktivierung der Stummschaltung ist fehlgeschlagen, bitte versuche es erneut." "Schließ die App erst, wenn du fertig bist." - "Einladungen werden vorbereitet…" - "Nutzer einladen" + "Einladungen werden vorbereitet …" + "Personen einladen" "Einladen" "Unterhaltung verlassen" - "Verlassen" + "Chat verlassen" "Medien und Dateien" "Benutzerdefiniert" "Standard" @@ -79,7 +79,7 @@ "%1$d gesperrt" "%1$d gesperrt" - "Überprüfe die Schreibweise oder versuch\'s mit einer neuen Suche" + "Überprüfe die Schreibweise oder versuche eine neue Suche" "Keine Ergebnisse für „%1$s“" "%1$d Person" @@ -101,20 +101,21 @@ "Moderator" "Eigentümer" "Mitglieder" - "%1$s wird entsperrt." + "Die Sperre für %1$s wird aufgehoben" "Benutzerdefinierte Einstellungen verwenden" - "Wenn du dies einschaltest, werden deine Standardeinstellungen außer Kraft setzen." + "Wenn du dies einschaltest, werden deine Standardeinstellungen außer Kraft gesetzt" "Benachrichtige mich in diesem Chat bei" - "Zum Anpassen der Standardeinstellungen gehe zu: %1$s" + "Zum Anpassen der Standardeinstellungen gehe zu: %1$s." "Globale Einstellungen" "Standardeinstellung" "Benutzerdefinierte Einstellung entfernen" "Beim Laden der Benachrichtigungseinstellungen ist ein Fehler aufgetreten." "Fehler beim Wiederherstellen des Standardmodus. Bitte erneut versuchen." "Fehler beim Einstellen des Modus. Bitte erneut versuchen." - "Dein Homeserver unterstützt diese Option in verschlüsselten Chats nicht. Du erhältst in diesem Chat keine Benachrichtigungen." + "Dein Kontoanbieter unterstützt diese Option in verschlüsselten Chats nicht. Du erhältst in diesem Chat keine Benachrichtigungen." "Alle Nachrichten" - "Nur Erwähnungen und Schlüsselwörter" + "Nur @Erwähnungen und Antworten" + "Stumm" "Benachrichtige mich bei" "Admins" "Admins und Eigentümer" @@ -137,7 +138,7 @@ "Chat-Adresse hinzufügen" "Jedes Mitglied eines autorisierten Space kann beitreten, aber alle anderen müssen einen Beitritt anfragen." "Zugang nur auf Anfrage." - "Bitte um Beitritt" + "Beitritt anfragen" "Jeder in %1$s kann beitreten, aber alle anderen müssen den Beitritt anfragen." "Ja, Verschlüsselung aktivieren" "Einmal angeschaltet kann die Verschlüsselung für einen Chat nicht mehr deaktiviert werden. Der Nachrichtenverlauf ist für Mitglieder nur sichtbar, seit sie eingeladen wurden oder dem Chat beigetreten sind. @@ -147,17 +148,17 @@ Wir empfehlen keine Verschlüsselung für Chats zu aktivieren, die jeder finden "Einmal angeschaltet kann die Verschlüsselung nicht mehr deaktiviert werden." "Verschlüsselung" "Ende-zu-Ende-Verschlüsselung aktivieren" - "Jeder kann beitreten." + "Alle können beitreten." "Jeder" "Wähle aus, welche Spaces ihren Mitgliedern ermöglichen sollen, dieser Gruppe ohne Einladung beitreten zu können. %1$s" "Spaces verwalten" - "Nur eingeladene Personen können beitreten" - "Nur auf Einladung" + "Nur eingeladene Personen können beitreten." + "Nur mit Einladung" "Zugang" "Jeder in autorisierten Spaces kann beitreten." "Jeder in %1$s kann beitreten." "Space Mitglieder" - "Spaces werden zur Zeit nicht unterstützt." + "Spaces werden zur Zeit nicht unterstützt" "Du benötigst eine Chat-Adresse, um den Chat im öffentlichen Verzeichnis sichtbar zu machen." "Adresse" "Erlaube das Auffinden dieses Chats durch Suche im öffentlichen Verzeichnis von %1$s" @@ -171,7 +172,7 @@ Wir empfehlen keine Verschlüsselung für Chats zu aktivieren, die jeder finden "Chat-Adressen machen es möglich, Chats zu finden und ihnen beizutreten. Dies erleichtert es, Chats mit anderen zu teilen. Auf Wunsch kannst du deinen Chat im öffentlichen Verzeichnis deines Homeservers veröffentlichen." "Veröffentlichung von Chats" - "Adressen ermöglichen es, Gruppen und Spaces zu finden und zu betreten. Dadurch wird auch sichergestellt, dass diese problemlos mit anderen geteilt werden können." + "Adressen ermöglichen es, Chats und Spaces zu finden und ihnen beizutreten. Dadurch wird auch sichergestellt, dass diese problemlos mit anderen geteilt werden können." "Sichtbarkeit" "Sicherheit & Datenschutz" diff --git a/features/roomdetails/impl/src/main/res/values-el/translations.xml b/features/roomdetails/impl/src/main/res/values-el/translations.xml index 6350d5de24..8700e6d02e 100644 --- a/features/roomdetails/impl/src/main/res/values-el/translations.xml +++ b/features/roomdetails/impl/src/main/res/values-el/translations.xml @@ -114,6 +114,7 @@ "Αποτυχία ρύθμισης της λειτουργίας, δοκίμασε ξανά." "Ο αρχικός διακομιστής σας δεν υποστηρίζει αυτή την επιλογή σε κρυπτογραφημένες αίθουσες, δεν θα λάβετε ειδοποιήσεις σε αυτή την αίθουσα." "Όλα τα μηνύματα" + "Μόνο για αναφορές και απαντήσεις" "Σε αυτήν την αίθουσα, ειδοποιήστε με για" "Διαχειριστές" "Διαχειριστές και κάτοχοι" diff --git a/features/roomdetails/impl/src/main/res/values-et/translations.xml b/features/roomdetails/impl/src/main/res/values-et/translations.xml index 329ac267bf..f846140773 100644 --- a/features/roomdetails/impl/src/main/res/values-et/translations.xml +++ b/features/roomdetails/impl/src/main/res/values-et/translations.xml @@ -114,6 +114,8 @@ "Seadistuste muutmine ei õnnestunud. Palun proovi uuesti." "Sinu koduserver ei toeta seda võimalust krüptitud jututubades, seega sa ei saa selle jututoa kohta teavitusi." "Kõik sõnumid" + "Mainimiste ja võtmesõnade alusel" + "Summuta" "Selles jututoas teavita mind" "Peakasutajad" "Peakasutajad ja omanikud" diff --git a/features/roomdetails/impl/src/main/res/values-fr/translations.xml b/features/roomdetails/impl/src/main/res/values-fr/translations.xml index 237767c82a..f22b81de46 100644 --- a/features/roomdetails/impl/src/main/res/values-fr/translations.xml +++ b/features/roomdetails/impl/src/main/res/values-fr/translations.xml @@ -6,7 +6,7 @@ "Vous aurez besoin d’une adresse pour le rendre visible dans l’annuaire public." "Modifier l’adresse" "Une erreur s’est produite lors de la mise à jour du paramètre de notification." - "Votre serveur d’accueil ne supporte pas cette option pour les salons chiffrés, vous pourriez ne pas être notifié(e) dans certains salons." + "Votre fournisseur de compte ne supporte pas cette option pour les salons chiffrés, vous pourriez ne pas être notifié(e) dans certains salons." "Sondages" "Administrateurs" "Bannir des participants" diff --git a/features/roomdetails/impl/src/main/res/values-hr/translations.xml b/features/roomdetails/impl/src/main/res/values-hr/translations.xml index fffdc33e40..f5daf33a24 100644 --- a/features/roomdetails/impl/src/main/res/values-hr/translations.xml +++ b/features/roomdetails/impl/src/main/res/values-hr/translations.xml @@ -116,6 +116,9 @@ "Vraćanje zadanog načina rada nije uspjelo, pokušajte ponovno." "Postavljanje načina rada nije uspjelo, pokušajte ponovno." "Vaš matični poslužitelj ne podržava ovu mogućnost u šifriranim sobama; nećete dobiti obavijest u ovoj sobi." + "Sve poruke" + "Samo spominjanja i ključne riječi" + "Isključi zvuk" "U ovoj sobi obavijesti me za" "Administratori" "Administratori i vlasnici" diff --git a/features/roomdetails/impl/src/main/res/values-in/translations.xml b/features/roomdetails/impl/src/main/res/values-in/translations.xml index bcdacb99ea..9629fb0b0e 100644 --- a/features/roomdetails/impl/src/main/res/values-in/translations.xml +++ b/features/roomdetails/impl/src/main/res/values-in/translations.xml @@ -111,7 +111,8 @@ "Gagal mengatur mode, silakan coba lagi." "Homeserver Anda tidak mendukung opsi ini dalam ruangan terenkripsi, Anda tidak akan diberi tahu dalam ruangan ini." "Semua pesan" - "Sebutan dan Kata Kunci saja" + "Disebut dan balasan saja" + "Bisukan" "Di ruangan ini, beri tahu saya tentang" "Admin" "Administrator dan pemilik" diff --git a/features/roomdetails/impl/src/main/res/values-it/translations.xml b/features/roomdetails/impl/src/main/res/values-it/translations.xml index c876567303..d41ed1521e 100644 --- a/features/roomdetails/impl/src/main/res/values-it/translations.xml +++ b/features/roomdetails/impl/src/main/res/values-it/translations.xml @@ -6,7 +6,7 @@ "Per renderlo visibile nell\'elenco pubblico, avrai bisogno di un indirizzo." "Modifica indirizzo" "Si è verificato un errore durante l\'aggiornamento delle impostazioni di notifica." - "Il tuo homeserver non supporta questa opzione nelle stanze crifrate, quindi potresti non ricevere notifiche in alcune stanze." + "Il tuo gestore dell\'account non supporta questa opzione nelle conversazioni cifrate, pertanto potresti non ricevere notifiche in alcune conversazioni." "Sondaggi" "Amministratore" "Escludi membri" @@ -112,8 +112,10 @@ "Si è verificato un errore durante il caricamento delle impostazioni di notifica." "Ripristino della modalità predefinita fallito, riprova." "Impossibile impostare la modalità, riprova." - "Il tuo homeserver non supporta questa opzione nelle stanze cifrate, quindi non riceverai notifiche in questa stanza." + "Il tuo gestore dell\'account non supporta questa opzione nelle conversazioni cifrate, pertanto non riceverai alcuna notifica in questa conversazione." "Tutti i messaggi" + "Solo menzioni e risposte" + "Silenzioso" "In questa stanza, avvisami per" "Amministratori" "Amministratori e proprietari" diff --git a/features/roomdetails/impl/src/main/res/values-ja/translations.xml b/features/roomdetails/impl/src/main/res/values-ja/translations.xml index 830ebd5452..cc8390a1d0 100644 --- a/features/roomdetails/impl/src/main/res/values-ja/translations.xml +++ b/features/roomdetails/impl/src/main/res/values-ja/translations.xml @@ -110,6 +110,9 @@ "デフォルトの復元に失敗しました。再試行してください。" "設定に失敗しました。再試行してください。" "暗号化されたルームでは、この機能にホームサーバーが対応しないため、このルームからの通知を受信できません。" + "すべてのメッセージ" + "メンションと返信のみ" + "ミュート" "このルームでは以下の通知を受け取る" "管理者" "管理者と所有者" diff --git a/features/roomdetails/impl/src/main/res/values-pl/translations.xml b/features/roomdetails/impl/src/main/res/values-pl/translations.xml index 14225bcdf9..0108ab3264 100644 --- a/features/roomdetails/impl/src/main/res/values-pl/translations.xml +++ b/features/roomdetails/impl/src/main/res/values-pl/translations.xml @@ -6,7 +6,7 @@ "Aby pokój był widoczny w katalogu pokoi publicznych, potrzebny jest adres pokoju." "Edytuj adres" "Wystąpił błąd podczas aktualizacji ustawienia powiadomień." - "Twój serwer domowy nie wspiera tej opcji w pokojach szyfrowanych, możesz nie otrzymać powiadomień z niektórych pokoi." + "Twój dostawca konta nie wspiera tej opcji w pokojach szyfrowanych, możesz nie otrzymać powiadomień z niektórych pokoi." "Ankiety" "Administrator" "Banowanie osób" @@ -115,7 +115,7 @@ "Wystąpił błąd podczas ładowania ustawień powiadomień." "Nie udało się przywrócić trybu domyślnego, spróbuj ponownie." "Nie udało się ustawić trybu, spróbuj ponownie." - "Twój serwer domowy nie wspiera tej opcji w pokojach szyfrowanych, możesz nie otrzymać powiadomień z tego pokoju." + "Twój dostawca konta nie wspiera tej opcji w pokojach szyfrowanych, możesz nie otrzymać powiadomień z tego pokoju." "Wszystkie wiadomości" "Tylko wzmianki i słowa kluczowe" "Wycisz" diff --git a/features/roomdetails/impl/src/main/res/values-uk/translations.xml b/features/roomdetails/impl/src/main/res/values-uk/translations.xml index edc1fab508..6b8a235741 100644 --- a/features/roomdetails/impl/src/main/res/values-uk/translations.xml +++ b/features/roomdetails/impl/src/main/res/values-uk/translations.xml @@ -6,7 +6,7 @@ "Вам знадобиться адреса кімнати, щоб зробити її видимою в каталозі." "Змінити адресу" "Під час оновлення налаштувань сповіщень сталася помилка." - "Ваш домашній сервер не підтримує цю опцію в зашифрованих кімнатах, ви можете не отримати сповіщення в деяких кімнатах." + "Постачальник вашого облікового запису не підтримує цю опцію в зашифрованих бесідах, тому ви можете не отримувати сповіщення в деяких бесідах." "Опитування" "Адміністратор" "Заблоковувати людей" @@ -115,9 +115,9 @@ "Під час завантаження налаштувань сповіщень сталася помилка." "Не вдалося відновити типовий режим, спробуйте ще раз." "Не вдалося встановити режим, спробуйте ще раз." - "Ваш домашній сервер не підтримує цю опцію в зашифрованих кімнатах, ви не отримаєте сповіщення в цій кімнаті." + "Постачальник вашого облікового запису не підтримує цю опцію в зашифрованих бесідах, ви не отримуватимете сповіщення в цій бесіді." "Всі повідомлення" - "Лише згадки та ключові слова" + "Лише згадки та відповіді" "Вимкнути звук" "У цій кімнаті сповіщати мене про" "Адміністратори" diff --git a/features/roomdetails/impl/src/main/res/values-zh-rTW/translations.xml b/features/roomdetails/impl/src/main/res/values-zh-rTW/translations.xml index 0e516d0c29..c466688db1 100644 --- a/features/roomdetails/impl/src/main/res/values-zh-rTW/translations.xml +++ b/features/roomdetails/impl/src/main/res/values-zh-rTW/translations.xml @@ -111,7 +111,8 @@ "無法設定模式,請再試一次。" "您的家伺服器在加密聊天室中不支援此選項,您將不會收到此聊天室的通知。" "所有訊息" - "僅限提及與關鍵字" + "僅提及與回覆" + "靜音" "在此聊天適中,通知我" "管理員" "管理員與擁有者" diff --git a/features/roomdetails/impl/src/main/res/values-zh/translations.xml b/features/roomdetails/impl/src/main/res/values-zh/translations.xml index a7592c38c7..1d5074530f 100644 --- a/features/roomdetails/impl/src/main/res/values-zh/translations.xml +++ b/features/roomdetails/impl/src/main/res/values-zh/translations.xml @@ -6,7 +6,7 @@ "你需要一个地址才能使其在公共目录中可见。" "编辑地址" "更新通知设置时出错。" - "主服务器不支持在加密房间中的此选项,因此在某些房间你可能无法收到通知。" + "你的账户提供者不支持在加密房间中的此选项,因此在某些聊天中你可能无法收到通知。" "投票" "管理员" "封禁人员" @@ -109,9 +109,9 @@ "加载通知设置时出错。" "恢复默认模式失败,请重试。" "设置模式失败,请重试。" - "主服务器不支持在加密房间中的此选项,因此在此房间你可能无法收到通知。" + "你的账户提供者不支持在加密房间中的此选项,因此在此聊天中你可能无法收到通知。" "所有消息" - "仅提及与关键词" + "仅提及与回复" "静默" "在此房间通知我以下类型" "管理员" @@ -150,7 +150,7 @@ "选择哪些无需邀请即可加入此房间的空间成员。%1$s" "管理空间" "仅限受邀人员加入。" - "仅限受邀者" + "仅限邀请" "访问权限" "任何位于已授权空间的成员均可加入。" "%1$s 中的任何人都可加入。" diff --git a/features/roomdetails/impl/src/main/res/values/localazy.xml b/features/roomdetails/impl/src/main/res/values/localazy.xml index 05bdb50d6e..03044141f8 100644 --- a/features/roomdetails/impl/src/main/res/values/localazy.xml +++ b/features/roomdetails/impl/src/main/res/values/localazy.xml @@ -6,7 +6,7 @@ "You’ll need an address in order to make it visible in the public directory." "Edit address" "An error occurred while updating the notification setting." - "Your homeserver does not support this option in encrypted rooms, you may not get notified in some rooms." + "Your account provider does not support this option in encrypted chats, you may not get notified in some chats." "Polls" "Admin" "Ban people" @@ -112,7 +112,7 @@ "An error occurred while loading notification settings." "Failed restoring the default mode, please try again." "Failed setting the mode, please try again." - "Your homeserver does not support this option in encrypted rooms, you won\'t get notified in this room." + "Your account provider does not support this option in encrypted chats, you won\'t get notified in this chat." "All messages" "Mentions and replies only" "Mute" diff --git a/features/roommembermoderation/impl/src/main/res/values-de/translations.xml b/features/roommembermoderation/impl/src/main/res/values-de/translations.xml index 89af01f0b7..334bb73b69 100644 --- a/features/roommembermoderation/impl/src/main/res/values-de/translations.xml +++ b/features/roommembermoderation/impl/src/main/res/values-de/translations.xml @@ -2,21 +2,21 @@ "Mitglied entfernen und sperren" "Sperren" - "Sie können diesem Chat auch auf Einladung nicht erneut beitreten." + "Diese Person kann dem Chat auch auf Einladung nicht erneut beitreten." "Möchtest du diesen Nutzer wirklich sperren?" "Mitglieder können diesem Space auch mit Einladung nicht mehr beitreten, aber sie bleiben weiterhin Mitglied in allen Chats und untergeordneten Spaces." - "%1$s wird gesperrt." + "%1$s wird gesperrt" "Entfernen" "Die Nutzer können dem Chat wieder beitreten, wenn sie eingeladen werden." "Möchtest du dieses Mitglied wirklich entfernen?" - "Sie können diesem Space wieder beitreten, wenn sie eingeladen werden. Außerdem behalten sie ihre Mitgliedschaft in allen Chats und untergeordneten Spaces." + "Diese Person kann dem Space wieder beitreten, wenn sie eingeladen wird. Ihre Mitgliedschaft in allen Chats und untergeordneten Spaces bleibt bestehen." "Nutzerprofil anzeigen" "Mitglied entfernen" "Mitglied entfernen und für die Zukunft sperren?" "%1$s wird entfernt." "Sperre für diesen Chat aufheben" "Sperre aufheben" - "Sie können dann diesem Chat auf Einladung wieder beitreten." + "Diese Person kann dem Chat auch auf Einladung nicht erneut beitreten" "Möchtest du die Sperre dieses Mitglieds wirklich aufheben?" - "%1$s wird entsperrt." + "Die Sperre für %1$s wird aufgehoben" diff --git a/features/securebackup/impl/src/main/res/values-de/translations.xml b/features/securebackup/impl/src/main/res/values-de/translations.xml index 7fbcc1e4b4..6b4dd07cce 100644 --- a/features/securebackup/impl/src/main/res/values-de/translations.xml +++ b/features/securebackup/impl/src/main/res/values-de/translations.xml @@ -1,38 +1,50 @@ - "Backup deaktivieren" + "Schlüsselspeicher löschen" "Backup aktivieren" "Dadurch kannst du deinen Chatverlauf auf allen neuen Geräten einsehen. Er ist außerdem für die Sicherung von Chats und deiner digitalen Identität erforderlich. %1$s." "Schlüsselspeicher" - "Die Schlüsselspeicherung muss aktiviert sein, damit deine Chats gesichert werden können." + "Der Schlüsselspeicher muss aktiviert sein, damit deine Chats gesichert werden können." "Schlüssel von diesem Gerät hochladen" - "Schlüsselspeicherung zulassen" + "Schlüsselspeicher zulassen" "Wiederherstellungsschlüssel ändern" "Von deinen Chats wird automatisch ein Ende-zu-Ende-verschlüsseltes Backup erstellt. Wenn du den Zugriff auf alle deine Geräte verlierst, brauchst du deinen Wiederherstellungsschlüssel, um dieses Backup wiederherzustellen und deine digitale Identität zu behalten." "Wiederherstellungsschlüssel eingeben" - "Dein Schlüssel ist derzeit nicht synchronisiert." - "Wiederherstellungsschlüssel einrichten" + "Dein Schlüsselspeicher ist derzeit nicht synchronisiert." + "Wiederherstellungsschlüssel erstellen" "Von deinen Chats wird automatisch ein Ende-zu-Ende-verschlüsseltes Backup erstellt. Wenn du den Zugriff auf alle deine Geräte verlierst, brauchst du deinen Wiederherstellungsschlüssel, um dieses Backup wiederherzustellen und deine digitale Identität zu behalten." - - "Öffne " - "%1$s" - " auf einem " - "Desktop-Gerät" - + "Öffne %1$s auf einem Desktop-Gerät" "Melde dich erneut bei deinem Konto an" "Bei der Aufforderung, dein Gerät zu verifizieren, wähle %1$s" "Alles zurücksetzen" "Folge den Anweisungen, um einen neuen Wiederherstellungsschlüssel zu erstellen" "Verwahre deinen neuen Wiederherstellungsschlüssel in einem Passwortmanager oder einer verschlüsselten Datei" - - "Erstelle einen neuen " - "Wiederherstellungsschlüssel" - " mit einem anderen Gerät" - + "Setze die Verschlüsselung deines Kontos mit einem anderen Gerät zurück" + "Der von dir eingegebene Wiederherstellungsschlüssel stimmt nicht überein" + "Einrichtung abschließen" + "Gib deinen Wiederherstellungsschlüssel noch einmal ein." + "Bestätige deinen Wiederherstellungsschlüssel" + + "Mindestens %1$d Zeichen. Verwende nicht dein Konto-Passwort" + "Mindestens %1$d Zeichen. Verwende nicht dein Konto-Passwort" + + "Stärke" + "Stärke der Passphrase: %1$s" + "Mittel" + "Stark" + "Sehr stark" + "Sehr schwach" + "Schwach" + "Wähle einen Wiederherstellungsschlüssel, den du dir merken kannst." + "Gib einen Wiederherstellungsschlüssel ein" + "Anforderungen an den Wiederherstellungsschlüssel werden geladen" + "Um deinen Wiederherstellungsschlüssel zu ändern, gehe zu Einstellungen → Verschlüsselung → Backup" + "Mit deinem Wiederherstellungsschlüssel kannst du neue Geräte bestätigen oder deine verschlüsselten Chats wiederherstellen, falls du den Zugriff auf alle deine Geräte verlierst." + "Dein Backup ist nun vollständig eingerichtet" "Zurücksetzen fortsetzen" "Deine Kontodaten, Kontakte, Einstellungen und die Liste der Chats bleiben erhalten" - "Du verlierst alle bisherigen Nachrichten, wenn sie ausschließlich auf dem Server gespeichert sein sollten." - "Du musst alle deine bestehenden Geräte und Kontakte erneut verifizieren." + "Du verlierst alle bisherigen Nachrichten, wenn sie ausschließlich auf dem Server gespeichert sein sollten" + "Du musst alle deine bestehenden Geräte und Kontakte erneut verifizieren" "Setze deine digitale Identität nur dann zurück, wenn du keinen Zugriff auf ein anderes verifiziertes Gerät hast und deinen Wiederherstellungsschlüssel verloren hast." "Bestätigung nicht möglich? Setze deine digitale Identität zurück." "Löschen" @@ -41,7 +53,7 @@ "Durch das Löschen des Schlüsselspeichers werden deine digitale Identität und deine Nachrichtenschlüssel vom Server entfernt und die folgenden Sicherheitsfunktionen deaktiviert:" "Kein Nachrichtenverlauf für verschlüsselte Nachrichten auf neuen Geräten" "Kein Zugriff auf verschlüsselten Nachrichten, wenn du überall von %1$s abgemeldet bist" - "Möchtest du die Speicherung der Schlüssel wirklich deaktivieren und entfernen?" + "Schlüsselspeicher deaktivieren und löschen?" "Erhalte einen neuen Wiederherstellungsschlüssel wenn du deinen bisherigen verloren hast. Danach funktioniert dein alter Schlüssel nicht mehr." "Wiederherstellungsschlüssel erstellen" "Teile das mit niemandem!" @@ -51,15 +63,15 @@ "Sorge dafür, dass niemand diesen Bildschirm sehen kann!" "Bitte versuche erneut, den Zugriff auf deinen Schlüsselspeicher zu bestätigen." "Falscher Wiederherstellungsschlüssel" - "Dies funktioniert auch mit einem Sicherheitsschlüssel oder Sicherheitsphrase." - "Eingeben…" + "Dies funktioniert auch mit einem Sicherheitsschlüssel oder einer Sicherheitsphrase." + "Eingeben …" "Wiederherstellungschlüssel vergessen?" "Wiederherstellungsschlüssel bestätigt" "Gib deinen Wiederherstellungsschlüssel ein" "Wiederherstellungsschlüssel kopiert" - "Generieren…" + "Wird generiert …" "Wiederherstellungsschlüssel speichern" - "Bewahre den Wiederherstellungsschlüssel an einer sicheren Stelle auf, wie zum Beispiel in einem Passwort-Manager, in einer verschlüsselten Datei oder in einem Safe. " + "Bewahre den Wiederherstellungsschlüssel an einer sicheren Stelle auf, wie zum Beispiel in einem Passwort-Manager, in einer verschlüsselten Datei oder in einem Safe." "Tippe, um den Wiederherstellungsschlüssel zu kopieren" "Speichere deinen Wiederherstellungsschlüssel" "Nach diesem Schritt kannst du nicht mehr auf deinen neuen Wiederherstellungsschlüssel zugreifen." @@ -68,12 +80,12 @@ "Wiederherstellungsschlüssel erstellen" "Teile das mit niemandem!" "Einrichtung der Wiederherstellung erfolgreich" - "Wiederherstellungsschlüssel einrichten" + "Wiederherstellungsschlüssel erstellen" "Ja, zurücksetzen" "Das Zurücksetzen kann nicht rückgängig gemacht werden." "Bist du sicher, dass du deine digitale Identität zurücksetzen möchtest?" "Es ist ein unbekannter Fehler aufgetreten. Bitte überprüfe das Passwort deines Kontos und versuche es erneut." - "Eingeben…" + "Eingeben …" "Bestätige, dass du deine digitale Identität zurücksetzen möchtest." "Gib dein Passwort ein, um fortzufahren" diff --git a/features/securebackup/impl/src/main/res/values-in/translations.xml b/features/securebackup/impl/src/main/res/values-in/translations.xml index 3c810938d7..c6ff89b911 100644 --- a/features/securebackup/impl/src/main/res/values-in/translations.xml +++ b/features/securebackup/impl/src/main/res/values-in/translations.xml @@ -20,6 +20,8 @@ "Ikuti petunjuk untuk membuat kunci pemulihan baru" "Simpan kunci pemulihan baru Anda dalam pengelola kata sandi atau catatan terenkripsi" "Atur ulang enkripsi untuk akun Anda menggunakan perangkat lain" + "Masukkan kunci pemulihan Anda sekali lagi." + "Pilih kunci pemulihan yang dapat Anda hafal." "Lanjutkan pengaturan ulang" "Detail akun, kontak, preferensi, dan daftar obrolan Anda akan disimpan" "Anda akan kehilangan riwayat pesan yang hanya disimpan di server" diff --git a/features/securebackup/impl/src/main/res/values-pl/translations.xml b/features/securebackup/impl/src/main/res/values-pl/translations.xml index 491d30d8c1..d115314038 100644 --- a/features/securebackup/impl/src/main/res/values-pl/translations.xml +++ b/features/securebackup/impl/src/main/res/values-pl/translations.xml @@ -73,7 +73,7 @@ "Generuję…" "Zapisz klucz przywracania" "Zapisz klucz przywracania w bezpiecznym miejscu, np. w menedżerze haseł, notatce szyfrowanej lub sejfie." - "Stuknij, by skopiować klucz przywracania" + "Dotknij, by skopiować klucz przywracania" "Zapisz klucz przywracania" "Po tym kroku nie będziesz mieć dostępu do nowego klucza przywracania." "Czy zapisałeś swój klucz przywracania?" diff --git a/features/securebackup/impl/src/main/res/values/localazy.xml b/features/securebackup/impl/src/main/res/values/localazy.xml index 5acae5f07f..851a2d8185 100644 --- a/features/securebackup/impl/src/main/res/values/localazy.xml +++ b/features/securebackup/impl/src/main/res/values/localazy.xml @@ -13,7 +13,7 @@ "Your key storage is currently out of sync." "Get recovery key" "Your chats are automatically backed up with end-to-end encryption. To restore this backup and retain your digital identity when you lose access to all your devices, you will need your recovery key." - "Open %1$s in a desktop device" + "Open %1$s on a desktop device" "Sign into your account again" "When asked to verify your device, select %1$s" "“Reset all”" diff --git a/features/securityandprivacy/impl/src/main/res/values-de/translations.xml b/features/securityandprivacy/impl/src/main/res/values-de/translations.xml index c60efc009c..64da81c2a6 100644 --- a/features/securityandprivacy/impl/src/main/res/values-de/translations.xml +++ b/features/securityandprivacy/impl/src/main/res/values-de/translations.xml @@ -10,7 +10,7 @@ "Chat-Adresse hinzufügen" "Jedes Mitglied eines autorisierten Space kann beitreten, aber alle anderen müssen einen Beitritt anfragen." "Zugang nur auf Anfrage." - "Bitte um Beitritt" + "Beitritt anfragen" "Jeder in %1$s kann beitreten, aber alle anderen müssen den Beitritt anfragen." "Ja, Verschlüsselung aktivieren" "Einmal angeschaltet kann die Verschlüsselung für einen Chat nicht mehr deaktiviert werden. Der Nachrichtenverlauf ist für Mitglieder nur sichtbar, seit sie eingeladen wurden oder dem Chat beigetreten sind. @@ -20,17 +20,17 @@ Wir empfehlen keine Verschlüsselung für Chats zu aktivieren, die jeder finden "Einmal angeschaltet kann die Verschlüsselung nicht mehr deaktiviert werden." "Verschlüsselung" "Ende-zu-Ende-Verschlüsselung aktivieren" - "Jeder kann beitreten." + "Alle können beitreten." "Jeder" "Wähle aus, welche Spaces ihren Mitgliedern ermöglichen sollen, dieser Gruppe ohne Einladung beitreten zu können. %1$s" "Spaces verwalten" - "Nur eingeladene Personen können beitreten" - "Nur auf Einladung" + "Nur eingeladene Personen können beitreten." + "Nur mit Einladung" "Zugang" "Jeder in autorisierten Spaces kann beitreten." "Jeder in %1$s kann beitreten." "Space Mitglieder" - "Spaces werden zur Zeit nicht unterstützt." + "Spaces werden zur Zeit nicht unterstützt" "Du benötigst eine Chat-Adresse, um den Chat im öffentlichen Verzeichnis sichtbar zu machen." "Adresse" "Erlaube das Auffinden dieses Chats durch Suche im öffentlichen Verzeichnis von %1$s" @@ -44,7 +44,7 @@ Wir empfehlen keine Verschlüsselung für Chats zu aktivieren, die jeder finden "Chat-Adressen machen es möglich, Chats zu finden und ihnen beizutreten. Dies erleichtert es, Chats mit anderen zu teilen. Auf Wunsch kannst du deinen Chat im öffentlichen Verzeichnis deines Homeservers veröffentlichen." "Veröffentlichung von Chats" - "Adressen ermöglichen es, Gruppen und Spaces zu finden und zu betreten. Dadurch wird auch sichergestellt, dass diese problemlos mit anderen geteilt werden können." + "Adressen ermöglichen es, Chats und Spaces zu finden und ihnen beizutreten. Dadurch wird auch sichergestellt, dass diese problemlos mit anderen geteilt werden können." "Sichtbarkeit" "Sicherheit & Datenschutz" diff --git a/features/securityandprivacy/impl/src/main/res/values-zh/translations.xml b/features/securityandprivacy/impl/src/main/res/values-zh/translations.xml index 09a22f06b3..ac6ee864b2 100644 --- a/features/securityandprivacy/impl/src/main/res/values-zh/translations.xml +++ b/features/securityandprivacy/impl/src/main/res/values-zh/translations.xml @@ -25,7 +25,7 @@ "选择哪些无需邀请即可加入此房间的空间成员。%1$s" "管理空间" "仅限受邀人员加入。" - "仅限受邀者" + "仅限邀请" "访问权限" "任何位于已授权空间的成员均可加入。" "%1$s 中的任何人都可加入。" diff --git a/features/space/impl/src/main/res/values-de/translations.xml b/features/space/impl/src/main/res/values-de/translations.xml index 6dee82123f..c8d1a95753 100644 --- a/features/space/impl/src/main/res/values-de/translations.xml +++ b/features/space/impl/src/main/res/values-de/translations.xml @@ -6,18 +6,18 @@ "%1$d Chat und Space verlassen" "%1$d Chats und Space verlassen" - "Dadurch wirst du auch aus allen Chats in diesem Space entfernt." - "Du musst einen anderen Admin für diesen Space zuweisen, bevor du ihn verlassen kannst." + "Wähle die Chats aus, die du verlassen möchtest und in denen du nicht die einzige Administration bist:" + "Du musst eine andere Administration für diesen Space zuweisen, bevor du ihn verlassen kannst." "Du bist der einzige Eigentümer von %1$s. Du musst die Eigentumsrechte an jemand anderen übertragen, bevor du den Space verlässt." - "Du wirst aus den folgenden Chats nicht entfernt, weil du der einzige Admin bist:" + "Du wirst aus den folgenden Chats nicht entfernt, weil du die einzige Administration bist:" "%1$s verlassen?" "Du bist der einzige Administrator für %1$s" "Eigentumsrechte übertragen" "Chat" - "Das Hinzufügen eines Chats hat keinen Einfluss auf die Beitrittsregeln. Um die Regeln zu ändern, gehe zu \"Raum Info\" und dann zu \"Datenschutz und Sicherheit\"" + "Das Hinzufügen eines Chats hat keinen Einfluss auf den Zugang. Um den Zugang zu ändern, gehe zu „Informationen“ > „Sicherheit & Datenschutz“." "Füge deinen ersten Chat hinzu" "Mitglieder anzeigen" - "Das Entfernen eines Chats hat keinen Einfluss auf die Beitrittsregeln. Um die Regeln zu ändern, gehe zu \"Raum Info\" und dann zu \"Datenschutz und Sicherheit\"" + "Das Entfernen eines Chats hat keinen Einfluss auf den Zugang. Um den Zugang zu ändern, gehe zu „Informationen“ > „Sicherheit & Datenschutz“." "%1$d chat aus %2$s entfernen" "%1$d chats aus %2$s entfernen" diff --git a/features/space/impl/src/main/res/values-fr/translations.xml b/features/space/impl/src/main/res/values-fr/translations.xml index dc3f298115..a82a470c18 100644 --- a/features/space/impl/src/main/res/values-fr/translations.xml +++ b/features/space/impl/src/main/res/values-fr/translations.xml @@ -17,7 +17,7 @@ "Ajouter un salon ne changera pas l’accès au salon. Pour modifier l’accès, aller dans les paramètres du salon puis dans Sécurité & confidentialité." "Ajoutez votre premier salon" "Voir les membres" - "Supprimer un salon n’affectera pas ses paramètres d’accès. Pour modifier l’accès, aller dans les settings du salon puis \"Sécurité & confidentialité\"." + "Supprimer un salon n’affectera pas ses paramètres d’accès. Pour modifier l’accès, aller dans les paramètres du salon puis \"Sécurité & confidentialité\"." "Retirer %1$d salon de %2$s" "Retirer %1$d salons de %2$s" diff --git a/features/space/impl/src/main/res/values-it/translations.xml b/features/space/impl/src/main/res/values-it/translations.xml index 20859ee70f..4913dd8c9d 100644 --- a/features/space/impl/src/main/res/values-it/translations.xml +++ b/features/space/impl/src/main/res/values-it/translations.xml @@ -17,7 +17,7 @@ "L\'aggiunta di una stanza non influirà sull\'accesso alla stessa. Per modificare l\'accesso, vai su Impostazioni stanza > Sicurezza & privacy." "Aggiungi la tua prima stanza" "Visualizza membri" - "La rimozione di una stanza non influirà sull\'accesso alla stessa. Per modificare l\'accesso, vai su Informazioni sulla stanza > Sicurezza & privacy" + "La rimozione di una stanza non influirà sull\'accesso alla stessa. Per modificare l\'accesso, vai su Informazioni sulla stanza > Sicurezza e privacy." "Rimuovi %1$d stanza da %2$s" "Rimuovi %1$d stanze da %2$s" diff --git a/features/space/impl/src/main/res/values-pl/translations.xml b/features/space/impl/src/main/res/values-pl/translations.xml index 9c3097b75f..968db7f79e 100644 --- a/features/space/impl/src/main/res/values-pl/translations.xml +++ b/features/space/impl/src/main/res/values-pl/translations.xml @@ -18,7 +18,7 @@ "Dodanie pokoju nie wpłynie na dostęp do niego. Aby zmienić ustawienia dostępu, przejdź do Ustawienia pokoju > Bezpieczeństwo i prywatność." "Dodaj swój pierwszy pokój" "Zobacz członków" - "Usunięcie pokoju nie wpłynie na dostęp do niego. Aby zmienić ustawienia dostępu, przejdź do Ustawienia pokoju > Bezpieczeństwo i prywatność." + "Usunięcie pokoju nie wpłynie na dostęp do niego. Aby zmienić ustawienia dostępu, przejdź do Informacje pokoju > Bezpieczeństwo i prywatność." "Usuń %1$d pokój z %2$s" "Usuń %1$d pokoje z %2$s" diff --git a/features/space/impl/src/main/res/values-uk/translations.xml b/features/space/impl/src/main/res/values-uk/translations.xml index df4b4fb922..32a6ecafc0 100644 --- a/features/space/impl/src/main/res/values-uk/translations.xml +++ b/features/space/impl/src/main/res/values-uk/translations.xml @@ -18,7 +18,7 @@ "Додавання кімнати не вплине на доступ до неї. Щоб змінити доступ, перейдіть до «Налаштування кімнати» > «Безпека та конфіденційність»." "Додайте свою першу кімнату" "Переглянути учасників" - "Видалення кімнати не вплине на доступ до неї. Щоб змінити доступ, перейдіть до розділу «Налаштування кімнати» > «Безпека та конфіденційність»." + "Вилучення кімнати не вплине на доступ до неї. Щоб змінити доступ, перейдіть до розділу Відомості про кімнату > Безпека та приватність." "Видалити %1$d кімнату з %2$s" "Видалити %1$d кімнати з %2$s" diff --git a/features/space/impl/src/main/res/values-zh/translations.xml b/features/space/impl/src/main/res/values-zh/translations.xml index bf5c298590..e72b81559e 100644 --- a/features/space/impl/src/main/res/values-zh/translations.xml +++ b/features/space/impl/src/main/res/values-zh/translations.xml @@ -16,7 +16,7 @@ "添加房间不会影响其访问权限。如需更改访问权限,请前往“房间设置” > “安全与隐私”。" "添加第一个房间" "查看成员" - "移除房间不会影响其访问权限。要更改访问权限,请转到“房间信息”→“隐私与安全”。" + "移除房间不会影响其访问权限。要更改访问权限,请转到“房间信息”→“安全与隐私”。" "移除 %2$s 个房间,共 %1$d 个" diff --git a/features/space/impl/src/main/res/values/localazy.xml b/features/space/impl/src/main/res/values/localazy.xml index 414f6c5ccf..028f42ab52 100644 --- a/features/space/impl/src/main/res/values/localazy.xml +++ b/features/space/impl/src/main/res/values/localazy.xml @@ -7,17 +7,17 @@ "Leave %1$d rooms and space" "Select the rooms you’d like to leave which you\'re not the only administrator for:" - "You need to assign another admin for this space before you can leave." + "You need to assign another administrator for this space before you can leave." "You are the only owner of %1$s. You need to transfer ownership to someone else before you leave." "You will not be removed from the following room(s) because you\'re the only administrator:" "Leave %1$s?" - "You are the only admin for %1$s" + "You are the only administrator for %1$s" "Transfer ownership" "Room" "Adding a room will not affect the room access. To change the access go to Room settings > Security & privacy." "Add your first room" "View members" - "Removing a room will not affect the room access. To change the access go to Room info > Privacy & security." + "Removing a room will not affect the room access. To change the access go to Room info > Security & privacy." "Remove %1$d room from %2$s" "Remove %1$d rooms from %2$s" diff --git a/features/startchat/impl/src/main/res/values-de/translations.xml b/features/startchat/impl/src/main/res/values-de/translations.xml index 61137aea5b..660e81fb8e 100644 --- a/features/startchat/impl/src/main/res/values-de/translations.xml +++ b/features/startchat/impl/src/main/res/values-de/translations.xml @@ -5,8 +5,8 @@ "Beim Versuch, einen Chat zu starten, ist ein Fehler aufgetreten" "Chat per Adresse beitreten" "Keine gültige Adresse" - "Chatraum Adresse eingeben …" + "Chat Adresse eingeben …" "Passender Chat gefunden" "Chat nicht gefunden" - "z. B. #room -name:matrix.org" + "z. B. #room-name:matrix.org" diff --git a/features/userprofile/shared/src/main/res/values-de/translations.xml b/features/userprofile/shared/src/main/res/values-de/translations.xml index b3b7f1f7c2..7cd4c55f8a 100644 --- a/features/userprofile/shared/src/main/res/values-de/translations.xml +++ b/features/userprofile/shared/src/main/res/values-de/translations.xml @@ -1,13 +1,13 @@ "Blockieren" - "Blockierte Nutzer können Ihnen keine Nachrichten senden und alle ihre Nachrichten werden ausgeblendet. Die Blockierung kann jederzeit aufgehoben werden." + "Blockierte Nutzer können dir keine Nachrichten senden und alle ihre Nachrichten werden ausgeblendet. Du kannst die Blockierung jederzeit wieder aufheben." "Nutzer blockieren" "Blockierung aufheben" "Der Nutzer kann dir wieder Nachrichten senden & alle Nachrichten des Nutzers werden wieder angezeigt." "Blockierung aufheben" "Blockieren" - "Blockierte Nutzer können Ihnen keine Nachrichten senden und alle ihre Nachrichten werden ausgeblendet. Die Blockierung kann jederzeit aufgehoben werden." + "Blockierte Nutzer können dir keine Nachrichten senden und alle ihre Nachrichten werden ausgeblendet. Du kannst die Blockierung jederzeit wieder aufheben." "Nutzer blockieren" "Profil" "Blockierung aufheben" diff --git a/libraries/eventformatter/impl/src/main/res/values-de/translations.xml b/libraries/eventformatter/impl/src/main/res/values-de/translations.xml index 75e123cae9..6803d0e0a9 100644 --- a/libraries/eventformatter/impl/src/main/res/values-de/translations.xml +++ b/libraries/eventformatter/impl/src/main/res/values-de/translations.xml @@ -49,9 +49,9 @@ "Du hast keine Änderungen vorgenommen" "%1$s hat die fixierten Nachrichten geändert" "Du hast die fixierten Nachrichten geändert" - "%1$s fixierte eine Nachricht" + "%1$s hat eine Nachricht fixiert" "Du hast eine Nachricht fixiert" - "%1$s löste eine Nachricht" + "%1$s hat eine Nachricht gelöst" "Du hast eine Nachricht gelöst" "%1$s lehnte die Einladung ab" "Du hast die Einladung abgelehnt" diff --git a/libraries/eventformatter/impl/src/main/res/values-zh/translations.xml b/libraries/eventformatter/impl/src/main/res/values-zh/translations.xml index f7e5d7d7f2..e3e3f9a00c 100644 --- a/libraries/eventformatter/impl/src/main/res/values-zh/translations.xml +++ b/libraries/eventformatter/impl/src/main/res/values-zh/translations.xml @@ -49,8 +49,8 @@ "你未产生任何更改" "%1$s 更改了已置顶的消息" "你更改了已置顶的消息" - "%1$s 置顶了 1 个消息" - "你已置顶了 1 个消息" + "%1$s 已置顶 1 个消息" + "你已置顶 1 个消息" "%1$s 取消置顶了 1 个消息" "你取消置顶了 1 个消息" "%1$s 拒绝了邀请" diff --git a/libraries/mediaviewer/impl/src/main/res/values-de/translations.xml b/libraries/mediaviewer/impl/src/main/res/values-de/translations.xml index ab3634e777..e4a36ef836 100644 --- a/libraries/mediaviewer/impl/src/main/res/values-de/translations.xml +++ b/libraries/mediaviewer/impl/src/main/res/values-de/translations.xml @@ -16,6 +16,7 @@ "Dateiname" "Keine weiteren Dateien zum Anzeigen" "Keine weiteren Medien mehr zum Anzeigen" + "Datei-Info" "Hochgeladen von" "Hochgeladen am" diff --git a/libraries/push/impl/src/main/res/values-de/translations.xml b/libraries/push/impl/src/main/res/values-de/translations.xml index 60e03373f1..ed75644c56 100644 --- a/libraries/push/impl/src/main/res/values-de/translations.xml +++ b/libraries/push/impl/src/main/res/values-de/translations.xml @@ -1,7 +1,7 @@ "Anruf" - "Auf Ereignisse achten" + "Warten auf Events" "Laute Benachrichtigungen" "Klingelnde Anrufe" "Stumme Benachrichtigungen" @@ -19,9 +19,13 @@ "Du hast %d neue Nachricht." "Du hast %d neue Nachrichten." + + "Hat %1$d Anhang geteilt" + "Hat %1$d Anhänge geteilt" + "📞 Eingehender Anruf" "Eingehender Anruf" - "** Fehler beim Senden - bitte Chat öffnen" + "** Fehler beim Senden – bitte Chat öffnen" "Beitreten" "Ablehnen" @@ -30,7 +34,9 @@ "Du wurdest zu einem Chat eingeladen" "%1$s hat dich zum Chatten eingeladen" - "Hat Dich erwähnt: %1$s" + "Hat um Beitritt gebeten" + "Hat begonnen, den Live-Standort zu teilen" + "Hat dich erwähnt: %1$s" "Neue Nachrichten" "%d neue Nachricht" @@ -39,13 +45,13 @@ "Reagiert mit %1$s" "Als gelesen markieren" "Schnelle Antwort" - "Du wurdest eingeladen, den Chat zu betreten" + "Du wurdest eingeladen, dem Chat beizutreten" "%1$s hat dich eingeladen, dem Chat beizutreten" "Ich" - "%1$s hat Dich erwähnt oder geantwortet" + "%1$s hat dich erwähnt oder geantwortet" "Einladung zum Space" "%1$s hat dich eingeladen, dem Space beizutreten" - "Du siehst dir die Benachrichtigung an! Klicke hier!" + "Du siehst dir die Benachrichtigung an! Tippe hier!" "Thread in %1$s" "%1$s: %2$s" "%1$s: %2$s %3$s" @@ -63,7 +69,7 @@ "Hintergrundsynchronisation" "Google-Dienste" "Keine gültigen Google Play-Dienste gefunden. Benachrichtigungen funktionieren möglicherweise nicht richtig." - "Überprüfen von gesperrten Nutzern" + "Gesperrte Nutzer werden überprüft" "Gesperrte Nutzer ansehen" "Keine Nutzer sind gesperrt." @@ -82,7 +88,7 @@ "Keine Unterstützung für Push-Dienst gefunden." "%1$d Push-Dienst gefunden: %2$s" - "%1$d Push-Dienst gefunden: %2$s" + "%1$d Push-Dienste gefunden: %2$s" "Die Anwendung bietet Unterstützung für: %1$s" "Unterstützung für Push-Dienst" @@ -91,12 +97,13 @@ "Die Benachrichtigung kann nicht angezeigt werden." "Die Benachrichtigung wurde angeklickt!" "Benachrichtigung anzeigen" - "Bitte klicke auf die Benachrichtigung, um den Test fortzusetzen." + "Bitte tippe auf die Benachrichtigung, um den Test fortzusetzen." "Stelle sicher, dass die App Push-Benachrichtigungen empfängt." "Fehler: Der Pusher hat die Anfrage abgelehnt." "Fehler:%1$s." "Fehler: Push kann nicht getestet werden." "Fehler: Timeout beim Warten auf Push." + "Fehler: Das Push-Gateway drosselt die Benachrichtigungsrate dieses Geräts, daher sind Benachrichtigungen nicht zuverlässig. Bitte richte ein anderes Push-Gateway ein." "Push-Loop-Back Dauer: %1$d ms." "Teste Push-Loop-Back" diff --git a/libraries/push/impl/src/main/res/values-el/translations.xml b/libraries/push/impl/src/main/res/values-el/translations.xml index 612e585301..388b999921 100644 --- a/libraries/push/impl/src/main/res/values-el/translations.xml +++ b/libraries/push/impl/src/main/res/values-el/translations.xml @@ -45,7 +45,7 @@ "Ο χρήστης %1$s αναφέρθηκε ή απάντησε" "Σας προσκάλεσε να συμμετάσχετε στον χώρο" "%1$s σας προσκάλεσε να συμμετάσχετε στον χώρο" - "Βλέπεις την ειδοποίηση! Κάνε μου κλικ!" + "Προβάλλετε την ειδοποίηση! Πατήστε εδώ!" "Νήμα στο %1$s" "%1$s: %2$s" "%1$s: %2$s %3$s" diff --git a/libraries/push/impl/src/main/res/values-et/translations.xml b/libraries/push/impl/src/main/res/values-et/translations.xml index 6b3d3f01d0..36ceb4ff6e 100644 --- a/libraries/push/impl/src/main/res/values-et/translations.xml +++ b/libraries/push/impl/src/main/res/values-et/translations.xml @@ -30,6 +30,7 @@ "Kutse osalema vestluses" "%1$s saatus sulle vestluskutse" + "Palun võimalust liitumiseks" "Hakkas jagama oma asukohta reaalajas" "Mainis sind: %1$s" "Uued sõnumid" @@ -46,7 +47,7 @@ "%1$s mainis või vastas" "Kutsus sind liituma kogukonnaga" "%1$s kutsus sind liituma kogukonnaga" - "See ongi teavitus! Klõpsi mind!" + "See ongi teavitus! Klõpsa mind!" "Jutulõng „%1$s“ jututoas" "%1$s: %2$s" "%1$s: %2$s %3$s" @@ -92,7 +93,7 @@ "Teavituse kuvamine ei õnnestu." "Sa oled teavitust klõpsinud!" "Kuva teavitust" - "Testiga jätkamiseks palun klõpsi teavitust." + "Testiga jätkamiseks palun klõpsa teavitust." "Palun veendu, et rakendus saab tõuketeavitusi." "Viga: tõuketeenuse teostaja on päringust keeldunud." "Viga: %1$s." diff --git a/libraries/push/impl/src/main/res/values-fr/translations.xml b/libraries/push/impl/src/main/res/values-fr/translations.xml index 6c129cd3ed..7fab5b74e7 100644 --- a/libraries/push/impl/src/main/res/values-fr/translations.xml +++ b/libraries/push/impl/src/main/res/values-fr/translations.xml @@ -34,6 +34,7 @@ "Vous a invité(e) à discuter" "%1$s vous a invité à discuter" + "A demandé à rejoindre" "A commencé à partager sa position en direct" "Mentionné(e) : %1$s" "Nouveaux messages" @@ -102,6 +103,7 @@ "Erreur :%1$s." "Erreur, impossible de tester les Push." "Erreur, le délai d’attente du Push est dépassé." + "Erreur : la passerelle de notification push limite le nombre de push: les notifications ne seront donc pas fiables. Veuillez configurer une autre passerelle de notification push." "La demande d’envoi de Push et sa réception ont pris %1$d ms." "Tester la réception des Push" diff --git a/libraries/push/impl/src/main/res/values-hr/translations.xml b/libraries/push/impl/src/main/res/values-hr/translations.xml index 6c364c6a9f..4bb45b689c 100644 --- a/libraries/push/impl/src/main/res/values-hr/translations.xml +++ b/libraries/push/impl/src/main/res/values-hr/translations.xml @@ -37,6 +37,7 @@ "Pozvao/la te na razgovor" "%1$s pozvao/la te na razgovor" + "Zatraženo pridruživanje" "Počeli su dijeliti svoju lokaciju uživo" "Korisnik vas je spomenuo: %1$s" "Nove poruke" @@ -110,6 +111,7 @@ "Pogreška: %1$s ." "Pogreška, nije moguće testirati push obavijesti." "Pogreška, isteklo je vrijeme čekanja na push obavijest." + "Pogreška: push gateway ograničava brzinu slanja obavijesti na ovom uređaju, pa obavijesti neće biti pouzdane. Postavite drugi push gateway." "Povratna push obavijest trajala je %1$d ms." "Testiraj povratnu push obavijest" diff --git a/libraries/push/impl/src/main/res/values-in/translations.xml b/libraries/push/impl/src/main/res/values-in/translations.xml index 465f996ddd..a5f490d078 100644 --- a/libraries/push/impl/src/main/res/values-in/translations.xml +++ b/libraries/push/impl/src/main/res/values-in/translations.xml @@ -16,6 +16,9 @@ "Anda memiliki %d pesan baru." + + "Lampiran %1$d yang dibagikan" + "Panggilan masuk" "📹 Panggilan masuk" "** Gagal mengirim — silakan buka ruangan" @@ -26,6 +29,7 @@ "Mengundang Anda untuk mengobrol" "%1$s mengundang Anda untuk mengobrol" + "Diminta untuk bergabung" "Menyebutkan Anda: %1$s" "Pesan Baru" @@ -88,6 +92,7 @@ "Kesalahan: %1$s." "Terjadi kesalahan, tidak dapat menguji notifikasi dorongan." "Terjadi kesalahan, melebihi batas waktu menunggu notifikasi dorongan." + "Kesalahan: gateway push membatasi frekuensi pengiriman ke perangkat ini, sehingga notifikasi tidak akan dapat diandalkan. Silakan atur gateway push yang lain." "Ulangan notifikasi dorongan membutuhkan %1$d ms." "Uji ulangan notifikasi dorongan lagi" diff --git a/libraries/push/impl/src/main/res/values-it/translations.xml b/libraries/push/impl/src/main/res/values-it/translations.xml index 6ed91c3b6b..a496a2f65a 100644 --- a/libraries/push/impl/src/main/res/values-it/translations.xml +++ b/libraries/push/impl/src/main/res/values-it/translations.xml @@ -19,6 +19,10 @@ "Hai %d nuovo messaggio." "Hai %d nuovi messaggi." + + "Condiviso %1$d allegato" + "Condivisi %1$d allegati" + "📞 Chiamata in arrivo" "📹 Chiamata in arrivo" "** Invio fallito - si prega di aprire la stanza" @@ -30,6 +34,8 @@ "Ti ha invitato ad una conversazione" "%1$s ti ha invitato ad una conversazione" + "Richiesta di accesso" + "Ha iniziato a condividere la posizione in tempo reale" "Ti ha menzionato: %1$s" "Nuovi messaggi" @@ -97,6 +103,7 @@ "Errore: %1$s." "Errore, impossibile testare le notifiche push." "Errore, tempo scaduto in attesa della notifica push." + "Errore: il gateway push sta limitando la frequenza delle notifiche su questo dispositivo, pertanto le notifiche non saranno affidabili. Si prega di configurare un gateway push diverso." "Il test push loop back ha impiegato %1$d ms." "Prova invio notifica push loop back" diff --git a/libraries/push/impl/src/main/res/values-ja/translations.xml b/libraries/push/impl/src/main/res/values-ja/translations.xml index f115a54042..6b03bcc674 100644 --- a/libraries/push/impl/src/main/res/values-ja/translations.xml +++ b/libraries/push/impl/src/main/res/values-ja/translations.xml @@ -16,6 +16,9 @@ "新着のメッセージが%d 件あります。" + + "%1$d 個の共有された添付ファイル" + "📞 着信" "📹 通話着信" "** 送信失敗 - ルームを開いてください" @@ -26,6 +29,8 @@ "チャットにあなたを招待しました" "%1$sがあなたをチャットに招待しました" + "参加をリクエスト" + "ライブ位置情報の共有を開始" "%1$s があなたをメンションしました" "新着メッセージ" @@ -88,6 +93,7 @@ "エラー: %1$s" "エラー: プッシュ通知をテストできません。" "エラー: 通知の待機がタイムアウトしました。" + "エラー: 現在のプッシュゲートウェイは、この端末に通信制限を設けているため、確実に通知を受け取ることができません。異なるプッシュゲートウェイを設定してください。" "プッシュ通知のループバックに %1$d ms 要しました。" "プッシュ通知のループバックをテスト" 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 6c04215dd4..d4e61a4704 100644 --- a/libraries/push/impl/src/main/res/values-pl/translations.xml +++ b/libraries/push/impl/src/main/res/values-pl/translations.xml @@ -39,6 +39,7 @@ "Zaprosił Cię do czatu" "%1$s zaprosił Cię do czatu" + "Poprosił o dołączenie" "Rozpoczął udostępnianie swojej lokalizacji" "Wspomniano o Tobie: %1$s" "Nowe wiadomości" @@ -56,7 +57,7 @@ "%1$s wspomniał lub odpowiedział" "Zaprosił Cię do dołączenia do przestrzeni" "%1$s zaprosił Cię do dołączenia do przestrzeni" - "Wyświetlasz powiadomienie! Kliknij mnie!" + "Oto powiadomienie! Dotknij mnie!" "Wątek w %1$s" "%1$s: %2$s" "%1$s: %2$s %3$s" @@ -106,12 +107,13 @@ "Nie można wyświetlić powiadomienia." "Powiadomienie zostało kliknięte!" "Wyświetl powiadomienie" - "Kliknij powiadomienie, aby kontynuować test." + "Dotknij powiadomienia, aby kontynuować test." "Upewnij się, że aplikacja otrzymuje powiadomienie push." "Błąd: pusher odrzucił żądanie." "Błąd: %1$s." "Błąd, nie można przetestować push." "Błąd, upłynął limit czasu powiadomienia push." + "Błąd: bramka push posiada ograniczenie ilości powiadomień, co sprawi że mogą nie działać prawidłowo. Prosimy o ustawienie innej bramki push." "Pętla powrotna push zajęła %1$d ms." "Przetestuj pętlę Push back" diff --git a/libraries/push/impl/src/main/res/values-uk/translations.xml b/libraries/push/impl/src/main/res/values-uk/translations.xml index 755654dc62..01f8482745 100644 --- a/libraries/push/impl/src/main/res/values-uk/translations.xml +++ b/libraries/push/impl/src/main/res/values-uk/translations.xml @@ -39,6 +39,7 @@ "Запрошує вас до бесіди" "%1$s запрошує вас до бесіди" + "Запит на приєднання" "Починає ділитися своїм поточним місцем розташування" "Вас згадує: %1$s" "Нові повідомлення" @@ -56,7 +57,7 @@ "%1$s згадували або відповідали" "Вас запросили приєднатися до простору" "%1$s запрошує вас приєднатися до простору" - "Ви переглядаєте сповіщення! Натисніть тут!" + "Ви переглядаєте сповіщення! Торкніться мене!" "Гілка в %1$s" "%1$s: %2$s" "%1$s: %2$s %3$s" @@ -106,12 +107,13 @@ "Не вдається показати сповіщення." "Ви натиснули на сповіщення!" "Показ сповіщення" - "Натисніть на сповіщення, щоб продовжити тест." + "Торкніться сповіщення, щоб продовжити тест." "Переконується, що застосунок отримує push-сповіщення." "Помилка: постачальник push-сповіщень відхилив запит." "Помилка: %1$s." "Помилка, неможливо перевірити push." "Помилка, час очікування вийшов на push-повідомлення." + "Помилка: шлюз push обмежує швидкість для цього пристрою, тому сповіщення не будуть надійними. Налаштуйте інший шлюз push." "Зворотнє відправлення push-повідомлення, зайняло %1$d мс." "Перевірка зворотного надсилання" diff --git a/libraries/push/impl/src/main/res/values-zh-rTW/translations.xml b/libraries/push/impl/src/main/res/values-zh-rTW/translations.xml index af3b58c980..2860bc187c 100644 --- a/libraries/push/impl/src/main/res/values-zh-rTW/translations.xml +++ b/libraries/push/impl/src/main/res/values-zh-rTW/translations.xml @@ -29,6 +29,7 @@ "邀請您聊天" "%1$s 邀請您加入聊天" + "已要求加入" "已開始分享他們的即時位置" "提及您:%1$s" "新訊息" @@ -92,6 +93,7 @@ "錯誤:%1$s。" "錯誤,無法測試推播。" "錯誤,等待推播逾時。" + "錯誤:推播閘道已限速此裝置,因此通知可能不穩定。請設定其他推播閘道。" "推播返回需要 %1$d 毫秒。" "測試推播返回" diff --git a/libraries/push/impl/src/main/res/values/localazy.xml b/libraries/push/impl/src/main/res/values/localazy.xml index bbe6f958b9..49b1fcd72e 100644 --- a/libraries/push/impl/src/main/res/values/localazy.xml +++ b/libraries/push/impl/src/main/res/values/localazy.xml @@ -51,7 +51,7 @@ "%1$s mentioned or replied" "Invited you to join the space" "%1$s invited you to join the space" - "You are viewing the notification! Click me!" + "You are viewing the notification! Tap me!" "Thread in %1$s" "%1$s: %2$s" "%1$s: %2$s %3$s" @@ -97,7 +97,7 @@ "Cannot display the notification." "The notification has been clicked!" "Display notification" - "Please click on the notification to continue the test." + "Please tap the notification to continue the test." "Ensure that the application is receiving push." "Error: pusher has rejected the request." "Error: %1$s." diff --git a/libraries/textcomposer/impl/src/main/res/values-de/translations.xml b/libraries/textcomposer/impl/src/main/res/values-de/translations.xml index 1520699314..1318c61fac 100644 --- a/libraries/textcomposer/impl/src/main/res/values-de/translations.xml +++ b/libraries/textcomposer/impl/src/main/res/values-de/translations.xml @@ -5,8 +5,8 @@ "Textformatierung abbrechen und schließen" "Codeblock umschalten" "Bildunterschrift hinzufügen" - "Verschlüsselte Nachricht…" - "Nachricht…" + "Verschlüsselte Nachricht …" + "Nachricht …" "Unverschlüsselte Nachricht" "Einen Link erstellen" "Link bearbeiten" 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 bcc897751a..efd3af694a 100644 --- a/libraries/ui-strings/src/main/res/values-de/translations.xml +++ b/libraries/ui-strings/src/main/res/values-de/translations.xml @@ -1,22 +1,40 @@ + "Avatar hinzufügen" "Reaktion hinzufügen: %1$s" "Adresse" "Avatar" + "Suchfeld leeren" "Nachrichtentextfeld minimieren" + "Stimmen pro Person verringern" + "Stimmen pro Person erhöhen" + "Benutzerdefiniertes Emoji" "Löschen" "%1$d eingegebene Ziffer" "%1$d eingegebene Ziffern" + "Dauer: %1$s" "Avatar bearbeiten" "Die vollständige Adresse lautet %1$s" "Details zur Verschlüsselung" "Nachrichtentextfeld vergrößern" + "Galerie, Anhang %1$d" + "Galerie, Scan %1$d fehlgeschlagen" + "Galerie, Bild %1$d" + + "Galerie, %1$d weitere Mediendatei" + "Galerie, %1$d weitere Mediendateien" + + "Galerie, scanne %1$d" + "Galerie, Video %1$d" "Passwort ausblenden" + "Info" "Anruf beitreten" "Nach unten springen" - "Verschiebe die Karte zu meinem Standort." + "Zu den ungelesenen springen" + "Zur ersten ungelesenen Nachricht springen" + "Verschiebe die Karte zu meinem Standort" "Nur Erwähnungen" "Stummgeschaltet" "Neue Erwähnungen" @@ -26,34 +44,43 @@ "Seite %1$d" "Pausieren" "Sprachnachricht, Dauer:%1$s, aktuelle Position: %2$s" + "Fotovorschau" "PIN-Feld" "Fixierter Standort" "Abspielen" "Wiedergabegeschwindigkeit" "Umfrage" "Umfrage beendet" + "Position: %1$s" "QR-Code" "Reagiere mit %1$s" "Mit anderen Emojis reagieren" "Vorherige Nachricht gelesen von %1$s und %2$s" - "Vorherige Nachricht gelesen von %1$s und %2$d weiteren" - "Vorherige Nachricht gelesen von %1$s und %2$d weiteren" + "Vorherige Nachricht gelesen von %1$s und %2$d weiteren Person" + "Vorherige Nachricht gelesen von %1$s und %2$d weiteren Personen" "Vorherige Nachricht gelesen von %1$s" + "Alle Lesebestätigungen anzeigen" "Reaktion mit %1$s entfernen" "Entferne Reaktionen mit %1$s" "Avatar" "Dateien senden" "Standort des Absenders" + "Gesendet von %1$s um %2$s" "Zeitlich begrenzte Handlung erforderlich, du hast eine Minute Zeit zur Verifizierung" + "Einstellungen, Aktion erforderlich" "Passwort anzeigen" "Anruf starten" "Starte einen Videoanruf" "Sprachanruf starten" + "Status" + "Thread in %1$s" + "Threads in %1$s" "Stillgelegter Chat" "Nutzer-Avatar" "Nutzer-Menü" + "Videovorschau" "Avatar ansehen" "Details anzeigen" "Sprachnachricht, Dauer: %1$s" @@ -68,6 +95,7 @@ "Anruf" "Abbrechen" "Vorerst abbrechen" + "Datei auswählen" "Foto auswählen" "Löschen" "Schließen" @@ -81,18 +109,22 @@ "Link zur Nachricht kopieren" "Text kopieren" "Erstellen" - "Chat erstellen" + "Gruppe erstellen" "Space erstellen" "Deaktivieren" - "Nutzerkonto deaktivieren" + "Konto deaktivieren" "Ablehnen" "Ablehnen und blockieren" + "Löschen" + "Konto löschen" + "Datei löschen" "Umfrage löschen" "Auswahl aufheben" "Deaktivieren" "Verwerfen" "Schließen" "Erledigt" + "Herunterladen" "Bearbeiten" "Bildunterschrift bearbeiten" "Umfrage bearbeiten" @@ -108,7 +140,7 @@ "Zu den Einstellungen" "Ignorieren" "Einladen" - "Nutzer einladen" + "Personen einladen" "Lade Personen in %1$s ein" "Lade Personen in %1$s ein" "Einladungen" @@ -116,13 +148,14 @@ "Mehr erfahren" "Verlassen" "Unterhaltung verlassen" - "Verlassen" + "Chat verlassen" "Space verlassen" - "Mehr laden…" + "Mehr laden" "Konto verwalten" "Konto & Geräte verwalten" "Geräte verwalten" "Chats und Gruppen konfigurieren" + "Als gelesen markieren" "Nachricht" "Minimieren" "Weiter" @@ -142,10 +175,10 @@ "Nachricht entfernen" "Antworten" "Im Thread antworten" - "Bericht" + "Melden" "Fehler melden" "Inhalt melden" - "Konversation melden" + "Chat melden" "Chat melden" "Zurücksetzen" "Identität zurücksetzen" @@ -177,9 +210,11 @@ "Übersetzen" "Erneut versuchen" "Lösen" + "Videoanruf" "Ansicht" "Im Nachrichtenverlauf anzeigen" - "Quellcode anzeigen" + "Rohdaten anzeigen" + "Sprachanruf" "Ja" "Ja, versuche es noch einmal" "Dein Homeserver unterstützt jetzt ein neues, schnelleres Protokoll. Melde dich ab und wieder an, um zu aktualisieren. Wenn du das jetzt tust, vermeidest du eine erzwungene Abmeldung, wenn das alte Protokoll später entfernt wird." @@ -193,18 +228,21 @@ "ein Bild" "Analysedaten" "Du hast den Chat verlassen" - "Du wurdest aus der Sitzung abgemeldet." + "Du wurdest aus der Sitzung abgemeldet" "Erscheinungsbild" "Audio" "Beta" "Blockierte Nutzer" "Sprechblasen" + "Anruf abgelehnt" + "Anruf läuft" "Anruf gestartet" + "Du hast einen Anruf abgelehnt" "Chat-Backup" "In die Zwischenablage kopiert" "Copyright" - "Chat wird erstellt…" - "Space wird angelegt…" + "Chat wird erstellt …" + "Space wird erstellt …" "Anfrage abgebrochen" "Hat den Chat verlassen" "Space verlassen" @@ -216,10 +254,10 @@ "Direktnachricht" "Nicht mehr anzeigen" "Download fehlgeschlagen" - "Herunterladen" + "Wird heruntergeladen" "(bearbeitet)" "Bearbeitung" - "Bildunterschrift bearbeiten" + "Bildunterschrift wird bearbeitet" "* %1$s %2$s" "Leere Datei" "Verschlüsselung" @@ -234,27 +272,37 @@ Grund: %1$s." "Fehlgeschlagen" "Favorit" "Favorisiert" - "Benachrichtigungen werden synchronisiert…" + "Benachrichtigungen werden synchronisiert …" "Datei" "Datei wurde gelöscht" "Datei gespeichert" "Datei wurde unter Downloads gespeichert" "Nachricht weiterleiten" "Häufig verwendet" + "Galerie" + + "%1$d Anhang…" + "%1$d Anhänge…" + + + "%1$d Mediendatei…" + "%1$d Mediendateien…" + "GIF" + "Gruppenanruf läuft" "Bild" "Als Antwort auf %1$s" "APK installieren" "Diese Matrix Kennung wurde nicht gefunden, daher wird die Einladung möglicherweise nicht empfangen." - "Chat verlassen" + "Chat wird verlassen" "Space wird verlassen" "Zeile in die Zwischenablage kopiert" "Link in die Zwischenablage kopiert" "Neues Gerät verknüpfen" "Live-Standort" "Live-Standort teilen beendet" - "Laden…" - "Mehr wird geladen…" + "Wird geladen …" + "Weitere werden geladen …" "%d weitere" "%d weitere" @@ -277,6 +325,7 @@ Grund: %1$s." "Kein Space Name" "Nicht verschlüsselt" "Offline" + "In einem Anruf" "Open-Source-Lizenzen" "oder" "Weitere Optionen" @@ -286,16 +335,17 @@ Grund: %1$s." "Berechtigung" "Fixiert" "Bitte überprüfe deine Internetverbindung" - "Bitte warten…" + "Bitte warten …" "Bist du sicher, dass du diese Umfrage beenden möchtest?" "Umfrage: %1$s" + "Umfrage" "Stimmen insgesamt: %1$s" "Ergebnisse werden nach Ende der Umfrage angezeigt" "%d Stimme" "%d Stimmen" - "Vorbereitung läuft …" + "Wird vorbereitet …" "Datenschutz­erklärung" "Privat" "Privater Chat" @@ -307,15 +357,15 @@ Grund: %1$s." "Reaktionen" "Grund" "Wiederherstellungsschlüssel" - "Wird erneuert…" + "Wird aktualisiert …" "Entferne…" "%1$d Antwort" "%1$d Antworten" - "%1$s antworten" + "Antwort an %1$s" "Ein Problem melden" - "Bericht eingereicht" + "Meldung übermittelt" "Rich-Text-Editor" "Rolle" "Chat" @@ -326,7 +376,7 @@ Grund: %1$s." "%1$d Chats" "Gespeicherte Änderungen" - "Speichern" + "Wird gespeichert" "Bildschirmsperre" "Nach jemandem suchen" "Suchergebnisse" @@ -338,7 +388,7 @@ Grund: %1$s." "%1$d ausgewählt" "Senden an" - "Wird gesendet…" + "Wird gesendet …" "Senden fehlgeschlagen" "Gesendet" ". " @@ -351,8 +401,8 @@ Grund: %1$s." "Geteilter Live-Standort" "Geteilter Standort" "Gemeinsamer Space" - "Gerät entfernen" - "Es ist ein Fehler aufgetreten." + "Gerät wird entfernt" + "Etwas ist schief gelaufen" "Wir haben ein Problem festgestellt. Bitte versuch es erneut." "Space" "Space Mitglieder" @@ -361,12 +411,12 @@ Grund: %1$s." "%1$d Space" "%1$d Spaces" - "Chat wird gestartet…" + "Chat wird gestartet …" "Sticker" "Erfolg" "Empfohlen" "Vorschläge" - "Synchronisieren" + "Wird synchronisiert" "Text" "Hinweise von Drittanbietern" "Thread" @@ -375,14 +425,15 @@ Grund: %1$s." "Worum geht is in diesem Chat?" "Entschlüsselung nicht möglich" "Von einem ungesicherten Gerät gesendet" - "Du hast keinen Zugriff auf diese Nachricht." - "Die verifizierte Identität des Senders wurde zurückgesetzt" + "Du hast keinen Zugriff auf diese Nachricht" + "Die verifizierte digitale Identität des Absenders wurde zurückgesetzt" "Einladungen konnten nicht an einen oder mehrere Nutzer gesendet werden." "Einladung(en) konnte(n) nicht gesendet werden" "Entsperren" "Stummschaltung aufheben" "Anruf nicht unterstützt" "Nicht unterstütztes Ereignis" + "%1$s hat einen Anruf gestartet" "Nutzername" "Verifizierung abgebrochen" "Verifizierung abgeschlossen" @@ -404,14 +455,19 @@ Grund: %1$s." "Warten auf Live-Standort…" "Jeder kann den Nachrichtenverlauf sehen" "Du" - "%1$s (%2$s) hat diese Nachricht geteilt, weil du nicht im Chat warst, als sie verschickt wurde." + "Download nicht verfügbar." + "Etwas ist schief gelaufen" + "Scanvorgang läuft…" + "Vorschau und Download wurden deaktiviert." + "Die Datei ist nicht sicher" + "%1$s (%2$s) hat diese Nachricht mit dir geteilt, weil du nicht im Chat warst, als sie verschickt wurde." "Diese Nachricht wurde von %1$s weitergeleitet, da du zum Zeitpunkt des Versands kein Mitglied der Gruppe warst." "Diese Gruppe wurde so konfiguriert, dass neue Mitglieder den vergangenen Nachrichtenverlauf lesen können. %1$s" - "Die Identität von %1$s wurde zurückgesetzt. %2$s" - "Die Identität von %1$s %2$s wurde zurückgesetzt. %3$s" + "Die digitale Identität von %1$s wurde zurückgesetzt. %2$s" + "Die digitale Identität von %1$s %2$s wurde zurückgesetzt. %3$s" "(%1$s)" - "Die Identität von %1$s wurde zurückgesetzt." - "Die Identität von %1$s %2$s wurde zurückgesetzt. %3$s" + "Die digitale Identität von %1$s wurde zurückgesetzt." + "Die digitale Identität von %1$s %2$s wurde zurückgesetzt. %3$s" "Verifizierung zurückziehen" "Zugriff erlauben" "Der Link %1$s führt dich zu einer anderen Seite %2$s. @@ -421,7 +477,7 @@ Möchtest du wirklich fortfahren?" "Wähle die Standardqualität für Videos, die du hochlädst." "Video-Upload-Qualität" "Die maximal erlaubte Dateigröße ist: %1$s" - "Die Datei ist zu groß zum Hochladen." + "Die Datei ist zu groß zum Hochladen" "Chat gemeldet" "Gemeldet und Chat verlassen" "Bestätigung" @@ -435,7 +491,7 @@ Möchtest du wirklich fortfahren?" "Wähle die Qualität des Videos, das du hochladen möchtest." "Wähle die Video-Upload-Qualität" "Du bist auf diesem Gerät bereits als %1$s angemeldet." - "Dein Homeserver muss aktualisiert werden, um den Matrix Authentication Services und die Erstellung von Konten zu unterstützen." + "Dein Kontoanbieter muss aktualisiert werden, um Matrix Authentication Service und die Erstellung von Konten zu unterstützen." "Fehler beim Erstellen des Permalinks" "%1$s konnte die Karte nicht laden. Bitte versuche es später erneut." "Fehler beim Laden der Nachrichten" @@ -454,6 +510,9 @@ Möchtest du wirklich fortfahren?" "Entschuldigung, es ist ein Fehler aufgetreten" "🔐️ Begleite mich auf %1$s" "Hey, sprich mit mir auf %1$s: %2$s" + "Live-Standortfreigabe" + "Standortfreigabe läuft" + "%1$s Live-Standort" "%1$s Android" "Heftiges Schütteln um Fehler zu melden" "Bildschirmfoto" @@ -461,38 +520,41 @@ Möchtest du wirklich fortfahren?" "Optionen" "Entferne %1$s" "Einstellungen" + "Stimmen pro Person" "Niemand teilt seinen Standort" - "Live-Standort teilen" + "Live-Standort wird geteilt" "%1$d Person" "%1$d Leute" "Auf der Karte" + "Dein Homeserver befindet sich in deinem lokalen Netzwerk. Um eine Verbindung herzustellen, benötigt %1$s die Berechtigung, auf Geräte in diesem Netzwerk zuzugreifen." + "Zugriff auf das lokale Netzwerk zulassen" "Medienauswahl fehlgeschlagen, bitte versuche es erneut." - "Halte eine Nachricht gedrückt und wähle “%1$s”, um sie hier einzufügen." + "Halte eine Nachricht gedrückt und wähle „%1$s“, um sie hier einzufügen." "Fixiere wichtige Nachrichten, so dass sie leicht gefunden werden können" "%1$d fixierte Nachricht" "%1$d fixierte Nachrichten" "Fixierte Nachrichten" - "Du wirst gleich zu deinem %1$s Konto weitergeleitet, um deine digitale Identität zurückzusetzen. Danach kehrst du zur App zurück." + "Du wirst gleich zu deinem Konto bei %1$s weitergeleitet, um deine digitale Identität zurückzusetzen. Danach kehrst du zur App zurück." "Bestätigung nicht möglich? Rufe dein Konto auf, um deine digitale Identität zurückzusetzen." "Verifizierung zurückziehen und senden" "Du kannst deine Verifizierung zurückziehen und diese Nachricht trotzdem senden, oder du kannst vorerst abbrechen und es später noch einmal versuchen, nachdem du %1$s erneut verifiziert hast." - "Deine Nachricht wurde nicht gesendet, da die verifizierte Identität von %1$s zurückgesetzt wurde" + "Deine Nachricht wurde nicht gesendet, da die verifizierte digitale Identität von %1$s zurückgesetzt wurde" "Nachricht trotzdem senden" "%1$s verwendet wenigstens ein nicht verifiziertes Gerät. Du kannst die Nachricht trotzdem verschicken, oder vorerst abbrechen und später erneut versuchen, nachdem %2$s alle Geräte verifiziert hat." "Deine Nachricht wurde nicht gesendet, weil %1$s nicht alle Geräte verifiziert hat" "Mindestens eines deiner Geräte ist nicht verifiziert. Du kannst die Nachricht trotzdem senden, oder den Vorgang zunächst abbrechen und es später erneut versuchen, nachdem du alle deine Geräte verifiziert hast." - "Deine Nachricht wurde nicht gesendet, da du eines oder mehrere deiner Geräte nicht verifiziert hast." + "Deine Nachricht wurde nicht gesendet, da du eines oder mehrere deiner Geräte nicht verifiziert hast" "Admins oder Eigentümer bearbeiten" "Fehler beim Verarbeiten des hochgeladenen Mediums. Bitte versuche es erneut." "Nutzerdetails konnten nicht abgerufen werden" "Nachricht in %1$s" "Erweitern" "Verkleinern" - "Live-Standort teilen" + "Live-Standort wird geteilt" "Du siehst diesen Chat bereits!" "%1$s von %2$s" "%1$s fixierte Nachrichten" @@ -513,6 +575,10 @@ Möchtest du wirklich fortfahren?" "Spaces" "Geteilt %1$s" "Auf der Karte" + + "%1$d ist beigetreten" + "%1$d sind beigetreten" + "Die Nachricht wurde nicht gesendet, da die verifizierte digitale Identität von %1$s zurückgesetzt wurde." "Die Nachricht wurde nicht gesendet, weil %1$s nicht alle Geräte verifiziert hat." "Die Nachricht wurde nicht gesendet, weil du eines oder mehrere deiner Geräte nicht verifiziert hast." @@ -521,7 +587,9 @@ Möchtest du wirklich fortfahren?" "en" "Der Nachrichtenverlauf ist auf diesem Gerät nicht verfügbar" "Für den Zugriff auf den Nachrichtenverlauf musst du dieses Gerät verifizieren" - "Du hast keinen Zugriff auf diese Nachricht." + "Du hast keinen Zugriff auf diese Nachricht" "Nachricht kann nicht entschlüsselt werden" "Diese Nachricht wurde entweder blockiert, weil du dein Gerät nicht verifiziert hast, oder weil der Absender deine digitale Identität verifizieren muss." + "Dein Gerät ist zu alt – ein Gerät mit Android 8 oder neuer ist erforderlich." + "Kartendarstellung wird nicht unterstützt" diff --git a/libraries/ui-strings/src/main/res/values-el/translations.xml b/libraries/ui-strings/src/main/res/values-el/translations.xml index 1b69bb001f..19b4255164 100644 --- a/libraries/ui-strings/src/main/res/values-el/translations.xml +++ b/libraries/ui-strings/src/main/res/values-el/translations.xml @@ -35,12 +35,12 @@ "Κωδικός QR" "Αντέδρασε με %1$s" "Αντέδρασε με άλλα emoji" - "Διαβάστηκε από%1$s και %2$s" + "Προηγούμενο μήνυμα που διαβάστηκε από τους %1$s και %2$s" "Διαβάστηκε από %1$s και %2$d ακόμη" "Διαβάστηκε από %1$s και %2$d ακόμη" - "Διαβάστηκε από %1$s" + "Το προηγούμενο μήνυμα διαβάστηκε από %1$s" "Αφαίρεση αντίδρασης με %1$s" "Αφαιρέστε την αντίδραση με %1$s" "Άβαταρ αίθουσας" 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 6aced99b00..179398d61c 100644 --- a/libraries/ui-strings/src/main/res/values-fr/translations.xml +++ b/libraries/ui-strings/src/main/res/values-fr/translations.xml @@ -491,7 +491,7 @@ Raison : %1$s." "Sélectionnez la qualité des vidéos que vous souhaitez envoyer." "Sélectionnez la qualité d’envoi des vidéos" "Vous êtes déjà connecté sur cet appareil en tant que %1$s." - "Votre serveur d’accueil doit être mis à jour pour prendre en charge le protocole MAS (Matrix Authentication Service) et la création de compte." + "Votre fournisseur de compte doit être mis à jour pour prendre en charge le protocole MAS (Matrix Authentication Service) et la création de compte." "Échec de la création du permalien" "%1$s n’a pas pu charger la carte. Veuillez réessayer ultérieurement." "Échec du chargement des messages" diff --git a/libraries/ui-strings/src/main/res/values-hr/translations.xml b/libraries/ui-strings/src/main/res/values-hr/translations.xml index c0879d3a2e..93e9556163 100644 --- a/libraries/ui-strings/src/main/res/values-hr/translations.xml +++ b/libraries/ui-strings/src/main/res/values-hr/translations.xml @@ -20,6 +20,15 @@ "Potpuna adresa bit će %1$s" "Pojedinosti o šifriranju" "Proširi tekstno polje poruke" + "Galerija, prilog %1$d" + "Galerija, neuspješno skeniranje %1$d" + "Galerija, slika %1$d" + + "Galerija, %1$d više medija" + "Galerija, %1$d više medija" + + "Galerija, skeniranje %1$d" + "Galerija, video %1$d" "Sakrij zaporku" "Informacije" "Pridruži se pozivu" diff --git a/libraries/ui-strings/src/main/res/values-in/translations.xml b/libraries/ui-strings/src/main/res/values-in/translations.xml index 5527a10802..bbc11daba8 100644 --- a/libraries/ui-strings/src/main/res/values-in/translations.xml +++ b/libraries/ui-strings/src/main/res/values-in/translations.xml @@ -1,5 +1,6 @@ + "Tambahkan avatar" "Tambahkan reaksi: %1$s" "Alamat" "Avatar" @@ -13,6 +14,13 @@ "Alamat lengkapnya adalah%1$s" "Detail enkripsi" "Perluas kolom teks pesan" + "Galeri, lampiran %1$d" + "Galeri, gambar %1$d" + + "Galeri, %1$d media lainnya" + + "Galeri, memindai %1$d" + "Galeri, video %1$d" "Sembunyikan kata sandi" "Informasi" "Bergabung dalam panggilan" @@ -96,6 +104,7 @@ "Tolak dan blokir" "Hapus" "Hapus akun" + "Hapus file" "Hapus jajak pendapat" "Batalkan semua pilihan" "Nonaktifkan" @@ -299,6 +308,7 @@ Alasan: %1$s." "Mohon tunggu…" "Apakah Anda yakin ingin mengakhiri jajak pendapat ini?" "Jajak pendapat: %1$s" + "Polling" "Total suara: %1$s" "Hasil akan terlihat setelah jajak pendapat berakhir." @@ -530,4 +540,6 @@ Apakah Anda yakin ingin melanjutkan?" "Anda tidak memiliki akses ke pesan ini" "Tidak dapat mendekripsi pesan" "Pesan ini diblokir karena Anda tidak memverifikasi perangkat Anda atau karena pengirim perlu memverifikasi identitas Anda." + "Perangkat Anda terlalu lama, diperlukan perangkat dengan Android 8 atau yang lebih baru." + "Rendering peta tidak didukung." diff --git a/libraries/ui-strings/src/main/res/values-it/translations.xml b/libraries/ui-strings/src/main/res/values-it/translations.xml index 3b47c41665..ea8de193ac 100644 --- a/libraries/ui-strings/src/main/res/values-it/translations.xml +++ b/libraries/ui-strings/src/main/res/values-it/translations.xml @@ -8,6 +8,7 @@ "Riduci al minimo il campo di testo del messaggio" "Riduci il numero di voti consentiti per persona" "Aumenta il numero di voti consentiti per persona" + "Emoji personalizzata" "Elimina" "%1$d cifra inserita" @@ -18,11 +19,21 @@ "L\'indirizzo completo sarà %1$s" "Dettagli sulla crittografia" "Allarga il campo di testo del messaggio" + "Galleria, allegato %1$d" + "Galleria, scansione non riuscita %1$d" + "Galleria, immagine %1$d" + + "Galleria, %1$d altro media" + "Galleria, %1$d altri media" + + "Galleria, scansione %1$d" + "Galleria, video %1$d" "Nascondi password" "Info" "Entra in chiamata" "Vai alla fine" "Vai ai messaggi non letti" + "Vai al primo messaggio non letto" "Sposta la mappa sulla mia posizione" "Solo menzioni" "Silenziato" @@ -63,6 +74,7 @@ "Avvia una chiamata" "Avvia una videochiamata" "Avvia una chiamata vocale" + "Stato" "Discussione in %1$s" "Discussioni in %1$s" "Stanza obsoleta" @@ -143,6 +155,7 @@ "Gestisci account & dispositivi" "Gestisci dispositivi" "Gestisci le stanze" + "Segna come letto" "Invia messaggio" "Riduci" "Avanti" @@ -267,6 +280,14 @@ Motivo:. %1$s" "Inoltra messaggio" "Usati di frequente" "Galleria" + + "%1$d allegato…" + "%1$d allegati…" + + + "%1$d elemento multimediale…" + "%1$d elementi multimediali…" + "GIF" "Chiamata di gruppo in corso" "Immagine" @@ -304,6 +325,7 @@ Motivo:. %1$s" "Spazio senza nome" "Non cifrato" "Non in linea" + "In chiamata" "Licenze open source" "o" "Altre opzioni" @@ -435,6 +457,7 @@ Motivo:. %1$s" "Tu" "Download non disponibile." "File non trovato" + "Scansione…" "L\'anteprima e il download sono stati disabilitati." "Il file non è sicuro" "%1$s (%2$s) ha condiviso questo messaggio poiché non eri nella stanza quando è stato inviato." @@ -468,7 +491,7 @@ Sei sicuro di voler continuare?" "Seleziona la qualità del video che vuoi caricare." "Seleziona la qualità di caricamento del video" "Hai già effettuato l\'accesso su questo dispositivo come %1$s ." - "Il tuo homeserver deve essere aggiornato per supportare il Matrix Authentication Service e la creazione di account." + "Il tuo gestore dell\'account deve essere aggiornato per supportare il servizio di autenticazione Matrix e la creazione di account." "Impossibile creare il collegamento permanente" "%1$s non è riuscito a caricare la mappa. Riprova più tardi." "Caricamento dei messaggi non riuscito" @@ -505,6 +528,8 @@ Sei sicuro di voler continuare?" "%1$d persone" "Sulla mappa" + "Il tuo homeserver si trova sulla tua rete locale. Per connettersi, %1$s necessita dell\'autorizzazione per raggiungere i dispositivi su questa rete." + "Consenti l\'accesso alla rete locale" "Selezione del file multimediale fallita, riprova." "Premi su un messaggio e scegli “%1$s” per includerlo qui." "Fissa i messaggi importanti così che possano essere trovati facilmente" @@ -550,6 +575,10 @@ Sei sicuro di voler continuare?" "Spazi" "Condivisa %1$s" "Sulla mappa" + + "%1$d si è unito" + "%1$d si sono uniti" + "Il messaggio non è stato inviato perché l\'identità digitale verificata di %1$sè stata reimpostata." "Messaggio non inviato perché %1$s non ha verificato tutti i dispositivi." "Messaggio non inviato perché non hai verificato uno o più dispositivi." diff --git a/libraries/ui-strings/src/main/res/values-ja/translations.xml b/libraries/ui-strings/src/main/res/values-ja/translations.xml index 7f54e420b8..1a14cd75d8 100644 --- a/libraries/ui-strings/src/main/res/values-ja/translations.xml +++ b/libraries/ui-strings/src/main/res/values-ja/translations.xml @@ -4,9 +4,11 @@ "リアクションを追加: %1$s" "アドレス" "アバター" + "検索欄をクリア" "入力欄を縮小" "一人あたりの投票権を減らす" "一人あたりの投票権を増やす" + "任意の絵文字" "削除" "%1$d 桁入力済" @@ -16,11 +18,20 @@ "完全なアドレスは %1$s になります。" "暗号化の詳細" "入力欄を拡大" + "ギャラリー 添付ファイル %1$d" + "ギャラリーで読み込み失敗 %1$d" + "ギャラリー 画像 %1$d" + + "ギャラリー その他メディア %1$d" + + "ギャラリー 読込中 %1$d" + "ギャラリー 動画 %1$d" "パスワードを非表示" "情報" "通話に参加" "一番下へ" "未読に移動" + "最初の未読のメッセージに移動" "現在地に移動" "メンションのみ" "ミュート有効" @@ -47,6 +58,7 @@ "既読: %1$s ほか %2$d 人" "%1$s 既読" + "既読のユーザーを全て表示" "%1$s リアクションを削除" "%1$s リアクションを削除" "ルームのアバター" @@ -59,6 +71,7 @@ "通話を開始" "ビデオ通話を開始" "音声通話を開始" + "ステータス" "%1$s のスレッド" "%1$s のスレッド" "埋没したルーム" @@ -139,6 +152,7 @@ "アカウントと端末を管理" "端末を管理" "ルームを管理" + "既読にする" "メッセージ" "最小化" "次へ" @@ -263,6 +277,12 @@ "メッセージを転送" "頻繁に使用" "ギャラリー" + + "%1$dの添付ファイル…" + + + "%1$dのメディアアイテム…" + "GIF" "グループ通話が進行中" "画像" @@ -298,6 +318,7 @@ "スペース名なし" "暗号化されていません" "オフライン" + "通話中" "オープンソースライセンス" "または" "他のオプション" @@ -422,6 +443,11 @@ "ライブ位置情報を待機中…" "誰でも履歴を閲覧できます" "あなた" + "ダウンロードは使用できません。" + "問題が発生しました" + "スキャン中…" + "プレビューとダウンロードは無効に設定されています。" + "このファイルは安全ではありません" "あなたが参加する以前に送信されたメッセージを、%1$s (%2$s) が共有しました。" "あなたが参加する以前に送信されたメッセージを、%1$s が共有しました。" "このルームは新しいメンバーが過去の内容を確認できるように設定されています。%1$s" @@ -489,6 +515,8 @@ "%1$d 人" "地図上" + "ホームサーバーがローカルネットワーク上に存在しています。接続するには %1$s はこのネットワークへアクセスする権限が必要です。" + "ローカルネットワークへのアクセスを許可" "ファイルの選択に失敗しました。再試行してください。" "メッセージを長押しし \"%1$s\" を選択してください" "重要なメッセージをピン留めして容易に見つけられるようにします" @@ -533,6 +561,9 @@ "スペース" "%1$s 共有" "地図上" + + "%1$d が参加" + "%1$s の検証済みのデジタルIDがリセットされたため、メッセージは送信されませんでした。" "%1$s に未検証の端末が存在するため、メッセージは送信されませんでした。" "未検証の端末が存在するため、メッセージは送信されませんでした。" 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 f0ac7785da..b92a1819e5 100644 --- a/libraries/ui-strings/src/main/res/values-pl/translations.xml +++ b/libraries/ui-strings/src/main/res/values-pl/translations.xml @@ -206,10 +206,10 @@ "Rozpocznij chat" "Zacznij od nowa" "Rozpocznij weryfikację" - "Stuknij, aby załadować mapę" + "Dotknij, aby załadować mapę" "Zatrzymaj" "Zrób zdjęcie" - "Stuknij, by wyświetlić opcje" + "Dotknij, by wyświetlić opcje" "Przetłumacz" "Spróbuj ponownie" "Odepnij" @@ -503,7 +503,7 @@ Czy na pewno chcesz kontynuować?" "Wybierz jakość filmu, który chcesz przesłać." "Wybierz jakość przesyłania wideo" "Jesteś już zalogowany na tym urządzeniu jako %1$s." - "Twój serwer domowy wymaga aktualizacji, aby uzyskać wsparcie usługi Matrix Authentication Service i tworzenia kont." + "Twój dostawca konta wymaga aktualizacji, aby uzyskać wsparcie usługi Matrix Authentication Service i tworzenia kont." "Nie udało się utworzyć linku bezpośredniego" "%1$s nie mogło wczytać mapy. Spróbuj ponownie później." "Nie udało się załadować wiadomości" diff --git a/libraries/ui-strings/src/main/res/values-uk/translations.xml b/libraries/ui-strings/src/main/res/values-uk/translations.xml index e00a269473..47cb0c5366 100644 --- a/libraries/ui-strings/src/main/res/values-uk/translations.xml +++ b/libraries/ui-strings/src/main/res/values-uk/translations.xml @@ -503,7 +503,7 @@ "Виберіть якість відео, яке ви хочете вивантажити." "Виберіть якість вивантажуваного відео" "Ви вже ввійшли на цьому пристрої як %1$s." - "Ваш домашній сервер потрібно оновити, щоб він підтримував службу автентифікації Matrix і створення облікових записів." + "Постачальника послуг облікового запису потрібно оновити для підтримки Matrix Authentication Service та створення облікових записів." "Не вдалося створити постійне посилання" "%1$s не може завантажити мапу. Повторіть спробу пізніше." "Не вдалося завантажити повідомлення" diff --git a/libraries/ui-strings/src/main/res/values-zh-rTW/translations.xml b/libraries/ui-strings/src/main/res/values-zh-rTW/translations.xml index 171551d71e..302407080d 100644 --- a/libraries/ui-strings/src/main/res/values-zh-rTW/translations.xml +++ b/libraries/ui-strings/src/main/res/values-zh-rTW/translations.xml @@ -18,6 +18,14 @@ "完整地址為 %1$s" "加密詳細資訊" "展開訊息文字欄位" + "圖庫,附件 %1$d" + "圖庫,掃描失敗 %1$d" + "圖庫,影像 %1$d" + + "圖庫,還有 %1$d 項媒體內容" + + "圖庫,正在掃描 %1$d" + "圖庫,影片 %1$d" "隱藏密碼" "資訊" "加入通話" diff --git a/libraries/ui-strings/src/main/res/values-zh/translations.xml b/libraries/ui-strings/src/main/res/values-zh/translations.xml index 03929c0182..66af4862b4 100644 --- a/libraries/ui-strings/src/main/res/values-zh/translations.xml +++ b/libraries/ui-strings/src/main/res/values-zh/translations.xml @@ -55,7 +55,7 @@ "使用其它 Emoji 做出反应" "上一个消息已被 %1$s 与 %2$s 阅读" - "上一个消息已被 %1$s 与 %2$d 及其他人阅读" + "上一个消息已被 %1$s 与其余 %2$d 人阅读" "上一个消息已被 %1$s 阅读" "显示所有已读回执" @@ -479,7 +479,7 @@ "选择你要上传的视频的质量。" "选择视频上传质量" "你已在此设备以 %1$s 的身份登录。" - "你的主服务器需要升级,以支持 Matrix 认证服务和账户创建。" + "你的账户提供者需要升级以支持 Matrix 认证服务和账户创建。" "永久链接创建失败" "%1$s 无法加载地图,请稍后再试。" "消息加载失败" diff --git a/libraries/ui-strings/src/main/res/values/localazy.xml b/libraries/ui-strings/src/main/res/values/localazy.xml index 92899ba9da..a7e2f4a79a 100644 --- a/libraries/ui-strings/src/main/res/values/localazy.xml +++ b/libraries/ui-strings/src/main/res/values/localazy.xml @@ -491,7 +491,7 @@ Are you sure you want to continue?" "Select the quality of the video you want to upload." "Select video upload quality" "You\'re already logged in on this device as %1$s." - "Your homeserver needs to be upgraded to support Matrix Authentication Service and account creation." + "Your account provider needs to be upgraded to support Matrix Authentication Service and account creation." "Failed creating the permalink" "%1$s could not load the map. Please try again later." "Failed loading messages" diff --git a/plugins/src/main/kotlin/extension/locales.kt b/plugins/src/main/kotlin/extension/locales.kt index 2774b078b5..870d8cc234 100644 --- a/plugins/src/main/kotlin/extension/locales.kt +++ b/plugins/src/main/kotlin/extension/locales.kt @@ -3,6 +3,7 @@ package extension val locales = setOf( + "ar", "be", "bg", "ca", diff --git a/screenshots/de/appnav.loggedin_LoggedInView_Day_1_de.png b/screenshots/de/appnav.loggedin_LoggedInView_Day_1_de.png index 2416ce2042..30953e208d 100644 --- a/screenshots/de/appnav.loggedin_LoggedInView_Day_1_de.png +++ b/screenshots/de/appnav.loggedin_LoggedInView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e264fe76880205d7f2af559be83af145b0f3e93f0a0a5efc2ca5125b5ee5869a -size 9416 +oid sha256:eb8ee654d1ff57069f3542367e584491db487fc55f36a3edf97e7b03bd675a4c +size 9987 diff --git a/screenshots/de/appnav.loggedin_LoggedInView_Day_2_de.png b/screenshots/de/appnav.loggedin_LoggedInView_Day_2_de.png index 57d2444aac..a3cf18bce1 100644 --- a/screenshots/de/appnav.loggedin_LoggedInView_Day_2_de.png +++ b/screenshots/de/appnav.loggedin_LoggedInView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a2ba06cfb719c229477ccd6b41d6203deb6085a2551d2526df44ee90fde27af7 -size 37773 +oid sha256:f7ddc48754c550ccf64ab3d0931bf080b60ea45be2709f1f1e9a49d78e267ccf +size 10234 diff --git a/screenshots/de/appnav.loggedin_LoggedInView_Day_3_de.png b/screenshots/de/appnav.loggedin_LoggedInView_Day_3_de.png index 1fad80f81b..57d2444aac 100644 --- a/screenshots/de/appnav.loggedin_LoggedInView_Day_3_de.png +++ b/screenshots/de/appnav.loggedin_LoggedInView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c1dc35c8461b2dcb92ee999509c29147c427937e32f0dfcc27cea415ebf7fd8f -size 26842 +oid sha256:a2ba06cfb719c229477ccd6b41d6203deb6085a2551d2526df44ee90fde27af7 +size 37773 diff --git a/screenshots/de/appnav.loggedin_LoggedInView_Day_4_de.png b/screenshots/de/appnav.loggedin_LoggedInView_Day_4_de.png index b9398c2706..1fad80f81b 100644 --- a/screenshots/de/appnav.loggedin_LoggedInView_Day_4_de.png +++ b/screenshots/de/appnav.loggedin_LoggedInView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2c9bd18c9b847515945f2036ccfa9a19a5641364a0d9d8f72dbd501fbc6ef1f2 -size 33670 +oid sha256:c1dc35c8461b2dcb92ee999509c29147c427937e32f0dfcc27cea415ebf7fd8f +size 26842 diff --git a/screenshots/de/appnav.loggedin_LoggedInView_Day_5_de.png b/screenshots/de/appnav.loggedin_LoggedInView_Day_5_de.png index 622e68f33b..02ec7e206d 100644 --- a/screenshots/de/appnav.loggedin_LoggedInView_Day_5_de.png +++ b/screenshots/de/appnav.loggedin_LoggedInView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8a7f7c7c37fade606ac7bb5d9fb81750b9c3c0cfd72ffeb5fe4d1b480bb565f5 -size 34728 +oid sha256:0d8fdfd0ecb098d46cb674fbcbfe4de9eda44135b05abee608771d40a86b5513 +size 44099 diff --git a/screenshots/de/appnav.loggedin_LoggedInView_Day_6_de.png b/screenshots/de/appnav.loggedin_LoggedInView_Day_6_de.png new file mode 100644 index 0000000000..990d70d098 --- /dev/null +++ b/screenshots/de/appnav.loggedin_LoggedInView_Day_6_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3fe226e6b68008c0c7573ea9c9a2bbf71a5d38d43b829f1c6d7e21bf43a7aaea +size 45002 diff --git a/screenshots/de/appnav.loggedin_SyncStateViewServerUnreachable_Day_0_de.png b/screenshots/de/appnav.loggedin_SyncStateViewServerUnreachable_Day_0_de.png new file mode 100644 index 0000000000..b37341a2c8 --- /dev/null +++ b/screenshots/de/appnav.loggedin_SyncStateViewServerUnreachable_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c19098bcd67a6c9af17cd25c3a2a32695f86ae5dbde65de1f96710a9ec8acbe9 +size 10461 diff --git a/screenshots/de/appnav.loggedin_SyncStateView_Day_0_de.png b/screenshots/de/appnav.loggedin_SyncStateView_Day_0_de.png index 293ef30c82..7f59fe8204 100644 --- a/screenshots/de/appnav.loggedin_SyncStateView_Day_0_de.png +++ b/screenshots/de/appnav.loggedin_SyncStateView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e256afdb07f9f4aa914bceb4cb0deb7b38ded698432a254fffb48af48a583429 -size 9858 +oid sha256:0862ec7cb72ee4beb2a5a0f37afc9126b6e3ad5fc66f6e2f9f2690a242f8ff57 +size 10359 diff --git a/screenshots/de/features.analytics.impl_AnalyticsOptInView_Day_0_de.png b/screenshots/de/features.analytics.impl_AnalyticsOptInView_Day_0_de.png index e01a6c204f..bc9f1fd13f 100644 --- a/screenshots/de/features.analytics.impl_AnalyticsOptInView_Day_0_de.png +++ b/screenshots/de/features.analytics.impl_AnalyticsOptInView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2f97140e7b2253fc19655ec678b2181a3ceb16d1b7d45c99f8c6ad227fe4309d -size 83803 +oid sha256:bd9bd16091d5d27d71795ab915b538e95bec719faa91f9ef79b2cefb49d2279e +size 83768 diff --git a/screenshots/de/features.analytics.impl_AnalyticsOptInView_Day_1_de.png b/screenshots/de/features.analytics.impl_AnalyticsOptInView_Day_1_de.png index b088635a2f..173164568b 100644 --- a/screenshots/de/features.analytics.impl_AnalyticsOptInView_Day_1_de.png +++ b/screenshots/de/features.analytics.impl_AnalyticsOptInView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3b9ba02266f44a4e73dfed54bd429aad8c9a8ee3813075d643a906cab0951d56 -size 85850 +oid sha256:00ed8b6a0d31858a3d35793f91ff947ef57a946f48f63a442e177543a7a4cf19 +size 85811 diff --git a/screenshots/de/features.call.impl.ui_CallScreenView_Day_1_de.png b/screenshots/de/features.call.impl.ui_CallScreenView_Day_1_de.png index 0028da9e61..0f00bf00ca 100644 --- a/screenshots/de/features.call.impl.ui_CallScreenView_Day_1_de.png +++ b/screenshots/de/features.call.impl.ui_CallScreenView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dbbc3c3584bfb4728874725f8572122f92852f1ce0bf36b4d54d77e41ca5b6ec -size 11698 +oid sha256:80830c2e8b053907814e4aab27d429295208178066f5d628d2d25221c24cc54e +size 11584 diff --git a/screenshots/de/features.createroom.impl.addpeople_AddPeopleView_Day_0_de.png b/screenshots/de/features.createroom.impl.addpeople_AddPeopleView_Day_0_de.png index 091f620f2f..1fbc6f60f5 100644 --- a/screenshots/de/features.createroom.impl.addpeople_AddPeopleView_Day_0_de.png +++ b/screenshots/de/features.createroom.impl.addpeople_AddPeopleView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c45efbd244febea8ae05c973013d5ef900bb1c1f101a5377d807dc3df362f0a9 -size 12762 +oid sha256:1a30a3566fd688523079a7437a91a7a0de12347ca08d409aeb9d58692abe1309 +size 13470 diff --git a/screenshots/de/features.createroom.impl.addpeople_AddPeopleView_Day_1_de.png b/screenshots/de/features.createroom.impl.addpeople_AddPeopleView_Day_1_de.png index 41435ce88f..31945aa802 100644 --- a/screenshots/de/features.createroom.impl.addpeople_AddPeopleView_Day_1_de.png +++ b/screenshots/de/features.createroom.impl.addpeople_AddPeopleView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2e212bfac85e5f9026eeba5b870e765b8707d56c9d74548c23b50375c3261ad1 -size 13267 +oid sha256:0048c95ee8b2d03738325fff522bcf6832ce0dbbcf8aedf52be9a887addc5b79 +size 13987 diff --git a/screenshots/de/features.createroom.impl.addpeople_AddPeopleView_Day_2_de.png b/screenshots/de/features.createroom.impl.addpeople_AddPeopleView_Day_2_de.png index 091f620f2f..1fbc6f60f5 100644 --- a/screenshots/de/features.createroom.impl.addpeople_AddPeopleView_Day_2_de.png +++ b/screenshots/de/features.createroom.impl.addpeople_AddPeopleView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c45efbd244febea8ae05c973013d5ef900bb1c1f101a5377d807dc3df362f0a9 -size 12762 +oid sha256:1a30a3566fd688523079a7437a91a7a0de12347ca08d409aeb9d58692abe1309 +size 13470 diff --git a/screenshots/de/features.createroom.impl.addpeople_AddPeopleView_Day_3_de.png b/screenshots/de/features.createroom.impl.addpeople_AddPeopleView_Day_3_de.png index 091f620f2f..1fbc6f60f5 100644 --- a/screenshots/de/features.createroom.impl.addpeople_AddPeopleView_Day_3_de.png +++ b/screenshots/de/features.createroom.impl.addpeople_AddPeopleView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c45efbd244febea8ae05c973013d5ef900bb1c1f101a5377d807dc3df362f0a9 -size 12762 +oid sha256:1a30a3566fd688523079a7437a91a7a0de12347ca08d409aeb9d58692abe1309 +size 13470 diff --git a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_0_de.png b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_0_de.png index 9ac001a34b..5e6a6153de 100644 --- a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_0_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2c58f8296161ff4699a28acf0b4409b6eb7fa1e505bc251f7c082a493e90d2bc -size 33426 +oid sha256:c2f98c03e9fd49240eae3b52cc5019a82d4432b0c7a437cd20110e4aa7650679 +size 32761 diff --git a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_1_de.png b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_1_de.png index a26ea2745d..8656369a3b 100644 --- a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_1_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0c7a002588018df26c32908aa3fa6ad000176f02c06e2c9a311d241074b4eae6 -size 36216 +oid sha256:f46ae64f4ae596f2c02ce2d72129692c17209865915e48a7587e5497ed707c85 +size 35576 diff --git a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_2_de.png b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_2_de.png index 21fbc44c5c..d02f027984 100644 --- a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_2_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:331290f18bec6b21d9201da590be72620cef472d53ec7b7f36affec7b487a823 -size 45054 +oid sha256:15445dc3079a7546815e2af446e46b92c6c9ece416b8cd4fb9dd772b6e2da72a +size 44405 diff --git a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_3_de.png b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_3_de.png index 61f5521cf0..cb1e45241b 100644 --- a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_3_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f4d4cf90366a2a4567c90749b5c472ef961d88def03961c80ce70d8af3c9118b -size 46078 +oid sha256:0ce7734940cdcbeb4ef5b3686c36d4c4ad839749f21f6ddda6aa76a0b826f224 +size 45433 diff --git a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_4_de.png b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_4_de.png index 0269967832..6e4daac855 100644 --- a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_4_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6ce6ae126656b0d52df817981b01a7bc2a79406cd6772b9370087ceae4fcec7b -size 47535 +oid sha256:dce128620644338ae27319b4a173d2fd52679a49469548737b4adc37faee929e +size 46886 diff --git a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_5_de.png b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_5_de.png index 21fbc44c5c..d02f027984 100644 --- a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_5_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:331290f18bec6b21d9201da590be72620cef472d53ec7b7f36affec7b487a823 -size 45054 +oid sha256:15445dc3079a7546815e2af446e46b92c6c9ece416b8cd4fb9dd772b6e2da72a +size 44405 diff --git a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_6_de.png b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_6_de.png index 91d6cd4ccd..a19a212e26 100644 --- a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_6_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e71aa05c73ce1a9ef184775600d6b395ebbfb8492536204395bca86b1ede3204 -size 45966 +oid sha256:6a2704626cef7a1a802a83404c7e34c54408dd4e1af3146fa627cea0542c19f3 +size 45194 diff --git a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_7_de.png b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_7_de.png index e6029f88e9..15c39b6337 100644 --- a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_7_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ae25d75c2b4df98cef09460ef6575193b90b78e8d3d9b201a2341937afb3957a -size 40923 +oid sha256:2a1a938029ab123b5938bac5eea6b19ea9b6d7d0d15042eda65ef16ba00efbb8 +size 40294 diff --git a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_8_de.png b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_8_de.png index 44a1b1d2c2..cad783dfc4 100644 --- a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_8_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewDark_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5bc48ce2eae062d624f0ed6c9d53b37ab1366ec9317ccff473a95ebd6c02f998 -size 40775 +oid sha256:775a2658a13da8dd4bad625ad06a1a2af897f42df287db244cde2219aebab9e8 +size 40881 diff --git a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_0_de.png b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_0_de.png index 486d94521f..f7eff3f007 100644 --- a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_0_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c77d9c1fa53bf4bbb401a9abce45a9649e5f0aa9357852db84be3ab5ee88b3b2 -size 34581 +oid sha256:66df386ebf6fa07ad2969dbd55c4b66cf5b22d550a0e5eb742084a950aec2a8a +size 33886 diff --git a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_1_de.png b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_1_de.png index 5edac70588..3906ce07a5 100644 --- a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_1_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9bfbfb92dadb996c13eb33d0f37de4efe55df8e0f4011a0cb731dc4c3b6d095d -size 37674 +oid sha256:3727bc1edf7bfeb57eda29213d0d87cde177351716f4550a84b5fac5ab07b15b +size 36970 diff --git a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_2_de.png b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_2_de.png index d991974c02..900936396f 100644 --- a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_2_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ed5d241ee370a5443bbe3509b129d4d9c1d281c1bfc91a77d5ef630541a44c7c -size 46945 +oid sha256:203c125e3eb1bd65903d8cc4c502a85d36cd244ede4897e24fdad7b045d2b4e1 +size 46251 diff --git a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_3_de.png b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_3_de.png index fbcddc1cc0..97fd42d1c6 100644 --- a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_3_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a1b78daaa5a799b201f7104f99bbc667af2c936f3609e43fbb4d2212340b9fd9 -size 47987 +oid sha256:34d7027b1cca4cc0b0088b5b0c5ac7be3d96542ad78368b7e934bd3dba03271d +size 47296 diff --git a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_4_de.png b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_4_de.png index 94ae4546df..7c6ff5c0be 100644 --- a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_4_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e79218b5419c3369e205b760b716d1d2e75b86a8d1e0c096515786985c420e30 -size 49543 +oid sha256:237287feb43d8b04e8e2fc0c1f70474b21d72a50544142435f7c68b56d0822d6 +size 48858 diff --git a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_5_de.png b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_5_de.png index d991974c02..900936396f 100644 --- a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_5_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ed5d241ee370a5443bbe3509b129d4d9c1d281c1bfc91a77d5ef630541a44c7c -size 46945 +oid sha256:203c125e3eb1bd65903d8cc4c502a85d36cd244ede4897e24fdad7b045d2b4e1 +size 46251 diff --git a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_6_de.png b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_6_de.png index d3db0cb4e8..8dadb8a9bd 100644 --- a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_6_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7fc4d8a1e103ae18082cfa8b0ca91d9c41e04f31bdff2c26435462b150920528 -size 47931 +oid sha256:2c0ccd6bc87fc603dcc3870e97349a565f934d7d0445437019953e7b3c3e2b00 +size 47144 diff --git a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_7_de.png b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_7_de.png index 8dd5a437f5..be5e4318a5 100644 --- a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_7_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5a4769839422b683f76620b33f35faacb26874638d602632803b577786757d5a -size 42690 +oid sha256:34457733676670224c6f903fd1b3658da6fe21e7742a016e85d30ef3f799f26c +size 42011 diff --git a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_8_de.png b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_8_de.png index fc734c6d20..0c150001a4 100644 --- a/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_8_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_ConfigureRoomViewLight_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d66cb07e8dae1e9abbe1fdd8edacaa7fdbb08c510f8be71d75b3d38e9fb77589 -size 42495 +oid sha256:4c1448a2001a8ce1916ffde414cf0c0fdc27946207044dfeeae895b904ed9396 +size 42593 diff --git a/screenshots/de/features.createroom.impl.configureroom_SelectParentSpaceBottomSheet_Day_0_de.png b/screenshots/de/features.createroom.impl.configureroom_SelectParentSpaceBottomSheet_Day_0_de.png index 248c8d243e..73f0088875 100644 --- a/screenshots/de/features.createroom.impl.configureroom_SelectParentSpaceBottomSheet_Day_0_de.png +++ b/screenshots/de/features.createroom.impl.configureroom_SelectParentSpaceBottomSheet_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8ddee4c6ceb4adf8e349e3b672c4b25ceba38bcb34bf29b7b675687e3d81406a -size 27203 +oid sha256:ee154d7e754dec91de6a6b0f057022310cb38f3e812618dbcc225d65d12a1705 +size 27535 diff --git a/screenshots/de/features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_4_de.png b/screenshots/de/features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_4_de.png index 5697209279..193a73825b 100644 --- a/screenshots/de/features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_4_de.png +++ b/screenshots/de/features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:15bba5407bbda9070cf2109165e4fb9455450c8d6dd504dea7b521640fcfa48d -size 33229 +oid sha256:965eefd18d8895826886f72944adaf4b393cb4535420797ede25a66daa52548c +size 34468 diff --git a/screenshots/de/features.home.impl.components_HomeTopBarMultiAccount_Day_0_de.png b/screenshots/de/features.home.impl.components_HomeTopBarMultiAccount_Day_0_de.png index 509002e39e..8530c0b14a 100644 --- a/screenshots/de/features.home.impl.components_HomeTopBarMultiAccount_Day_0_de.png +++ b/screenshots/de/features.home.impl.components_HomeTopBarMultiAccount_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8c04a87e2bfff2888d4cddbdb387012e2df962cc25004b8b05f4d40047e86e10 -size 21898 +oid sha256:06f0af2fea4f73edc3be92762fb487215363ab9fe9e31ab6544dfbf6662c7866 +size 22634 diff --git a/screenshots/de/features.home.impl.components_HomeTopBarWithIndicator_Day_0_de.png b/screenshots/de/features.home.impl.components_HomeTopBarWithIndicator_Day_0_de.png index 6bd6a13260..439044f853 100644 --- a/screenshots/de/features.home.impl.components_HomeTopBarWithIndicator_Day_0_de.png +++ b/screenshots/de/features.home.impl.components_HomeTopBarWithIndicator_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f77d3aca5f2b32259e69b62c131ad130d46fa80a292b593a07c082662ee8dadf -size 22332 +oid sha256:19604ee80df0ac3570d68d1969db706df2331af2f6c879e8332e8925a5ac419b +size 23082 diff --git a/screenshots/de/features.home.impl.components_HomeTopBarWithStatus_Day_0_de.png b/screenshots/de/features.home.impl.components_HomeTopBarWithStatus_Day_0_de.png new file mode 100644 index 0000000000..be59ac3a24 --- /dev/null +++ b/screenshots/de/features.home.impl.components_HomeTopBarWithStatus_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b188de149726496c883ce53158897b2f14852cdd0195f619d7ac20096903dd22 +size 23612 diff --git a/screenshots/de/features.home.impl.components_HomeTopBar_Day_0_de.png b/screenshots/de/features.home.impl.components_HomeTopBar_Day_0_de.png index 3494a59de7..7001e6bcbd 100644 --- a/screenshots/de/features.home.impl.components_HomeTopBar_Day_0_de.png +++ b/screenshots/de/features.home.impl.components_HomeTopBar_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e7642e870eb401023a2bf92831d4a504f0ab27f72b32273faf5159486721cd1c -size 22013 +oid sha256:92d5b4984d49e1cef2d2e337c45d4062d5b50620d835d35fb19a71288fbdadfd +size 22741 diff --git a/screenshots/de/features.home.impl.components_RoomListContentView_Day_1_de.png b/screenshots/de/features.home.impl.components_RoomListContentView_Day_1_de.png index 3831c4781f..d853d3861d 100644 --- a/screenshots/de/features.home.impl.components_RoomListContentView_Day_1_de.png +++ b/screenshots/de/features.home.impl.components_RoomListContentView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6731957012c9e944000d683d5d2c4adb52e9e1125efc91dd6fa1a2fcba7b0202 -size 18393 +oid sha256:d181b0fe588007bd9b1bc7a7792350d0e7f4ad2d09e15f85f09c7a9eb2d19c0f +size 17654 diff --git a/screenshots/de/features.home.impl.components_RoomListContentView_Day_4_de.png b/screenshots/de/features.home.impl.components_RoomListContentView_Day_4_de.png index eecc5692c4..971d7c32a0 100644 --- a/screenshots/de/features.home.impl.components_RoomListContentView_Day_4_de.png +++ b/screenshots/de/features.home.impl.components_RoomListContentView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3d80e64f2206d9d21b3467ea4a7d5b06a33391cd56b5d899f944e7bd501b1743 -size 64430 +oid sha256:2d67ac5267c11ea8ef14f36637621916acbe718386cbe35411d0aec9d529cab2 +size 62308 diff --git a/screenshots/de/features.home.impl.components_RoomSummaryRow_Day_33_de.png b/screenshots/de/features.home.impl.components_RoomSummaryRow_Day_33_de.png index a58e12026b..0baab42d1d 100644 --- a/screenshots/de/features.home.impl.components_RoomSummaryRow_Day_33_de.png +++ b/screenshots/de/features.home.impl.components_RoomSummaryRow_Day_33_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:36df349010c6f911cd7b31a0d78fa03496fa6ef696bd861280f3d5f3f83dda67 -size 12951 +oid sha256:37130a8da2c4cd7cfa8fab999e64950bc9ee047745467863dd612e5a31475cfe +size 12558 diff --git a/screenshots/de/features.home.impl.components_RoomSummaryRow_Day_34_de.png b/screenshots/de/features.home.impl.components_RoomSummaryRow_Day_34_de.png index da43f35e5b..dce1a42b4f 100644 --- a/screenshots/de/features.home.impl.components_RoomSummaryRow_Day_34_de.png +++ b/screenshots/de/features.home.impl.components_RoomSummaryRow_Day_34_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:998385b7ca4f58e312ee087c8a8a5a36bfeafd397bfc47943df3d7cf6106ec90 -size 18283 +oid sha256:00413bcb25df7a720b26a80b6d30e1b3b6e0b27d7b00724bf7786baf8b24f005 +size 17887 diff --git a/screenshots/de/features.home.impl.components_SetUpRecoveryKeyBanner_Day_0_de.png b/screenshots/de/features.home.impl.components_SetUpRecoveryKeyBanner_Day_0_de.png index 34f49e1141..3181410bf0 100644 --- a/screenshots/de/features.home.impl.components_SetUpRecoveryKeyBanner_Day_0_de.png +++ b/screenshots/de/features.home.impl.components_SetUpRecoveryKeyBanner_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a8bb68b889c934425bb53b0b923ddd86c5a6e9309dfb7d06505b986521ab75e7 -size 52580 +oid sha256:a7e2ee1ed203273283f7b337c0c8b2c8ce86834849021c4256ab3a8da7a36e51 +size 50453 diff --git a/screenshots/de/features.home.impl.roomlist_RoomListContextMenu_Day_0_de.png b/screenshots/de/features.home.impl.roomlist_RoomListContextMenu_Day_0_de.png index 8f3a836ac6..f9dc8f1496 100644 --- a/screenshots/de/features.home.impl.roomlist_RoomListContextMenu_Day_0_de.png +++ b/screenshots/de/features.home.impl.roomlist_RoomListContextMenu_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f7cb9b43a0a77152c0f60b8b43a14432a00b4223a28986b72c5d47628d9a98bd -size 23862 +oid sha256:a7d600a9691b305b8b45257f53202dd19b194e4232ddabc2c51f28b8f47328f8 +size 26040 diff --git a/screenshots/de/features.home.impl.roomlist_RoomListContextMenu_Day_1_de.png b/screenshots/de/features.home.impl.roomlist_RoomListContextMenu_Day_1_de.png index 4c8daf31e4..8294956020 100644 --- a/screenshots/de/features.home.impl.roomlist_RoomListContextMenu_Day_1_de.png +++ b/screenshots/de/features.home.impl.roomlist_RoomListContextMenu_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0529da9be83a2c70b047546c24cced97414085962e94d196b40e375af6bdf66f -size 25581 +oid sha256:90c7fa383bcc64d1b6f650fec4de481da93f6b77141ae9e2ad5a319c81f7ce59 +size 26395 diff --git a/screenshots/de/features.home.impl.roomlist_RoomListContextMenu_Day_2_de.png b/screenshots/de/features.home.impl.roomlist_RoomListContextMenu_Day_2_de.png index 5dcde5087f..477e9dd915 100644 --- a/screenshots/de/features.home.impl.roomlist_RoomListContextMenu_Day_2_de.png +++ b/screenshots/de/features.home.impl.roomlist_RoomListContextMenu_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:be937bddaba2650337a9acec496ff2654c59d1f6e493100126779b31265e9eb5 -size 27764 +oid sha256:0e52cc6114f838a74d0f9556e2ea32766056729b83a766554e64c3bfd3e2960e +size 28570 diff --git a/screenshots/de/features.home.impl.roomlist_RoomListDeclineInviteMenu_Day_0_de.png b/screenshots/de/features.home.impl.roomlist_RoomListDeclineInviteMenu_Day_0_de.png index 67b0361c5c..bf673666bf 100644 --- a/screenshots/de/features.home.impl.roomlist_RoomListDeclineInviteMenu_Day_0_de.png +++ b/screenshots/de/features.home.impl.roomlist_RoomListDeclineInviteMenu_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:26a5736c3ce48028bde69a7f029ffaed5d18e490b32fbb455d35d89f90f7e169 -size 30385 +oid sha256:cf8903b8bb69db6d26f7c41caeb5af6ca72e57b617691408e73450e0f89980f8 +size 28652 diff --git a/screenshots/de/features.home.impl.roomlist_RoomListDeclineInviteMenu_Day_1_de.png b/screenshots/de/features.home.impl.roomlist_RoomListDeclineInviteMenu_Day_1_de.png index c39d87d73c..df5e8328ab 100644 --- a/screenshots/de/features.home.impl.roomlist_RoomListDeclineInviteMenu_Day_1_de.png +++ b/screenshots/de/features.home.impl.roomlist_RoomListDeclineInviteMenu_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9caedf891866305599b0cc1887f46fc2ae7e0c6ca903860df247eb48eadf3708 -size 45796 +oid sha256:d41250b860008767d9d26fef4e1ed6f72905941a6dc86211876be900a883759a +size 43755 diff --git a/screenshots/de/features.home.impl.roomlist_RoomListDeclineInviteMenu_Day_2_de.png b/screenshots/de/features.home.impl.roomlist_RoomListDeclineInviteMenu_Day_2_de.png index 950a33e731..2b9b5f0cf5 100644 --- a/screenshots/de/features.home.impl.roomlist_RoomListDeclineInviteMenu_Day_2_de.png +++ b/screenshots/de/features.home.impl.roomlist_RoomListDeclineInviteMenu_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:469c3186032dae6ed8d4203277b9a45d5c5f648e7688a5a6804231ac648daef4 -size 30940 +oid sha256:e50bc6cc0ddcb7db5b6363a25e7c767e61fcb06154c7ef6a195ce5e212b30a0f +size 29165 diff --git a/screenshots/de/features.home.impl.spaces_HomeSpacesView_Day_0_de.png b/screenshots/de/features.home.impl.spaces_HomeSpacesView_Day_0_de.png index 9114db106e..ddd71abfd8 100644 --- a/screenshots/de/features.home.impl.spaces_HomeSpacesView_Day_0_de.png +++ b/screenshots/de/features.home.impl.spaces_HomeSpacesView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ed39d041acd3bb008f20f567b93fa01217dbbe075d198a213b9058351d198118 -size 85682 +oid sha256:ae1cfbcdb08f886d2d93308f12d0ba0cd516a4d576d92c7358daa737c8538346 +size 84909 diff --git a/screenshots/de/features.home.impl.spaces_HomeSpacesView_Day_1_de.png b/screenshots/de/features.home.impl.spaces_HomeSpacesView_Day_1_de.png index 1a7a7bfa89..9c23774b7e 100644 --- a/screenshots/de/features.home.impl.spaces_HomeSpacesView_Day_1_de.png +++ b/screenshots/de/features.home.impl.spaces_HomeSpacesView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1fe768ccb0272e435f42ba94c6b15ed3b6703f32385a307def2040f703b3ba0a -size 38119 +oid sha256:d45f2d1aa559f9ba393329d1bc0a6d42502eedff0bfb18ded4bdbc703c16d404 +size 37273 diff --git a/screenshots/de/features.home.impl.spaces_HomeSpacesView_Day_2_de.png b/screenshots/de/features.home.impl.spaces_HomeSpacesView_Day_2_de.png index f0e44135ec..14ff7444fc 100644 --- a/screenshots/de/features.home.impl.spaces_HomeSpacesView_Day_2_de.png +++ b/screenshots/de/features.home.impl.spaces_HomeSpacesView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c7f97df762e010742fb2627a83e0939f4e190195200c53004412e01c6361cb43 -size 28480 +oid sha256:56fe0424a272467c2773353a96d6ecc30aa6b5bc971240a503b92539be50ed68 +size 25560 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 7a78ab01dc..a692ffcd92 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:b9c0e16d5506092e20da1413016148110a5509b4f1a906d22967a59171770443 -size 69777 +oid sha256:71d92f3f09d6cb7947775540bb3d80da4580fa87e70d939c8cba40ef0be557fc +size 70431 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 4a1b203d2a..b3283e66a1 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:b1f61b44eadaaccb0ad9f1bb244b7c0a7c4ee1e24b88b78a4bff0d4b41d66401 -size 39625 +oid sha256:2209d00723f6f3f3a7484c759fcd43c6a098f9432bce2c5d6e3740133a2d3cc8 +size 40301 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 53e115bc5a..6244863296 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:53d6acbc84bc668a38789626e17f9ffa288b3ef9b4911a18dfd93d24d5ec5b35 -size 99809 +oid sha256:be7f3c44d0eb65d0016550d4b522b849d7bda4904fc5b3ee68fe7b68f9126e08 +size 98333 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 f845f2e13f..7da5e5cf4b 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:64771726d8c2436f1478c503991176d2f675b21fa36c9228bf18976f73034b7c -size 91946 +oid sha256:cef1715722b7d0a57e1f505b626e6272b406cb29d2ac342589c26e89808a877a +size 92632 diff --git a/screenshots/de/features.home.impl_HomeView_Day_15_de.png b/screenshots/de/features.home.impl_HomeView_Day_15_de.png index 510b419a08..1616e8a6ed 100644 --- a/screenshots/de/features.home.impl_HomeView_Day_15_de.png +++ b/screenshots/de/features.home.impl_HomeView_Day_15_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:21cdc577a1177a8919afaf4d7d0cba5ca9ca9ee2538645145f022aaa3778d958 -size 59512 +oid sha256:5d668fcbdd3e5bb9b99182650d88674ca320b3ac485039afbde883ce0b55a23a +size 60160 diff --git a/screenshots/de/features.home.impl_HomeView_Day_16_de.png b/screenshots/de/features.home.impl_HomeView_Day_16_de.png index 316e974912..d0e0264e38 100644 --- a/screenshots/de/features.home.impl_HomeView_Day_16_de.png +++ b/screenshots/de/features.home.impl_HomeView_Day_16_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b8f03c1ef30c115873d0757602f689362bb0a442658d44e8108b1b87e5134f4f -size 46217 +oid sha256:26062fe81721471a8c83f3fc6b94b57380695fe3d4621ffb08c8a4ade9c625dd +size 40653 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 7a78ab01dc..a692ffcd92 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:b9c0e16d5506092e20da1413016148110a5509b4f1a906d22967a59171770443 -size 69777 +oid sha256:71d92f3f09d6cb7947775540bb3d80da4580fa87e70d939c8cba40ef0be557fc +size 70431 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 7a78ab01dc..a692ffcd92 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:b9c0e16d5506092e20da1413016148110a5509b4f1a906d22967a59171770443 -size 69777 +oid sha256:71d92f3f09d6cb7947775540bb3d80da4580fa87e70d939c8cba40ef0be557fc +size 70431 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 9520da70ed..049af37d58 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:1a025368b62aa4bd6fb915a7f52b42acee43e73a0291126eb52440c29e9d8162 -size 64511 +oid sha256:37e979625ce7262e3de30abbfe98004f5e3380a705dd38d22912704a707cfe34 +size 65193 diff --git a/screenshots/de/features.home.impl_HomeView_Day_4_de.png b/screenshots/de/features.home.impl_HomeView_Day_4_de.png index 22c21d8384..f2e9dfcfcd 100644 --- a/screenshots/de/features.home.impl_HomeView_Day_4_de.png +++ b/screenshots/de/features.home.impl_HomeView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:eaa2cf678000a055ecb900430c4c7986af97e365df42ac17682b6525febbbe25 -size 57680 +oid sha256:ec6b7dbefdc5cc5d899887f01e4200c201f1f34133a8136cc27af123a0a73210 +size 54761 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 7a78ab01dc..a692ffcd92 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:b9c0e16d5506092e20da1413016148110a5509b4f1a906d22967a59171770443 -size 69777 +oid sha256:71d92f3f09d6cb7947775540bb3d80da4580fa87e70d939c8cba40ef0be557fc +size 70431 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 15a1f1784c..f30caeb9f9 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:a9602bb99e322103e2683071d177f8aa892d06d97b877674ed436f8149ab54f2 -size 58396 +oid sha256:a9d91b29e7d9034837a980ab78a80fa8bc15038c9b1df1c5595d91a2d95c0e77 +size 59871 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 4ba188a84d..ba7cb46db2 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:401cdff29a3252f9d195f945556671924a685afedaf2efb4959a43c41be764b9 -size 57630 +oid sha256:d254f71ca7a1309fbf46602592275e4b62e1dd83b09c1939065351e16ab979ec +size 59107 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 94e960f0d7..193325d956 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:4e65413390340fbc4a38d19c4e1dee7197ed7274b40df911d8b9842d8d077d61 -size 56339 +oid sha256:1d09f39bc7965d3cb450a26d49d7bae131bc2a06fe53975f2032f17d3e825ef3 +size 57812 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 6465fe66b3..8742726cfc 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:35b33bec36e7731a2aea269b1a3c1b3e1506855f4f75fcf0ef0745a9165d140a -size 93077 +oid sha256:2df4b6550481a85fb9b2ba9a4affff1f76abbb3e59a955542bbb5c657b43f03b +size 93746 diff --git a/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_1_de.png b/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_1_de.png index 5fb0408a49..f61f3a190d 100644 --- a/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_1_de.png +++ b/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d20416987d2485431b66ebb29af1f03efa2e04da7ef5875eda62d7c5e187052b -size 24828 +oid sha256:bba3d19917c2378fc41c5141bacadf98424bf737441bb09f5bc3029d6b1728ce +size 23173 diff --git a/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_2_de.png b/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_2_de.png index 4aa0388c8a..82d03d8086 100644 --- a/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_2_de.png +++ b/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:62d531d6b01266019e2fa686321e93d64bcffd5b1786f7ad4efac83fcc2a2fc5 -size 32141 +oid sha256:4f3cf0bbdae6c849c7bad5e8a9c355229edf26e10ff19c150c9db51484210880 +size 30306 diff --git a/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_3_de.png b/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_3_de.png index e6ac068619..9b1e36a4c6 100644 --- a/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_3_de.png +++ b/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:70ec50abd627da1d44241d6936bdf309b443aa782e590cb81655186898792ae1 -size 21947 +oid sha256:b0622e14aa175c909e859965ba8c7aacc538d2e92722444965f2a9d423c3a167 +size 21965 diff --git a/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_4_de.png b/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_4_de.png index 8754575550..f13f89eec1 100644 --- a/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_4_de.png +++ b/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:620363a303b7ec3691408e293550354ac5b48f560a431daada00a8a6d589bf3d -size 21758 +oid sha256:6223cbc9da1d437f597912d6bae155343b57e748c973a3b6134c4d3f2c8ceb47 +size 21775 diff --git a/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_5_de.png b/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_5_de.png index e6ac068619..9b1e36a4c6 100644 --- a/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_5_de.png +++ b/screenshots/de/features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:70ec50abd627da1d44241d6936bdf309b443aa782e590cb81655186898792ae1 -size 21947 +oid sha256:b0622e14aa175c909e859965ba8c7aacc538d2e92722444965f2a9d423c3a167 +size 21965 diff --git a/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_0_de.png b/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_0_de.png index 8f843e19f7..573fccabe3 100644 --- a/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_0_de.png +++ b/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4488f516559fbbe0a4ddee9702e33429b68e5aaed2be38fc5ded310ba7974287 -size 37517 +oid sha256:e808d44e86a8585b38abc2dd1d09c9f8338b6d74b57509988beaef53a839221e +size 37414 diff --git a/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_1_de.png b/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_1_de.png index 2027873104..519f2a010b 100644 --- a/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_1_de.png +++ b/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:895117e26de7f333adaffa364a613c908dfa6b82857006dae97f7e35d3f9089e -size 42191 +oid sha256:2a5fa47c766890d2ad042b56b723e24a5be887db7bf8536113677143231a1805 +size 42073 diff --git a/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_2_de.png b/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_2_de.png index 9b9f3c1eb0..9176b7529d 100644 --- a/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_2_de.png +++ b/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9743b612280b496a466a2ce6c691e57c9a02fecd6775311e3a91f584dad45d2f -size 37709 +oid sha256:4acf946514597083d5b665efa52198a0e0361d42175d7f96c6567071cc979a94 +size 37604 diff --git a/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_3_de.png b/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_3_de.png index 543d032e3b..c7e255c84f 100644 --- a/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_3_de.png +++ b/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:53d543a9065afbd496d16b08f2b1102d67156a8cdd0e64bc9001275c863be182 -size 33343 +oid sha256:99f681d4b06ab6914893493e79bb24466c9290638bbd046e68be821b47c74ac1 +size 33287 diff --git a/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_4_de.png b/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_4_de.png index 0c9392b1cf..3eb083298e 100644 --- a/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_4_de.png +++ b/screenshots/de/features.invite.impl.declineandblock_DeclineAndBlockView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4707c13a4138eda087301ed08a07165ec341ba509c05be05210a0dc4fd339e74 -size 38155 +oid sha256:b931278536e42e66dad34a8f5dee4f76a912796ed71d2ec450679025d02d9b45 +size 38131 diff --git a/screenshots/de/features.joinroom.impl_JoinRoomView_Day_13_de.png b/screenshots/de/features.joinroom.impl_JoinRoomView_Day_13_de.png index c462af8f15..aaa9113c81 100644 --- a/screenshots/de/features.joinroom.impl_JoinRoomView_Day_13_de.png +++ b/screenshots/de/features.joinroom.impl_JoinRoomView_Day_13_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:656ed057f7bc7d389f0215e30f7098fae94c09da14f605899072e656ebf6fbe3 -size 33883 +oid sha256:49f2123752172e5b42f4bb7a166f293586a602514ef200699984e20e3d832ac0 +size 33370 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 e1f51dbf0c..ff591eacda 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:6edc2fa616a8fd43510212366a278ab59c5bddc7f24e732d128c70cad4600c6a -size 34080 +oid sha256:09d4b6e10e6b8eea6ff7e1335ee2183703049de01862e12c23c1c71ff70ee295 +size 34111 diff --git a/screenshots/de/features.knockrequests.impl.banner_KnockRequestsBannerView_Day_2_de.png b/screenshots/de/features.knockrequests.impl.banner_KnockRequestsBannerView_Day_2_de.png index e3354aef12..68fc7e7301 100644 --- a/screenshots/de/features.knockrequests.impl.banner_KnockRequestsBannerView_Day_2_de.png +++ b/screenshots/de/features.knockrequests.impl.banner_KnockRequestsBannerView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5e8f03111543846f125008286302f2827d74b7e1f96e8be196217d02372852e2 -size 21353 +oid sha256:b18db9f531d76b9833890ae7c971cd30d64d50bb062449d917cf97e2c1da9728 +size 21234 diff --git a/screenshots/de/features.knockrequests.impl.banner_KnockRequestsBannerView_Day_3_de.png b/screenshots/de/features.knockrequests.impl.banner_KnockRequestsBannerView_Day_3_de.png index 08eae1f09b..7d07b60eca 100644 --- a/screenshots/de/features.knockrequests.impl.banner_KnockRequestsBannerView_Day_3_de.png +++ b/screenshots/de/features.knockrequests.impl.banner_KnockRequestsBannerView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a21b6d080e1b4cab5fcc2dff6d99e24d66cd1e0ae3036a9a0db1898e86176279 -size 22472 +oid sha256:e0591d0031126f1a3290152702f64d63e2ff05e3d3554f461958bdc0f8aea061 +size 22377 diff --git a/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_1_de.png b/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_1_de.png index e038aa409d..428b780d73 100644 --- a/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_1_de.png +++ b/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:11de974b377d25f9461c1615a5e3f0d024cba2bafa58bcf97e57abfbf649803d -size 22032 +oid sha256:c80db58d3fe63a8c11650107b09ce75bf8772341098560ef992952131e80bada +size 22932 diff --git a/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_2_de.png b/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_2_de.png index 9a07f7a768..131518ab06 100644 --- a/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_2_de.png +++ b/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:40089868f378bc3de6a4d705d29e9e1a9850f01ecf09644da9784eac29dbe0cc -size 33654 +oid sha256:dce0333981e34b283eceb2025ac59f320eac1d0cab22e12b2a79a248da9a6d13 +size 34525 diff --git a/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_3_de.png b/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_3_de.png index 97cf2eefc0..dc9c692403 100644 --- a/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_3_de.png +++ b/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0f0442ffca68f1ef8b486b917858e394ecb19cbe031da28f92db878ca6fbd7ec -size 35602 +oid sha256:e67645d8b817c6627c94d081782f380b2cddb08792bf2456873e0a035ed474ad +size 36644 diff --git a/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_4_de.png b/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_4_de.png index 9a07f7a768..131518ab06 100644 --- a/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_4_de.png +++ b/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:40089868f378bc3de6a4d705d29e9e1a9850f01ecf09644da9784eac29dbe0cc -size 33654 +oid sha256:dce0333981e34b283eceb2025ac59f320eac1d0cab22e12b2a79a248da9a6d13 +size 34525 diff --git a/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_6_de.png b/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_6_de.png index 8259cbad1e..604e597c99 100644 --- a/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_6_de.png +++ b/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1eacdc382c046c128aa9c69dc2637fc40618b22644831bb307fca108f5ca507d -size 11234 +oid sha256:57fd1c60a2edd9fee0f8f5138332cc492655e485576ef43d69b412eaf21e9a93 +size 11925 diff --git a/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_7_de.png b/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_7_de.png index 8cc4f0f2d7..2aa550f27e 100644 --- a/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_7_de.png +++ b/screenshots/de/features.leaveroom.impl_LeaveRoomView_Day_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:afd979a8d3453c2a86299312270613a522dde75592d6fd384221c47814e41e6f -size 22657 +oid sha256:a25724b8f7a4acc980d98684af6300e21d6fd8d0c46b6ae9deb40302e7478f5b +size 22674 diff --git a/screenshots/de/features.linknewdevice.impl.screens.desktop_DesktopNoticeView_Day_0_de.png b/screenshots/de/features.linknewdevice.impl.screens.desktop_DesktopNoticeView_Day_0_de.png index e456e54762..7def14d101 100644 --- a/screenshots/de/features.linknewdevice.impl.screens.desktop_DesktopNoticeView_Day_0_de.png +++ b/screenshots/de/features.linknewdevice.impl.screens.desktop_DesktopNoticeView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c96ad3d344d4a2c1c2afa1913e668cd7e159a5f610cee44b75c029987c0ebfec -size 65962 +oid sha256:c74f5c9856f5d5357fb3bb4c366f042ec541aa46d9d4c7528fb5ba9b0825ad42 +size 66701 diff --git a/screenshots/de/features.linknewdevice.impl.screens.desktop_DesktopNoticeView_Day_1_de.png b/screenshots/de/features.linknewdevice.impl.screens.desktop_DesktopNoticeView_Day_1_de.png index ac514c49d7..7630b45fc4 100644 --- a/screenshots/de/features.linknewdevice.impl.screens.desktop_DesktopNoticeView_Day_1_de.png +++ b/screenshots/de/features.linknewdevice.impl.screens.desktop_DesktopNoticeView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a54d7f3a3091731e6131984823589ce81a10e791895f86f5e50b0bb04b7aafdd -size 57045 +oid sha256:609b65f7fe181236c7dc8b35b238c904ab1fff9d8bee593edf654ea66967660e +size 57599 diff --git a/screenshots/de/features.linknewdevice.impl.screens.error_ErrorView_Day_4_de.png b/screenshots/de/features.linknewdevice.impl.screens.error_ErrorView_Day_4_de.png index 0b411260ec..18b23676ed 100644 --- a/screenshots/de/features.linknewdevice.impl.screens.error_ErrorView_Day_4_de.png +++ b/screenshots/de/features.linknewdevice.impl.screens.error_ErrorView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0b41b171588b46f2b17fe366d311da43653c43dc1eccf539c7f02c12d1c7a21f -size 45688 +oid sha256:75c5c65f516f77bea82e40b4f313ba9244a0a99a1dcedfa3529df819bc92884c +size 45456 diff --git a/screenshots/de/features.linknewdevice.impl.screens.error_ErrorView_Day_5_de.png b/screenshots/de/features.linknewdevice.impl.screens.error_ErrorView_Day_5_de.png index 3cca0ecb86..21bbdb7662 100644 --- a/screenshots/de/features.linknewdevice.impl.screens.error_ErrorView_Day_5_de.png +++ b/screenshots/de/features.linknewdevice.impl.screens.error_ErrorView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b3c85fe6806271668b252820583ff965f489565014b65717dc3ca6900a3fdd69 -size 64943 +oid sha256:cbca8313d7d3c1cbcd25475c48ef56b26bf3dea9cade68e9e5ad874e624d504d +size 64866 diff --git a/screenshots/de/features.linknewdevice.impl.screens.error_ErrorView_Day_7_de.png b/screenshots/de/features.linknewdevice.impl.screens.error_ErrorView_Day_7_de.png index 21cd3e39b2..9a851eee14 100644 --- a/screenshots/de/features.linknewdevice.impl.screens.error_ErrorView_Day_7_de.png +++ b/screenshots/de/features.linknewdevice.impl.screens.error_ErrorView_Day_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5389199e4bc2eb8dcb9690cac87fff0f007f6cf1f578a4bd0534a202b69ac28b -size 28494 +oid sha256:4df5a23f6d08d7f7c7b1f4f0d5b547e16adf73e2d321d0b92c71cf8fbf118935 +size 28395 diff --git a/screenshots/de/features.linknewdevice.impl.screens.error_ErrorView_Day_8_de.png b/screenshots/de/features.linknewdevice.impl.screens.error_ErrorView_Day_8_de.png index cba542a991..b418f8a7ce 100644 --- a/screenshots/de/features.linknewdevice.impl.screens.error_ErrorView_Day_8_de.png +++ b/screenshots/de/features.linknewdevice.impl.screens.error_ErrorView_Day_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5e77e5930c00c3389179fc5a60a6a2d173223adaf742a53b6900ab96ab0af88a -size 22202 +oid sha256:ee85c31874587dc57ecee155aa8943c358efde1a19fa8409ee7011912182743c +size 22179 diff --git a/screenshots/de/features.linknewdevice.impl.screens.qrcode_ShowQrCodeView_Day_0_de.png b/screenshots/de/features.linknewdevice.impl.screens.qrcode_ShowQrCodeView_Day_0_de.png index 2146543310..80d6c08dac 100644 --- a/screenshots/de/features.linknewdevice.impl.screens.qrcode_ShowQrCodeView_Day_0_de.png +++ b/screenshots/de/features.linknewdevice.impl.screens.qrcode_ShowQrCodeView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cc83df0bf49880754d2f401c1a629355455bb01770ac0cee48e2affafe93da20 -size 34038 +oid sha256:96b89bcdadc0c6fced1c21f820164a38afd8be85288950f750e3941a7cb0b994 +size 34041 diff --git a/screenshots/de/features.linknewdevice.impl.screens.qrcode_ShowQrCodeView_Day_1_de.png b/screenshots/de/features.linknewdevice.impl.screens.qrcode_ShowQrCodeView_Day_1_de.png index a69ccc2e05..162a2cbe32 100644 --- a/screenshots/de/features.linknewdevice.impl.screens.qrcode_ShowQrCodeView_Day_1_de.png +++ b/screenshots/de/features.linknewdevice.impl.screens.qrcode_ShowQrCodeView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:424a7bb62e6b42c397eff36bbb79a4278c0fcc9f4fcc7f447d10fe5854a1fed2 -size 33079 +oid sha256:05c4920951a1198438ce0e183166b2f2a50f009eacee838744b7f9ea8711d769 +size 33081 diff --git a/screenshots/de/features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_0_de.png b/screenshots/de/features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_0_de.png index 0e9606c453..3ae6ebe8d0 100644 --- a/screenshots/de/features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_0_de.png +++ b/screenshots/de/features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:748da581859b8b1a05a2b5703c17b31f6725d26713053063dc825b425b4d4131 -size 19317 +oid sha256:2a05d646de9959995c90cd625f690b55d72019b5bd54606c30d51f81ac1473b4 +size 20661 diff --git a/screenshots/de/features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_4_de.png b/screenshots/de/features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_4_de.png index 2fdab6284a..560a5b06da 100644 --- a/screenshots/de/features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_4_de.png +++ b/screenshots/de/features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cde54cd972be78cb89278b4382d7b71297bdeddb0a16503211ed0342ad059a2b -size 26237 +oid sha256:584bba3994f5fa3561bd05d2c8cb4a1ebdf1bf4eb35b3d5a60406a13330780b0 +size 26119 diff --git a/screenshots/de/features.location.api_LiveLocationSharingBanner_Day_0_de.png b/screenshots/de/features.location.api_LiveLocationSharingBanner_Day_0_de.png index 990b398452..3ff5bfd1b8 100644 --- a/screenshots/de/features.location.api_LiveLocationSharingBanner_Day_0_de.png +++ b/screenshots/de/features.location.api_LiveLocationSharingBanner_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:047f6ea7e1594151b79aac2d2bdb58986134296fcfebdbe920e1caed9a173c18 -size 10545 +oid sha256:5ba7659cee49732e027ae356427744eb89ecefdf7ac48ce6ff5c7f6b9895f8a7 +size 11556 diff --git a/screenshots/de/features.location.api_RenderingMapsNotSupportedDialog_Day_0_de.png b/screenshots/de/features.location.api_RenderingMapsNotSupportedDialog_Day_0_de.png index 06c4be2c81..74aab48298 100644 --- a/screenshots/de/features.location.api_RenderingMapsNotSupportedDialog_Day_0_de.png +++ b/screenshots/de/features.location.api_RenderingMapsNotSupportedDialog_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3065603f9b067f0ddc89a7b8dc24921afd031f4658f6ac11de8feb0c4bf26b62 -size 23910 +oid sha256:6bf1b1e80b1e88f339b68179ef821875f1fca3da675acf02c48258011fe327a1 +size 24946 diff --git a/screenshots/de/features.location.impl.common.ui_LocationShareRow_Day_0_de.png b/screenshots/de/features.location.impl.common.ui_LocationShareRow_Day_0_de.png index 50cb33a2cb..00d436ccb6 100644 --- a/screenshots/de/features.location.impl.common.ui_LocationShareRow_Day_0_de.png +++ b/screenshots/de/features.location.impl.common.ui_LocationShareRow_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e1998316d12b0e0c4d1bae1e5bdae6748131354deb6311a03050560781998212 -size 18439 +oid sha256:e4ac2bfd101be49a5adf0c6092c29eaf25bc6bca9b17069863f50715a1c22847 +size 19307 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 a4eea97439..4eb13e3b92 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:4b3858c6ba9a4a2432c0b614af79187fdd2e9c661dc71038c3e656b37232fb6b -size 20034 +oid sha256:6fd0a8a6a3417c9806d6a6f909789255236d77306c897cf17883a0ca80f5f444 +size 20760 diff --git a/screenshots/de/features.lockscreen.impl.components_PinEntryTextField_Day_0_de.png b/screenshots/de/features.lockscreen.impl.components_PinEntryTextField_Day_0_de.png new file mode 100644 index 0000000000..3a22d6959f --- /dev/null +++ b/screenshots/de/features.lockscreen.impl.components_PinEntryTextField_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2046f1225b2f58812502196f4b7d1c7a4d87f740b32e40dd82762fade1c42ea2 +size 16167 diff --git a/screenshots/de/features.lockscreen.impl.settings_LockScreenSettingsView_Day_1_de.png b/screenshots/de/features.lockscreen.impl.settings_LockScreenSettingsView_Day_1_de.png index c428edffd3..515cf1204d 100644 --- a/screenshots/de/features.lockscreen.impl.settings_LockScreenSettingsView_Day_1_de.png +++ b/screenshots/de/features.lockscreen.impl.settings_LockScreenSettingsView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:91bfc6455cd2dcd344514f034e413d0b4cfa3376a82ce0f1421117a1ff610c1f -size 21238 +oid sha256:d33e1e0dd9fbc57e880fc26c98c7343ab198427478593c282551483a57d6b6b9 +size 21278 diff --git a/screenshots/de/features.lockscreen.impl.setup.biometric_SetupBiometricView_Day_0_de.png b/screenshots/de/features.lockscreen.impl.setup.biometric_SetupBiometricView_Day_0_de.png index a2622134e3..e093f21959 100644 --- a/screenshots/de/features.lockscreen.impl.setup.biometric_SetupBiometricView_Day_0_de.png +++ b/screenshots/de/features.lockscreen.impl.setup.biometric_SetupBiometricView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c27e28c6e8afd84ad2f7607811284a57d49fb5044fc6d3f883051c8fc6554384 -size 38345 +oid sha256:40ddfdfb9d6d3d1b42420e9beaf8554aeb474deba381ec4c516d89c3f1dd37aa +size 38319 diff --git a/screenshots/de/features.lockscreen.impl.setup.pin_SetupPinView_Day_3_de.png b/screenshots/de/features.lockscreen.impl.setup.pin_SetupPinView_Day_3_de.png index 69b3ee75fb..d7df47f35f 100644 --- a/screenshots/de/features.lockscreen.impl.setup.pin_SetupPinView_Day_3_de.png +++ b/screenshots/de/features.lockscreen.impl.setup.pin_SetupPinView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a01cb2e96ee1999ad7ace7c9a5506ca9ecac5a0cb5c674926a2e3b797171d0f4 -size 27665 +oid sha256:3be1f2e09f142cbe699b6ffc3c23065e0c169996c21799f63be7e1fcc3983f24 +size 27641 diff --git a/screenshots/de/features.lockscreen.impl.setup.pin_SetupPinView_Day_4_de.png b/screenshots/de/features.lockscreen.impl.setup.pin_SetupPinView_Day_4_de.png index 6b2e3eba79..12f91e2cb7 100644 --- a/screenshots/de/features.lockscreen.impl.setup.pin_SetupPinView_Day_4_de.png +++ b/screenshots/de/features.lockscreen.impl.setup.pin_SetupPinView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1f45d01c243a2fa63b1aac8ac5e1a60e7af76a6737c6ffdcd0cecba2996d161b -size 32543 +oid sha256:e3198901f51d33c1fca3947c77fbec21600e9dc24c29d05478830dfcdca04438 +size 32456 diff --git a/screenshots/de/features.login.impl.accountprovider_AccountProviderOtherView_Day_0_de.png b/screenshots/de/features.login.impl.accountprovider_AccountProviderOtherView_Day_0_de.png deleted file mode 100644 index dddd616aee..0000000000 --- a/screenshots/de/features.login.impl.accountprovider_AccountProviderOtherView_Day_0_de.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0abc6cf5caded1e0feed221cab79a46b7e718ddb584c3483bc23ce8ddccae909 -size 7035 diff --git a/screenshots/de/features.login.impl.changeserver_ChangeServerView_Day_2_de.png b/screenshots/de/features.login.impl.changeserver_ChangeServerView_Day_2_de.png index 869eed92c5..4f9da1c87d 100644 --- a/screenshots/de/features.login.impl.changeserver_ChangeServerView_Day_2_de.png +++ b/screenshots/de/features.login.impl.changeserver_ChangeServerView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dc8d8e9f4d5e1c4eb726b338d51df75a2e422cd85ce27d9bebc01dc1c1d7e95a -size 32313 +oid sha256:0280adf746de282a401a0b8cc12fa85f48416ace466dabdbb7a06d4e3444cc58 +size 30522 diff --git a/screenshots/de/features.login.impl.changeserver_ChangeServerView_Day_5_de.png b/screenshots/de/features.login.impl.changeserver_ChangeServerView_Day_5_de.png index ec9de6ee4e..a99bdec416 100644 --- a/screenshots/de/features.login.impl.changeserver_ChangeServerView_Day_5_de.png +++ b/screenshots/de/features.login.impl.changeserver_ChangeServerView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:228c78854193cffdf1a0a22a80eb742b01dcef195192196f7b63c32f3d0666e8 -size 30823 +oid sha256:300f62aff091441aa294bac01397fd92ae7ebe7864efd26c534da5e5b18fc611 +size 30204 diff --git a/screenshots/de/features.login.impl.changeserver_ChangeServerView_Day_6_de.png b/screenshots/de/features.login.impl.changeserver_ChangeServerView_Day_6_de.png index b6a959750e..21a68c1ac3 100644 --- a/screenshots/de/features.login.impl.changeserver_ChangeServerView_Day_6_de.png +++ b/screenshots/de/features.login.impl.changeserver_ChangeServerView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9fed6d5214bd9c5115a1434ee0d22b483bbbc98bffe3a38b74e1b154ba58daad -size 33314 +oid sha256:c817889b43d4b41d35c04e6d347ecb2f39a52f879557b1d1055553034bc8d1d9 +size 43776 diff --git a/screenshots/de/features.login.impl.dialogs_SlidingSyncNotSupportedDialog_Day_0_de.png b/screenshots/de/features.login.impl.dialogs_SlidingSyncNotSupportedDialog_Day_0_de.png index 869eed92c5..4f9da1c87d 100644 --- a/screenshots/de/features.login.impl.dialogs_SlidingSyncNotSupportedDialog_Day_0_de.png +++ b/screenshots/de/features.login.impl.dialogs_SlidingSyncNotSupportedDialog_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dc8d8e9f4d5e1c4eb726b338d51df75a2e422cd85ce27d9bebc01dc1c1d7e95a -size 32313 +oid sha256:0280adf746de282a401a0b8cc12fa85f48416ace466dabdbb7a06d4e3444cc58 +size 30522 diff --git a/screenshots/de/features.login.impl.login_LoginModeView_Day_0_de.png b/screenshots/de/features.login.impl.login_LoginModeView_Day_0_de.png index 1e5a59c9c7..3018d6d315 100644 --- a/screenshots/de/features.login.impl.login_LoginModeView_Day_0_de.png +++ b/screenshots/de/features.login.impl.login_LoginModeView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c9093928507371b281b95c0a790186bf2b9a73914fe660ea3ffc26c6bb5756f5 -size 36824 +oid sha256:d8cdbb8aa223530e2f40a65a94e77937558d640299048db242932bcf6da179a9 +size 35923 diff --git a/screenshots/de/features.login.impl.login_LoginModeView_Day_4_de.png b/screenshots/de/features.login.impl.login_LoginModeView_Day_4_de.png index 869eed92c5..4f9da1c87d 100644 --- a/screenshots/de/features.login.impl.login_LoginModeView_Day_4_de.png +++ b/screenshots/de/features.login.impl.login_LoginModeView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dc8d8e9f4d5e1c4eb726b338d51df75a2e422cd85ce27d9bebc01dc1c1d7e95a -size 32313 +oid sha256:0280adf746de282a401a0b8cc12fa85f48416ace466dabdbb7a06d4e3444cc58 +size 30522 diff --git a/screenshots/de/features.login.impl.login_LoginModeView_Day_5_de.png b/screenshots/de/features.login.impl.login_LoginModeView_Day_5_de.png index ec9de6ee4e..a99bdec416 100644 --- a/screenshots/de/features.login.impl.login_LoginModeView_Day_5_de.png +++ b/screenshots/de/features.login.impl.login_LoginModeView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:228c78854193cffdf1a0a22a80eb742b01dcef195192196f7b63c32f3d0666e8 -size 30823 +oid sha256:300f62aff091441aa294bac01397fd92ae7ebe7864efd26c534da5e5b18fc611 +size 30204 diff --git a/screenshots/de/features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Day_0_de.png b/screenshots/de/features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Day_0_de.png deleted file mode 100644 index 6f7d6a890e..0000000000 --- a/screenshots/de/features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Day_0_de.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:af547cb5fc2383ebd6171d2833b481c0969e273f144e24bd121e07678fbd54ab -size 55044 diff --git a/screenshots/de/features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Day_1_de.png b/screenshots/de/features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Day_1_de.png deleted file mode 100644 index 5fe846ac85..0000000000 --- a/screenshots/de/features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Day_1_de.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:90815365dfcf8173bc6793920eaeb200b8fc0d07a395bd13d8f3606578de5c85 -size 52318 diff --git a/screenshots/de/features.login.impl.screens.classic.loginwithclassic_LoginWithClassicView_Day_0_de.png b/screenshots/de/features.login.impl.screens.classic.loginwithclassic_LoginWithClassicView_Day_0_de.png index 6c4b3efc05..80cd89f167 100644 --- a/screenshots/de/features.login.impl.screens.classic.loginwithclassic_LoginWithClassicView_Day_0_de.png +++ b/screenshots/de/features.login.impl.screens.classic.loginwithclassic_LoginWithClassicView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:54dd4604f24579447336a906c9cad8b7f0d27f2b30770a136709d2ea964a8ecb -size 78928 +oid sha256:dae4d30fa330c0057b8f0e812b55d2c69bf5a880d0475e075dee6e470aaddbd7 +size 79019 diff --git a/screenshots/de/features.login.impl.screens.classic.loginwithclassic_LoginWithClassicView_Day_1_de.png b/screenshots/de/features.login.impl.screens.classic.loginwithclassic_LoginWithClassicView_Day_1_de.png index 68e2995e17..67744d6199 100644 --- a/screenshots/de/features.login.impl.screens.classic.loginwithclassic_LoginWithClassicView_Day_1_de.png +++ b/screenshots/de/features.login.impl.screens.classic.loginwithclassic_LoginWithClassicView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7209ac29981ac25c206497fee6acacdf6fb8cbb1d0592b57ad343aa2bc8e4bbe -size 75196 +oid sha256:ce756023d76711c34640046bc14e047512a9a0c7c403359049158dc5185eedb7 +size 75296 diff --git a/screenshots/de/features.login.impl.screens.classic.missingkeybackup_MissingKeyBackupView_Day_0_de.png b/screenshots/de/features.login.impl.screens.classic.missingkeybackup_MissingKeyBackupView_Day_0_de.png index d9d2f3b499..eb978eb919 100644 --- a/screenshots/de/features.login.impl.screens.classic.missingkeybackup_MissingKeyBackupView_Day_0_de.png +++ b/screenshots/de/features.login.impl.screens.classic.missingkeybackup_MissingKeyBackupView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d96d09c6ea5427bccb08dd89397286c1eedc8a085b6e43774b5ffcb66620cffc -size 64110 +oid sha256:f4dd199db148817025da621f01692bc6ea717364c189ca40a120630aed21e0ac +size 61125 diff --git a/screenshots/de/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_0_de.png b/screenshots/de/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_0_de.png index 7cd0b44e91..8e8feeedff 100644 --- a/screenshots/de/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_0_de.png +++ b/screenshots/de/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ac1d614f172213fb336f22ae114bbadc0560824276ecc6fb97904eaee2b1f0c3 -size 38783 +oid sha256:6deff9adca7ff1462e0004e4453f67889b4c79c2fc684b1f7474d10cfcfaae04 +size 36931 diff --git a/screenshots/de/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_1_de.png b/screenshots/de/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_1_de.png index 3fdbf2fe1c..df2df0f306 100644 --- a/screenshots/de/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_1_de.png +++ b/screenshots/de/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f96859710af78fb5578821e553eae9c1b5111c35535d6ea2920b59ff63b573eb -size 39638 +oid sha256:a18350ffc620d0dcaf27a1d0bf985e6507660330691a45e3c9de591d85382005 +size 36818 diff --git a/screenshots/de/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_2_de.png b/screenshots/de/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_2_de.png index 55aa299d5b..e7dd550b0c 100644 --- a/screenshots/de/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_2_de.png +++ b/screenshots/de/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:01c9288e1dd9d6260f913d2eab4b6a19e7d5deae57cd316a5e99d7d408a73470 -size 40911 +oid sha256:fd1dee7040e38b8a2a3c0e9150d97b2928b6cbad415445daa9f91e45da396bd5 +size 41253 diff --git a/screenshots/de/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_3_de.png b/screenshots/de/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_3_de.png new file mode 100644 index 0000000000..87956cd48d --- /dev/null +++ b/screenshots/de/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_3_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2812794f1d8a2e54bae1d5153700fb5c3d01deec85a7f33969e6b2d05e914638 +size 34624 diff --git a/screenshots/de/features.login.impl.screens.createaccount_CreateAccountView_Day_0_de.png b/screenshots/de/features.login.impl.screens.createaccount_CreateAccountView_Day_0_de.png deleted file mode 100644 index 7855708959..0000000000 --- a/screenshots/de/features.login.impl.screens.createaccount_CreateAccountView_Day_0_de.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fabec29ea80b67e79ac7bf6d80089591cf29c6922d83deb5f45e28c1388d5783 -size 13244 diff --git a/screenshots/de/features.login.impl.screens.createaccount_CreateAccountView_Day_1_de.png b/screenshots/de/features.login.impl.screens.createaccount_CreateAccountView_Day_1_de.png deleted file mode 100644 index 296be60247..0000000000 --- a/screenshots/de/features.login.impl.screens.createaccount_CreateAccountView_Day_1_de.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:543aee2de0e9065ef0dc4657469aeb37f39a39a491d14a832724899dbd988d70 -size 13357 diff --git a/screenshots/de/features.login.impl.screens.createaccount_CreateAccountView_Day_2_de.png b/screenshots/de/features.login.impl.screens.createaccount_CreateAccountView_Day_2_de.png deleted file mode 100644 index 04e9145196..0000000000 --- a/screenshots/de/features.login.impl.screens.createaccount_CreateAccountView_Day_2_de.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e82e40999ba84db887d5559d42ac432b0544610527e0e763038f3f9335490d3b -size 13548 diff --git a/screenshots/de/features.login.impl.screens.createaccount_CreateAccountView_Day_3_de.png b/screenshots/de/features.login.impl.screens.createaccount_CreateAccountView_Day_3_de.png deleted file mode 100644 index 1b0accd16f..0000000000 --- a/screenshots/de/features.login.impl.screens.createaccount_CreateAccountView_Day_3_de.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:05bc1fc6a1a9523ab6de6a9b9d599c6fe8f1ca25d35cf40cb5f88457e0a380b2 -size 15645 diff --git a/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_0_de.png b/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_0_de.png index 613d3f3187..ec9b3bf699 100644 --- a/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_0_de.png +++ b/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1cc00314a0e4c77304c8721bb65bcd792d8efbbd6c275ef41ea2729055f196b1 -size 315719 +oid sha256:191b998a01cf108956c7d1c01b2ea4d49ad383097dbb1e470856715cf521918f +size 315877 diff --git a/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_1_de.png b/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_1_de.png index b771b4915e..7412776e4e 100644 --- a/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_1_de.png +++ b/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c289148733adcab13f0a58a4b7405d01e9a2a97d9942cb86e8790c609cc667ce -size 310987 +oid sha256:71547b31275ca91c657c3d26103dba42e5a751d4649092540f43c88c4ce5957c +size 310976 diff --git a/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_2_de.png b/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_2_de.png index 40c0db72d8..d1a03e05e8 100644 --- a/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_2_de.png +++ b/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c92e79c2203992171fcb7f89e7f2474dc4637e1a32d12c3d3a0391b82be2acc9 -size 313974 +oid sha256:5db152b4c0dc583fc9fd0c5d43436dce70fa26e320091de00bae4277d0ed19a4 +size 313959 diff --git a/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_3_de.png b/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_3_de.png index 2f1bfa0312..684bec206a 100644 --- a/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_3_de.png +++ b/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:321008e9dc350a67fa56bc3c3b11d3556107be9475f7195bbf31547adb8703ca -size 308360 +oid sha256:1524f2b13ec6a39951cb09dec3d34724352263895c1c299f01e100a46d8c17c6 +size 308527 diff --git a/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_4_de.png b/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_4_de.png index 1f79459486..c620d1b04a 100644 --- a/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_4_de.png +++ b/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4504fba00287a8c95d204f21681182ff88427fd97f5cc18f5c0bf8728bc131a5 -size 308826 +oid sha256:f45bb78691c642e9b1fed443bc7b7a3628c76508aba2c000dc81d0a5da32974a +size 308995 diff --git a/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_5_de.png b/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_5_de.png index 1c53fc44b0..7a207e920f 100644 --- a/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_5_de.png +++ b/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c2617d02d1c5e2b5f6e1d456bb2306f1cda05639f206b7ad7503bc8a4da0a4b9 -size 318509 +oid sha256:dd9def01e5c1e0a425e474c615daf6b49d5020ccab28608d9a78d8e873806ee2 +size 318668 diff --git a/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_8_de.png b/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_8_de.png index 529e3e8ddd..b97d5d2589 100644 --- a/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_8_de.png +++ b/screenshots/de/features.login.impl.screens.onboarding_OnBoardingView_Day_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:336844a35b925383f7b0c621339f0f6d9b0e81b7a85d18e688d0dd279ffba965 -size 317025 +oid sha256:8ffbb0ef531b9e8621c6431c131d2e32b2c1a194c21bec8d554c6772a3dcf790 +size 317171 diff --git a/screenshots/de/features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_1_de.png b/screenshots/de/features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_1_de.png index 57164084ff..e06312f7eb 100644 --- a/screenshots/de/features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_1_de.png +++ b/screenshots/de/features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b5ac695313a422b12599168b3e53301ac97394479cda7b1f730280121579e866 -size 35034 +oid sha256:abc99daa51485b12af9aa81f4aa27fe1267d1a7c74ba3231b15cac87f82b899e +size 36960 diff --git a/screenshots/de/features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_2_de.png b/screenshots/de/features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_2_de.png index fc7c2a934f..5e0f5d6537 100644 --- a/screenshots/de/features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_2_de.png +++ b/screenshots/de/features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:177040459036d13b0620864c23f5c60a4e4e8c28391c7ba0f0f892dacd1857be -size 37024 +oid sha256:b862f2e14e71a0ae81c2af2b0e1adb10a9ae00ee4299903ddc9400510ad601d1 +size 39060 diff --git a/screenshots/de/features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_4_de.png b/screenshots/de/features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_4_de.png index 3cca0ecb86..21bbdb7662 100644 --- a/screenshots/de/features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_4_de.png +++ b/screenshots/de/features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b3c85fe6806271668b252820583ff965f489565014b65717dc3ca6900a3fdd69 -size 64943 +oid sha256:cbca8313d7d3c1cbcd25475c48ef56b26bf3dea9cade68e9e5ad874e624d504d +size 64866 diff --git a/screenshots/de/features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_6_de.png b/screenshots/de/features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_6_de.png index 21cd3e39b2..9a851eee14 100644 --- a/screenshots/de/features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_6_de.png +++ b/screenshots/de/features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5389199e4bc2eb8dcb9690cac87fff0f007f6cf1f578a4bd0534a202b69ac28b -size 28494 +oid sha256:4df5a23f6d08d7f7c7b1f4f0d5b547e16adf73e2d321d0b92c71cf8fbf118935 +size 28395 diff --git a/screenshots/de/features.login.impl.screens.qrcode.intro_QrCodeIntroView_Day_0_de.png b/screenshots/de/features.login.impl.screens.qrcode.intro_QrCodeIntroView_Day_0_de.png index 4119ae071b..48495c4309 100644 --- a/screenshots/de/features.login.impl.screens.qrcode.intro_QrCodeIntroView_Day_0_de.png +++ b/screenshots/de/features.login.impl.screens.qrcode.intro_QrCodeIntroView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b742d5311fc1961bc9a5a61658e77fdf1ab3f83b5fb93e0a4fedd7f50a3faacb -size 56999 +oid sha256:9feb29202d0e5981a1dbaf3ccdb2c71a0c50c2bad3daa866f20600772f11c6ba +size 56715 diff --git a/screenshots/de/features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_1_de.png b/screenshots/de/features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_1_de.png index fe3da3c3d6..6fe8b9c66d 100644 --- a/screenshots/de/features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_1_de.png +++ b/screenshots/de/features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ec3d730e2182951f7f25ef8e402d28493b6e0598ed8299ccdb44213b50342f4e -size 20531 +oid sha256:f1613dba1ee65b8559e273bc4db6869563607535634272e66a37fef9a7fc67df +size 21336 diff --git a/screenshots/de/features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Day_0_de.png b/screenshots/de/features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Day_0_de.png deleted file mode 100644 index 54632e1aac..0000000000 --- a/screenshots/de/features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Day_0_de.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f704fe995261b70cefedae0c1724ab63bee7cad07be34da6e92c1de553c33e80 -size 26959 diff --git a/screenshots/de/features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Day_1_de.png b/screenshots/de/features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Day_1_de.png deleted file mode 100644 index a5492d7f3b..0000000000 --- a/screenshots/de/features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Day_1_de.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1482aa508f02e9e4db7a91e5cf69f3d6f9cf5b2f30ec76ca8c5b76a9428e76cd -size 59401 diff --git a/screenshots/de/features.logout.impl_AccountDeactivationView_Day_2_de.png b/screenshots/de/features.logout.impl_AccountDeactivationView_Day_2_de.png index d088e1d0cb..6a6c566cfd 100644 --- a/screenshots/de/features.logout.impl_AccountDeactivationView_Day_2_de.png +++ b/screenshots/de/features.logout.impl_AccountDeactivationView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:03bba1b4cad4eef153981990e20baa9cc88161d8506e4b4346c82933edc0861e -size 73714 +oid sha256:156480867b7d41b6831a62c42ab65c87bcc1acb0b6da41b77db7e38ab499d73e +size 73941 diff --git a/screenshots/de/features.logout.impl_AccountDeactivationView_Day_3_de.png b/screenshots/de/features.logout.impl_AccountDeactivationView_Day_3_de.png index 1162e24c5a..0317eccfc0 100644 --- a/screenshots/de/features.logout.impl_AccountDeactivationView_Day_3_de.png +++ b/screenshots/de/features.logout.impl_AccountDeactivationView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a424e83fd088385bd821f10bf69ae20f042c7c022205df0bf9b1487a8b2cdc34 -size 66523 +oid sha256:dfe8e860260bbea8a4e1b12fbe7c3f2dfe744895969ea84e13982a15275bb7ba +size 66273 diff --git a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_11_de.png b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_11_de.png index 3ad3b34536..39f341a697 100644 --- a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_11_de.png +++ b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_11_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:841ab6bbee9b1c45686f03795cab778dc2d46afd94970f33d51a8bc55762f3ba -size 55126 +oid sha256:561e212e50df00f923a77b1c1581f8f5595dd45498b040ffcec52eb8f5578d10 +size 54922 diff --git a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_12_de.png b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_12_de.png index 4f93c878d2..58922f2072 100644 --- a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_12_de.png +++ b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_12_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:54f7192fc2ff3db4043774a3afaed469bb75350ac162bac1dda056573eb508ad -size 55090 +oid sha256:8bbc8a60ab3241d8ed5138ab26e990e1fd8956e7ae7ce43181fa8ad67dde5998 +size 54884 diff --git a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_2_de.png b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_2_de.png index f4968e1595..651124cb2b 100644 --- a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_2_de.png +++ b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e9720b70b50345c0953e159ba884941771b6bdead9d4414dc7c379f787873348 -size 47541 +oid sha256:0c7bfff1cf6c4da59c54c3a14bd89839294c776c938f080c32a8113b8126ec76 +size 47329 diff --git a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_3_de.png b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_3_de.png index 8abfcb9328..5338ce17fa 100644 --- a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_3_de.png +++ b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d74dcfacd248e1eccb0bfb82cf2c56de093cb94dc0897ac62866f54d9f5c0185 -size 51433 +oid sha256:ef392eaab0f1ef98f6813f8e4fdec1f6b330d59836938baa9a556d057bb6d0b3 +size 51215 diff --git a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_4_de.png b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_4_de.png index dacd84c40e..158e93d4c3 100644 --- a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_4_de.png +++ b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:effa56ccb316f3c64243cbbcd2c5f5027bc7b7a74bf7d80771ad75c92a65e26d -size 50200 +oid sha256:84dfca1adf3edca6ecf239043b12fc08eac4286974b25e8d65f7b224deffc519 +size 49978 diff --git a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_5_de.png b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_5_de.png index c391a277ad..f1dc9c69dd 100644 --- a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_5_de.png +++ b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0e44588831139679f11117b75e37675e53087145e2697ee92590ffb41824627d -size 45439 +oid sha256:9497c132374558dd207b1a3ab818c7c8331a44e5b4eb74b40920a0cabb1682c2 +size 45278 diff --git a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_6_de.png b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_6_de.png index 0978c82b8f..37191b36fa 100644 --- a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_6_de.png +++ b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4d4bfc867d9d4b5eb40e8577be5e85883ae6273aa26f6ba740039e8b28e8c501 -size 50439 +oid sha256:5e8a3066f1c55454fc26e8280b667962d9d9c054039151db6191700a3c3dd063 +size 50229 diff --git a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_7_de.png b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_7_de.png index edeef6eaf0..c3480754f7 100644 --- a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_7_de.png +++ b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2afa5876fe1e67e4d72351d20c0afc07d8c2d580ba53d1fa131c5d64f175dae5 -size 46243 +oid sha256:a96b1516b18b1d1f3189f790937b1d0979f10b3f924cbc5148f0ed4cf22c818d +size 46034 diff --git a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_8_de.png b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_8_de.png index 949602fae0..07090a9a5b 100644 --- a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_8_de.png +++ b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d420aa06b93ff7774f7cf3b2963fb43f11cf44f49c9fe8bd0f88a4a65f9ea441 -size 49550 +oid sha256:6a4eace54039681c612feadd7bd2f786daa7a3f3499cf8af27e46ee784f38e71 +size 49333 diff --git a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_9_de.png b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_9_de.png index 79669ba97b..a3a84c3d7a 100644 --- a/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_9_de.png +++ b/screenshots/de/features.messages.impl.actionlist_ActionListViewContent_Day_9_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:82cbddc876b376d1c00c3c4c7f42fbf5ac96821b9de4aaeb7364dafe826bd87f -size 38608 +oid sha256:de9f98f0db1ff1851500b9235dae920186c1c8cc7dba1f313fba35885d5061e4 +size 38416 diff --git a/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_0_de.png b/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_0_de.png index 210020e06e..c76c57bb3a 100644 --- a/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_0_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:99d5cf65c968619f2a99f382e2de07d08022f0325349f86571c5766d17fff9e0 -size 327894 +oid sha256:4669c6d867eccfee6c2edce08d1b34843aef62503625512e5681d97775c220ba +size 329251 diff --git a/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_1_de.png b/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_1_de.png index 3ee21f4b12..01e0709a53 100644 --- a/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_1_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:82b816075c7ca6898da2c295740f6828a15a16062e944f01a4401ac0b84f6008 -size 282325 +oid sha256:e8fa48712b5509f436d99519cd92a5b86bed437dbbee48d202ad732cb80589de +size 283632 diff --git a/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_2_de.png b/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_2_de.png index 7aeafb4481..3e980313a8 100644 --- a/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_2_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:11222c39d8ef830649fdd0b35c95b31b4d934c0c2667674ef7d659d9a3320b52 -size 255483 +oid sha256:04ef4e678820a4b6d3218eac26d7546e08eefb713c12069ab36f96fd1e26fded +size 256988 diff --git a/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_3_de.png b/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_3_de.png index 2c62689a45..3157326b3c 100644 --- a/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_3_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bc3d7320da4451c862f1083981d628a4df4115e95f9e88db7e0d1910f9890eba -size 276670 +oid sha256:9372c6371df98e0d073efe5799cd13c2ba01f8d2744446fe717c25abb0c3af8b +size 278184 diff --git a/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_4_de.png b/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_4_de.png index 1ba1a3158a..eed646133b 100644 --- a/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_4_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b23a3fd19bb6057dc13f61525a4589a3d1dd66a97818c4229d4db35cb6f56faa -size 250779 +oid sha256:5610a99bc6cf702a09d1fd81c0dbb1e122d6c9341355a066252dbf6921305013 +size 252162 diff --git a/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_5_de.png b/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_5_de.png index 3f3fa22933..38d997340f 100644 --- a/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_5_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:028b3249d8d63cdf799ac1e0ab530e4a46140c53adf8b83a05153d03d030d4e6 -size 310168 +oid sha256:5269afb7213a9b0b0dee69b04af6deb2d0ad12a9db3d375749f50a89525447eb +size 311573 diff --git a/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_6_de.png b/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_6_de.png index aaedf662af..05933ea7b9 100644 --- a/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_6_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:24b6a36a3efa0127a099081ef711fa804879ddca347849580e80c2a147c7f4c9 -size 282515 +oid sha256:cdc06a4b6e1dd6ec94f37c2a8e40c045b8e30d4dc513d93dfe6f7268493548a2 +size 283784 diff --git a/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_7_de.png b/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_7_de.png index 5b2ff9626b..e9035b58b8 100644 --- a/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_7_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7138b55da8a0a0a3ed2c049ec84d01fa298223a3b6ffe391fad7a7e3a3a3beb2 -size 282778 +oid sha256:9bff67f57e722ebc2ea5c7cc9d7003619436a2962ee777a8e1ad812321346069 +size 283952 diff --git a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewGalleryView_de.png b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewGalleryView_de.png index ddd7968542..b9de3374d6 100644 --- a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewGalleryView_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewGalleryView_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:13d5e217d05992d797a34ec634e7900ab48cceddc02f169ad21ddaebbd985417 -size 344738 +oid sha256:e78c1dfefcf8629e1c02b03c5ca05843265fb25b44aef964c9d54197b9ba0d53 +size 346180 diff --git a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_0_de.png b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_0_de.png index 486830b06a..7b028207a2 100644 --- a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_0_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ec642dfd92ffcd3ba4a9ed06518481935c4e38342622c4c5c74efdd68a4e7190 -size 403979 +oid sha256:1d9fd9d99ac399ed6ab882a30dcfaf449886ba0561024835f3be21074ae85fe0 +size 405441 diff --git a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_1_de.png b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_1_de.png index 77e3ac9d5b..c3478ea3cb 100644 --- a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_1_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:45e5a33dc04d65050fd9098727f262dca526d5f55f2c64ecd235e9ae97aa8767 -size 402313 +oid sha256:004f347ce84e0211ebaf72a871071203f76f90e781b7c1ab9e084782b585e5ac +size 403748 diff --git a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_2_de.png b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_2_de.png index 7700d70b06..75c54a002c 100644 --- a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_2_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:608236a6a1864f0036fb0d2bcd85d7269557dc3453876495585573471d08d2de -size 65085 +oid sha256:0b705a94368fe57a369f39738453b879ef6a071fb21f4e82be2c7f496f33a66a +size 66376 diff --git a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_3_de.png b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_3_de.png index 486830b06a..7b028207a2 100644 --- a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_3_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ec642dfd92ffcd3ba4a9ed06518481935c4e38342622c4c5c74efdd68a4e7190 -size 403979 +oid sha256:1d9fd9d99ac399ed6ab882a30dcfaf449886ba0561024835f3be21074ae85fe0 +size 405441 diff --git a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_4_de.png b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_4_de.png index c9b90482e3..7ede512348 100644 --- a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_4_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:116502f69435e6d7a5fe9fe9a2a604fcca36d1c6e1e09836595769cf8e8022d9 -size 64937 +oid sha256:fd28c9d8f208f2fa94d6137c0a47b14937acfaf4ec428ebfba41f24e78c3680d +size 66234 diff --git a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_5_de.png b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_5_de.png index a1609b8144..78c5b8e4f4 100644 --- a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_5_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4d3ecea8217faca0d45acfa0a04023efff0124ad0563857ec4ce81e826033f74 -size 70311 +oid sha256:c903ba89b104015a9a051071bdab25983a48d3c88535ce24faf8acc3cf1b60c2 +size 71588 diff --git a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_6_de.png b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_6_de.png index a10d3f58f7..830a88c57c 100644 --- a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_6_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f350e78ea3bba4a80d22af4df58b8a6e415a68fe56770027c9da95da0cab0973 -size 327790 +oid sha256:a8ef16f4eae84a937bec473b20542aa23b10374ed47f465c6c44902782e4ecd4 +size 329199 diff --git a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_7_de.png b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_7_de.png index f609ffd014..a3c99f9857 100644 --- a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_7_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fd092ba5b859abc14b18702a613aa4b7bbfad43c2e91e294ad876edbcc5f9960 -size 74489 +oid sha256:f5e1628f7cbeb72d4d2f1fb37ea3c7c21e7655f296b6d02b2ed92ff2f7b9da85 +size 75633 diff --git a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_8_de.png b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_8_de.png index ed5e8cf442..dd9d9dea19 100644 --- a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_8_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5ae9aeabad16587e233b815e60c76856f30f7296562a2b4abb1149a8490435ee -size 410888 +oid sha256:8488a8ec009d83b31ab8db4d1d87f152cdbd5460ee7131a5db78f4856b31a250 +size 412255 diff --git a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_9_de.png b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_9_de.png index ff390f6987..f1eba6f3f1 100644 --- a/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_9_de.png +++ b/screenshots/de/features.messages.impl.attachments.preview_AttachmentsPreviewView_9_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6bc4d6814c5bfe1d1c4a0943a2f2a0ba56594aab722e12ab66644d2d660776c1 -size 90990 +oid sha256:8b0e044c9027845091154891ed2b947c871983d6f1e3dfbe0a513940104f69e9 +size 92204 diff --git a/screenshots/de/features.messages.impl.crypto.identity_IdentityChangeStateView_Day_1_de.png b/screenshots/de/features.messages.impl.crypto.identity_IdentityChangeStateView_Day_1_de.png index 9b2462e1d3..18201f411e 100644 --- a/screenshots/de/features.messages.impl.crypto.identity_IdentityChangeStateView_Day_1_de.png +++ b/screenshots/de/features.messages.impl.crypto.identity_IdentityChangeStateView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c40eb122d941ba96cdccf2c97659fce4f5599c88f7aff0ef3e5d084abd0fb241 -size 27341 +oid sha256:8efd2ca223045538669a5406e89c0592da68a852b995fe9f4ed80ce26028d471 +size 28468 diff --git a/screenshots/de/features.messages.impl.crypto.identity_IdentityChangeStateView_Day_2_de.png b/screenshots/de/features.messages.impl.crypto.identity_IdentityChangeStateView_Day_2_de.png index 56e8ed31c9..24f15deb8e 100644 --- a/screenshots/de/features.messages.impl.crypto.identity_IdentityChangeStateView_Day_2_de.png +++ b/screenshots/de/features.messages.impl.crypto.identity_IdentityChangeStateView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8b3f371d99fff430a018e02a3d64ff0e88fa615db43a3c48a66975fb00145970 -size 29875 +oid sha256:acca9d57f06b531bfe8b3c7fe531a9606fff5821b3a0bab9cfd14b07cf8f4e46 +size 30914 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 80e1c0e9f0..4ed281a9ae 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:58932b4453c81582a8f3bd4e47a4dc37355bc65ce23413715d240212e44c5dbc -size 54567 +oid sha256:a9044d355530d42bf4cf80b68734a24bd15e8737def23b20f12c5b3538a666a1 +size 54573 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 70f452b628..e88bc4613a 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:f199bc84eb10342e677b22e60c1b74bd9c1fe0b9842c474961e601c23c9d67ad -size 66719 +oid sha256:26a2415e0d3945ef1eb1458729abced89b33aae14ebfcf4e5042c13e79c432a1 +size 67963 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 80ad7b4e48..8306c02f08 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:743455d5509d5e81ee5eb4012a03c5ae8c2002750d57f5d379435e590adb2990 -size 67544 +oid sha256:0807858d077822765958f5bd3cd1d13e593fc61c7ceba23446a5a35962128633 +size 68831 diff --git a/screenshots/de/features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_2_de.png b/screenshots/de/features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_2_de.png index 4a7891fb57..1564b7245d 100644 --- a/screenshots/de/features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_2_de.png +++ b/screenshots/de/features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:284e2fd37747c7636fff247a6c1b20f2193dd330491ad490f7b2549706049cb8 -size 67023 +oid sha256:95b819fb0550a0a8e1fb5c410a2ac9ce0a38422dac383414b24f80d3f9ab867f +size 68631 diff --git a/screenshots/de/features.messages.impl.messagecomposer_MessageComposerView_Day_0_de.png b/screenshots/de/features.messages.impl.messagecomposer_MessageComposerView_Day_0_de.png index ea8e6ae90c..3fba7164f6 100644 --- a/screenshots/de/features.messages.impl.messagecomposer_MessageComposerView_Day_0_de.png +++ b/screenshots/de/features.messages.impl.messagecomposer_MessageComposerView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1e07d15bb95f7385596d7f454620a282277f8ca42e258728d6dbc17b5da84f59 -size 18045 +oid sha256:640cc8c42557579510656c0099b94298cacd0216bb4d321135dd970391fa540f +size 18081 diff --git a/screenshots/de/features.messages.impl.pinned.list_PinnedMessagesListView_Day_2_de.png b/screenshots/de/features.messages.impl.pinned.list_PinnedMessagesListView_Day_2_de.png index ea1d2c445f..ab77a7b6ba 100644 --- a/screenshots/de/features.messages.impl.pinned.list_PinnedMessagesListView_Day_2_de.png +++ b/screenshots/de/features.messages.impl.pinned.list_PinnedMessagesListView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:eb3bf7feff9efef978d63d7bc6ddfb0dcb55fc957bc62bcc22d366344f91abef -size 35281 +oid sha256:c41eea4411c373eb4d393938242cee47cf042ed3190549a9f394b573c163427c +size 35276 diff --git a/screenshots/de/features.messages.impl.report_ReportMessageView_Day_0_de.png b/screenshots/de/features.messages.impl.report_ReportMessageView_Day_0_de.png index c2e205a853..2e34acef15 100644 --- a/screenshots/de/features.messages.impl.report_ReportMessageView_Day_0_de.png +++ b/screenshots/de/features.messages.impl.report_ReportMessageView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8642c0ae6104ffd3e33487e076cb8d99fe6a4dc467d7cf20ed07b364af90a850 -size 47993 +oid sha256:bbeeb3931e628dcb1ce2f70c9e714c4307f69ce93a182de078cd363f53d36d70 +size 44928 diff --git a/screenshots/de/features.messages.impl.report_ReportMessageView_Day_1_de.png b/screenshots/de/features.messages.impl.report_ReportMessageView_Day_1_de.png index d6212f1f53..7524d319fc 100644 --- a/screenshots/de/features.messages.impl.report_ReportMessageView_Day_1_de.png +++ b/screenshots/de/features.messages.impl.report_ReportMessageView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3d0fe0eaa81d69d907d0c61461d1a3d0d9fe58479ddb673ae64de67b7e0b545c -size 49037 +oid sha256:099f7b55141744a446fce963605920e44e9bf2976bb145ecd1dbbcc4a85d0ae0 +size 46053 diff --git a/screenshots/de/features.messages.impl.report_ReportMessageView_Day_2_de.png b/screenshots/de/features.messages.impl.report_ReportMessageView_Day_2_de.png index df06449d29..b511708df1 100644 --- a/screenshots/de/features.messages.impl.report_ReportMessageView_Day_2_de.png +++ b/screenshots/de/features.messages.impl.report_ReportMessageView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6de435fa5af704675e6cf3482f360465e3bf652331413cdbb053a0995a59a290 -size 48563 +oid sha256:cedfc6c7ccff68d7242c6e40c343390fe6a97bec063fab786c7c621a973dd983 +size 45467 diff --git a/screenshots/de/features.messages.impl.report_ReportMessageView_Day_3_de.png b/screenshots/de/features.messages.impl.report_ReportMessageView_Day_3_de.png index 4e55a6d826..ef9773a99b 100644 --- a/screenshots/de/features.messages.impl.report_ReportMessageView_Day_3_de.png +++ b/screenshots/de/features.messages.impl.report_ReportMessageView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8171dfe50f4163aacd4ef0b1203cb6ab9202e4dbd956d84c1f5f725886047b8a -size 48203 +oid sha256:8e9b283a3fc01d73823796b008191125c7d0e86b54d44967a789586388d007d2 +size 45004 diff --git a/screenshots/de/features.messages.impl.report_ReportMessageView_Day_4_de.png b/screenshots/de/features.messages.impl.report_ReportMessageView_Day_4_de.png index e1139dbae1..d7e40c2ad2 100644 --- a/screenshots/de/features.messages.impl.report_ReportMessageView_Day_4_de.png +++ b/screenshots/de/features.messages.impl.report_ReportMessageView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9c9bf17634f831da27b9ad809c4c8144953045e81158fd9eb9832b9bce3c3e13 -size 28597 +oid sha256:a3aac63ace9fdb2ca9b7db98a7c68dfafb0c05d73d8a3b8054bc347916ed522e +size 28688 diff --git a/screenshots/de/features.messages.impl.report_ReportMessageView_Day_5_de.png b/screenshots/de/features.messages.impl.report_ReportMessageView_Day_5_de.png index df06449d29..b511708df1 100644 --- a/screenshots/de/features.messages.impl.report_ReportMessageView_Day_5_de.png +++ b/screenshots/de/features.messages.impl.report_ReportMessageView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6de435fa5af704675e6cf3482f360465e3bf652331413cdbb053a0995a59a290 -size 48563 +oid sha256:cedfc6c7ccff68d7242c6e40c343390fe6a97bec063fab786c7c621a973dd983 +size 45467 diff --git a/screenshots/de/features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_1_de.png b/screenshots/de/features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_1_de.png index 829bfd57cd..f3c10ee593 100644 --- a/screenshots/de/features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_1_de.png +++ b/screenshots/de/features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:421ebd92a8a7772d5e2cefd8744c835c12781d012cc3462676a63e13f0b1f93a -size 11313 +oid sha256:b0230e3dc857efc931b879dd511829f4cd8be646fcd8e2fa12675aa41a7eeb59 +size 11310 diff --git a/screenshots/de/features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_2_de.png b/screenshots/de/features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_2_de.png index cae13d102e..11d91a831b 100644 --- a/screenshots/de/features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_2_de.png +++ b/screenshots/de/features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0b5196548e23ad3308c3517c2764dafe73b620115d1721cd4eaa1967e795a174 -size 14262 +oid sha256:fb6f4dbb4d734751c293e1cd9b3598a26ca42e64ebf3816cc1dc5a2f8d9bd6d8 +size 15846 diff --git a/screenshots/de/features.messages.impl.timeline.components_ActiveCallTimelineItemView_Day_0_de.png b/screenshots/de/features.messages.impl.timeline.components_ActiveCallTimelineItemView_Day_0_de.png index b32e163fcd..c70c833c72 100644 --- a/screenshots/de/features.messages.impl.timeline.components_ActiveCallTimelineItemView_Day_0_de.png +++ b/screenshots/de/features.messages.impl.timeline.components_ActiveCallTimelineItemView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5e00ddf0daef5c64cb855328d22b1a53786b47bff6f19d24bde3d877b3b24b8c -size 59757 +oid sha256:8ad01e2a751b096dcf61e93d5b63a908b98ca632bb6c9185858918ca10a67dae +size 62577 diff --git a/screenshots/de/features.messages.impl.timeline.components_ActiveCallTimelineItemView_de.png b/screenshots/de/features.messages.impl.timeline.components_ActiveCallTimelineItemView_de.png index 3943014962..59714a01a8 100644 --- a/screenshots/de/features.messages.impl.timeline.components_ActiveCallTimelineItemView_de.png +++ b/screenshots/de/features.messages.impl.timeline.components_ActiveCallTimelineItemView_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9623e7f442cddf1ced46e6417a5402076463570065e02380b66bd78588d5ed3a -size 50867 +oid sha256:af80d82ccdeb86bc425b60ef922d645f8cca3b3cb5bc8fc5f96b2142855e0a7c +size 51061 diff --git a/screenshots/de/features.messages.impl.timeline.components_MessageShieldView_Day_0_de.png b/screenshots/de/features.messages.impl.timeline.components_MessageShieldView_Day_0_de.png index efa6d026ec..e077f26560 100644 --- a/screenshots/de/features.messages.impl.timeline.components_MessageShieldView_Day_0_de.png +++ b/screenshots/de/features.messages.impl.timeline.components_MessageShieldView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8bff52a45daa175476b42c16bf172d8675729febe2cde997415fe5c82bc17b5a -size 84029 +oid sha256:1c7490269a7b452c6e69f47273644bcd0c05b85a5743a3e8a6ba8059f2226427 +size 84461 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemAttachmentsViewScanningContentFailed_Day_0_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemAttachmentsViewScanningContentFailed_Day_0_de.png new file mode 100644 index 0000000000..09b3b69cf2 --- /dev/null +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemAttachmentsViewScanningContentFailed_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0bf9c87f37714f044ae011cc0d0ae18937ffb768916f99eac467ede70a8d59d9 +size 51593 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemCallNotifyView_Day_0_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemCallNotifyView_Day_0_de.png index b6f95124eb..d066e2e677 100644 --- a/screenshots/de/features.messages.impl.timeline.components_TimelineItemCallNotifyView_Day_0_de.png +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemCallNotifyView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a2d68bc8db6190fbd5205fdaa386c250ae3a2014804a5372052d851a313a6ef1 -size 47808 +oid sha256:9a54e2ad2fa08acf7a7eeb1d64538bc94b871f1f0183cd5d1d2be1024b6d3516 +size 49436 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowDisambiguated_Day_0_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowDisambiguated_Day_0_de.png new file mode 100644 index 0000000000..0435f55de6 --- /dev/null +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowDisambiguated_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff839731834d7d0c94fa9a2c412014ddbaeaa053c5af1c8cbd00a3f3a583f364 +size 379511 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 7a936dbc60..6a81e20990 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:b5646e1e203737e229787944dd524377f51fe1478507c9a6dd19916716526404 -size 38381 +oid sha256:674bfa1199fa8ef59ee13ee7eaabe199e067f3079b5ad38e2f7d9f884e302bbe +size 39940 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_0_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_0_de.png deleted file mode 100644 index 94428abb56..0000000000 --- a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_0_de.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:36d7cf2510d546d2b330b1d1b1674ce58df0558c547e443794a1e7b2222add87 -size 347897 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_1_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_1_de.png index cdecf067fe..e2866d48f7 100644 --- a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_1_de.png +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0892a187517a5d7d897c1bb39e3b6d90a4fbd4fc317ac0a450704dcbf8d3d50a -size 370764 +oid sha256:4a2d2e609376bb97ee7a6356d6a94b5ddfa67b399be1cebaa5771084318c05f2 +size 368704 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_0_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_0_de.png deleted file mode 100644 index 67490ba700..0000000000 --- a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_0_de.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f4431e2d9f30123949ea5676ce60f642234adcf9b5a33f2acc3f80ebf6609a66 -size 369730 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_10_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_10_de.png new file mode 100644 index 0000000000..f0dfbc3321 --- /dev/null +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_10_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7a6302320bd1e4258e03487539bf46b0b12781dfc8a22b3f9f267017a6146fa +size 354751 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_2_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_2_de.png new file mode 100644 index 0000000000..8aa2cca147 --- /dev/null +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_2_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02ecb903124273e24151ea2088f6b99144f7dcadba00a582b6210dd23835b5c9 +size 357743 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_6_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_6_de.png new file mode 100644 index 0000000000..0041a870b9 --- /dev/null +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_6_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2bd77c08be705c66225f16c29fd6826decd92b41922d0f8ffc0d1a63d8c59d2 +size 356193 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemRedactedMessagesGroup_Day_0_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemRedactedMessagesGroup_Day_0_de.png new file mode 100644 index 0000000000..98f07bf4fd --- /dev/null +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemRedactedMessagesGroup_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:772febc3af07576e41e37f5aa309019bef608792ada80664d6c512300c22d9ef +size 7332 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemScanningContentFailed_Day_0_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemScanningContentFailed_Day_0_de.png new file mode 100644 index 0000000000..1451ceea51 --- /dev/null +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemScanningContentFailed_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:015799b86a94d925abf92d42101cd3fa84086cb744ddb5935f07cc9a899fb20c +size 39618 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemScanningContentNotFound_Day_0_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemScanningContentNotFound_Day_0_de.png new file mode 100644 index 0000000000..50100128e1 --- /dev/null +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemScanningContentNotFound_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2825cb58a6a5a63dbf40d3afe943c965065498d57bce0c1bf1f355d02cebd9a4 +size 35483 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemScanningContentWithInvalidReplies_Day_0_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemScanningContentWithInvalidReplies_Day_0_de.png new file mode 100644 index 0000000000..5dcf9d1df7 --- /dev/null +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemScanningContentWithInvalidReplies_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45957fdc088e996b1a180f63114f97a794d9d02e89385c975ae2b523990c4acd +size 70308 diff --git a/screenshots/de/features.messages.impl.timeline.components_TimelineItemScanningContentWithRepliesFailed_Day_0_de.png b/screenshots/de/features.messages.impl.timeline.components_TimelineItemScanningContentWithRepliesFailed_Day_0_de.png new file mode 100644 index 0000000000..be5ffcb32b --- /dev/null +++ b/screenshots/de/features.messages.impl.timeline.components_TimelineItemScanningContentWithRepliesFailed_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:803b6e1549ad3bf7206e3d203ab34c313ec3b183aec9d861fcbaede90077b4a4 +size 62597 diff --git a/screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_1_de.png b/screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_1_de.png new file mode 100644 index 0000000000..9bcb8c4bc7 --- /dev/null +++ b/screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_1_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90b8cc7de8d97628a287e869087c1bc9fd9186c72680993b3b9beb5cd71a26a2 +size 26748 diff --git a/screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_2_de.png b/screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_2_de.png new file mode 100644 index 0000000000..50a9dbba7c --- /dev/null +++ b/screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_2_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:309d166e44a2ec931a72342183c684fa06cd9ea6e6ef6344dd2231aba40298d9 +size 25180 diff --git a/screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_3_de.png b/screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_3_de.png new file mode 100644 index 0000000000..a5cfaf9423 --- /dev/null +++ b/screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_3_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9511812ec2934f787f912d519b880342d9113f90042241994a3d85ee3885d6d +size 26950 diff --git a/screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_4_de.png b/screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_4_de.png new file mode 100644 index 0000000000..72eea947f4 --- /dev/null +++ b/screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_4_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:091bef6749d5871aae99836e4a0b6f3bfd8824b7c08dce05447e5ee4d5b94e1b +size 27367 diff --git a/screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_5_de.png b/screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_5_de.png new file mode 100644 index 0000000000..f7bb2af3d5 --- /dev/null +++ b/screenshots/de/features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_5_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b75b545599a7b0fb93626b2fd78c8bd6699da90178e51454c23ceb4955ddf233 +size 24456 diff --git a/screenshots/de/features.messages.impl.typing_TypingNotificationView_Day_6_de.png b/screenshots/de/features.messages.impl.typing_TypingNotificationView_Day_6_de.png index b4391f5d27..547ce9e39f 100644 --- a/screenshots/de/features.messages.impl.typing_TypingNotificationView_Day_6_de.png +++ b/screenshots/de/features.messages.impl.typing_TypingNotificationView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a819fa5adb93e34218d43b93a948b599d5474fcd7709086c430788da1feb8db5 -size 8907 +oid sha256:7ed2bb9e6df26a4ac408aafb13cfe7889bd3408acf0cd148bfb087837a444474 +size 9205 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 8b581b4305..56dac2c648 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:5b33243d95e6c67be43deef8957507f45bc414d567bb9e30248fcdf1c70010a9 -size 68125 +oid sha256:81fe5a244984077afaddf6fb0ed19197e110cdcd44f9bbb3b92b5f709b41b131 +size 69365 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 e96ade4870..2358238585 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:45987e3267c869b82157fd50dbd9e302db2979a23d1f27e56f192ba99c17fe06 -size 53451 +oid sha256:9c125bff5976c48d7c13cfa70415213c752eba33be76139fbdc9aa1dd4332b97 +size 53457 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 9d16f5e0e8..eb767c9dd8 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:2fa93c15e811fd802e96f5563b6e1070519383bf0ae3df3020ac5d08993bf263 -size 56974 +oid sha256:bd7c12a1c7b8912682dd4bb5b19c1766ec94483c2ff6240f5fd7ffb00d7850e0 +size 57881 diff --git a/screenshots/de/features.migration.impl_MigrationView_Day_1_de.png b/screenshots/de/features.migration.impl_MigrationView_Day_1_de.png index a0e64a312d..eb08d98cc2 100644 --- a/screenshots/de/features.migration.impl_MigrationView_Day_1_de.png +++ b/screenshots/de/features.migration.impl_MigrationView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c5f73b053c210b82025dfff04a4206bb268c9a18bed9d8b8cac458b87db8b990 -size 7856 +oid sha256:883b1ac5b3c272b3f31a674f480177b733faf662e7c7308414f0306a3b5d5ac3 +size 7897 diff --git a/screenshots/de/features.poll.api.pollcontent_PollContentViewMultipleSelection_Day_0_de.png b/screenshots/de/features.poll.api.pollcontent_PollContentViewMultipleSelection_Day_0_de.png new file mode 100644 index 0000000000..04dde37923 --- /dev/null +++ b/screenshots/de/features.poll.api.pollcontent_PollContentViewMultipleSelection_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2fa0d69002c82ea536b1d7c6d46a93bf53bb484b1f995929661af4b1b5d77d8 +size 48271 diff --git a/screenshots/de/features.poll.impl.create_CreatePollView_Day_0_de.png b/screenshots/de/features.poll.impl.create_CreatePollView_Day_0_de.png index b874537a90..8490b709eb 100644 --- a/screenshots/de/features.poll.impl.create_CreatePollView_Day_0_de.png +++ b/screenshots/de/features.poll.impl.create_CreatePollView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1718385f89dfcf0d25959d6276a80c7b060bcfb6aaa4a129289f8e9d24be9d4c -size 39127 +oid sha256:b904529735143f497a8bd686d956defb387fca465d79f196ea31b0fb1e2905e9 +size 43871 diff --git a/screenshots/de/features.poll.impl.create_CreatePollView_Day_1_de.png b/screenshots/de/features.poll.impl.create_CreatePollView_Day_1_de.png index a595226a80..c9310abe17 100644 --- a/screenshots/de/features.poll.impl.create_CreatePollView_Day_1_de.png +++ b/screenshots/de/features.poll.impl.create_CreatePollView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:52edad578eb163bb017c90f74ebea37c67baaf40f5dc55d19aed9a871967069d -size 41911 +oid sha256:551bdefdae594e78ccf9370808e965c89ebbc7a1b19332654374ddb9a29091cc +size 46639 diff --git a/screenshots/de/features.poll.impl.create_CreatePollView_Day_2_de.png b/screenshots/de/features.poll.impl.create_CreatePollView_Day_2_de.png index f6cd569c15..9802ba77c4 100644 --- a/screenshots/de/features.poll.impl.create_CreatePollView_Day_2_de.png +++ b/screenshots/de/features.poll.impl.create_CreatePollView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:70b638e21fd2ed3c46b73d64b9b2a659676562c6ef4272afb57475fca9ef256d -size 45323 +oid sha256:e72401929e4ac7a48f12cfa423a6be71af4976c4f2a9acf24f25b0ad01a83142 +size 48627 diff --git a/screenshots/de/features.poll.impl.create_CreatePollView_Day_3_de.png b/screenshots/de/features.poll.impl.create_CreatePollView_Day_3_de.png index 99223c780a..71cc04e7a7 100644 --- a/screenshots/de/features.poll.impl.create_CreatePollView_Day_3_de.png +++ b/screenshots/de/features.poll.impl.create_CreatePollView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a6686734904d6d4437d8abf5a0e7fb6dac0ec72d32e03f1ac321ad13e8973973 -size 49461 +oid sha256:df7c2a516239f94acbc36880dfe1db52d4495a6ec5c3059ee55279f9d4c20aef +size 53919 diff --git a/screenshots/de/features.poll.impl.create_CreatePollView_Day_6_de.png b/screenshots/de/features.poll.impl.create_CreatePollView_Day_6_de.png index 0a4aaabe49..8165346232 100644 --- a/screenshots/de/features.poll.impl.create_CreatePollView_Day_6_de.png +++ b/screenshots/de/features.poll.impl.create_CreatePollView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:012f6a80882cc973f9ced653b2e569769cc75bcc8d9317a9d8c8cfad71f16787 -size 42801 +oid sha256:cafbf0053eef36be1fbe63e0bd8feb363d9044e81cb01695bb3b538076927193 +size 47412 diff --git a/screenshots/de/features.poll.impl.create_CreatePollView_Day_7_de.png b/screenshots/de/features.poll.impl.create_CreatePollView_Day_7_de.png index 5af2bf4baa..61ae7507a2 100644 --- a/screenshots/de/features.poll.impl.create_CreatePollView_Day_7_de.png +++ b/screenshots/de/features.poll.impl.create_CreatePollView_Day_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:23cb62621f22cf2ee0f2c0811141efa2ae45fbca8ac11ef55a0f9ff86ac64874 -size 42030 +oid sha256:af3f147c290b222210a29a6dc0d761182f5ee491ddf7ff3b89128e71b38509e5 +size 48507 diff --git a/screenshots/de/features.poll.impl.create_CreatePollView_Day_8_de.png b/screenshots/de/features.poll.impl.create_CreatePollView_Day_8_de.png new file mode 100644 index 0000000000..48c4b33524 --- /dev/null +++ b/screenshots/de/features.poll.impl.create_CreatePollView_Day_8_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a70ed2f8402b90d609068413f7c95647d10c6757c719e752a264d5f91149b13 +size 51671 diff --git a/screenshots/de/features.poll.impl.history_PollHistoryView_Day_1_de.png b/screenshots/de/features.poll.impl.history_PollHistoryView_Day_1_de.png index 9cdf321360..0d5202bb88 100644 --- a/screenshots/de/features.poll.impl.history_PollHistoryView_Day_1_de.png +++ b/screenshots/de/features.poll.impl.history_PollHistoryView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c2f1237015fe09c45636a00b3bb5991e6b1c544ab129cdf0f720db881e0f2f50 -size 63697 +oid sha256:ff450572d9df872833402f9816648994990474f3428a31bfd3fde07605ece6e5 +size 63514 diff --git a/screenshots/de/features.poll.impl.history_PollHistoryView_Day_4_de.png b/screenshots/de/features.poll.impl.history_PollHistoryView_Day_4_de.png index d0ccb747c0..37df3169b0 100644 --- a/screenshots/de/features.poll.impl.history_PollHistoryView_Day_4_de.png +++ b/screenshots/de/features.poll.impl.history_PollHistoryView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9bd1288d60818f55cda8a46e72ca2babb308a5c2dbc14575e11d68dedcbbff77 -size 21024 +oid sha256:c2c10f543b5e608bb353479b51424ee766b7ccfefd074daeacc42453756e86f5 +size 20870 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_0_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_0_de.png index 6b3a52c5c7..95f48b3067 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_0_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5a20e8cb958f57646dcf248d26f4c5615e42f533e1b2caea79e11308618fa0e6 -size 61967 +oid sha256:e23a3eaf34d459a316cab2bf265b69a699131c2dd128a1cf59c52cb1da99f207 +size 61887 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_1_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_1_de.png index 0c953507e1..1d35fb2542 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_1_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fd88aeda625381fd2c5df2f2d559f2740cb0feaa2d5c60d54184bc5bf0aa5f3f -size 61819 +oid sha256:f907de211514bf13e61cefa3b48c94a2651e05a8e6376df9efcac289daa40ebf +size 61729 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_2_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_2_de.png index 5ef05e2919..a665ca13b7 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_2_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9df1cc31f2af90ec34b3c8a0b5f83c93ba58ede00ac3744f82c0687f33123191 -size 61825 +oid sha256:c4a6869b8185e1b2ab08594f7190d734e5065e28977de226ea00d023c23f015f +size 61735 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_3_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_3_de.png index f61f1701b4..35fa12198c 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_3_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cb2c03231f9c33f2336e1b6555b6e30df202a2fc7a276db56c5fed3cc3ac0b99 -size 61820 +oid sha256:694da50526a65701cc5daf6311d3aebe20d7a8d3fab3ec368691ffb1070883e0 +size 61736 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_4_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_4_de.png index 1f3835ec43..2fcb005a3f 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_4_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f6a27e52b0acaecba72e77ff940bf9921337a30aecbd2212309b342ce33cdf99 -size 61742 +oid sha256:b0a0bd203e6ee8e557b1823d36fefa64ef5fd742e4b1f0450292c238e27abc4d +size 61657 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_5_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_5_de.png index d79c5c60d8..d049f329c8 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_5_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4cb09d5eafeda3f2534fb0643d2abdcd6827b325914b4787eb85bcf5a9503629 -size 61976 +oid sha256:9f1fd5a996851f248c9e194e1b6b7df099c73f8059f36a416fec29411b2f7b85 +size 61887 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_6_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_6_de.png index 722a2c78ca..6e3ebd616c 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_6_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7fa6c2f4183a6a541fdf0bfc40e71d766faa75b20cbeb4f1fd3febc9a9def457 -size 61482 +oid sha256:09f9f904b954c96a8f6c485f01276ee38a5d0e87d3e74521b419e3ae74341b79 +size 61395 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_7_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_7_de.png index d7f542b204..ab5cfe7d0d 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_7_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:56e588e4b85d80524b9d14cf8ac87504c79493240c713c4c1aaeae94d4feee4d -size 61053 +oid sha256:63112e549bc6d97650d1f3811ace5c1e844271d8c20702bd5f8dcab8c2c58add +size 60968 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_8_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_8_de.png index 346c7f92b7..c9f3ab2483 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_8_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewBlack_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0f3a8df55e94e80166bd967eeb88055d9f3941de6c164075547a0bd236c49952 -size 64701 +oid sha256:45f8220f90ec7cdc3e9fef831355cbd170def626528123626e9880305dd65e1d +size 64587 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_0_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_0_de.png index aa857edfa6..9b1892ca97 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_0_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:10dd2fdb3d2f7a10b77e26c57946491c73aa7ebfc446875b4ef4b79e869b0c39 -size 58807 +oid sha256:c016f5257139ed5975f88662c3b20f642083bf86c34f4a91b16fc9ec5893c558 +size 58717 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_1_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_1_de.png index d7db8fbfe4..5218b52f6e 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_1_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dd93c4f402433e167d56cc0edbb247fe42eb8f707122f46876f3da6f87fe2e65 -size 58688 +oid sha256:c15d15065678756c9028ea9856e4ab1eb27a081c1bda73effde72686102aaa5c +size 58601 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_2_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_2_de.png index e45aa2cf93..3c272c6416 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_2_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:481ea026240e24b929c46d8cb7488636af8598f20cb150ae950ed4351a0680c4 -size 58691 +oid sha256:42680f4e5b030bb3c2dd5834ee6fccf2f360ae69fc9008937b702b6409a1cdf4 +size 58600 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_3_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_3_de.png index 621873bce7..77a4c931fd 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_3_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1a16cb75c06fd44b4ca8442e83e8bd859f64ab74065b2aedf784590b2aabc739 -size 58669 +oid sha256:f58782695d39b6518ee9796f4d4f3485fbc0a222c56db44a48231883cbdcf405 +size 58579 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_4_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_4_de.png index eedaa89535..38d8c6b230 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_4_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5b744a39e92500125729aeef314ef07aa2c46bccac740f3cf22207fb4c0654d1 -size 58568 +oid sha256:10f48729e7616dd384224ee1779e6178bd97f3892b6282a4e523eda5853ef10b +size 58478 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_5_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_5_de.png index 76a571c9eb..850960e61b 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_5_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c494f40ddaaeb1af4463191d1e22729ef71bbe996b0ff746f50190a0dec51256 -size 58814 +oid sha256:d46c6987753efd26f90e1a1e26f3b5432bce2845fb1983b7214d3b8abe9ec505 +size 58722 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_6_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_6_de.png index d502516b58..e02af2cde1 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_6_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fc3760069e627264ea63a42202d3fc6863ef4eb02c7c2579bbe37b1a71c432cf -size 58423 +oid sha256:746be29e461e5a7eee964ca8be9f3bdc4f6bf5c2b9abdd6b488a225ec8a923da +size 58333 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_7_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_7_de.png index bdb6b68b61..3d51b015e1 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_7_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6e0aa0f9100ca3b433bca30c63063974aecee319b3c37549f1deb41c8805e84e -size 58109 +oid sha256:47f45b22d8e3502b38c6369970c155eb6251d089ca337d39047701513d577e2a +size 58007 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_8_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_8_de.png index 3d296aaf23..c1db3055c5 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_8_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewDark_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:90d6d76d42c9f433c026f798977bf9908758c1c4a41da5885b62041cce33f2ef -size 61233 +oid sha256:7a14a46f9debb29c528acb75fd77091418ef5f0f99846084dca72c1aeb44d91b +size 61120 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_0_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_0_de.png index 22561db032..94733c21ff 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_0_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:99f140ce7dffc7b2c1cc9b3c34bb9bcbef04b94ad739be79e6a63dd8641f6ce8 -size 61233 +oid sha256:07ad5bfce8c24754fd8d8518d28354f40f845b6349ee91ea3656666a10078aec +size 61160 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_1_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_1_de.png index 3726730ae8..fb4d57aef9 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_1_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:81f808913d719fb64ccb4d6532c3590e9c854615e3770e37442630fd488c6ad7 -size 61089 +oid sha256:9050de2432da7f1151f33dd2204e45342e9a7225739068c0eab521a4abf3d30f +size 61005 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_2_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_2_de.png index 4a89df7275..25f4dfb00f 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_2_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c0f6af7885d5ebb97be1b626bd3f2bbca63070503c0a7cefc73937d91d1555b4 -size 61105 +oid sha256:dbc52143bf2c0dd607c587043c58c5984d5c4c0a1e3ecf72b74d6316bf4001d6 +size 61033 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_3_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_3_de.png index 2f509e7479..9ffd5cbfef 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_3_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:17a2aa055b8435f0502540dc32d0e1ed454b27ca48d5d028fe0c8bded167f36d -size 61104 +oid sha256:01da81b211071df9090e207831d8f245f6c395eb3f90f5fdc9f48c405e1c7b2f +size 61025 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_4_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_4_de.png index 1c916683fc..57bbe1373e 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_4_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:619fdb3918970d86cbdbfe09809bdc5f79406edff4c1c30fd82658be24c54f31 -size 61053 +oid sha256:c55e5ba0918567e2f7ede2294aecc19543da46a9ddf2a34c4a0088ce412592a3 +size 60980 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_5_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_5_de.png index b90168f660..1118fb9a34 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_5_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6bb91aceccb223fc37fbff0b479585186278b3666e48a1f7ba0d9b90564286f1 -size 61232 +oid sha256:05bdb8629425a0068827b6bc69290d374de729e0df5262cce41343a906a82489 +size 61159 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_6_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_6_de.png index fee1c64994..5f4756ade3 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_6_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:343281ef6e66ccc7f8bfdfb590dfe0237cb96bc8113ca205894b5b7e1a90867e -size 60803 +oid sha256:85c646eb407752a5cf7023c9c9e581fb2fb6e81d48d67acb89973f81f34d4ba1 +size 60733 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_7_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_7_de.png index 0db88371da..513620cf1e 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_7_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:79fb880efb60041c1a1cd4188ab8c8535ced195756ce7c808c986ffd8c729660 -size 60490 +oid sha256:de2626e86951d973759ea697da4172fdd134e6f4a19ed01e9aa028f86d035247 +size 60413 diff --git a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_8_de.png b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_8_de.png index 10333589af..d4d309d444 100644 --- a/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_8_de.png +++ b/screenshots/de/features.preferences.impl.advanced_AdvancedSettingsViewLight_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3df9f69bc3f032de02907f2ab74c1ca655d5dc14282bef788a79526acf7e892c -size 63801 +oid sha256:5bc8f6a1b52416f1b1552b84e030009cb5936a2b30fb7e2b57f4319581f15463 +size 63703 diff --git a/screenshots/de/features.preferences.impl.developer_DeveloperSettingsView_Day_3_de.png b/screenshots/de/features.preferences.impl.developer_DeveloperSettingsView_Day_3_de.png new file mode 100644 index 0000000000..669f6cf396 --- /dev/null +++ b/screenshots/de/features.preferences.impl.developer_DeveloperSettingsView_Day_3_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92238f451043d09a7dd67535290d1d6758201a1df53bd4cc7296bc5040d64359 +size 43376 diff --git a/screenshots/de/features.preferences.impl.notifications.edit_DefaultNotificationSettingOption_Day_0_de.png b/screenshots/de/features.preferences.impl.notifications.edit_DefaultNotificationSettingOption_Day_0_de.png index ca859882de..bb34931bfd 100644 --- a/screenshots/de/features.preferences.impl.notifications.edit_DefaultNotificationSettingOption_Day_0_de.png +++ b/screenshots/de/features.preferences.impl.notifications.edit_DefaultNotificationSettingOption_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:005d16221643cc3da7d2eb35cc4b3a9c08c3817c9cd397bbc7a628aa95e2bc69 -size 41295 +oid sha256:b56c88dd2b5ee7c7c033b4a0b7a79b88e95db14e3f76f2226a02cf3cfc1d6062 +size 41680 diff --git a/screenshots/de/features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_4_de.png b/screenshots/de/features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_4_de.png index 5a39cd248f..61bb4db299 100644 --- a/screenshots/de/features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_4_de.png +++ b/screenshots/de/features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4f6146621ec0e29ea99da2a648bfec43698eefa1194ebeda2e9177088655171d -size 68145 +oid sha256:37cfa58a11722484308550620bcc1a669ef2be67cb2d51dad71267f69840e182 +size 68442 diff --git a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_0_de.png b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_0_de.png index 28e10cd29f..5c024da722 100644 --- a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_0_de.png +++ b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ebcfc4fa6ef768abb664902dad0724eaf73158b4b64369213d4db78f2f704b39 -size 64287 +oid sha256:9cf1d5b35301522c8d92b17123b1c392e23262b3272c7f6fa9dac4ba5b063235 +size 63553 diff --git a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_12_de.png b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_12_de.png index 6decdb5c2c..d4599c9a29 100644 --- a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_12_de.png +++ b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_12_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cec947e51e186db75c49d3a3adc47982ed905e807bcf9f16c8a82540647d2a2e -size 72679 +oid sha256:c13000a737ef89565f272d208c7302c604ed0e219e046c1269568b21aa0f5b67 +size 72205 diff --git a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_14_de.png b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_14_de.png index b74ab5753e..bc86f2dcdd 100644 --- a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_14_de.png +++ b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_14_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9a7fe93346bf094176a1569b936b2dc71fb5900996d8781ff6f93205d746da60 -size 54740 +oid sha256:dd7927e407fa0ec79eb3959a4d539d38b685cedaa48fd5953407d3ad3ea93e8b +size 54099 diff --git a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_15_de.png b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_15_de.png index 2ffd576496..1912cea50e 100644 --- a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_15_de.png +++ b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_15_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:10ef1294629ac095d908aa90cbb9405ab3a36d9a9aff29ac58e59e4d18958782 -size 53352 +oid sha256:fc16c10e91bd0fdab7bf281e92cfbdf089201d5594e50f5b58ec9178fa3c3187 +size 52707 diff --git a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_16_de.png b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_16_de.png index c895b9126c..2aad6c7670 100644 --- a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_16_de.png +++ b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_16_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a2d14e0d32b87800ed3e37abf27034759343cbcf2cc83175c1af58cf83c7dbb3 -size 53624 +oid sha256:0aa865d3fc769013ffc37279e3fa469743d26f411d4aea34608e6f4ef4138461 +size 52346 diff --git a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_17_de.png b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_17_de.png index cdaa1079da..70903c4c44 100644 --- a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_17_de.png +++ b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_17_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a8ab85c60cb9bc10c56cef4acbe4cd79b5992fe966e96bf9ce8305eaa814d359 -size 54477 +oid sha256:4d9f5a99378270c44885f44c520b19c5f3f762682d2e1c33c1a0bcac7d9d1f14 +size 53829 diff --git a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_18_de.png b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_18_de.png index 6577a47a2c..9113bee1fb 100644 --- a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_18_de.png +++ b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_18_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:58edba96fe40c8653f98116fa297a38b1e1029d23301e36e62f8dc179e5edbed -size 50050 +oid sha256:fbd3a28e553e04ff074dd8017bbe1a9cb46eea6ee24f62893359b13c36c1291b +size 50677 diff --git a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_19_de.png b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_19_de.png index 5e45f767ca..9a2341ce06 100644 --- a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_19_de.png +++ b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_19_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3f99b8b10e5cb6d0e7e844932b06453611c763494c449c9f1f1f524c5eae06b9 -size 45713 +oid sha256:51edf7caaf7698e127f5a6f82707277542bac935c54fb1fbddd2ecff297280f2 +size 47730 diff --git a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_1_de.png b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_1_de.png index cdaa1079da..70903c4c44 100644 --- a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_1_de.png +++ b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a8ab85c60cb9bc10c56cef4acbe4cd79b5992fe966e96bf9ce8305eaa814d359 -size 54477 +oid sha256:4d9f5a99378270c44885f44c520b19c5f3f762682d2e1c33c1a0bcac7d9d1f14 +size 53829 diff --git a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_20_de.png b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_20_de.png index 14ff3ed7a3..e513e1ecf5 100644 --- a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_20_de.png +++ b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_20_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:00a3099f61911b52367b8598678c24dc27f05b8806b20c86324f13cf7e26d3cc -size 47623 +oid sha256:58a9b4d319a69696ef1d3cdaba52a26f0a645fa4d8d550644ca70d7ada849e87 +size 50366 diff --git a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_2_de.png b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_2_de.png index 3c6a492fc0..e0f94e0538 100644 --- a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_2_de.png +++ b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2cb1b274d525e59e3c93355bac24618d5d38bd5df58907b8f6b7db831876ffd6 -size 48741 +oid sha256:8c5cd73d0969406d41a5b9439c90bd7232209df025cb3a1dcaced7abf7be03b6 +size 48410 diff --git a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_3_de.png b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_3_de.png index 5f36cdb331..d678d8cf19 100644 --- a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_3_de.png +++ b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9546e98003536641b258b39fa282283f6bad759eb05ce3fe9c7ab69b02b1cbc3 -size 49773 +oid sha256:a4e456e0c291bd29c4c2159a1aa373150e2b3b03308cc8760b684c86a33e6662 +size 49423 diff --git a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_4_de.png b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_4_de.png index 5f36cdb331..d678d8cf19 100644 --- a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_4_de.png +++ b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9546e98003536641b258b39fa282283f6bad759eb05ce3fe9c7ab69b02b1cbc3 -size 49773 +oid sha256:a4e456e0c291bd29c4c2159a1aa373150e2b3b03308cc8760b684c86a33e6662 +size 49423 diff --git a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_5_de.png b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_5_de.png index cdaa1079da..70903c4c44 100644 --- a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_5_de.png +++ b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a8ab85c60cb9bc10c56cef4acbe4cd79b5992fe966e96bf9ce8305eaa814d359 -size 54477 +oid sha256:4d9f5a99378270c44885f44c520b19c5f3f762682d2e1c33c1a0bcac7d9d1f14 +size 53829 diff --git a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_6_de.png b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_6_de.png index f2f5e95e76..46ac9e8086 100644 --- a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_6_de.png +++ b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9a260b78438fdb4f4703582dc2995f578be339974a2d4a4c00d5db7599528028 -size 47048 +oid sha256:dc0c12d386e2e7adf9bdadc025c05e5f7efc00b016a39929960f16b76d311b6b +size 46702 diff --git a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_7_de.png b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_7_de.png index cb26672a0d..6d669088aa 100644 --- a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_7_de.png +++ b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a5e4cd12be5556860aac1e80792a6fb22210e39cd3a4060e44a1664caa46dfb3 -size 52111 +oid sha256:f3b1d18407c1464ad3bff9699e2a43e2409eceb2905a1aa7431d4bd61fff0f1e +size 51741 diff --git a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_8_de.png b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_8_de.png index cdaa1079da..70903c4c44 100644 --- a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_8_de.png +++ b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a8ab85c60cb9bc10c56cef4acbe4cd79b5992fe966e96bf9ce8305eaa814d359 -size 54477 +oid sha256:4d9f5a99378270c44885f44c520b19c5f3f762682d2e1c33c1a0bcac7d9d1f14 +size 53829 diff --git a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_9_de.png b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_9_de.png index cdaa1079da..70903c4c44 100644 --- a/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_9_de.png +++ b/screenshots/de/features.preferences.impl.notifications_NotificationSettingsView_Day_9_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a8ab85c60cb9bc10c56cef4acbe4cd79b5992fe966e96bf9ce8305eaa814d359 -size 54477 +oid sha256:4d9f5a99378270c44885f44c520b19c5f3f762682d2e1c33c1a0bcac7d9d1f14 +size 53829 diff --git a/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_0_de.png b/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_0_de.png index 2ae72d9689..2c7b36fdf4 100644 --- a/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_0_de.png +++ b/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:aaba3c19b010ffd52f6230aff6558cf540b24cf744af6fb12686af48a15143ca -size 43156 +oid sha256:45fa80acfcfff38d61da79915fce78ddc325e5c5de6fac8deef2a7aa8ae16f00 +size 42988 diff --git a/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_1_de.png b/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_1_de.png index d071bf69c4..4c53d16614 100644 --- a/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_1_de.png +++ b/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0764b13f691ca467984fe6bcceb95cb23d71692be727b7ffcfeb3c9fb4b2d316 -size 29894 +oid sha256:0e938d00293dad16a88ed03ad99adfd18341b48fe1a2eda1e30726272d883f3e +size 29735 diff --git a/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_2_de.png b/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_2_de.png index 2dd8904bd5..fb58afd2fe 100644 --- a/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_2_de.png +++ b/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5b6d1134d206d8915960408e7fcf1927128113c5f4c1e916963615610f8425cf -size 40891 +oid sha256:d61775dfc64bc337e40779c13ea596487241f16e90fc8dd481d0660223055f25 +size 40714 diff --git a/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_3_de.png b/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_3_de.png index 04230b5373..dfe261e029 100644 --- a/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_3_de.png +++ b/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f8d1c7edccbd8361168cd8dc0f14ef5222527b0d5fd4daf9e5ab5e0682bb9618 -size 29821 +oid sha256:5a777133b1457c3de07eeab3bbd9a99420e5bbdc6d8620a28dcbe4d729e06480 +size 29626 diff --git a/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_4_de.png b/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_4_de.png index d444e08c9f..2e3c59acae 100644 --- a/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_4_de.png +++ b/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4fd099ea9346c16ee9ee698fe8b87d233ed30464aeae8aa2c253d22724e60519 -size 32163 +oid sha256:fe5661f6bec380223cc254e2cb5cab8037a6f2db970cb6f35250ddd59536d751 +size 32001 diff --git a/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_5_de.png b/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_5_de.png index 57fc5ea785..2d860e2d60 100644 --- a/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_5_de.png +++ b/screenshots/de/features.preferences.impl.root_PreferencesRootViewDark_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a688d51827de99ee98d4839f822a532f89ac325d09c185d47bd88bd06e64ad20 -size 33741 +oid sha256:73f357e154ac2d5083dcd319abd8a89eda216d9cda9dc17ca21a0295f364d4bd +size 35431 diff --git a/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_0_de.png b/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_0_de.png index 8e2be71c09..479b654ee1 100644 --- a/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_0_de.png +++ b/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c3496c387e518721f682d8d37f86d1ba44eb545c435b9021348aa32a8f285036 -size 44664 +oid sha256:3349c4c8ee6372cf178c106d14ff8779887a25a54f40ab0d72d3fa52fe0121d2 +size 44466 diff --git a/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_1_de.png b/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_1_de.png index 9a07ad459c..661ceeb327 100644 --- a/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_1_de.png +++ b/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f4553d9e309ac70ddcde67918d0c0b2cf723bc0b9872ce179f72fade0c5350c1 -size 30980 +oid sha256:8f7352bdcf1231407f6a45505d01049c9bb229a5766e1ebb0027b4fe1a0868ce +size 30799 diff --git a/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_2_de.png b/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_2_de.png index 3765c2b845..b55ff7e795 100644 --- a/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_2_de.png +++ b/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:295453fa5dc5fe9bbe20feeaa181bd87bcfb70e61f77e0091f030395065c47f0 -size 41936 +oid sha256:924364ab94c4d402e2bd4f533b6c446b814a30a4a60874bf2d7f79fd30a18a62 +size 41744 diff --git a/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_3_de.png b/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_3_de.png index 2dfc50230c..a44ce5af0c 100644 --- a/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_3_de.png +++ b/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b39306e91c542a171ae00749137a8dea28f969d14b520588d8b5a62dda2e36e4 -size 30763 +oid sha256:e1272dca02d44123fb0d3f08aac070b3ce5b576af112f9563a01a2506d9b5fd0 +size 30562 diff --git a/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_4_de.png b/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_4_de.png index 83bb2705bc..1348a6c1cc 100644 --- a/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_4_de.png +++ b/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dfce749148c0039600a8875f7532ba25bf7d995b29d8ddf6b2c0fb19c291cc91 -size 33271 +oid sha256:ff7ef7179a82a57c198fef1a229fe2434f0db80981f702379e2e5df5fb952cb6 +size 33076 diff --git a/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_5_de.png b/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_5_de.png index 961959abe7..aa8966e289 100644 --- a/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_5_de.png +++ b/screenshots/de/features.preferences.impl.root_PreferencesRootViewLight_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e1c2366fa39aa41e3737b1dfde32b002a495fd65e8b2661c620c76f404fc42be -size 34928 +oid sha256:bcc4e85386ce31437c3748739661e7ce5d0911ccb79b0d05489ee107fafb5198 +size 36757 diff --git a/screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_0_de.png b/screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_0_de.png new file mode 100644 index 0000000000..f6d626a784 --- /dev/null +++ b/screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4deb533623d275646247a37316c21766253d049a1d1790bd3abb4f75864185e +size 9240 diff --git a/screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_2_de.png b/screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_2_de.png new file mode 100644 index 0000000000..f4ea53575e --- /dev/null +++ b/screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_2_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4248082922f10519f13cc95184764c2348b987755f8debba53a1412113d364bb +size 7820 diff --git a/screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_3_de.png b/screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_3_de.png new file mode 100644 index 0000000000..f3bb5813d1 --- /dev/null +++ b/screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_3_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90e19f519e2b1e39487a8e4c2aa831b5d692cbe5049a059d3fb73394a891d564 +size 32599 diff --git a/screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_4_de.png b/screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_4_de.png new file mode 100644 index 0000000000..daddb51923 --- /dev/null +++ b/screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_4_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23b0fc57d8830887d2e3226f4b32833affcbcb57d3112a6e0e2c725c7bbec193 +size 30734 diff --git a/screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_5_de.png b/screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_5_de.png index ec10c5829f..d50f843d85 100644 --- a/screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_5_de.png +++ b/screenshots/de/features.preferences.impl.userstatus_UserStatusView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f9fb27514c82855f49df97f578c889f02883d7d25970a68192e1450b4a53f6dc -size 13207 +oid sha256:6b831f696d2c114ba71f32f1a6ff4cf01d0abfdaadfd115068f46023e2d909a9 +size 15056 diff --git a/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_0_de.png b/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_0_de.png index 72d7ba8392..f1cd14b336 100644 --- a/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_0_de.png +++ b/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:00a586d56752e967ed86b8b26c1217a0c590dff9381b78a4de3cab4627d47198 -size 55050 +oid sha256:0b0160236611dc7680a36c2cc27a97adea8595a98692f6979927b468abdd2728 +size 55433 diff --git a/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_1_de.png b/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_1_de.png index 89deb6349d..1e6e31e712 100644 --- a/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_1_de.png +++ b/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f61085b64fe9ffccdf7373f7cf1b636a7a1bb401ea872a109f1537bf857d01bb -size 116347 +oid sha256:159d4c841191d7313a8cf748f56973fbc18f2ead1803d572fab6513db45ca2fe +size 116270 diff --git a/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_2_de.png b/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_2_de.png index ed5e981a3d..435ace404c 100644 --- a/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_2_de.png +++ b/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a94df4d203d0c45186a54acaae4c66a71379b2ee3127488ae2d28e7961357229 -size 52077 +oid sha256:019921cb1a4ad1af68101453a48b968676c88c9089f9f41a48784c9cb08c34c9 +size 52489 diff --git a/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_3_de.png b/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_3_de.png index 72d7ba8392..f1cd14b336 100644 --- a/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_3_de.png +++ b/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:00a586d56752e967ed86b8b26c1217a0c590dff9381b78a4de3cab4627d47198 -size 55050 +oid sha256:0b0160236611dc7680a36c2cc27a97adea8595a98692f6979927b468abdd2728 +size 55433 diff --git a/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_4_de.png b/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_4_de.png index c9cde45f9e..e8444b1c8a 100644 --- a/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_4_de.png +++ b/screenshots/de/features.rageshake.impl.bugreport_BugReportViewDay_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:847592e06f55cb5f5919ce3446889c716bf1291caa476ec23224f694eb4e0a15 -size 43927 +oid sha256:d01ac40d5eaa3d013fd79b32ec3db429560237c5a3ce40cc162163f730402c2b +size 44400 diff --git a/screenshots/de/features.reportroom.impl_ReportRoomView_Day_0_de.png b/screenshots/de/features.reportroom.impl_ReportRoomView_Day_0_de.png index ba288ca42c..ae804f7a95 100644 --- a/screenshots/de/features.reportroom.impl_ReportRoomView_Day_0_de.png +++ b/screenshots/de/features.reportroom.impl_ReportRoomView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2784efb92c72d316fffc5e69a833c1cb378e3880dae72b373d9ed997cb730543 -size 33251 +oid sha256:883b2bbe4e123c2cde8f7950f976b6e44a3f564744e4d54c019c821ba8076b18 +size 33307 diff --git a/screenshots/de/features.reportroom.impl_ReportRoomView_Day_1_de.png b/screenshots/de/features.reportroom.impl_ReportRoomView_Day_1_de.png index a20c69b21f..825510485d 100644 --- a/screenshots/de/features.reportroom.impl_ReportRoomView_Day_1_de.png +++ b/screenshots/de/features.reportroom.impl_ReportRoomView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3a19adff84b73fedda5474f5bb5af99be628bcca83d9f8f2fdc046199c74d56a -size 31833 +oid sha256:65b5c40bcf5f1e7502b88b530e39cf9af4df7bae60b85f9f762d54608c7c4082 +size 31873 diff --git a/screenshots/de/features.reportroom.impl_ReportRoomView_Day_2_de.png b/screenshots/de/features.reportroom.impl_ReportRoomView_Day_2_de.png index b21060262d..99785231b0 100644 --- a/screenshots/de/features.reportroom.impl_ReportRoomView_Day_2_de.png +++ b/screenshots/de/features.reportroom.impl_ReportRoomView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d9b0729665ed3faf1b6a9bb63ef99a0ec96261eb5606fac25345c96aba2e9ef9 -size 32951 +oid sha256:041a6e7f950a4a0019703cb9478d4d3ed1723297db988b27fe8b5d4908904e29 +size 33018 diff --git a/screenshots/de/features.reportroom.impl_ReportRoomView_Day_3_de.png b/screenshots/de/features.reportroom.impl_ReportRoomView_Day_3_de.png index df5213808e..4556d95c1b 100644 --- a/screenshots/de/features.reportroom.impl_ReportRoomView_Day_3_de.png +++ b/screenshots/de/features.reportroom.impl_ReportRoomView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:68f7fbfd756a6dfc8c282ee48a182de9a18bf48a8c3cbbecce2dc09e65e9669c -size 28708 +oid sha256:82ea6788a16625b36a0321603b7aab433201272fb1531c9d948b4e5827a19356 +size 28624 diff --git a/screenshots/de/features.reportroom.impl_ReportRoomView_Day_4_de.png b/screenshots/de/features.reportroom.impl_ReportRoomView_Day_4_de.png index 0b05408cc6..925587fc05 100644 --- a/screenshots/de/features.reportroom.impl_ReportRoomView_Day_4_de.png +++ b/screenshots/de/features.reportroom.impl_ReportRoomView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:08e7a7901ed21660b620b7b376f7ec4d259a05df37ece4d0d56e3038a1468f21 -size 31544 +oid sha256:4c94fe82fe8eb283d5356a9a4b54c674444eab9dda9879be93623a08b8b73324 +size 31588 diff --git a/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_0_de.png b/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_0_de.png index cdaffc1a49..d8aaaaecd8 100644 --- a/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_0_de.png +++ b/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d03e7f9d66b93e98bd4c76669d42ae28a5b70fc7a675c252b77eca422b8afa4f -size 56809 +oid sha256:0da42b3de010b9f26af9d78353e614069f02cfbba3fc3fc8371a9b9ceafeb7a2 +size 56258 diff --git a/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_1_de.png b/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_1_de.png index 900983a6d9..02d3654828 100644 --- a/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_1_de.png +++ b/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d24e1c49ba19e2d095b2bd4dfd4999a36620bf881520249a5db5c76c4753fb94 -size 55180 +oid sha256:99a6da48eb1aed52b3be3543c23651f7a0c3f1e4a3ba0d74e767c7fb67acd157 +size 54634 diff --git a/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_2_de.png b/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_2_de.png index 0a1c88d294..abe46d5748 100644 --- a/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_2_de.png +++ b/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ce1b25f6e6dab11a22e038c2e1561d88c09f75a4d961a279bf485163015adaaa -size 56651 +oid sha256:b408de2700b552abcac42811a68d11c5876651ded4ecc3ecc18a9aecf4ee9134 +size 56111 diff --git a/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_3_de.png b/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_3_de.png index d7687aa81f..7548084308 100644 --- a/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_3_de.png +++ b/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:68f712db6d7db3c628acfec73233f2bd9704b86aa0993787e941ef5d5b1e2cae -size 50354 +oid sha256:bde00b19c063701ee804520210fb400aae88191689c747d1fbc043e88f505664 +size 49958 diff --git a/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_4_de.png b/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_4_de.png index 784bb3cbcc..7ea7a48384 100644 --- a/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_4_de.png +++ b/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d56ec5babe852f439f172f8548d4cb03b3fa60b0e5ea21e9afd5fb6abb38b0e8 -size 47972 +oid sha256:affdd13eb779b02a5480d0f3e8424421583900da2a64a563111b64dfe8e05bf9 +size 47575 diff --git a/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_5_de.png b/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_5_de.png index 2e8b0be837..5a0d57cf32 100644 --- a/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_5_de.png +++ b/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a24f3c88154b22392a93e7ee473e5f3e55dd501e328179477bf4e3e4026f6b47 -size 56934 +oid sha256:23b48df6a7a724246c30b814cffa01785e179801d543915be9525ca0a372109d +size 56538 diff --git a/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_6_de.png b/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_6_de.png index 92ee85315c..6ba8404e0a 100644 --- a/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_6_de.png +++ b/screenshots/de/features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:92e1247b3a6705b6e06ef1ed6d2249c84339120e2e74cf3a73edd48dd947ac5a -size 57653 +oid sha256:e4a558f9d0d614e28aec5f5db34155f9ad968c9fdcf46c8e650890cca1bc9568 +size 57105 diff --git a/screenshots/de/features.roomdetails.impl.invite_RoomInviteMembersView_Day_0_de.png b/screenshots/de/features.roomdetails.impl.invite_RoomInviteMembersView_Day_0_de.png index cf146906cf..c42604cff8 100644 --- a/screenshots/de/features.roomdetails.impl.invite_RoomInviteMembersView_Day_0_de.png +++ b/screenshots/de/features.roomdetails.impl.invite_RoomInviteMembersView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0559b082057b4db37e307fbb15bcba79ebe91d47ca3a71a748ae1f8a30d90ac6 -size 8791 +oid sha256:935713278fc1f6e1cddd92960d1f174f72e4be23170e83fa8951dfb5a6e1ebad +size 9502 diff --git a/screenshots/de/features.roomdetails.impl.invite_RoomInviteMembersView_Day_1_de.png b/screenshots/de/features.roomdetails.impl.invite_RoomInviteMembersView_Day_1_de.png index 54f93a1f27..93a1e13187 100644 --- a/screenshots/de/features.roomdetails.impl.invite_RoomInviteMembersView_Day_1_de.png +++ b/screenshots/de/features.roomdetails.impl.invite_RoomInviteMembersView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:902f235d1b369a805212e6da80cdb7c8d754f0078d732ca29c998bef6c553b4f -size 8670 +oid sha256:a4f7303e8a7145bf63c107ee767486bbf65084b564fdbfb5ab873a5cfef66d98 +size 9349 diff --git a/screenshots/de/features.roomdetails.impl.invite_RoomInviteMembersView_Day_2_de.png b/screenshots/de/features.roomdetails.impl.invite_RoomInviteMembersView_Day_2_de.png index cf146906cf..c42604cff8 100644 --- a/screenshots/de/features.roomdetails.impl.invite_RoomInviteMembersView_Day_2_de.png +++ b/screenshots/de/features.roomdetails.impl.invite_RoomInviteMembersView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0559b082057b4db37e307fbb15bcba79ebe91d47ca3a71a748ae1f8a30d90ac6 -size 8791 +oid sha256:935713278fc1f6e1cddd92960d1f174f72e4be23170e83fa8951dfb5a6e1ebad +size 9502 diff --git a/screenshots/de/features.roomdetails.impl.invite_RoomInviteMembersView_Day_3_de.png b/screenshots/de/features.roomdetails.impl.invite_RoomInviteMembersView_Day_3_de.png index defb968670..fa58f63d41 100644 --- a/screenshots/de/features.roomdetails.impl.invite_RoomInviteMembersView_Day_3_de.png +++ b/screenshots/de/features.roomdetails.impl.invite_RoomInviteMembersView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9a675544757a826ccca7b3e4508d89c93442336734378ac4f228603716c7e1ca -size 24696 +oid sha256:9f06ef04a309e7909054c7f223b8e13deeead22c16edabf0afe97a0a52e7c37a +size 25221 diff --git a/screenshots/de/features.roomdetails.impl.members_RoomMemberListView_Day_6_de.png b/screenshots/de/features.roomdetails.impl.members_RoomMemberListView_Day_6_de.png index 9043f59809..47ce6b8b08 100644 --- a/screenshots/de/features.roomdetails.impl.members_RoomMemberListView_Day_6_de.png +++ b/screenshots/de/features.roomdetails.impl.members_RoomMemberListView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cbc6c35cbe6390acd737c974248a6ac8a9f6621ac421a46118b56cf84a5c6441 -size 35132 +oid sha256:f37ae57c58b58922ba96912e8cb3b8b9e7b2470a5cdb2d29b8c578a05e71d864 +size 34444 diff --git a/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Day_0_de.png b/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Day_0_de.png index 028dcdca8c..22d85a7e38 100644 --- a/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Day_0_de.png +++ b/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:56e45625b5fbe49b523dd13b2e16719b7f894e22914b11cc4712f778d27e8cb1 -size 35927 +oid sha256:66947325d3aa62c03e7ac3d527082fd91305fe31e551ffea2c11f5e058d0e99b +size 35722 diff --git a/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_0_de.png b/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_0_de.png index d20e8ce18b..b87576cb97 100644 --- a/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_0_de.png +++ b/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6015c6bb424ff8949b3f71ee04f553360524dc71415131c455aa3bb95ce6e527 -size 47527 +oid sha256:74b05aeb9313278a0c4e5c4e16c458446e9c5212eeb15e18cf0f64c6f1dd3294 +size 47782 diff --git a/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_1_de.png b/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_1_de.png index 86d231a48a..913febcd70 100644 --- a/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_1_de.png +++ b/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:aff7164a2395afc794ea72b349dabc30dcc4813e76e00e5c67683bd3a0de4535 -size 49064 +oid sha256:cda29ceffed6baf796a05d8fc5b7acd701d7512abbc28cbd74ca86aa3a690c89 +size 48782 diff --git a/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_2_de.png b/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_2_de.png index 48c295e856..a0e7a6fde0 100644 --- a/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_2_de.png +++ b/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2199e0eba60570bc2b0aa878e53a0cf0f841ad4fbefb169706e0744162f28e68 -size 40426 +oid sha256:c29eb20bab9c308beddcc34823294e38080cad9ad7af9d729a8b319a2ab8f917 +size 40647 diff --git a/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_3_de.png b/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_3_de.png index ffccdfc805..ec35cebac5 100644 --- a/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_3_de.png +++ b/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d076b1d965d84086a075953bc8ba74d51caa5b0d9d6aba97549c343bb3f2c862 -size 42500 +oid sha256:30327c3e339323654d3e9d3991564a5e198ede5434da250675c6ff16ed6ce6e0 +size 42707 diff --git a/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_4_de.png b/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_4_de.png index 48c295e856..a0e7a6fde0 100644 --- a/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_4_de.png +++ b/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2199e0eba60570bc2b0aa878e53a0cf0f841ad4fbefb169706e0744162f28e68 -size 40426 +oid sha256:c29eb20bab9c308beddcc34823294e38080cad9ad7af9d729a8b319a2ab8f917 +size 40647 diff --git a/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_5_de.png b/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_5_de.png index ffccdfc805..ec35cebac5 100644 --- a/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_5_de.png +++ b/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d076b1d965d84086a075953bc8ba74d51caa5b0d9d6aba97549c343bb3f2c862 -size 42500 +oid sha256:30327c3e339323654d3e9d3991564a5e198ede5434da250675c6ff16ed6ce6e0 +size 42707 diff --git a/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_6_de.png b/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_6_de.png index d20e8ce18b..b87576cb97 100644 --- a/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_6_de.png +++ b/screenshots/de/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6015c6bb424ff8949b3f71ee04f553360524dc71415131c455aa3bb95ce6e527 -size 47527 +oid sha256:74b05aeb9313278a0c4e5c4e16c458446e9c5212eeb15e18cf0f64c6f1dd3294 +size 47782 diff --git a/screenshots/de/features.roomdetails.impl.notificationsettings_UserDefinedRoomNotificationSettingsView_Day_0_de.png b/screenshots/de/features.roomdetails.impl.notificationsettings_UserDefinedRoomNotificationSettingsView_Day_0_de.png index 318e19f243..0fbb528063 100644 --- a/screenshots/de/features.roomdetails.impl.notificationsettings_UserDefinedRoomNotificationSettingsView_Day_0_de.png +++ b/screenshots/de/features.roomdetails.impl.notificationsettings_UserDefinedRoomNotificationSettingsView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bf99d5c97f6e3bff5d477799cecbec34a5f7605044aaea58ffc2b144ea627362 -size 25338 +oid sha256:930a86d2990e033aad84bce78b54729478170cee426e925bfb6692bab18093a7 +size 24833 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_0_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_0_de.png index 069b6328c4..b298274305 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:ba514c4dfbd8021e99bd0460d79e81fe77e721f9965915f3a7bdd2606d408d21 -size 46036 +oid sha256:16660ec469839abddad3717026a11077309aa84605ac9a394ead8b1aad216440 +size 45942 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_10_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_10_de.png index 4c53fd1469..7aa4b89de1 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:d948a3a01384d31142e84ea0ed26087f1f920d5a2e113e5915bb44fa2dcf0393 -size 44174 +oid sha256:9771de4ae25066ec4ca30bdb920040fdbfcfc39d58f4c1026228086a41a1b4fc +size 44081 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_11_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_11_de.png index 01a18a53b6..6cb627f05a 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:b7edb0d3ff2b059a47a3b637e650a8b8bc585b0c915225cbf1f1a48bdeeceaa7 -size 43533 +oid sha256:fc88c0038c7a6dfbf520db40920974e1edf8cd3d193646d4c4aa9f51c77d954e +size 43434 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_12_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_12_de.png index 31bcde7e66..f3ea9423ee 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:e177f922437c2286bb1a41f3ef249de856b15cb06fad5e4c699b3b00c08e7281 -size 44513 +oid sha256:cb88cdd706bfea21920d1980f7df117c0327b2db26496ca9f0b27964a0803365 +size 44417 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_13_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_13_de.png index c1f7e782ff..6d488cc520 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:df4a376baeaf0d3256dca08f24ace8246965b0113fb82800393629b289a3607e -size 44429 +oid sha256:e61a4dc205d25d2a244e19d35df68d572b0b91c84d6dca7128b55597dff6f60e +size 44334 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_14_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_14_de.png index c3b1d5b18f..f7b067f202 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:45acc3c57908717786e0aebaac34cd15573d557d307587c46b76cae84c0ecacf -size 45857 +oid sha256:db21f1beb76a7424f5b366f020e55abfdf92d5e40b5bd42ddb652e7549233ef7 +size 45764 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_15_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_15_de.png index 66e4da9dc2..cb0b22ee26 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:98b10b8e1c656ce5f769c68f35207aad1a5299049bd44e498c422aa92c2a569e -size 46211 +oid sha256:ced12e0dde29bc86210630d24f7cc3c201a55346989bc379df398079346c4594 +size 46121 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_16_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_16_de.png index b5e1ab3ee3..1771cccf40 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:afbe37e264793a76816a14345b1bea11d38f82ba89262f212638ed10dd60c224 -size 44726 +oid sha256:48f8c2b2ad2f7331827d009ca1e250a9929e67c49478b34d810faff5d0043fc4 +size 44635 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_17_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_17_de.png index 9d6e6ece2e..cd5094f708 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:37ee555a717f96077f7cd387eb78c51753736a98443df180276259e8e4294836 -size 44148 +oid sha256:2ab83e7bf6bcc04cedac852c4c483b1f1eb905ca2492be574cd0e8f099de2520 +size 44058 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_18_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_18_de.png index 0d71a02fe1..748ad3bced 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:00be669e84cfadeea0771ba5f46db49f3c065892e72a5aea1d513e97e24445ec -size 43033 +oid sha256:6eec16ece9eafd657f3006aef358358551e80303a27335da3253cfa525e947f4 +size 42967 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_19_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_19_de.png index 07a79d3970..f490704c2a 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:465b3f9868de3a79938dfbdadfe9b20620962c696edfbc350043bd348a6ac6c9 -size 43034 +oid sha256:68936a1e481f6144f2ca55c8e91e23c8fe46b6a98dcc64155862db7622e9cfc2 +size 42969 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_1_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_1_de.png index d00a732c92..f459535d4b 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:5b0d5eed903a658de52b4cc814a91e4d348a7edbc843fb5133b6387d8ffa5391 -size 40319 +oid sha256:03beed44335b3baa2541f771a79a0ce139c40d41f3c39b41580b7b4fffaee429 +size 40258 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_20_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_20_de.png index e7859c7329..b5ab755aee 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_20_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_20_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f4edaf24f04a83277a7786b09a461c1ea03965fec3e8d83bbb6a13e3de4e2343 -size 44654 +oid sha256:31d51bff74d67797907c92db045498ee80468e459eda1ec40d3ebbd11a107e16 +size 44560 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_21_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_21_de.png index c15c299b83..dd41c9f7ea 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_21_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_21_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2669b19252a53cceb5fed1907457290680c943cba468402b177c479e3a1f70a2 -size 44604 +oid sha256:7005d3110fdc31d1f52a5b69592ef2574525a668e91014618d9e6e15d30d5079 +size 44507 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_22_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_22_de.png index 737b62bfb6..1336b7d7de 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_22_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_22_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fc60fad97d616e0404f5c170240ecfabe372c489500b4812f389f5ba6627da70 -size 44240 +oid sha256:a0acd0fbfacb8933bdfbedbc466e35e889dd3cd26bb600503c0eec860743ebcd +size 44321 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_2_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_2_de.png index 0969d6f86d..e5ccd5734a 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:c1299af5efc2fa7daee5e4915ba28042634957f8f6526634cf4806298446be53 -size 38391 +oid sha256:fd30282a9f98950e2cb167455a29d9b730bb41910ff91a75276ba076df694fc8 +size 38297 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_3_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_3_de.png index b3cd2b3e80..8a735e0a0f 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:4eb83c136bdae2dbf3af9e78648afb518635d08ad604b82dfc09f08550d5614e -size 34099 +oid sha256:b453d81d823d460ecacbaf6049e28ec371a357130ffcb81a0fbd36ce7449fdda +size 34034 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_4_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_4_de.png index 778ffbdc32..8e77ca358e 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:f0966d42c8fc0b8d4d63064697e93a73fbfec85730601bd1241204e78e8eafa2 -size 42842 +oid sha256:4618899598b3da5ef14ade00ad3a670f0d23d0e6ab812e1ec2cd65ac721db859 +size 42782 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_5_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_5_de.png index 79fea3dfda..e68ab08369 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:7a59d6ef1c96887a3ffe8b56cea792537f9c33cbd597cd3d457d1c9ef182ec7a -size 42741 +oid sha256:2646de729f7ce0572e42f784c4e4c2078948eedc4ffa3d39d45c5e9caf9ffe90 +size 42677 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_6_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_6_de.png index 0a5bb4b79f..32730cc52b 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:545b403e1ee1465888a5cbd866c98c18ae93e51902a1b5ec0bc9729335c7d047 -size 34860 +oid sha256:7f72de914d240410612e707a6791aecd0ec929c2dd09546d5a0ad9b4898678b9 +size 34768 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_7_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_7_de.png index a674681994..022f18b4e8 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:a86639422de221671bd0be5b1031f5c1ec85970ad02c8d2c0e2cbdc9c39b4490 -size 45124 +oid sha256:ad4d37fc5c5b22daa769803033df35e4f9cd65d4953448c15eca43b52958d71c +size 45028 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_8_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_8_de.png index 62c1af9a02..a2e517e647 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:cad0f8e62f227d2a032ed227221de95c99c26bf1c8a32e3a82741a8112492b82 -size 44664 +oid sha256:d2a9238d70ea373158b1bd79a30e66f4bf83576f6edc68f89353e7b3867c50d2 +size 44570 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetailsDark_9_de.png b/screenshots/de/features.roomdetails.impl_RoomDetailsDark_9_de.png index 508a6e75df..a130c7a43f 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:0f15bf9f40cb44ee464a1d0060312c5ecd6bb3898ce5a60b6a13f2aeb5adb534 -size 43345 +oid sha256:eb71287ee76f5bd97af39350bda1f59f4e6bb9c73e6ce83c4da893398350416d +size 43267 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_0_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_0_de.png index d2468e41c1..67bdb0e9c5 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:08b2f6d71831c493c74e66865322baefd50d1791882db120918e555a639232cc -size 47737 +oid sha256:243918bc794e7bfe05504b9beb251d00aeecbfb17fedf0a2e2ccf981564f90cb +size 47633 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_10_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_10_de.png index 247e0f9cb0..9d1ef4c36c 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:a8279b6a22cc9d935c30234c1a6fefff606b87cb6ab7d01037e761781843e14f -size 45648 +oid sha256:6bd84a8960861713d63bf7653cfd30d4b34f69333f3c2e90ee67bac7dbf7f300 +size 45541 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_11_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_11_de.png index e5aa91077f..ecae994ef5 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:3c61a95a19778e2c5e254a0a9d1ad3dc2be4fab5d79103a0efc84dfc1d1ac490 -size 45090 +oid sha256:59a376f3347075b87c1f44084d8beace5f42074fd48e410ef1269e2644b1c5c2 +size 44985 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_12_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_12_de.png index 36c9fbc7f5..fcf2f9e59b 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:0ea16f40539e10079db6451a9d47cce0182f4da8bc6017930c58b9889597ae4c -size 46033 +oid sha256:23f21fa72170f3d2d63f961d928a1f15b3d1ef08c8014ae73ce73b37bbf97882 +size 45923 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_13_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_13_de.png index 267fd4aced..cc54ebc8ac 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:a83a9de79d0fa761fee15dba77bb7b7ab40dab0bc113828df94ffb065ea76e81 -size 45968 +oid sha256:cef3bbec12a4af5b07fb6d8e12f9786a70387c49590025c2abe96cbb2842ba9a +size 45861 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_14_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_14_de.png index d7df1473b8..16276a84e3 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:aac313fdc559f815fb529b93d367cba9e4c1e58cea78bec4e3c75656b0e841a5 -size 47508 +oid sha256:2d4e9d7676a2256a2b633481d3bc233a4d0a904d0c9e364608ab0dd8277e5530 +size 47401 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_15_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_15_de.png index 3a0fca06f6..c14e3f87b7 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:6b794b3aa1e1fee432477402d0ff2b2dd916a8a7d827322e5149e7adb7a4c52e -size 47938 +oid sha256:dc16428b62ba4b0295109314436899740496738f6628b462c84bce3b1cb3d5c6 +size 47833 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_16_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_16_de.png index 86ed4378f2..cae961c8bd 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:cfb0eb1850b099fe3b491c27997a4e98f0555d0c3ede73e11d6ac566104c4471 -size 46272 +oid sha256:e9ef730f7535ae03c582d9109e22379f955236009c1c5ba0a38c5c40aec89b60 +size 46167 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_17_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_17_de.png index 732ea65e66..2ada3386b9 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:1a6fd9d1cafd1530a26db9788bacee2bcbd567e9bbe9137dbad21ba495f83fa4 -size 45809 +oid sha256:87ae3c0cd8031bf751203b1872810f1029188a465abbad7ce9816ee916c2f831 +size 45704 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_18_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_18_de.png index 24810a7596..d80c92fd5e 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:8c226ab8b02e6dea1ed76441c3df7c79f0b68e4adcf388821cb3932f6cdcf50f -size 44678 +oid sha256:c48111e0a09ee87fc0cda8ae995077e412d77006d0d428f8203ba3d005e28cef +size 44616 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_19_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_19_de.png index 719fb091e0..eda50019e9 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:012433ee5c82ee0b7b3ae8840e5f19cd9b4ca0d0deebfee3aba2bc471ddf0133 -size 44637 +oid sha256:d292a0e652300d7ab79b0cc61b2803fef004b78a260b0a7b57db8d78611b2db2 +size 44576 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_1_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_1_de.png index efae5e5edc..ad7164fd93 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:a237709afc56123c56dffb25a105bc6794b967f1034e495be8740911f3ffba7b -size 41925 +oid sha256:e831400a461cf7319c9679f884f796e87a25cbb0191558f922fe61e99f705b79 +size 41854 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_20_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_20_de.png index a64725d16d..b3e0ebb78a 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_20_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_20_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:983b2d0c9a8f6e850ec3121a8e28006fe46dde69a908a0d7af3753d94df14fd6 -size 46217 +oid sha256:bb451eb1eb17069eae371afd1612e22f182c8f823f7f701b712aff50106dc7db +size 46114 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_21_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_21_de.png index 2582cc203f..13b01d3984 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_21_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_21_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:858bec39d28122361e0d82e0438c86ab86e4c5adb3ac78c156239d4b7323b7be -size 46150 +oid sha256:2d4fe0242e18a5fbbd7f6739b087357f75d61d4c3733ccf9448ad58c363ef766 +size 46048 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_22_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_22_de.png index 3d21f4c0ce..fc067e2cbb 100644 --- a/screenshots/de/features.roomdetails.impl_RoomDetails_22_de.png +++ b/screenshots/de/features.roomdetails.impl_RoomDetails_22_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fba77536ba3fe17c66970b7681b05fe707a3663a2dca645d6739c834b0e8e852 -size 45749 +oid sha256:24dce100cbe050dd55c3a768c2cdbd698d6f78a5a4e6cd468e179a2d57c4548a +size 45849 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_2_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_2_de.png index ec2899e3ce..2b1ed1e81a 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:f57afc7719f7a08d9f088fcd316d2e41de02c808376fd83c08883a31449ebbd3 -size 39808 +oid sha256:3af23c49aa21758e1e994fa4903ee6e9d8fa9e32cbbcdeeebbfab0e23bea8f47 +size 39702 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_3_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_3_de.png index 0f2dfc0cc0..64ce1c2163 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:3c68ac502f7b81ec309cee330899659fd7389eb9f7adfbc9705302967dd009b2 -size 35378 +oid sha256:da52b10782ada44a9c55ff53056f03eb7352d8edbb8a0880251e9419f8223726 +size 35339 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_4_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_4_de.png index 3edaf18352..abee54b2fe 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:9c52c69c6b1cab90d39207cfd157fb4d6e47d2897617a8f2d92e761c232fd142 -size 44486 +oid sha256:f24133539c5df1fcc94f58f32380e0336a2b0e6a0542669055d645307a3b1b47 +size 44446 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_5_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_5_de.png index d8afefd19a..ad6cb7cb1a 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:5dca8eb8ae6ba99e0d0d82277b61185d3e3ead401a45f85acd57a7670587b33c -size 44329 +oid sha256:c894030e5e3f1a36466f354b2bb4baf55ac823658555ceccb9ae715a0217252b +size 44271 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_6_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_6_de.png index 384429fdda..515d4dab01 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:823d49a0d3fe06617d0b6d59997b677d7075eda10de12020b47495089a46a3a0 -size 36486 +oid sha256:9e22e75eca54bb620604f6292e2576b5cf9804c337bb466f10728bf586bb06d7 +size 36392 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_7_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_7_de.png index 2a63131ba9..550ab88096 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:d3da69b9890183adeee8d6ecb5e3a5d4b1e9a1efb0d067f74cc1f98f4aa033d7 -size 46790 +oid sha256:d81afcf4775b5f981e1bc3fa23cf967e343a7aa3ac522bdc6f9f0656a8906348 +size 46682 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_8_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_8_de.png index 37cba9a09d..29423b0910 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:e1ccc93391215a22c337573f42d506fbd6c626370247de41d7e10c3255b2a889 -size 46248 +oid sha256:37331193bba5a8cc5a0f6513cf8884da6e73ac20c550b20a1a5aa39d81074aba +size 46143 diff --git a/screenshots/de/features.roomdetails.impl_RoomDetails_9_de.png b/screenshots/de/features.roomdetails.impl_RoomDetails_9_de.png index d6b68a2487..f5c3ed224c 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:8325e3adc4e146aec0ec2146bfe5552e500c7bf21055a5a1a024e0e00a3d9e20 -size 44787 +oid sha256:1dc432b4e393a1865fe336822a6ad0b8f73d0df7ea5d18b8e9d2fd40186b5429 +size 44715 diff --git a/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_0_de.png b/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_0_de.png index ae715f4343..f72997e329 100644 --- a/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_0_de.png +++ b/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a9314b5a780197910c1c2d4b72962e3828c4c1077fb43661d8d6e02dfaa983c3 -size 21284 +oid sha256:a72909300cc9083dfffba8c72acea2e622609ef4bd119790436523b9ac68dae1 +size 21828 diff --git a/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_1_de.png b/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_1_de.png index fba34860b1..656af4c7ae 100644 --- a/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_1_de.png +++ b/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e47768b705266b38727e1da24adb657ae59bc83763d5c5d079493eaece01336e -size 24984 +oid sha256:75dcb5e8286a4ebe292d49ed5a72c4076640f6ee809b0f2266bb182d913a0e6f +size 25499 diff --git a/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_2_de.png b/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_2_de.png index 4548e7e5b5..4c3315c6c1 100644 --- a/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_2_de.png +++ b/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:21ced256aec88473254bbffb84ae0755635d47e098b91c3eea98f82c2579a6b4 -size 30272 +oid sha256:0887f5648af214c7cf6b6b8424013aee101cf471edbfe23f7df1b712b0b6bc39 +size 30888 diff --git a/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_3_de.png b/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_3_de.png index ad34606d90..f8a66e7f79 100644 --- a/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_3_de.png +++ b/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f31dbbcca3744e89c50544f111075db6d4eddee9fd98c07a7402bd71ae2c1838 -size 30613 +oid sha256:bde6a960ad5e697da24c04fd3780a90897c65c08c8ad3243a8d87f5b298ccfb9 +size 31238 diff --git a/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_6_de.png b/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_6_de.png index f23adb562c..a4f8ba5f9c 100644 --- a/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_6_de.png +++ b/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:290e8fd9f8b7ee1532d050dbfb0c888870c12f88e9c8c60a3de54b1caad3e453 -size 31655 +oid sha256:1cb8f6afdc5eb59651ae067fb0dfa5495e93c11b3b1f1330266421e70bab3607 +size 32092 diff --git a/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_7_de.png b/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_7_de.png index ce52f9febc..c45a91d542 100644 --- a/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_7_de.png +++ b/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:942868839169b89e68af73d9aa44077c2838a081b2e8d4ec1d1be90b3de9ebd0 -size 10028 +oid sha256:3ccd9316293901d09f92a73b796bdec309a8ced2ee18db8f414b9c864d355ab3 +size 9976 diff --git a/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_8_de.png b/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_8_de.png index c9f77b1c8c..9c54082fca 100644 --- a/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_8_de.png +++ b/screenshots/de/features.roommembermoderation.impl_RoomMemberModerationView_Day_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:19fe1682689050cce7831aa90f339175248ba578ac68fc7e1913b3eebece61f8 -size 36059 +oid sha256:dd370c3341026ae542e58d5756625741b5e0ae749e3c6297ac5f227c31400f6b +size 36775 diff --git a/screenshots/de/features.securebackup.impl.disable_SecureBackupDisableView_Day_0_de.png b/screenshots/de/features.securebackup.impl.disable_SecureBackupDisableView_Day_0_de.png index 8478c19fda..bda8ddc90d 100644 --- a/screenshots/de/features.securebackup.impl.disable_SecureBackupDisableView_Day_0_de.png +++ b/screenshots/de/features.securebackup.impl.disable_SecureBackupDisableView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e697b923e1e387be4bd8d3a8de0482c9be4a670192f29bb3c5529ff211e9e442 -size 71612 +oid sha256:db59807ece4b22c96c6f6039cf345ac669c1ca02ce91a04ce22ec9dac98cadf2 +size 70633 diff --git a/screenshots/de/features.securebackup.impl.disable_SecureBackupDisableView_Day_1_de.png b/screenshots/de/features.securebackup.impl.disable_SecureBackupDisableView_Day_1_de.png index 8478c19fda..bda8ddc90d 100644 --- a/screenshots/de/features.securebackup.impl.disable_SecureBackupDisableView_Day_1_de.png +++ b/screenshots/de/features.securebackup.impl.disable_SecureBackupDisableView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e697b923e1e387be4bd8d3a8de0482c9be4a670192f29bb3c5529ff211e9e442 -size 71612 +oid sha256:db59807ece4b22c96c6f6039cf345ac669c1ca02ce91a04ce22ec9dac98cadf2 +size 70633 diff --git a/screenshots/de/features.securebackup.impl.disable_SecureBackupDisableView_Day_2_de.png b/screenshots/de/features.securebackup.impl.disable_SecureBackupDisableView_Day_2_de.png index 9462258aaf..06568093f5 100644 --- a/screenshots/de/features.securebackup.impl.disable_SecureBackupDisableView_Day_2_de.png +++ b/screenshots/de/features.securebackup.impl.disable_SecureBackupDisableView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4fb4462ae1261dc77869d984152bac7bd810c92a82782c36e2bcc448d3aa6459 -size 72336 +oid sha256:ce804dc3e07ab302f26431cb2f016f93874e330f451874fb6e4478274e5f040c +size 71149 diff --git a/screenshots/de/features.securebackup.impl.disable_SecureBackupDisableView_Day_3_de.png b/screenshots/de/features.securebackup.impl.disable_SecureBackupDisableView_Day_3_de.png index 73080a8c95..5b4c4eeb36 100644 --- a/screenshots/de/features.securebackup.impl.disable_SecureBackupDisableView_Day_3_de.png +++ b/screenshots/de/features.securebackup.impl.disable_SecureBackupDisableView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:eb86dfe02f725547da2b90a4f9390db134f1f27e8c0253a33ae47ed9feb36cee -size 45289 +oid sha256:fbdd7059f011fa3328e9353e7eb15ecb6209fe66626909d1e33845c4b350a853 +size 40653 diff --git a/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_0_de.png b/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_0_de.png index 44eb24b2f7..b51de06daf 100644 --- a/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_0_de.png +++ b/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3aa8259805201e40926ad24b4ac815c38ad03c06df4a931342d954704899366e -size 43769 +oid sha256:cf99d6a6956554070e0d2e1a6156d560f2220c543181f38bc14094a4a5a12373 +size 44250 diff --git a/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_1_de.png b/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_1_de.png index ea1cc5975f..a9346ee7df 100644 --- a/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_1_de.png +++ b/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1619180c33f1103e3c9412f963d64b10009b82a1709136f3d2a9b4fa9981643a -size 53049 +oid sha256:2fa6ea8230f3d95502ce8c29af74db73f1fd720e25af50f618a8de4118fba614 +size 53507 diff --git a/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_2_de.png b/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_2_de.png index a74c25733b..c276068ee5 100644 --- a/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_2_de.png +++ b/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:19adb2e6398deb87fff8ebc8eb65dba5417fb328d7ae2880f1aad5b8f03d1d9f -size 52930 +oid sha256:8678b77fc6e1a7a09c9db2b91024c465cd918f74f705e0d00d32891957454789 +size 53420 diff --git a/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_3_de.png b/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_3_de.png index f50bb8a0e4..b72f491086 100644 --- a/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_3_de.png +++ b/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dbe56aa1986a7ca44b31de82a774b7c9c1dd5486871a9c3300e7aa8c0b485ce7 -size 50119 +oid sha256:2bb8122b47ea44b26b2efa90b45b546661344e648469e7d8629548147aecc2c9 +size 50515 diff --git a/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_4_de.png b/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_4_de.png index e8f3584fed..4e23301597 100644 --- a/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_4_de.png +++ b/screenshots/de/features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0a082b213afe39c261c9b89420e27fc7b60b0cbdbe1661bb51b7d7d9a889ead5 -size 46648 +oid sha256:bff430c5fa74f45fecceef99cbfd91adcd344847860382eedf5a64cb7f65994a +size 47129 diff --git a/screenshots/de/features.securebackup.impl.reset.root_ResetIdentityRootView_Day_0_de.png b/screenshots/de/features.securebackup.impl.reset.root_ResetIdentityRootView_Day_0_de.png index 0b6f65c0a8..e4ed1dd1c2 100644 --- a/screenshots/de/features.securebackup.impl.reset.root_ResetIdentityRootView_Day_0_de.png +++ b/screenshots/de/features.securebackup.impl.reset.root_ResetIdentityRootView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:89e37a5045fdc07b873fd0eda7f3f15a7b61b12f2372a3e2af4e343c3ecb1b38 -size 66427 +oid sha256:0097429cee30baf63fc1b7b542cd20d6815e33b78dc7038d41310cd928ab03a7 +size 66346 diff --git a/screenshots/de/features.securebackup.impl.reset.root_ResetIdentityRootView_Day_1_de.png b/screenshots/de/features.securebackup.impl.reset.root_ResetIdentityRootView_Day_1_de.png index 5e1b0b263e..8d9979cdaf 100644 --- a/screenshots/de/features.securebackup.impl.reset.root_ResetIdentityRootView_Day_1_de.png +++ b/screenshots/de/features.securebackup.impl.reset.root_ResetIdentityRootView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8b0f235103342097a27a35a3074159605b07ac1832ed00fded323802ae48c1ba -size 51740 +oid sha256:c294329f19bdf41d549eaa09b569b765c14eab843d5e4017708ab59d7f1ca45c +size 51713 diff --git a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_0_de.png b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_0_de.png index 26faac1547..12a28eae6d 100644 --- a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_0_de.png +++ b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8350d0190731987501331f129f8b1b02b07f2f63470d0f1a453c6364b8501b56 -size 40502 +oid sha256:7284472163490e06dd20fffac246dfe7d6ef603ff01e84afa8efca107c268bdb +size 39849 diff --git a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_10_de.png b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_10_de.png index 26faac1547..12a28eae6d 100644 --- a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_10_de.png +++ b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_10_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8350d0190731987501331f129f8b1b02b07f2f63470d0f1a453c6364b8501b56 -size 40502 +oid sha256:7284472163490e06dd20fffac246dfe7d6ef603ff01e84afa8efca107c268bdb +size 39849 diff --git a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_11_de.png b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_11_de.png index 93a222c930..4fae11243a 100644 --- a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_11_de.png +++ b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_11_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:34a3ae93e63eefc6fd5ababd7e8a25efe8b9e828e016bc8aedb693370332659a -size 41435 +oid sha256:78786816cde1e1517a13bc677d35fea3a8bad5a2835a2440b380eb2eaad71185 +size 40767 diff --git a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_12_de.png b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_12_de.png index 93a222c930..4fae11243a 100644 --- a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_12_de.png +++ b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_12_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:34a3ae93e63eefc6fd5ababd7e8a25efe8b9e828e016bc8aedb693370332659a -size 41435 +oid sha256:78786816cde1e1517a13bc677d35fea3a8bad5a2835a2440b380eb2eaad71185 +size 40767 diff --git a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_13_de.png b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_13_de.png index cf1faf2a64..038d37f082 100644 --- a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_13_de.png +++ b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_13_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:78af886eba5d06e4ba65763eb85ce220c52b9195350350709d36ef53fedfed5c -size 81003 +oid sha256:9428007483abbcf51b07221b31ac96c3d4ca123a4101c96b3b22f3f2ba62fc18 +size 80387 diff --git a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_14_de.png b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_14_de.png index 0e8b5245a5..f5805dc919 100644 --- a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_14_de.png +++ b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_14_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d5bbbe7c705f5e5bb7a945ecabdd1a5bc4e2761e3b3936d0256bdd78b092b8cf -size 82016 +oid sha256:425152993b048ff1745be0a80a2e0200a458d931a41f876eb963ea61e5ef2cd8 +size 81432 diff --git a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_15_de.png b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_15_de.png index a1e745962d..f7ea7f05b0 100644 --- a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_15_de.png +++ b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_15_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2fb93478a18d91579cac40e644653a01aa6bf41b19f0f91ee325965dfe1cf6d5 -size 54450 +oid sha256:8b164b1ce20cb3c7c1082880eea4e3b6e9e1a531a304f3317e079407570f6863 +size 54952 diff --git a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_16_de.png b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_16_de.png index 273193b4ce..cbef9b7c95 100644 --- a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_16_de.png +++ b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_16_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b9abf285e97cdceec4e7d72313a2ef36ead0c2d9d89063a34cda103757088b89 -size 77878 +oid sha256:13de370d3f3fc407a34a77c4f751bad5bfb759fea8c76d95e62763c80ff29709 +size 77264 diff --git a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_17_de.png b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_17_de.png index cbadaffb7a..e0fc185d7c 100644 --- a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_17_de.png +++ b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_17_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a5f5222b1a8c8caf1517699b6bd77ecd50247041c4d360779165367d70dc4153 -size 51508 +oid sha256:24f409ba7b7ef17c768aa36230f1992a7b2addb77cd6817eb965f58835fa6793 +size 50620 diff --git a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_1_de.png b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_1_de.png index 93a222c930..4fae11243a 100644 --- a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_1_de.png +++ b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:34a3ae93e63eefc6fd5ababd7e8a25efe8b9e828e016bc8aedb693370332659a -size 41435 +oid sha256:78786816cde1e1517a13bc677d35fea3a8bad5a2835a2440b380eb2eaad71185 +size 40767 diff --git a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_2_de.png b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_2_de.png index 4ca821b0e5..beb585a8b9 100644 --- a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_2_de.png +++ b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:253dc79e72869e75e0cf128ef4a8858b7c5a168bc7f987a9c375ac69d05bd327 -size 41751 +oid sha256:37c7e4440bca16cc2d15438218f40aca715ca18fee98d22bc08b1f73631812c6 +size 41089 diff --git a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_3_de.png b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_3_de.png index 42182f953b..d00f2cf550 100644 --- a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_3_de.png +++ b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f5e50c340cb4255ff7975682cb63dbd03d39b2fe353c683d5d3d068e66e643e8 -size 42279 +oid sha256:f998238fd411d6639de28518b51ad144f2abf7fc7fd69dad95067b46ccaa523c +size 41124 diff --git a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_4_de.png b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_4_de.png index 26faac1547..12a28eae6d 100644 --- a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_4_de.png +++ b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8350d0190731987501331f129f8b1b02b07f2f63470d0f1a453c6364b8501b56 -size 40502 +oid sha256:7284472163490e06dd20fffac246dfe7d6ef603ff01e84afa8efca107c268bdb +size 39849 diff --git a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_5_de.png b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_5_de.png index 93a222c930..4fae11243a 100644 --- a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_5_de.png +++ b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:34a3ae93e63eefc6fd5ababd7e8a25efe8b9e828e016bc8aedb693370332659a -size 41435 +oid sha256:78786816cde1e1517a13bc677d35fea3a8bad5a2835a2440b380eb2eaad71185 +size 40767 diff --git a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_6_de.png b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_6_de.png index 2b56ea9058..466649f0f0 100644 --- a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_6_de.png +++ b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:792c80db8a790454364d0246eb2b75098db26f585d8b149880fcd867233695e3 -size 39614 +oid sha256:f35be0530c3ba7091b0cbb1d4b17377cf94f55f275821245fb7f54e1eb0a0e1f +size 39052 diff --git a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_7_de.png b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_7_de.png index 93a222c930..4fae11243a 100644 --- a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_7_de.png +++ b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:34a3ae93e63eefc6fd5ababd7e8a25efe8b9e828e016bc8aedb693370332659a -size 41435 +oid sha256:78786816cde1e1517a13bc677d35fea3a8bad5a2835a2440b380eb2eaad71185 +size 40767 diff --git a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_8_de.png b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_8_de.png index 93a222c930..4fae11243a 100644 --- a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_8_de.png +++ b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:34a3ae93e63eefc6fd5ababd7e8a25efe8b9e828e016bc8aedb693370332659a -size 41435 +oid sha256:78786816cde1e1517a13bc677d35fea3a8bad5a2835a2440b380eb2eaad71185 +size 40767 diff --git a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_9_de.png b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_9_de.png index 93a222c930..4fae11243a 100644 --- a/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_9_de.png +++ b/screenshots/de/features.securebackup.impl.root_SecureBackupRootView_Day_9_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:34a3ae93e63eefc6fd5ababd7e8a25efe8b9e828e016bc8aedb693370332659a -size 41435 +oid sha256:78786816cde1e1517a13bc677d35fea3a8bad5a2835a2440b380eb2eaad71185 +size 40767 diff --git a/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_10_de.png b/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_10_de.png index 5217f82024..d535e1fe70 100644 --- a/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_10_de.png +++ b/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_10_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a655385dce016ed9f9897473267574bd40838de4756fefc4e86e66c2023157c7 -size 29626 +oid sha256:381a201fd122fe90692bd502fce9b6af01b3af9dbb194f3d8a02645d2b7707b5 +size 29935 diff --git a/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_11_de.png b/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_11_de.png index d1f93451f2..07facae9e0 100644 --- a/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_11_de.png +++ b/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_11_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6a897bcbb6b91d060cf184da851c2d5e6122fe87707c259b29eba8991a1c5d03 -size 29116 +oid sha256:ee7cadfabbf2dbdeaae345bc043b96cbba2b5f622da4aa5ed0275c7a30bf4638 +size 29497 diff --git a/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_12_de.png b/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_12_de.png index 5217f82024..d535e1fe70 100644 --- a/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_12_de.png +++ b/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_12_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a655385dce016ed9f9897473267574bd40838de4756fefc4e86e66c2023157c7 -size 29626 +oid sha256:381a201fd122fe90692bd502fce9b6af01b3af9dbb194f3d8a02645d2b7707b5 +size 29935 diff --git a/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_13_de.png b/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_13_de.png index 612270aa6a..96f5fb5fd9 100644 --- a/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_13_de.png +++ b/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_13_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1c40acbed067a802f0ba26ef8374bc5938674d47b909cfe459cceeef909b81c5 -size 25439 +oid sha256:72ee782af758e080e34419fb88dd51527023f50ae60f99339c7349fa69785a27 +size 25852 diff --git a/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_14_de.png b/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_14_de.png index 454b337584..49f97a4d7f 100644 --- a/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_14_de.png +++ b/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_14_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:09ebff13c8e665d53bff2ed1cde45ae2dae07aa6221f6e115506a955cde63477 -size 23239 +oid sha256:c4986bf1a0f8e2d2ef08533d2ab14ed918a55246bf0cf8e183eb9de81721cb62 +size 23659 diff --git a/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_1_de.png b/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_1_de.png index f521ee001b..31aaf002b2 100644 --- a/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_1_de.png +++ b/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:de8eb16e62dc4efb472446794975b0eb16e129f5593b72fca199e78690eca69d -size 15231 +oid sha256:22276ea658654e6439844c4683b7912dc7df217c82dc5149afe1926d8761e829 +size 15855 diff --git a/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_5_de.png b/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_5_de.png index f521ee001b..31aaf002b2 100644 --- a/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_5_de.png +++ b/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:de8eb16e62dc4efb472446794975b0eb16e129f5593b72fca199e78690eca69d -size 15231 +oid sha256:22276ea658654e6439844c4683b7912dc7df217c82dc5149afe1926d8761e829 +size 15855 diff --git a/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_8_de.png b/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_8_de.png index 20a39a324f..4073c64d89 100644 --- a/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_8_de.png +++ b/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2dc4362e582bbe140f5410ca90b67d1bae90c7fb1cd881bbdfa06d13e02afb1d -size 21720 +oid sha256:9bdcf2e6f7e02daf7318709b24ac25354bf7303713dfcddf4ab70eb89d4d27eb +size 22224 diff --git a/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_9_de.png b/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_9_de.png index 831fb6870e..41f2a23bf9 100644 --- a/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_9_de.png +++ b/screenshots/de/features.securebackup.impl.setup.views_RecoveryKeyView_Day_9_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cf42a617cd382c45fd20df5e97a151862280a4ad5ddb01154abed4909ae2e8c8 -size 21466 +oid sha256:2be43d2a6b3e14ec2ab3ba9911d2c7b6d5f2c0671f9f6972f535110cd8ded5a5 +size 21959 diff --git a/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_1_de.png b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_1_de.png index 742c8b1be9..69c3502fee 100644 --- a/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_1_de.png +++ b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:785114ab0576fe9a69fcffa7dff1252ea660345a5706949e461878859dde0c33 -size 47362 +oid sha256:3c6a63b93040066aa508d0341a60d2605df8d9dbc7a592bc70a4e57f789287cb +size 47959 diff --git a/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_2_de.png b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_2_de.png index 1c7197799f..631536c73c 100644 --- a/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_2_de.png +++ b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b28db9bc6158ad1ae9f4d8b9eb5dfb801dbacb60b609585c0f6aad66db688cd2 -size 63294 +oid sha256:30780c8dc10eddc704964a8bc53d4a975db557ad11b3f8eda8ae106d01564ba6 +size 63201 diff --git a/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_3_de.png b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_3_de.png index 1c7197799f..631536c73c 100644 --- a/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_3_de.png +++ b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b28db9bc6158ad1ae9f4d8b9eb5dfb801dbacb60b609585c0f6aad66db688cd2 -size 63294 +oid sha256:30780c8dc10eddc704964a8bc53d4a975db557ad11b3f8eda8ae106d01564ba6 +size 63201 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 index 894b66623c..106d040907 100644 --- a/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_5_de.png +++ b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ada44308165eefb690684726100507bc2c20e1d363a3555f7d8975c6645e0536 -size 40144 +oid sha256:364fa582551a706b4ba2244ec52f39c3f4528e27af0a20ae7af1fabe82f8e092 +size 40158 diff --git a/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_0_de.png b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_0_de.png index 62f0a77598..81d6074f05 100644 --- a/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_0_de.png +++ b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1ae69f5a8fc884a2ca02d8c84e9342b9633512de78348a0bb2d661d5735e708a -size 63185 +oid sha256:cf1fd3124c6daba7946757bfeda35e671fc9416c3b93b5c47f3862f7d3f20bdd +size 63126 diff --git a/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_1_de.png b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_1_de.png index 3fc33a270d..63d5a70c69 100644 --- a/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_1_de.png +++ b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6930558f6c4cda30d6a83fa320a7a17d4c45db0bfb2e9bf21b13701d047e76a2 -size 59611 +oid sha256:2afdaa76930ae36cd69c5f5c80d38e02f1bbd92b2e6556049d8d71278476c835 +size 60209 diff --git a/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_2_de.png b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_2_de.png index 1c7197799f..631536c73c 100644 --- a/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_2_de.png +++ b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b28db9bc6158ad1ae9f4d8b9eb5dfb801dbacb60b609585c0f6aad66db688cd2 -size 63294 +oid sha256:30780c8dc10eddc704964a8bc53d4a975db557ad11b3f8eda8ae106d01564ba6 +size 63201 diff --git a/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_3_de.png b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_3_de.png index 1c7197799f..631536c73c 100644 --- a/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_3_de.png +++ b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b28db9bc6158ad1ae9f4d8b9eb5dfb801dbacb60b609585c0f6aad66db688cd2 -size 63294 +oid sha256:30780c8dc10eddc704964a8bc53d4a975db557ad11b3f8eda8ae106d01564ba6 +size 63201 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 index 388cb2f945..460871cbee 100644 --- a/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_5_de.png +++ b/screenshots/de/features.securebackup.impl.setup_SecureBackupSetupView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:57dc90ddefeb2743ef616ddd11e5a9cb3847d714e2f452e2e58f7d7cc02c3422 -size 41780 +oid sha256:6c0601f120bf459fce714cdc1d2e29681a8da208fe782f781e4701f5f8cbde50 +size 41755 diff --git a/screenshots/de/features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Day_4_de.png b/screenshots/de/features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Day_4_de.png index 94f1931532..bb2fabe0c1 100644 --- a/screenshots/de/features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Day_4_de.png +++ b/screenshots/de/features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:17878e6c5b0c178495d5f7134c17d2fa8ae844257a3f0d7348dffc76a881da43 -size 32546 +oid sha256:ee598c4a6385e402c7d51be34c41f4749db28155240e901ba16c5885016cece4 +size 34001 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_0_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_0_de.png index 6da6258d67..4ae2b447b6 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_0_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:637d9560af680d4ae4f268224a43349f8f78ccd2e4d6495b795553c1248d0447 -size 47917 +oid sha256:af3c92b4f72d1018e738aa8d65db886973effdb43464a56cd6bbec45af10ce6e +size 48408 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_10_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_10_de.png index 1095d4ca91..3a480a7a92 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_10_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_10_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5df518958ed6cf464b2d1b118a92f75257af9ab6f449e92f0a76d6a765f0fb91 -size 21183 +oid sha256:48a1b13fd62dfdbf28a651c01680378bd72774095fc7aad8dba6c0a9060b5661 +size 21694 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_11_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_11_de.png index ea7a323213..d21e3db923 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_11_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_11_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6eb10412b05ad5a5accdf5a623d963a86284379940b6de342f9125d568b6831b -size 45546 +oid sha256:1e3471ae1bd15c1eed5f5eb2305ca9ca90c159b9b09f3560ec492b7d95febbdf +size 46210 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_12_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_12_de.png index d7542ee147..dc8174f97d 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_12_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_12_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d8c149bec4e158206d6d1f1027bc338c892d999c09b4e152b8770c847620d3ff -size 45331 +oid sha256:6a72f89dfccac8c44f8255dad26459f8ec13acdfa47d744189cfd81b26e4c1a0 +size 45952 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_13_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_13_de.png index 0081e61a7e..572523776e 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_13_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_13_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9b003b7a6e39471f84fd3658c73539ab715829cf6e55dc9556cf3d6bb7806d65 -size 45536 +oid sha256:0c93721a2d9b139bb87e75ee2bad066f3089628f0cfba044b0bfde3bccee5880 +size 46199 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_14_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_14_de.png index 2b24ad2624..ecdb655995 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_14_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_14_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b069fe95cba038946af8e652a679791691412146b580c0c58a9f263d6069c65d -size 29072 +oid sha256:d650f373d419230986dfd0727f64b71b3f139e5b0a849e6099889f6b98ecfe63 +size 29321 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_15_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_15_de.png index 85ec4b1781..a3c60fb0b1 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_15_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_15_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5dc96db23cdf3b061ade2d79545bc3e76fb6784edaa7c4d1e42aec47b36f72fc -size 61412 +oid sha256:91a71102725e30f1d1e5ca2c465dea2653e6c87eb1c5cb61a2f297ceee5be23b +size 62034 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_16_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_16_de.png index 85ec4b1781..a3c60fb0b1 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_16_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_16_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5dc96db23cdf3b061ade2d79545bc3e76fb6784edaa7c4d1e42aec47b36f72fc -size 61412 +oid sha256:91a71102725e30f1d1e5ca2c465dea2653e6c87eb1c5cb61a2f297ceee5be23b +size 62034 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_17_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_17_de.png index b9b912e988..e7eb822e90 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_17_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_17_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6a06540cceb38f4a2156e57ffa12ac7cfb56266713271cce8ac10663a9cccdae -size 45273 +oid sha256:4059221014fb50e7dafe63e009bb913670c05f7c1f4bee1fc70e32a9d311102e +size 45933 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_18_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_18_de.png index 0081e61a7e..572523776e 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_18_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_18_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9b003b7a6e39471f84fd3658c73539ab715829cf6e55dc9556cf3d6bb7806d65 -size 45536 +oid sha256:0c93721a2d9b139bb87e75ee2bad066f3089628f0cfba044b0bfde3bccee5880 +size 46199 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_19_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_19_de.png index 0dfb02fd69..517fca99c4 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_19_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_19_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:20d746201009e620e1fbe2497378dff95019756e626db0a65633ed7af4de5c5d -size 46218 +oid sha256:a72f7da90fc248cc9d2f33b3d7411cc641a507b2eae7ed24f4f43a4077545a9c +size 46875 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_1_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_1_de.png index 889ac3e0b5..74bc97f87e 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_1_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bc3fc11302783cd6d6f1728bd9ef4c631366b3341c7855c90db9929e597ca5a3 -size 62596 +oid sha256:29c4f73309fd6a65cdfa7006f16a3d34cc5f91df65774ff2dc0b85d1c6df890e +size 63241 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_20_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_20_de.png index b002491c77..8552562bad 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_20_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_20_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:38bda8f91446f052727f7379f229835e9101635efbf375e70423814785052423 -size 42123 +oid sha256:bf9e5376b50635c2be37be9c3335054a04881b38bde30a0e1552af0f4fd3653e +size 42465 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_21_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_21_de.png index 2d271b76ad..951d98602a 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_21_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_21_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8337c500f365103ef972c75d7a610b7a01ceb0ae3a562693f4928ba3ff8cd6a9 -size 35076 +oid sha256:025d245e77a6e786bb7449fa5ae636d42a53699b10cbe55be9949325b67aabc9 +size 35557 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_22_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_22_de.png index f18b61f1a9..f6f78aa65e 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_22_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_22_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3e0973da1013a20d3460fcea48d01759c38e8bfd932df2cb56346b3cf35b8af3 -size 42566 +oid sha256:617353a927af728c2ca5ad8c06ca02d5afd1b72ccf70bf33e959d709478d614e +size 42992 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_23_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_23_de.png index 3adc9c225e..5b37d131ab 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_23_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_23_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:68f8a51f2d342e2d01eff3038da83e02b5bb87774a6a78c0db2e35cf61cc6183 -size 45480 +oid sha256:8a308be76634e28f288f6733668fc46eb05d35dc78fb3715528880dc0e62815f +size 45806 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_2_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_2_de.png index 43c7ddbf0b..4bea98983a 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_2_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:23a613764c13a4a2cb2eb41d0644482706e2dd30d0661e763cbc8adc3bdaf6a3 -size 62385 +oid sha256:88204e527819396aa0089572702c0a8ce43d00780e30016f9aff96bb53fdd5cc +size 62989 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_3_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_3_de.png index 2f1098c35f..0a9b847511 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_3_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4b0c79982009d7a795871568c0834dec205a52c0de9235beb8711117c4bb73a4 -size 62714 +oid sha256:41d882b6c583616a04b113eb5d9c017a7b024e62b2e3bf7a7efb0d0dc6fc6e2c +size 63360 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_4_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_4_de.png index ff0b9d19a9..df51f3b7d2 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_4_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ec674e4091d988c3f1b64b9a771481442e93672821804bf051c12c0ce4e1e777 -size 56181 +oid sha256:3d73ad6ec7323e247f85b13398db9ea82cd3e6409c20b326877bcc2af0d33c37 +size 56417 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_5_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_5_de.png index 8154cf180f..6c5badacd6 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_5_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0defb9c6158b54cf1ec5c369e3c005b8da50a314e12294dfeaa303bfd51bd5cf -size 66133 +oid sha256:accbe9eac820330e7591b2b9f4c7af742bbcde6a17c70c2ea571e4cdf669eb30 +size 66786 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_6_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_6_de.png index 8154cf180f..6c5badacd6 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_6_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0defb9c6158b54cf1ec5c369e3c005b8da50a314e12294dfeaa303bfd51bd5cf -size 66133 +oid sha256:accbe9eac820330e7591b2b9f4c7af742bbcde6a17c70c2ea571e4cdf669eb30 +size 66786 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_7_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_7_de.png index c1ff0f2843..8a194da997 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_7_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:49426bbfd1b53af2e578c2806f9ef5ac54313fff28f341d906c39d551a074c70 -size 63889 +oid sha256:9113ae4f97417c4bb8a22746655b394d0038306a647c94a34debbdc5bdf7bbb8 +size 64527 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_8_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_8_de.png index da54bf15b2..1d5ab01a97 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_8_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8f7cdc3803d196f1d381f051a0d5760cb128d82ab6364b20156d8af685c110ff -size 62588 +oid sha256:5f06dede0d6ea979298d82117488a8c86f7e25f5e9fdab1911f3d27f5f6ba444 +size 63231 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_9_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_9_de.png index e163e4dfea..d1d2eaec93 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_9_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_9_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b46847466b2a9737509ec3545026afe67534ef09d394e80605e6198986dd898c -size 61850 +oid sha256:bc1aeb01842ae312104564d62c1337f96e23175feec5cc612f0403cbeffb323c +size 62500 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_0_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_0_de.png index 4c36fabda6..4e15a211ec 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_0_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:65cbe6b8edda04bc81eda34d1ee6359e4167e1de5710986d8a6ea75d4891a242 -size 49869 +oid sha256:4a5581d30ed60f9d8c7a78dbc8828a3bb9ef9a87105304e32e88e886ca456cac +size 50242 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_10_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_10_de.png index 24f4cd543c..b140d6bf38 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_10_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_10_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e4d6712068b5733a0eca9bbd8abf8e3961b5b39172eef221d70f03677764d9c0 -size 21937 +oid sha256:9783c08f1f95520399dd887cf9804816b8fd126816baded4fec7dec7cbbdf3f9 +size 22382 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_11_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_11_de.png index 576238a1ad..b1b5ca716f 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_11_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_11_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:53c4fbe93fb932fca54e8b31d3a7e6e6495f95c5374e061ae26440200bebd176 -size 47274 +oid sha256:e9e6247a7d01cdfa88ae3c084dd52cbc3ff586c3e3f99b367ac420b3dcc23a48 +size 47881 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_12_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_12_de.png index 998cfbcb26..aa198b9339 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_12_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_12_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4eb9eb0fec860eb5600513c629d340633c70e8dc57d35e6c39ee9940c9991f9d -size 47040 +oid sha256:908df62190ff68335fae976259220d76a743216c80f4b8ffdf32a0b220c8d976 +size 47606 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_13_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_13_de.png index 31d49b5e3a..264e1fbabf 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_13_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_13_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:99473fc08bea3c859b4035d6783f2e8e189b3e0c037dcdaa11cc09c401201801 -size 47265 +oid sha256:cac68f2ca8b4432c15f237708d43926b63b8e18d09f09ff0880c1eff4122187d +size 47876 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_14_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_14_de.png index 45ee7600c6..5ad012efca 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_14_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_14_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:591b5155a9821f1aa7704be0e35955804a2eb74a765b3abea8cb7b566afef128 -size 30429 +oid sha256:d9b3687bdf46ccb358d398b839062e85e0966099d636a5230e902d717b69e94d +size 30627 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_15_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_15_de.png index 94d1ea6152..69234eb787 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_15_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_15_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:04849a1c2ae4556865651f873cff2301d3bad14230a75260c2bf08f52efa258b -size 63751 +oid sha256:700f90a1dd1df769b05f004a6ba631b4ab5e7095ce6c9883007ce6a0b24cc0a6 +size 64357 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_16_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_16_de.png index 94d1ea6152..69234eb787 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_16_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_16_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:04849a1c2ae4556865651f873cff2301d3bad14230a75260c2bf08f52efa258b -size 63751 +oid sha256:700f90a1dd1df769b05f004a6ba631b4ab5e7095ce6c9883007ce6a0b24cc0a6 +size 64357 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_17_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_17_de.png index 63d824849a..dc1798ef7f 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_17_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_17_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ead0136244274323f98b6bb3718126386fdc85e23d88d05a1040264f95b09670 -size 46931 +oid sha256:ec17816378b915430b160df6d6689e65dacee2c55a08a32de5805bbb8bb3727b +size 47544 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_18_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_18_de.png index 31d49b5e3a..264e1fbabf 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_18_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_18_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:99473fc08bea3c859b4035d6783f2e8e189b3e0c037dcdaa11cc09c401201801 -size 47265 +oid sha256:cac68f2ca8b4432c15f237708d43926b63b8e18d09f09ff0880c1eff4122187d +size 47876 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_19_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_19_de.png index a7aebaf3ae..4d5c74cccb 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_19_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_19_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e8bbd62146eaedcc9308efaeea85190faa96af1e54e858f7bf2997d7ee87b92c -size 48022 +oid sha256:ef8b3d08dbcd50baedf44bc73fc4a1f07fa9b4110103438b2f1cf83ae796049c +size 48635 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_1_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_1_de.png index 181a38d116..87f47f5778 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_1_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9b3e6b4bb3a2d4fdb1bc80340fc887de10983cfd1b4532452b827346b2db2756 -size 65174 +oid sha256:6403f27521507f45d544396da4090ed02dba566f9d93a2f826377714d68a3dbd +size 65768 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_20_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_20_de.png index 6ef4dd11eb..09f6286952 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_20_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_20_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:120097dee41e655efd90f989b7979db1b5fba7f3884f442236e6c4c67c23c1be -size 43447 +oid sha256:9f292f0aa133593e7dc40e1bcd89fd2eadd471cfb212e5622faf7a89e7809e08 +size 43517 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_21_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_21_de.png index 5c624fbdae..b56b7fc66b 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_21_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_21_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f0d9dd44411525c32bcba2646f8dfadaffab24a6a38c054d122228c33405e7f1 -size 36625 +oid sha256:bb68f27dec634a1ff68d2bdc302114a9db5b24a4dae2626f0c7e2de4ae7a935c +size 37028 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_22_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_22_de.png index cccb47dd1c..58c44872ca 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_22_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_22_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:86b15f27f85210dd4efb076a98c92fe4cd1beec920afa6cbbaaf34c4ae3dd0b2 -size 44497 +oid sha256:0221f8de2173ae39400e36c8c42f7a77a9b1bf8b4b77ad38a49ef3d2ff69aba6 +size 44892 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_23_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_23_de.png index 78cf2ad447..1cc3ad13a4 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_23_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_23_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4967187e4e8d74a66e0eda3c5b5b2bc32be4277893eb0641ad969f2c66794dd6 -size 47464 +oid sha256:b9938fb5323d99c4141b10923978e4f7955789451773a4a7c29d8be0958c29d2 +size 47748 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_2_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_2_de.png index 9b1f8f46de..582772e961 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_2_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6230606f11baea84afb1df2b3f94a2c57070bca925fbf198a9ac1954b5cf3707 -size 64948 +oid sha256:a098b96037d5b1c4ef6e0280ecf47c97925b57c39da23ba849bfd6b1a239836c +size 65507 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_3_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_3_de.png index 04a70d4419..63e72f04be 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_3_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b622c14112cacbbb185a49422001794f4291f542e5eb16c8a64a3313bb395d24 -size 65361 +oid sha256:fa0303bdb0f254c334b7b0ca50ca2710cdfa9c3cb1386c15f4c87441dc0dbd6e +size 65955 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_4_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_4_de.png index 8fea8a2bf9..654ab157f4 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_4_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:14311e79e30782c643fcf3ac1f998ec25b4fc91503d37dd21ee462530b08fa67 -size 58889 +oid sha256:34545b7debadd7fc30d40be9d38ee45db814c318649ceaf02a9e76529b664da7 +size 59089 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_5_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_5_de.png index 03ce159627..1480489607 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_5_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3e846329a72ab30ed91bcfe8e8b5b6344382b345a2b2389f0f52664ae48df126 -size 68901 +oid sha256:37c9fed2dbe4d16345310f5e7eda5cb42c926b27f7c37e03cd0892360f94a067 +size 69507 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_6_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_6_de.png index 03ce159627..1480489607 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_6_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3e846329a72ab30ed91bcfe8e8b5b6344382b345a2b2389f0f52664ae48df126 -size 68901 +oid sha256:37c9fed2dbe4d16345310f5e7eda5cb42c926b27f7c37e03cd0892360f94a067 +size 69507 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_7_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_7_de.png index 18cf10fc2b..c8ef51e2a2 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_7_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9c52f0f9723bf4e149de296f0b3865424652771cc2ecbb4f836df0cf0e8be867 -size 66432 +oid sha256:214e33ddfac11bd88bb2f0a7fba0d3a9176223d328d3dd287c3be1e9df8137d0 +size 67023 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_8_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_8_de.png index d6f40adad4..5e631c054c 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_8_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ca2978d58ebf70aa85c5dbe9e3844d288d15f1e4b1922eb729f67c1bcb8e6c27 -size 65166 +oid sha256:54cdef0bfc385938d61749910981cffeb369b7439c534dd2443301deb0d75530 +size 65763 diff --git a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_9_de.png b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_9_de.png index e01c9afa54..c9ada2997e 100644 --- a/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_9_de.png +++ b/screenshots/de/features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_9_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2d62bc658f3001474cd03828b768737bb6ab3ca0f2a90655c477cf5fadfbfd0e -size 64444 +oid sha256:4c3607819380bcce92954c07fba3b54ac7805fb1adb4712c418739dcc4b80edf +size 65039 diff --git a/screenshots/de/features.space.impl.addroom_AddRoomToSpaceView_Day_0_de.png b/screenshots/de/features.space.impl.addroom_AddRoomToSpaceView_Day_0_de.png index 9c9e634317..1602918816 100644 --- a/screenshots/de/features.space.impl.addroom_AddRoomToSpaceView_Day_0_de.png +++ b/screenshots/de/features.space.impl.addroom_AddRoomToSpaceView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9d32df10d3172e8febaaf99687d59744288adaf553fed442b4ebf49ad640bb8a -size 43349 +oid sha256:f07d7e5d385a18950f3836e9f93f90d69478451339743ed1f116602621e1cea0 +size 42567 diff --git a/screenshots/de/features.space.impl.addroom_AddRoomToSpaceView_Day_4_de.png b/screenshots/de/features.space.impl.addroom_AddRoomToSpaceView_Day_4_de.png index 0d4d600b45..572e230e86 100644 --- a/screenshots/de/features.space.impl.addroom_AddRoomToSpaceView_Day_4_de.png +++ b/screenshots/de/features.space.impl.addroom_AddRoomToSpaceView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f21bba3c135b528923f08a141f6848a832dff955bc4553ceaa4380ed6e4ad93b -size 47852 +oid sha256:ef180ce3fa9c6e7e7c2830cc746656d16919815c976a9f94d2f17a1d926b2b03 +size 47066 diff --git a/screenshots/de/features.space.impl.addroom_AddRoomToSpaceView_Day_5_de.png b/screenshots/de/features.space.impl.addroom_AddRoomToSpaceView_Day_5_de.png index d53377d347..34e6d2d853 100644 --- a/screenshots/de/features.space.impl.addroom_AddRoomToSpaceView_Day_5_de.png +++ b/screenshots/de/features.space.impl.addroom_AddRoomToSpaceView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bd96ca86be91c69c89177cabe67f3763d70ba7276471b9196b77c445a3aa1187 -size 33640 +oid sha256:f0b657827dc01e4c55e456ce1e9cbfc90408b1a69dc7213efe0c292f5731bec9 +size 33095 diff --git a/screenshots/de/features.space.impl.addroom_AddRoomToSpaceView_Day_6_de.png b/screenshots/de/features.space.impl.addroom_AddRoomToSpaceView_Day_6_de.png index fcb149d12d..4f8c1b4675 100644 --- a/screenshots/de/features.space.impl.addroom_AddRoomToSpaceView_Day_6_de.png +++ b/screenshots/de/features.space.impl.addroom_AddRoomToSpaceView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7d3be92b1da883684586fe51a6f46c2aea8b0972841c4042fc88658fcd5f1992 -size 48514 +oid sha256:2b7ec7844e936c6b0df3ed7d936f649c0aa6a2b5ceb1e1daa8ebb3df56191db6 +size 47996 diff --git a/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_2_de.png b/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_2_de.png index d422707cd5..957401572f 100644 --- a/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_2_de.png +++ b/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:444b8d1365b3c3b7d4848bf92f952a85dafa94b66dc6aae65bd2b2314be0c3bd -size 46692 +oid sha256:8e1d53cdab48ddbc39dd2c259942c4dc3d7d66fc51cd2e26d7b69f8d056fd4f5 +size 50730 diff --git a/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_3_de.png b/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_3_de.png index 964f4a560b..cd1052d933 100644 --- a/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_3_de.png +++ b/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:47d4932ac771369d0692676c7b4e8673d7f14cced6f34524e307ff43bc4effe6 -size 46857 +oid sha256:d077584cdf331ebf7e5e8ba814b9ac45bc56ecda3f043e516f7555ca1073eed1 +size 50874 diff --git a/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_4_de.png b/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_4_de.png index 7dcf305efd..8178b21805 100644 --- a/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_4_de.png +++ b/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:71be4c7160e882eca53a1b67af9d28586a554364a2e4326ae2c11b5a7a77a548 -size 37244 +oid sha256:3b308d441fd0ff510f3019071599532a4afeab8e6102c10ea8730cfd91778342 +size 38245 diff --git a/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_5_de.png b/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_5_de.png index 20fab889a7..b0a49dce31 100644 --- a/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_5_de.png +++ b/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ecaa265fc56c96e401d41ff0393537ea3fe26bc39c6ab0ef155eaab6a94467d6 -size 44396 +oid sha256:e00dce6025a0e0d48c11f647df032a1e71752a2b0e55c88ba73de688a0db06b0 +size 45360 diff --git a/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_6_de.png b/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_6_de.png index 8357979404..bd12b11cdd 100644 --- a/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_6_de.png +++ b/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a3fdc445562f138d6a7721ac9fe09ccdb8b94b217ce83bdabfcb25dbe59b9301 -size 41959 +oid sha256:660ed452eb296905a909e76f5b245b9ecb69995540b7317eef08213b90c55b3e +size 43286 diff --git a/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_7_de.png b/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_7_de.png index 200a2fa394..155ae9d999 100644 --- a/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_7_de.png +++ b/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:041d3647ec7e57cdb6ff70e13f2a9844ea9237d4fb1592301c2f64267e67c9be -size 37628 +oid sha256:9399d1bee5478851bae0be419db299c926d14fdd75e7706a87f928c88a343d9d +size 38469 diff --git a/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_9_de.png b/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_9_de.png index 7cd1811e4e..af42e5b28e 100644 --- a/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_9_de.png +++ b/screenshots/de/features.space.impl.leave_LeaveSpaceView_Day_9_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8ad0ca2ce09ca5ab510ea1ab0f7cb9481b2810c6ff9bba76ee4814393a6fe54a -size 38078 +oid sha256:a0542c57403eec0b46e9d60db091aae0f80a0c21334925a35fdce0108115c525 +size 38750 diff --git a/screenshots/de/features.space.impl.root_SpaceView_Day_0_de.png b/screenshots/de/features.space.impl.root_SpaceView_Day_0_de.png index 6fdf9dde5b..50f7b98fa4 100644 --- a/screenshots/de/features.space.impl.root_SpaceView_Day_0_de.png +++ b/screenshots/de/features.space.impl.root_SpaceView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8321ad726880f5dc67bc29d68d24b5e8c868f868ef603d39718a0345571db485 -size 50014 +oid sha256:c29814cac69ce60cab2f0a544b9b1e2602f83897af482bd9b468cea970e52b11 +size 49870 diff --git a/screenshots/de/features.space.impl.root_SpaceView_Day_1_de.png b/screenshots/de/features.space.impl.root_SpaceView_Day_1_de.png index 5750b88b53..5805c0da5e 100644 --- a/screenshots/de/features.space.impl.root_SpaceView_Day_1_de.png +++ b/screenshots/de/features.space.impl.root_SpaceView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:75e6e31a59cef9f8629a6e04af3cbe605ae55390bf9c257f03ec22392c92425a -size 51075 +oid sha256:11456a29bcc3c9fabcea2fec0fb2e0b515c4550d5b71ea9cea230b9f02e80512 +size 50843 diff --git a/screenshots/de/features.space.impl.root_SpaceView_Day_2_de.png b/screenshots/de/features.space.impl.root_SpaceView_Day_2_de.png index e401943ba4..9528627c42 100644 --- a/screenshots/de/features.space.impl.root_SpaceView_Day_2_de.png +++ b/screenshots/de/features.space.impl.root_SpaceView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f182c31190dbad4f38d2ceafcf57b55c5c588502962cd8a33ec3e24256fbfadb -size 52230 +oid sha256:de6b616b28102e8ce1c30ce49d12733130d736a257c28cd663eb793b4654deb2 +size 52013 diff --git a/screenshots/de/features.space.impl.root_SpaceView_Day_3_de.png b/screenshots/de/features.space.impl.root_SpaceView_Day_3_de.png index 78c6aaa1e3..284847ec81 100644 --- a/screenshots/de/features.space.impl.root_SpaceView_Day_3_de.png +++ b/screenshots/de/features.space.impl.root_SpaceView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c8755ce084a21ffc75645ae66e3b2ad1f4bd2c162a5fa8998a7afb6da59a1c04 -size 60608 +oid sha256:9bbd4c38e067f01734061e48d2b74063589d85d671aa3ab3c78e6c2fcff6189b +size 61087 diff --git a/screenshots/de/features.space.impl.root_SpaceView_Day_4_de.png b/screenshots/de/features.space.impl.root_SpaceView_Day_4_de.png index a606451f90..331eba33a6 100644 --- a/screenshots/de/features.space.impl.root_SpaceView_Day_4_de.png +++ b/screenshots/de/features.space.impl.root_SpaceView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8398f4e62d4e360f74ad19322930d3b9316c30341e8d33043e15c436962e535f -size 61207 +oid sha256:9ba41e6050b30ae3d1a8e37193f34630dbfd9d856289a7a6b14be3a4f00e36a4 +size 61716 diff --git a/screenshots/de/features.space.impl.root_SpaceView_Day_5_de.png b/screenshots/de/features.space.impl.root_SpaceView_Day_5_de.png index 3185b50681..cf0f2d34d9 100644 --- a/screenshots/de/features.space.impl.root_SpaceView_Day_5_de.png +++ b/screenshots/de/features.space.impl.root_SpaceView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6aae5a7b6a524f389f3323fcac496efe946c6282254b941513a0bcec5493cf25 -size 56971 +oid sha256:b10c1bb1c09e028703dc64ff9dc7ecd82b057735a343ecf2115245785c591847 +size 56475 diff --git a/screenshots/de/features.space.impl.root_SpaceView_Day_8_de.png b/screenshots/de/features.space.impl.root_SpaceView_Day_8_de.png index 6e6bf0ff61..758000f780 100644 --- a/screenshots/de/features.space.impl.root_SpaceView_Day_8_de.png +++ b/screenshots/de/features.space.impl.root_SpaceView_Day_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f9441c13f504ac70b19e1646c63a1672fa49bf59ec177675f38db08f34049d56 -size 52208 +oid sha256:13899dc5db1da9cb2218e390c56b924090703a2085251044a6756d34e3b3fca1 +size 51370 diff --git a/screenshots/de/features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_0_de.png b/screenshots/de/features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_0_de.png index ba33af4593..56adc457fa 100644 --- a/screenshots/de/features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_0_de.png +++ b/screenshots/de/features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:51843c1bf3dda9c4d8f2a8ced042d86f251558eb77efd535e5134e5ef49f85e4 -size 21615 +oid sha256:7be44ab3cb6cfca25c07b484fa555a4ab4813bf78cf759dce26381fabb7a59de +size 21076 diff --git a/screenshots/de/features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_1_de.png b/screenshots/de/features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_1_de.png index 081df973ae..262ca77243 100644 --- a/screenshots/de/features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_1_de.png +++ b/screenshots/de/features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a5b587ea51b16b95fceb2e2554a340bb2cffceb86f504e331c1fa8033f45f217 -size 18128 +oid sha256:4abab60980b1ba4597b1c7478daa35aee111509d23b06f0307c814377dc9b3bc +size 18163 diff --git a/screenshots/de/features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_3_de.png b/screenshots/de/features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_3_de.png index 204665faed..642c4a2c4f 100644 --- a/screenshots/de/features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_3_de.png +++ b/screenshots/de/features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7fd3fd3dc7ebd9d0cf6287626f3073e1b3d6e4ad993471183128734fe1246d6e -size 21549 +oid sha256:3ccce1fa59a162fb4a9f0ece0c1219c4d8b51fc105db6aed6e9d6c8462d20432 +size 21578 diff --git a/screenshots/de/features.startchat.impl.root_StartChatView_Day_1_de.png b/screenshots/de/features.startchat.impl.root_StartChatView_Day_1_de.png index 14b7d796bc..b7edae5a89 100644 --- a/screenshots/de/features.startchat.impl.root_StartChatView_Day_1_de.png +++ b/screenshots/de/features.startchat.impl.root_StartChatView_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0f4fe803d3318a31919099958d793ecb4f5eae7109596712de23c89e6c982ea4 -size 20145 +oid sha256:b297c01a136a303656df51f3a641e6475178a062f42fbf82a685b94b9242deae +size 20078 diff --git a/screenshots/de/features.userprofile.shared_UserProfileHeaderSectionWithVerificationViolation_Day_0_de.png b/screenshots/de/features.userprofile.shared_UserProfileHeaderSectionWithVerificationViolation_Day_0_de.png index 290790c30a..7df5406a47 100644 --- a/screenshots/de/features.userprofile.shared_UserProfileHeaderSectionWithVerificationViolation_Day_0_de.png +++ b/screenshots/de/features.userprofile.shared_UserProfileHeaderSectionWithVerificationViolation_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:933ab3d2d152a647cbea97b7068bb8186546849aab52857c62e08d763b7628e7 -size 27998 +oid sha256:4de648b116018f5aa5494fb875560cd56480bbd874b856f4bdf20f60000b51f0 +size 29960 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 e2b8c8b44d..cb5fb23ac5 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:b93e9986c445dd4e829a2a2be58c3954e0109b0839b63c96a12b44a093330c46 -size 18693 +oid sha256:d5bf42347d4e03753989e132fc30eadc8c9ae24970f17f246850a39dbf6032ea +size 19191 diff --git a/screenshots/de/features.userprofile.shared_UserProfileView_Day_3_de.png b/screenshots/de/features.userprofile.shared_UserProfileView_Day_3_de.png index 9a6b504177..adc6b8dcb2 100644 --- a/screenshots/de/features.userprofile.shared_UserProfileView_Day_3_de.png +++ b/screenshots/de/features.userprofile.shared_UserProfileView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:01f0e859afbfc0a87cb9b4d3a5a592fc81de640d0b25af79f50ae6ca19a48685 -size 43200 +oid sha256:5548ebd33a5d6cc34c0269577b57eeac6a1b8cbe14bb64a50f526c5157b61935 +size 43219 diff --git a/screenshots/de/features.userprofile.shared_UserProfileView_Day_6_de.png b/screenshots/de/features.userprofile.shared_UserProfileView_Day_6_de.png index b44bf147b9..a7c4659bee 100644 --- a/screenshots/de/features.userprofile.shared_UserProfileView_Day_6_de.png +++ b/screenshots/de/features.userprofile.shared_UserProfileView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8ea5ec2c5906c1422814694c681308bb4b5fd7da1f947ce47e0979a9baa66795 -size 24926 +oid sha256:d60e0159dee279ca3b1fef1a3d8503d7434d64d791e611a31afaf323fd8fffbd +size 24861 diff --git a/screenshots/de/features.userprofile.shared_UserProfileView_Day_9_de.png b/screenshots/de/features.userprofile.shared_UserProfileView_Day_9_de.png index 36199d212c..a88842dc64 100644 --- a/screenshots/de/features.userprofile.shared_UserProfileView_Day_9_de.png +++ b/screenshots/de/features.userprofile.shared_UserProfileView_Day_9_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1d4850add6183c31991ef98abe97ec26e5076a22be9b0526f4dc917e7ece3c57 -size 34465 +oid sha256:3c699186972ece1b01495bba548da3e3ead1025348f53d39271f9887c0ea4d2f +size 35651 diff --git a/screenshots/de/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Day_0_de.png b/screenshots/de/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Day_0_de.png new file mode 100644 index 0000000000..58546b8522 --- /dev/null +++ b/screenshots/de/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30357bf18792db5ab20085010251170a724ffe8c00313facd04ee704e806af64 +size 10982 diff --git a/screenshots/de/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Day_0_de.png b/screenshots/de/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Day_0_de.png new file mode 100644 index 0000000000..83302d6ba4 --- /dev/null +++ b/screenshots/de/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16dee1dfe746cd40dac9fe8f0af3ecb42cd14bab5cc490917b589beed065ed1b +size 14686 diff --git a/screenshots/de/libraries.matrix.ui.components_SpaceHeaderRootView_Day_0_de.png b/screenshots/de/libraries.matrix.ui.components_SpaceHeaderRootView_Day_0_de.png index 07b95441bd..beaf05e540 100644 --- a/screenshots/de/libraries.matrix.ui.components_SpaceHeaderRootView_Day_0_de.png +++ b/screenshots/de/libraries.matrix.ui.components_SpaceHeaderRootView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fcf290de055889a30b6859a0815655b07ee96e600e241ad18af768ba7d0691a2 -size 17777 +oid sha256:6d43d8f1bb573c61cee0775291209a7c22582b479cba15c328720676e01b188c +size 17038 diff --git a/screenshots/de/libraries.matrix.ui.components_SpaceHeaderView_Day_0_de.png b/screenshots/de/libraries.matrix.ui.components_SpaceHeaderView_Day_0_de.png index 7e57514e60..b9e35ee0bb 100644 --- a/screenshots/de/libraries.matrix.ui.components_SpaceHeaderView_Day_0_de.png +++ b/screenshots/de/libraries.matrix.ui.components_SpaceHeaderView_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1ef090ea6ebf5245e8542ab2f5419b0b16656bb19080246558022ad10c201871 -size 63969 +oid sha256:fa3a510aa2c764b41069d762c4e2c3d4a1dae4c479400225b9b56a9406050d0f +size 62833 diff --git a/screenshots/de/libraries.matrix.ui.media.contentvalidation_InvalidContentView_Day_0_de.png b/screenshots/de/libraries.matrix.ui.media.contentvalidation_InvalidContentView_Day_0_de.png new file mode 100644 index 0000000000..4d45c8142c --- /dev/null +++ b/screenshots/de/libraries.matrix.ui.media.contentvalidation_InvalidContentView_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3496108c31424decfa539e398d56587316bc52187c2c30436cca14c14b3d97b9 +size 13795 diff --git a/screenshots/de/libraries.matrix.ui.media.contentvalidation_NotFoundContentView_Day_0_de.png b/screenshots/de/libraries.matrix.ui.media.contentvalidation_NotFoundContentView_Day_0_de.png new file mode 100644 index 0000000000..83b42ac691 --- /dev/null +++ b/screenshots/de/libraries.matrix.ui.media.contentvalidation_NotFoundContentView_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efb1195c4056a8d313e01b7790f2680f9dace13f72e44787d76308bc61f91933 +size 12283 diff --git a/screenshots/de/libraries.matrix.ui.messages.reply_ReplyToInvalidContent_Day_0_de.png b/screenshots/de/libraries.matrix.ui.messages.reply_ReplyToInvalidContent_Day_0_de.png new file mode 100644 index 0000000000..b9aab63f92 --- /dev/null +++ b/screenshots/de/libraries.matrix.ui.messages.reply_ReplyToInvalidContent_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56784b3746930453badd4959645cba517e82a2eccc92adad64bb3a5b9642c029 +size 14092 diff --git a/screenshots/de/libraries.matrix.ui.messages.reply_ReplyToNotFoundContent_Day_0_de.png b/screenshots/de/libraries.matrix.ui.messages.reply_ReplyToNotFoundContent_Day_0_de.png new file mode 100644 index 0000000000..cd56d60dc8 --- /dev/null +++ b/screenshots/de/libraries.matrix.ui.messages.reply_ReplyToNotFoundContent_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2085c2feb1d0dca8922906ca62cd4bbbe80a34aa3dd11921a29db62d8aeeb4b +size 12489 diff --git a/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_0_de.png b/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_0_de.png index c7d86829d8..2c1e3beb07 100644 --- a/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_0_de.png +++ b/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_0_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:751d7e1f372531507a002d81dc1b2f19006d9554a47763081be8fda088941f5c -size 46213 +oid sha256:67c7d7c0ffd9427aff65da4740175945e68c27bea45b227e24dfc7f5773fd77b +size 47534 diff --git a/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_1_de.png b/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_1_de.png index 8e9890bf1a..bbf004d4ee 100644 --- a/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_1_de.png +++ b/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_1_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d9872d332ef0fbf0252794c65738bf57b1cfb85bef381b1815348b693d2646ee -size 44035 +oid sha256:4510f9efc5b4d08d4fa515226db2f0d1c50c44fd30754ac2b894203d2c3c32a1 +size 44535 diff --git a/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_2_de.png b/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_2_de.png index ca691b23ff..8e1532abef 100644 --- a/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_2_de.png +++ b/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8911f676e98e041a2579fff0c9a3b3b8678dc54ecb16703b73ad5fed9c70a858 -size 51495 +oid sha256:094b1eb74eb972d91e3304ddb7ef74c389c43bcc66c88b302270fe42494af474 +size 52759 diff --git a/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_3_de.png b/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_3_de.png index 4bcc26f8f4..462aa46d90 100644 --- a/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_3_de.png +++ b/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:650813d92f195938bb1765e17e293a3cd0987f7724e073e7bc193ca68b964b62 -size 33222 +oid sha256:0f118d8d636a1a1f94f91431cb5ea4136161de235a76f66ad2957e442bbbb100 +size 33714 diff --git a/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_4_de.png b/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_4_de.png index 168340791d..546cd57fe2 100644 --- a/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_4_de.png +++ b/screenshots/de/libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d5d2051b195dae39090ce2e93c7d0266c5c832e99d6fb24c3363dd8d42036cf9 -size 45629 +oid sha256:872dc9c589a50f69a25ef832fd714a62e51f6ac57fe7ae82d217c67d2df40411 +size 46338 diff --git a/screenshots/de/libraries.mediaviewer.impl.gallery.ui_AudioItemView_Day_0_de.png b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_AudioItemView_Day_0_de.png new file mode 100644 index 0000000000..4ed9d55279 --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_AudioItemView_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1a64f8f1495437e4a257f92f2a7d2115aa06cfeb75c2b36936c66838e8a3768 +size 33552 diff --git a/screenshots/de/libraries.mediaviewer.impl.gallery.ui_AudioItemView_Day_1_de.png b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_AudioItemView_Day_1_de.png new file mode 100644 index 0000000000..4bb3bdfbd1 --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_AudioItemView_Day_1_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd5ae5576f2e6415d4fd805cbf073bc8be67b9be91a072abed7418f25c10c074 +size 46703 diff --git a/screenshots/de/libraries.mediaviewer.impl.gallery.ui_AudioItemView_Day_2_de.png b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_AudioItemView_Day_2_de.png new file mode 100644 index 0000000000..2cd95e4d63 --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_AudioItemView_Day_2_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c40c89af2b6ea4a668e8f17ff7187bb9b75a8e9be5cc85247a06dc1789106ea4 +size 82463 diff --git a/screenshots/de/libraries.mediaviewer.impl.gallery.ui_FileItemView_Day_0_de.png b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_FileItemView_Day_0_de.png new file mode 100644 index 0000000000..cfd7a19310 --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_FileItemView_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53a79819a17796a701d8d2cf8b56904ccfb78175f00e6d4ffed7dd888ed92846 +size 34612 diff --git a/screenshots/de/libraries.mediaviewer.impl.gallery.ui_FileItemView_Day_1_de.png b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_FileItemView_Day_1_de.png new file mode 100644 index 0000000000..b801756104 --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_FileItemView_Day_1_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9a0f51754aea79321f064f7820e2f5dbbf1109297896d1548b7d5567b16b92a +size 47066 diff --git a/screenshots/de/libraries.mediaviewer.impl.gallery.ui_FileItemView_Day_2_de.png b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_FileItemView_Day_2_de.png new file mode 100644 index 0000000000..f7c876c90d --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_FileItemView_Day_2_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36e60e42e0e123c54eeb4b41b31c385140947cdc1bd59a2f30c6a6692c593b2b +size 83606 diff --git a/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_0_de.png b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_0_de.png new file mode 100644 index 0000000000..2b7cb9d8bf --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a7ecadc7b6da6e25d88e829a61e37312dccac6683952727283910886760ea60 +size 35301 diff --git a/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_1_de.png b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_1_de.png new file mode 100644 index 0000000000..73ba16e706 --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_1_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f047663f1a33758a9ea917f0d8e7afb0c7e3d36ec8c5397aae4c9010d9564e41 +size 35998 diff --git a/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_2_de.png b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_2_de.png new file mode 100644 index 0000000000..4cdbe9e8b1 --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_2_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59ab959626c43e15e30c1e5e588e2733e07ebdcbc93247fb5732c950c971eff6 +size 35858 diff --git a/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_3_de.png b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_3_de.png new file mode 100644 index 0000000000..57471ebc00 --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_3_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80a0cded2f29c06c69a6836a9cb89a246d6d1b46a687f421dbf82adb8236d1e7 +size 36155 diff --git a/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_4_de.png b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_4_de.png new file mode 100644 index 0000000000..40ebb46597 --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_4_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f10220a899acffacfc27670d1750c61e53f1e7ac0353c6ed890872da02503e2 +size 36358 diff --git a/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_0_de.png b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_0_de.png new file mode 100644 index 0000000000..c466eb4127 --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_0_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:152512c3b3644a41bc81158f7fcf71743e313c35a42b33947cf9ff4eff155cd2 +size 35369 diff --git a/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_1_de.png b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_1_de.png new file mode 100644 index 0000000000..51d18c9735 --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_1_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55070c7ca89b4638ead35bd968d1bc2298870c247c5a1e1854cffda60ab26f4b +size 44013 diff --git a/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_2_de.png b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_2_de.png new file mode 100644 index 0000000000..8f01afe9a8 --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_2_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd0776f3c56718d704a236ac825f466b22df3313f38230ed188f7fcd62ef3ca4 +size 85022 diff --git a/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_3_de.png b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_3_de.png new file mode 100644 index 0000000000..164811d52b --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_3_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01d5ea7a1e891263f34785eb24618aabe4d86eb67a748894eab3655c25af43c6 +size 33306 diff --git a/screenshots/de/libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_7_de.png b/screenshots/de/libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_7_de.png index 90caeae1ab..583eb8652a 100644 --- a/screenshots/de/libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_7_de.png +++ b/screenshots/de/libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_7_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:16f6352ea69f3a8ba5b907e585d0558d7822e9cce9216ae043ba10cbf7244768 -size 50489 +oid sha256:ba58c9c2273d1619d371212a0789bde509059fae48da035157e16902ef6820b8 +size 51725 diff --git a/screenshots/de/libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_8_de.png b/screenshots/de/libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_8_de.png index c7d86829d8..2c1e3beb07 100644 --- a/screenshots/de/libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_8_de.png +++ b/screenshots/de/libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_8_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:751d7e1f372531507a002d81dc1b2f19006d9554a47763081be8fda088941f5c -size 46213 +oid sha256:67c7d7c0ffd9427aff65da4740175945e68c27bea45b227e24dfc7f5773fd77b +size 47534 diff --git a/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_11_de.png b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_11_de.png index b81a3c6a5c..9a6d632fa6 100644 --- a/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_11_de.png +++ b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_11_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:73a6a48d04d86e9d5e9e546681863c32f651e6dc9af6d7f042e7e36b7fd98997 -size 28178 +oid sha256:455da1dc52957aca1ab58743ca7875f81af1732acdd8688e1f9631bc3346360a +size 28664 diff --git a/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_14_de.png b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_14_de.png index 8ffa83e0e9..b96f3e1c8e 100644 --- a/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_14_de.png +++ b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_14_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a6e4532edfb990b61d5fc6c30e5e054ef9de9c417ab39ed9b8a87d7936e0536e -size 8242 +oid sha256:dc9a8726d75c58f40e46dc2d86667905701ed0c88024561a76dbdfa284ea0eb5 +size 9374 diff --git a/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_15_de.png b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_15_de.png new file mode 100644 index 0000000000..dc945ff0b5 --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_15_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6903580c2b1a299381a8e5c2a79ca3f93455e4b259c3e77b3fc157fabfd9a2d +size 19014 diff --git a/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_23_de.png b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_23_de.png new file mode 100644 index 0000000000..e6f4029b18 --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_23_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:155c757be70f3743ccb0a764ccb1fca68d11eaf93001c65345b588c7ed326e4e +size 13575 diff --git a/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_24_de.png b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_24_de.png new file mode 100644 index 0000000000..94eb979c7b --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_24_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:363eb52fa1e73f23f5950d69f768bc1aa1f968068be814fb3a558df3445d5ea8 +size 21907 diff --git a/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_11_de.png b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_11_de.png index a6f7f1f069..900514bf6d 100644 --- a/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_11_de.png +++ b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_11_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7a48cda9f340bdf7c4c73737aa8b5f389ea481deac6cd968eaa70c29ed7863ba -size 45047 +oid sha256:9c190cf9268932a10065a8d41b25a782e109c90f1c6789d91c50e9964ba33584 +size 46237 diff --git a/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_14_de.png b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_14_de.png index d4d5c934b0..9a3a171bc3 100644 --- a/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_14_de.png +++ b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_14_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:52d5f724544dc34769916a9d1f94793bf5fb2559a0e289993de2d9235f5e3061 -size 8888 +oid sha256:fd190fb9998013622dfb0f2ce18076956cadf234ab2c63d8d4b07202179d330f +size 9973 diff --git a/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_15_de.png b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_15_de.png new file mode 100644 index 0000000000..7f7f75e086 --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_15_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d1ad11a48a70da8858fd43693dd878c9fc62afd85adf222ed5b2b70f0cedd74 +size 19330 diff --git a/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_23_de.png b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_23_de.png new file mode 100644 index 0000000000..df637505ad --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_23_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82a46ac123d6b609fa0b8c5324cc3454dc8a2462b57a6c4d0992faa01186a2e5 +size 14111 diff --git a/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_24_de.png b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_24_de.png new file mode 100644 index 0000000000..ef5394642e --- /dev/null +++ b/screenshots/de/libraries.mediaviewer.impl.viewer_MediaViewerView_24_de.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63cda55474efc2561f8526b65b70ae10e50286c4c492b9837a9adbc662d2ca23 +size 22239 diff --git a/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_2_de.png b/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_2_de.png index 56e31eaa37..9785ef5e14 100644 --- a/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_2_de.png +++ b/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_2_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f7fc9c7fb214f190f701921db8d9aecab6d2e5b33f16b4f181074cf08b02f871 -size 30282 +oid sha256:7c91edaa52f5f838a1047e22734865a6dcf8df184a0da36a6b36b910812d6955 +size 35776 diff --git a/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_3_de.png b/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_3_de.png index 724051d10b..feba794646 100644 --- a/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_3_de.png +++ b/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_3_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1e59b9b27891785f5ae3cca5ffba87f48d7220ca8a6158b704dbe934c4fe570c -size 28373 +oid sha256:4f40e61e45cf4d20e2ffe6f669bcaa66b067a2b170d28badfad2899eca36aa0d +size 33875 diff --git a/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_4_de.png b/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_4_de.png index 3331a2941b..5eafabea4a 100644 --- a/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_4_de.png +++ b/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_4_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:caae8a49c1ab004622594d40af22069fc76df184406e02afb91c5896692f79c5 -size 32519 +oid sha256:c66e419ebcd5de5e89d383875477d85a3402929bdf7b8a609d0566962a4531ae +size 37829 diff --git a/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_5_de.png b/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_5_de.png index 9781177371..dab4363354 100644 --- a/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_5_de.png +++ b/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_5_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2926289b827b4de6d15430973a2b2da6e22188316a51e0f7f5749f6d267fcec0 -size 27989 +oid sha256:fc81b97276257ed21cce6be87143795f563798ed3e3ed317b0ec527cef080604 +size 33507 diff --git a/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_6_de.png b/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_6_de.png index 8e1faa170c..b7052eb785 100644 --- a/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_6_de.png +++ b/screenshots/de/libraries.roomselect.impl_RoomSelectView_Day_6_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1173c3f4034d600041a4a222d52493870805a850748e8e30a9fc2fcdcdd44d23 -size 32165 +oid sha256:07ff84d560509134d4c77d9a7f6ec407bd251b97455bdfb8ae717d9002510263 +size 37378 diff --git a/screenshots/de/libraries.textcomposer_MarkdownTextComposerEdit_Day_0_de.png b/screenshots/de/libraries.textcomposer_MarkdownTextComposerEdit_Day_0_de.png index fec1852b42..75800aad40 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:ffd8d4f4c76df4929ea331802d71c6cc00b844889ae8bd82eb757e5c6add157c -size 51911 +oid sha256:e408f384464d00ed80ba2bd6c661b1a27e34cecec25a1e2d8132aa4788914347 +size 51738 diff --git a/screenshots/de/libraries.textcomposer_TextComposerAddCaption_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerAddCaption_Day_0_de.png index 36dded1577..ac35282b21 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:5848b7a8e25540ae61754ab06825ee3a4e03b5714491ca9b52f90b65a9c8223c -size 57420 +oid sha256:a5445de9628d23f646e18ea45e8fa48706f0467615e0edec13439faf6c361b1c +size 57106 diff --git a/screenshots/de/libraries.textcomposer_TextComposerEditCaption_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerEditCaption_Day_0_de.png index 6ccee24175..e5cd1b1ff5 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:998bfd0f79d61ffaebb77619acc52a6eb20d1afe8e383ade200fb7cb366f3e05 -size 55388 +oid sha256:9e3572a558429f039b9f66e3ef5375ba2cff4a58275b33f5aca61894626c5276 +size 57006 diff --git a/screenshots/de/libraries.textcomposer_TextComposerEditNotEncrypted_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerEditNotEncrypted_Day_0_de.png index 64325c919d..567ff4b89c 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:e3d694f2381da38dbf032db3fabf889b78a464002b132798554d39d56c908d10 -size 64795 +oid sha256:f3c40509b24126f60431083ebd217961728ecc614c6a66dca8879849abaf8aeb +size 64496 diff --git a/screenshots/de/libraries.textcomposer_TextComposerEdit_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerEdit_Day_0_de.png index 04a63bfc30..9741ae8512 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:b90c8c258147fa5ba7bb8d6851161248193c6ea6f05209c52ea2fc8bc31f43e1 -size 52050 +oid sha256:a3f6fe2d9cbdb31ac29706c08772fc201eb1af354e401d5f7868917f46308a3b +size 51869 diff --git a/screenshots/de/libraries.textcomposer_TextComposerFormattingNotEncrypted_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerFormattingNotEncrypted_Day_0_de.png index 857bf537bc..9b1c250ef5 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:85d0dcc807d02f2f1d6711e0b48694e1c9292b9c5bfd14f361bbdbc0cc982611 -size 63258 +oid sha256:c6d1503a6ad0557d49d195a4260c428356cf68b095b7ab17d19fdd246e4d788f +size 63261 diff --git a/screenshots/de/libraries.textcomposer_TextComposerFormatting_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerFormatting_Day_0_de.png index 0938ae98ae..a5ac2b6883 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:1a6f9dc7ca20c6ad863a8cdfb81e16de5d7943e1ccf49fd09173de61eb126a6a -size 50955 +oid sha256:3f7fdddd70fcd98cbfaee0d05f99f07a314e6022462787b97520c90f880a4707 +size 50962 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_0_de.png index 23921e4eba..094c915d41 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:8fd803c53ba9e0c50ea107b3faa0e960a4499aeac9bddd6588312f35f9ed13e7 -size 73181 +oid sha256:5d062613d71be178b91007587eb8c02f588a28af44be1915d366a3d190583da2 +size 73183 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_10_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_10_de.png index 0d9af37769..f6d16c4ae5 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:938eb455f5d185fd3f89a45096356103fe6062ae18e17bd73f02b84ee06d1e7d -size 59607 +oid sha256:eb87c4bcc6e6e4e5bc3aff19fea70477044e938ff33c8632d390acfd7e1a6e1e +size 59610 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_11_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_11_de.png index e922643412..6f02a631ef 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:2b0840a07a87b78e8d00497f932c41d7eceea0fd931d970d074469b3c741bc55 -size 72707 +oid sha256:583f29c32e2fc893a33ba57bb7b20e113bd5658b504dc1118b75143481a83626 +size 72710 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_1_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_1_de.png index 587e316692..8d9a1df6b9 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:c642b990169a6a1c543e308f1cac8ad73a3e9eecc7f075ae24ea1d03d89e3219 -size 83423 +oid sha256:efd398100c6a66e98129f38c4232f7ad53727f9ab70c9647bf1f1cbd95715c9a +size 83426 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_2_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_2_de.png index 4e8012dd20..c90301ebbe 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:57b818508094e0de0f1a94d98ab8ba0443c6f7d854d12ed855aa98073b239a17 -size 62304 +oid sha256:b18ae3c23b701e862995a6de71cf74f6f5e49e29afa9af4c34c158aff83c3939 +size 62307 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_3_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_3_de.png index b062fff206..02ce30ab7e 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:ed2d4bc63f4731050a69ece5d58af7f6d37e806c6c47a3187a5660963372b6e9 -size 61204 +oid sha256:323a7feea2da7ed00f3fabc359646450fe1eed5ac6af6b86a6eb0544f265b4c8 +size 61208 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_4_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_4_de.png index c4676d7f32..249e9c669f 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:598cdca898f332471f0e0063dfc4b01e3ac423054be47dbc631a54f52f147bb9 -size 66874 +oid sha256:2c9e3c22b855166a28ba90cce503bd326eaa8fcb307c1b5af87ade81e9a6fc61 +size 66877 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_5_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_5_de.png index f7c935f14d..37bf007403 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:8f5827c02a5da3f6a94ed607f0af72abeff684647a550bf097168d15ef4e60cd -size 89976 +oid sha256:2902efd80ed2c843956acff4ce56c815321b4965e1b71bbe3144520d19272f82 +size 89980 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_6_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_6_de.png index 6238b05f23..719292871e 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:99a4b449378b6b61df662f43e1e32417e8d1ecf7f76eab7fcb0f7609ef06aa4e -size 60521 +oid sha256:1e684bdbfdd05acc3fb57488dec60ec0810441549aa333a17ce764829e3c7064 +size 60523 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_7_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_7_de.png index 31affa15cd..f0593bcadb 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:81bcc9d662794e79998ee4a1e680abd65ee4333c1fbf597e6200d2cab9de484b -size 60598 +oid sha256:60bfbc034b31c46d7a26cf6591a349fdeb5445ad4bfcc66be529485bd5d8e807 +size 60602 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_8_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_8_de.png index 84404e8803..4b267ef305 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:9738bf5f3078b76d3780e762556995256f6ad5a27643b487568fef7d8ea44778 -size 69214 +oid sha256:55d267eb0bf004f207aebd48d9076954dff2e9f4b6973d03c588d88f565428d0 +size 69218 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_9_de.png b/screenshots/de/libraries.textcomposer_TextComposerReplyNotEncrypted_Day_9_de.png index d6ec8b12c5..1b1d5109aa 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:acf8890ae98690403941192c7b4e2a541c299bce6a78129f84ee1fae0ae0226c -size 60068 +oid sha256:82cb68f84f78e2482a34fd2a876832ff0115ddd3326137231d0d278b6380efc7 +size 60071 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_0_de.png index 23459160a0..9bc18c3d8e 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:00cf527f8c7b4666daae1874431bc4e4ed23acd2dc194c1eff4cb0d8776e5c01 -size 72220 +oid sha256:15123dde7d2bc645199bdf4f335fb52b59aabea9823d78459728c1a48ca1e004 +size 72213 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_10_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_10_de.png index 67fe7d0095..cfa8f641b6 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:7e368d4bed293ab020355ad99c7ec8aeaa29cc8d49e789c23c9a2c5020bb8fbd -size 56060 +oid sha256:1895617a296fd0f574fd27d5cce18bc2f9a67e179417f4923b78088f44b63eba +size 56075 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_11_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_11_de.png index d492a13bfa..f5ff9b644e 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:f74eedd9e5ff22d3b2689fc3a794c74f0c1b36eb79941098a34f84ccc25e23c3 -size 70527 +oid sha256:9ee291c1289c19c3cae2bd214637e3020222fa35fcaf5a9355aa07cd57a613cf +size 70524 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_1_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_1_de.png index 5719875b39..b5aff75069 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:86ca47745f52ce69247f231c10321e852be493922f300786167262944c6e4589 -size 84162 +oid sha256:dae64486aa2f5cb78e3f1d4779d962bf588daea438f77590dbdb81fbca5ace18 +size 84154 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_2_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_2_de.png index 1cfa5959ad..1c2c07654a 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:cb74b0cc66cf73d64dad42b8bfd36e31c081d5e17425d44a966786b30e736cf7 -size 59206 +oid sha256:00aa7d4b54aa2f7d9c9b64cc24ca9e4961382a8a1c08c0b3682b6f5659a18331 +size 59220 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_3_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_3_de.png index f25038075a..7ae01973b2 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:40c72b83b4bdebeef1012e4503471979e4c665eeb34f2300250fbc777a1dfae6 -size 58210 +oid sha256:c954c31bbc0c6223ba1e536b34136ede4c3e0fe3055e75224905fb4fd3380e75 +size 58220 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_4_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_4_de.png index 27c85c1f18..cb6a9f7803 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:7ddc4b824eb3e6d1576d82b20f674be3d02937d5652ff2ca2acdddf4be3e842e -size 65967 +oid sha256:b8998259997128557bc821183361a159a249e0abb15e03ee7772d32d85db3382 +size 65978 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_5_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_5_de.png index 821efef0ef..5c9360a2f7 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:6ef123f742c10b05079f64fdd39425420eabe963beb30e42d3ddf5fc494b1210 -size 101189 +oid sha256:246dfaa834094d300d403a049653707b3740bf96180e457ccca3e2e26628504e +size 101197 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_6_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_6_de.png index 2df6b6f26c..d8416373f7 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:394bbe03228817a62d63d2bab5eddc3890c77f71cb8d071b640d9de9a260f281 -size 57389 +oid sha256:38e55d07cb01979cb83e3b1d02f1ca01834fbba17c016fbdf37af59ec63ffc34 +size 57402 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_7_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_7_de.png index 2bee54c74d..3cbb7e2906 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:d77ca9b7f40967b9255236c28e810dd7df515afe8d3ea32213c183048707d172 -size 57259 +oid sha256:a9fbd98944b6cb546fa43695164e34942b6fc481cd31622f03ccdc1fc74988f4 +size 57268 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_8_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_8_de.png index e13695ee39..719642aef0 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:092c6b66d3a324f0f55c549b1a06859eeeea220db76f3f800dc2d1c7cde0d537 -size 67693 +oid sha256:f95786f80f13820a7c18c862f3c39b9440b0f6aa331ebe1d5e2d0680d9480e51 +size 67701 diff --git a/screenshots/de/libraries.textcomposer_TextComposerReply_Day_9_de.png b/screenshots/de/libraries.textcomposer_TextComposerReply_Day_9_de.png index cfffdc9727..3eb2fdf078 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:04e5fbe07c868e8032b734706244f5b24b91c070c0b04abfcd0e65f0599c22e5 -size 56780 +oid sha256:99da93bf92ead085e4ec77e1d10a8fb8fba6a892f4b880a3abfb09f775b98bee +size 56792 diff --git a/screenshots/de/libraries.textcomposer_TextComposerScaledDensityWithReply_de.png b/screenshots/de/libraries.textcomposer_TextComposerScaledDensityWithReply_de.png index b598ca869d..7b239395ed 100644 --- a/screenshots/de/libraries.textcomposer_TextComposerScaledDensityWithReply_de.png +++ b/screenshots/de/libraries.textcomposer_TextComposerScaledDensityWithReply_de.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0dc96d71b7356682ff66e6b0c2b4780a7c29df451c100391889e019490ccfcda -size 16822 +oid sha256:774293cf3af77c66fd7160bebb7bf8c30aa253b2a46db2a06f7853990b40a14f +size 16834 diff --git a/screenshots/de/libraries.textcomposer_TextComposerSimpleNotEncrypted_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerSimpleNotEncrypted_Day_0_de.png index 5264638d0c..ec08418a27 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:dfef826337bf428fb835513db14caa4d78056ced5fe44e2a4ea5905a9beabe10 -size 54880 +oid sha256:6a48df1229c65ee8be615e704be044b4d6d936f7eb899e5f9bcdf2fe8b99de02 +size 54885 diff --git a/screenshots/de/libraries.textcomposer_TextComposerSimple_Day_0_de.png b/screenshots/de/libraries.textcomposer_TextComposerSimple_Day_0_de.png index 84ff4beabf..493c8c0557 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:713ff7ecd0b47ccd2be58034e404b4e4a2ba02c51a0043d4de25f736ca8eb314 -size 43363 +oid sha256:b62e2825fde5d26b36f4acacb9ba1e4ac08e1022e78fa50b808583d2b1ebee0d +size 43375 diff --git a/screenshots/html/data.js b/screenshots/html/data.js index 8cf60a31ef..8c93c992bf 100644 --- a/screenshots/html/data.js +++ b/screenshots/html/data.js @@ -1,110 +1,110 @@ // Generated file, do not edit -export const buildDate = 1787667600; +export const buildDate = 1788342878; export const screenshots = [ ["en","en-dark","de",], -["features.messages.impl.timeline.components.event_ATimelineItemEventRow_Day_0_en","features.messages.impl.timeline.components.event_ATimelineItemEventRow_Night_0_en",20675,], -["features.preferences.impl.about_AboutView_Day_0_en","features.preferences.impl.about_AboutView_Night_0_en",20675,], +["features.messages.impl.timeline.components.event_ATimelineItemEventRow_Day_0_en","features.messages.impl.timeline.components.event_ATimelineItemEventRow_Night_0_en",20698,], +["features.preferences.impl.about_AboutView_Day_0_en","features.preferences.impl.about_AboutView_Night_0_en",20698,], ["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",20675,], -["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_2_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_2_en",20675,], -["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_3_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_3_en",20675,], -["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_4_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_4_en",20675,], -["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_5_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_5_en",20675,], -["features.logout.impl_AccountDeactivationView_Day_0_en","features.logout.impl_AccountDeactivationView_Night_0_en",20675,], -["features.logout.impl_AccountDeactivationView_Day_1_en","features.logout.impl_AccountDeactivationView_Night_1_en",20675,], -["features.logout.impl_AccountDeactivationView_Day_2_en","features.logout.impl_AccountDeactivationView_Night_2_en",20675,], -["features.logout.impl_AccountDeactivationView_Day_3_en","features.logout.impl_AccountDeactivationView_Night_3_en",20675,], -["features.logout.impl_AccountDeactivationView_Day_4_en","features.logout.impl_AccountDeactivationView_Night_4_en",20675,], -["features.login.impl.accountprovider_AccountProviderOtherView_Day_0_en","features.login.impl.accountprovider_AccountProviderOtherView_Night_0_en",20675,], +["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_1_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_1_en",20698,], +["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_2_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_2_en",20698,], +["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_3_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_3_en",20698,], +["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_4_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_4_en",20698,], +["features.invite.impl.acceptdecline_AcceptDeclineInviteView_Day_5_en","features.invite.impl.acceptdecline_AcceptDeclineInviteView_Night_5_en",20698,], +["features.logout.impl_AccountDeactivationView_Day_0_en","features.logout.impl_AccountDeactivationView_Night_0_en",20698,], +["features.logout.impl_AccountDeactivationView_Day_1_en","features.logout.impl_AccountDeactivationView_Night_1_en",20698,], +["features.logout.impl_AccountDeactivationView_Day_2_en","features.logout.impl_AccountDeactivationView_Night_2_en",20698,], +["features.logout.impl_AccountDeactivationView_Day_3_en","features.logout.impl_AccountDeactivationView_Night_3_en",20698,], +["features.logout.impl_AccountDeactivationView_Day_4_en","features.logout.impl_AccountDeactivationView_Night_4_en",20698,], ["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,], -["libraries.accountselect.impl_AccountSelectView_Day_0_en","libraries.accountselect.impl_AccountSelectView_Night_0_en",20675,], -["libraries.accountselect.impl_AccountSelectView_Day_1_en","libraries.accountselect.impl_AccountSelectView_Night_1_en",20675,], +["libraries.accountselect.impl_AccountSelectView_Day_0_en","libraries.accountselect.impl_AccountSelectView_Night_0_en",20698,], +["libraries.accountselect.impl_AccountSelectView_Day_1_en","libraries.accountselect.impl_AccountSelectView_Night_1_en",20698,], ["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",20675,], -["features.messages.impl.actionlist_ActionListViewContent_Day_11_en","features.messages.impl.actionlist_ActionListViewContent_Night_11_en",20675,], -["features.messages.impl.actionlist_ActionListViewContent_Day_12_en","features.messages.impl.actionlist_ActionListViewContent_Night_12_en",20675,], +["features.messages.impl.actionlist_ActionListViewContent_Day_10_en","features.messages.impl.actionlist_ActionListViewContent_Night_10_en",20698,], +["features.messages.impl.actionlist_ActionListViewContent_Day_11_en","features.messages.impl.actionlist_ActionListViewContent_Night_11_en",20698,], +["features.messages.impl.actionlist_ActionListViewContent_Day_12_en","features.messages.impl.actionlist_ActionListViewContent_Night_12_en",20698,], ["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",20675,], -["features.messages.impl.actionlist_ActionListViewContent_Day_3_en","features.messages.impl.actionlist_ActionListViewContent_Night_3_en",20675,], -["features.messages.impl.actionlist_ActionListViewContent_Day_4_en","features.messages.impl.actionlist_ActionListViewContent_Night_4_en",20675,], -["features.messages.impl.actionlist_ActionListViewContent_Day_5_en","features.messages.impl.actionlist_ActionListViewContent_Night_5_en",20675,], -["features.messages.impl.actionlist_ActionListViewContent_Day_6_en","features.messages.impl.actionlist_ActionListViewContent_Night_6_en",20675,], -["features.messages.impl.actionlist_ActionListViewContent_Day_7_en","features.messages.impl.actionlist_ActionListViewContent_Night_7_en",20675,], -["features.messages.impl.actionlist_ActionListViewContent_Day_8_en","features.messages.impl.actionlist_ActionListViewContent_Night_8_en",20675,], -["features.messages.impl.actionlist_ActionListViewContent_Day_9_en","features.messages.impl.actionlist_ActionListViewContent_Night_9_en",20675,], -["features.messages.impl.timeline.components_ActiveCallTimelineItemView_Day_0_en","features.messages.impl.timeline.components_ActiveCallTimelineItemView_Night_0_en",20675,], -["features.messages.impl.timeline.components_ActiveCallTimelineItemView_en","",20675,], -["features.createroom.impl.addpeople_AddPeopleView_Day_0_en","features.createroom.impl.addpeople_AddPeopleView_Night_0_en",20675,], -["features.createroom.impl.addpeople_AddPeopleView_Day_1_en","features.createroom.impl.addpeople_AddPeopleView_Night_1_en",20675,], -["features.createroom.impl.addpeople_AddPeopleView_Day_2_en","features.createroom.impl.addpeople_AddPeopleView_Night_2_en",20675,], -["features.createroom.impl.addpeople_AddPeopleView_Day_3_en","features.createroom.impl.addpeople_AddPeopleView_Night_3_en",20675,], -["features.space.impl.addroom_AddRoomToSpaceView_Day_0_en","features.space.impl.addroom_AddRoomToSpaceView_Night_0_en",20675,], -["features.space.impl.addroom_AddRoomToSpaceView_Day_1_en","features.space.impl.addroom_AddRoomToSpaceView_Night_1_en",20675,], -["features.space.impl.addroom_AddRoomToSpaceView_Day_2_en","features.space.impl.addroom_AddRoomToSpaceView_Night_2_en",20675,], -["features.space.impl.addroom_AddRoomToSpaceView_Day_3_en","features.space.impl.addroom_AddRoomToSpaceView_Night_3_en",20675,], -["features.space.impl.addroom_AddRoomToSpaceView_Day_4_en","features.space.impl.addroom_AddRoomToSpaceView_Night_4_en",20675,], -["features.space.impl.addroom_AddRoomToSpaceView_Day_5_en","features.space.impl.addroom_AddRoomToSpaceView_Night_5_en",20675,], -["features.space.impl.addroom_AddRoomToSpaceView_Day_6_en","features.space.impl.addroom_AddRoomToSpaceView_Night_6_en",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewBlack_0_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewBlack_1_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewBlack_2_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewBlack_3_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewBlack_4_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewBlack_5_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewBlack_6_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewBlack_7_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewBlack_8_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewDark_0_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewDark_1_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewDark_2_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewDark_3_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewDark_4_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewDark_5_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewDark_6_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewDark_7_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewDark_8_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewLight_0_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewLight_1_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewLight_2_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewLight_3_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewLight_4_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewLight_5_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewLight_6_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewLight_7_en","",20675,], -["features.preferences.impl.advanced_AdvancedSettingsViewLight_8_en","",20675,], -["libraries.designsystem.components.dialogs_AlertDialogContent_Dialogs_en","",20675,], -["libraries.designsystem.components.dialogs_AlertDialog_Day_0_en","libraries.designsystem.components.dialogs_AlertDialog_Night_0_en",20675,], +["features.messages.impl.actionlist_ActionListViewContent_Day_2_en","features.messages.impl.actionlist_ActionListViewContent_Night_2_en",20698,], +["features.messages.impl.actionlist_ActionListViewContent_Day_3_en","features.messages.impl.actionlist_ActionListViewContent_Night_3_en",20698,], +["features.messages.impl.actionlist_ActionListViewContent_Day_4_en","features.messages.impl.actionlist_ActionListViewContent_Night_4_en",20698,], +["features.messages.impl.actionlist_ActionListViewContent_Day_5_en","features.messages.impl.actionlist_ActionListViewContent_Night_5_en",20698,], +["features.messages.impl.actionlist_ActionListViewContent_Day_6_en","features.messages.impl.actionlist_ActionListViewContent_Night_6_en",20698,], +["features.messages.impl.actionlist_ActionListViewContent_Day_7_en","features.messages.impl.actionlist_ActionListViewContent_Night_7_en",20698,], +["features.messages.impl.actionlist_ActionListViewContent_Day_8_en","features.messages.impl.actionlist_ActionListViewContent_Night_8_en",20698,], +["features.messages.impl.actionlist_ActionListViewContent_Day_9_en","features.messages.impl.actionlist_ActionListViewContent_Night_9_en",20698,], +["features.messages.impl.timeline.components_ActiveCallTimelineItemView_Day_0_en","features.messages.impl.timeline.components_ActiveCallTimelineItemView_Night_0_en",20698,], +["features.messages.impl.timeline.components_ActiveCallTimelineItemView_en","",20698,], +["libraries.designsystem.text_AdaptativeTitle_Day_0_en","libraries.designsystem.text_AdaptativeTitle_Night_0_en",0,], +["features.createroom.impl.addpeople_AddPeopleView_Day_0_en","features.createroom.impl.addpeople_AddPeopleView_Night_0_en",20698,], +["features.createroom.impl.addpeople_AddPeopleView_Day_1_en","features.createroom.impl.addpeople_AddPeopleView_Night_1_en",20698,], +["features.createroom.impl.addpeople_AddPeopleView_Day_2_en","features.createroom.impl.addpeople_AddPeopleView_Night_2_en",20698,], +["features.createroom.impl.addpeople_AddPeopleView_Day_3_en","features.createroom.impl.addpeople_AddPeopleView_Night_3_en",20698,], +["features.space.impl.addroom_AddRoomToSpaceView_Day_0_en","features.space.impl.addroom_AddRoomToSpaceView_Night_0_en",20698,], +["features.space.impl.addroom_AddRoomToSpaceView_Day_1_en","features.space.impl.addroom_AddRoomToSpaceView_Night_1_en",20698,], +["features.space.impl.addroom_AddRoomToSpaceView_Day_2_en","features.space.impl.addroom_AddRoomToSpaceView_Night_2_en",20698,], +["features.space.impl.addroom_AddRoomToSpaceView_Day_3_en","features.space.impl.addroom_AddRoomToSpaceView_Night_3_en",20698,], +["features.space.impl.addroom_AddRoomToSpaceView_Day_4_en","features.space.impl.addroom_AddRoomToSpaceView_Night_4_en",20698,], +["features.space.impl.addroom_AddRoomToSpaceView_Day_5_en","features.space.impl.addroom_AddRoomToSpaceView_Night_5_en",20698,], +["features.space.impl.addroom_AddRoomToSpaceView_Day_6_en","features.space.impl.addroom_AddRoomToSpaceView_Night_6_en",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewBlack_0_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewBlack_1_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewBlack_2_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewBlack_3_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewBlack_4_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewBlack_5_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewBlack_6_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewBlack_7_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewBlack_8_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewDark_0_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewDark_1_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewDark_2_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewDark_3_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewDark_4_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewDark_5_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewDark_6_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewDark_7_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewDark_8_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewLight_0_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewLight_1_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewLight_2_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewLight_3_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewLight_4_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewLight_5_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewLight_6_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewLight_7_en","",20698,], +["features.preferences.impl.advanced_AdvancedSettingsViewLight_8_en","",20698,], +["libraries.designsystem.components.dialogs_AlertDialogContent_Dialogs_en","",20698,], +["libraries.designsystem.components.dialogs_AlertDialog_Day_0_en","libraries.designsystem.components.dialogs_AlertDialog_Night_0_en",20698,], ["libraries.designsystem.theme.components_AllIcons_Icons_en","",0,], -["features.analytics.impl_AnalyticsOptInView_Day_0_en","features.analytics.impl_AnalyticsOptInView_Night_0_en",20675,], -["features.analytics.impl_AnalyticsOptInView_Day_1_en","features.analytics.impl_AnalyticsOptInView_Night_1_en",20675,], -["features.analytics.api.preferences_AnalyticsPreferencesView_Day_0_en","features.analytics.api.preferences_AnalyticsPreferencesView_Night_0_en",20675,], -["features.analytics.api.preferences_AnalyticsPreferencesView_Day_1_en","features.analytics.api.preferences_AnalyticsPreferencesView_Night_1_en",20675,], -["features.preferences.impl.analytics_AnalyticsSettingsView_Day_0_en","features.preferences.impl.analytics_AnalyticsSettingsView_Night_0_en",20675,], +["features.analytics.impl_AnalyticsOptInView_Day_0_en","features.analytics.impl_AnalyticsOptInView_Night_0_en",20698,], +["features.analytics.impl_AnalyticsOptInView_Day_1_en","features.analytics.impl_AnalyticsOptInView_Night_1_en",20698,], +["features.analytics.api.preferences_AnalyticsPreferencesView_Day_0_en","features.analytics.api.preferences_AnalyticsPreferencesView_Night_0_en",20698,], +["features.analytics.api.preferences_AnalyticsPreferencesView_Day_1_en","features.analytics.api.preferences_AnalyticsPreferencesView_Night_1_en",20698,], +["features.preferences.impl.analytics_AnalyticsSettingsView_Day_0_en","features.preferences.impl.analytics_AnalyticsSettingsView_Night_0_en",20698,], ["libraries.designsystem.components_Announcement_Day_0_en","libraries.designsystem.components_Announcement_Night_0_en",0,], -["features.preferences.impl.developer.appsettings_AppDeveloperSettingsPage_Day_0_en","features.preferences.impl.developer.appsettings_AppDeveloperSettingsPage_Night_0_en",20675,], -["features.preferences.impl.developer.appsettings_AppDeveloperSettingsView_Day_0_en","features.preferences.impl.developer.appsettings_AppDeveloperSettingsView_Night_0_en",20675,], -["features.preferences.impl.developer.appsettings_AppDeveloperSettingsView_Day_1_en","features.preferences.impl.developer.appsettings_AppDeveloperSettingsView_Night_1_en",20675,], -["services.apperror.api_AppErrorView_Day_0_en","services.apperror.api_AppErrorView_Night_0_en",20675,], +["features.preferences.impl.developer.appsettings_AppDeveloperSettingsPage_Day_0_en","features.preferences.impl.developer.appsettings_AppDeveloperSettingsPage_Night_0_en",20698,], +["features.preferences.impl.developer.appsettings_AppDeveloperSettingsView_Day_0_en","features.preferences.impl.developer.appsettings_AppDeveloperSettingsView_Night_0_en",20698,], +["features.preferences.impl.developer.appsettings_AppDeveloperSettingsView_Day_1_en","features.preferences.impl.developer.appsettings_AppDeveloperSettingsView_Night_1_en",20698,], +["services.apperror.api_AppErrorView_Day_0_en","services.apperror.api_AppErrorView_Night_0_en",20698,], ["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",20675,], +["libraries.designsystem.components.async_AsyncActionView_Day_1_en","libraries.designsystem.components.async_AsyncActionView_Night_1_en",20698,], ["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",20675,], +["libraries.designsystem.components.async_AsyncActionView_Day_3_en","libraries.designsystem.components.async_AsyncActionView_Night_3_en",20698,], ["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",20675,], +["libraries.designsystem.components.async_AsyncFailure_Day_0_en","libraries.designsystem.components.async_AsyncFailure_Night_0_en",20698,], ["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.attachments.preview.imageeditor_AttachmentImageEditorView_0_en","",20675,], -["features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_1_en","",20675,], -["features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_2_en","",20675,], -["features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_3_en","",20675,], -["features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_4_en","",20675,], -["features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_5_en","",20675,], -["features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_6_en","",20675,], -["features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_7_en","",20675,], +["features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_0_en","",20698,], +["features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_1_en","",20698,], +["features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_2_en","",20698,], +["features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_3_en","",20698,], +["features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_4_en","",20698,], +["features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_5_en","",20698,], +["features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_6_en","",20698,], +["features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_7_en","",20698,], ["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,], @@ -114,22 +114,22 @@ 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.messagecomposer_AttachmentsBottomSheet_Day_0_en","features.messages.impl.messagecomposer_AttachmentsBottomSheet_Night_0_en",20675,], -["features.messages.impl.attachments.preview_AttachmentsPreviewGalleryView_en","",20675,], -["features.messages.impl.attachments.preview_AttachmentsPreviewView_0_en","",20675,], -["features.messages.impl.attachments.preview_AttachmentsPreviewView_1_en","",20675,], -["features.messages.impl.attachments.preview_AttachmentsPreviewView_2_en","",20675,], -["features.messages.impl.attachments.preview_AttachmentsPreviewView_3_en","",20675,], -["features.messages.impl.attachments.preview_AttachmentsPreviewView_4_en","",20675,], -["features.messages.impl.attachments.preview_AttachmentsPreviewView_5_en","",20675,], -["features.messages.impl.attachments.preview_AttachmentsPreviewView_6_en","",20675,], -["features.messages.impl.attachments.preview_AttachmentsPreviewView_7_en","",20675,], -["features.messages.impl.attachments.preview_AttachmentsPreviewView_8_en","",20675,], -["features.messages.impl.attachments.preview_AttachmentsPreviewView_9_en","",20675,], -["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",20675,], +["features.messages.impl.messagecomposer_AttachmentsBottomSheet_Day_0_en","features.messages.impl.messagecomposer_AttachmentsBottomSheet_Night_0_en",20698,], +["features.messages.impl.attachments.preview_AttachmentsPreviewGalleryView_en","",20698,], +["features.messages.impl.attachments.preview_AttachmentsPreviewView_0_en","",20698,], +["features.messages.impl.attachments.preview_AttachmentsPreviewView_1_en","",20698,], +["features.messages.impl.attachments.preview_AttachmentsPreviewView_2_en","",20698,], +["features.messages.impl.attachments.preview_AttachmentsPreviewView_3_en","",20698,], +["features.messages.impl.attachments.preview_AttachmentsPreviewView_4_en","",20698,], +["features.messages.impl.attachments.preview_AttachmentsPreviewView_5_en","",20698,], +["features.messages.impl.attachments.preview_AttachmentsPreviewView_6_en","",20698,], +["features.messages.impl.attachments.preview_AttachmentsPreviewView_7_en","",20698,], +["features.messages.impl.attachments.preview_AttachmentsPreviewView_8_en","",20698,], +["features.messages.impl.attachments.preview_AttachmentsPreviewView_9_en","",20698,], +["libraries.mediaviewer.impl.gallery.ui_AudioItemView_Day_0_en","libraries.mediaviewer.impl.gallery.ui_AudioItemView_Night_0_en",20698,], +["libraries.mediaviewer.impl.gallery.ui_AudioItemView_Day_1_en","libraries.mediaviewer.impl.gallery.ui_AudioItemView_Night_1_en",20698,], +["libraries.mediaviewer.impl.gallery.ui_AudioItemView_Day_2_en","libraries.mediaviewer.impl.gallery.ui_AudioItemView_Night_2_en",20698,], +["libraries.matrix.ui.components_AvatarActionBottomSheet_Day_0_en","libraries.matrix.ui.components_AvatarActionBottomSheet_Night_0_en",20698,], ["libraries.designsystem.components.avatar.internal_AvatarCluster_Avatars_en","",0,], ["libraries.matrix.ui.components_AvatarPickerSizes_Day_0_en","libraries.matrix.ui.components_AvatarPickerSizes_Night_0_en",0,], ["libraries.matrix.ui.components_AvatarPickerViewRtl_Day_0_en","libraries.matrix.ui.components_AvatarPickerViewRtl_Night_0_en",0,], @@ -159,22 +159,22 @@ export const screenshots = [ ["libraries.designsystem.modifiers_BackgroundVerticalGradientDisabled_Day_0_en","libraries.designsystem.modifiers_BackgroundVerticalGradientDisabled_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",20675,], +["features.home.impl.components_BatteryOptimizationBanner_Day_0_en","features.home.impl.components_BatteryOptimizationBanner_Night_0_en",20698,], ["libraries.designsystem.atomic.atoms_BetaLabel_Day_0_en","libraries.designsystem.atomic.atoms_BetaLabel_Night_0_en",0,], ["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",20675,], -["features.preferences.impl.blockedusers_BlockedUsersView_Day_1_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_1_en",20675,], -["features.preferences.impl.blockedusers_BlockedUsersView_Day_2_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_2_en",20675,], -["features.preferences.impl.blockedusers_BlockedUsersView_Day_3_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_3_en",20675,], -["features.preferences.impl.blockedusers_BlockedUsersView_Day_4_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_4_en",20675,], -["features.preferences.impl.blockedusers_BlockedUsersView_Day_5_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_5_en",20675,], -["features.preferences.impl.blockedusers_BlockedUsersView_Day_6_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_6_en",20675,], +["features.preferences.impl.blockedusers_BlockedUsersView_Day_0_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_0_en",20698,], +["features.preferences.impl.blockedusers_BlockedUsersView_Day_1_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_1_en",20698,], +["features.preferences.impl.blockedusers_BlockedUsersView_Day_2_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_2_en",20698,], +["features.preferences.impl.blockedusers_BlockedUsersView_Day_3_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_3_en",20698,], +["features.preferences.impl.blockedusers_BlockedUsersView_Day_4_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_4_en",20698,], +["features.preferences.impl.blockedusers_BlockedUsersView_Day_5_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_5_en",20698,], +["features.preferences.impl.blockedusers_BlockedUsersView_Day_6_en","features.preferences.impl.blockedusers_BlockedUsersView_Night_6_en",20698,], ["libraries.designsystem.theme.components_BottomSheetDragHandle_Day_0_en","libraries.designsystem.theme.components_BottomSheetDragHandle_Night_0_en",0,], -["features.rageshake.impl.bugreport_BugReportViewDay_0_en","",20675,], -["features.rageshake.impl.bugreport_BugReportViewDay_1_en","",20675,], -["features.rageshake.impl.bugreport_BugReportViewDay_2_en","",20675,], -["features.rageshake.impl.bugreport_BugReportViewDay_3_en","",20675,], -["features.rageshake.impl.bugreport_BugReportViewDay_4_en","",20675,], +["features.rageshake.impl.bugreport_BugReportViewDay_0_en","",20698,], +["features.rageshake.impl.bugreport_BugReportViewDay_1_en","",20698,], +["features.rageshake.impl.bugreport_BugReportViewDay_2_en","",20698,], +["features.rageshake.impl.bugreport_BugReportViewDay_3_en","",20698,], +["features.rageshake.impl.bugreport_BugReportViewDay_4_en","",20698,], ["features.rageshake.impl.bugreport_BugReportViewNight_0_en","",0,], ["features.rageshake.impl.bugreport_BugReportViewNight_1_en","",0,], ["features.rageshake.impl.bugreport_BugReportViewNight_2_en","",0,], @@ -185,142 +185,139 @@ export const screenshots = [ ["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",0,], -["features.messages.impl.timeline.components_CallMenuItem_Day_3_en","features.messages.impl.timeline.components_CallMenuItem_Night_3_en",20675,], -["features.messages.impl.timeline.components_CallMenuItem_Day_4_en","features.messages.impl.timeline.components_CallMenuItem_Night_4_en",20675,], +["features.messages.impl.timeline.components_CallMenuItem_Day_3_en","features.messages.impl.timeline.components_CallMenuItem_Night_3_en",20698,], +["features.messages.impl.timeline.components_CallMenuItem_Day_4_en","features.messages.impl.timeline.components_CallMenuItem_Night_4_en",20698,], ["features.messages.impl.timeline.components_CallMenuItem_Day_5_en","features.messages.impl.timeline.components_CallMenuItem_Night_5_en",0,], -["features.messages.impl.timeline.components_CallMenuItem_Day_6_en","features.messages.impl.timeline.components_CallMenuItem_Night_6_en",20675,], +["features.messages.impl.timeline.components_CallMenuItem_Day_6_en","features.messages.impl.timeline.components_CallMenuItem_Night_6_en",20698,], ["features.messages.impl.timeline.components_CallMenuItem_Day_7_en","features.messages.impl.timeline.components_CallMenuItem_Night_7_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",20675,], -["features.call.impl.ui_CallScreenView_Day_2_en","features.call.impl.ui_CallScreenView_Night_2_en",20675,], -["features.call.impl.ui_CallScreenView_Day_3_en","features.call.impl.ui_CallScreenView_Night_3_en",20675,], -["libraries.textcomposer_CaptionWarningBottomSheet_Day_0_en","libraries.textcomposer_CaptionWarningBottomSheet_Night_0_en",20675,], -["features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Day_0_en","features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Night_0_en",20675,], -["features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Day_1_en","features.login.impl.screens.changeaccountprovider_ChangeAccountProviderView_Night_1_en",20675,], -["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_0_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_0_en",20675,], -["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_10_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_10_en",20675,], -["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_11_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_11_en",20675,], -["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_12_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_12_en",20675,], -["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_13_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_13_en",20675,], -["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_1_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_1_en",20675,], -["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_2_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_2_en",20675,], -["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_3_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_3_en",20675,], -["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_4_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_4_en",20675,], +["features.call.impl.ui_CallScreenView_Day_1_en","features.call.impl.ui_CallScreenView_Night_1_en",20698,], +["features.call.impl.ui_CallScreenView_Day_2_en","features.call.impl.ui_CallScreenView_Night_2_en",20698,], +["features.call.impl.ui_CallScreenView_Day_3_en","features.call.impl.ui_CallScreenView_Night_3_en",20698,], +["libraries.textcomposer_CaptionWarningBottomSheet_Day_0_en","libraries.textcomposer_CaptionWarningBottomSheet_Night_0_en",20698,], +["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_0_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_0_en",20698,], +["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_10_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_10_en",20698,], +["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_11_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_11_en",20698,], +["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_12_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_12_en",20698,], +["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_13_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_13_en",20698,], +["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_1_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_1_en",20698,], +["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_2_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_2_en",20698,], +["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_3_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_3_en",20698,], +["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_4_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_4_en",20698,], ["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_5_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_5_en",0,], -["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_6_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_6_en",20675,], -["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_7_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_7_en",20675,], -["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_8_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_8_en",20675,], -["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_9_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_9_en",20675,], -["features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_0_en","features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Night_0_en",20675,], -["features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_1_en","features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Night_1_en",20675,], -["features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_2_en","features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Night_2_en",20675,], -["features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_3_en","features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Night_3_en",20675,], -["features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_4_en","features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Night_4_en",20675,], -["features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_5_en","features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Night_5_en",20675,], -["features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_6_en","features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Night_6_en",20675,], +["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_6_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_6_en",20698,], +["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_7_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_7_en",20698,], +["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_8_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_8_en",20698,], +["features.rolesandpermissions.impl.roles_ChangeRolesView_Day_9_en","features.rolesandpermissions.impl.roles_ChangeRolesView_Night_9_en",20698,], +["features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_0_en","features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Night_0_en",20698,], +["features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_1_en","features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Night_1_en",20698,], +["features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_2_en","features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Night_2_en",20698,], +["features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_3_en","features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Night_3_en",20698,], +["features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_4_en","features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Night_4_en",20698,], +["features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_5_en","features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Night_5_en",20698,], +["features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Day_6_en","features.rolesandpermissions.impl.permissions_ChangeRoomPermissionsView_Night_6_en",20698,], ["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",20675,], -["features.login.impl.changeserver_ChangeServerView_Day_2_en","features.login.impl.changeserver_ChangeServerView_Night_2_en",20675,], -["features.login.impl.changeserver_ChangeServerView_Day_3_en","features.login.impl.changeserver_ChangeServerView_Night_3_en",20675,], -["features.login.impl.changeserver_ChangeServerView_Day_4_en","features.login.impl.changeserver_ChangeServerView_Night_4_en",20675,], -["features.login.impl.changeserver_ChangeServerView_Day_5_en","features.login.impl.changeserver_ChangeServerView_Night_5_en",20675,], -["features.login.impl.changeserver_ChangeServerView_Day_6_en","features.login.impl.changeserver_ChangeServerView_Night_6_en",20675,], +["features.login.impl.changeserver_ChangeServerView_Day_1_en","features.login.impl.changeserver_ChangeServerView_Night_1_en",20698,], +["features.login.impl.changeserver_ChangeServerView_Day_2_en","features.login.impl.changeserver_ChangeServerView_Night_2_en",20698,], +["features.login.impl.changeserver_ChangeServerView_Day_3_en","features.login.impl.changeserver_ChangeServerView_Night_3_en",20698,], +["features.login.impl.changeserver_ChangeServerView_Day_4_en","features.login.impl.changeserver_ChangeServerView_Night_4_en",20698,], +["features.login.impl.changeserver_ChangeServerView_Day_5_en","features.login.impl.changeserver_ChangeServerView_Night_5_en",20698,], +["features.login.impl.changeserver_ChangeServerView_Day_6_en","features.login.impl.changeserver_ChangeServerView_Night_6_en",20698,], ["libraries.matrix.ui.components_CheckableResolvedUserRow_en","",0,], -["libraries.matrix.ui.components_CheckableUnresolvedUserRow_en","",20675,], +["libraries.matrix.ui.components_CheckableUnresolvedUserRow_en","",20698,], ["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",20675,], -["features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Day_1_en","features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Night_1_en",20675,], -["features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Day_2_en","features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Night_2_en",20675,], -["features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_0_en","features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Night_0_en",20675,], -["features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_1_en","features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Night_1_en",20675,], -["features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_2_en","features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Night_2_en",20675,], -["features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_3_en","features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Night_3_en",20675,], -["features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_4_en","features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Night_4_en",20675,], +["features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Day_0_en","features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Night_0_en",20698,], +["features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Day_1_en","features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Night_1_en",20698,], +["features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Day_2_en","features.login.impl.screens.chooseaccountprovider_ChooseAccountProviderView_Night_2_en",20698,], +["features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_0_en","features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Night_0_en",20698,], +["features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_1_en","features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Night_1_en",20698,], +["features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_2_en","features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Night_2_en",20698,], +["features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_3_en","features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Night_3_en",20698,], +["features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Day_4_en","features.ftue.impl.sessionverification.choosemode_ChooseSelfVerificationModeView_Night_4_en",20698,], ["libraries.designsystem.theme.components_CircularProgressIndicator_Progress_Indicators_en","",0,], ["libraries.designsystem.components_ClickableLinkText_Text_en","",0,], -["features.linknewdevice.impl.screens.confirmation_CodeConfirmationView_Day_0_en","features.linknewdevice.impl.screens.confirmation_CodeConfirmationView_Night_0_en",20675,], +["features.linknewdevice.impl.screens.confirmation_CodeConfirmationView_Day_0_en","features.linknewdevice.impl.screens.confirmation_CodeConfirmationView_Night_0_en",20698,], ["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",20675,], -["libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Day_1_en","libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Night_1_en",20675,], -["libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Day_2_en","libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Night_2_en",20675,], -["libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Day_3_en","libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Night_3_en",20675,], -["libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Day_4_en","libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Night_4_en",20675,], -["libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Day_5_en","libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Night_5_en",20675,], -["libraries.textcomposer_ComposerModeView_Day_0_en","libraries.textcomposer_ComposerModeView_Night_0_en",20675,], +["libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Day_0_en","libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Night_0_en",20698,], +["libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Day_1_en","libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Night_1_en",20698,], +["libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Day_2_en","libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Night_2_en",20698,], +["libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Day_3_en","libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Night_3_en",20698,], +["libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Day_4_en","libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Night_4_en",20698,], +["libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Day_5_en","libraries.designsystem.atomic.molecules_ComposerAlertMolecule_Night_5_en",20698,], +["libraries.textcomposer_ComposerModeView_Day_0_en","libraries.textcomposer_ComposerModeView_Night_0_en",20698,], ["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","",20675,], -["features.createroom.impl.configureroom_ConfigureRoomViewDark_1_en","",20675,], -["features.createroom.impl.configureroom_ConfigureRoomViewDark_2_en","",20675,], -["features.createroom.impl.configureroom_ConfigureRoomViewDark_3_en","",20675,], -["features.createroom.impl.configureroom_ConfigureRoomViewDark_4_en","",20675,], -["features.createroom.impl.configureroom_ConfigureRoomViewDark_5_en","",20675,], -["features.createroom.impl.configureroom_ConfigureRoomViewDark_6_en","",20675,], -["features.createroom.impl.configureroom_ConfigureRoomViewDark_7_en","",20675,], -["features.createroom.impl.configureroom_ConfigureRoomViewDark_8_en","",20675,], -["features.createroom.impl.configureroom_ConfigureRoomViewLight_0_en","",20675,], -["features.createroom.impl.configureroom_ConfigureRoomViewLight_1_en","",20675,], -["features.createroom.impl.configureroom_ConfigureRoomViewLight_2_en","",20675,], -["features.createroom.impl.configureroom_ConfigureRoomViewLight_3_en","",20675,], -["features.createroom.impl.configureroom_ConfigureRoomViewLight_4_en","",20675,], -["features.createroom.impl.configureroom_ConfigureRoomViewLight_5_en","",20675,], -["features.createroom.impl.configureroom_ConfigureRoomViewLight_6_en","",20675,], -["features.createroom.impl.configureroom_ConfigureRoomViewLight_7_en","",20675,], -["features.createroom.impl.configureroom_ConfigureRoomViewLight_8_en","",20675,], -["features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_0_en","features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Night_0_en",20675,], -["features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_1_en","features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Night_1_en",20675,], -["features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_2_en","features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Night_2_en",20675,], -["features.home.impl.components_ConfirmRecoveryKeyBanner_Day_0_en","features.home.impl.components_ConfirmRecoveryKeyBanner_Night_0_en",20675,], +["features.createroom.impl.configureroom_ConfigureRoomViewDark_0_en","",20698,], +["features.createroom.impl.configureroom_ConfigureRoomViewDark_1_en","",20698,], +["features.createroom.impl.configureroom_ConfigureRoomViewDark_2_en","",20698,], +["features.createroom.impl.configureroom_ConfigureRoomViewDark_3_en","",20698,], +["features.createroom.impl.configureroom_ConfigureRoomViewDark_4_en","",20698,], +["features.createroom.impl.configureroom_ConfigureRoomViewDark_5_en","",20698,], +["features.createroom.impl.configureroom_ConfigureRoomViewDark_6_en","",20698,], +["features.createroom.impl.configureroom_ConfigureRoomViewDark_7_en","",20698,], +["features.createroom.impl.configureroom_ConfigureRoomViewDark_8_en","",20698,], +["features.createroom.impl.configureroom_ConfigureRoomViewLight_0_en","",20698,], +["features.createroom.impl.configureroom_ConfigureRoomViewLight_1_en","",20698,], +["features.createroom.impl.configureroom_ConfigureRoomViewLight_2_en","",20698,], +["features.createroom.impl.configureroom_ConfigureRoomViewLight_3_en","",20698,], +["features.createroom.impl.configureroom_ConfigureRoomViewLight_4_en","",20698,], +["features.createroom.impl.configureroom_ConfigureRoomViewLight_5_en","",20698,], +["features.createroom.impl.configureroom_ConfigureRoomViewLight_6_en","",20698,], +["features.createroom.impl.configureroom_ConfigureRoomViewLight_7_en","",20698,], +["features.createroom.impl.configureroom_ConfigureRoomViewLight_8_en","",20698,], +["features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_0_en","features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Night_0_en",20698,], +["features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_1_en","features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Night_1_en",20698,], +["features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_2_en","features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Night_2_en",20698,], +["features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_3_en","features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Night_3_en",20698,], +["features.home.impl.components_ConfirmRecoveryKeyBanner_Day_0_en","features.home.impl.components_ConfirmRecoveryKeyBanner_Night_0_en",20698,], ["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_ConnectivityIndicator_Day_0_en","features.networkmonitor.api.ui_ConnectivityIndicator_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",20675,], -["features.login.impl.screens.createaccount_CreateAccountView_Day_0_en","features.login.impl.screens.createaccount_CreateAccountView_Night_0_en",20675,], -["features.login.impl.screens.createaccount_CreateAccountView_Day_1_en","features.login.impl.screens.createaccount_CreateAccountView_Night_1_en",20675,], -["features.login.impl.screens.createaccount_CreateAccountView_Day_2_en","features.login.impl.screens.createaccount_CreateAccountView_Night_2_en",20675,], -["features.login.impl.screens.createaccount_CreateAccountView_Day_3_en","features.login.impl.screens.createaccount_CreateAccountView_Night_3_en",20675,], -["libraries.matrix.ui.components_CreateDmConfirmationBottomSheet_Day_0_en","libraries.matrix.ui.components_CreateDmConfirmationBottomSheet_Night_0_en",20675,], -["libraries.matrix.ui.components_CreateDmConfirmationBottomSheet_Day_1_en","libraries.matrix.ui.components_CreateDmConfirmationBottomSheet_Night_1_en",20675,], -["features.poll.impl.create_CreatePollView_Day_0_en","features.poll.impl.create_CreatePollView_Night_0_en",20675,], -["features.poll.impl.create_CreatePollView_Day_1_en","features.poll.impl.create_CreatePollView_Night_1_en",20675,], -["features.poll.impl.create_CreatePollView_Day_2_en","features.poll.impl.create_CreatePollView_Night_2_en",20675,], -["features.poll.impl.create_CreatePollView_Day_3_en","features.poll.impl.create_CreatePollView_Night_3_en",20675,], -["features.poll.impl.create_CreatePollView_Day_4_en","features.poll.impl.create_CreatePollView_Night_4_en",20675,], -["features.poll.impl.create_CreatePollView_Day_5_en","features.poll.impl.create_CreatePollView_Night_5_en",20675,], -["features.poll.impl.create_CreatePollView_Day_6_en","features.poll.impl.create_CreatePollView_Night_6_en",20675,], -["features.poll.impl.create_CreatePollView_Day_7_en","features.poll.impl.create_CreatePollView_Night_7_en",20675,], -["libraries.dateformatter.impl.previews_DateFormatterModeView_0_en","",20675,], -["libraries.dateformatter.impl.previews_DateFormatterModeView_1_en","",20675,], -["libraries.dateformatter.impl.previews_DateFormatterModeView_2_en","",20675,], -["libraries.dateformatter.impl.previews_DateFormatterModeView_3_en","",20675,], -["libraries.dateformatter.impl.previews_DateFormatterModeView_4_en","",20675,], +["features.rageshake.api.crash_CrashDetectionView_Day_0_en","features.rageshake.api.crash_CrashDetectionView_Night_0_en",20698,], +["libraries.matrix.ui.components_CreateDmConfirmationBottomSheet_Day_0_en","libraries.matrix.ui.components_CreateDmConfirmationBottomSheet_Night_0_en",20698,], +["libraries.matrix.ui.components_CreateDmConfirmationBottomSheet_Day_1_en","libraries.matrix.ui.components_CreateDmConfirmationBottomSheet_Night_1_en",20698,], +["features.poll.impl.create_CreatePollView_Day_0_en","features.poll.impl.create_CreatePollView_Night_0_en",20698,], +["features.poll.impl.create_CreatePollView_Day_1_en","features.poll.impl.create_CreatePollView_Night_1_en",20698,], +["features.poll.impl.create_CreatePollView_Day_2_en","features.poll.impl.create_CreatePollView_Night_2_en",20698,], +["features.poll.impl.create_CreatePollView_Day_3_en","features.poll.impl.create_CreatePollView_Night_3_en",20698,], +["features.poll.impl.create_CreatePollView_Day_4_en","features.poll.impl.create_CreatePollView_Night_4_en",20698,], +["features.poll.impl.create_CreatePollView_Day_5_en","features.poll.impl.create_CreatePollView_Night_5_en",20698,], +["features.poll.impl.create_CreatePollView_Day_6_en","features.poll.impl.create_CreatePollView_Night_6_en",20698,], +["features.poll.impl.create_CreatePollView_Day_7_en","features.poll.impl.create_CreatePollView_Night_7_en",20698,], +["features.poll.impl.create_CreatePollView_Day_8_en","features.poll.impl.create_CreatePollView_Night_8_en",20698,], +["libraries.dateformatter.impl.previews_DateFormatterModeView_0_en","",20698,], +["libraries.dateformatter.impl.previews_DateFormatterModeView_1_en","",20698,], +["libraries.dateformatter.impl.previews_DateFormatterModeView_2_en","",20698,], +["libraries.dateformatter.impl.previews_DateFormatterModeView_3_en","",20698,], +["libraries.dateformatter.impl.previews_DateFormatterModeView_4_en","",20698,], ["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","",20675,], -["libraries.designsystem.theme.components.previews_DatePickerLight_DateTime_pickers_en","",20675,], -["features.invite.impl.declineandblock_DeclineAndBlockView_Day_0_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_0_en",20675,], -["features.invite.impl.declineandblock_DeclineAndBlockView_Day_1_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_1_en",20675,], -["features.invite.impl.declineandblock_DeclineAndBlockView_Day_2_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_2_en",20675,], -["features.invite.impl.declineandblock_DeclineAndBlockView_Day_3_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_3_en",20675,], -["features.invite.impl.declineandblock_DeclineAndBlockView_Day_4_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_4_en",20675,], +["libraries.designsystem.theme.components.previews_DatePickerDark_DateTime_pickers_en","",20698,], +["libraries.designsystem.theme.components.previews_DatePickerLight_DateTime_pickers_en","",20698,], +["features.invite.impl.declineandblock_DeclineAndBlockView_Day_0_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_0_en",20698,], +["features.invite.impl.declineandblock_DeclineAndBlockView_Day_1_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_1_en",20698,], +["features.invite.impl.declineandblock_DeclineAndBlockView_Day_2_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_2_en",20698,], +["features.invite.impl.declineandblock_DeclineAndBlockView_Day_3_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_3_en",20698,], +["features.invite.impl.declineandblock_DeclineAndBlockView_Day_4_en","features.invite.impl.declineandblock_DeclineAndBlockView_Night_4_en",20698,], ["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",20675,], -["features.logout.impl.direct_DefaultDirectLogoutView_Day_2_en","features.logout.impl.direct_DefaultDirectLogoutView_Night_2_en",20675,], -["features.logout.impl.direct_DefaultDirectLogoutView_Day_3_en","features.logout.impl.direct_DefaultDirectLogoutView_Night_3_en",20675,], +["features.logout.impl.direct_DefaultDirectLogoutView_Day_1_en","features.logout.impl.direct_DefaultDirectLogoutView_Night_1_en",20698,], +["features.logout.impl.direct_DefaultDirectLogoutView_Day_2_en","features.logout.impl.direct_DefaultDirectLogoutView_Night_2_en",20698,], +["features.logout.impl.direct_DefaultDirectLogoutView_Day_3_en","features.logout.impl.direct_DefaultDirectLogoutView_Night_3_en",20698,], ["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",20675,], +["features.preferences.impl.notifications.edit_DefaultNotificationSettingOption_Day_0_en","features.preferences.impl.notifications.edit_DefaultNotificationSettingOption_Night_0_en",20698,], ["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",20675,], -["features.licenses.impl.list_DependencyLicensesListView_Day_1_en","features.licenses.impl.list_DependencyLicensesListView_Night_1_en",20675,], -["features.licenses.impl.list_DependencyLicensesListView_Day_2_en","features.licenses.impl.list_DependencyLicensesListView_Night_2_en",20675,], -["features.licenses.impl.list_DependencyLicensesListView_Day_3_en","features.licenses.impl.list_DependencyLicensesListView_Night_3_en",20675,], -["features.linknewdevice.impl.screens.desktop_DesktopNoticeView_Day_0_en","features.linknewdevice.impl.screens.desktop_DesktopNoticeView_Night_0_en",20675,], -["features.linknewdevice.impl.screens.desktop_DesktopNoticeView_Day_1_en","features.linknewdevice.impl.screens.desktop_DesktopNoticeView_Night_1_en",20675,], -["features.preferences.impl.developer_DeveloperSettingsView_Day_0_en","features.preferences.impl.developer_DeveloperSettingsView_Night_0_en",20675,], -["features.preferences.impl.developer_DeveloperSettingsView_Day_1_en","features.preferences.impl.developer_DeveloperSettingsView_Night_1_en",20675,], -["features.preferences.impl.developer_DeveloperSettingsView_Day_2_en","features.preferences.impl.developer_DeveloperSettingsView_Night_2_en",20675,], +["features.licenses.impl.list_DependencyLicensesListView_Day_0_en","features.licenses.impl.list_DependencyLicensesListView_Night_0_en",20698,], +["features.licenses.impl.list_DependencyLicensesListView_Day_1_en","features.licenses.impl.list_DependencyLicensesListView_Night_1_en",20698,], +["features.licenses.impl.list_DependencyLicensesListView_Day_2_en","features.licenses.impl.list_DependencyLicensesListView_Night_2_en",20698,], +["features.licenses.impl.list_DependencyLicensesListView_Day_3_en","features.licenses.impl.list_DependencyLicensesListView_Night_3_en",20698,], +["features.linknewdevice.impl.screens.desktop_DesktopNoticeView_Day_0_en","features.linknewdevice.impl.screens.desktop_DesktopNoticeView_Night_0_en",20698,], +["features.linknewdevice.impl.screens.desktop_DesktopNoticeView_Day_1_en","features.linknewdevice.impl.screens.desktop_DesktopNoticeView_Night_1_en",20698,], +["features.preferences.impl.developer_DeveloperSettingsView_Day_0_en","features.preferences.impl.developer_DeveloperSettingsView_Night_0_en",20698,], +["features.preferences.impl.developer_DeveloperSettingsView_Day_1_en","features.preferences.impl.developer_DeveloperSettingsView_Night_1_en",20698,], +["features.preferences.impl.developer_DeveloperSettingsView_Day_2_en","features.preferences.impl.developer_DeveloperSettingsView_Night_2_en",20698,], +["features.preferences.impl.developer_DeveloperSettingsView_Day_3_en","features.preferences.impl.developer_DeveloperSettingsView_Night_3_en",20698,], ["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,], @@ -333,20 +330,20 @@ 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",20675,], -["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_1_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_1_en",20675,], -["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_2_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_2_en",20675,], -["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_3_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_3_en",20675,], -["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_4_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_4_en",20675,], -["features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Day_0_en","features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Night_0_en",20675,], -["features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Day_1_en","features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Night_1_en",20675,], -["features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Day_2_en","features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Night_2_en",20675,], -["features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Day_3_en","features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Night_3_en",20675,], -["features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Day_4_en","features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Night_4_en",20675,], -["features.preferences.impl.user.editprofile_EditUserProfileView_Day_0_en","features.preferences.impl.user.editprofile_EditUserProfileView_Night_0_en",20675,], -["features.preferences.impl.user.editprofile_EditUserProfileView_Day_1_en","features.preferences.impl.user.editprofile_EditUserProfileView_Night_1_en",20675,], -["features.preferences.impl.user.editprofile_EditUserProfileView_Day_2_en","features.preferences.impl.user.editprofile_EditUserProfileView_Night_2_en",20675,], -["features.preferences.impl.user.editprofile_EditUserProfileView_Day_3_en","features.preferences.impl.user.editprofile_EditUserProfileView_Night_3_en",20675,], +["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_0_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_0_en",20698,], +["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_1_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_1_en",20698,], +["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_2_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_2_en",20698,], +["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_3_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_3_en",20698,], +["features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_4_en","features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_4_en",20698,], +["features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Day_0_en","features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Night_0_en",20698,], +["features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Day_1_en","features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Night_1_en",20698,], +["features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Day_2_en","features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Night_2_en",20698,], +["features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Day_3_en","features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Night_3_en",20698,], +["features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Day_4_en","features.securityandprivacy.impl.editroomaddress_EditRoomAddressView_Night_4_en",20698,], +["features.preferences.impl.user.editprofile_EditUserProfileView_Day_0_en","features.preferences.impl.user.editprofile_EditUserProfileView_Night_0_en",20698,], +["features.preferences.impl.user.editprofile_EditUserProfileView_Day_1_en","features.preferences.impl.user.editprofile_EditUserProfileView_Night_1_en",20698,], +["features.preferences.impl.user.editprofile_EditUserProfileView_Day_2_en","features.preferences.impl.user.editprofile_EditUserProfileView_Night_2_en",20698,], +["features.preferences.impl.user.editprofile_EditUserProfileView_Day_3_en","features.preferences.impl.user.editprofile_EditUserProfileView_Night_3_en",20698,], ["libraries.matrix.ui.components_EditableOrgAvatarRtl_Day_0_en","libraries.matrix.ui.components_EditableOrgAvatarRtl_Night_0_en",0,], ["libraries.matrix.ui.components_EditableOrgAvatar_Day_0_en","libraries.matrix.ui.components_EditableOrgAvatar_Night_0_en",0,], ["libraries.designsystem.atomic.atoms_ElementLogoAtomLargeNoBlurShadow_Day_0_en","libraries.designsystem.atomic.atoms_ElementLogoAtomLargeNoBlurShadow_Night_0_en",0,], @@ -355,35 +352,38 @@ export const screenshots = [ ["libraries.designsystem.atomic.atoms_ElementLogoAtomMedium_Day_0_en","libraries.designsystem.atomic.atoms_ElementLogoAtomMedium_Night_0_en",0,], ["libraries.emoji.impl.picker_EmojiItemWithPopup_Day_0_en","libraries.emoji.impl.picker_EmojiItemWithPopup_Night_0_en",0,], ["libraries.emoji.impl.picker_EmojiItem_Day_0_en","libraries.emoji.impl.picker_EmojiItem_Night_0_en",0,], -["libraries.emoji.impl.picker_EmojiPickerView_Day_0_en","libraries.emoji.impl.picker_EmojiPickerView_Night_0_en",20675,], -["libraries.emoji.impl.picker_EmojiPickerView_Day_1_en","libraries.emoji.impl.picker_EmojiPickerView_Night_1_en",20675,], +["libraries.emoji.impl.picker_EmojiPickerView_Day_0_en","libraries.emoji.impl.picker_EmojiPickerView_Night_0_en",20698,], +["libraries.emoji.impl.picker_EmojiPickerView_Day_1_en","libraries.emoji.impl.picker_EmojiPickerView_Night_1_en",20698,], ["libraries.emoji.impl.picker_EmojiPickerView_Day_2_en","libraries.emoji.impl.picker_EmojiPickerView_Night_2_en",0,], ["libraries.emoji.impl.picker_EmojiPickerView_Day_3_en","libraries.emoji.impl.picker_EmojiPickerView_Night_3_en",0,], ["libraries.ui.common.nodes_EmptyView_Day_0_en","libraries.ui.common.nodes_EmptyView_Night_0_en",0,], -["features.linknewdevice.impl.screens.number_EnterNumberView_Day_0_en","features.linknewdevice.impl.screens.number_EnterNumberView_Night_0_en",20675,], -["features.linknewdevice.impl.screens.number_EnterNumberView_Day_1_en","features.linknewdevice.impl.screens.number_EnterNumberView_Night_1_en",20675,], -["features.linknewdevice.impl.screens.number_EnterNumberView_Day_2_en","features.linknewdevice.impl.screens.number_EnterNumberView_Night_2_en",20675,], -["features.linknewdevice.impl.screens.number_EnterNumberView_Day_3_en","features.linknewdevice.impl.screens.number_EnterNumberView_Night_3_en",20675,], -["features.linknewdevice.impl.screens.number_EnterNumberView_Day_4_en","features.linknewdevice.impl.screens.number_EnterNumberView_Night_4_en",20675,], -["features.linknewdevice.impl.screens.number_EnterNumberView_Day_5_en","features.linknewdevice.impl.screens.number_EnterNumberView_Night_5_en",20675,], -["libraries.designsystem.components.dialogs_ErrorDialogContent_Dialogs_en","",20675,], -["libraries.designsystem.components.dialogs_ErrorDialogWithDoNotShowAgain_Day_0_en","libraries.designsystem.components.dialogs_ErrorDialogWithDoNotShowAgain_Night_0_en",20675,], -["libraries.designsystem.components.dialogs_ErrorDialog_Day_0_en","libraries.designsystem.components.dialogs_ErrorDialog_Night_0_en",20675,], -["features.linknewdevice.impl.screens.error_ErrorView_Day_0_en","features.linknewdevice.impl.screens.error_ErrorView_Night_0_en",20675,], -["features.linknewdevice.impl.screens.error_ErrorView_Day_1_en","features.linknewdevice.impl.screens.error_ErrorView_Night_1_en",20675,], -["features.linknewdevice.impl.screens.error_ErrorView_Day_2_en","features.linknewdevice.impl.screens.error_ErrorView_Night_2_en",20675,], -["features.linknewdevice.impl.screens.error_ErrorView_Day_3_en","features.linknewdevice.impl.screens.error_ErrorView_Night_3_en",20675,], -["features.linknewdevice.impl.screens.error_ErrorView_Day_4_en","features.linknewdevice.impl.screens.error_ErrorView_Night_4_en",20675,], -["features.linknewdevice.impl.screens.error_ErrorView_Day_5_en","features.linknewdevice.impl.screens.error_ErrorView_Night_5_en",20675,], -["features.linknewdevice.impl.screens.error_ErrorView_Day_6_en","features.linknewdevice.impl.screens.error_ErrorView_Night_6_en",20675,], -["features.linknewdevice.impl.screens.error_ErrorView_Day_7_en","features.linknewdevice.impl.screens.error_ErrorView_Night_7_en",20675,], -["features.linknewdevice.impl.screens.error_ErrorView_Day_8_en","features.linknewdevice.impl.screens.error_ErrorView_Night_8_en",20675,], +["features.linknewdevice.impl.screens.number_EnterNumberView_Day_0_en","features.linknewdevice.impl.screens.number_EnterNumberView_Night_0_en",20698,], +["features.linknewdevice.impl.screens.number_EnterNumberView_Day_1_en","features.linknewdevice.impl.screens.number_EnterNumberView_Night_1_en",20698,], +["features.linknewdevice.impl.screens.number_EnterNumberView_Day_2_en","features.linknewdevice.impl.screens.number_EnterNumberView_Night_2_en",20698,], +["features.linknewdevice.impl.screens.number_EnterNumberView_Day_3_en","features.linknewdevice.impl.screens.number_EnterNumberView_Night_3_en",20698,], +["features.linknewdevice.impl.screens.number_EnterNumberView_Day_4_en","features.linknewdevice.impl.screens.number_EnterNumberView_Night_4_en",20698,], +["features.linknewdevice.impl.screens.number_EnterNumberView_Day_5_en","features.linknewdevice.impl.screens.number_EnterNumberView_Night_5_en",20698,], +["libraries.designsystem.components.dialogs_ErrorDialogContent_Dialogs_en","",20698,], +["libraries.designsystem.components.dialogs_ErrorDialogWithDoNotShowAgain_Day_0_en","libraries.designsystem.components.dialogs_ErrorDialogWithDoNotShowAgain_Night_0_en",20698,], +["libraries.designsystem.components.dialogs_ErrorDialog_Day_0_en","libraries.designsystem.components.dialogs_ErrorDialog_Night_0_en",20698,], +["features.linknewdevice.impl.screens.error_ErrorView_Day_0_en","features.linknewdevice.impl.screens.error_ErrorView_Night_0_en",20698,], +["features.linknewdevice.impl.screens.error_ErrorView_Day_1_en","features.linknewdevice.impl.screens.error_ErrorView_Night_1_en",20698,], +["features.linknewdevice.impl.screens.error_ErrorView_Day_2_en","features.linknewdevice.impl.screens.error_ErrorView_Night_2_en",20698,], +["features.linknewdevice.impl.screens.error_ErrorView_Day_3_en","features.linknewdevice.impl.screens.error_ErrorView_Night_3_en",20698,], +["features.linknewdevice.impl.screens.error_ErrorView_Day_4_en","features.linknewdevice.impl.screens.error_ErrorView_Night_4_en",20698,], +["features.linknewdevice.impl.screens.error_ErrorView_Day_5_en","features.linknewdevice.impl.screens.error_ErrorView_Night_5_en",20698,], +["features.linknewdevice.impl.screens.error_ErrorView_Day_6_en","features.linknewdevice.impl.screens.error_ErrorView_Night_6_en",20698,], +["features.linknewdevice.impl.screens.error_ErrorView_Day_7_en","features.linknewdevice.impl.screens.error_ErrorView_Night_7_en",20698,], +["features.linknewdevice.impl.screens.error_ErrorView_Day_8_en","features.linknewdevice.impl.screens.error_ErrorView_Night_8_en",20698,], ["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,], -["libraries.mediaviewer.impl.gallery.ui_FileItemView_Day_0_en","libraries.mediaviewer.impl.gallery.ui_FileItemView_Night_0_en",0,], -["libraries.mediaviewer.impl.gallery.ui_FileItemView_Day_1_en","libraries.mediaviewer.impl.gallery.ui_FileItemView_Night_1_en",0,], -["libraries.mediaviewer.impl.gallery.ui_FileItemView_Day_2_en","libraries.mediaviewer.impl.gallery.ui_FileItemView_Night_2_en",0,], +["libraries.mediaviewer.impl.gallery.ui_FileItemView_Day_0_en","libraries.mediaviewer.impl.gallery.ui_FileItemView_Night_0_en",20698,], +["libraries.mediaviewer.impl.gallery.ui_FileItemView_Day_1_en","libraries.mediaviewer.impl.gallery.ui_FileItemView_Night_1_en",20698,], +["libraries.mediaviewer.impl.gallery.ui_FileItemView_Day_2_en","libraries.mediaviewer.impl.gallery.ui_FileItemView_Night_2_en",20698,], +["libraries.mediaviewer.impl.fileviewer_FileViewerView_Day_0_en","libraries.mediaviewer.impl.fileviewer_FileViewerView_Night_0_en",0,], +["libraries.mediaviewer.impl.fileviewer_FileViewerView_Day_1_en","libraries.mediaviewer.impl.fileviewer_FileViewerView_Night_1_en",0,], +["libraries.mediaviewer.impl.fileviewer_FileViewerView_Day_2_en","libraries.mediaviewer.impl.fileviewer_FileViewerView_Night_2_en",0,], ["libraries.designsystem.theme.components_FilledButtonLargeLowPadding_Buttons_en","",0,], ["libraries.designsystem.theme.components_FilledButtonLarge_Buttons_en","",0,], ["libraries.designsystem.theme.components_FilledButtonMediumLowPadding_Buttons_en","",0,], @@ -397,52 +397,59 @@ export const screenshots = [ ["features.messages.impl.timeline.components_FloatingDateBadge_Day_0_en","features.messages.impl.timeline.components_FloatingDateBadge_Night_0_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",20675,], -["features.messages.impl.timeline.focus_FocusRequestStateView_Day_2_en","features.messages.impl.timeline.focus_FocusRequestStateView_Night_2_en",20675,], -["features.messages.impl.timeline.focus_FocusRequestStateView_Day_3_en","features.messages.impl.timeline.focus_FocusRequestStateView_Night_3_en",20675,], +["features.messages.impl.timeline.focus_FocusRequestStateView_Day_1_en","features.messages.impl.timeline.focus_FocusRequestStateView_Night_1_en",20698,], +["features.messages.impl.timeline.focus_FocusRequestStateView_Day_2_en","features.messages.impl.timeline.focus_FocusRequestStateView_Night_2_en",20698,], +["features.messages.impl.timeline.focus_FocusRequestStateView_Day_3_en","features.messages.impl.timeline.focus_FocusRequestStateView_Night_3_en",20698,], ["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.forward.impl_ForwardMessagesView_Day_0_en","features.forward.impl_ForwardMessagesView_Night_0_en",0,], ["features.forward.impl_ForwardMessagesView_Day_1_en","features.forward.impl_ForwardMessagesView_Night_1_en",0,], ["features.forward.impl_ForwardMessagesView_Day_2_en","features.forward.impl_ForwardMessagesView_Night_2_en",0,], -["features.forward.impl_ForwardMessagesView_Day_3_en","features.forward.impl_ForwardMessagesView_Night_3_en",20675,], -["features.home.impl.components_FullScreenIntentPermissionBanner_Day_0_en","features.home.impl.components_FullScreenIntentPermissionBanner_Night_0_en",20675,], +["features.forward.impl_ForwardMessagesView_Day_3_en","features.forward.impl_ForwardMessagesView_Night_3_en",20698,], +["features.home.impl.components_FullScreenIntentPermissionBanner_Day_0_en","features.home.impl.components_FullScreenIntentPermissionBanner_Night_0_en",20698,], ["features.announcement.impl.fullscreen_FullscreenAnnouncementView_Day_0_en","features.announcement.impl.fullscreen_FullscreenAnnouncementView_Night_0_en",0,], -["features.announcement.impl.fullscreen_FullscreenAnnouncementView_Day_1_en","features.announcement.impl.fullscreen_FullscreenAnnouncementView_Night_1_en",20675,], +["features.announcement.impl.fullscreen_FullscreenAnnouncementView_Day_1_en","features.announcement.impl.fullscreen_FullscreenAnnouncementView_Night_1_en",20698,], +["features.home.impl.search_GlobalSearchView_Day_0_en","features.home.impl.search_GlobalSearchView_Night_0_en",0,], +["features.home.impl.search_GlobalSearchView_Day_1_en","features.home.impl.search_GlobalSearchView_Night_1_en",0,], +["features.home.impl.search_GlobalSearchView_Day_2_en","features.home.impl.search_GlobalSearchView_Night_2_en",0,], +["features.home.impl.search_GlobalSearchView_Day_3_en","features.home.impl.search_GlobalSearchView_Night_3_en",0,], +["features.home.impl.search_GlobalSearchView_Day_4_en","features.home.impl.search_GlobalSearchView_Night_4_en",0,], +["features.home.impl.search_GlobalSearchView_Day_5_en","features.home.impl.search_GlobalSearchView_Night_5_en",0,], ["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.spaces_HomeSpacesView_Day_0_en","features.home.impl.spaces_HomeSpacesView_Night_0_en",20675,], -["features.home.impl.spaces_HomeSpacesView_Day_1_en","features.home.impl.spaces_HomeSpacesView_Night_1_en",20675,], -["features.home.impl.spaces_HomeSpacesView_Day_2_en","features.home.impl.spaces_HomeSpacesView_Night_2_en",20675,], -["features.home.impl.components_HomeTopBarMultiAccount_Day_0_en","features.home.impl.components_HomeTopBarMultiAccount_Night_0_en",20675,], -["features.home.impl.components_HomeTopBarSpaceFiltersSelected_Day_0_en","features.home.impl.components_HomeTopBarSpaceFiltersSelected_Night_0_en",20675,], +["features.home.impl.spaces_HomeSpacesView_Day_0_en","features.home.impl.spaces_HomeSpacesView_Night_0_en",20698,], +["features.home.impl.spaces_HomeSpacesView_Day_1_en","features.home.impl.spaces_HomeSpacesView_Night_1_en",20698,], +["features.home.impl.spaces_HomeSpacesView_Day_2_en","features.home.impl.spaces_HomeSpacesView_Night_2_en",20698,], +["features.home.impl.components_HomeTopBarMultiAccount_Day_0_en","features.home.impl.components_HomeTopBarMultiAccount_Night_0_en",20698,], +["features.home.impl.components_HomeTopBarSpaceFiltersSelected_Day_0_en","features.home.impl.components_HomeTopBarSpaceFiltersSelected_Night_0_en",20698,], ["features.home.impl.components_HomeTopBarSpaces_Day_0_en","features.home.impl.components_HomeTopBarSpaces_Night_0_en",0,], -["features.home.impl.components_HomeTopBarWithIndicator_Day_0_en","features.home.impl.components_HomeTopBarWithIndicator_Night_0_en",20675,], -["features.home.impl.components_HomeTopBar_Day_0_en","features.home.impl.components_HomeTopBar_Night_0_en",20675,], +["features.home.impl.components_HomeTopBarWithIndicator_Day_0_en","features.home.impl.components_HomeTopBarWithIndicator_Night_0_en",20698,], +["features.home.impl.components_HomeTopBarWithStatus_Day_0_en","features.home.impl.components_HomeTopBarWithStatus_Night_0_en",20698,], +["features.home.impl.components_HomeTopBar_Day_0_en","features.home.impl.components_HomeTopBar_Night_0_en",20698,], ["features.home.impl_HomeViewA11y_en","",0,], -["features.home.impl_HomeView_Day_0_en","features.home.impl_HomeView_Night_0_en",20675,], -["features.home.impl_HomeView_Day_10_en","features.home.impl_HomeView_Night_10_en",20675,], +["features.home.impl_HomeView_Day_0_en","features.home.impl_HomeView_Night_0_en",20698,], +["features.home.impl_HomeView_Day_10_en","features.home.impl_HomeView_Night_10_en",20698,], ["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",20675,], -["features.home.impl_HomeView_Day_14_en","features.home.impl_HomeView_Night_14_en",20675,], -["features.home.impl_HomeView_Day_15_en","features.home.impl_HomeView_Night_15_en",20675,], -["features.home.impl_HomeView_Day_16_en","features.home.impl_HomeView_Night_16_en",20675,], -["features.home.impl_HomeView_Day_1_en","features.home.impl_HomeView_Night_1_en",20675,], -["features.home.impl_HomeView_Day_2_en","features.home.impl_HomeView_Night_2_en",20675,], -["features.home.impl_HomeView_Day_3_en","features.home.impl_HomeView_Night_3_en",20675,], -["features.home.impl_HomeView_Day_4_en","features.home.impl_HomeView_Night_4_en",20675,], -["features.home.impl_HomeView_Day_5_en","features.home.impl_HomeView_Night_5_en",20675,], -["features.home.impl_HomeView_Day_6_en","features.home.impl_HomeView_Night_6_en",20675,], -["features.home.impl_HomeView_Day_7_en","features.home.impl_HomeView_Night_7_en",20675,], -["features.home.impl_HomeView_Day_8_en","features.home.impl_HomeView_Night_8_en",20675,], -["features.home.impl_HomeView_Day_9_en","features.home.impl_HomeView_Night_9_en",20675,], +["features.home.impl_HomeView_Day_13_en","features.home.impl_HomeView_Night_13_en",20698,], +["features.home.impl_HomeView_Day_14_en","features.home.impl_HomeView_Night_14_en",20698,], +["features.home.impl_HomeView_Day_15_en","features.home.impl_HomeView_Night_15_en",20698,], +["features.home.impl_HomeView_Day_16_en","features.home.impl_HomeView_Night_16_en",20698,], +["features.home.impl_HomeView_Day_1_en","features.home.impl_HomeView_Night_1_en",20698,], +["features.home.impl_HomeView_Day_2_en","features.home.impl_HomeView_Night_2_en",20698,], +["features.home.impl_HomeView_Day_3_en","features.home.impl_HomeView_Night_3_en",20698,], +["features.home.impl_HomeView_Day_4_en","features.home.impl_HomeView_Night_4_en",20698,], +["features.home.impl_HomeView_Day_5_en","features.home.impl_HomeView_Night_5_en",20698,], +["features.home.impl_HomeView_Day_6_en","features.home.impl_HomeView_Night_6_en",20698,], +["features.home.impl_HomeView_Day_7_en","features.home.impl_HomeView_Night_7_en",20698,], +["features.home.impl_HomeView_Day_8_en","features.home.impl_HomeView_Night_8_en",20698,], +["features.home.impl_HomeView_Day_9_en","features.home.impl_HomeView_Night_9_en",20698,], ["libraries.designsystem.theme.components_HorizontalDivider_Dividers_en","",0,], -["libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Day_0_en","libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Night_0_en",0,], -["libraries.designsystem.theme.components_HorizontalFloatingToolbar_Day_0_en","libraries.designsystem.theme.components_HorizontalFloatingToolbar_Night_0_en",0,], +["libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Day_0_en","libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Night_0_en",20698,], +["libraries.designsystem.theme.components_HorizontalFloatingToolbar_Day_0_en","libraries.designsystem.theme.components_HorizontalFloatingToolbar_Night_0_en",20698,], ["libraries.designsystem.ruler_HorizontalRuler_Day_0_en","libraries.designsystem.ruler_HorizontalRuler_Night_0_en",0,], ["libraries.designsystem.theme.components_IconButton_Buttons_en","",0,], ["libraries.designsystem.theme.components_IconColorButton_Day_0_en","libraries.designsystem.theme.components_IconColorButton_Night_0_en",0,], @@ -450,12 +457,12 @@ export const screenshots = [ ["libraries.designsystem.atomic.molecules_IconTitlePlaceholdersRowMolecule_Day_0_en","libraries.designsystem.atomic.molecules_IconTitlePlaceholdersRowMolecule_Night_0_en",0,], ["libraries.designsystem.atomic.molecules_IconTitleSubtitleMolecule_Day_0_en","libraries.designsystem.atomic.molecules_IconTitleSubtitleMolecule_Night_0_en",0,], ["libraries.designsystem.theme.components_IconToggleButton_Toggles_en","",0,], -["appicon.element_Icon_en","",0,], ["appicon.enterprise_Icon_en","",0,], +["appicon.element_Icon_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",20675,], -["features.messages.impl.crypto.identity_IdentityChangeStateView_Day_2_en","features.messages.impl.crypto.identity_IdentityChangeStateView_Night_2_en",20675,], +["features.messages.impl.crypto.identity_IdentityChangeStateView_Day_1_en","features.messages.impl.crypto.identity_IdentityChangeStateView_Night_1_en",20698,], +["features.messages.impl.crypto.identity_IdentityChangeStateView_Day_2_en","features.messages.impl.crypto.identity_IdentityChangeStateView_Night_2_en",20698,], ["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,], @@ -463,118 +470,118 @@ 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",20675,], +["libraries.matrix.ui.messages.reply_InReplyToView_Day_4_en","libraries.matrix.ui.messages.reply_InReplyToView_Night_4_en",20698,], ["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",20675,], +["libraries.matrix.ui.messages.reply_InReplyToView_Day_8_en","libraries.matrix.ui.messages.reply_InReplyToView_Night_8_en",20698,], ["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",20675,], -["features.call.impl.ui_IncomingCallScreen_Day_1_en","features.call.impl.ui_IncomingCallScreen_Night_1_en",20675,], +["features.call.impl.ui_IncomingCallScreen_Day_0_en","features.call.impl.ui_IncomingCallScreen_Night_0_en",20698,], +["features.call.impl.ui_IncomingCallScreen_Day_1_en","features.call.impl.ui_IncomingCallScreen_Night_1_en",20698,], ["features.verifysession.impl.incoming_IncomingVerificationViewA11y_en","",0,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_0_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_0_en",20675,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_10_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_10_en",20675,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_11_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_11_en",20675,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_12_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_12_en",20675,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_13_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_13_en",20675,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_1_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_1_en",20675,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_2_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_2_en",20675,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_3_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_3_en",20675,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_4_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_4_en",20675,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_5_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_5_en",20675,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_6_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_6_en",20675,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_7_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_7_en",20675,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_8_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_8_en",20675,], -["features.verifysession.impl.incoming_IncomingVerificationView_Day_9_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_9_en",20675,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_0_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_0_en",20698,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_10_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_10_en",20698,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_11_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_11_en",20698,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_12_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_12_en",20698,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_13_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_13_en",20698,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_1_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_1_en",20698,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_2_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_2_en",20698,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_3_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_3_en",20698,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_4_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_4_en",20698,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_5_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_5_en",20698,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_6_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_6_en",20698,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_7_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_7_en",20698,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_8_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_8_en",20698,], +["features.verifysession.impl.incoming_IncomingVerificationView_Day_9_en","features.verifysession.impl.incoming_IncomingVerificationView_Night_9_en",20698,], ["libraries.matrix.ui.media_InitialsAvatarBitmapGenerator_Day_0_en","libraries.matrix.ui.media_InitialsAvatarBitmapGenerator_Night_0_en",0,], -["features.call.impl.ui_InvalidAudioDeviceDialog_Day_0_en","features.call.impl.ui_InvalidAudioDeviceDialog_Night_0_en",20675,], -["libraries.matrix.ui.media.contentvalidation_InvalidContentView_Day_0_en","libraries.matrix.ui.media.contentvalidation_InvalidContentView_Night_0_en",0,], -["features.invitepeople.impl_InvitePeopleView_Day_0_en","features.invitepeople.impl_InvitePeopleView_Night_0_en",20675,], -["features.invitepeople.impl_InvitePeopleView_Day_10_en","features.invitepeople.impl_InvitePeopleView_Night_10_en",20675,], -["features.invitepeople.impl_InvitePeopleView_Day_11_en","features.invitepeople.impl_InvitePeopleView_Night_11_en",20675,], -["features.invitepeople.impl_InvitePeopleView_Day_1_en","features.invitepeople.impl_InvitePeopleView_Night_1_en",20675,], +["features.call.impl.ui_InvalidAudioDeviceDialog_Day_0_en","features.call.impl.ui_InvalidAudioDeviceDialog_Night_0_en",20698,], +["libraries.matrix.ui.media.contentvalidation_InvalidContentView_Day_0_en","libraries.matrix.ui.media.contentvalidation_InvalidContentView_Night_0_en",20698,], +["features.invitepeople.impl_InvitePeopleView_Day_0_en","features.invitepeople.impl_InvitePeopleView_Night_0_en",20698,], +["features.invitepeople.impl_InvitePeopleView_Day_10_en","features.invitepeople.impl_InvitePeopleView_Night_10_en",20698,], +["features.invitepeople.impl_InvitePeopleView_Day_11_en","features.invitepeople.impl_InvitePeopleView_Night_11_en",20698,], +["features.invitepeople.impl_InvitePeopleView_Day_1_en","features.invitepeople.impl_InvitePeopleView_Night_1_en",20698,], ["features.invitepeople.impl_InvitePeopleView_Day_2_en","features.invitepeople.impl_InvitePeopleView_Night_2_en",0,], ["features.invitepeople.impl_InvitePeopleView_Day_3_en","features.invitepeople.impl_InvitePeopleView_Night_3_en",0,], -["features.invitepeople.impl_InvitePeopleView_Day_4_en","features.invitepeople.impl_InvitePeopleView_Night_4_en",20675,], -["features.invitepeople.impl_InvitePeopleView_Day_5_en","features.invitepeople.impl_InvitePeopleView_Night_5_en",20675,], -["features.invitepeople.impl_InvitePeopleView_Day_6_en","features.invitepeople.impl_InvitePeopleView_Night_6_en",20675,], -["features.invitepeople.impl_InvitePeopleView_Day_7_en","features.invitepeople.impl_InvitePeopleView_Night_7_en",20675,], +["features.invitepeople.impl_InvitePeopleView_Day_4_en","features.invitepeople.impl_InvitePeopleView_Night_4_en",20698,], +["features.invitepeople.impl_InvitePeopleView_Day_5_en","features.invitepeople.impl_InvitePeopleView_Night_5_en",20698,], +["features.invitepeople.impl_InvitePeopleView_Day_6_en","features.invitepeople.impl_InvitePeopleView_Night_6_en",20698,], +["features.invitepeople.impl_InvitePeopleView_Day_7_en","features.invitepeople.impl_InvitePeopleView_Night_7_en",20698,], ["features.invitepeople.impl_InvitePeopleView_Day_8_en","features.invitepeople.impl_InvitePeopleView_Night_8_en",0,], -["features.invitepeople.impl_InvitePeopleView_Day_9_en","features.invitepeople.impl_InvitePeopleView_Night_9_en",20675,], -["libraries.matrix.ui.components_InviteSenderView_Day_0_en","libraries.matrix.ui.components_InviteSenderView_Night_0_en",20675,], -["features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_0_en","features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Night_0_en",20675,], -["features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_1_en","features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Night_1_en",20675,], -["features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_2_en","features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Night_2_en",20675,], -["features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_3_en","features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Night_3_en",20675,], -["features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_4_en","features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Night_4_en",20675,], -["features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_5_en","features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Night_5_en",20675,], +["features.invitepeople.impl_InvitePeopleView_Day_9_en","features.invitepeople.impl_InvitePeopleView_Night_9_en",20698,], +["libraries.matrix.ui.components_InviteSenderView_Day_0_en","libraries.matrix.ui.components_InviteSenderView_Night_0_en",20698,], +["features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_0_en","features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Night_0_en",20698,], +["features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_1_en","features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Night_1_en",20698,], +["features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_2_en","features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Night_2_en",20698,], +["features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_3_en","features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Night_3_en",20698,], +["features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_4_en","features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Night_4_en",20698,], +["features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Day_5_en","features.startchat.impl.joinbyaddress_JoinRoomByAddressView_Night_5_en",20698,], ["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",20675,], -["features.joinroom.impl_JoinRoomView_Day_11_en","features.joinroom.impl_JoinRoomView_Night_11_en",20675,], -["features.joinroom.impl_JoinRoomView_Day_12_en","features.joinroom.impl_JoinRoomView_Night_12_en",20675,], -["features.joinroom.impl_JoinRoomView_Day_13_en","features.joinroom.impl_JoinRoomView_Night_13_en",20675,], -["features.joinroom.impl_JoinRoomView_Day_14_en","features.joinroom.impl_JoinRoomView_Night_14_en",20675,], -["features.joinroom.impl_JoinRoomView_Day_15_en","features.joinroom.impl_JoinRoomView_Night_15_en",20675,], -["features.joinroom.impl_JoinRoomView_Day_16_en","features.joinroom.impl_JoinRoomView_Night_16_en",20675,], -["features.joinroom.impl_JoinRoomView_Day_1_en","features.joinroom.impl_JoinRoomView_Night_1_en",20675,], -["features.joinroom.impl_JoinRoomView_Day_2_en","features.joinroom.impl_JoinRoomView_Night_2_en",20675,], -["features.joinroom.impl_JoinRoomView_Day_3_en","features.joinroom.impl_JoinRoomView_Night_3_en",20675,], -["features.joinroom.impl_JoinRoomView_Day_4_en","features.joinroom.impl_JoinRoomView_Night_4_en",20675,], -["features.joinroom.impl_JoinRoomView_Day_5_en","features.joinroom.impl_JoinRoomView_Night_5_en",20675,], -["features.joinroom.impl_JoinRoomView_Day_6_en","features.joinroom.impl_JoinRoomView_Night_6_en",20675,], -["features.joinroom.impl_JoinRoomView_Day_7_en","features.joinroom.impl_JoinRoomView_Night_7_en",20675,], -["features.joinroom.impl_JoinRoomView_Day_8_en","features.joinroom.impl_JoinRoomView_Night_8_en",20675,], -["features.joinroom.impl_JoinRoomView_Day_9_en","features.joinroom.impl_JoinRoomView_Night_9_en",20675,], -["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_0_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_0_en",20675,], -["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_1_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_1_en",20675,], -["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_2_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_2_en",20675,], -["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_3_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_3_en",20675,], -["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_4_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_4_en",20675,], -["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_5_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_5_en",20675,], -["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_6_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_6_en",20675,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_0_en","features.knockrequests.impl.list_KnockRequestsListView_Night_0_en",20675,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_10_en","features.knockrequests.impl.list_KnockRequestsListView_Night_10_en",20675,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_1_en","features.knockrequests.impl.list_KnockRequestsListView_Night_1_en",20675,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_2_en","features.knockrequests.impl.list_KnockRequestsListView_Night_2_en",20675,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_3_en","features.knockrequests.impl.list_KnockRequestsListView_Night_3_en",20675,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_4_en","features.knockrequests.impl.list_KnockRequestsListView_Night_4_en",20675,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_5_en","features.knockrequests.impl.list_KnockRequestsListView_Night_5_en",20675,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_6_en","features.knockrequests.impl.list_KnockRequestsListView_Night_6_en",20675,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_7_en","features.knockrequests.impl.list_KnockRequestsListView_Night_7_en",20675,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_8_en","features.knockrequests.impl.list_KnockRequestsListView_Night_8_en",20675,], -["features.knockrequests.impl.list_KnockRequestsListView_Day_9_en","features.knockrequests.impl.list_KnockRequestsListView_Night_9_en",20675,], +["features.joinroom.impl_JoinRoomView_Day_10_en","features.joinroom.impl_JoinRoomView_Night_10_en",20698,], +["features.joinroom.impl_JoinRoomView_Day_11_en","features.joinroom.impl_JoinRoomView_Night_11_en",20698,], +["features.joinroom.impl_JoinRoomView_Day_12_en","features.joinroom.impl_JoinRoomView_Night_12_en",20698,], +["features.joinroom.impl_JoinRoomView_Day_13_en","features.joinroom.impl_JoinRoomView_Night_13_en",20698,], +["features.joinroom.impl_JoinRoomView_Day_14_en","features.joinroom.impl_JoinRoomView_Night_14_en",20698,], +["features.joinroom.impl_JoinRoomView_Day_15_en","features.joinroom.impl_JoinRoomView_Night_15_en",20698,], +["features.joinroom.impl_JoinRoomView_Day_16_en","features.joinroom.impl_JoinRoomView_Night_16_en",20698,], +["features.joinroom.impl_JoinRoomView_Day_1_en","features.joinroom.impl_JoinRoomView_Night_1_en",20698,], +["features.joinroom.impl_JoinRoomView_Day_2_en","features.joinroom.impl_JoinRoomView_Night_2_en",20698,], +["features.joinroom.impl_JoinRoomView_Day_3_en","features.joinroom.impl_JoinRoomView_Night_3_en",20698,], +["features.joinroom.impl_JoinRoomView_Day_4_en","features.joinroom.impl_JoinRoomView_Night_4_en",20698,], +["features.joinroom.impl_JoinRoomView_Day_5_en","features.joinroom.impl_JoinRoomView_Night_5_en",20698,], +["features.joinroom.impl_JoinRoomView_Day_6_en","features.joinroom.impl_JoinRoomView_Night_6_en",20698,], +["features.joinroom.impl_JoinRoomView_Day_7_en","features.joinroom.impl_JoinRoomView_Night_7_en",20698,], +["features.joinroom.impl_JoinRoomView_Day_8_en","features.joinroom.impl_JoinRoomView_Night_8_en",20698,], +["features.joinroom.impl_JoinRoomView_Day_9_en","features.joinroom.impl_JoinRoomView_Night_9_en",20698,], +["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_0_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_0_en",20698,], +["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_1_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_1_en",20698,], +["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_2_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_2_en",20698,], +["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_3_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_3_en",20698,], +["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_4_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_4_en",20698,], +["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_5_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_5_en",20698,], +["features.knockrequests.impl.banner_KnockRequestsBannerView_Day_6_en","features.knockrequests.impl.banner_KnockRequestsBannerView_Night_6_en",20698,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_0_en","features.knockrequests.impl.list_KnockRequestsListView_Night_0_en",20698,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_10_en","features.knockrequests.impl.list_KnockRequestsListView_Night_10_en",20698,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_1_en","features.knockrequests.impl.list_KnockRequestsListView_Night_1_en",20698,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_2_en","features.knockrequests.impl.list_KnockRequestsListView_Night_2_en",20698,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_3_en","features.knockrequests.impl.list_KnockRequestsListView_Night_3_en",20698,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_4_en","features.knockrequests.impl.list_KnockRequestsListView_Night_4_en",20698,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_5_en","features.knockrequests.impl.list_KnockRequestsListView_Night_5_en",20698,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_6_en","features.knockrequests.impl.list_KnockRequestsListView_Night_6_en",20698,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_7_en","features.knockrequests.impl.list_KnockRequestsListView_Night_7_en",20698,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_8_en","features.knockrequests.impl.list_KnockRequestsListView_Night_8_en",20698,], +["features.knockrequests.impl.list_KnockRequestsListView_Day_9_en","features.knockrequests.impl.list_KnockRequestsListView_Night_9_en",20698,], ["libraries.designsystem.components_LabelledCheckbox_Toggles_en","",0,], -["features.preferences.impl.labs_LabsView_Day_0_en","features.preferences.impl.labs_LabsView_Night_0_en",20675,], -["features.preferences.impl.labs_LabsView_Day_1_en","features.preferences.impl.labs_LabsView_Night_1_en",20675,], +["features.preferences.impl.labs_LabsView_Day_0_en","features.preferences.impl.labs_LabsView_Night_0_en",20698,], +["features.preferences.impl.labs_LabsView_Day_1_en","features.preferences.impl.labs_LabsView_Night_1_en",20698,], ["features.leaveroom.impl_LeaveRoomView_Day_0_en","features.leaveroom.impl_LeaveRoomView_Night_0_en",0,], -["features.leaveroom.impl_LeaveRoomView_Day_1_en","features.leaveroom.impl_LeaveRoomView_Night_1_en",20675,], -["features.leaveroom.impl_LeaveRoomView_Day_2_en","features.leaveroom.impl_LeaveRoomView_Night_2_en",20675,], -["features.leaveroom.impl_LeaveRoomView_Day_3_en","features.leaveroom.impl_LeaveRoomView_Night_3_en",20675,], -["features.leaveroom.impl_LeaveRoomView_Day_4_en","features.leaveroom.impl_LeaveRoomView_Night_4_en",20675,], -["features.leaveroom.impl_LeaveRoomView_Day_5_en","features.leaveroom.impl_LeaveRoomView_Night_5_en",20675,], -["features.leaveroom.impl_LeaveRoomView_Day_6_en","features.leaveroom.impl_LeaveRoomView_Night_6_en",20675,], -["features.leaveroom.impl_LeaveRoomView_Day_7_en","features.leaveroom.impl_LeaveRoomView_Night_7_en",20675,], -["features.space.impl.leave_LeaveSpaceView_Day_0_en","features.space.impl.leave_LeaveSpaceView_Night_0_en",20675,], -["features.space.impl.leave_LeaveSpaceView_Day_10_en","features.space.impl.leave_LeaveSpaceView_Night_10_en",20675,], -["features.space.impl.leave_LeaveSpaceView_Day_1_en","features.space.impl.leave_LeaveSpaceView_Night_1_en",20675,], -["features.space.impl.leave_LeaveSpaceView_Day_2_en","features.space.impl.leave_LeaveSpaceView_Night_2_en",20675,], -["features.space.impl.leave_LeaveSpaceView_Day_3_en","features.space.impl.leave_LeaveSpaceView_Night_3_en",20675,], -["features.space.impl.leave_LeaveSpaceView_Day_4_en","features.space.impl.leave_LeaveSpaceView_Night_4_en",20675,], -["features.space.impl.leave_LeaveSpaceView_Day_5_en","features.space.impl.leave_LeaveSpaceView_Night_5_en",20675,], -["features.space.impl.leave_LeaveSpaceView_Day_6_en","features.space.impl.leave_LeaveSpaceView_Night_6_en",20675,], -["features.space.impl.leave_LeaveSpaceView_Day_7_en","features.space.impl.leave_LeaveSpaceView_Night_7_en",20675,], -["features.space.impl.leave_LeaveSpaceView_Day_8_en","features.space.impl.leave_LeaveSpaceView_Night_8_en",20675,], -["features.space.impl.leave_LeaveSpaceView_Day_9_en","features.space.impl.leave_LeaveSpaceView_Night_9_en",20675,], +["features.leaveroom.impl_LeaveRoomView_Day_1_en","features.leaveroom.impl_LeaveRoomView_Night_1_en",20698,], +["features.leaveroom.impl_LeaveRoomView_Day_2_en","features.leaveroom.impl_LeaveRoomView_Night_2_en",20698,], +["features.leaveroom.impl_LeaveRoomView_Day_3_en","features.leaveroom.impl_LeaveRoomView_Night_3_en",20698,], +["features.leaveroom.impl_LeaveRoomView_Day_4_en","features.leaveroom.impl_LeaveRoomView_Night_4_en",20698,], +["features.leaveroom.impl_LeaveRoomView_Day_5_en","features.leaveroom.impl_LeaveRoomView_Night_5_en",20698,], +["features.leaveroom.impl_LeaveRoomView_Day_6_en","features.leaveroom.impl_LeaveRoomView_Night_6_en",20698,], +["features.leaveroom.impl_LeaveRoomView_Day_7_en","features.leaveroom.impl_LeaveRoomView_Night_7_en",20698,], +["features.space.impl.leave_LeaveSpaceView_Day_0_en","features.space.impl.leave_LeaveSpaceView_Night_0_en",20698,], +["features.space.impl.leave_LeaveSpaceView_Day_10_en","features.space.impl.leave_LeaveSpaceView_Night_10_en",20698,], +["features.space.impl.leave_LeaveSpaceView_Day_1_en","features.space.impl.leave_LeaveSpaceView_Night_1_en",20698,], +["features.space.impl.leave_LeaveSpaceView_Day_2_en","features.space.impl.leave_LeaveSpaceView_Night_2_en",20698,], +["features.space.impl.leave_LeaveSpaceView_Day_3_en","features.space.impl.leave_LeaveSpaceView_Night_3_en",20698,], +["features.space.impl.leave_LeaveSpaceView_Day_4_en","features.space.impl.leave_LeaveSpaceView_Night_4_en",20698,], +["features.space.impl.leave_LeaveSpaceView_Day_5_en","features.space.impl.leave_LeaveSpaceView_Night_5_en",20698,], +["features.space.impl.leave_LeaveSpaceView_Day_6_en","features.space.impl.leave_LeaveSpaceView_Night_6_en",20698,], +["features.space.impl.leave_LeaveSpaceView_Day_7_en","features.space.impl.leave_LeaveSpaceView_Night_7_en",20698,], +["features.space.impl.leave_LeaveSpaceView_Day_8_en","features.space.impl.leave_LeaveSpaceView_Night_8_en",20698,], +["features.space.impl.leave_LeaveSpaceView_Day_9_en","features.space.impl.leave_LeaveSpaceView_Night_9_en",20698,], ["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.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_0_en","features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Night_0_en",20675,], -["features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_1_en","features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Night_1_en",20675,], -["features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_2_en","features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Night_2_en",20675,], -["features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_3_en","features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Night_3_en",20675,], -["features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_4_en","features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Night_4_en",20675,], -["features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_5_en","features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Night_5_en",20675,], +["features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_0_en","features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Night_0_en",20698,], +["features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_1_en","features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Night_1_en",20698,], +["features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_2_en","features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Night_2_en",20698,], +["features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_3_en","features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Night_3_en",20698,], +["features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_4_en","features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Night_4_en",20698,], +["features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Day_5_en","features.linknewdevice.impl.screens.root_LinkNewDeviceRootView_Night_5_en",20698,], ["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",20675,], +["features.messages.impl.link_LinkView_Day_1_en","features.messages.impl.link_LinkView_Night_1_en",20698,], ["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,], @@ -627,50 +634,51 @@ export const screenshots = [ ["libraries.designsystem.theme.components_ListSupportingTextLargePadding_List_supporting_text_-_large_padding_List_sections_en","",0,], ["libraries.designsystem.theme.components_ListSupportingTextNoPadding_List_supporting_text_-_no_padding_List_sections_en","",0,], ["libraries.designsystem.theme.components_ListSupportingTextSmallPadding_List_supporting_text_-_small_padding_List_sections_en","",0,], -["features.location.api_LiveLocationSharingBanner_Day_0_en","features.location.api_LiveLocationSharingBanner_Night_0_en",20675,], +["features.location.api_LiveLocationSharingBanner_Day_0_en","features.location.api_LiveLocationSharingBanner_Night_0_en",20698,], ["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",20675,], +["appnav.room.joined_LoadingRoomNodeView_Day_1_en","appnav.room.joined_LoadingRoomNodeView_Night_1_en",20698,], ["libraries.designsystem.components_LocationPin_Day_0_en","libraries.designsystem.components_LocationPin_Night_0_en",0,], -["features.location.impl.common.ui_LocationShareRow_Day_0_en","features.location.impl.common.ui_LocationShareRow_Night_0_en",20675,], -["features.lockscreen.impl.settings_LockScreenSettingsView_Day_0_en","features.lockscreen.impl.settings_LockScreenSettingsView_Night_0_en",20675,], -["features.lockscreen.impl.settings_LockScreenSettingsView_Day_1_en","features.lockscreen.impl.settings_LockScreenSettingsView_Night_1_en",20675,], -["features.lockscreen.impl.settings_LockScreenSettingsView_Day_2_en","features.lockscreen.impl.settings_LockScreenSettingsView_Night_2_en",20675,], +["features.location.impl.common.ui_LocationShareRow_Day_0_en","features.location.impl.common.ui_LocationShareRow_Night_0_en",20698,], +["features.lockscreen.impl.settings_LockScreenSettingsView_Day_0_en","features.lockscreen.impl.settings_LockScreenSettingsView_Night_0_en",20698,], +["features.lockscreen.impl.settings_LockScreenSettingsView_Day_1_en","features.lockscreen.impl.settings_LockScreenSettingsView_Night_1_en",20698,], +["features.lockscreen.impl.settings_LockScreenSettingsView_Day_2_en","features.lockscreen.impl.settings_LockScreenSettingsView_Night_2_en",20698,], ["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",20675,], -["appnav.loggedin_LoggedInView_Day_2_en","appnav.loggedin_LoggedInView_Night_2_en",20675,], -["appnav.loggedin_LoggedInView_Day_3_en","appnav.loggedin_LoggedInView_Night_3_en",20675,], -["appnav.loggedin_LoggedInView_Day_4_en","appnav.loggedin_LoggedInView_Night_4_en",20675,], -["appnav.loggedin_LoggedInView_Day_5_en","appnav.loggedin_LoggedInView_Night_5_en",20675,], -["features.login.impl.login_LoginModeView_Day_0_en","features.login.impl.login_LoginModeView_Night_0_en",20675,], -["features.login.impl.login_LoginModeView_Day_1_en","features.login.impl.login_LoginModeView_Night_1_en",20675,], -["features.login.impl.login_LoginModeView_Day_2_en","features.login.impl.login_LoginModeView_Night_2_en",20675,], -["features.login.impl.login_LoginModeView_Day_3_en","features.login.impl.login_LoginModeView_Night_3_en",20675,], -["features.login.impl.login_LoginModeView_Day_4_en","features.login.impl.login_LoginModeView_Night_4_en",20675,], -["features.login.impl.login_LoginModeView_Day_5_en","features.login.impl.login_LoginModeView_Night_5_en",20675,], -["features.login.impl.login_LoginModeView_Day_6_en","features.login.impl.login_LoginModeView_Night_6_en",20675,], -["features.login.impl.screens.loginpassword_LoginPasswordView_Day_0_en","features.login.impl.screens.loginpassword_LoginPasswordView_Night_0_en",20675,], -["features.login.impl.screens.loginpassword_LoginPasswordView_Day_1_en","features.login.impl.screens.loginpassword_LoginPasswordView_Night_1_en",20675,], -["features.login.impl.screens.loginpassword_LoginPasswordView_Day_2_en","features.login.impl.screens.loginpassword_LoginPasswordView_Night_2_en",20675,], -["features.login.impl.screens.classic.loginwithclassic_LoginWithClassicView_Day_0_en","features.login.impl.screens.classic.loginwithclassic_LoginWithClassicView_Night_0_en",20675,], -["features.login.impl.screens.classic.loginwithclassic_LoginWithClassicView_Day_1_en","features.login.impl.screens.classic.loginwithclassic_LoginWithClassicView_Night_1_en",20675,], -["features.logout.impl_LogoutView_Day_0_en","features.logout.impl_LogoutView_Night_0_en",20675,], -["features.logout.impl_LogoutView_Day_10_en","features.logout.impl_LogoutView_Night_10_en",20675,], -["features.logout.impl_LogoutView_Day_11_en","features.logout.impl_LogoutView_Night_11_en",20675,], -["features.logout.impl_LogoutView_Day_1_en","features.logout.impl_LogoutView_Night_1_en",20675,], -["features.logout.impl_LogoutView_Day_2_en","features.logout.impl_LogoutView_Night_2_en",20675,], -["features.logout.impl_LogoutView_Day_3_en","features.logout.impl_LogoutView_Night_3_en",20675,], -["features.logout.impl_LogoutView_Day_4_en","features.logout.impl_LogoutView_Night_4_en",20675,], -["features.logout.impl_LogoutView_Day_5_en","features.logout.impl_LogoutView_Night_5_en",20675,], -["features.logout.impl_LogoutView_Day_6_en","features.logout.impl_LogoutView_Night_6_en",20675,], -["features.logout.impl_LogoutView_Day_7_en","features.logout.impl_LogoutView_Night_7_en",20675,], -["features.logout.impl_LogoutView_Day_8_en","features.logout.impl_LogoutView_Night_8_en",20675,], -["features.logout.impl_LogoutView_Day_9_en","features.logout.impl_LogoutView_Night_9_en",20675,], +["appnav.loggedin_LoggedInView_Day_1_en","appnav.loggedin_LoggedInView_Night_1_en",20698,], +["appnav.loggedin_LoggedInView_Day_2_en","appnav.loggedin_LoggedInView_Night_2_en",20698,], +["appnav.loggedin_LoggedInView_Day_3_en","appnav.loggedin_LoggedInView_Night_3_en",20698,], +["appnav.loggedin_LoggedInView_Day_4_en","appnav.loggedin_LoggedInView_Night_4_en",20698,], +["appnav.loggedin_LoggedInView_Day_5_en","appnav.loggedin_LoggedInView_Night_5_en",20698,], +["appnav.loggedin_LoggedInView_Day_6_en","appnav.loggedin_LoggedInView_Night_6_en",20698,], +["features.login.impl.login_LoginModeView_Day_0_en","features.login.impl.login_LoginModeView_Night_0_en",20698,], +["features.login.impl.login_LoginModeView_Day_1_en","features.login.impl.login_LoginModeView_Night_1_en",20698,], +["features.login.impl.login_LoginModeView_Day_2_en","features.login.impl.login_LoginModeView_Night_2_en",20698,], +["features.login.impl.login_LoginModeView_Day_3_en","features.login.impl.login_LoginModeView_Night_3_en",20698,], +["features.login.impl.login_LoginModeView_Day_4_en","features.login.impl.login_LoginModeView_Night_4_en",20698,], +["features.login.impl.login_LoginModeView_Day_5_en","features.login.impl.login_LoginModeView_Night_5_en",20698,], +["features.login.impl.login_LoginModeView_Day_6_en","features.login.impl.login_LoginModeView_Night_6_en",20698,], +["features.login.impl.screens.loginpassword_LoginPasswordView_Day_0_en","features.login.impl.screens.loginpassword_LoginPasswordView_Night_0_en",20698,], +["features.login.impl.screens.loginpassword_LoginPasswordView_Day_1_en","features.login.impl.screens.loginpassword_LoginPasswordView_Night_1_en",20698,], +["features.login.impl.screens.loginpassword_LoginPasswordView_Day_2_en","features.login.impl.screens.loginpassword_LoginPasswordView_Night_2_en",20698,], +["features.login.impl.screens.classic.loginwithclassic_LoginWithClassicView_Day_0_en","features.login.impl.screens.classic.loginwithclassic_LoginWithClassicView_Night_0_en",20698,], +["features.login.impl.screens.classic.loginwithclassic_LoginWithClassicView_Day_1_en","features.login.impl.screens.classic.loginwithclassic_LoginWithClassicView_Night_1_en",20698,], +["features.logout.impl_LogoutView_Day_0_en","features.logout.impl_LogoutView_Night_0_en",20698,], +["features.logout.impl_LogoutView_Day_10_en","features.logout.impl_LogoutView_Night_10_en",20698,], +["features.logout.impl_LogoutView_Day_11_en","features.logout.impl_LogoutView_Night_11_en",20698,], +["features.logout.impl_LogoutView_Day_1_en","features.logout.impl_LogoutView_Night_1_en",20698,], +["features.logout.impl_LogoutView_Day_2_en","features.logout.impl_LogoutView_Night_2_en",20698,], +["features.logout.impl_LogoutView_Day_3_en","features.logout.impl_LogoutView_Night_3_en",20698,], +["features.logout.impl_LogoutView_Day_4_en","features.logout.impl_LogoutView_Night_4_en",20698,], +["features.logout.impl_LogoutView_Day_5_en","features.logout.impl_LogoutView_Night_5_en",20698,], +["features.logout.impl_LogoutView_Day_6_en","features.logout.impl_LogoutView_Night_6_en",20698,], +["features.logout.impl_LogoutView_Day_7_en","features.logout.impl_LogoutView_Night_7_en",20698,], +["features.logout.impl_LogoutView_Day_8_en","features.logout.impl_LogoutView_Night_8_en",20698,], +["features.logout.impl_LogoutView_Day_9_en","features.logout.impl_LogoutView_Night_9_en",20698,], ["libraries.designsystem.components.button_MainActionButton_Buttons_en","",0,], -["features.securityandprivacy.impl.manageauthorizedspaces_ManageAuthorizedSpacesView_Day_0_en","features.securityandprivacy.impl.manageauthorizedspaces_ManageAuthorizedSpacesView_Night_0_en",20675,], -["features.securityandprivacy.impl.manageauthorizedspaces_ManageAuthorizedSpacesView_Day_1_en","features.securityandprivacy.impl.manageauthorizedspaces_ManageAuthorizedSpacesView_Night_1_en",20675,], -["features.securityandprivacy.impl.manageauthorizedspaces_ManageAuthorizedSpacesView_Day_2_en","features.securityandprivacy.impl.manageauthorizedspaces_ManageAuthorizedSpacesView_Night_2_en",20675,], -["libraries.textcomposer_MarkdownTextComposerEdit_Day_0_en","libraries.textcomposer_MarkdownTextComposerEdit_Night_0_en",20675,], +["features.securityandprivacy.impl.manageauthorizedspaces_ManageAuthorizedSpacesView_Day_0_en","features.securityandprivacy.impl.manageauthorizedspaces_ManageAuthorizedSpacesView_Night_0_en",20698,], +["features.securityandprivacy.impl.manageauthorizedspaces_ManageAuthorizedSpacesView_Day_1_en","features.securityandprivacy.impl.manageauthorizedspaces_ManageAuthorizedSpacesView_Night_1_en",20698,], +["features.securityandprivacy.impl.manageauthorizedspaces_ManageAuthorizedSpacesView_Day_2_en","features.securityandprivacy.impl.manageauthorizedspaces_ManageAuthorizedSpacesView_Night_2_en",20698,], +["libraries.textcomposer_MarkdownTextComposerEdit_Day_0_en","libraries.textcomposer_MarkdownTextComposerEdit_Night_0_en",20698,], ["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,], @@ -685,29 +693,29 @@ export const screenshots = [ ["libraries.matrix.ui.components_MatrixUserRow_Day_2_en","libraries.matrix.ui.components_MatrixUserRow_Night_2_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",20675,], -["libraries.mediaviewer.impl.details_MediaDeleteConfirmationBottomSheet_Day_1_en","libraries.mediaviewer.impl.details_MediaDeleteConfirmationBottomSheet_Night_1_en",20675,], -["libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_0_en","libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Night_0_en",20675,], -["libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_1_en","libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Night_1_en",20675,], -["libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_2_en","libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Night_2_en",20675,], -["libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_3_en","libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Night_3_en",20675,], -["libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_4_en","libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Night_4_en",20675,], -["libraries.mediaviewer.impl.local.file_MediaFileView_Day_0_en","libraries.mediaviewer.impl.local.file_MediaFileView_Night_0_en",20675,], -["libraries.mediaviewer.impl.local.file_MediaFileView_Day_1_en","libraries.mediaviewer.impl.local.file_MediaFileView_Night_1_en",20675,], -["libraries.mediaviewer.impl.local.file_MediaFileView_Day_2_en","libraries.mediaviewer.impl.local.file_MediaFileView_Night_2_en",20675,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_0_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_0_en",20675,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_10_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_10_en",20675,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_11_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_11_en",20675,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_12_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_12_en",20675,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_1_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_1_en",20675,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_2_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_2_en",20675,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_3_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_3_en",20675,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_4_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_4_en",20675,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_5_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_5_en",20675,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_6_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_6_en",20675,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_7_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_7_en",20675,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_8_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_8_en",20675,], -["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_9_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_9_en",20675,], +["libraries.mediaviewer.impl.details_MediaDeleteConfirmationBottomSheet_Day_0_en","libraries.mediaviewer.impl.details_MediaDeleteConfirmationBottomSheet_Night_0_en",20698,], +["libraries.mediaviewer.impl.details_MediaDeleteConfirmationBottomSheet_Day_1_en","libraries.mediaviewer.impl.details_MediaDeleteConfirmationBottomSheet_Night_1_en",20698,], +["libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_0_en","libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Night_0_en",20698,], +["libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_1_en","libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Night_1_en",20698,], +["libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_2_en","libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Night_2_en",20698,], +["libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_3_en","libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Night_3_en",20698,], +["libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Day_4_en","libraries.mediaviewer.impl.details_MediaDetailsBottomSheet_Night_4_en",20698,], +["libraries.mediaviewer.impl.local.file_MediaFileView_Day_0_en","libraries.mediaviewer.impl.local.file_MediaFileView_Night_0_en",20698,], +["libraries.mediaviewer.impl.local.file_MediaFileView_Day_1_en","libraries.mediaviewer.impl.local.file_MediaFileView_Night_1_en",20698,], +["libraries.mediaviewer.impl.local.file_MediaFileView_Day_2_en","libraries.mediaviewer.impl.local.file_MediaFileView_Night_2_en",20698,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_0_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_0_en",20698,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_10_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_10_en",20698,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_11_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_11_en",20698,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_12_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_12_en",20698,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_1_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_1_en",20698,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_2_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_2_en",20698,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_3_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_3_en",20698,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_4_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_4_en",20698,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_5_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_5_en",20698,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_6_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_6_en",20698,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_7_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_7_en",20698,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_8_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_8_en",20698,], +["libraries.mediaviewer.impl.gallery_MediaGalleryView_Day_9_en","libraries.mediaviewer.impl.gallery_MediaGalleryView_Night_9_en",20698,], ["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,], @@ -715,11 +723,11 @@ 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_MediaViewerViewLandscape_0_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_10_en","",0,], -["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_11_en","",20675,], -["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_12_en","",20675,], +["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_11_en","",20698,], +["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_12_en","",20698,], ["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_13_en","",0,], -["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_14_en","",20675,], -["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_15_en","",0,], +["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_14_en","",20698,], +["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_15_en","",20698,], ["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_16_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_17_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_18_en","",0,], @@ -728,23 +736,23 @@ export const screenshots = [ ["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_20_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_21_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_22_en","",0,], -["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_23_en","",0,], -["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_24_en","",0,], -["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_2_en","",20675,], +["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_23_en","",20698,], +["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_24_en","",20698,], +["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_2_en","",20698,], ["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_3_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_4_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_5_en","",0,], -["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_6_en","",20675,], -["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_7_en","",20675,], +["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_6_en","",20698,], +["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_7_en","",20698,], ["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_8_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerViewLandscape_9_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","",20675,], -["libraries.mediaviewer.impl.viewer_MediaViewerView_12_en","",20675,], +["libraries.mediaviewer.impl.viewer_MediaViewerView_11_en","",20698,], +["libraries.mediaviewer.impl.viewer_MediaViewerView_12_en","",20698,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_13_en","",0,], -["libraries.mediaviewer.impl.viewer_MediaViewerView_14_en","",20675,], -["libraries.mediaviewer.impl.viewer_MediaViewerView_15_en","",0,], +["libraries.mediaviewer.impl.viewer_MediaViewerView_14_en","",20698,], +["libraries.mediaviewer.impl.viewer_MediaViewerView_15_en","",20698,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_16_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_17_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_18_en","",0,], @@ -753,14 +761,14 @@ export const screenshots = [ ["libraries.mediaviewer.impl.viewer_MediaViewerView_20_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_21_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_22_en","",0,], -["libraries.mediaviewer.impl.viewer_MediaViewerView_23_en","",0,], -["libraries.mediaviewer.impl.viewer_MediaViewerView_24_en","",0,], -["libraries.mediaviewer.impl.viewer_MediaViewerView_2_en","",20675,], +["libraries.mediaviewer.impl.viewer_MediaViewerView_23_en","",20698,], +["libraries.mediaviewer.impl.viewer_MediaViewerView_24_en","",20698,], +["libraries.mediaviewer.impl.viewer_MediaViewerView_2_en","",20698,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_3_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_4_en","",0,], ["libraries.mediaviewer.impl.viewer_MediaViewerView_5_en","",0,], -["libraries.mediaviewer.impl.viewer_MediaViewerView_6_en","",20675,], -["libraries.mediaviewer.impl.viewer_MediaViewerView_7_en","",20675,], +["libraries.mediaviewer.impl.viewer_MediaViewerView_6_en","",20698,], +["libraries.mediaviewer.impl.viewer_MediaViewerView_7_en","",20698,], ["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,], @@ -769,7 +777,7 @@ export const screenshots = [ ["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",20675,], +["features.messages.impl.messagecomposer_MessageComposerView_Day_0_en","features.messages.impl.messagecomposer_MessageComposerView_Night_0_en",20698,], ["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,], @@ -778,7 +786,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",20675,], +["features.messages.impl.timeline.components_MessageShieldView_Day_0_en","features.messages.impl.timeline.components_MessageShieldView_Night_0_en",20698,], ["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,], @@ -787,25 +795,25 @@ export const screenshots = [ ["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_MessagesViewA11y_en","",0,], -["features.messages.impl.topbars_MessagesViewTopBar_Day_0_en","features.messages.impl.topbars_MessagesViewTopBar_Night_0_en",20675,], -["features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_0_en","features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_0_en",20675,], -["features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_1_en","features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_1_en",20675,], -["features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_2_en","features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_2_en",20675,], -["features.messages.impl_MessagesView_Day_0_en","features.messages.impl_MessagesView_Night_0_en",20675,], -["features.messages.impl_MessagesView_Day_10_en","features.messages.impl_MessagesView_Night_10_en",20675,], -["features.messages.impl_MessagesView_Day_11_en","features.messages.impl_MessagesView_Night_11_en",20675,], -["features.messages.impl_MessagesView_Day_1_en","features.messages.impl_MessagesView_Night_1_en",20675,], -["features.messages.impl_MessagesView_Day_2_en","features.messages.impl_MessagesView_Night_2_en",20675,], -["features.messages.impl_MessagesView_Day_3_en","features.messages.impl_MessagesView_Night_3_en",20675,], -["features.messages.impl_MessagesView_Day_4_en","features.messages.impl_MessagesView_Night_4_en",20675,], -["features.messages.impl_MessagesView_Day_5_en","features.messages.impl_MessagesView_Night_5_en",20675,], -["features.messages.impl_MessagesView_Day_6_en","features.messages.impl_MessagesView_Night_6_en",20675,], -["features.messages.impl_MessagesView_Day_7_en","features.messages.impl_MessagesView_Night_7_en",20675,], -["features.messages.impl_MessagesView_Day_8_en","features.messages.impl_MessagesView_Night_8_en",20675,], -["features.messages.impl_MessagesView_Day_9_en","features.messages.impl_MessagesView_Night_9_en",20675,], +["features.messages.impl.topbars_MessagesViewTopBar_Day_0_en","features.messages.impl.topbars_MessagesViewTopBar_Night_0_en",20698,], +["features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_0_en","features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_0_en",20698,], +["features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_1_en","features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_1_en",20698,], +["features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Day_2_en","features.messages.impl.crypto.identity_MessagesViewWithIdentityChange_Night_2_en",20698,], +["features.messages.impl_MessagesView_Day_0_en","features.messages.impl_MessagesView_Night_0_en",20698,], +["features.messages.impl_MessagesView_Day_10_en","features.messages.impl_MessagesView_Night_10_en",20698,], +["features.messages.impl_MessagesView_Day_11_en","features.messages.impl_MessagesView_Night_11_en",20698,], +["features.messages.impl_MessagesView_Day_1_en","features.messages.impl_MessagesView_Night_1_en",20698,], +["features.messages.impl_MessagesView_Day_2_en","features.messages.impl_MessagesView_Night_2_en",20698,], +["features.messages.impl_MessagesView_Day_3_en","features.messages.impl_MessagesView_Night_3_en",20698,], +["features.messages.impl_MessagesView_Day_4_en","features.messages.impl_MessagesView_Night_4_en",20698,], +["features.messages.impl_MessagesView_Day_5_en","features.messages.impl_MessagesView_Night_5_en",20698,], +["features.messages.impl_MessagesView_Day_6_en","features.messages.impl_MessagesView_Night_6_en",20698,], +["features.messages.impl_MessagesView_Day_7_en","features.messages.impl_MessagesView_Night_7_en",20698,], +["features.messages.impl_MessagesView_Day_8_en","features.messages.impl_MessagesView_Night_8_en",20698,], +["features.messages.impl_MessagesView_Day_9_en","features.messages.impl_MessagesView_Night_9_en",20698,], ["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",20675,], -["features.login.impl.screens.classic.missingkeybackup_MissingKeyBackupView_Day_0_en","features.login.impl.screens.classic.missingkeybackup_MissingKeyBackupView_Night_0_en",20675,], +["features.migration.impl_MigrationView_Day_1_en","features.migration.impl_MigrationView_Night_1_en",20698,], +["features.login.impl.screens.classic.missingkeybackup_MissingKeyBackupView_Day_0_en","features.login.impl.screens.classic.missingkeybackup_MissingKeyBackupView_Night_0_en",20698,], ["libraries.designsystem.theme.components_ModalBottomSheetDark_Bottom_Sheets_en","",0,], ["libraries.designsystem.theme.components_ModalBottomSheetLight_Bottom_Sheets_en","",0,], ["appicon.element_MonochromeIcon_en","",0,], @@ -815,129 +823,130 @@ 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.home.impl.components_NewNotificationSoundBanner_Day_0_en","features.home.impl.components_NewNotificationSoundBanner_Night_0_en",20675,], -["libraries.matrix.ui.media.contentvalidation_NotFoundContentView_Day_0_en","libraries.matrix.ui.media.contentvalidation_NotFoundContentView_Night_0_en",0,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_0_en","features.preferences.impl.notifications_NotificationSettingsView_Night_0_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_10_en","features.preferences.impl.notifications_NotificationSettingsView_Night_10_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_11_en","features.preferences.impl.notifications_NotificationSettingsView_Night_11_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_12_en","features.preferences.impl.notifications_NotificationSettingsView_Night_12_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_13_en","features.preferences.impl.notifications_NotificationSettingsView_Night_13_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_14_en","features.preferences.impl.notifications_NotificationSettingsView_Night_14_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_15_en","features.preferences.impl.notifications_NotificationSettingsView_Night_15_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_16_en","features.preferences.impl.notifications_NotificationSettingsView_Night_16_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_17_en","features.preferences.impl.notifications_NotificationSettingsView_Night_17_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_18_en","features.preferences.impl.notifications_NotificationSettingsView_Night_18_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_19_en","features.preferences.impl.notifications_NotificationSettingsView_Night_19_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_1_en","features.preferences.impl.notifications_NotificationSettingsView_Night_1_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_20_en","features.preferences.impl.notifications_NotificationSettingsView_Night_20_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_2_en","features.preferences.impl.notifications_NotificationSettingsView_Night_2_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_3_en","features.preferences.impl.notifications_NotificationSettingsView_Night_3_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_4_en","features.preferences.impl.notifications_NotificationSettingsView_Night_4_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_5_en","features.preferences.impl.notifications_NotificationSettingsView_Night_5_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_6_en","features.preferences.impl.notifications_NotificationSettingsView_Night_6_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_7_en","features.preferences.impl.notifications_NotificationSettingsView_Night_7_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_8_en","features.preferences.impl.notifications_NotificationSettingsView_Night_8_en",20675,], -["features.preferences.impl.notifications_NotificationSettingsView_Day_9_en","features.preferences.impl.notifications_NotificationSettingsView_Night_9_en",20675,], -["features.ftue.impl.notifications_NotificationsOptInView_Day_0_en","features.ftue.impl.notifications_NotificationsOptInView_Night_0_en",20675,], +["features.home.impl.components_NewNotificationSoundBanner_Day_0_en","features.home.impl.components_NewNotificationSoundBanner_Night_0_en",20698,], +["libraries.matrix.ui.media.contentvalidation_NotFoundContentView_Day_0_en","libraries.matrix.ui.media.contentvalidation_NotFoundContentView_Night_0_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_0_en","features.preferences.impl.notifications_NotificationSettingsView_Night_0_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_10_en","features.preferences.impl.notifications_NotificationSettingsView_Night_10_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_11_en","features.preferences.impl.notifications_NotificationSettingsView_Night_11_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_12_en","features.preferences.impl.notifications_NotificationSettingsView_Night_12_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_13_en","features.preferences.impl.notifications_NotificationSettingsView_Night_13_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_14_en","features.preferences.impl.notifications_NotificationSettingsView_Night_14_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_15_en","features.preferences.impl.notifications_NotificationSettingsView_Night_15_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_16_en","features.preferences.impl.notifications_NotificationSettingsView_Night_16_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_17_en","features.preferences.impl.notifications_NotificationSettingsView_Night_17_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_18_en","features.preferences.impl.notifications_NotificationSettingsView_Night_18_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_19_en","features.preferences.impl.notifications_NotificationSettingsView_Night_19_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_1_en","features.preferences.impl.notifications_NotificationSettingsView_Night_1_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_20_en","features.preferences.impl.notifications_NotificationSettingsView_Night_20_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_2_en","features.preferences.impl.notifications_NotificationSettingsView_Night_2_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_3_en","features.preferences.impl.notifications_NotificationSettingsView_Night_3_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_4_en","features.preferences.impl.notifications_NotificationSettingsView_Night_4_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_5_en","features.preferences.impl.notifications_NotificationSettingsView_Night_5_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_6_en","features.preferences.impl.notifications_NotificationSettingsView_Night_6_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_7_en","features.preferences.impl.notifications_NotificationSettingsView_Night_7_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_8_en","features.preferences.impl.notifications_NotificationSettingsView_Night_8_en",20698,], +["features.preferences.impl.notifications_NotificationSettingsView_Day_9_en","features.preferences.impl.notifications_NotificationSettingsView_Night_9_en",20698,], +["features.ftue.impl.notifications_NotificationsOptInView_Day_0_en","features.ftue.impl.notifications_NotificationsOptInView_Night_0_en",20698,], ["features.linknewdevice.impl.screens.number.component_NumberTextField_Day_0_en","features.linknewdevice.impl.screens.number.component_NumberTextField_Night_0_en",0,], ["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",20675,], -["features.login.impl.screens.onboarding_OnBoardingView_Day_1_en","features.login.impl.screens.onboarding_OnBoardingView_Night_1_en",20675,], -["features.login.impl.screens.onboarding_OnBoardingView_Day_2_en","features.login.impl.screens.onboarding_OnBoardingView_Night_2_en",20675,], -["features.login.impl.screens.onboarding_OnBoardingView_Day_3_en","features.login.impl.screens.onboarding_OnBoardingView_Night_3_en",20675,], -["features.login.impl.screens.onboarding_OnBoardingView_Day_4_en","features.login.impl.screens.onboarding_OnBoardingView_Night_4_en",20675,], -["features.login.impl.screens.onboarding_OnBoardingView_Day_5_en","features.login.impl.screens.onboarding_OnBoardingView_Night_5_en",20675,], -["features.login.impl.screens.onboarding_OnBoardingView_Day_6_en","features.login.impl.screens.onboarding_OnBoardingView_Night_6_en",20675,], -["features.login.impl.screens.onboarding_OnBoardingView_Day_7_en","features.login.impl.screens.onboarding_OnBoardingView_Night_7_en",20675,], -["features.login.impl.screens.onboarding_OnBoardingView_Day_8_en","features.login.impl.screens.onboarding_OnBoardingView_Night_8_en",20675,], +["features.login.impl.screens.onboarding_OnBoardingView_Day_0_en","features.login.impl.screens.onboarding_OnBoardingView_Night_0_en",20698,], +["features.login.impl.screens.onboarding_OnBoardingView_Day_1_en","features.login.impl.screens.onboarding_OnBoardingView_Night_1_en",20698,], +["features.login.impl.screens.onboarding_OnBoardingView_Day_2_en","features.login.impl.screens.onboarding_OnBoardingView_Night_2_en",20698,], +["features.login.impl.screens.onboarding_OnBoardingView_Day_3_en","features.login.impl.screens.onboarding_OnBoardingView_Night_3_en",20698,], +["features.login.impl.screens.onboarding_OnBoardingView_Day_4_en","features.login.impl.screens.onboarding_OnBoardingView_Night_4_en",20698,], +["features.login.impl.screens.onboarding_OnBoardingView_Day_5_en","features.login.impl.screens.onboarding_OnBoardingView_Night_5_en",20698,], +["features.login.impl.screens.onboarding_OnBoardingView_Day_6_en","features.login.impl.screens.onboarding_OnBoardingView_Night_6_en",20698,], +["features.login.impl.screens.onboarding_OnBoardingView_Day_7_en","features.login.impl.screens.onboarding_OnBoardingView_Night_7_en",20698,], +["features.login.impl.screens.onboarding_OnBoardingView_Day_8_en","features.login.impl.screens.onboarding_OnBoardingView_Night_8_en",20698,], ["libraries.designsystem.background_OnboardingBackground_Day_0_en","libraries.designsystem.background_OnboardingBackground_Night_0_en",0,], -["libraries.matrix.ui.components_OrganizationHeader_Day_0_en","libraries.matrix.ui.components_OrganizationHeader_Night_0_en",20675,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_0_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_0_en",20675,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_10_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_10_en",20675,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_11_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_11_en",20675,], +["libraries.matrix.ui.components_OrganizationHeader_Day_0_en","libraries.matrix.ui.components_OrganizationHeader_Night_0_en",20698,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_0_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_0_en",20698,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_10_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_10_en",20698,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_11_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_11_en",20698,], ["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",20675,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_2_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_2_en",20675,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_3_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_3_en",20675,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_4_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_4_en",20675,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_5_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_5_en",20675,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_6_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_6_en",20675,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_7_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_7_en",20675,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_8_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_8_en",20675,], -["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_9_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_9_en",20675,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_1_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_1_en",20698,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_2_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_2_en",20698,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_3_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_3_en",20698,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_4_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_4_en",20698,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_5_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_5_en",20698,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_6_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_6_en",20698,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_7_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_7_en",20698,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_8_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_8_en",20698,], +["features.verifysession.impl.outgoing_OutgoingVerificationView_Day_9_en","features.verifysession.impl.outgoing_OutgoingVerificationView_Night_9_en",20698,], ["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.mediaviewer.impl.local.pdf_PdfPagesErrorView_Day_0_en","libraries.mediaviewer.impl.local.pdf_PdfPagesErrorView_Night_0_en",20675,], -["features.rolesandpermissions.impl.roles_PendingMemberRowWithLongName_Day_0_en","features.rolesandpermissions.impl.roles_PendingMemberRowWithLongName_Night_0_en",20675,], -["libraries.permissions.api_PermissionsView_Day_0_en","libraries.permissions.api_PermissionsView_Night_0_en",20675,], -["libraries.permissions.api_PermissionsView_Day_1_en","libraries.permissions.api_PermissionsView_Night_1_en",20675,], -["libraries.permissions.api_PermissionsView_Day_2_en","libraries.permissions.api_PermissionsView_Night_2_en",20675,], -["libraries.permissions.api_PermissionsView_Day_3_en","libraries.permissions.api_PermissionsView_Night_3_en",20675,], -["features.lockscreen.impl.components_PinEntryTextField_Day_0_en","features.lockscreen.impl.components_PinEntryTextField_Night_0_en",0,], +["libraries.mediaviewer.impl.local.pdf_PdfPagesErrorView_Day_0_en","libraries.mediaviewer.impl.local.pdf_PdfPagesErrorView_Night_0_en",20698,], +["features.rolesandpermissions.impl.roles_PendingMemberRowWithLongName_Day_0_en","features.rolesandpermissions.impl.roles_PendingMemberRowWithLongName_Night_0_en",20698,], +["libraries.permissions.api_PermissionsView_Day_0_en","libraries.permissions.api_PermissionsView_Night_0_en",20698,], +["libraries.permissions.api_PermissionsView_Day_1_en","libraries.permissions.api_PermissionsView_Night_1_en",20698,], +["libraries.permissions.api_PermissionsView_Day_2_en","libraries.permissions.api_PermissionsView_Night_2_en",20698,], +["libraries.permissions.api_PermissionsView_Day_3_en","libraries.permissions.api_PermissionsView_Night_3_en",20698,], +["features.lockscreen.impl.components_PinEntryTextField_Day_0_en","features.lockscreen.impl.components_PinEntryTextField_Night_0_en",20698,], ["features.lockscreen.impl.unlock.keypad_PinKeypad_Day_0_en","features.lockscreen.impl.unlock.keypad_PinKeypad_Night_0_en",0,], -["features.lockscreen.impl.unlock_PinUnlockViewCompact_0_en","",20675,], -["features.lockscreen.impl.unlock_PinUnlockViewCompact_1_en","",20675,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_0_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_0_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_10_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_10_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_1_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_1_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_2_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_2_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_3_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_3_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_4_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_4_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_5_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_5_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_6_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_6_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_7_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_7_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_8_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_8_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_9_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_9_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_0_en","features.lockscreen.impl.unlock_PinUnlockView_Night_0_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_10_en","features.lockscreen.impl.unlock_PinUnlockView_Night_10_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_1_en","features.lockscreen.impl.unlock_PinUnlockView_Night_1_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_2_en","features.lockscreen.impl.unlock_PinUnlockView_Night_2_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_3_en","features.lockscreen.impl.unlock_PinUnlockView_Night_3_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_4_en","features.lockscreen.impl.unlock_PinUnlockView_Night_4_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_5_en","features.lockscreen.impl.unlock_PinUnlockView_Night_5_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_6_en","features.lockscreen.impl.unlock_PinUnlockView_Night_6_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_7_en","features.lockscreen.impl.unlock_PinUnlockView_Night_7_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_8_en","features.lockscreen.impl.unlock_PinUnlockView_Night_8_en",20675,], -["features.lockscreen.impl.unlock_PinUnlockView_Day_9_en","features.lockscreen.impl.unlock_PinUnlockView_Night_9_en",20675,], +["features.lockscreen.impl.unlock_PinUnlockViewCompact_0_en","",20698,], +["features.lockscreen.impl.unlock_PinUnlockViewCompact_1_en","",20698,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_0_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_0_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_10_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_10_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_1_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_1_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_2_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_2_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_3_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_3_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_4_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_4_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_5_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_5_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_6_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_6_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_7_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_7_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_8_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_8_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockViewInApp_Day_9_en","features.lockscreen.impl.unlock_PinUnlockViewInApp_Night_9_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_0_en","features.lockscreen.impl.unlock_PinUnlockView_Night_0_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_10_en","features.lockscreen.impl.unlock_PinUnlockView_Night_10_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_1_en","features.lockscreen.impl.unlock_PinUnlockView_Night_1_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_2_en","features.lockscreen.impl.unlock_PinUnlockView_Night_2_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_3_en","features.lockscreen.impl.unlock_PinUnlockView_Night_3_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_4_en","features.lockscreen.impl.unlock_PinUnlockView_Night_4_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_5_en","features.lockscreen.impl.unlock_PinUnlockView_Night_5_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_6_en","features.lockscreen.impl.unlock_PinUnlockView_Night_6_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_7_en","features.lockscreen.impl.unlock_PinUnlockView_Night_7_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_8_en","features.lockscreen.impl.unlock_PinUnlockView_Night_8_en",20698,], +["features.lockscreen.impl.unlock_PinUnlockView_Day_9_en","features.lockscreen.impl.unlock_PinUnlockView_Night_9_en",20698,], ["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",20675,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_1_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_1_en",20675,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_2_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_2_en",20675,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_3_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_3_en",20675,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_4_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_4_en",20675,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_5_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_5_en",20675,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_6_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_6_en",20675,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_7_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_7_en",20675,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_8_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_8_en",20675,], -["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_9_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_9_en",20675,], -["features.messages.impl.pinned.list_PinnedMessagesListView_Day_0_en","features.messages.impl.pinned.list_PinnedMessagesListView_Night_0_en",20675,], -["features.messages.impl.pinned.list_PinnedMessagesListView_Day_1_en","features.messages.impl.pinned.list_PinnedMessagesListView_Night_1_en",20675,], -["features.messages.impl.pinned.list_PinnedMessagesListView_Day_2_en","features.messages.impl.pinned.list_PinnedMessagesListView_Night_2_en",20675,], -["features.messages.impl.pinned.list_PinnedMessagesListView_Day_3_en","features.messages.impl.pinned.list_PinnedMessagesListView_Night_3_en",20675,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_10_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_10_en",20698,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_1_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_1_en",20698,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_2_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_2_en",20698,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_3_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_3_en",20698,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_4_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_4_en",20698,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_5_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_5_en",20698,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_6_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_6_en",20698,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_7_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_7_en",20698,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_8_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_8_en",20698,], +["features.messages.impl.pinned.banner_PinnedMessagesBannerView_Day_9_en","features.messages.impl.pinned.banner_PinnedMessagesBannerView_Night_9_en",20698,], +["features.messages.impl.pinned.list_PinnedMessagesListView_Day_0_en","features.messages.impl.pinned.list_PinnedMessagesListView_Night_0_en",20698,], +["features.messages.impl.pinned.list_PinnedMessagesListView_Day_1_en","features.messages.impl.pinned.list_PinnedMessagesListView_Night_1_en",20698,], +["features.messages.impl.pinned.list_PinnedMessagesListView_Day_2_en","features.messages.impl.pinned.list_PinnedMessagesListView_Night_2_en",20698,], +["features.messages.impl.pinned.list_PinnedMessagesListView_Day_3_en","features.messages.impl.pinned.list_PinnedMessagesListView_Night_3_en",20698,], ["libraries.designsystem.atomic.atoms_PlaceholderAtom_Day_0_en","libraries.designsystem.atomic.atoms_PlaceholderAtom_Night_0_en",0,], ["libraries.designsystem.atomic.atoms_PlaybackSpeedButton_Day_0_en","libraries.designsystem.atomic.atoms_PlaybackSpeedButton_Night_0_en",0,], -["features.poll.api.pollcontent_PollAnswerViewDisclosedNotSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewDisclosedNotSelected_Night_0_en",20675,], -["features.poll.api.pollcontent_PollAnswerViewDisclosedSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewDisclosedSelected_Night_0_en",20675,], -["features.poll.api.pollcontent_PollAnswerViewEndedSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewEndedSelected_Night_0_en",20675,], -["features.poll.api.pollcontent_PollAnswerViewEndedWinnerNotSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewEndedWinnerNotSelected_Night_0_en",20675,], -["features.poll.api.pollcontent_PollAnswerViewEndedWinnerSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewEndedWinnerSelected_Night_0_en",20675,], +["features.poll.api.pollcontent_PollAnswerViewDisclosedNotSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewDisclosedNotSelected_Night_0_en",20698,], +["features.poll.api.pollcontent_PollAnswerViewDisclosedSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewDisclosedSelected_Night_0_en",20698,], +["features.poll.api.pollcontent_PollAnswerViewEndedSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewEndedSelected_Night_0_en",20698,], +["features.poll.api.pollcontent_PollAnswerViewEndedWinnerNotSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewEndedWinnerNotSelected_Night_0_en",20698,], +["features.poll.api.pollcontent_PollAnswerViewEndedWinnerSelected_Day_0_en","features.poll.api.pollcontent_PollAnswerViewEndedWinnerSelected_Night_0_en",20698,], ["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",20675,], -["features.poll.api.pollcontent_PollContentViewCreatorEnded_Day_0_en","features.poll.api.pollcontent_PollContentViewCreatorEnded_Night_0_en",20675,], -["features.poll.api.pollcontent_PollContentViewCreator_Day_0_en","features.poll.api.pollcontent_PollContentViewCreator_Night_0_en",20675,], -["features.poll.api.pollcontent_PollContentViewDisclosed_Day_0_en","features.poll.api.pollcontent_PollContentViewDisclosed_Night_0_en",20675,], -["features.poll.api.pollcontent_PollContentViewEnded_Day_0_en","features.poll.api.pollcontent_PollContentViewEnded_Night_0_en",20675,], -["features.poll.api.pollcontent_PollContentViewUndisclosed_Day_0_en","features.poll.api.pollcontent_PollContentViewUndisclosed_Night_0_en",20675,], -["features.poll.impl.history_PollHistoryView_Day_0_en","features.poll.impl.history_PollHistoryView_Night_0_en",20675,], -["features.poll.impl.history_PollHistoryView_Day_1_en","features.poll.impl.history_PollHistoryView_Night_1_en",20675,], -["features.poll.impl.history_PollHistoryView_Day_2_en","features.poll.impl.history_PollHistoryView_Night_2_en",20675,], -["features.poll.impl.history_PollHistoryView_Day_3_en","features.poll.impl.history_PollHistoryView_Night_3_en",20675,], -["features.poll.impl.history_PollHistoryView_Day_4_en","features.poll.impl.history_PollHistoryView_Night_4_en",20675,], +["features.poll.api.pollcontent_PollContentViewCreatorEditable_Day_0_en","features.poll.api.pollcontent_PollContentViewCreatorEditable_Night_0_en",20698,], +["features.poll.api.pollcontent_PollContentViewCreatorEnded_Day_0_en","features.poll.api.pollcontent_PollContentViewCreatorEnded_Night_0_en",20698,], +["features.poll.api.pollcontent_PollContentViewCreator_Day_0_en","features.poll.api.pollcontent_PollContentViewCreator_Night_0_en",20698,], +["features.poll.api.pollcontent_PollContentViewDisclosed_Day_0_en","features.poll.api.pollcontent_PollContentViewDisclosed_Night_0_en",20698,], +["features.poll.api.pollcontent_PollContentViewEnded_Day_0_en","features.poll.api.pollcontent_PollContentViewEnded_Night_0_en",20698,], +["features.poll.api.pollcontent_PollContentViewMultipleSelection_Day_0_en","features.poll.api.pollcontent_PollContentViewMultipleSelection_Night_0_en",20698,], +["features.poll.api.pollcontent_PollContentViewUndisclosed_Day_0_en","features.poll.api.pollcontent_PollContentViewUndisclosed_Night_0_en",20698,], +["features.poll.impl.history_PollHistoryView_Day_0_en","features.poll.impl.history_PollHistoryView_Night_0_en",20698,], +["features.poll.impl.history_PollHistoryView_Day_1_en","features.poll.impl.history_PollHistoryView_Night_1_en",20698,], +["features.poll.impl.history_PollHistoryView_Day_2_en","features.poll.impl.history_PollHistoryView_Night_2_en",20698,], +["features.poll.impl.history_PollHistoryView_Day_3_en","features.poll.impl.history_PollHistoryView_Night_3_en",20698,], +["features.poll.impl.history_PollHistoryView_Day_4_en","features.poll.impl.history_PollHistoryView_Night_4_en",20698,], ["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,], @@ -951,231 +960,231 @@ 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","",20675,], -["features.preferences.impl.root_PreferencesRootViewDark_1_en","",20675,], -["features.preferences.impl.root_PreferencesRootViewDark_2_en","",20675,], -["features.preferences.impl.root_PreferencesRootViewDark_3_en","",20675,], -["features.preferences.impl.root_PreferencesRootViewDark_4_en","",20675,], -["features.preferences.impl.root_PreferencesRootViewDark_5_en","",20675,], -["features.preferences.impl.root_PreferencesRootViewDark_6_en","",20675,], -["features.preferences.impl.root_PreferencesRootViewLight_0_en","",20675,], -["features.preferences.impl.root_PreferencesRootViewLight_1_en","",20675,], -["features.preferences.impl.root_PreferencesRootViewLight_2_en","",20675,], -["features.preferences.impl.root_PreferencesRootViewLight_3_en","",20675,], -["features.preferences.impl.root_PreferencesRootViewLight_4_en","",20675,], -["features.preferences.impl.root_PreferencesRootViewLight_5_en","",20675,], -["features.preferences.impl.root_PreferencesRootViewLight_6_en","",20675,], +["features.preferences.impl.root_PreferencesRootViewDark_0_en","",20698,], +["features.preferences.impl.root_PreferencesRootViewDark_1_en","",20698,], +["features.preferences.impl.root_PreferencesRootViewDark_2_en","",20698,], +["features.preferences.impl.root_PreferencesRootViewDark_3_en","",20698,], +["features.preferences.impl.root_PreferencesRootViewDark_4_en","",20698,], +["features.preferences.impl.root_PreferencesRootViewDark_5_en","",20698,], +["features.preferences.impl.root_PreferencesRootViewDark_6_en","",20698,], +["features.preferences.impl.root_PreferencesRootViewLight_0_en","",20698,], +["features.preferences.impl.root_PreferencesRootViewLight_1_en","",20698,], +["features.preferences.impl.root_PreferencesRootViewLight_2_en","",20698,], +["features.preferences.impl.root_PreferencesRootViewLight_3_en","",20698,], +["features.preferences.impl.root_PreferencesRootViewLight_4_en","",20698,], +["features.preferences.impl.root_PreferencesRootViewLight_5_en","",20698,], +["features.preferences.impl.root_PreferencesRootViewLight_6_en","",20698,], ["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","",20675,], -["libraries.designsystem.components_ProgressDialogWithContent_Day_0_en","libraries.designsystem.components_ProgressDialogWithContent_Night_0_en",20675,], +["libraries.designsystem.components_ProgressDialogContent_Dialogs_en","",20698,], +["libraries.designsystem.components_ProgressDialogWithContent_Day_0_en","libraries.designsystem.components_ProgressDialogWithContent_Night_0_en",20698,], ["libraries.designsystem.components_ProgressDialogWithTextAndContent_Day_0_en","libraries.designsystem.components_ProgressDialogWithTextAndContent_Night_0_en",0,], -["libraries.designsystem.components_ProgressDialog_Day_0_en","libraries.designsystem.components_ProgressDialog_Night_0_en",20675,], -["features.messages.impl.timeline.protection_ProtectedView_Day_0_en","features.messages.impl.timeline.protection_ProtectedView_Night_0_en",20675,], -["features.messages.impl.timeline.protection_ProtectedView_Day_1_en","features.messages.impl.timeline.protection_ProtectedView_Night_1_en",20675,], -["features.messages.impl.timeline.protection_ProtectedView_Day_2_en","features.messages.impl.timeline.protection_ProtectedView_Night_2_en",20675,], -["features.messages.impl.timeline.protection_ProtectedView_Day_3_en","features.messages.impl.timeline.protection_ProtectedView_Night_3_en",20675,], -["libraries.troubleshoot.impl.history_PushHistoryView_Day_0_en","libraries.troubleshoot.impl.history_PushHistoryView_Night_0_en",20675,], -["libraries.troubleshoot.impl.history_PushHistoryView_Day_1_en","libraries.troubleshoot.impl.history_PushHistoryView_Night_1_en",20675,], -["libraries.troubleshoot.impl.history_PushHistoryView_Day_2_en","libraries.troubleshoot.impl.history_PushHistoryView_Night_2_en",20675,], -["libraries.troubleshoot.impl.history_PushHistoryView_Day_3_en","libraries.troubleshoot.impl.history_PushHistoryView_Night_3_en",20675,], -["features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_0_en","features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Night_0_en",20675,], -["features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_1_en","features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Night_1_en",20675,], -["features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_2_en","features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Night_2_en",20675,], -["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_0_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_0_en",20675,], -["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_1_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_1_en",20675,], -["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_2_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_2_en",20675,], -["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_3_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_3_en",20675,], -["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_4_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_4_en",20675,], -["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_5_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_5_en",20675,], -["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_6_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_6_en",20675,], -["features.login.impl.screens.qrcode.intro_QrCodeIntroView_Day_0_en","features.login.impl.screens.qrcode.intro_QrCodeIntroView_Night_0_en",20675,], -["features.login.impl.screens.qrcode.intro_QrCodeIntroView_Day_1_en","features.login.impl.screens.qrcode.intro_QrCodeIntroView_Night_1_en",20675,], -["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_0_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_0_en",20675,], -["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_1_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_1_en",20675,], -["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_2_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_2_en",20675,], -["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_3_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_3_en",20675,], -["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_4_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_4_en",20675,], -["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_5_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_5_en",20675,], +["libraries.designsystem.components_ProgressDialog_Day_0_en","libraries.designsystem.components_ProgressDialog_Night_0_en",20698,], +["features.messages.impl.timeline.protection_ProtectedView_Day_0_en","features.messages.impl.timeline.protection_ProtectedView_Night_0_en",20698,], +["features.messages.impl.timeline.protection_ProtectedView_Day_1_en","features.messages.impl.timeline.protection_ProtectedView_Night_1_en",20698,], +["features.messages.impl.timeline.protection_ProtectedView_Day_2_en","features.messages.impl.timeline.protection_ProtectedView_Night_2_en",20698,], +["features.messages.impl.timeline.protection_ProtectedView_Day_3_en","features.messages.impl.timeline.protection_ProtectedView_Night_3_en",20698,], +["libraries.troubleshoot.impl.history_PushHistoryView_Day_0_en","libraries.troubleshoot.impl.history_PushHistoryView_Night_0_en",20698,], +["libraries.troubleshoot.impl.history_PushHistoryView_Day_1_en","libraries.troubleshoot.impl.history_PushHistoryView_Night_1_en",20698,], +["libraries.troubleshoot.impl.history_PushHistoryView_Day_2_en","libraries.troubleshoot.impl.history_PushHistoryView_Night_2_en",20698,], +["libraries.troubleshoot.impl.history_PushHistoryView_Day_3_en","libraries.troubleshoot.impl.history_PushHistoryView_Night_3_en",20698,], +["features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_0_en","features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Night_0_en",20698,], +["features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_1_en","features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Night_1_en",20698,], +["features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Day_2_en","features.login.impl.screens.qrcode.confirmation_QrCodeConfirmationView_Night_2_en",20698,], +["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_0_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_0_en",20698,], +["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_1_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_1_en",20698,], +["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_2_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_2_en",20698,], +["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_3_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_3_en",20698,], +["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_4_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_4_en",20698,], +["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_5_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_5_en",20698,], +["features.login.impl.screens.qrcode.error_QrCodeErrorView_Day_6_en","features.login.impl.screens.qrcode.error_QrCodeErrorView_Night_6_en",20698,], +["features.login.impl.screens.qrcode.intro_QrCodeIntroView_Day_0_en","features.login.impl.screens.qrcode.intro_QrCodeIntroView_Night_0_en",20698,], +["features.login.impl.screens.qrcode.intro_QrCodeIntroView_Day_1_en","features.login.impl.screens.qrcode.intro_QrCodeIntroView_Night_1_en",20698,], +["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_0_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_0_en",20698,], +["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_1_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_1_en",20698,], +["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_2_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_2_en",20698,], +["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_3_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_3_en",20698,], +["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_4_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_4_en",20698,], +["features.login.impl.screens.qrcode.scan_QrCodeScanView_Day_5_en","features.login.impl.screens.qrcode.scan_QrCodeScanView_Night_5_en",20698,], ["libraries.qrcode_QrCodeView_en","",0,], ["libraries.designsystem.theme.components_RadioButton_Toggles_en","",0,], -["features.rageshake.api.detection_RageshakeDialogContent_Day_0_en","features.rageshake.api.detection_RageshakeDialogContent_Night_0_en",20675,], -["features.rageshake.api.preferences_RageshakePreferencesView_Day_0_en","features.rageshake.api.preferences_RageshakePreferencesView_Night_0_en",20675,], +["features.rageshake.api.detection_RageshakeDialogContent_Day_0_en","features.rageshake.api.detection_RageshakeDialogContent_Night_0_en",20698,], +["features.rageshake.api.preferences_RageshakePreferencesView_Day_0_en","features.rageshake.api.preferences_RageshakePreferencesView_Night_0_en",20698,], ["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",20675,], -["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_1_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_1_en",20675,], -["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_2_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_2_en",20675,], -["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_3_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_3_en",20675,], -["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_4_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_4_en",20675,], -["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_5_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_5_en",20675,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_0_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_0_en",20675,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_10_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_10_en",20675,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_11_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_11_en",20675,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_12_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_12_en",20675,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_13_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_13_en",20675,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_14_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_14_en",20675,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_1_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_1_en",20675,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_2_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_2_en",20675,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_3_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_3_en",20675,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_4_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_4_en",20675,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_5_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_5_en",20675,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_6_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_6_en",20675,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_7_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_7_en",20675,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_8_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_8_en",20675,], -["features.securebackup.impl.setup.views_RecoveryKeyView_Day_9_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_9_en",20675,], +["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_0_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_0_en",20698,], +["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_1_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_1_en",20698,], +["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_2_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_2_en",20698,], +["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_3_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_3_en",20698,], +["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_4_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_4_en",20698,], +["features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Day_5_en","features.messages.impl.timeline.components.receipt.bottomsheet_ReadReceiptBottomSheet_Night_5_en",20698,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_0_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_0_en",20698,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_10_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_10_en",20698,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_11_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_11_en",20698,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_12_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_12_en",20698,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_13_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_13_en",20698,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_14_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_14_en",20698,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_1_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_1_en",20698,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_2_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_2_en",20698,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_3_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_3_en",20698,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_4_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_4_en",20698,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_5_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_5_en",20698,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_6_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_6_en",20698,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_7_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_7_en",20698,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_8_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_8_en",20698,], +["features.securebackup.impl.setup.views_RecoveryKeyView_Day_9_en","features.securebackup.impl.setup.views_RecoveryKeyView_Night_9_en",20698,], ["libraries.designsystem.atomic.atoms_RedIndicatorAtom_Day_0_en","libraries.designsystem.atomic.atoms_RedIndicatorAtom_Night_0_en",0,], -["features.location.api_RenderingMapsNotSupportedDialog_Day_0_en","features.location.api_RenderingMapsNotSupportedDialog_Night_0_en",20675,], +["features.location.api_RenderingMapsNotSupportedDialog_Day_0_en","features.location.api_RenderingMapsNotSupportedDialog_Night_0_en",20698,], ["features.messages.impl.timeline.components_ReplySwipeIndicator_Day_0_en","features.messages.impl.timeline.components_ReplySwipeIndicator_Night_0_en",0,], -["libraries.matrix.ui.messages.reply_ReplyToInvalidContent_Day_0_en","libraries.matrix.ui.messages.reply_ReplyToInvalidContent_Night_0_en",0,], -["libraries.matrix.ui.messages.reply_ReplyToNotFoundContent_Day_0_en","libraries.matrix.ui.messages.reply_ReplyToNotFoundContent_Night_0_en",0,], -["features.messages.impl.report_ReportMessageView_Day_0_en","features.messages.impl.report_ReportMessageView_Night_0_en",20675,], -["features.messages.impl.report_ReportMessageView_Day_1_en","features.messages.impl.report_ReportMessageView_Night_1_en",20675,], -["features.messages.impl.report_ReportMessageView_Day_2_en","features.messages.impl.report_ReportMessageView_Night_2_en",20675,], -["features.messages.impl.report_ReportMessageView_Day_3_en","features.messages.impl.report_ReportMessageView_Night_3_en",20675,], -["features.messages.impl.report_ReportMessageView_Day_4_en","features.messages.impl.report_ReportMessageView_Night_4_en",20675,], -["features.messages.impl.report_ReportMessageView_Day_5_en","features.messages.impl.report_ReportMessageView_Night_5_en",20675,], -["features.reportroom.impl_ReportRoomView_Day_0_en","features.reportroom.impl_ReportRoomView_Night_0_en",20675,], -["features.reportroom.impl_ReportRoomView_Day_1_en","features.reportroom.impl_ReportRoomView_Night_1_en",20675,], -["features.reportroom.impl_ReportRoomView_Day_2_en","features.reportroom.impl_ReportRoomView_Night_2_en",20675,], -["features.reportroom.impl_ReportRoomView_Day_3_en","features.reportroom.impl_ReportRoomView_Night_3_en",20675,], -["features.reportroom.impl_ReportRoomView_Day_4_en","features.reportroom.impl_ReportRoomView_Night_4_en",20675,], -["features.securebackup.impl.reset.password_ResetIdentityPasswordView_Day_0_en","features.securebackup.impl.reset.password_ResetIdentityPasswordView_Night_0_en",20675,], -["features.securebackup.impl.reset.password_ResetIdentityPasswordView_Day_1_en","features.securebackup.impl.reset.password_ResetIdentityPasswordView_Night_1_en",20675,], -["features.securebackup.impl.reset.password_ResetIdentityPasswordView_Day_2_en","features.securebackup.impl.reset.password_ResetIdentityPasswordView_Night_2_en",20675,], -["features.securebackup.impl.reset.password_ResetIdentityPasswordView_Day_3_en","features.securebackup.impl.reset.password_ResetIdentityPasswordView_Night_3_en",20675,], -["features.securebackup.impl.reset.root_ResetIdentityRootView_Day_0_en","features.securebackup.impl.reset.root_ResetIdentityRootView_Night_0_en",20675,], -["features.securebackup.impl.reset.root_ResetIdentityRootView_Day_1_en","features.securebackup.impl.reset.root_ResetIdentityRootView_Night_1_en",20675,], +["libraries.matrix.ui.messages.reply_ReplyToInvalidContent_Day_0_en","libraries.matrix.ui.messages.reply_ReplyToInvalidContent_Night_0_en",20698,], +["libraries.matrix.ui.messages.reply_ReplyToNotFoundContent_Day_0_en","libraries.matrix.ui.messages.reply_ReplyToNotFoundContent_Night_0_en",20698,], +["features.messages.impl.report_ReportMessageView_Day_0_en","features.messages.impl.report_ReportMessageView_Night_0_en",20698,], +["features.messages.impl.report_ReportMessageView_Day_1_en","features.messages.impl.report_ReportMessageView_Night_1_en",20698,], +["features.messages.impl.report_ReportMessageView_Day_2_en","features.messages.impl.report_ReportMessageView_Night_2_en",20698,], +["features.messages.impl.report_ReportMessageView_Day_3_en","features.messages.impl.report_ReportMessageView_Night_3_en",20698,], +["features.messages.impl.report_ReportMessageView_Day_4_en","features.messages.impl.report_ReportMessageView_Night_4_en",20698,], +["features.messages.impl.report_ReportMessageView_Day_5_en","features.messages.impl.report_ReportMessageView_Night_5_en",20698,], +["features.reportroom.impl_ReportRoomView_Day_0_en","features.reportroom.impl_ReportRoomView_Night_0_en",20698,], +["features.reportroom.impl_ReportRoomView_Day_1_en","features.reportroom.impl_ReportRoomView_Night_1_en",20698,], +["features.reportroom.impl_ReportRoomView_Day_2_en","features.reportroom.impl_ReportRoomView_Night_2_en",20698,], +["features.reportroom.impl_ReportRoomView_Day_3_en","features.reportroom.impl_ReportRoomView_Night_3_en",20698,], +["features.reportroom.impl_ReportRoomView_Day_4_en","features.reportroom.impl_ReportRoomView_Night_4_en",20698,], +["features.securebackup.impl.reset.password_ResetIdentityPasswordView_Day_0_en","features.securebackup.impl.reset.password_ResetIdentityPasswordView_Night_0_en",20698,], +["features.securebackup.impl.reset.password_ResetIdentityPasswordView_Day_1_en","features.securebackup.impl.reset.password_ResetIdentityPasswordView_Night_1_en",20698,], +["features.securebackup.impl.reset.password_ResetIdentityPasswordView_Day_2_en","features.securebackup.impl.reset.password_ResetIdentityPasswordView_Night_2_en",20698,], +["features.securebackup.impl.reset.password_ResetIdentityPasswordView_Day_3_en","features.securebackup.impl.reset.password_ResetIdentityPasswordView_Night_3_en",20698,], +["features.securebackup.impl.reset.root_ResetIdentityRootView_Day_0_en","features.securebackup.impl.reset.root_ResetIdentityRootView_Night_0_en",20698,], +["features.securebackup.impl.reset.root_ResetIdentityRootView_Day_1_en","features.securebackup.impl.reset.root_ResetIdentityRootView_Night_1_en",20698,], ["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",20675,], -["features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_2_en","features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Night_2_en",20675,], -["libraries.designsystem.components.dialogs_RetryDialogContent_Dialogs_en","",20675,], -["libraries.designsystem.components.dialogs_RetryDialog_Day_0_en","libraries.designsystem.components.dialogs_RetryDialog_Night_0_en",20675,], -["features.rolesandpermissions.impl.root_RolesAndPermissionsView_Day_0_en","features.rolesandpermissions.impl.root_RolesAndPermissionsView_Night_0_en",20675,], -["features.rolesandpermissions.impl.root_RolesAndPermissionsView_Day_1_en","features.rolesandpermissions.impl.root_RolesAndPermissionsView_Night_1_en",20675,], -["features.rolesandpermissions.impl.root_RolesAndPermissionsView_Day_2_en","features.rolesandpermissions.impl.root_RolesAndPermissionsView_Night_2_en",20675,], -["features.rolesandpermissions.impl.root_RolesAndPermissionsView_Day_3_en","features.rolesandpermissions.impl.root_RolesAndPermissionsView_Night_3_en",20675,], -["features.rolesandpermissions.impl.root_RolesAndPermissionsView_Day_4_en","features.rolesandpermissions.impl.root_RolesAndPermissionsView_Night_4_en",20675,], -["features.rolesandpermissions.impl.root_RolesAndPermissionsView_Day_5_en","features.rolesandpermissions.impl.root_RolesAndPermissionsView_Night_5_en",20675,], -["features.rolesandpermissions.impl.root_RolesAndPermissionsView_Day_6_en","features.rolesandpermissions.impl.root_RolesAndPermissionsView_Night_6_en",20675,], -["features.rolesandpermissions.impl.root_RolesAndPermissionsView_Day_7_en","features.rolesandpermissions.impl.root_RolesAndPermissionsView_Night_7_en",20675,], -["features.rolesandpermissions.impl.root_RolesAndPermissionsView_Day_8_en","features.rolesandpermissions.impl.root_RolesAndPermissionsView_Night_8_en",20675,], +["features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_1_en","features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Night_1_en",20698,], +["features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_2_en","features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Night_2_en",20698,], +["libraries.designsystem.components.dialogs_RetryDialogContent_Dialogs_en","",20698,], +["libraries.designsystem.components.dialogs_RetryDialog_Day_0_en","libraries.designsystem.components.dialogs_RetryDialog_Night_0_en",20698,], +["features.rolesandpermissions.impl.root_RolesAndPermissionsView_Day_0_en","features.rolesandpermissions.impl.root_RolesAndPermissionsView_Night_0_en",20698,], +["features.rolesandpermissions.impl.root_RolesAndPermissionsView_Day_1_en","features.rolesandpermissions.impl.root_RolesAndPermissionsView_Night_1_en",20698,], +["features.rolesandpermissions.impl.root_RolesAndPermissionsView_Day_2_en","features.rolesandpermissions.impl.root_RolesAndPermissionsView_Night_2_en",20698,], +["features.rolesandpermissions.impl.root_RolesAndPermissionsView_Day_3_en","features.rolesandpermissions.impl.root_RolesAndPermissionsView_Night_3_en",20698,], +["features.rolesandpermissions.impl.root_RolesAndPermissionsView_Day_4_en","features.rolesandpermissions.impl.root_RolesAndPermissionsView_Night_4_en",20698,], +["features.rolesandpermissions.impl.root_RolesAndPermissionsView_Day_5_en","features.rolesandpermissions.impl.root_RolesAndPermissionsView_Night_5_en",20698,], +["features.rolesandpermissions.impl.root_RolesAndPermissionsView_Day_6_en","features.rolesandpermissions.impl.root_RolesAndPermissionsView_Night_6_en",20698,], +["features.rolesandpermissions.impl.root_RolesAndPermissionsView_Day_7_en","features.rolesandpermissions.impl.root_RolesAndPermissionsView_Night_7_en",20698,], +["features.rolesandpermissions.impl.root_RolesAndPermissionsView_Day_8_en","features.rolesandpermissions.impl.root_RolesAndPermissionsView_Night_8_en",20698,], ["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",20675,], -["features.roomaliasresolver.impl_RoomAliasResolverView_Day_2_en","features.roomaliasresolver.impl_RoomAliasResolverView_Night_2_en",20675,], +["features.roomaliasresolver.impl_RoomAliasResolverView_Day_1_en","features.roomaliasresolver.impl_RoomAliasResolverView_Night_1_en",20698,], +["features.roomaliasresolver.impl_RoomAliasResolverView_Day_2_en","features.roomaliasresolver.impl_RoomAliasResolverView_Night_2_en",20698,], ["features.roomdetails.impl_RoomDetailsA11y_en","",0,], -["features.roomdetails.impl_RoomDetailsDark_0_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_10_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_11_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_12_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_13_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_14_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_15_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_16_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_17_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_18_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_19_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_1_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_20_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_21_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_22_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_2_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_3_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_4_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_5_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_6_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_7_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_8_en","",20675,], -["features.roomdetails.impl_RoomDetailsDark_9_en","",20675,], -["features.roomdetailsedit.impl_RoomDetailsEditView_Day_0_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_0_en",20675,], -["features.roomdetailsedit.impl_RoomDetailsEditView_Day_1_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_1_en",20675,], -["features.roomdetailsedit.impl_RoomDetailsEditView_Day_2_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_2_en",20675,], -["features.roomdetailsedit.impl_RoomDetailsEditView_Day_3_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_3_en",20675,], -["features.roomdetailsedit.impl_RoomDetailsEditView_Day_4_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_4_en",20675,], -["features.roomdetailsedit.impl_RoomDetailsEditView_Day_5_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_5_en",20675,], -["features.roomdetailsedit.impl_RoomDetailsEditView_Day_6_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_6_en",20675,], -["features.roomdetailsedit.impl_RoomDetailsEditView_Day_7_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_7_en",20675,], -["features.roomdetailsedit.impl_RoomDetailsEditView_Day_8_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_8_en",20675,], -["features.roomdetailsedit.impl_RoomDetailsEditView_Day_9_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_9_en",20675,], -["features.roomdetails.impl_RoomDetails_0_en","",20675,], -["features.roomdetails.impl_RoomDetails_10_en","",20675,], -["features.roomdetails.impl_RoomDetails_11_en","",20675,], -["features.roomdetails.impl_RoomDetails_12_en","",20675,], -["features.roomdetails.impl_RoomDetails_13_en","",20675,], -["features.roomdetails.impl_RoomDetails_14_en","",20675,], -["features.roomdetails.impl_RoomDetails_15_en","",20675,], -["features.roomdetails.impl_RoomDetails_16_en","",20675,], -["features.roomdetails.impl_RoomDetails_17_en","",20675,], -["features.roomdetails.impl_RoomDetails_18_en","",20675,], -["features.roomdetails.impl_RoomDetails_19_en","",20675,], -["features.roomdetails.impl_RoomDetails_1_en","",20675,], -["features.roomdetails.impl_RoomDetails_20_en","",20675,], -["features.roomdetails.impl_RoomDetails_21_en","",20675,], -["features.roomdetails.impl_RoomDetails_22_en","",20675,], -["features.roomdetails.impl_RoomDetails_2_en","",20675,], -["features.roomdetails.impl_RoomDetails_3_en","",20675,], -["features.roomdetails.impl_RoomDetails_4_en","",20675,], -["features.roomdetails.impl_RoomDetails_5_en","",20675,], -["features.roomdetails.impl_RoomDetails_6_en","",20675,], -["features.roomdetails.impl_RoomDetails_7_en","",20675,], -["features.roomdetails.impl_RoomDetails_8_en","",20675,], -["features.roomdetails.impl_RoomDetails_9_en","",20675,], -["features.roomdirectory.impl.root_RoomDirectoryView_Day_0_en","features.roomdirectory.impl.root_RoomDirectoryView_Night_0_en",20675,], -["features.roomdirectory.impl.root_RoomDirectoryView_Day_1_en","features.roomdirectory.impl.root_RoomDirectoryView_Night_1_en",20675,], -["features.roomdirectory.impl.root_RoomDirectoryView_Day_2_en","features.roomdirectory.impl.root_RoomDirectoryView_Night_2_en",20675,], -["features.roomdetails.impl.invite_RoomInviteMembersView_Day_0_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_0_en",20675,], -["features.roomdetails.impl.invite_RoomInviteMembersView_Day_1_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_1_en",20675,], -["features.roomdetails.impl.invite_RoomInviteMembersView_Day_2_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_2_en",20675,], -["features.roomdetails.impl.invite_RoomInviteMembersView_Day_3_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_3_en",20675,], -["features.home.impl.components_RoomListContentView_Day_0_en","features.home.impl.components_RoomListContentView_Night_0_en",20675,], -["features.home.impl.components_RoomListContentView_Day_1_en","features.home.impl.components_RoomListContentView_Night_1_en",20675,], +["features.roomdetails.impl_RoomDetailsDark_0_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_10_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_11_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_12_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_13_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_14_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_15_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_16_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_17_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_18_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_19_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_1_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_20_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_21_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_22_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_2_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_3_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_4_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_5_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_6_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_7_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_8_en","",20698,], +["features.roomdetails.impl_RoomDetailsDark_9_en","",20698,], +["features.roomdetailsedit.impl_RoomDetailsEditView_Day_0_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_0_en",20698,], +["features.roomdetailsedit.impl_RoomDetailsEditView_Day_1_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_1_en",20698,], +["features.roomdetailsedit.impl_RoomDetailsEditView_Day_2_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_2_en",20698,], +["features.roomdetailsedit.impl_RoomDetailsEditView_Day_3_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_3_en",20698,], +["features.roomdetailsedit.impl_RoomDetailsEditView_Day_4_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_4_en",20698,], +["features.roomdetailsedit.impl_RoomDetailsEditView_Day_5_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_5_en",20698,], +["features.roomdetailsedit.impl_RoomDetailsEditView_Day_6_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_6_en",20698,], +["features.roomdetailsedit.impl_RoomDetailsEditView_Day_7_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_7_en",20698,], +["features.roomdetailsedit.impl_RoomDetailsEditView_Day_8_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_8_en",20698,], +["features.roomdetailsedit.impl_RoomDetailsEditView_Day_9_en","features.roomdetailsedit.impl_RoomDetailsEditView_Night_9_en",20698,], +["features.roomdetails.impl_RoomDetails_0_en","",20698,], +["features.roomdetails.impl_RoomDetails_10_en","",20698,], +["features.roomdetails.impl_RoomDetails_11_en","",20698,], +["features.roomdetails.impl_RoomDetails_12_en","",20698,], +["features.roomdetails.impl_RoomDetails_13_en","",20698,], +["features.roomdetails.impl_RoomDetails_14_en","",20698,], +["features.roomdetails.impl_RoomDetails_15_en","",20698,], +["features.roomdetails.impl_RoomDetails_16_en","",20698,], +["features.roomdetails.impl_RoomDetails_17_en","",20698,], +["features.roomdetails.impl_RoomDetails_18_en","",20698,], +["features.roomdetails.impl_RoomDetails_19_en","",20698,], +["features.roomdetails.impl_RoomDetails_1_en","",20698,], +["features.roomdetails.impl_RoomDetails_20_en","",20698,], +["features.roomdetails.impl_RoomDetails_21_en","",20698,], +["features.roomdetails.impl_RoomDetails_22_en","",20698,], +["features.roomdetails.impl_RoomDetails_2_en","",20698,], +["features.roomdetails.impl_RoomDetails_3_en","",20698,], +["features.roomdetails.impl_RoomDetails_4_en","",20698,], +["features.roomdetails.impl_RoomDetails_5_en","",20698,], +["features.roomdetails.impl_RoomDetails_6_en","",20698,], +["features.roomdetails.impl_RoomDetails_7_en","",20698,], +["features.roomdetails.impl_RoomDetails_8_en","",20698,], +["features.roomdetails.impl_RoomDetails_9_en","",20698,], +["features.roomdirectory.impl.root_RoomDirectoryView_Day_0_en","features.roomdirectory.impl.root_RoomDirectoryView_Night_0_en",20698,], +["features.roomdirectory.impl.root_RoomDirectoryView_Day_1_en","features.roomdirectory.impl.root_RoomDirectoryView_Night_1_en",20698,], +["features.roomdirectory.impl.root_RoomDirectoryView_Day_2_en","features.roomdirectory.impl.root_RoomDirectoryView_Night_2_en",20698,], +["features.roomdetails.impl.invite_RoomInviteMembersView_Day_0_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_0_en",20698,], +["features.roomdetails.impl.invite_RoomInviteMembersView_Day_1_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_1_en",20698,], +["features.roomdetails.impl.invite_RoomInviteMembersView_Day_2_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_2_en",20698,], +["features.roomdetails.impl.invite_RoomInviteMembersView_Day_3_en","features.roomdetails.impl.invite_RoomInviteMembersView_Night_3_en",20698,], +["features.home.impl.components_RoomListContentView_Day_0_en","features.home.impl.components_RoomListContentView_Night_0_en",20698,], +["features.home.impl.components_RoomListContentView_Day_1_en","features.home.impl.components_RoomListContentView_Night_1_en",20698,], ["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",20675,], -["features.home.impl.components_RoomListContentView_Day_4_en","features.home.impl.components_RoomListContentView_Night_4_en",20675,], -["features.home.impl.components_RoomListContentView_Day_5_en","features.home.impl.components_RoomListContentView_Night_5_en",20675,], -["features.home.impl.roomlist_RoomListContextMenu_Day_0_en","features.home.impl.roomlist_RoomListContextMenu_Night_0_en",20675,], -["features.home.impl.roomlist_RoomListContextMenu_Day_1_en","features.home.impl.roomlist_RoomListContextMenu_Night_1_en",20675,], -["features.home.impl.roomlist_RoomListContextMenu_Day_2_en","features.home.impl.roomlist_RoomListContextMenu_Night_2_en",20675,], -["features.home.impl.roomlist_RoomListDeclineInviteMenu_Day_0_en","features.home.impl.roomlist_RoomListDeclineInviteMenu_Night_0_en",20675,], -["features.home.impl.roomlist_RoomListDeclineInviteMenu_Day_1_en","features.home.impl.roomlist_RoomListDeclineInviteMenu_Night_1_en",20675,], -["features.home.impl.roomlist_RoomListDeclineInviteMenu_Day_2_en","features.home.impl.roomlist_RoomListDeclineInviteMenu_Night_2_en",20675,], -["features.home.impl.filters_RoomListFiltersView_Day_0_en","features.home.impl.filters_RoomListFiltersView_Night_0_en",20675,], -["features.home.impl.filters_RoomListFiltersView_Day_1_en","features.home.impl.filters_RoomListFiltersView_Night_1_en",20675,], +["features.home.impl.components_RoomListContentView_Day_3_en","features.home.impl.components_RoomListContentView_Night_3_en",20698,], +["features.home.impl.components_RoomListContentView_Day_4_en","features.home.impl.components_RoomListContentView_Night_4_en",20698,], +["features.home.impl.components_RoomListContentView_Day_5_en","features.home.impl.components_RoomListContentView_Night_5_en",20698,], +["features.home.impl.roomlist_RoomListContextMenu_Day_0_en","features.home.impl.roomlist_RoomListContextMenu_Night_0_en",20698,], +["features.home.impl.roomlist_RoomListContextMenu_Day_1_en","features.home.impl.roomlist_RoomListContextMenu_Night_1_en",20698,], +["features.home.impl.roomlist_RoomListContextMenu_Day_2_en","features.home.impl.roomlist_RoomListContextMenu_Night_2_en",20698,], +["features.home.impl.roomlist_RoomListDeclineInviteMenu_Day_0_en","features.home.impl.roomlist_RoomListDeclineInviteMenu_Night_0_en",20698,], +["features.home.impl.roomlist_RoomListDeclineInviteMenu_Day_1_en","features.home.impl.roomlist_RoomListDeclineInviteMenu_Night_1_en",20698,], +["features.home.impl.roomlist_RoomListDeclineInviteMenu_Day_2_en","features.home.impl.roomlist_RoomListDeclineInviteMenu_Night_2_en",20698,], +["features.home.impl.filters_RoomListFiltersView_Day_0_en","features.home.impl.filters_RoomListFiltersView_Night_0_en",20698,], +["features.home.impl.filters_RoomListFiltersView_Day_1_en","features.home.impl.filters_RoomListFiltersView_Night_1_en",20698,], ["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",20675,], -["features.roomdetails.impl.members_RoomMemberListView_Day_0_en","features.roomdetails.impl.members_RoomMemberListView_Night_0_en",20675,], -["features.roomdetails.impl.members_RoomMemberListView_Day_1_en","features.roomdetails.impl.members_RoomMemberListView_Night_1_en",20675,], -["features.roomdetails.impl.members_RoomMemberListView_Day_2_en","features.roomdetails.impl.members_RoomMemberListView_Night_2_en",20675,], -["features.roomdetails.impl.members_RoomMemberListView_Day_3_en","features.roomdetails.impl.members_RoomMemberListView_Night_3_en",20675,], -["features.roomdetails.impl.members_RoomMemberListView_Day_4_en","features.roomdetails.impl.members_RoomMemberListView_Night_4_en",20675,], -["features.roomdetails.impl.members_RoomMemberListView_Day_5_en","features.roomdetails.impl.members_RoomMemberListView_Night_5_en",20675,], -["features.roomdetails.impl.members_RoomMemberListView_Day_6_en","features.roomdetails.impl.members_RoomMemberListView_Night_6_en",20675,], -["features.roommembermoderation.impl_RoomMemberModerationView_Day_0_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_0_en",20675,], -["features.roommembermoderation.impl_RoomMemberModerationView_Day_1_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_1_en",20675,], -["features.roommembermoderation.impl_RoomMemberModerationView_Day_2_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_2_en",20675,], -["features.roommembermoderation.impl_RoomMemberModerationView_Day_3_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_3_en",20675,], -["features.roommembermoderation.impl_RoomMemberModerationView_Day_4_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_4_en",20675,], -["features.roommembermoderation.impl_RoomMemberModerationView_Day_5_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_5_en",20675,], -["features.roommembermoderation.impl_RoomMemberModerationView_Day_6_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_6_en",20675,], -["features.roommembermoderation.impl_RoomMemberModerationView_Day_7_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_7_en",20675,], -["features.roommembermoderation.impl_RoomMemberModerationView_Day_8_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_8_en",20675,], +["features.home.impl.search_RoomListSearchContent_Day_1_en","features.home.impl.search_RoomListSearchContent_Night_1_en",20698,], +["features.roomdetails.impl.members_RoomMemberListView_Day_0_en","features.roomdetails.impl.members_RoomMemberListView_Night_0_en",20698,], +["features.roomdetails.impl.members_RoomMemberListView_Day_1_en","features.roomdetails.impl.members_RoomMemberListView_Night_1_en",20698,], +["features.roomdetails.impl.members_RoomMemberListView_Day_2_en","features.roomdetails.impl.members_RoomMemberListView_Night_2_en",20698,], +["features.roomdetails.impl.members_RoomMemberListView_Day_3_en","features.roomdetails.impl.members_RoomMemberListView_Night_3_en",20698,], +["features.roomdetails.impl.members_RoomMemberListView_Day_4_en","features.roomdetails.impl.members_RoomMemberListView_Night_4_en",20698,], +["features.roomdetails.impl.members_RoomMemberListView_Day_5_en","features.roomdetails.impl.members_RoomMemberListView_Night_5_en",20698,], +["features.roomdetails.impl.members_RoomMemberListView_Day_6_en","features.roomdetails.impl.members_RoomMemberListView_Night_6_en",20698,], +["features.roommembermoderation.impl_RoomMemberModerationView_Day_0_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_0_en",20698,], +["features.roommembermoderation.impl_RoomMemberModerationView_Day_1_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_1_en",20698,], +["features.roommembermoderation.impl_RoomMemberModerationView_Day_2_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_2_en",20698,], +["features.roommembermoderation.impl_RoomMemberModerationView_Day_3_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_3_en",20698,], +["features.roommembermoderation.impl_RoomMemberModerationView_Day_4_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_4_en",20698,], +["features.roommembermoderation.impl_RoomMemberModerationView_Day_5_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_5_en",20698,], +["features.roommembermoderation.impl_RoomMemberModerationView_Day_6_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_6_en",20698,], +["features.roommembermoderation.impl_RoomMemberModerationView_Day_7_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_7_en",20698,], +["features.roommembermoderation.impl_RoomMemberModerationView_Day_8_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_8_en",20698,], ["features.roommembermoderation.impl_RoomMemberModerationView_Day_9_en","features.roommembermoderation.impl_RoomMemberModerationView_Night_9_en",0,], -["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Day_0_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Night_0_en",20675,], -["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_0_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_0_en",20675,], -["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_1_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_1_en",20675,], -["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_2_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_2_en",20675,], -["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_3_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_3_en",20675,], -["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_4_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_4_en",20675,], -["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_5_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_5_en",20675,], -["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_6_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_6_en",20675,], +["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Day_0_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Night_0_en",20698,], +["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_0_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_0_en",20698,], +["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_1_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_1_en",20698,], +["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_2_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_2_en",20698,], +["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_3_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_3_en",20698,], +["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_4_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_4_en",20698,], +["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_5_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_5_en",20698,], +["features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Day_6_en","features.roomdetails.impl.notificationsettings_RoomNotificationSettingsView_Night_6_en",20698,], ["libraries.designsystem.atomic.atoms_RoomPreviewAliasAtom_Day_0_en","libraries.designsystem.atomic.atoms_RoomPreviewAliasAtom_Night_0_en",0,], -["libraries.roomselect.impl_RoomSelectView_Day_0_en","libraries.roomselect.impl_RoomSelectView_Night_0_en",20675,], -["libraries.roomselect.impl_RoomSelectView_Day_1_en","libraries.roomselect.impl_RoomSelectView_Night_1_en",20675,], -["libraries.roomselect.impl_RoomSelectView_Day_2_en","libraries.roomselect.impl_RoomSelectView_Night_2_en",20675,], -["libraries.roomselect.impl_RoomSelectView_Day_3_en","libraries.roomselect.impl_RoomSelectView_Night_3_en",20675,], -["libraries.roomselect.impl_RoomSelectView_Day_4_en","libraries.roomselect.impl_RoomSelectView_Night_4_en",20675,], -["libraries.roomselect.impl_RoomSelectView_Day_5_en","libraries.roomselect.impl_RoomSelectView_Night_5_en",20675,], -["libraries.roomselect.impl_RoomSelectView_Day_6_en","libraries.roomselect.impl_RoomSelectView_Night_6_en",20675,], +["libraries.roomselect.impl_RoomSelectView_Day_0_en","libraries.roomselect.impl_RoomSelectView_Night_0_en",20698,], +["libraries.roomselect.impl_RoomSelectView_Day_1_en","libraries.roomselect.impl_RoomSelectView_Night_1_en",20698,], +["libraries.roomselect.impl_RoomSelectView_Day_2_en","libraries.roomselect.impl_RoomSelectView_Night_2_en",20698,], +["libraries.roomselect.impl_RoomSelectView_Day_3_en","libraries.roomselect.impl_RoomSelectView_Night_3_en",20698,], +["libraries.roomselect.impl_RoomSelectView_Day_4_en","libraries.roomselect.impl_RoomSelectView_Night_4_en",20698,], +["libraries.roomselect.impl_RoomSelectView_Day_5_en","libraries.roomselect.impl_RoomSelectView_Night_5_en",20698,], +["libraries.roomselect.impl_RoomSelectView_Day_6_en","libraries.roomselect.impl_RoomSelectView_Night_6_en",20698,], ["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,], @@ -1198,16 +1207,16 @@ 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",20675,], -["features.home.impl.components_RoomSummaryRow_Day_2_en","features.home.impl.components_RoomSummaryRow_Night_2_en",20675,], -["features.home.impl.components_RoomSummaryRow_Day_30_en","features.home.impl.components_RoomSummaryRow_Night_30_en",20675,], -["features.home.impl.components_RoomSummaryRow_Day_31_en","features.home.impl.components_RoomSummaryRow_Night_31_en",20675,], -["features.home.impl.components_RoomSummaryRow_Day_32_en","features.home.impl.components_RoomSummaryRow_Night_32_en",20675,], -["features.home.impl.components_RoomSummaryRow_Day_33_en","features.home.impl.components_RoomSummaryRow_Night_33_en",20675,], -["features.home.impl.components_RoomSummaryRow_Day_34_en","features.home.impl.components_RoomSummaryRow_Night_34_en",20675,], -["features.home.impl.components_RoomSummaryRow_Day_35_en","features.home.impl.components_RoomSummaryRow_Night_35_en",20675,], +["features.home.impl.components_RoomSummaryRow_Day_29_en","features.home.impl.components_RoomSummaryRow_Night_29_en",20698,], +["features.home.impl.components_RoomSummaryRow_Day_2_en","features.home.impl.components_RoomSummaryRow_Night_2_en",20698,], +["features.home.impl.components_RoomSummaryRow_Day_30_en","features.home.impl.components_RoomSummaryRow_Night_30_en",20698,], +["features.home.impl.components_RoomSummaryRow_Day_31_en","features.home.impl.components_RoomSummaryRow_Night_31_en",20698,], +["features.home.impl.components_RoomSummaryRow_Day_32_en","features.home.impl.components_RoomSummaryRow_Night_32_en",20698,], +["features.home.impl.components_RoomSummaryRow_Day_33_en","features.home.impl.components_RoomSummaryRow_Night_33_en",20698,], +["features.home.impl.components_RoomSummaryRow_Day_34_en","features.home.impl.components_RoomSummaryRow_Night_34_en",20698,], +["features.home.impl.components_RoomSummaryRow_Day_35_en","features.home.impl.components_RoomSummaryRow_Night_35_en",20698,], ["features.home.impl.components_RoomSummaryRow_Day_36_en","features.home.impl.components_RoomSummaryRow_Night_36_en",0,], -["features.home.impl.components_RoomSummaryRow_Day_37_en","features.home.impl.components_RoomSummaryRow_Night_37_en",20675,], +["features.home.impl.components_RoomSummaryRow_Day_37_en","features.home.impl.components_RoomSummaryRow_Night_37_en",20698,], ["features.home.impl.components_RoomSummaryRow_Day_38_en","features.home.impl.components_RoomSummaryRow_Night_38_en",0,], ["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,], @@ -1216,119 +1225,117 @@ 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",20675,], ["features.login.impl.screens.classic.root_RootView_Day_0_en","features.login.impl.screens.classic.root_RootView_Night_0_en",0,], -["appnav.root_RootView_Day_1_en","appnav.root_RootView_Night_1_en",20675,], -["appnav.root_RootView_Day_2_en","appnav.root_RootView_Night_2_en",20675,], -["appicon.enterprise_RoundIcon_en","",0,], +["appnav.root_RootView_Day_0_en","appnav.root_RootView_Night_0_en",20698,], +["appnav.root_RootView_Day_1_en","appnav.root_RootView_Night_1_en",20698,], +["appnav.root_RootView_Day_2_en","appnav.root_RootView_Night_2_en",20698,], ["appicon.element_RoundIcon_en","",0,], +["appicon.enterprise_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",20675,], -["libraries.designsystem.components.dialogs_SaveChangesDialog_Day_0_en","libraries.designsystem.components.dialogs_SaveChangesDialog_Night_0_en",20675,], -["features.linknewdevice.impl.screens.scan_ScanQrCodeView_Day_0_en","features.linknewdevice.impl.screens.scan_ScanQrCodeView_Night_0_en",20675,], -["features.linknewdevice.impl.screens.scan_ScanQrCodeView_Day_1_en","features.linknewdevice.impl.screens.scan_ScanQrCodeView_Night_1_en",20675,], -["features.linknewdevice.impl.screens.scan_ScanQrCodeView_Day_2_en","features.linknewdevice.impl.screens.scan_ScanQrCodeView_Night_2_en",20675,], -["features.linknewdevice.impl.screens.scan_ScanQrCodeView_Day_3_en","features.linknewdevice.impl.screens.scan_ScanQrCodeView_Night_3_en",20675,], -["features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Day_0_en","features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Night_0_en",20675,], -["features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Day_1_en","features.login.impl.screens.searchaccountprovider_SearchAccountProviderView_Night_1_en",20675,], +["features.verifysession.impl.emoji_SasEmojis_Day_0_en","features.verifysession.impl.emoji_SasEmojis_Night_0_en",20698,], +["libraries.designsystem.components.dialogs_SaveChangesDialog_Day_0_en","libraries.designsystem.components.dialogs_SaveChangesDialog_Night_0_en",20698,], +["features.linknewdevice.impl.screens.scan_ScanQrCodeView_Day_0_en","features.linknewdevice.impl.screens.scan_ScanQrCodeView_Night_0_en",20698,], +["features.linknewdevice.impl.screens.scan_ScanQrCodeView_Day_1_en","features.linknewdevice.impl.screens.scan_ScanQrCodeView_Night_1_en",20698,], +["features.linknewdevice.impl.screens.scan_ScanQrCodeView_Day_2_en","features.linknewdevice.impl.screens.scan_ScanQrCodeView_Night_2_en",20698,], +["features.linknewdevice.impl.screens.scan_ScanQrCodeView_Day_3_en","features.linknewdevice.impl.screens.scan_ScanQrCodeView_Night_3_en",20698,], ["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","",20675,], +["libraries.designsystem.theme.components_SearchBarActiveWithNoResults_Search_views_en","",20698,], ["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,], ["libraries.designsystem.theme.components_SearchFieldsDark_Search_views_en","",0,], ["libraries.designsystem.theme.components_SearchFieldsLight_Search_views_en","",0,], -["features.startchat.impl.components_SearchMultipleUsersResultItem_en","",20675,], -["features.startchat.impl.components_SearchSingleUserResultItem_en","",20675,], -["features.securebackup.impl.disable_SecureBackupDisableView_Day_0_en","features.securebackup.impl.disable_SecureBackupDisableView_Night_0_en",20675,], -["features.securebackup.impl.disable_SecureBackupDisableView_Day_1_en","features.securebackup.impl.disable_SecureBackupDisableView_Night_1_en",20675,], -["features.securebackup.impl.disable_SecureBackupDisableView_Day_2_en","features.securebackup.impl.disable_SecureBackupDisableView_Night_2_en",20675,], -["features.securebackup.impl.disable_SecureBackupDisableView_Day_3_en","features.securebackup.impl.disable_SecureBackupDisableView_Night_3_en",20675,], -["features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_0_en","features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Night_0_en",20675,], -["features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_1_en","features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Night_1_en",20675,], -["features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_2_en","features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Night_2_en",20675,], -["features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_3_en","features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Night_3_en",20675,], -["features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_4_en","features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Night_4_en",20675,], -["features.securebackup.impl.root_SecureBackupRootView_Day_0_en","features.securebackup.impl.root_SecureBackupRootView_Night_0_en",20675,], -["features.securebackup.impl.root_SecureBackupRootView_Day_10_en","features.securebackup.impl.root_SecureBackupRootView_Night_10_en",20675,], -["features.securebackup.impl.root_SecureBackupRootView_Day_11_en","features.securebackup.impl.root_SecureBackupRootView_Night_11_en",20675,], -["features.securebackup.impl.root_SecureBackupRootView_Day_12_en","features.securebackup.impl.root_SecureBackupRootView_Night_12_en",20675,], -["features.securebackup.impl.root_SecureBackupRootView_Day_13_en","features.securebackup.impl.root_SecureBackupRootView_Night_13_en",20675,], -["features.securebackup.impl.root_SecureBackupRootView_Day_14_en","features.securebackup.impl.root_SecureBackupRootView_Night_14_en",20675,], -["features.securebackup.impl.root_SecureBackupRootView_Day_15_en","features.securebackup.impl.root_SecureBackupRootView_Night_15_en",20675,], -["features.securebackup.impl.root_SecureBackupRootView_Day_16_en","features.securebackup.impl.root_SecureBackupRootView_Night_16_en",20675,], -["features.securebackup.impl.root_SecureBackupRootView_Day_17_en","features.securebackup.impl.root_SecureBackupRootView_Night_17_en",20675,], -["features.securebackup.impl.root_SecureBackupRootView_Day_1_en","features.securebackup.impl.root_SecureBackupRootView_Night_1_en",20675,], -["features.securebackup.impl.root_SecureBackupRootView_Day_2_en","features.securebackup.impl.root_SecureBackupRootView_Night_2_en",20675,], -["features.securebackup.impl.root_SecureBackupRootView_Day_3_en","features.securebackup.impl.root_SecureBackupRootView_Night_3_en",20675,], -["features.securebackup.impl.root_SecureBackupRootView_Day_4_en","features.securebackup.impl.root_SecureBackupRootView_Night_4_en",20675,], -["features.securebackup.impl.root_SecureBackupRootView_Day_5_en","features.securebackup.impl.root_SecureBackupRootView_Night_5_en",20675,], -["features.securebackup.impl.root_SecureBackupRootView_Day_6_en","features.securebackup.impl.root_SecureBackupRootView_Night_6_en",20675,], -["features.securebackup.impl.root_SecureBackupRootView_Day_7_en","features.securebackup.impl.root_SecureBackupRootView_Night_7_en",20675,], -["features.securebackup.impl.root_SecureBackupRootView_Day_8_en","features.securebackup.impl.root_SecureBackupRootView_Night_8_en",20675,], -["features.securebackup.impl.root_SecureBackupRootView_Day_9_en","features.securebackup.impl.root_SecureBackupRootView_Night_9_en",20675,], -["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_0_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_0_en",20675,], -["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_1_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_1_en",20675,], -["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_2_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_2_en",20675,], -["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_3_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_3_en",20675,], -["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_4_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_4_en",20675,], -["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_5_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_5_en",20675,], -["features.securebackup.impl.setup_SecureBackupSetupView_Day_0_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_0_en",20675,], -["features.securebackup.impl.setup_SecureBackupSetupView_Day_1_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_1_en",20675,], -["features.securebackup.impl.setup_SecureBackupSetupView_Day_2_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_2_en",20675,], -["features.securebackup.impl.setup_SecureBackupSetupView_Day_3_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_3_en",20675,], -["features.securebackup.impl.setup_SecureBackupSetupView_Day_4_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_4_en",20675,], -["features.securebackup.impl.setup_SecureBackupSetupView_Day_5_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_5_en",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_0_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_10_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_11_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_12_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_13_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_14_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_15_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_16_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_17_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_18_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_19_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_1_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_20_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_21_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_22_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_23_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_2_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_3_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_4_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_5_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_6_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_7_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_8_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_9_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_0_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_10_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_11_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_12_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_13_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_14_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_15_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_16_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_17_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_18_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_19_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_1_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_20_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_21_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_22_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_23_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_2_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_3_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_4_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_5_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_6_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_7_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_8_en","",20675,], -["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_9_en","",20675,], -["features.createroom.impl.configureroom_SelectParentSpaceBottomSheet_Day_0_en","features.createroom.impl.configureroom_SelectParentSpaceBottomSheet_Night_0_en",20675,], +["features.startchat.impl.components_SearchMultipleUsersResultItem_en","",20698,], +["features.startchat.impl.components_SearchSingleUserResultItem_en","",20698,], +["features.securebackup.impl.disable_SecureBackupDisableView_Day_0_en","features.securebackup.impl.disable_SecureBackupDisableView_Night_0_en",20698,], +["features.securebackup.impl.disable_SecureBackupDisableView_Day_1_en","features.securebackup.impl.disable_SecureBackupDisableView_Night_1_en",20698,], +["features.securebackup.impl.disable_SecureBackupDisableView_Day_2_en","features.securebackup.impl.disable_SecureBackupDisableView_Night_2_en",20698,], +["features.securebackup.impl.disable_SecureBackupDisableView_Day_3_en","features.securebackup.impl.disable_SecureBackupDisableView_Night_3_en",20698,], +["features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_0_en","features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Night_0_en",20698,], +["features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_1_en","features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Night_1_en",20698,], +["features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_2_en","features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Night_2_en",20698,], +["features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_3_en","features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Night_3_en",20698,], +["features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Day_4_en","features.securebackup.impl.enter_SecureBackupEnterRecoveryKeyView_Night_4_en",20698,], +["features.securebackup.impl.root_SecureBackupRootView_Day_0_en","features.securebackup.impl.root_SecureBackupRootView_Night_0_en",20698,], +["features.securebackup.impl.root_SecureBackupRootView_Day_10_en","features.securebackup.impl.root_SecureBackupRootView_Night_10_en",20698,], +["features.securebackup.impl.root_SecureBackupRootView_Day_11_en","features.securebackup.impl.root_SecureBackupRootView_Night_11_en",20698,], +["features.securebackup.impl.root_SecureBackupRootView_Day_12_en","features.securebackup.impl.root_SecureBackupRootView_Night_12_en",20698,], +["features.securebackup.impl.root_SecureBackupRootView_Day_13_en","features.securebackup.impl.root_SecureBackupRootView_Night_13_en",20698,], +["features.securebackup.impl.root_SecureBackupRootView_Day_14_en","features.securebackup.impl.root_SecureBackupRootView_Night_14_en",20698,], +["features.securebackup.impl.root_SecureBackupRootView_Day_15_en","features.securebackup.impl.root_SecureBackupRootView_Night_15_en",20698,], +["features.securebackup.impl.root_SecureBackupRootView_Day_16_en","features.securebackup.impl.root_SecureBackupRootView_Night_16_en",20698,], +["features.securebackup.impl.root_SecureBackupRootView_Day_17_en","features.securebackup.impl.root_SecureBackupRootView_Night_17_en",20698,], +["features.securebackup.impl.root_SecureBackupRootView_Day_1_en","features.securebackup.impl.root_SecureBackupRootView_Night_1_en",20698,], +["features.securebackup.impl.root_SecureBackupRootView_Day_2_en","features.securebackup.impl.root_SecureBackupRootView_Night_2_en",20698,], +["features.securebackup.impl.root_SecureBackupRootView_Day_3_en","features.securebackup.impl.root_SecureBackupRootView_Night_3_en",20698,], +["features.securebackup.impl.root_SecureBackupRootView_Day_4_en","features.securebackup.impl.root_SecureBackupRootView_Night_4_en",20698,], +["features.securebackup.impl.root_SecureBackupRootView_Day_5_en","features.securebackup.impl.root_SecureBackupRootView_Night_5_en",20698,], +["features.securebackup.impl.root_SecureBackupRootView_Day_6_en","features.securebackup.impl.root_SecureBackupRootView_Night_6_en",20698,], +["features.securebackup.impl.root_SecureBackupRootView_Day_7_en","features.securebackup.impl.root_SecureBackupRootView_Night_7_en",20698,], +["features.securebackup.impl.root_SecureBackupRootView_Day_8_en","features.securebackup.impl.root_SecureBackupRootView_Night_8_en",20698,], +["features.securebackup.impl.root_SecureBackupRootView_Day_9_en","features.securebackup.impl.root_SecureBackupRootView_Night_9_en",20698,], +["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_0_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_0_en",20698,], +["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_1_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_1_en",20698,], +["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_2_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_2_en",20698,], +["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_3_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_3_en",20698,], +["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_4_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_4_en",20698,], +["features.securebackup.impl.setup_SecureBackupSetupViewChange_Day_5_en","features.securebackup.impl.setup_SecureBackupSetupViewChange_Night_5_en",20698,], +["features.securebackup.impl.setup_SecureBackupSetupView_Day_0_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_0_en",20698,], +["features.securebackup.impl.setup_SecureBackupSetupView_Day_1_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_1_en",20698,], +["features.securebackup.impl.setup_SecureBackupSetupView_Day_2_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_2_en",20698,], +["features.securebackup.impl.setup_SecureBackupSetupView_Day_3_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_3_en",20698,], +["features.securebackup.impl.setup_SecureBackupSetupView_Day_4_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_4_en",20698,], +["features.securebackup.impl.setup_SecureBackupSetupView_Day_5_en","features.securebackup.impl.setup_SecureBackupSetupView_Night_5_en",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_0_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_10_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_11_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_12_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_13_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_14_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_15_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_16_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_17_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_18_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_19_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_1_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_20_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_21_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_22_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_23_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_2_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_3_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_4_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_5_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_6_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_7_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_8_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewDark_9_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_0_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_10_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_11_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_12_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_13_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_14_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_15_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_16_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_17_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_18_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_19_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_1_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_20_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_21_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_22_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_23_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_2_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_3_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_4_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_5_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_6_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_7_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_8_en","",20698,], +["features.securityandprivacy.impl.root_SecurityAndPrivacyViewLight_9_en","",20698,], +["features.createroom.impl.configureroom_SelectParentSpaceBottomSheet_Day_0_en","features.createroom.impl.configureroom_SelectParentSpaceBottomSheet_Night_0_en",20698,], ["libraries.designsystem.atomic.atoms_SelectedIndicatorAtom_Day_0_en","libraries.designsystem.atomic.atoms_SelectedIndicatorAtom_Night_0_en",0,], ["libraries.matrix.ui.components_SelectedRoomRtl_Day_0_en","libraries.matrix.ui.components_SelectedRoomRtl_Night_0_en",0,], ["libraries.matrix.ui.components_SelectedRoomRtl_Day_1_en","libraries.matrix.ui.components_SelectedRoomRtl_Night_1_en",0,], @@ -1342,6 +1349,12 @@ export const screenshots = [ ["libraries.matrix.ui.components_SelectedUser_Day_1_en","libraries.matrix.ui.components_SelectedUser_Night_1_en",0,], ["libraries.matrix.ui.components_SelectedUsersRowList_Day_0_en","libraries.matrix.ui.components_SelectedUsersRowList_Night_0_en",0,], ["libraries.textcomposer.components_SendButtonIcon_Day_0_en","libraries.textcomposer.components_SendButtonIcon_Night_0_en",0,], +["features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_0_en","features.messages.impl.timeline.sendfailure_SendFailureDialogView_Night_0_en",0,], +["features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_1_en","features.messages.impl.timeline.sendfailure_SendFailureDialogView_Night_1_en",20698,], +["features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_2_en","features.messages.impl.timeline.sendfailure_SendFailureDialogView_Night_2_en",20698,], +["features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_3_en","features.messages.impl.timeline.sendfailure_SendFailureDialogView_Night_3_en",20698,], +["features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_4_en","features.messages.impl.timeline.sendfailure_SendFailureDialogView_Night_4_en",20698,], +["features.messages.impl.timeline.sendfailure_SendFailureDialogView_Day_5_en","features.messages.impl.timeline.sendfailure_SendFailureDialogView_Night_5_en",20698,], ["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,], @@ -1349,41 +1362,39 @@ export const screenshots = [ ["libraries.matrix.ui.messages.sender_SenderName_Day_4_en","libraries.matrix.ui.messages.sender_SenderName_Night_4_en",0,], ["libraries.matrix.ui.messages.sender_SenderName_Day_5_en","libraries.matrix.ui.messages.sender_SenderName_Night_5_en",0,], ["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",20675,], -["features.home.impl.components_SetUpRecoveryKeyBanner_Day_0_en","features.home.impl.components_SetUpRecoveryKeyBanner_Night_0_en",20675,], -["features.lockscreen.impl.setup.biometric_SetupBiometricView_Day_0_en","features.lockscreen.impl.setup.biometric_SetupBiometricView_Night_0_en",20675,], -["features.lockscreen.impl.setup.pin_SetupPinView_Day_0_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_0_en",20675,], -["features.lockscreen.impl.setup.pin_SetupPinView_Day_1_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_1_en",20675,], -["features.lockscreen.impl.setup.pin_SetupPinView_Day_2_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_2_en",20675,], -["features.lockscreen.impl.setup.pin_SetupPinView_Day_3_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_3_en",20675,], -["features.lockscreen.impl.setup.pin_SetupPinView_Day_4_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_4_en",20675,], -["features.location.impl.share_ShareLocationView_Day_0_en","features.location.impl.share_ShareLocationView_Night_0_en",20675,], -["features.location.impl.share_ShareLocationView_Day_1_en","features.location.impl.share_ShareLocationView_Night_1_en",20675,], -["features.location.impl.share_ShareLocationView_Day_2_en","features.location.impl.share_ShareLocationView_Night_2_en",20675,], -["features.location.impl.share_ShareLocationView_Day_3_en","features.location.impl.share_ShareLocationView_Night_3_en",20675,], -["features.location.impl.share_ShareLocationView_Day_4_en","features.location.impl.share_ShareLocationView_Night_4_en",20675,], -["features.location.impl.share_ShareLocationView_Day_5_en","features.location.impl.share_ShareLocationView_Night_5_en",20675,], -["features.location.impl.share_ShareLocationView_Day_6_en","features.location.impl.share_ShareLocationView_Night_6_en",20675,], -["features.location.impl.share_ShareLocationView_Day_7_en","features.location.impl.share_ShareLocationView_Night_7_en",20675,], -["features.location.impl.share_ShareLocationView_Day_8_en","features.location.impl.share_ShareLocationView_Night_8_en",20675,], -["features.location.impl.share_ShareLocationView_Day_9_en","features.location.impl.share_ShareLocationView_Night_9_en",20675,], +["features.verifysession.impl.incoming.ui_SessionDetailsView_Day_0_en","features.verifysession.impl.incoming.ui_SessionDetailsView_Night_0_en",20698,], +["features.home.impl.components_SetUpRecoveryKeyBanner_Day_0_en","features.home.impl.components_SetUpRecoveryKeyBanner_Night_0_en",20698,], +["features.lockscreen.impl.setup.biometric_SetupBiometricView_Day_0_en","features.lockscreen.impl.setup.biometric_SetupBiometricView_Night_0_en",20698,], +["features.lockscreen.impl.setup.pin_SetupPinView_Day_0_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_0_en",20698,], +["features.lockscreen.impl.setup.pin_SetupPinView_Day_1_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_1_en",20698,], +["features.lockscreen.impl.setup.pin_SetupPinView_Day_2_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_2_en",20698,], +["features.lockscreen.impl.setup.pin_SetupPinView_Day_3_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_3_en",20698,], +["features.lockscreen.impl.setup.pin_SetupPinView_Day_4_en","features.lockscreen.impl.setup.pin_SetupPinView_Night_4_en",20698,], +["features.location.impl.share_ShareLocationView_Day_0_en","features.location.impl.share_ShareLocationView_Night_0_en",20698,], +["features.location.impl.share_ShareLocationView_Day_1_en","features.location.impl.share_ShareLocationView_Night_1_en",20698,], +["features.location.impl.share_ShareLocationView_Day_2_en","features.location.impl.share_ShareLocationView_Night_2_en",20698,], +["features.location.impl.share_ShareLocationView_Day_3_en","features.location.impl.share_ShareLocationView_Night_3_en",20698,], +["features.location.impl.share_ShareLocationView_Day_4_en","features.location.impl.share_ShareLocationView_Night_4_en",20698,], +["features.location.impl.share_ShareLocationView_Day_5_en","features.location.impl.share_ShareLocationView_Night_5_en",20698,], +["features.location.impl.share_ShareLocationView_Day_6_en","features.location.impl.share_ShareLocationView_Night_6_en",20698,], +["features.location.impl.share_ShareLocationView_Day_7_en","features.location.impl.share_ShareLocationView_Night_7_en",20698,], +["features.location.impl.share_ShareLocationView_Day_8_en","features.location.impl.share_ShareLocationView_Night_8_en",20698,], +["features.location.impl.share_ShareLocationView_Day_9_en","features.location.impl.share_ShareLocationView_Night_9_en",20698,], ["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",20675,], -["features.location.impl.show_ShowLocationView_Day_0_en","features.location.impl.show_ShowLocationView_Night_0_en",20675,], -["features.location.impl.show_ShowLocationView_Day_1_en","features.location.impl.show_ShowLocationView_Night_1_en",20675,], -["features.location.impl.show_ShowLocationView_Day_2_en","features.location.impl.show_ShowLocationView_Night_2_en",20675,], -["features.location.impl.show_ShowLocationView_Day_3_en","features.location.impl.show_ShowLocationView_Night_3_en",20675,], -["features.location.impl.show_ShowLocationView_Day_4_en","features.location.impl.show_ShowLocationView_Night_4_en",20675,], -["features.location.impl.show_ShowLocationView_Day_5_en","features.location.impl.show_ShowLocationView_Night_5_en",20675,], -["features.location.impl.show_ShowLocationView_Day_6_en","features.location.impl.show_ShowLocationView_Night_6_en",20675,], -["features.location.impl.show_ShowLocationView_Day_7_en","features.location.impl.show_ShowLocationView_Night_7_en",20675,], -["features.linknewdevice.impl.screens.qrcode_ShowQrCodeView_Day_0_en","features.linknewdevice.impl.screens.qrcode_ShowQrCodeView_Night_0_en",20675,], -["features.linknewdevice.impl.screens.qrcode_ShowQrCodeView_Day_1_en","features.linknewdevice.impl.screens.qrcode_ShowQrCodeView_Night_1_en",20675,], -["features.signedout.impl_SignedOutView_Day_0_en","features.signedout.impl_SignedOutView_Night_0_en",20675,], +["features.share.impl_ShareView_Day_3_en","features.share.impl_ShareView_Night_3_en",20698,], +["features.location.impl.show_ShowLocationView_Day_0_en","features.location.impl.show_ShowLocationView_Night_0_en",20698,], +["features.location.impl.show_ShowLocationView_Day_1_en","features.location.impl.show_ShowLocationView_Night_1_en",20698,], +["features.location.impl.show_ShowLocationView_Day_2_en","features.location.impl.show_ShowLocationView_Night_2_en",20698,], +["features.location.impl.show_ShowLocationView_Day_3_en","features.location.impl.show_ShowLocationView_Night_3_en",20698,], +["features.location.impl.show_ShowLocationView_Day_4_en","features.location.impl.show_ShowLocationView_Night_4_en",20698,], +["features.location.impl.show_ShowLocationView_Day_5_en","features.location.impl.show_ShowLocationView_Night_5_en",20698,], +["features.location.impl.show_ShowLocationView_Day_6_en","features.location.impl.show_ShowLocationView_Night_6_en",20698,], +["features.location.impl.show_ShowLocationView_Day_7_en","features.location.impl.show_ShowLocationView_Night_7_en",20698,], +["features.linknewdevice.impl.screens.qrcode_ShowQrCodeView_Day_0_en","features.linknewdevice.impl.screens.qrcode_ShowQrCodeView_Night_0_en",20698,], +["features.linknewdevice.impl.screens.qrcode_ShowQrCodeView_Day_1_en","features.linknewdevice.impl.screens.qrcode_ShowQrCodeView_Night_1_en",20698,], +["features.signedout.impl_SignedOutView_Day_0_en","features.signedout.impl_SignedOutView_Night_0_en",20698,], ["libraries.designsystem.components_SimpleModalBottomSheet_Day_0_en","libraries.designsystem.components_SimpleModalBottomSheet_Night_0_en",0,], ["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,], @@ -1394,106 +1405,107 @@ export const screenshots = [ ["libraries.designsystem.components.list_SingleSelectionListItem_Single_selection_List_item_-_no_selection_List_items_en","",0,], ["libraries.emoji.impl.picker_SkinTonePicker_Day_0_en","libraries.emoji.impl.picker_SkinTonePicker_Night_0_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",20675,], +["features.login.impl.dialogs_SlidingSyncNotSupportedDialog_Day_0_en","features.login.impl.dialogs_SlidingSyncNotSupportedDialog_Night_0_en",20698,], ["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,], ["libraries.designsystem.theme.components_SnackbarWithAction_Snackbar_with_action_Snackbars_en","",0,], ["libraries.designsystem.theme.components_Snackbar_Snackbar_Snackbars_en","",0,], ["libraries.designsystem.components.avatar.internal_SpaceAvatar_Avatars_en","",0,], -["features.home.impl.spacefilters_SpaceFiltersView_Day_0_en","features.home.impl.spacefilters_SpaceFiltersView_Night_0_en",20675,], -["features.home.impl.spacefilters_SpaceFiltersView_Day_1_en","features.home.impl.spacefilters_SpaceFiltersView_Night_1_en",20675,], -["libraries.matrix.ui.components_SpaceHeaderRootView_Day_0_en","libraries.matrix.ui.components_SpaceHeaderRootView_Night_0_en",20675,], -["libraries.matrix.ui.components_SpaceHeaderView_Day_0_en","libraries.matrix.ui.components_SpaceHeaderView_Night_0_en",20675,], -["libraries.matrix.ui.components_SpaceInfoRow_Day_0_en","libraries.matrix.ui.components_SpaceInfoRow_Night_0_en",20675,], +["features.home.impl.spacefilters_SpaceFiltersView_Day_0_en","features.home.impl.spacefilters_SpaceFiltersView_Night_0_en",20698,], +["features.home.impl.spacefilters_SpaceFiltersView_Day_1_en","features.home.impl.spacefilters_SpaceFiltersView_Night_1_en",20698,], +["libraries.matrix.ui.components_SpaceHeaderRootView_Day_0_en","libraries.matrix.ui.components_SpaceHeaderRootView_Night_0_en",20698,], +["libraries.matrix.ui.components_SpaceHeaderView_Day_0_en","libraries.matrix.ui.components_SpaceHeaderView_Night_0_en",20698,], +["libraries.matrix.ui.components_SpaceInfoRow_Day_0_en","libraries.matrix.ui.components_SpaceInfoRow_Night_0_en",20698,], ["libraries.matrix.ui.components_SpaceMembersViewNoHeroes_Day_0_en","libraries.matrix.ui.components_SpaceMembersViewNoHeroes_Night_0_en",0,], ["libraries.matrix.ui.components_SpaceMembersView_Day_0_en","libraries.matrix.ui.components_SpaceMembersView_Night_0_en",0,], -["libraries.matrix.ui.components_SpaceRoomItemView_Day_0_en","libraries.matrix.ui.components_SpaceRoomItemView_Night_0_en",20675,], -["libraries.matrix.ui.components_SpaceRoomItemView_Day_1_en","libraries.matrix.ui.components_SpaceRoomItemView_Night_1_en",20675,], -["libraries.matrix.ui.components_SpaceRoomItemView_Day_2_en","libraries.matrix.ui.components_SpaceRoomItemView_Night_2_en",20675,], -["libraries.matrix.ui.components_SpaceRoomItemView_Day_3_en","libraries.matrix.ui.components_SpaceRoomItemView_Night_3_en",20675,], -["libraries.matrix.ui.components_SpaceRoomItemView_Day_4_en","libraries.matrix.ui.components_SpaceRoomItemView_Night_4_en",20675,], -["libraries.matrix.ui.components_SpaceRoomItemView_Day_5_en","libraries.matrix.ui.components_SpaceRoomItemView_Night_5_en",20675,], -["libraries.matrix.ui.components_SpaceRoomItemView_Day_6_en","libraries.matrix.ui.components_SpaceRoomItemView_Night_6_en",20675,], -["libraries.matrix.ui.components_SpaceRoomItemView_Day_7_en","libraries.matrix.ui.components_SpaceRoomItemView_Night_7_en",20675,], -["libraries.matrix.ui.components_SpaceRoomItemView_Day_8_en","libraries.matrix.ui.components_SpaceRoomItemView_Night_8_en",20675,], -["features.space.impl.settings_SpaceSettingsView_Day_0_en","features.space.impl.settings_SpaceSettingsView_Night_0_en",20675,], -["features.space.impl.settings_SpaceSettingsView_Day_1_en","features.space.impl.settings_SpaceSettingsView_Night_1_en",20675,], -["features.space.impl.settings_SpaceSettingsView_Day_2_en","features.space.impl.settings_SpaceSettingsView_Night_2_en",20675,], -["features.space.impl.settings_SpaceSettingsView_Day_3_en","features.space.impl.settings_SpaceSettingsView_Night_3_en",20675,], -["features.space.impl.root_SpaceView_Day_0_en","features.space.impl.root_SpaceView_Night_0_en",20675,], -["features.space.impl.root_SpaceView_Day_1_en","features.space.impl.root_SpaceView_Night_1_en",20675,], -["features.space.impl.root_SpaceView_Day_2_en","features.space.impl.root_SpaceView_Night_2_en",20675,], -["features.space.impl.root_SpaceView_Day_3_en","features.space.impl.root_SpaceView_Night_3_en",20675,], -["features.space.impl.root_SpaceView_Day_4_en","features.space.impl.root_SpaceView_Night_4_en",20675,], -["features.space.impl.root_SpaceView_Day_5_en","features.space.impl.root_SpaceView_Night_5_en",20675,], -["features.space.impl.root_SpaceView_Day_6_en","features.space.impl.root_SpaceView_Night_6_en",20675,], -["features.space.impl.root_SpaceView_Day_7_en","features.space.impl.root_SpaceView_Night_7_en",20675,], -["features.space.impl.root_SpaceView_Day_8_en","features.space.impl.root_SpaceView_Night_8_en",20675,], +["libraries.matrix.ui.components_SpaceRoomItemView_Day_0_en","libraries.matrix.ui.components_SpaceRoomItemView_Night_0_en",20698,], +["libraries.matrix.ui.components_SpaceRoomItemView_Day_1_en","libraries.matrix.ui.components_SpaceRoomItemView_Night_1_en",20698,], +["libraries.matrix.ui.components_SpaceRoomItemView_Day_2_en","libraries.matrix.ui.components_SpaceRoomItemView_Night_2_en",20698,], +["libraries.matrix.ui.components_SpaceRoomItemView_Day_3_en","libraries.matrix.ui.components_SpaceRoomItemView_Night_3_en",20698,], +["libraries.matrix.ui.components_SpaceRoomItemView_Day_4_en","libraries.matrix.ui.components_SpaceRoomItemView_Night_4_en",20698,], +["libraries.matrix.ui.components_SpaceRoomItemView_Day_5_en","libraries.matrix.ui.components_SpaceRoomItemView_Night_5_en",20698,], +["libraries.matrix.ui.components_SpaceRoomItemView_Day_6_en","libraries.matrix.ui.components_SpaceRoomItemView_Night_6_en",20698,], +["libraries.matrix.ui.components_SpaceRoomItemView_Day_7_en","libraries.matrix.ui.components_SpaceRoomItemView_Night_7_en",20698,], +["libraries.matrix.ui.components_SpaceRoomItemView_Day_8_en","libraries.matrix.ui.components_SpaceRoomItemView_Night_8_en",20698,], +["features.space.impl.settings_SpaceSettingsView_Day_0_en","features.space.impl.settings_SpaceSettingsView_Night_0_en",20698,], +["features.space.impl.settings_SpaceSettingsView_Day_1_en","features.space.impl.settings_SpaceSettingsView_Night_1_en",20698,], +["features.space.impl.settings_SpaceSettingsView_Day_2_en","features.space.impl.settings_SpaceSettingsView_Night_2_en",20698,], +["features.space.impl.settings_SpaceSettingsView_Day_3_en","features.space.impl.settings_SpaceSettingsView_Night_3_en",20698,], +["features.space.impl.root_SpaceView_Day_0_en","features.space.impl.root_SpaceView_Night_0_en",20698,], +["features.space.impl.root_SpaceView_Day_1_en","features.space.impl.root_SpaceView_Night_1_en",20698,], +["features.space.impl.root_SpaceView_Day_2_en","features.space.impl.root_SpaceView_Night_2_en",20698,], +["features.space.impl.root_SpaceView_Day_3_en","features.space.impl.root_SpaceView_Night_3_en",20698,], +["features.space.impl.root_SpaceView_Day_4_en","features.space.impl.root_SpaceView_Night_4_en",20698,], +["features.space.impl.root_SpaceView_Day_5_en","features.space.impl.root_SpaceView_Night_5_en",20698,], +["features.space.impl.root_SpaceView_Day_6_en","features.space.impl.root_SpaceView_Night_6_en",20698,], +["features.space.impl.root_SpaceView_Day_7_en","features.space.impl.root_SpaceView_Night_7_en",20698,], +["features.space.impl.root_SpaceView_Day_8_en","features.space.impl.root_SpaceView_Night_8_en",20698,], ["libraries.designsystem.modifiers_SquareSizeModifierInsideSquare_en","",0,], ["libraries.designsystem.modifiers_SquareSizeModifierLargeHeight_en","",0,], ["libraries.designsystem.modifiers_SquareSizeModifierLargeWidth_en","",0,], -["features.startchat.impl.root_StartChatView_Day_0_en","features.startchat.impl.root_StartChatView_Night_0_en",20675,], -["features.startchat.impl.root_StartChatView_Day_1_en","features.startchat.impl.root_StartChatView_Night_1_en",20675,], -["features.startchat.impl.root_StartChatView_Day_2_en","features.startchat.impl.root_StartChatView_Night_2_en",20675,], -["features.startchat.impl.root_StartChatView_Day_3_en","features.startchat.impl.root_StartChatView_Night_3_en",20675,], -["features.startchat.impl.root_StartChatView_Day_4_en","features.startchat.impl.root_StartChatView_Night_4_en",20675,], -["features.location.api.internal_StaticMapPlaceholder_Day_0_en","features.location.api.internal_StaticMapPlaceholder_Night_0_en",20675,], +["features.startchat.impl.root_StartChatView_Day_0_en","features.startchat.impl.root_StartChatView_Night_0_en",20698,], +["features.startchat.impl.root_StartChatView_Day_1_en","features.startchat.impl.root_StartChatView_Night_1_en",20698,], +["features.startchat.impl.root_StartChatView_Day_2_en","features.startchat.impl.root_StartChatView_Night_2_en",20698,], +["features.startchat.impl.root_StartChatView_Day_3_en","features.startchat.impl.root_StartChatView_Night_3_en",20698,], +["features.startchat.impl.root_StartChatView_Day_4_en","features.startchat.impl.root_StartChatView_Night_4_en",20698,], +["features.location.api.internal_StaticMapPlaceholder_Day_0_en","features.location.api.internal_StaticMapPlaceholder_Night_0_en",20698,], ["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",20675,], +["features.messages.impl.messagecomposer.suggestions_SuggestionsPickerView_Day_0_en","features.messages.impl.messagecomposer.suggestions_SuggestionsPickerView_Night_0_en",20698,], ["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",20675,], +["appnav.loggedin_SyncStateViewServerUnreachable_Day_0_en","appnav.loggedin_SyncStateViewServerUnreachable_Night_0_en",20698,], +["appnav.loggedin_SyncStateView_Day_0_en","appnav.loggedin_SyncStateView_Night_0_en",20698,], ["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",20675,], -["libraries.textcomposer_TextComposerCaption_Day_0_en","libraries.textcomposer_TextComposerCaption_Night_0_en",20675,], -["libraries.textcomposer_TextComposerEditCaption_Day_0_en","libraries.textcomposer_TextComposerEditCaption_Night_0_en",20675,], -["libraries.textcomposer_TextComposerEditNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerEditNotEncrypted_Night_0_en",20675,], -["libraries.textcomposer_TextComposerEdit_Day_0_en","libraries.textcomposer_TextComposerEdit_Night_0_en",20675,], -["libraries.textcomposer_TextComposerFormattingNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerFormattingNotEncrypted_Night_0_en",20675,], -["libraries.textcomposer_TextComposerFormatting_Day_0_en","libraries.textcomposer_TextComposerFormatting_Night_0_en",20675,], -["libraries.textcomposer_TextComposerLinkDialogCreateLinkWithoutText_Day_0_en","libraries.textcomposer_TextComposerLinkDialogCreateLinkWithoutText_Night_0_en",20675,], -["libraries.textcomposer_TextComposerLinkDialogCreateLink_Day_0_en","libraries.textcomposer_TextComposerLinkDialogCreateLink_Night_0_en",20675,], -["libraries.textcomposer_TextComposerLinkDialogEditLink_Day_0_en","libraries.textcomposer_TextComposerLinkDialogEditLink_Night_0_en",20675,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_0_en",20675,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_10_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_10_en",20675,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_11_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_11_en",20675,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_1_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_1_en",20675,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_2_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_2_en",20675,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_3_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_3_en",20675,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_4_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_4_en",20675,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_5_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_5_en",20675,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_6_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_6_en",20675,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_7_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_7_en",20675,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_8_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_8_en",20675,], -["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_9_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_9_en",20675,], -["libraries.textcomposer_TextComposerReply_Day_0_en","libraries.textcomposer_TextComposerReply_Night_0_en",20675,], -["libraries.textcomposer_TextComposerReply_Day_10_en","libraries.textcomposer_TextComposerReply_Night_10_en",20675,], -["libraries.textcomposer_TextComposerReply_Day_11_en","libraries.textcomposer_TextComposerReply_Night_11_en",20675,], -["libraries.textcomposer_TextComposerReply_Day_1_en","libraries.textcomposer_TextComposerReply_Night_1_en",20675,], -["libraries.textcomposer_TextComposerReply_Day_2_en","libraries.textcomposer_TextComposerReply_Night_2_en",20675,], -["libraries.textcomposer_TextComposerReply_Day_3_en","libraries.textcomposer_TextComposerReply_Night_3_en",20675,], -["libraries.textcomposer_TextComposerReply_Day_4_en","libraries.textcomposer_TextComposerReply_Night_4_en",20675,], -["libraries.textcomposer_TextComposerReply_Day_5_en","libraries.textcomposer_TextComposerReply_Night_5_en",20675,], -["libraries.textcomposer_TextComposerReply_Day_6_en","libraries.textcomposer_TextComposerReply_Night_6_en",20675,], -["libraries.textcomposer_TextComposerReply_Day_7_en","libraries.textcomposer_TextComposerReply_Night_7_en",20675,], -["libraries.textcomposer_TextComposerReply_Day_8_en","libraries.textcomposer_TextComposerReply_Night_8_en",20675,], -["libraries.textcomposer_TextComposerReply_Day_9_en","libraries.textcomposer_TextComposerReply_Night_9_en",20675,], -["libraries.textcomposer_TextComposerScaledDensityWithReply_en","",20675,], -["libraries.textcomposer_TextComposerSimpleNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerSimpleNotEncrypted_Night_0_en",20675,], -["libraries.textcomposer_TextComposerSimple_Day_0_en","libraries.textcomposer_TextComposerSimple_Night_0_en",20675,], -["libraries.textcomposer_TextComposerVoiceNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerVoiceNotEncrypted_Night_0_en",20675,], +["libraries.textcomposer_TextComposerAddCaption_Day_0_en","libraries.textcomposer_TextComposerAddCaption_Night_0_en",20698,], +["libraries.textcomposer_TextComposerCaption_Day_0_en","libraries.textcomposer_TextComposerCaption_Night_0_en",20698,], +["libraries.textcomposer_TextComposerEditCaption_Day_0_en","libraries.textcomposer_TextComposerEditCaption_Night_0_en",20698,], +["libraries.textcomposer_TextComposerEditNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerEditNotEncrypted_Night_0_en",20698,], +["libraries.textcomposer_TextComposerEdit_Day_0_en","libraries.textcomposer_TextComposerEdit_Night_0_en",20698,], +["libraries.textcomposer_TextComposerFormattingNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerFormattingNotEncrypted_Night_0_en",20698,], +["libraries.textcomposer_TextComposerFormatting_Day_0_en","libraries.textcomposer_TextComposerFormatting_Night_0_en",20698,], +["libraries.textcomposer_TextComposerLinkDialogCreateLinkWithoutText_Day_0_en","libraries.textcomposer_TextComposerLinkDialogCreateLinkWithoutText_Night_0_en",20698,], +["libraries.textcomposer_TextComposerLinkDialogCreateLink_Day_0_en","libraries.textcomposer_TextComposerLinkDialogCreateLink_Night_0_en",20698,], +["libraries.textcomposer_TextComposerLinkDialogEditLink_Day_0_en","libraries.textcomposer_TextComposerLinkDialogEditLink_Night_0_en",20698,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_0_en",20698,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_10_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_10_en",20698,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_11_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_11_en",20698,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_1_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_1_en",20698,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_2_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_2_en",20698,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_3_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_3_en",20698,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_4_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_4_en",20698,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_5_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_5_en",20698,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_6_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_6_en",20698,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_7_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_7_en",20698,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_8_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_8_en",20698,], +["libraries.textcomposer_TextComposerReplyNotEncrypted_Day_9_en","libraries.textcomposer_TextComposerReplyNotEncrypted_Night_9_en",20698,], +["libraries.textcomposer_TextComposerReply_Day_0_en","libraries.textcomposer_TextComposerReply_Night_0_en",20698,], +["libraries.textcomposer_TextComposerReply_Day_10_en","libraries.textcomposer_TextComposerReply_Night_10_en",20698,], +["libraries.textcomposer_TextComposerReply_Day_11_en","libraries.textcomposer_TextComposerReply_Night_11_en",20698,], +["libraries.textcomposer_TextComposerReply_Day_1_en","libraries.textcomposer_TextComposerReply_Night_1_en",20698,], +["libraries.textcomposer_TextComposerReply_Day_2_en","libraries.textcomposer_TextComposerReply_Night_2_en",20698,], +["libraries.textcomposer_TextComposerReply_Day_3_en","libraries.textcomposer_TextComposerReply_Night_3_en",20698,], +["libraries.textcomposer_TextComposerReply_Day_4_en","libraries.textcomposer_TextComposerReply_Night_4_en",20698,], +["libraries.textcomposer_TextComposerReply_Day_5_en","libraries.textcomposer_TextComposerReply_Night_5_en",20698,], +["libraries.textcomposer_TextComposerReply_Day_6_en","libraries.textcomposer_TextComposerReply_Night_6_en",20698,], +["libraries.textcomposer_TextComposerReply_Day_7_en","libraries.textcomposer_TextComposerReply_Night_7_en",20698,], +["libraries.textcomposer_TextComposerReply_Day_8_en","libraries.textcomposer_TextComposerReply_Night_8_en",20698,], +["libraries.textcomposer_TextComposerReply_Day_9_en","libraries.textcomposer_TextComposerReply_Night_9_en",20698,], +["libraries.textcomposer_TextComposerScaledDensityWithReply_en","",20698,], +["libraries.textcomposer_TextComposerSimpleNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerSimpleNotEncrypted_Night_0_en",20698,], +["libraries.textcomposer_TextComposerSimple_Day_0_en","libraries.textcomposer_TextComposerSimple_Night_0_en",20698,], +["libraries.textcomposer_TextComposerVoiceNotEncrypted_Day_0_en","libraries.textcomposer_TextComposerVoiceNotEncrypted_Night_0_en",20698,], ["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",20675,], -["libraries.designsystem.components.dialogs_TextFieldDialog_Day_0_en","libraries.designsystem.components.dialogs_TextFieldDialog_Night_0_en",20675,], +["libraries.designsystem.components.dialogs_TextFieldDialogWithError_Day_0_en","libraries.designsystem.components.dialogs_TextFieldDialogWithError_Night_0_en",20698,], +["libraries.designsystem.components.dialogs_TextFieldDialog_Day_0_en","libraries.designsystem.components.dialogs_TextFieldDialog_Night_0_en",20698,], ["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,], @@ -1506,53 +1518,53 @@ export const screenshots = [ ["libraries.textcomposer.components_TextFormatting_Day_0_en","libraries.textcomposer.components_TextFormatting_Night_0_en",0,], ["libraries.designsystem.theme.components_TextLight_Text_en","",0,], ["features.messages.impl.threads.list_ThreadListItemRow_Day_0_en","features.messages.impl.threads.list_ThreadListItemRow_Night_0_en",0,], -["features.messages.impl.timeline.components_ThreadSummaryView_Day_0_en","features.messages.impl.timeline.components_ThreadSummaryView_Night_0_en",20675,], -["features.messages.impl.topbars_ThreadTopBar_Day_0_en","features.messages.impl.topbars_ThreadTopBar_Night_0_en",20675,], +["features.messages.impl.timeline.components_ThreadSummaryView_Day_0_en","features.messages.impl.timeline.components_ThreadSummaryView_Night_0_en",20698,], +["features.messages.impl.topbars_ThreadTopBar_Day_0_en","features.messages.impl.topbars_ThreadTopBar_Night_0_en",20698,], ["features.messages.impl.threads.list_ThreadsListView_Day_0_en","features.messages.impl.threads.list_ThreadsListView_Night_0_en",0,], -["libraries.designsystem.theme.components.previews_TimePickerHorizontal_DateTime_pickers_en","",20675,], -["libraries.designsystem.theme.components.previews_TimePickerVerticalDark_DateTime_pickers_en","",20675,], -["libraries.designsystem.theme.components.previews_TimePickerVerticalLight_DateTime_pickers_en","",20675,], +["libraries.designsystem.theme.components.previews_TimePickerHorizontal_DateTime_pickers_en","",20698,], +["libraries.designsystem.theme.components.previews_TimePickerVerticalDark_DateTime_pickers_en","",20698,], +["libraries.designsystem.theme.components.previews_TimePickerVerticalLight_DateTime_pickers_en","",20698,], ["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",20675,], -["features.messages.impl.timeline.components_TimelineEventTimestampView_Day_4_en","features.messages.impl.timeline.components_TimelineEventTimestampView_Night_4_en",20675,], +["features.messages.impl.timeline.components_TimelineEventTimestampView_Day_3_en","features.messages.impl.timeline.components_TimelineEventTimestampView_Night_3_en",20698,], +["features.messages.impl.timeline.components_TimelineEventTimestampView_Day_4_en","features.messages.impl.timeline.components_TimelineEventTimestampView_Night_4_en",20698,], ["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,], ["features.messages.impl.timeline.components.event_TimelineItemAttachmentsListView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemAttachmentsListView_Night_0_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemAttachmentsListView_Day_1_en","features.messages.impl.timeline.components.event_TimelineItemAttachmentsListView_Night_1_en",0,], -["features.messages.impl.timeline.components_TimelineItemAttachmentsViewScanningContentFailed_Day_0_en","features.messages.impl.timeline.components_TimelineItemAttachmentsViewScanningContentFailed_Night_0_en",0,], +["features.messages.impl.timeline.components_TimelineItemAttachmentsViewScanningContentFailed_Day_0_en","features.messages.impl.timeline.components_TimelineItemAttachmentsViewScanningContentFailed_Night_0_en",20698,], ["features.messages.impl.timeline.components_TimelineItemAudioViewScanningContent_Day_0_en","features.messages.impl.timeline.components_TimelineItemAudioViewScanningContent_Night_0_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemAudioView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemAudioView_Night_0_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemAudioView_Day_1_en","features.messages.impl.timeline.components.event_TimelineItemAudioView_Night_1_en",0,], ["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_TimelineItemCallNotifyView_Day_0_en","features.messages.impl.timeline.components_TimelineItemCallNotifyView_Night_0_en",20675,], +["features.messages.impl.timeline.components_TimelineItemCallNotifyView_Day_0_en","features.messages.impl.timeline.components_TimelineItemCallNotifyView_Night_0_en",20698,], ["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",20675,], -["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_1_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_1_en",20675,], -["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_2_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_2_en",20675,], -["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_3_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_3_en",20675,], -["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_4_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_4_en",20675,], -["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_5_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_5_en",20675,], -["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_6_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_6_en",20675,], -["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_7_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_7_en",20675,], -["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_8_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_8_en",20675,], -["features.messages.impl.timeline.components_TimelineItemEventRowDisambiguated_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowDisambiguated_Night_0_en",0,], +["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_0_en",20698,], +["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_1_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_1_en",20698,], +["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_2_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_2_en",20698,], +["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_3_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_3_en",20698,], +["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_4_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_4_en",20698,], +["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_5_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_5_en",20698,], +["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_6_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_6_en",20698,], +["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_7_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_7_en",20698,], +["features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Day_8_en","features.messages.impl.timeline.components.event_TimelineItemEncryptedView_Night_8_en",20698,], +["features.messages.impl.timeline.components_TimelineItemEventRowDisambiguated_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowDisambiguated_Night_0_en",20698,], ["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,], -["features.messages.impl.timeline.components_TimelineItemEventRowRtlContent_en","",20675,], +["features.messages.impl.timeline.components_TimelineItemEventRowRtlContent_en","",20698,], ["features.messages.impl.timeline.components_TimelineItemEventRowShield_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowShield_Night_0_en",0,], ["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",20675,], -["features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_4_en","features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_4_en",20675,], +["features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_3_en","features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_3_en",20698,], +["features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_4_en","features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_4_en",20698,], ["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",20675,], -["features.messages.impl.timeline.components_TimelineItemEventRowUtd_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowUtd_Night_0_en",20675,], +["features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Day_7_en","features.messages.impl.timeline.components_TimelineItemEventRowTimestamp_Night_7_en",20698,], +["features.messages.impl.timeline.components_TimelineItemEventRowUtd_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowUtd_Night_0_en",20698,], ["features.messages.impl.timeline.components_TimelineItemEventRowWithGallery_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowWithGallery_Night_0_en",0,], ["features.messages.impl.timeline.components_TimelineItemEventRowWithGallery_Day_1_en","features.messages.impl.timeline.components_TimelineItemEventRowWithGallery_Night_1_en",0,], ["features.messages.impl.timeline.components_TimelineItemEventRowWithGallery_Day_2_en","features.messages.impl.timeline.components_TimelineItemEventRowWithGallery_Night_2_en",0,], @@ -1562,29 +1574,29 @@ export const screenshots = [ ["features.messages.impl.timeline.components_TimelineItemEventRowWithGallery_Day_6_en","features.messages.impl.timeline.components_TimelineItemEventRowWithGallery_Night_6_en",0,], ["features.messages.impl.timeline.components_TimelineItemEventRowWithGallery_Day_7_en","features.messages.impl.timeline.components_TimelineItemEventRowWithGallery_Night_7_en",0,], ["features.messages.impl.timeline.components_TimelineItemEventRowWithGallery_Day_8_en","features.messages.impl.timeline.components_TimelineItemEventRowWithGallery_Night_8_en",0,], -["features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Night_0_en",20675,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowWithManyReactions_Night_0_en",20698,], ["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",20675,], -["features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_1_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Night_1_en",20675,], -["features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Night_0_en",20675,], -["features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Day_1_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReplyOther_Night_1_en",20675,], -["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_0_en",20675,], -["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_10_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_10_en",0,], -["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_11_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_11_en",20675,], -["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_1_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_1_en",20675,], -["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",20675,], -["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_4_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_4_en",20675,], -["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_5_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_5_en",20675,], -["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",20675,], -["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_8_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_8_en",20675,], -["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_9_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_9_en",20675,], -["features.messages.impl.timeline.components_TimelineItemEventRowWithThreadSummary_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowWithThreadSummary_Night_0_en",20675,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Night_0_en",20698,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Day_1_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReplyInformative_Night_1_en",20698,], +["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",20698,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_0_en",0,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_10_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_10_en",20698,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_11_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_11_en",20698,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_1_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_1_en",20698,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_2_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_2_en",20698,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_3_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_3_en",20698,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_4_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_4_en",20698,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_5_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_5_en",20698,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_6_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_6_en",20698,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_7_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_7_en",20698,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_8_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_8_en",20698,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Day_9_en","features.messages.impl.timeline.components_TimelineItemEventRowWithReply_Night_9_en",20698,], +["features.messages.impl.timeline.components_TimelineItemEventRowWithThreadSummary_Day_0_en","features.messages.impl.timeline.components_TimelineItemEventRowWithThreadSummary_Night_0_en",20698,], ["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","",20675,], +["features.messages.impl.timeline.components_TimelineItemEventTimestampBelow_en","",20698,], ["features.messages.impl.timeline.components_TimelineItemFileViewScanningContent_Day_0_en","features.messages.impl.timeline.components_TimelineItemFileViewScanningContent_Night_0_en",0,], ["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,], @@ -1600,31 +1612,31 @@ export const screenshots = [ ["features.messages.impl.timeline.components.event_TimelineItemGalleryView_Day_7_en","features.messages.impl.timeline.components.event_TimelineItemGalleryView_Night_7_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemGalleryView_Day_8_en","features.messages.impl.timeline.components.event_TimelineItemGalleryView_Night_8_en",0,], ["features.messages.impl.timeline.components.event_TimelineItemGalleryView_Day_9_en","features.messages.impl.timeline.components.event_TimelineItemGalleryView_Night_9_en",0,], -["features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentCollapse_Day_0_en","features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentCollapse_Night_0_en",20675,], -["features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentExpanded_Day_0_en","features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentExpanded_Night_0_en",20675,], -["features.messages.impl.timeline.components.event_TimelineItemImageViewHideMediaContent_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemImageViewHideMediaContent_Night_0_en",20675,], +["features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentCollapse_Day_0_en","features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentCollapse_Night_0_en",20698,], +["features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentExpanded_Day_0_en","features.messages.impl.timeline.components_TimelineItemGroupedEventsRowContentExpanded_Night_0_en",20698,], +["features.messages.impl.timeline.components.event_TimelineItemImageViewHideMediaContent_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemImageViewHideMediaContent_Night_0_en",20698,], ["features.messages.impl.timeline.components_TimelineItemImageViewScanningContent_Day_0_en","features.messages.impl.timeline.components_TimelineItemImageViewScanningContent_Night_0_en",0,], ["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",20675,], +["features.messages.impl.timeline.components.event_TimelineItemLegacyCallInviteView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemLegacyCallInviteView_Night_0_en",20698,], ["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",20675,], -["features.messages.impl.timeline.components.event_TimelineItemLocationView_Day_2_en","features.messages.impl.timeline.components.event_TimelineItemLocationView_Night_2_en",20675,], -["features.messages.impl.timeline.components.event_TimelineItemLocationView_Day_3_en","features.messages.impl.timeline.components.event_TimelineItemLocationView_Night_3_en",20675,], -["features.messages.impl.timeline.components.event_TimelineItemLocationView_Day_4_en","features.messages.impl.timeline.components.event_TimelineItemLocationView_Night_4_en",20675,], -["features.messages.impl.timeline.components.event_TimelineItemPollView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemPollView_Night_0_en",20675,], -["features.messages.impl.timeline.components.event_TimelineItemPollView_Day_1_en","features.messages.impl.timeline.components.event_TimelineItemPollView_Night_1_en",20675,], -["features.messages.impl.timeline.components.event_TimelineItemPollView_Day_2_en","features.messages.impl.timeline.components.event_TimelineItemPollView_Night_2_en",20675,], -["features.messages.impl.timeline.components.event_TimelineItemPollView_Day_3_en","features.messages.impl.timeline.components.event_TimelineItemPollView_Night_3_en",20675,], -["features.messages.impl.timeline.components_TimelineItemReactionsLayout_Day_0_en","features.messages.impl.timeline.components_TimelineItemReactionsLayout_Night_0_en",20675,], +["features.messages.impl.timeline.components.event_TimelineItemLocationView_Day_1_en","features.messages.impl.timeline.components.event_TimelineItemLocationView_Night_1_en",20698,], +["features.messages.impl.timeline.components.event_TimelineItemLocationView_Day_2_en","features.messages.impl.timeline.components.event_TimelineItemLocationView_Night_2_en",20698,], +["features.messages.impl.timeline.components.event_TimelineItemLocationView_Day_3_en","features.messages.impl.timeline.components.event_TimelineItemLocationView_Night_3_en",20698,], +["features.messages.impl.timeline.components.event_TimelineItemLocationView_Day_4_en","features.messages.impl.timeline.components.event_TimelineItemLocationView_Night_4_en",20698,], +["features.messages.impl.timeline.components.event_TimelineItemPollView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemPollView_Night_0_en",20698,], +["features.messages.impl.timeline.components.event_TimelineItemPollView_Day_1_en","features.messages.impl.timeline.components.event_TimelineItemPollView_Night_1_en",20698,], +["features.messages.impl.timeline.components.event_TimelineItemPollView_Day_2_en","features.messages.impl.timeline.components.event_TimelineItemPollView_Night_2_en",20698,], +["features.messages.impl.timeline.components.event_TimelineItemPollView_Day_3_en","features.messages.impl.timeline.components.event_TimelineItemPollView_Night_3_en",20698,], +["features.messages.impl.timeline.components_TimelineItemReactionsLayout_Day_0_en","features.messages.impl.timeline.components_TimelineItemReactionsLayout_Night_0_en",20698,], ["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",20675,], -["features.messages.impl.timeline.components_TimelineItemReactionsViewOutgoing_Day_0_en","features.messages.impl.timeline.components_TimelineItemReactionsViewOutgoing_Night_0_en",20675,], +["features.messages.impl.timeline.components_TimelineItemReactionsViewIncoming_Day_0_en","features.messages.impl.timeline.components_TimelineItemReactionsViewIncoming_Night_0_en",20698,], +["features.messages.impl.timeline.components_TimelineItemReactionsViewOutgoing_Day_0_en","features.messages.impl.timeline.components_TimelineItemReactionsViewOutgoing_Night_0_en",20698,], ["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",20675,], +["features.messages.impl.timeline.components.virtual_TimelineItemReadMarkerView_Day_0_en","features.messages.impl.timeline.components.virtual_TimelineItemReadMarkerView_Night_0_en",20698,], ["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,], @@ -1633,13 +1645,13 @@ 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_TimelineItemRedactedMessagesGroup_Day_0_en","features.messages.impl.timeline.components_TimelineItemRedactedMessagesGroup_Night_0_en",0,], -["features.messages.impl.timeline.components.event_TimelineItemRedactedView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemRedactedView_Night_0_en",20675,], -["features.messages.impl.timeline.components.virtual_TimelineItemRoomBeginningView_Day_0_en","features.messages.impl.timeline.components.virtual_TimelineItemRoomBeginningView_Night_0_en",20675,], -["features.messages.impl.timeline.components_TimelineItemScanningContentFailed_Day_0_en","features.messages.impl.timeline.components_TimelineItemScanningContentFailed_Night_0_en",0,], -["features.messages.impl.timeline.components_TimelineItemScanningContentNotFound_Day_0_en","features.messages.impl.timeline.components_TimelineItemScanningContentNotFound_Night_0_en",0,], -["features.messages.impl.timeline.components_TimelineItemScanningContentWithInvalidReplies_Day_0_en","features.messages.impl.timeline.components_TimelineItemScanningContentWithInvalidReplies_Night_0_en",0,], -["features.messages.impl.timeline.components_TimelineItemScanningContentWithRepliesFailed_Day_0_en","features.messages.impl.timeline.components_TimelineItemScanningContentWithRepliesFailed_Night_0_en",0,], +["features.messages.impl.timeline.components_TimelineItemRedactedMessagesGroup_Day_0_en","features.messages.impl.timeline.components_TimelineItemRedactedMessagesGroup_Night_0_en",20698,], +["features.messages.impl.timeline.components.event_TimelineItemRedactedView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemRedactedView_Night_0_en",20698,], +["features.messages.impl.timeline.components.virtual_TimelineItemRoomBeginningView_Day_0_en","features.messages.impl.timeline.components.virtual_TimelineItemRoomBeginningView_Night_0_en",20698,], +["features.messages.impl.timeline.components_TimelineItemScanningContentFailed_Day_0_en","features.messages.impl.timeline.components_TimelineItemScanningContentFailed_Night_0_en",20698,], +["features.messages.impl.timeline.components_TimelineItemScanningContentNotFound_Day_0_en","features.messages.impl.timeline.components_TimelineItemScanningContentNotFound_Night_0_en",20698,], +["features.messages.impl.timeline.components_TimelineItemScanningContentWithInvalidReplies_Day_0_en","features.messages.impl.timeline.components_TimelineItemScanningContentWithInvalidReplies_Night_0_en",20698,], +["features.messages.impl.timeline.components_TimelineItemScanningContentWithRepliesFailed_Day_0_en","features.messages.impl.timeline.components_TimelineItemScanningContentWithRepliesFailed_Night_0_en",20698,], ["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_TimelineItemStickerViewScanningContent_Day_0_en","features.messages.impl.timeline.components_TimelineItemStickerViewScanningContent_Night_0_en",0,], @@ -1655,8 +1667,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",20675,], -["features.messages.impl.timeline.components.event_TimelineItemVideoViewHideMediaContent_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemVideoViewHideMediaContent_Night_0_en",20675,], +["features.messages.impl.timeline.components.event_TimelineItemUnknownView_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemUnknownView_Night_0_en",20698,], +["features.messages.impl.timeline.components.event_TimelineItemVideoViewHideMediaContent_Day_0_en","features.messages.impl.timeline.components.event_TimelineItemVideoViewHideMediaContent_Night_0_en",20698,], ["features.messages.impl.timeline.components_TimelineItemVideoViewScanningContent_Day_0_en","features.messages.impl.timeline.components_TimelineItemVideoViewScanningContent_Night_0_en",0,], ["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,], @@ -1681,109 +1693,109 @@ export const screenshots = [ ["features.messages.impl.timeline.components.event_TimelineItemVoiceView_Day_8_en","features.messages.impl.timeline.components.event_TimelineItemVoiceView_Night_8_en",0,], ["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_TimelineViewMessageShield_Day_0_en","features.messages.impl.timeline_TimelineViewMessageShield_Night_0_en",20675,], +["features.messages.impl.timeline_TimelineViewMessageShield_Day_0_en","features.messages.impl.timeline_TimelineViewMessageShield_Night_0_en",20698,], ["features.messages.impl.timeline_TimelineViewWithReadMarkerBothIndicators_Day_0_en","features.messages.impl.timeline_TimelineViewWithReadMarkerBothIndicators_Night_0_en",0,], ["features.messages.impl.timeline_TimelineViewWithReadMarkerJumpToUnreadIndicatorOnly_Day_0_en","features.messages.impl.timeline_TimelineViewWithReadMarkerJumpToUnreadIndicatorOnly_Night_0_en",0,], -["features.messages.impl.timeline_TimelineView_Day_0_en","features.messages.impl.timeline_TimelineView_Night_0_en",20675,], -["features.messages.impl.timeline_TimelineView_Day_10_en","features.messages.impl.timeline_TimelineView_Night_10_en",20675,], -["features.messages.impl.timeline_TimelineView_Day_11_en","features.messages.impl.timeline_TimelineView_Night_11_en",20675,], -["features.messages.impl.timeline_TimelineView_Day_12_en","features.messages.impl.timeline_TimelineView_Night_12_en",20675,], -["features.messages.impl.timeline_TimelineView_Day_13_en","features.messages.impl.timeline_TimelineView_Night_13_en",20675,], -["features.messages.impl.timeline_TimelineView_Day_14_en","features.messages.impl.timeline_TimelineView_Night_14_en",20675,], -["features.messages.impl.timeline_TimelineView_Day_15_en","features.messages.impl.timeline_TimelineView_Night_15_en",20675,], -["features.messages.impl.timeline_TimelineView_Day_16_en","features.messages.impl.timeline_TimelineView_Night_16_en",20675,], -["features.messages.impl.timeline_TimelineView_Day_17_en","features.messages.impl.timeline_TimelineView_Night_17_en",20675,], -["features.messages.impl.timeline_TimelineView_Day_1_en","features.messages.impl.timeline_TimelineView_Night_1_en",20675,], +["features.messages.impl.timeline_TimelineView_Day_0_en","features.messages.impl.timeline_TimelineView_Night_0_en",20698,], +["features.messages.impl.timeline_TimelineView_Day_10_en","features.messages.impl.timeline_TimelineView_Night_10_en",20698,], +["features.messages.impl.timeline_TimelineView_Day_11_en","features.messages.impl.timeline_TimelineView_Night_11_en",20698,], +["features.messages.impl.timeline_TimelineView_Day_12_en","features.messages.impl.timeline_TimelineView_Night_12_en",20698,], +["features.messages.impl.timeline_TimelineView_Day_13_en","features.messages.impl.timeline_TimelineView_Night_13_en",20698,], +["features.messages.impl.timeline_TimelineView_Day_14_en","features.messages.impl.timeline_TimelineView_Night_14_en",20698,], +["features.messages.impl.timeline_TimelineView_Day_15_en","features.messages.impl.timeline_TimelineView_Night_15_en",20698,], +["features.messages.impl.timeline_TimelineView_Day_16_en","features.messages.impl.timeline_TimelineView_Night_16_en",20698,], +["features.messages.impl.timeline_TimelineView_Day_17_en","features.messages.impl.timeline_TimelineView_Night_17_en",20698,], +["features.messages.impl.timeline_TimelineView_Day_1_en","features.messages.impl.timeline_TimelineView_Night_1_en",20698,], ["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",20675,], +["features.messages.impl.timeline_TimelineView_Day_4_en","features.messages.impl.timeline_TimelineView_Night_4_en",20698,], ["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",20675,], +["features.messages.impl.timeline_TimelineView_Day_6_en","features.messages.impl.timeline_TimelineView_Night_6_en",20698,], ["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",0,], ["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",20675,], -["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_1_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_1_en",20675,], -["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_2_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_2_en",20675,], -["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_3_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_3_en",20675,], -["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_4_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_4_en",20675,], -["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_5_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_5_en",20675,], -["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_6_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_6_en",20675,], -["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_7_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_7_en",20675,], +["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_0_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_0_en",20698,], +["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_1_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_1_en",20698,], +["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_2_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_2_en",20698,], +["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_3_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_3_en",20698,], +["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_4_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_4_en",20698,], +["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_5_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_5_en",20698,], +["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_6_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_6_en",20698,], +["libraries.troubleshoot.impl_TroubleshootNotificationsView_Day_7_en","libraries.troubleshoot.impl_TroubleshootNotificationsView_Night_7_en",20698,], ["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",20675,], -["features.messages.impl.typing_TypingNotificationView_Day_2_en","features.messages.impl.typing_TypingNotificationView_Night_2_en",20675,], -["features.messages.impl.typing_TypingNotificationView_Day_3_en","features.messages.impl.typing_TypingNotificationView_Night_3_en",20675,], -["features.messages.impl.typing_TypingNotificationView_Day_4_en","features.messages.impl.typing_TypingNotificationView_Night_4_en",20675,], -["features.messages.impl.typing_TypingNotificationView_Day_5_en","features.messages.impl.typing_TypingNotificationView_Night_5_en",20675,], -["features.messages.impl.typing_TypingNotificationView_Day_6_en","features.messages.impl.typing_TypingNotificationView_Night_6_en",20675,], +["features.messages.impl.typing_TypingNotificationView_Day_1_en","features.messages.impl.typing_TypingNotificationView_Night_1_en",20698,], +["features.messages.impl.typing_TypingNotificationView_Day_2_en","features.messages.impl.typing_TypingNotificationView_Night_2_en",20698,], +["features.messages.impl.typing_TypingNotificationView_Day_3_en","features.messages.impl.typing_TypingNotificationView_Night_3_en",20698,], +["features.messages.impl.typing_TypingNotificationView_Day_4_en","features.messages.impl.typing_TypingNotificationView_Night_4_en",20698,], +["features.messages.impl.typing_TypingNotificationView_Day_5_en","features.messages.impl.typing_TypingNotificationView_Night_5_en",20698,], +["features.messages.impl.typing_TypingNotificationView_Day_6_en","features.messages.impl.typing_TypingNotificationView_Night_6_en",20698,], ["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","",20675,], +["libraries.matrix.ui.components_UnresolvedUserRow_en","",20698,], ["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",20675,], -["features.startchat.impl.components_UserListView_Day_0_en","features.startchat.impl.components_UserListView_Night_0_en",20675,], -["features.startchat.impl.components_UserListView_Day_1_en","features.startchat.impl.components_UserListView_Night_1_en",20675,], -["features.startchat.impl.components_UserListView_Day_2_en","features.startchat.impl.components_UserListView_Night_2_en",20675,], +["features.roomdetails.impl.notificationsettings_UserDefinedRoomNotificationSettingsView_Day_0_en","features.roomdetails.impl.notificationsettings_UserDefinedRoomNotificationSettingsView_Night_0_en",20698,], +["features.startchat.impl.components_UserListView_Day_0_en","features.startchat.impl.components_UserListView_Night_0_en",20698,], +["features.startchat.impl.components_UserListView_Day_1_en","features.startchat.impl.components_UserListView_Night_1_en",20698,], +["features.startchat.impl.components_UserListView_Day_2_en","features.startchat.impl.components_UserListView_Night_2_en",20698,], ["features.startchat.impl.components_UserListView_Day_3_en","features.startchat.impl.components_UserListView_Night_3_en",0,], ["features.startchat.impl.components_UserListView_Day_4_en","features.startchat.impl.components_UserListView_Night_4_en",0,], ["features.startchat.impl.components_UserListView_Day_5_en","features.startchat.impl.components_UserListView_Night_5_en",0,], ["features.startchat.impl.components_UserListView_Day_6_en","features.startchat.impl.components_UserListView_Night_6_en",0,], -["features.startchat.impl.components_UserListView_Day_7_en","features.startchat.impl.components_UserListView_Night_7_en",20675,], +["features.startchat.impl.components_UserListView_Day_7_en","features.startchat.impl.components_UserListView_Night_7_en",20698,], ["features.startchat.impl.components_UserListView_Day_8_en","features.startchat.impl.components_UserListView_Night_8_en",0,], -["features.startchat.impl.components_UserListView_Day_9_en","features.startchat.impl.components_UserListView_Night_9_en",20675,], +["features.startchat.impl.components_UserListView_Day_9_en","features.startchat.impl.components_UserListView_Night_9_en",20698,], ["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",20675,], -["features.userprofile.shared_UserProfileHeaderSection_Day_0_en","features.userprofile.shared_UserProfileHeaderSection_Night_0_en",20675,], -["features.userprofile.shared_UserProfileMainActionsSection_Day_0_en","features.userprofile.shared_UserProfileMainActionsSection_Night_0_en",20675,], -["features.userprofile.shared_UserProfileView_Day_0_en","features.userprofile.shared_UserProfileView_Night_0_en",20675,], -["features.userprofile.shared_UserProfileView_Day_1_en","features.userprofile.shared_UserProfileView_Night_1_en",20675,], -["features.userprofile.shared_UserProfileView_Day_2_en","features.userprofile.shared_UserProfileView_Night_2_en",20675,], -["features.userprofile.shared_UserProfileView_Day_3_en","features.userprofile.shared_UserProfileView_Night_3_en",20675,], -["features.userprofile.shared_UserProfileView_Day_4_en","features.userprofile.shared_UserProfileView_Night_4_en",20675,], -["features.userprofile.shared_UserProfileView_Day_5_en","features.userprofile.shared_UserProfileView_Night_5_en",20675,], -["features.userprofile.shared_UserProfileView_Day_6_en","features.userprofile.shared_UserProfileView_Night_6_en",20675,], -["features.userprofile.shared_UserProfileView_Day_7_en","features.userprofile.shared_UserProfileView_Night_7_en",20675,], -["features.userprofile.shared_UserProfileView_Day_8_en","features.userprofile.shared_UserProfileView_Night_8_en",20675,], -["features.userprofile.shared_UserProfileView_Day_9_en","features.userprofile.shared_UserProfileView_Night_9_en",20675,], -["features.preferences.impl.userstatus_UserStatusView_Day_0_en","features.preferences.impl.userstatus_UserStatusView_Night_0_en",0,], +["features.userprofile.shared_UserProfileHeaderSectionWithVerificationViolation_Day_0_en","features.userprofile.shared_UserProfileHeaderSectionWithVerificationViolation_Night_0_en",20698,], +["features.userprofile.shared_UserProfileHeaderSection_Day_0_en","features.userprofile.shared_UserProfileHeaderSection_Night_0_en",20698,], +["features.userprofile.shared_UserProfileMainActionsSection_Day_0_en","features.userprofile.shared_UserProfileMainActionsSection_Night_0_en",20698,], +["features.userprofile.shared_UserProfileView_Day_0_en","features.userprofile.shared_UserProfileView_Night_0_en",20698,], +["features.userprofile.shared_UserProfileView_Day_1_en","features.userprofile.shared_UserProfileView_Night_1_en",20698,], +["features.userprofile.shared_UserProfileView_Day_2_en","features.userprofile.shared_UserProfileView_Night_2_en",20698,], +["features.userprofile.shared_UserProfileView_Day_3_en","features.userprofile.shared_UserProfileView_Night_3_en",20698,], +["features.userprofile.shared_UserProfileView_Day_4_en","features.userprofile.shared_UserProfileView_Night_4_en",20698,], +["features.userprofile.shared_UserProfileView_Day_5_en","features.userprofile.shared_UserProfileView_Night_5_en",20698,], +["features.userprofile.shared_UserProfileView_Day_6_en","features.userprofile.shared_UserProfileView_Night_6_en",20698,], +["features.userprofile.shared_UserProfileView_Day_7_en","features.userprofile.shared_UserProfileView_Night_7_en",20698,], +["features.userprofile.shared_UserProfileView_Day_8_en","features.userprofile.shared_UserProfileView_Night_8_en",20698,], +["features.userprofile.shared_UserProfileView_Day_9_en","features.userprofile.shared_UserProfileView_Night_9_en",20698,], +["features.preferences.impl.userstatus_UserStatusView_Day_0_en","features.preferences.impl.userstatus_UserStatusView_Night_0_en",20698,], ["features.preferences.impl.userstatus_UserStatusView_Day_1_en","features.preferences.impl.userstatus_UserStatusView_Night_1_en",0,], -["features.preferences.impl.userstatus_UserStatusView_Day_2_en","features.preferences.impl.userstatus_UserStatusView_Night_2_en",0,], -["features.preferences.impl.userstatus_UserStatusView_Day_3_en","features.preferences.impl.userstatus_UserStatusView_Night_3_en",0,], -["features.preferences.impl.userstatus_UserStatusView_Day_4_en","features.preferences.impl.userstatus_UserStatusView_Night_4_en",0,], -["features.preferences.impl.userstatus_UserStatusView_Day_5_en","features.preferences.impl.userstatus_UserStatusView_Night_5_en",20675,], -["features.preferences.impl.userstatus_UserStatusView_Day_6_en","features.preferences.impl.userstatus_UserStatusView_Night_6_en",20675,], +["features.preferences.impl.userstatus_UserStatusView_Day_2_en","features.preferences.impl.userstatus_UserStatusView_Night_2_en",20698,], +["features.preferences.impl.userstatus_UserStatusView_Day_3_en","features.preferences.impl.userstatus_UserStatusView_Night_3_en",20698,], +["features.preferences.impl.userstatus_UserStatusView_Day_4_en","features.preferences.impl.userstatus_UserStatusView_Night_4_en",20698,], +["features.preferences.impl.userstatus_UserStatusView_Day_5_en","features.preferences.impl.userstatus_UserStatusView_Night_5_en",20698,], +["features.preferences.impl.userstatus_UserStatusView_Day_6_en","features.preferences.impl.userstatus_UserStatusView_Night_6_en",20698,], ["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,], ["libraries.mediaviewer.impl.gallery.ui_VideoItemView_Day_1_en","libraries.mediaviewer.impl.gallery.ui_VideoItemView_Night_1_en",0,], -["features.messages.impl.attachments.preview_VideoQualitySelectorDialog_Day_0_en","features.messages.impl.attachments.preview_VideoQualitySelectorDialog_Night_0_en",20675,], -["features.preferences.impl.advanced_VideoQualitySelectorDialog_Day_0_en","features.preferences.impl.advanced_VideoQualitySelectorDialog_Night_0_en",20675,], +["features.messages.impl.attachments.preview_VideoQualitySelectorDialog_Day_0_en","features.messages.impl.attachments.preview_VideoQualitySelectorDialog_Night_0_en",20698,], +["features.preferences.impl.advanced_VideoQualitySelectorDialog_Day_0_en","features.preferences.impl.advanced_VideoQualitySelectorDialog_Night_0_en",20698,], ["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",20675,], +["features.viewfolder.impl.file_ViewFileView_Day_3_en","features.viewfolder.impl.file_ViewFileView_Night_3_en",20698,], ["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,], ["features.viewfolder.impl.folder_ViewFolderView_Day_1_en","features.viewfolder.impl.folder_ViewFolderView_Night_1_en",0,], ["libraries.designsystem.components.visuallist_VisualListItem_Day_0_en","libraries.designsystem.components.visuallist_VisualListItem_Night_0_en",0,], ["libraries.designsystem.components.visuallist_VisualList_Day_0_en","libraries.designsystem.components.visuallist_VisualList_Night_0_en",0,], -["libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_0_en","libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Night_0_en",0,], -["libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_1_en","libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Night_1_en",0,], -["libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_2_en","libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Night_2_en",0,], -["libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_3_en","libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Night_3_en",0,], -["libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_4_en","libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Night_4_en",0,], -["libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_0_en","libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Night_0_en",0,], -["libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_1_en","libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Night_1_en",0,], -["libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_2_en","libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Night_2_en",0,], -["libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_3_en","libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Night_3_en",0,], +["libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_0_en","libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Night_0_en",20698,], +["libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_1_en","libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Night_1_en",20698,], +["libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_2_en","libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Night_2_en",20698,], +["libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_3_en","libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Night_3_en",20698,], +["libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Day_4_en","libraries.mediaviewer.impl.gallery.ui_VoiceItemViewPlay_Night_4_en",20698,], +["libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_0_en","libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Night_0_en",20698,], +["libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_1_en","libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Night_1_en",20698,], +["libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_2_en","libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Night_2_en",20698,], +["libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Day_3_en","libraries.mediaviewer.impl.gallery.ui_VoiceItemView_Night_3_en",20698,], ["libraries.textcomposer.components_VoiceMessageDeleteButtonIcon_Day_0_en","libraries.textcomposer.components_VoiceMessageDeleteButtonIcon_Night_0_en",0,], ["libraries.textcomposer.components_VoiceMessagePreview_Day_0_en","libraries.textcomposer.components_VoiceMessagePreview_Night_0_en",0,], ["libraries.textcomposer.components_VoiceMessageRecorderButtonIcon_Day_0_en","libraries.textcomposer.components_VoiceMessageRecorderButtonIcon_Night_0_en",0,], diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarMultiAccount_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarMultiAccount_Day_0_en.png index 5f17df2b70..c3ccc05201 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarMultiAccount_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarMultiAccount_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:16eff51daa024855e4843c78ac5d8f381e0ca66d7fd4102319ae74bc5298d4bd -size 22758 +oid sha256:c76d6fc31ada95af32d87f46d6b10a3df426c6ab03449de1f36c1f5bdc419d78 +size 22766 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarMultiAccount_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarMultiAccount_Night_0_en.png index a381f7a081..ed75539fc3 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarMultiAccount_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarMultiAccount_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:41a251131b2d236b7e5d24730def468e9bf1861409dd1a7ef8eaf9c3b5ab2226 -size 20909 +oid sha256:337562be0b6c3cfdb2ee9da375e100a2aa294e46c53e3277e91d4788f0cab66d +size 20702 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarSpaceFiltersSelected_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarSpaceFiltersSelected_Day_0_en.png index 0d36ac3681..3a77eb5f70 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarSpaceFiltersSelected_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarSpaceFiltersSelected_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f0caea3f8eb17dbebdc738a60f2f734ec26c1f94f511eab50669a1c2ec0370a1 -size 23094 +oid sha256:478846aa3bb54c305b961c1a39c1e71bdf9a3ddb5f7127b5610399e4261c17e2 +size 23086 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarSpaceFiltersSelected_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarSpaceFiltersSelected_Night_0_en.png index e91898f2a3..05e6cadb0d 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarSpaceFiltersSelected_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarSpaceFiltersSelected_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0e41fe1823898014736c2b68a3d60f055d483626deae2407ad0145703a6fc1f6 -size 21317 +oid sha256:e6e3718eaf947b01458efa318e0e9d033d5529db2190470ac3fab7d233712468 +size 21112 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithIndicator_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithIndicator_Day_0_en.png index 1fd8dfd36f..491015cef9 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithIndicator_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithIndicator_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d5accca8cea12a266d137db293d48261e7bb92ae84e38167dc287ed39a34df5c -size 23207 +oid sha256:2905c59a9321a5110ebd2fdf66ea4c1c2a4a57777dab1bfacf24026b96b9c773 +size 23188 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithIndicator_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithIndicator_Night_0_en.png index 91b11e062a..a5b2ac27e8 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithIndicator_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithIndicator_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3bc4c15cdee0758dfb100efb9c2571152940f0a7724b8e3838ef223c0bd122c8 -size 21325 +oid sha256:58a9e971e49c3e45a51863b6b78f06b06934dd1b2bf4e84f407564c8d9e8047f +size 21119 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithStatus_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithStatus_Day_0_en.png index 54b10704ee..dcc43b624c 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithStatus_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithStatus_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6a38ac7b1ae8a91f08a8010d684204474e815fb967bbabe3a1080d152d802d44 -size 23742 +oid sha256:a9007ccadff05518151748860ab9b34ba35f10d459a4301a36be424330630b45 +size 23721 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithStatus_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithStatus_Night_0_en.png index a41049657f..269cb08cf9 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithStatus_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBarWithStatus_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:520288193ac12637e44d96ce99ca2f44d447699ae840674c146ec05fe41493d1 -size 21902 +oid sha256:21e43a869049ba9361303794ba3aabb7d7f4c4b9f1b9c609abd6fd40bd2f562a +size 21697 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBar_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBar_Day_0_en.png index 495b8b894b..34c76fd984 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBar_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBar_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1981c2ba67db5027a3dad0a477dd33ee2947044574c2b89a55cf7972ab64b3bf -size 22863 +oid sha256:c49874c8a27e2f864b10fee2eff8da02130e7357676eb4976484b1184bd7cfce +size 22872 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBar_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBar_Night_0_en.png index 2b154c8425..27dc50682b 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBar_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.components_HomeTopBar_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b31e258cd95a44e39943224285751a1b0ca51b9d490dc70479bf11bb63385dae -size 20974 +oid sha256:690f56827063e045d81a7fb5643dc6b98d8c0527b8f7c4377fcedb06c51d8f40 +size 20764 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.filters_RoomListFiltersView_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.filters_RoomListFiltersView_Day_0_en.png index 5a7fb9e03c..130a8754b3 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.filters_RoomListFiltersView_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.filters_RoomListFiltersView_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f557b46c20cc5217b4f6f5645a6cda24a1b895e0bf68e59e9cde777f47eb281c -size 13349 +oid sha256:c607a9e54f98760bdb005e57113aa2ec6d9bc22886220d7f61e4c8273fbc8d5f +size 13345 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.filters_RoomListFiltersView_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.filters_RoomListFiltersView_Day_1_en.png index 5d08198ecb..c1b42abf84 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.filters_RoomListFiltersView_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.filters_RoomListFiltersView_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9efc8268f89209c5df4c8a1d22cad82c1fcda4b4d39ca339b88437ed92ae6d81 -size 12005 +oid sha256:ae45cbf9701a8ac37f8e39db09a6afea0025ed8790bf8d4bfbfbc28f4808068c +size 12019 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.filters_RoomListFiltersView_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.filters_RoomListFiltersView_Night_0_en.png index 6d642d0562..ddaffcbc0d 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.filters_RoomListFiltersView_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.filters_RoomListFiltersView_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:663048deaf6aaf6c7a3c3b88c2d2b79797682c98ebb7d30c519616ee38cd6c10 -size 12514 +oid sha256:9cf66ea3e90b0012f5f5298d9f9f5d2bcc331124698430850833a6530d741ec7 +size 12528 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl.filters_RoomListFiltersView_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl.filters_RoomListFiltersView_Night_1_en.png index 8ff88e6921..21c9c19b51 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl.filters_RoomListFiltersView_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl.filters_RoomListFiltersView_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:33743e1bf0782983bbd5d7ba66212457bea0150998623e191a34170d551983e4 -size 11637 +oid sha256:4bfadd8ddf507298f179f189e6a6b83e661d5200abab5a5e4af31a6e60cef59f +size 11569 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeViewA11y_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeViewA11y_en.png index fbb9365c88..560b337d7d 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeViewA11y_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeViewA11y_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:610593d1acf3fa39f937f787a5e6531c3dd0a2262bc1abf63b8489f227917ba5 -size 144141 +oid sha256:a77b3fd89bdf26f15b44d070ee60af56a885e5c8d087780630e1dc5303de077c +size 143941 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 091b77a218..5b1808def1 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:265d1fd77f393724a26a410e343b1dde4ce8e986db16ba00bb07def24aa52139 -size 68363 +oid sha256:905febd17389965c962b51c0225a3019d0b5b49ed1189e15e8be631989effb85 +size 68367 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 80e9263c7e..a6942d9c35 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:7758cf4023fa542f29fd8ade54bab1f2707666c640ad62ed8a6805c8ec2256a3 -size 95336 +oid sha256:7d07d37556793e63eb09f0ea7e71a2a8bca73098d7372dea35b1ad916a8ebebe +size 95328 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 2d5574b88a..4cf6e8dd31 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:60eec8085688c228b28cef3f1922b984f2cdc54a9207ea04c27c44900fb4d7ee -size 87932 +oid sha256:545e5dc4c7602e6535109e34816922a76d58c0ae19e7d86627b9515c1c4645c3 +size 87943 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 091b77a218..5b1808def1 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:265d1fd77f393724a26a410e343b1dde4ce8e986db16ba00bb07def24aa52139 -size 68363 +oid sha256:905febd17389965c962b51c0225a3019d0b5b49ed1189e15e8be631989effb85 +size 68367 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 091b77a218..5b1808def1 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:265d1fd77f393724a26a410e343b1dde4ce8e986db16ba00bb07def24aa52139 -size 68363 +oid sha256:905febd17389965c962b51c0225a3019d0b5b49ed1189e15e8be631989effb85 +size 68367 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 f4db0cfcf2..cfd1827f50 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:564360123154706aceed6daf43f33c96c7e3c49b787222ecc236aabb1349e3a1 -size 65323 +oid sha256:6618a3f641c4919fd009f8bab432cd0d03ee933accf5b33815202eed721c78bf +size 65320 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 091b77a218..5b1808def1 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:265d1fd77f393724a26a410e343b1dde4ce8e986db16ba00bb07def24aa52139 -size 68363 +oid sha256:905febd17389965c962b51c0225a3019d0b5b49ed1189e15e8be631989effb85 +size 68367 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_6_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_6_en.png index c301dfd550..516089368e 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:de11af4e521b9ea166dd422b94e1a6405753a8c00a9b637c76dd3b0e14774294 -size 55355 +oid sha256:fd658e684c89fc1b201a4a4090037d83c8882774b2a2593b12b30bd011971ecf +size 55324 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_7_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_7_en.png index 05b71c486e..f4bb27c8b4 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6596062bc9bcbd81f51e1c7118426ec389c3bcae65df0793754c1a319399998f -size 55159 +oid sha256:4c5798c49f07cd4a564c6b48c18dc0a67b5437e403da63e154c6bdbcee9fb060 +size 55128 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_8_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_8_en.png index 85ef4f3937..b43498911a 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_8_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Day_8_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:af598c1be693235acf29785c487fe69f0bdfc32408bddc948be78bc5fd8ce558 -size 53394 +oid sha256:4c8042cfa5d850e0322da8a6cb1fb019da4d3675c469d29aec84fe9d6a8aa147 +size 53368 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 f3460a5dd4..c25fce6fdf 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:d2151f61b19e6d1710c9b9074abbcf2a927fca510cc6d3ef08746dcc4cf8e14a -size 87791 +oid sha256:4441594ce0a35e4df5cc0a1d7dff028fd6842e229e0ec10a1dca05a84749010c +size 87798 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 226f054223..af72b7ef67 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:a4c896b9025d301961b134c22ec1af858cec8a7b0eb1d823936f5af3cad38271 -size 63094 +oid sha256:4e9677b8e987ca3d709a60fe92ec0125ef559ea765daeff4f58ea335796731aa +size 62919 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 d905171a03..2c40439113 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:3691f9a0e8e90001011735c7496cc977995347eee2333d0f9bb37bd57b488fb8 -size 89113 +oid sha256:d760c522a5e69fb609740180b4c90a8046f0a516fc2271b14ac6b337a0bba3b4 +size 88924 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 a4ffe24031..7eaf2627d0 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:649be03a09cc9f34c0d59f035cdf26096b54b04d9dcb06f53882aae7a6c098cb -size 81789 +oid sha256:c19fc8a6cfb56d95433cc6e5cc193f11c6b6b3c57d6b2f49b0e21f226ef8a2fe +size 81593 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 226f054223..af72b7ef67 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:a4c896b9025d301961b134c22ec1af858cec8a7b0eb1d823936f5af3cad38271 -size 63094 +oid sha256:4e9677b8e987ca3d709a60fe92ec0125ef559ea765daeff4f58ea335796731aa +size 62919 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 226f054223..af72b7ef67 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:a4c896b9025d301961b134c22ec1af858cec8a7b0eb1d823936f5af3cad38271 -size 63094 +oid sha256:4e9677b8e987ca3d709a60fe92ec0125ef559ea765daeff4f58ea335796731aa +size 62919 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 b8280a1e69..a1d6128daa 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:6329073993661030954c535849498a33dc3a95700ef3b1fae9f80cf0b5e6ffaa -size 60728 +oid sha256:89e25edf690c8c416699e82781a4dd01f4ab370e8ca868b7bd4ce1a0e5a1124e +size 60532 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 226f054223..af72b7ef67 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:a4c896b9025d301961b134c22ec1af858cec8a7b0eb1d823936f5af3cad38271 -size 63094 +oid sha256:4e9677b8e987ca3d709a60fe92ec0125ef559ea765daeff4f58ea335796731aa +size 62919 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_6_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_6_en.png index 75d8b98f01..14dc407833 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:18d684eb1d4bbb7c3eb5de88a5123a60ff66ae625809761ae5f3624e443961c4 -size 52297 +oid sha256:784de072b6803569aaba3fddfeb1301ace32f51d2a3b78d823ccaaa77fd5d52e +size 52222 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_7_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_7_en.png index 0c77cb1a94..d4f6602825 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6d4567aa39bf44dbf66c8c81f9195f0520364b1478b0bf9ef499923e0c267b9f -size 52015 +oid sha256:fdec8293d351e9b879bafdff048a9ae3bdeaf34d1e47125fe94386415ef80ac4 +size 51941 diff --git a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_8_en.png b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_8_en.png index f9b5ae643f..2dcffff9f8 100644 --- a/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_8_en.png +++ b/tests/uitests/src/test/snapshots/images/features.home.impl_HomeView_Night_8_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:729160a038512d10dbce06e6bdf8db15a2aca6b22624a096ade6687ca9c8b7de -size 50335 +oid sha256:f0599ae5bfbd84c1087b06b1e50352fd21b0d784e62536868f012f8a3ab8da95 +size 50257 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 3ae5a4a153..042afef2d1 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:76035b0f36179e93f4e35b9c59d51acee15e7db9d02249ee102656da88e04341 -size 81635 +oid sha256:3af77b779731125d04585399023ac996fbdd4c42ee634d3c090153972a458212 +size 81441 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_1_en.png index 60bf32612b..b1bdcee7a4 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e44d67574a6d3df53f9c9a6d588461dda932cc77142c07605e2a53a0f7c33819 -size 36440 +oid sha256:f53a6b803268437c30350857951422dc1723a38922db4441a97bcb926a0e63ff +size 38724 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_5_en.png index 740c6fd618..be619b419b 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0ca62fd1055aef95b255d40b7f8933e455a7fd7014c96e9e5eef04a9cff5549a -size 22324 +oid sha256:fc017e7707b83549cda8c06ffe8466596372132ba0b58dd91cfb20c451b6a417 +size 22303 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_9_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_9_en.png index f6c445eee1..d194937309 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_9_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_9_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dbb35e33035a9c22164128414bde7f6df848193040eef3bd7f073b0b182a7306 -size 21670 +oid sha256:ebeb2f14074a9bc91dc892bfa056c9c67e83a64c64d645c77d312d64895e3815 +size 21611 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Night_3_en.png index b9e79d2337..317a87e2e5 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8721e0c604b0e12ba22db934ab93794e6c2143d1b4bc4e2f3d297f9121c1e688 -size 29233 +oid sha256:ebbeb66a3f67e48668cadb96069f50feba5f4346119ea62c9dfd83ffd621b7b2 +size 31182 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Night_7_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Night_7_en.png index 5732afb34a..e66ccc603d 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Night_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Night_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dfaee97064c6391c9e611e30bfb36d3abb8d10d2e3312cd21afa3b2b362637cf -size 36805 +oid sha256:1e31aa9639a3805e3644fadbb01ab3503aedee068655920555a4817ae38b6376 +size 40312 diff --git a/tests/uitests/src/test/snapshots/images/features.lockscreen.impl.components_PinEntryTextField_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.lockscreen.impl.components_PinEntryTextField_Night_0_en.png index 5c49c08509..10223f5bf6 100644 --- a/tests/uitests/src/test/snapshots/images/features.lockscreen.impl.components_PinEntryTextField_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.lockscreen.impl.components_PinEntryTextField_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:58a6cbe83f86bbd32c8576a4d62a26794560f53b60c9bf5dc74aa0dd50e2dc87 -size 16238 +oid sha256:62384687c273cb57dbd25bfaa558d83e3efc527fc4dfff4aca8bf85ab1ce9e4b +size 16446 diff --git a/tests/uitests/src/test/snapshots/images/features.login.impl.changeserver_ChangeServerView_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.login.impl.changeserver_ChangeServerView_Day_2_en.png index 00284ac11f..c0aa3f71cc 100644 --- a/tests/uitests/src/test/snapshots/images/features.login.impl.changeserver_ChangeServerView_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.login.impl.changeserver_ChangeServerView_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7a0b0544584a94187bf95ca2d85a89ff135c4e1e6b21f19346c52432e8e3a5f7 -size 26764 +oid sha256:9e70ef5ce399369eae76d87a7fa6bea83ecb4881f4a445908dc206cab1c9058c +size 26431 diff --git a/tests/uitests/src/test/snapshots/images/features.login.impl.changeserver_ChangeServerView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.login.impl.changeserver_ChangeServerView_Day_5_en.png index c4a683e701..c91c6e239c 100644 --- a/tests/uitests/src/test/snapshots/images/features.login.impl.changeserver_ChangeServerView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.login.impl.changeserver_ChangeServerView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:44e078c64ab932a6e9ce2d429efb5f44556d4a923f4949e75dd2bd99591c4533 -size 25242 +oid sha256:6147ea38feac4e6dd9db8e9c7fdea4ad2ad85d8fa403634575152c7bfbe3730b +size 26641 diff --git a/tests/uitests/src/test/snapshots/images/features.login.impl.changeserver_ChangeServerView_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.login.impl.changeserver_ChangeServerView_Night_2_en.png index 1cc22006c0..c01e463208 100644 --- a/tests/uitests/src/test/snapshots/images/features.login.impl.changeserver_ChangeServerView_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.login.impl.changeserver_ChangeServerView_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7174d6f9a73d3be354f515c055752c61982c680b691cfb202aa2202de90dd14b -size 25488 +oid sha256:f77043f870786cca37940ec90203c3694cf6c8b21948a4877cb0d5a49bc943a9 +size 25233 diff --git a/tests/uitests/src/test/snapshots/images/features.login.impl.changeserver_ChangeServerView_Night_5_en.png b/tests/uitests/src/test/snapshots/images/features.login.impl.changeserver_ChangeServerView_Night_5_en.png index 2a6cbdf049..8fe421ac0e 100644 --- a/tests/uitests/src/test/snapshots/images/features.login.impl.changeserver_ChangeServerView_Night_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.login.impl.changeserver_ChangeServerView_Night_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a2d413d264af067d4e03743cd50be879c91796a3f0907f40cefcdc6b0e466897 -size 24020 +oid sha256:8e3fe4faacbc5d5bac2329d8803f44c0d376f8ecf3a12084efcb6a69c2d6f633 +size 25426 diff --git a/tests/uitests/src/test/snapshots/images/features.login.impl.dialogs_SlidingSyncNotSupportedDialog_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.login.impl.dialogs_SlidingSyncNotSupportedDialog_Day_0_en.png index 00284ac11f..c0aa3f71cc 100644 --- a/tests/uitests/src/test/snapshots/images/features.login.impl.dialogs_SlidingSyncNotSupportedDialog_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.login.impl.dialogs_SlidingSyncNotSupportedDialog_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7a0b0544584a94187bf95ca2d85a89ff135c4e1e6b21f19346c52432e8e3a5f7 -size 26764 +oid sha256:9e70ef5ce399369eae76d87a7fa6bea83ecb4881f4a445908dc206cab1c9058c +size 26431 diff --git a/tests/uitests/src/test/snapshots/images/features.login.impl.dialogs_SlidingSyncNotSupportedDialog_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.login.impl.dialogs_SlidingSyncNotSupportedDialog_Night_0_en.png index 1cc22006c0..c01e463208 100644 --- a/tests/uitests/src/test/snapshots/images/features.login.impl.dialogs_SlidingSyncNotSupportedDialog_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.login.impl.dialogs_SlidingSyncNotSupportedDialog_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7174d6f9a73d3be354f515c055752c61982c680b691cfb202aa2202de90dd14b -size 25488 +oid sha256:f77043f870786cca37940ec90203c3694cf6c8b21948a4877cb0d5a49bc943a9 +size 25233 diff --git a/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Day_0_en.png index f0ef271c70..934aca7a69 100644 --- a/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f5d625d4fe980820ec2d8e0d3c926f105f46b5851f962a8d7eb176cb50b7d5a0 -size 31411 +oid sha256:30a07b3e309e67d8ecb79d5d2fb91a2bdefe688e2d85b9d851bf814454a1957b +size 33623 diff --git a/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Day_4_en.png b/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Day_4_en.png index 00284ac11f..c0aa3f71cc 100644 --- a/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Day_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Day_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7a0b0544584a94187bf95ca2d85a89ff135c4e1e6b21f19346c52432e8e3a5f7 -size 26764 +oid sha256:9e70ef5ce399369eae76d87a7fa6bea83ecb4881f4a445908dc206cab1c9058c +size 26431 diff --git a/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Day_5_en.png index c4a683e701..c91c6e239c 100644 --- a/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:44e078c64ab932a6e9ce2d429efb5f44556d4a923f4949e75dd2bd99591c4533 -size 25242 +oid sha256:6147ea38feac4e6dd9db8e9c7fdea4ad2ad85d8fa403634575152c7bfbe3730b +size 26641 diff --git a/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Night_0_en.png index 2c6d745bca..43568c7f7d 100644 --- a/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:32f014c487901d1e6cbb04331b41eedd4c5f46732364f650bcf6d775878c4097 -size 29761 +oid sha256:6818396a028269945337262c6061386e0b7304742e8d84efbcf3ae5a8c88f30c +size 31741 diff --git a/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Night_4_en.png b/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Night_4_en.png index 1cc22006c0..c01e463208 100644 --- a/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Night_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Night_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7174d6f9a73d3be354f515c055752c61982c680b691cfb202aa2202de90dd14b -size 25488 +oid sha256:f77043f870786cca37940ec90203c3694cf6c8b21948a4877cb0d5a49bc943a9 +size 25233 diff --git a/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Night_5_en.png b/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Night_5_en.png index 2a6cbdf049..8fe421ac0e 100644 --- a/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Night_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.login.impl.login_LoginModeView_Night_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a2d413d264af067d4e03743cd50be879c91796a3f0907f40cefcdc6b0e466897 -size 24020 +oid sha256:8e3fe4faacbc5d5bac2329d8803f44c0d376f8ecf3a12084efcb6a69c2d6f633 +size 25426 diff --git a/tests/uitests/src/test/snapshots/images/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_3_en.png b/tests/uitests/src/test/snapshots/images/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_3_en.png index aa987474a3..198dded22c 100644 --- a/tests/uitests/src/test/snapshots/images/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Day_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a524b0538ad4204ea66c46c139035671f55d874c45d46476fb885c15879b93f2 -size 31806 +oid sha256:d2b50de4a9ebc68a8f061ff7ef3c427f6ab33384945d92fa4f7a91b49f439a37 +size 33115 diff --git a/tests/uitests/src/test/snapshots/images/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Night_3_en.png index bada75332c..6636fae75c 100644 --- a/tests/uitests/src/test/snapshots/images/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.login.impl.screens.confirmaccountprovider_ConfirmAccountProviderView_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:efa31bac320466c41fbf33b462418716c1f4fb6def584b38834320d213d2c819 -size 29777 +oid sha256:ac800cd0dbf5258df348803ef17c168803536e9ef97097f7dbd56fbf4dcc14af +size 31032 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_2_en.png index 8edee63bc1..3192cf2a5e 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:de82970da241172b94f822f8792e6fc721dcfc7f0f67e3523962e253e9750884 -size 255933 +oid sha256:1885bbe8b0ea497ac20d7bcdd0c6a93ba0533e898378d35e1cafdc8c9924fd56 +size 279984 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 5f51b27f5e..693a36b7dd 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:3274314ab9e39c23a6b9d66adf80ac8bb7b364ce60a300f96582374a18bc821f -size 54590 +oid sha256:3dbb8ef39b6a7a0c2f576d8bd101aa97c89da696f23e6d5836846494471c01a1 +size 55799 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 bd3b0196d6..0f6de1b844 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:6f7f7415abbe51858f938e16ad03c6aab983fb3d5e2a53a028bae3c031446646 -size 67848 +oid sha256:28512b0fda0b71b98eab03cee15c9d3163825b1a3545670cfa277ddd5434c87a +size 58417 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_2_en.png index 93622cedfe..bd73e322ab 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:87193a7c9eb9d40234970e5f5be02e80f2b3ffe91e2c9ca6afd58b8bccdd5911 -size 55075 +oid sha256:12020ba97720f2374f9ace172693f08be01522e4ca30d3970efa91d802581e81 +size 3657 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_0_en.png index 337e6f8340..442fedd4b8 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c3a6bd617f8e611401889c47057d486b40a610f4a45c1317ab5135341d3bed9e -size 43013 +oid sha256:563efa2485ce2b704b2726c52a72c1bb3e7ad713a8c30399ee9f92a22dc1541a +size 41442 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_1_en.png index 862c91b0d9..bbec348d39 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:65ad05669534ac8e862207a746b46bc77aae62a8645331e62c853463d36cba23 -size 44276 +oid sha256:c9a38ea3e72434f2e699c40ff3dd9ca2b6610904c248cae44d54e07a9e30a3d1 +size 42777 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_2_en.png index 27f9f797b4..b08f882f63 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f1348f0a406ae148ab982c69b0b5ff2e5b7645294615f61cd54dea630c2a867b -size 43820 +oid sha256:7023744a7cd887fd67ed695b9e1dc00bd983742144b27c4c8e9d2e6828e358f1 +size 42181 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_3_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_3_en.png index 372e29372d..bc199e1a7c 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e2de08457a8add019043e8c57625ba5b14ef7151932d1aab1542f9d795605f10 -size 43509 +oid sha256:52c7698569aca9b8641a7071e495ddb1f90fa7b3addf8eb57439c8584d082d29 +size 41762 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_4_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_4_en.png index 2c7cdbc8df..dcda1f622c 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5ac47ae2cbca62013c7a533a50f170d8706e00cfc67653eb434227d0d8a129b6 -size 34325 +oid sha256:3882518424ce569b5cbed980da070ffa6a7c8896f899e2f14e1ec50f3272320a +size 33965 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_5_en.png index 27f9f797b4..b08f882f63 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f1348f0a406ae148ab982c69b0b5ff2e5b7645294615f61cd54dea630c2a867b -size 43820 +oid sha256:7023744a7cd887fd67ed695b9e1dc00bd983742144b27c4c8e9d2e6828e358f1 +size 42181 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_0_en.png index 1be0d6de24..f22ce04c3a 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:246264c438fed958015c6c0b3e5ac376b43d6a21c2af0d22ca54473c3194e849 -size 41527 +oid sha256:26f9ad03508da3f906b14825f89dbeb5e5bc544e4861b6fa3884ad893caa2ada +size 40000 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_1_en.png index f8b3bb9290..5cb1e5d7ac 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6d526bf89d21940686c13d32894c7b197f337b89e58505ffcc5dad21d8cc8534 -size 42881 +oid sha256:60979b915c61e450a0b2032bda6e69275a5be8061edb023e1bc3b62406806843 +size 41420 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_2_en.png index 9b5db83e88..ae6830c56d 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4bb0d46dc52515a1e3459da4cdcaf10c628054fc1cf435fcc68b74a295af8981 -size 42574 +oid sha256:0ce48a35539e1c969190ff1cee3dd599451b77c3369c8ccb75004dd051b7b647 +size 41040 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_3_en.png index e739acf2d1..70c88897db 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a729898af4494f2b267ddc22a93ceac4cc5fe5b2b297e6adf4dc2f1612b906cf -size 41627 +oid sha256:6ec535af29105895d4e9f3d2602b665f9c84234848f3d2d5689cd0512aaa9a71 +size 40057 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_4_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_4_en.png index 1f03413df4..6c16ecc658 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c6c02ba67a517ec9887c8a18c9837256e21692d454a648ddcb82c54064c137e1 -size 32375 +oid sha256:9c320361acd7822fce5907dc3cf3af85e07983640a7786b6dc6ae7b7560ecca4 +size 31957 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_5_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_5_en.png index 9b5db83e88..ae6830c56d 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.report_ReportMessageView_Night_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4bb0d46dc52515a1e3459da4cdcaf10c628054fc1cf435fcc68b74a295af8981 -size 42574 +oid sha256:0ce48a35539e1c969190ff1cee3dd599451b77c3369c8ccb75004dd051b7b647 +size 41040 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 f0b5506b89..9cbd5c1d95 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:04ea6c2947a21d3d4a3d43e9c4750c4f2a49056536a4da3f34c95df8353e9de3 -size 377990 +oid sha256:d0e170b4bea262de612bf3374d475fcd25470ff91b7554d20809c51857a78cec +size 377963 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 db4ea8296a..c6d4541184 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:2f0d24b8011564ee7a8b2f8c2e6a24eda668ee42d451d862f884acb7926aa06c -size 368529 +oid sha256:c00e504593d8eb61b598f05f46ee4d591757975a80c0b4227b240847d2cd4868 +size 368510 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 c3b6a086fe..2348755afd 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:0e615c14cd23f3efd217ec20ce05ed32be76dc3317091e8221f1a72a5a594d92 -size 364175 +oid sha256:e907f67ef884edb61df187f0f229ed4ff4cb31f8c276f807698f861c0e7a4c27 +size 364124 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 c4943b892c..e38cf03ad6 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:4c410e853089cc2c4a2c48a00dd9a8babc8095aed72bb4625057444710559c6c -size 368129 +oid sha256:41a0e404dea7f52359b24b3ec3926b1405429b165cfed44c63b3922ea6d3cb46 +size 368114 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 cececc229a..b5032c29b3 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:f0c6dafaa41849af00d5097a85bd88e3a054a0a9e41c0466a08e6ff8dd6102b2 -size 356857 +oid sha256:dce23463c335d01eb67293cfcede5d85e96ab2ba035cc9a188d42e8e6866bc63 +size 356831 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 9fcf389708..f67906a37c 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:9daeee1aaa04247da3c8bb5aaae9947aab1ed2d2057995e53d6ebdb63e5cd356 -size 355848 +oid sha256:ffa68c8398d789444151855496e5df4ffa03218a383db6ea46fd4f979829b823 +size 355831 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 c081fa16a5..5243218ae3 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:6a92bcf5885322e11a706071969fb674b1f6e60e021af153aaa125baa4a602ae -size 366285 +oid sha256:9a85db2f5958db867578663533f204b2e803372d470da890fd8056ffed0cf46c +size 366254 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 5cc5cfe4fc..5cdad1df92 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:6524cc87257cc9d3f135904f4e14594b56df695e71fe576418d2319c472d710b -size 355285 +oid sha256:9e2d8caf5aaae7d3406c703288e491f328552f0acd18e56afd5265b4ceaf1cd1 +size 355272 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 40105c1498..9d617f6688 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:5ed24d190f10c079f8cf176404372d40eb25cc78ce595a22febc540315057b86 -size 354075 +oid sha256:dabad9dcd5b8f0d4bb964a0187ad7c94b023b04552dacd29a077daddfd48d550 +size 354052 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 2a5991cf59..6c2a7e8460 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:115c725873fb206d8f732a8297a6548ba4fa45d7328196b79a2d9e35545de7d5 -size 40347 +oid sha256:984536295516b542ec6aecf7d07baa3c6dfebbc66403b6d4258a6217616cec93 +size 39991 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 abf8eb7086..6c0a7b4edc 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:1e79e1cc59ba62ca8eb99300eb520b05d7ac6d52c077e3010c03b474865b15f4 -size 58374 +oid sha256:f5aa22c3d79a392625ae231abc046f07f7cdabd91613d5e6f07aede5382aba9b +size 60410 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 281aad62a7..135d84dd90 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:85f6f4c64f67faa99b9af65307a0cd3b46a68db52503c9c929375408597995d9 -size 62094 +oid sha256:4ff538a81d013fdc90dd7be466f710088eea93e081d23448b0731d301a4a3bb2 +size 60702 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 b32ee34f99..1ff5ace3e3 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:bde66c53d81f882cde9ed527e8ff82c7e9d6cb1199b440d4b721659f7189bb42 -size 38906 +oid sha256:8d875f83a3a1977e2a2cf151dcf9d731108a8590eb3643eb057727421eb1e955 +size 38812 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 a009d0f584..5a877a59e1 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:478851e9e2e8c80095aa552b98a5d574749200ff49899c9472c913b07459c4b5 -size 53758 +oid sha256:5a582219d3143acb08563193bf7106e1ee8f6612e359d0a192e9a2f67c6799e3 +size 55375 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 89065e6bf0..4d6afdbbb1 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:a966c9a1fa4fdd933f4ef9239592e90458a2819ff4a45c857714d2e38c0df5b2 -size 64405 +oid sha256:35069d4fae829d9afe479308dd72ad025fa011290d23133a231f4e70f601ee75 +size 62987 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.blockedusers_BlockedUsersView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.blockedusers_BlockedUsersView_Day_5_en.png index 2af459c158..7cca911c45 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.blockedusers_BlockedUsersView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.blockedusers_BlockedUsersView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:28a95d4b7ebca92c4e0467f3ecd9acdaf7f6257604d190f5d088a9a25e87d637 -size 55305 +oid sha256:26e14b77fa3c3aeaea58782309e6de8b9047e07945009322990ebf5f4c283309 +size 52770 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications.edit_DefaultNotificationSettingOption_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications.edit_DefaultNotificationSettingOption_Day_0_en.png index 31b414f07a..21980c672b 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications.edit_DefaultNotificationSettingOption_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications.edit_DefaultNotificationSettingOption_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:24c511b7b1ee590bb117bff9fede56c2468462267f50a93bec0b4f1b795c81ad -size 32144 +oid sha256:2194f54e2f3e298d20be64c75fd9a2f68751407229b655f86bfa718da9cc57a6 +size 33010 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications.edit_DefaultNotificationSettingOption_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications.edit_DefaultNotificationSettingOption_Night_0_en.png index 8d266d069e..32c6bad2eb 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications.edit_DefaultNotificationSettingOption_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications.edit_DefaultNotificationSettingOption_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:657f5d5d887fe1aad3bb1e0dda911e861a4cb160c570678ee89b870591e3bb8c -size 31054 +oid sha256:dd877830a8dac5192bdaf8af4748b50132455dda9afde51c78bf6870ec3d1d96 +size 31908 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_4_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_4_en.png index 05a24284e8..032387ecf4 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Day_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bf2664f828dd7b34784a0881bc7d7a75b4700628503fa20f224c18764645cb15 -size 53513 +oid sha256:ab9bc64cbd82e98ef11e49e0916716e9ba3d313f410b234b861c81a50cdb5f56 +size 54398 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_4_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_4_en.png index 74e3b02b7b..501b92b10c 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications.edit_EditDefaultNotificationSettingView_Night_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ca6ae4eb2bd2d59d08e470e14f17c3cd18516fddd24f2e3bf448c49d40c28b00 -size 52553 +oid sha256:e1f214cec79609d4982d0b7d2252d39cd91d908e75e29209ef907dbb97db21e7 +size 53352 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_0_en.png index a1b3e577a2..f01ef97b3d 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e23e4be9343caa6fb668c7ee83fe44ba98401606c70f797f6fe8de197eceb717 -size 51191 +oid sha256:400485f30282e9dd025c326184d627b763c380fb6a702d6af8ba805e9c379e22 +size 51296 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_12_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_12_en.png index b371142844..538da07920 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_12_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_12_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f009853addec1d9f0297963a4743fcfcf3a100048685a8320bf92951693610e5 -size 59451 +oid sha256:f52f22b6bd2c485e6fbb40e6f7791419973748ffd52d093b5abe6962842929f9 +size 59452 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_14_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_14_en.png index d8a37a1b59..9dedec72b3 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_14_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_14_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:46c6dec8bc599fe1e40f9ab9ee9a143b3529c7652fee6eac7ad88da6472eea87 -size 45382 +oid sha256:cf6cca7c02ff5f899ac2d314e4e23e26f4c7ede8bcb710d502a3826f92a80ee2 +size 45386 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_15_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_15_en.png index 78a7817576..2dfc99cd44 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_15_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_15_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e038c864bc264a148a6aa82e1c318c46a2f3eb97f43bfca2ec7adc4e12f8551d -size 43943 +oid sha256:182a3bdad13bb3e416313a713db5546d1b0febff8968819b2434cdbdd7b25a44 +size 43947 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_16_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_16_en.png index a721949951..f650c1dcfb 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_16_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_16_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4397906ad8b87ad71d9a4903f791ab6b27a3fbcb440af6d925a2290fdc7e49f8 -size 47198 +oid sha256:bbb3d3f8e341efa21d178ff5b5e42b34d7b8d553e678f60b337bb6e54692f92d +size 47205 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_17_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_17_en.png index 209e84f315..67dae946ee 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_17_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_17_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3ef8ac012eb0de8dd249eaa79dc69dd4af6d97072e7ac6c9307dffbb893454ea -size 45110 +oid sha256:65233d891d28eac8117a7cecdb219f21f885cbcc48d8c80992092277ced4e85c +size 45115 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_18_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_18_en.png index 453338e568..ab6adec059 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_18_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_18_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3f98a73792b1ec91ccbcacc4cf9a1c6de00ce03862f69ebc2cb77d17dbdbe1d7 -size 46627 +oid sha256:54ee977d068968cf5cb0e01b8b595e4059af93dc1b44bb619d3de124974636d5 +size 46663 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_19_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_19_en.png index b995a6276b..8e61e6e037 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_19_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_19_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:639484bfe7759754da026fea395f3afbf22b403c2abd408204253399fa40a1fe -size 41177 +oid sha256:b00d2df4cd5dd54e8a20cc689fe62b98e82ce743c2128e8eca1258f295b9867c +size 41214 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_1_en.png index 209e84f315..67dae946ee 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3ef8ac012eb0de8dd249eaa79dc69dd4af6d97072e7ac6c9307dffbb893454ea -size 45110 +oid sha256:65233d891d28eac8117a7cecdb219f21f885cbcc48d8c80992092277ced4e85c +size 45115 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_20_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_20_en.png index 42574ef3f6..94b33d71ae 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_20_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_20_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ed13f05fe4352db182a58f1d2cc5c8af415236cf5ba4e6667879847187aa590c -size 44386 +oid sha256:da06ec17d3dd3a8ec2be2325c978d28b4d2c767a7237de8e09d87ca506b47b55 +size 44429 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_2_en.png index 386a4d2071..4d4e742bd8 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a0260fe74d0464f6981c0fa1242728d1c8f214861c582ac50b188ed37f535510 -size 41637 +oid sha256:f83337020ab43290103cb8301ef397a6f33647ed513a57fe31e191a1e4b40318 +size 41658 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_3_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_3_en.png index f738183dd7..e0b73c73a5 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8cac68cdfc5b2a6c67300deba8b52bd15b19cf71daccef0e0f2c8b60a44f2bd4 -size 42607 +oid sha256:5d102b5045cc9f41769481d011210a9df7c721a4e6377bbe7a1b5343fb176f37 +size 42628 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_4_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_4_en.png index f738183dd7..e0b73c73a5 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8cac68cdfc5b2a6c67300deba8b52bd15b19cf71daccef0e0f2c8b60a44f2bd4 -size 42607 +oid sha256:5d102b5045cc9f41769481d011210a9df7c721a4e6377bbe7a1b5343fb176f37 +size 42628 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_5_en.png index 209e84f315..67dae946ee 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3ef8ac012eb0de8dd249eaa79dc69dd4af6d97072e7ac6c9307dffbb893454ea -size 45110 +oid sha256:65233d891d28eac8117a7cecdb219f21f885cbcc48d8c80992092277ced4e85c +size 45115 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_6_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_6_en.png index 01a4e9021b..57b06e7c78 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:45cb8f2ee0c044bea37e03498e1ccebb8b3410d98b70a8b66d9b0cc96cb76fe7 -size 41956 +oid sha256:e376a9147952819c60de6f911909d7d4f4331b7d232ec74cc03d01d13b74f6e5 +size 41993 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_7_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_7_en.png index 3e9f191009..7b6fae2e58 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:39cf206419a6496ace2f47cd581c7cf986dc9f75406c43c2d1bf90c681db2474 -size 45876 +oid sha256:619e72d33cff4501af46d004c4e34af95c6751c4a9d2ae429e1828efc0ce5d7c +size 45914 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_8_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_8_en.png index 209e84f315..67dae946ee 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_8_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_8_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3ef8ac012eb0de8dd249eaa79dc69dd4af6d97072e7ac6c9307dffbb893454ea -size 45110 +oid sha256:65233d891d28eac8117a7cecdb219f21f885cbcc48d8c80992092277ced4e85c +size 45115 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_9_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_9_en.png index 209e84f315..67dae946ee 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_9_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Day_9_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3ef8ac012eb0de8dd249eaa79dc69dd4af6d97072e7ac6c9307dffbb893454ea -size 45110 +oid sha256:65233d891d28eac8117a7cecdb219f21f885cbcc48d8c80992092277ced4e85c +size 45115 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_0_en.png index f0e4049f27..db5467530d 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3ce468fdf47100eaefa88460fe723d759ca2b84a396a27168c4c4d8b0dc2c423 -size 49776 +oid sha256:714d838c48cf2a4945d87f2f9c7ecf93631b32bf983bae03d829374ea0168cb5 +size 49797 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_12_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_12_en.png index ea40884b8a..4207fdecbb 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_12_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_12_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3c0c054620d2c52d997502723584cf53dcadc0b7ef228945fcfeacabafd83f6d -size 57478 +oid sha256:053f724fbefb310b03b17115a540041141b809fe6005536ee1d097ab6848c01c +size 57511 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_14_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_14_en.png index 01cf356ced..90ebb428f2 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_14_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_14_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:702b994b902946d49ee8ee66c93c5e81711bebc53a54c94af31c3d4554089eca -size 43666 +oid sha256:c45a73751a8fafd8fc02a560895f4d08dca5319fa997197e37ac8ce76b2bf9b4 +size 43734 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_15_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_15_en.png index 806f44b821..502f23368d 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_15_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_15_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c5ffdee75b3a258c597ab62661c676ae90676fea913b4feddd912b860e49a3b3 -size 42294 +oid sha256:309235913d29502e9a0e70594240afbe7e12c7180bb993c449227a7d386e84ba +size 42363 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_16_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_16_en.png index a46400bafd..0649d0e418 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_16_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_16_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6442852768dd251052e42c15517f9770b8f4848a5c2e2c4a241a32e6518769b0 -size 45221 +oid sha256:17afc210929404b330828e035547069d144fd45c44c69c8420f73280462b1e22 +size 45289 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_17_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_17_en.png index c7371790a9..6e6f7eb4b3 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_17_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_17_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:641d27aa03caee6023678d3985cb32819c6148e171706ade8fde351a52d21737 -size 43461 +oid sha256:702befd23ba17ec6ab9fde272545ee08e6d0e1c231fd7ae3ddb17d7a8fa53a96 +size 43533 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_18_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_18_en.png index be7830792e..569fadd1e4 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_18_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_18_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:82a42b7700901f74aa0118c596829125d21c37876b2a81720a31fc2357b5b024 -size 43998 +oid sha256:06b23f1d6de5784b5be1ab568fe79cb56db99e0184f46a6360ef588f7429665f +size 44035 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_19_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_19_en.png index d8f5fe773b..e2b010926d 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_19_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_19_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8f2bc8d60cc2f9bb905bc7cccc8e8c94c1473c50c64cbe9d5a80b63905645743 -size 38769 +oid sha256:983bfe3e45dce0f1b4cb10f692baedc8efbf7ebbb7a02bb9134c816d263ad68f +size 38806 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_1_en.png index c7371790a9..6e6f7eb4b3 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:641d27aa03caee6023678d3985cb32819c6148e171706ade8fde351a52d21737 -size 43461 +oid sha256:702befd23ba17ec6ab9fde272545ee08e6d0e1c231fd7ae3ddb17d7a8fa53a96 +size 43533 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_20_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_20_en.png index 45a8bebecf..271ba6f9f2 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_20_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_20_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:96c3d45f50259bcd2a6f368576d4c740c9201ccbeb9213da5f76c934074afdb4 -size 41822 +oid sha256:949e3b609acfd24531307bb1185aa2a73f3ca54a68aeb6a947724a637d249893 +size 41855 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_2_en.png index 655fed9a4a..14079857ad 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b032761ba73beef9a67190acf0d6f467997c7e31392e8fc54fc77b9d4fa4b0c0 -size 40097 +oid sha256:8a75161f84414dc2accb9a0debf88373e0dae9f9aa0d1ac9b901f4da577df288 +size 40159 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_3_en.png index 6e5287e579..9df543e722 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8815346ccae3b712ed47f1770bde1a3dfc10abe1c8f42adb04fb0836a68720ff -size 40099 +oid sha256:ed49719205a2ff0e18966ba6ba5d9a533f84ff5f20f5b8cd20932e59d9cbce68 +size 40164 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_4_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_4_en.png index 6e5287e579..9df543e722 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8815346ccae3b712ed47f1770bde1a3dfc10abe1c8f42adb04fb0836a68720ff -size 40099 +oid sha256:ed49719205a2ff0e18966ba6ba5d9a533f84ff5f20f5b8cd20932e59d9cbce68 +size 40164 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_5_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_5_en.png index c7371790a9..6e6f7eb4b3 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:641d27aa03caee6023678d3985cb32819c6148e171706ade8fde351a52d21737 -size 43461 +oid sha256:702befd23ba17ec6ab9fde272545ee08e6d0e1c231fd7ae3ddb17d7a8fa53a96 +size 43533 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_6_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_6_en.png index 8aadf3f98f..3616e483c2 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_6_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_6_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:acbcf41d56b4f3a73908246abe0de6fd16c2f8971babe462c7495743c9cc0a73 -size 39450 +oid sha256:07749a5a74529428f258b87aac3ffab3df2fffeeb63b7b3c6511a35feea722b6 +size 39486 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_7_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_7_en.png index 7fe7019dfd..b2a84593a5 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5c9f4c003b2e7ffa3d527970e4e6c25be461a6b23582006d7bc3e5695ac35c00 -size 43273 +oid sha256:62c0564fad133c61946a306515ce156224d7e645c1fc9147dab2135ee4eaadb2 +size 43307 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_8_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_8_en.png index c7371790a9..6e6f7eb4b3 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_8_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_8_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:641d27aa03caee6023678d3985cb32819c6148e171706ade8fde351a52d21737 -size 43461 +oid sha256:702befd23ba17ec6ab9fde272545ee08e6d0e1c231fd7ae3ddb17d7a8fa53a96 +size 43533 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_9_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_9_en.png index c7371790a9..6e6f7eb4b3 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_9_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.notifications_NotificationSettingsView_Night_9_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:641d27aa03caee6023678d3985cb32819c6148e171706ade8fde351a52d21737 -size 43461 +oid sha256:702befd23ba17ec6ab9fde272545ee08e6d0e1c231fd7ae3ddb17d7a8fa53a96 +size 43533 diff --git a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_0_en.png index 1b62c5dac4..59b6a43c16 100644 --- a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:751c7e0ce4cd5f20a6259f305d1d4c4de6fca84870e2a7086b4d66d4f58c27f7 -size 30074 +oid sha256:ac94b78f35314117be833f3329eecd2751cfa1746632d2f219d02e9a4b5fedb2 +size 32975 diff --git a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_1_en.png index 329d9af3d5..fb86e31166 100644 --- a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2b7011041364d6046229a28e10a0895bc153eaaf78838d33e33cb83471a45bc7 -size 29715 +oid sha256:67c6ed975e20be816b0cd1b6dd7e4ce6af180725baf8919667331131d0ce1603 +size 32440 diff --git a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_2_en.png index b394d26672..f810d1e12c 100644 --- a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cf83676d72f74137b6203d88b02fba39e7da90ef116811084d793a48f1e7646b -size 29805 +oid sha256:95c5b4d88b841ced564b0882aa48491eac2c3abbc0bdc54cafe80eaee77f2556 +size 32673 diff --git a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_3_en.png b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_3_en.png index 76e4bc64bf..8d1fbfa2f5 100644 --- a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:053ef557a5c2c9b1a4f18bed9fa0579f15240960672356a9d6bd524177683fcf -size 27122 +oid sha256:3a56e9c010bb8f2acc1a1448bb96a897959c20e9f0eac210eeaf3addae7001ca +size 29228 diff --git a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_4_en.png b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_4_en.png index 050949b9aa..f0b0e08d57 100644 --- a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Day_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b412044c11461abbaafba558cbc8e66f1c6702ad0d02eab0c01fd3ff4f64efb4 -size 32764 +oid sha256:f3c49b0c010a108d2af21bb28b1b53a9d22eb28c0c6e850818a000ee009fd6f9 +size 35081 diff --git a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_0_en.png index 4c4205b4c9..e667360e6c 100644 --- a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dd99953e28aba7f0644c14ca9ea55461b8d134af9f454859b9771ef145af0dbc -size 29307 +oid sha256:73e5f4b3c8134d1e80ef255046d15be5ecdf0ea1b3ff965de3babb18b0ca5d0b +size 32006 diff --git a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_1_en.png b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_1_en.png index 70d20f038d..23ed92cd8b 100644 --- a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:024e7a1c12fc99f5595ba26da3cacb95700ba6a9b65f4356115657c3dca7ea80 -size 28866 +oid sha256:09a350ea6aad06cd5bc7d7d0b648673b03690fe09f2ab964e04aee43efe72f9d +size 31435 diff --git a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_2_en.png b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_2_en.png index b0877ea947..d3e944e404 100644 --- a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f146ba2a4f0edc4b1b977a3eb8a389eca445aa206243c6d0d9cfd1d859685151 -size 28873 +oid sha256:c2cc6d6352f91eefaed4f8569697bfa9ee3a790719e4c503a9040355eb6f65f7 +size 31522 diff --git a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_3_en.png index d0988397b6..7b275ba539 100644 --- a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2cc316a7902518202d5d215955f0c9463100d30634a2b7fb255988947a41af35 -size 25979 +oid sha256:04be47c289da370b4653bca0f3e39350e8667cb0a03bbe56334adedc2aef242a +size 27831 diff --git a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_4_en.png b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_4_en.png index 830b054018..3c0e05aabb 100644 --- a/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_4_en.png +++ b/tests/uitests/src/test/snapshots/images/features.reportroom.impl_ReportRoomView_Night_4_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b2fe99fc52a7f75962df7515ab2440206496349553eb0a890c6d9bdaf118a7bc -size 30640 +oid sha256:294e758a6bf3ac9895e9b7fafa71534adfd6d510134b0b51b47e24ec785cbdd1 +size 32804 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Day_0_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Day_0_en.png index 9b6f6976b1..ad3ef8c591 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cafffeebf11df13dd9bfca09a4ea57245cdf1440bd5499d7095197824884293f -size 28632 +oid sha256:cb4ff329d1d9e647883f5f257dc8fd003505ee0635a003fe6e22930f6beaf2d4 +size 29526 diff --git a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Night_0_en.png index 54be022f26..4ea23b79e2 100644 --- a/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roomdetails.impl.notificationsettings_RoomNotificationSettingsOption_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:734a534e4a15dcd5f5fbc5bd3ade8c1062b05fc876ddff7e4e0c71fb1dc824a8 -size 27975 +oid sha256:24b1dc9c927026c6c3c77c3eaf84dbd373d47d62751fa8c4c9f446335122ba2c +size 28688 diff --git a/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Day_5_en.png index 73b8b8e50c..5c597300e4 100644 --- a/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e8a3ad99763929d2783147814e44fa9ec7e7efb7b99949e3580f23c38fb5d971 -size 9398 +oid sha256:21aee17ee9a292bb2f0d3d2ec2db565ebb8d5df753454a5a002f033ed5ed39c5 +size 3853 diff --git a/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Night_7_en.png b/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Night_7_en.png index a87d89c701..d47bf90664 100644 --- a/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Night_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Night_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0f3a0cb5d9bae6725a1c527f3d9575aabf85d3edf63a28d9faa23f4f0b65e2d0 -size 7624 +oid sha256:520cae2544153ba45f8fe4b021286c2d22da06aa1b60be7f1b13879723ff994c +size 3664 diff --git a/tests/uitests/src/test/snapshots/images/features.space.impl.leave_LeaveSpaceView_Day_9_en.png b/tests/uitests/src/test/snapshots/images/features.space.impl.leave_LeaveSpaceView_Day_9_en.png index 5cd526891a..f834f95d1f 100644 --- a/tests/uitests/src/test/snapshots/images/features.space.impl.leave_LeaveSpaceView_Day_9_en.png +++ b/tests/uitests/src/test/snapshots/images/features.space.impl.leave_LeaveSpaceView_Day_9_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:aec0652a0f01ae4cd4b0c1bb9e9f30a2a51955be4adcf37bcbb2dd52b895c826 -size 33296 +oid sha256:de7dd32c53e606e70237a4111966018c369356b4e4f74a95d11f34ecb2b1e59b +size 35486 diff --git a/tests/uitests/src/test/snapshots/images/features.space.impl.leave_LeaveSpaceView_Night_9_en.png b/tests/uitests/src/test/snapshots/images/features.space.impl.leave_LeaveSpaceView_Night_9_en.png index 742c8ca2a4..8d8b627306 100644 --- a/tests/uitests/src/test/snapshots/images/features.space.impl.leave_LeaveSpaceView_Night_9_en.png +++ b/tests/uitests/src/test/snapshots/images/features.space.impl.leave_LeaveSpaceView_Night_9_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a20402916bee2e14969be8aa6a7eff7a0f15c454d113e825498b179b5742458a -size 32423 +oid sha256:ef770e51bdf04a94691f18113a9eb2ac5fc51283061c7a87a612b7f9dca9e9d4 +size 34568 diff --git a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_8_en.png b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_8_en.png index 826e4f3f05..d875b16490 100644 --- a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_8_en.png +++ b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Day_8_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ee34f6503ca5de3a1f0e4bfb546605b3ab4fe2c710891733cbe16fb176cbef12 -size 47747 +oid sha256:b26761ca15663906636759d3bee26f7c74e09de1653aa7ce483d5b05159a255e +size 47847 diff --git a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_8_en.png b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_8_en.png index 926f10755d..01ae14fc9f 100644 --- a/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_8_en.png +++ b/tests/uitests/src/test/snapshots/images/features.space.impl.root_SpaceView_Night_8_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:66d5ac09ac603108821e0f333866a8e0473d562deceb103cabb67c4988be2c72 -size 45107 +oid sha256:614c841f5a9ab5a0c9147d9ba5aa84ab922fce106428d35b2409306b046e5531 +size 45149 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Day_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Day_0_en.png index 58546b8522..ee5c582240 100644 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:30357bf18792db5ab20085010251170a724ffe8c00313facd04ee704e806af64 -size 10982 +oid sha256:75de341f705bb22955f9399180519b65ad59c2e1917317d56e50ea4db78f35bc +size 12102 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Night_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Night_0_en.png index fedead0fa8..52fd9b9693 100644 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbarNoFab_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4811667dec0f32accc5e2c8a5dd5c0b34017fcff8d1e0376ee7a4708426bca0f -size 9838 +oid sha256:58b9491aaa5554b89d86c62a5c9c44975367538c6baa5562f8dc5768f76d8264 +size 8705 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Day_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Day_0_en.png index 83302d6ba4..38ad0e4b56 100644 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Day_0_en.png +++ b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Day_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:16dee1dfe746cd40dac9fe8f0af3ecb42cd14bab5cc490917b589beed065ed1b -size 14686 +oid sha256:326d59cf768b2dbd96eb7964d54c8eda509a5cd57c6e62087625e3314da0bb4d +size 13658 diff --git a/tools/manifest/gplay/release/aaptDump.txt b/tools/manifest/gplay/release/aaptDump.txt index b67c1f527c..033229b0cb 100644 --- a/tools/manifest/gplay/release/aaptDump.txt +++ b/tools/manifest/gplay/release/aaptDump.txt @@ -25,6 +25,7 @@ uses-permission: name='com.google.android.c2dm.permission.RECEIVE' uses-permission: name='android.permission.RECEIVE_BOOT_COMPLETED' uses-permission: name='io.element.android.x.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION' application-label:'Element X' +application-label-ar:'Element X' application-label-be:'Element X' application-label-bg:'Element X' application-label-ca:'Element X' @@ -92,6 +93,6 @@ other-receivers other-services supports-screens: 'small' 'normal' 'large' 'xlarge' supports-any-density: 'true' -locales: '--_--' 'be' 'bg' 'ca' 'cs' 'cy' 'da' 'de' 'el' 'en-US' 'es' 'et' 'eu' 'fa' 'fi' 'fr' 'hr' 'hu' 'in' 'it' 'ja' 'ka' 'ko' 'lt' 'nb' 'nl' 'pl' 'pt' 'pt-BR' 'ro' 'ru' 'sk' 'sv' 'tr' 'uk' 'ur' 'uz' 'vi' 'zh' 'zh-CN' 'zh-TW' +locales: '--_--' 'ar' 'be' 'bg' 'ca' 'cs' 'cy' 'da' 'de' 'el' 'en-US' 'es' 'et' 'eu' 'fa' 'fi' 'fr' 'hr' 'hu' 'in' 'it' 'ja' 'ka' 'ko' 'lt' 'nb' 'nl' 'pl' 'pt' 'pt-BR' 'ro' 'ru' 'sk' 'sv' 'tr' 'uk' 'ur' 'uz' 'vi' 'zh' 'zh-CN' 'zh-TW' densities: '120' '160' '240' '320' '480' '640' '65534' '65535' native-code: 'arm64-v8a' 'armeabi-v7a' 'x86' 'x86_64' From f2cd0bf888bf5ebe408a468128b7290554b6406a Mon Sep 17 00:00:00 2001 From: Jorge Martin Espinosa Date: Wed, 2 Sep 2026 13:02:40 +0200 Subject: [PATCH 95/97] Improve detection of invalid placeholders in localazy strings (#7624) --- tools/localazy/checkForbiddenTerms.py | 39 ++++++++++++++++++++++----- 1 file changed, 32 insertions(+), 7 deletions(-) diff --git a/tools/localazy/checkForbiddenTerms.py b/tools/localazy/checkForbiddenTerms.py index 3bf893dd0b..7e1ec6480d 100755 --- a/tools/localazy/checkForbiddenTerms.py +++ b/tools/localazy/checkForbiddenTerms.py @@ -59,11 +59,34 @@ _PLACEHOLDER_MATCHES = re.compile(r'%%|%[0-9$.A-Za-z]*') def find_invalid_placeholders(value): """Return the list of malformed placeholder tokens found in `value`.""" invalid = [] - for token in _PLACEHOLDER_MATCHES.findall(value): + # The % character is special: when using the strings without placeholder replacement, it will be just printed as-is. + # However, if the string is used with placeholder replacement, a single '%' will be interpreted as an invalid placeholder, + # and will cause a crash at runtime unless it's escaped as '%%'. + has_unescaped_percent = False + has_escaped_percent = False + has_valid_placeholders = False + placeholders = _PLACEHOLDER_MATCHES.findall(value) + for token in placeholders: if token == '%%': + has_escaped_percent = True continue # escaped percent is fine + if token == '%': + has_unescaped_percent = True # We'll check later if having this token alongside valid placeholders is an error + continue if not _VALID_PLACEHOLDER.fullmatch(token): invalid.append(token) + else: + has_valid_placeholders = True + + # If we found a single unescaped '%' and there are valid placeholders, we assume it'll be interpreted as an invalid placeholder, + # so this is an error. + if has_unescaped_percent and has_valid_placeholders: + invalid.append('%') + + # If we found an escaped percent but no valid placeholders, this is probably a mistake, so we warn about it. + if has_escaped_percent and not has_valid_placeholders: + print('Warning: string `' + value + '` contains escaped percent (%%) but no valid placeholders. This is probably a mistake.', file=sys.stderr) + return invalid @@ -85,9 +108,10 @@ for elem in content.getElementsByTagName('string'): matches = re.search(term, value) if matches and name not in exceptions: errors.append('Forbidden term "' + term + '" in string: "' + name + '": ' + value) - invalid_placeholders = find_invalid_placeholders(value) - for placeholder in invalid_placeholders: - errors.append('Invalid placeholder "' + placeholder + '" in string: "' + name + '": ' + value) + + invalid_placeholders = find_invalid_placeholders(value) + for placeholder in invalid_placeholders: + errors.append('Invalid placeholder "' + placeholder + '" in string: "' + name + '": ' + value) ### Plurals for elem in content.getElementsByTagName('plurals'): @@ -106,9 +130,10 @@ for elem in content.getElementsByTagName('plurals'): matches = re.search(term, value) if matches and name not in exceptions: errors.append('Forbidden term "' + term + '" in plural: "' + name + '": ' + value) - invalid_placeholders = find_invalid_placeholders(value) - for placeholder in invalid_placeholders: - errors.append('Invalid placeholder "' + placeholder + '" in plural: "' + name + '": ' + value) + + invalid_placeholders = find_invalid_placeholders(value) + for placeholder in invalid_placeholders: + errors.append('Invalid placeholder "' + placeholder + '" in plural: "' + name + '": ' + value) # If errors is not empty print the report if errors: From eea7fb942482efef94ed715f343591970a252016 Mon Sep 17 00:00:00 2001 From: ElementBot Date: Wed, 2 Sep 2026 11:31:48 +0000 Subject: [PATCH 96/97] Update screenshots --- ...eatures.location.impl.share_ShareLocationView_Day_1_en.png | 4 ++-- ...eatures.location.impl.share_ShareLocationView_Day_5_en.png | 4 ++-- ...eatures.location.impl.share_ShareLocationView_Day_9_en.png | 4 ++-- ...tures.location.impl.share_ShareLocationView_Night_3_en.png | 4 ++-- ...tures.location.impl.share_ShareLocationView_Night_7_en.png | 4 ++-- ...ockscreen.impl.components_PinEntryTextField_Night_0_en.png | 4 ++-- ...nts.preview.imageeditor_AttachmentImageEditorView_2_en.png | 4 ++-- ...rypto.identity_MessagesViewWithIdentityChange_Day_0_en.png | 4 ++-- ...pto.identity_MessagesViewWithIdentityChange_Night_1_en.png | 4 ++-- ...re.resolve_ResolveVerifiedUserSendFailureView_Day_2_en.png | 4 ++-- ...omponents_TimelineItemEventRowDisambiguated_Night_0_en.png | 4 ++-- ...ts_TimelineItemEventRowWithReplyInformative_Night_1_en.png | 4 ++-- ...mponents_TimelineItemEventRowWithReplyOther_Night_1_en.png | 4 ++-- ...ine.components_TimelineItemEventRowWithReply_Day_11_en.png | 4 ++-- ...line.components_TimelineItemEventRowWithReply_Day_3_en.png | 4 ++-- ...line.components_TimelineItemEventRowWithReply_Day_7_en.png | 4 ++-- ...e.components_TimelineItemEventRowWithReply_Night_11_en.png | 4 ++-- ...ne.components_TimelineItemEventRowWithReply_Night_3_en.png | 4 ++-- ...ne.components_TimelineItemEventRowWithReply_Night_7_en.png | 4 ++-- .../images/features.messages.impl_MessagesView_Day_1_en.png | 4 ++-- .../images/features.messages.impl_MessagesView_Day_5_en.png | 4 ++-- .../images/features.messages.impl_MessagesView_Day_9_en.png | 4 ++-- .../images/features.messages.impl_MessagesView_Night_1_en.png | 4 ++-- .../images/features.messages.impl_MessagesView_Night_5_en.png | 4 ++-- .../images/features.messages.impl_MessagesView_Night_9_en.png | 4 ++-- ...references.impl.blockedusers_BlockedUsersView_Day_5_en.png | 4 ++-- ...embermoderation.impl_RoomMemberModerationView_Day_5_en.png | 4 ++-- ...bermoderation.impl_RoomMemberModerationView_Night_7_en.png | 4 ++-- ....theme.components_HorizontalFloatingToolbar_Night_0_en.png | 4 ++-- 29 files changed, 58 insertions(+), 58 deletions(-) diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_1_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_1_en.png index b1bdcee7a4..60bf32612b 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_1_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_1_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f53a6b803268437c30350857951422dc1723a38922db4441a97bcb926a0e63ff -size 38724 +oid sha256:e44d67574a6d3df53f9c9a6d588461dda932cc77142c07605e2a53a0f7c33819 +size 36440 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_5_en.png index be619b419b..740c6fd618 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fc017e7707b83549cda8c06ffe8466596372132ba0b58dd91cfb20c451b6a417 -size 22303 +oid sha256:0ca62fd1055aef95b255d40b7f8933e455a7fd7014c96e9e5eef04a9cff5549a +size 22324 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_9_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_9_en.png index d194937309..f6c445eee1 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_9_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Day_9_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ebeb2f14074a9bc91dc892bfa056c9c67e83a64c64d645c77d312d64895e3815 -size 21611 +oid sha256:dbb35e33035a9c22164128414bde7f6df848193040eef3bd7f073b0b182a7306 +size 21670 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Night_3_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Night_3_en.png index 317a87e2e5..b9e79d2337 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Night_3_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Night_3_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ebbeb66a3f67e48668cadb96069f50feba5f4346119ea62c9dfd83ffd621b7b2 -size 31182 +oid sha256:8721e0c604b0e12ba22db934ab93794e6c2143d1b4bc4e2f3d297f9121c1e688 +size 29233 diff --git a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Night_7_en.png b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Night_7_en.png index e66ccc603d..5732afb34a 100644 --- a/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Night_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.location.impl.share_ShareLocationView_Night_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1e31aa9639a3805e3644fadbb01ab3503aedee068655920555a4817ae38b6376 -size 40312 +oid sha256:dfaee97064c6391c9e611e30bfb36d3abb8d10d2e3312cd21afa3b2b362637cf +size 36805 diff --git a/tests/uitests/src/test/snapshots/images/features.lockscreen.impl.components_PinEntryTextField_Night_0_en.png b/tests/uitests/src/test/snapshots/images/features.lockscreen.impl.components_PinEntryTextField_Night_0_en.png index 10223f5bf6..5c49c08509 100644 --- a/tests/uitests/src/test/snapshots/images/features.lockscreen.impl.components_PinEntryTextField_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/features.lockscreen.impl.components_PinEntryTextField_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:62384687c273cb57dbd25bfaa558d83e3efc527fc4dfff4aca8bf85ab1ce9e4b -size 16446 +oid sha256:58a6cbe83f86bbd32c8576a4d62a26794560f53b60c9bf5dc74aa0dd50e2dc87 +size 16238 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_2_en.png index 3192cf2a5e..8edee63bc1 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.attachments.preview.imageeditor_AttachmentImageEditorView_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1885bbe8b0ea497ac20d7bcdd0c6a93ba0533e898378d35e1cafdc8c9924fd56 -size 279984 +oid sha256:de82970da241172b94f822f8792e6fc721dcfc7f0f67e3523962e253e9750884 +size 255933 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 693a36b7dd..5f51b27f5e 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:3dbb8ef39b6a7a0c2f576d8bd101aa97c89da696f23e6d5836846494471c01a1 -size 55799 +oid sha256:3274314ab9e39c23a6b9d66adf80ac8bb7b364ce60a300f96582374a18bc821f +size 54590 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 0f6de1b844..bd3b0196d6 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:28512b0fda0b71b98eab03cee15c9d3163825b1a3545670cfa277ddd5434c87a -size 58417 +oid sha256:6f7f7415abbe51858f938e16ad03c6aab983fb3d5e2a53a028bae3c031446646 +size 67848 diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_2_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_2_en.png index bd73e322ab..93622cedfe 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_2_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl.crypto.sendfailure.resolve_ResolveVerifiedUserSendFailureView_Day_2_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:12020ba97720f2374f9ace172693f08be01522e4ca30d3970efa91d802581e81 -size 3657 +oid sha256:87193a7c9eb9d40234970e5f5be02e80f2b3ffe91e2c9ca6afd58b8bccdd5911 +size 55075 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 9cbd5c1d95..f0b5506b89 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:d0e170b4bea262de612bf3374d475fcd25470ff91b7554d20809c51857a78cec -size 377963 +oid sha256:04ea6c2947a21d3d4a3d43e9c4750c4f2a49056536a4da3f34c95df8353e9de3 +size 377990 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 c6d4541184..db4ea8296a 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:c00e504593d8eb61b598f05f46ee4d591757975a80c0b4227b240847d2cd4868 -size 368510 +oid sha256:2f0d24b8011564ee7a8b2f8c2e6a24eda668ee42d451d862f884acb7926aa06c +size 368529 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 2348755afd..c3b6a086fe 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:e907f67ef884edb61df187f0f229ed4ff4cb31f8c276f807698f861c0e7a4c27 -size 364124 +oid sha256:0e615c14cd23f3efd217ec20ce05ed32be76dc3317091e8221f1a72a5a594d92 +size 364175 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 e38cf03ad6..c4943b892c 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:41a0e404dea7f52359b24b3ec3926b1405429b165cfed44c63b3922ea6d3cb46 -size 368114 +oid sha256:4c410e853089cc2c4a2c48a00dd9a8babc8095aed72bb4625057444710559c6c +size 368129 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 b5032c29b3..cececc229a 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:dce23463c335d01eb67293cfcede5d85e96ab2ba035cc9a188d42e8e6866bc63 -size 356831 +oid sha256:f0c6dafaa41849af00d5097a85bd88e3a054a0a9e41c0466a08e6ff8dd6102b2 +size 356857 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 f67906a37c..9fcf389708 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:ffa68c8398d789444151855496e5df4ffa03218a383db6ea46fd4f979829b823 -size 355831 +oid sha256:9daeee1aaa04247da3c8bb5aaae9947aab1ed2d2057995e53d6ebdb63e5cd356 +size 355848 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 5243218ae3..c081fa16a5 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:9a85db2f5958db867578663533f204b2e803372d470da890fd8056ffed0cf46c -size 366254 +oid sha256:6a92bcf5885322e11a706071969fb674b1f6e60e021af153aaa125baa4a602ae +size 366285 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 5cdad1df92..5cc5cfe4fc 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:9e2d8caf5aaae7d3406c703288e491f328552f0acd18e56afd5265b4ceaf1cd1 -size 355272 +oid sha256:6524cc87257cc9d3f135904f4e14594b56df695e71fe576418d2319c472d710b +size 355285 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 9d617f6688..40105c1498 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:dabad9dcd5b8f0d4bb964a0187ad7c94b023b04552dacd29a077daddfd48d550 -size 354052 +oid sha256:5ed24d190f10c079f8cf176404372d40eb25cc78ce595a22febc540315057b86 +size 354075 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 6c2a7e8460..2a5991cf59 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:984536295516b542ec6aecf7d07baa3c6dfebbc66403b6d4258a6217616cec93 -size 39991 +oid sha256:115c725873fb206d8f732a8297a6548ba4fa45d7328196b79a2d9e35545de7d5 +size 40347 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 6c0a7b4edc..abf8eb7086 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:f5aa22c3d79a392625ae231abc046f07f7cdabd91613d5e6f07aede5382aba9b -size 60410 +oid sha256:1e79e1cc59ba62ca8eb99300eb520b05d7ac6d52c077e3010c03b474865b15f4 +size 58374 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 135d84dd90..281aad62a7 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:4ff538a81d013fdc90dd7be466f710088eea93e081d23448b0731d301a4a3bb2 -size 60702 +oid sha256:85f6f4c64f67faa99b9af65307a0cd3b46a68db52503c9c929375408597995d9 +size 62094 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 1ff5ace3e3..b32ee34f99 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:8d875f83a3a1977e2a2cf151dcf9d731108a8590eb3643eb057727421eb1e955 -size 38812 +oid sha256:bde66c53d81f882cde9ed527e8ff82c7e9d6cb1199b440d4b721659f7189bb42 +size 38906 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 5a877a59e1..a009d0f584 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:5a582219d3143acb08563193bf7106e1ee8f6612e359d0a192e9a2f67c6799e3 -size 55375 +oid sha256:478851e9e2e8c80095aa552b98a5d574749200ff49899c9472c913b07459c4b5 +size 53758 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 4d6afdbbb1..89065e6bf0 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:35069d4fae829d9afe479308dd72ad025fa011290d23133a231f4e70f601ee75 -size 62987 +oid sha256:a966c9a1fa4fdd933f4ef9239592e90458a2819ff4a45c857714d2e38c0df5b2 +size 64405 diff --git a/tests/uitests/src/test/snapshots/images/features.preferences.impl.blockedusers_BlockedUsersView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.preferences.impl.blockedusers_BlockedUsersView_Day_5_en.png index 7cca911c45..2af459c158 100644 --- a/tests/uitests/src/test/snapshots/images/features.preferences.impl.blockedusers_BlockedUsersView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.preferences.impl.blockedusers_BlockedUsersView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:26e14b77fa3c3aeaea58782309e6de8b9047e07945009322990ebf5f4c283309 -size 52770 +oid sha256:28a95d4b7ebca92c4e0467f3ecd9acdaf7f6257604d190f5d088a9a25e87d637 +size 55305 diff --git a/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Day_5_en.png b/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Day_5_en.png index 5c597300e4..73b8b8e50c 100644 --- a/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Day_5_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Day_5_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:21aee17ee9a292bb2f0d3d2ec2db565ebb8d5df753454a5a002f033ed5ed39c5 -size 3853 +oid sha256:e8a3ad99763929d2783147814e44fa9ec7e7efb7b99949e3580f23c38fb5d971 +size 9398 diff --git a/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Night_7_en.png b/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Night_7_en.png index d47bf90664..a87d89c701 100644 --- a/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Night_7_en.png +++ b/tests/uitests/src/test/snapshots/images/features.roommembermoderation.impl_RoomMemberModerationView_Night_7_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:520cae2544153ba45f8fe4b021286c2d22da06aa1b60be7f1b13879723ff994c -size 3664 +oid sha256:0f3a0cb5d9bae6725a1c527f3d9575aabf85d3edf63a28d9faa23f4f0b65e2d0 +size 7624 diff --git a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Night_0_en.png b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Night_0_en.png index 4da2a98aca..687e0d436a 100644 --- a/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Night_0_en.png +++ b/tests/uitests/src/test/snapshots/images/libraries.designsystem.theme.components_HorizontalFloatingToolbar_Night_0_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ef0dc4d53daeb986f378b6e4d85928b4b6729336c89cf21e642c88c53688a3ab -size 10292 +oid sha256:d57df7110371c9224e232b707d6a1b10ce14afcb56c803a78220792f2a0d4cf2 +size 11354 From d2f540ae794765f4a9b890bbe233c67f57beccb4 Mon Sep 17 00:00:00 2001 From: hayyaksi <193020925+hayaksi1@users.noreply.github.com> Date: Wed, 2 Sep 2026 17:58:26 +0300 Subject: [PATCH 97/97] Expose the timeline item long press and swipe to reply as TalkBack actions (#7458) * Expose the timeline item gestures as TalkBack actions Long pressing a timeline item opens the action list, and swiping it starts a reply. Neither gesture is reachable with a screen reader enabled, so those two actions were unavailable to TalkBack users. Publish them as accessibility custom actions on the event row, reusing the existing "Message actions" and "Reply" strings. The reply action is only offered when the user is allowed to reply, matching the swipe. * Update screenshots --------- Co-authored-by: ElementBot --- .../components/TimelineItemEventRow.kt | 50 ++++++++++++++++++- ...ures.messages.impl_MessagesViewA11y_en.png | 4 +- 2 files changed, 50 insertions(+), 4 deletions(-) diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/TimelineItemEventRow.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/TimelineItemEventRow.kt index b0be2dde88..99e72f4973 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/TimelineItemEventRow.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/TimelineItemEventRow.kt @@ -49,7 +49,9 @@ import androidx.compose.ui.platform.LocalViewConfiguration import androidx.compose.ui.platform.ViewConfiguration import androidx.compose.ui.res.pluralStringResource import androidx.compose.ui.res.stringResource +import androidx.compose.ui.semantics.CustomAccessibilityAction import androidx.compose.ui.semantics.clearAndSetSemantics +import androidx.compose.ui.semantics.customActions import androidx.compose.ui.semantics.hideFromAccessibility import androidx.compose.ui.semantics.isTraversalGroup import androidx.compose.ui.semantics.semantics @@ -217,13 +219,23 @@ fun TimelineItemEventRow( inReplyToClick(inReplyToEventId) } - Column(modifier = modifier.fillMaxWidth()) { + val canReply = timelineRoomInfo.userHasPermissionToSendMessage && event.canBeRepliedTo + val accessibilityActions = rememberTimelineItemAccessibilityActions( + canReply = canReply, + onLongClick = onLongClick, + onSwipeToReply = onSwipeToReply, + ) + + Column( + modifier = modifier + .fillMaxWidth() + .semantics { customActions = accessibilityActions } + ) { if (event.groupPosition.isNew()) { Spacer(modifier = Modifier.height(16.dp)) } else { Spacer(modifier = Modifier.height(2.dp)) } - val canReply = timelineRoomInfo.userHasPermissionToSendMessage && event.canBeRepliedTo if (canReply) { val state: SwipeableActionsState = rememberSwipeableActionsState() val offset = state.offset.floatValue @@ -319,6 +331,40 @@ fun TimelineItemEventRow( } } +/** + * Exposes the gestures of a timeline item — long press for the action list, swipe for a reply — as TalkBack actions, since neither gesture is reachable + * with a screen reader enabled. + */ +@Composable +private fun rememberTimelineItemAccessibilityActions( + canReply: Boolean, + onLongClick: () -> Unit, + onSwipeToReply: () -> Unit, +): List { + val messageActionsLabel = stringResource(CommonStrings.common_message_actions) + val replyLabel = stringResource(CommonStrings.action_reply) + val latestOnLongClick by rememberUpdatedState(onLongClick) + val latestOnSwipeToReply by rememberUpdatedState(onSwipeToReply) + return remember(canReply, messageActionsLabel, replyLabel) { + buildList { + add( + CustomAccessibilityAction(messageActionsLabel) { + latestOnLongClick() + true + } + ) + if (canReply) { + add( + CustomAccessibilityAction(replyLabel) { + latestOnSwipeToReply() + true + } + ) + } + } + } +} + @Composable private fun ThreadSummaryView( threadSummary: ThreadSummary, diff --git a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesViewA11y_en.png b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesViewA11y_en.png index 3c357233b9..4bd7d43a53 100644 --- a/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesViewA11y_en.png +++ b/tests/uitests/src/test/snapshots/images/features.messages.impl_MessagesViewA11y_en.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:95c5746de02c584536b1178614d15460bbdda633ddf44485261007618bd99f50 -size 132268 +oid sha256:b494272032ad9af988e41736a0a0f6aa101bdd9c185bd685085ccefd0a6427a6 +size 138254