From 2974156ee1769e089c6672fe94531f6692eb7620 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Thu, 18 Apr 2024 14:46:12 +0200 Subject: [PATCH] Move InviteSender to `:library:matrixui` module. --- .../features/roomlist/impl/components/RoomSummaryRow.kt | 2 +- .../roomlist/impl/datasource/RoomListRoomSummaryFactory.kt | 2 +- .../features/roomlist/impl/model/RoomListRoomSummary.kt | 3 ++- .../roomlist/impl/model/RoomListRoomSummaryProvider.kt | 1 + .../android/libraries/matrix/ui/components}/InviteSender.kt | 4 ++-- libraries/matrixui/src/main/res/values/localazy.xml | 4 ++++ tools/localazy/config.json | 6 ++++++ 7 files changed, 17 insertions(+), 5 deletions(-) rename {features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/model => libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components}/InviteSender.kt (95%) create mode 100644 libraries/matrixui/src/main/res/values/localazy.xml diff --git a/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/components/RoomSummaryRow.kt b/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/components/RoomSummaryRow.kt index 92616f460e..5ff4c5b477 100644 --- a/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/components/RoomSummaryRow.kt +++ b/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/components/RoomSummaryRow.kt @@ -47,7 +47,6 @@ 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.roomlist.impl.RoomListEvents -import io.element.android.features.roomlist.impl.model.InviteSender import io.element.android.features.roomlist.impl.model.RoomListRoomSummary import io.element.android.features.roomlist.impl.model.RoomListRoomSummaryProvider import io.element.android.features.roomlist.impl.model.RoomSummaryDisplayType @@ -67,6 +66,7 @@ import io.element.android.libraries.designsystem.theme.roomListRoomName import io.element.android.libraries.designsystem.theme.unreadIndicator import io.element.android.libraries.matrix.api.core.RoomAlias import io.element.android.libraries.matrix.api.room.RoomNotificationMode +import io.element.android.libraries.matrix.ui.components.InviteSender import io.element.android.libraries.ui.strings.CommonStrings import timber.log.Timber diff --git a/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/datasource/RoomListRoomSummaryFactory.kt b/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/datasource/RoomListRoomSummaryFactory.kt index 541d3a265c..74af42aaa0 100644 --- a/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/datasource/RoomListRoomSummaryFactory.kt +++ b/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/datasource/RoomListRoomSummaryFactory.kt @@ -16,7 +16,6 @@ package io.element.android.features.roomlist.impl.datasource -import io.element.android.features.roomlist.impl.model.InviteSender import io.element.android.features.roomlist.impl.model.RoomListRoomSummary import io.element.android.features.roomlist.impl.model.RoomSummaryDisplayType import io.element.android.libraries.core.extensions.orEmpty @@ -27,6 +26,7 @@ import io.element.android.libraries.eventformatter.api.RoomLastMessageFormatter import io.element.android.libraries.matrix.api.core.RoomId import io.element.android.libraries.matrix.api.room.CurrentUserMembership import io.element.android.libraries.matrix.api.roomlist.RoomSummary +import io.element.android.libraries.matrix.ui.components.InviteSender import javax.inject.Inject class RoomListRoomSummaryFactory @Inject constructor( diff --git a/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/model/RoomListRoomSummary.kt b/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/model/RoomListRoomSummary.kt index 741da3adcc..ab24071ecc 100644 --- a/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/model/RoomListRoomSummary.kt +++ b/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/model/RoomListRoomSummary.kt @@ -21,6 +21,7 @@ import io.element.android.libraries.designsystem.components.avatar.AvatarData import io.element.android.libraries.matrix.api.core.RoomAlias import io.element.android.libraries.matrix.api.core.RoomId import io.element.android.libraries.matrix.api.room.RoomNotificationMode +import io.element.android.libraries.matrix.ui.components.InviteSender @Immutable data class RoomListRoomSummary( @@ -42,7 +43,7 @@ data class RoomListRoomSummary( val isDm: Boolean, val isFavorite: Boolean, val inviteSender: InviteSender?, - ) { +) { val isHighlighted = userDefinedNotificationMode != RoomNotificationMode.MUTE && (numberOfUnreadNotifications > 0 || numberOfUnreadMentions > 0) || isMarkedUnread || diff --git a/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/model/RoomListRoomSummaryProvider.kt b/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/model/RoomListRoomSummaryProvider.kt index 25e0a35d25..7031a40c33 100644 --- a/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/model/RoomListRoomSummaryProvider.kt +++ b/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/model/RoomListRoomSummaryProvider.kt @@ -23,6 +23,7 @@ import io.element.android.libraries.matrix.api.core.RoomAlias import io.element.android.libraries.matrix.api.core.RoomId import io.element.android.libraries.matrix.api.core.UserId import io.element.android.libraries.matrix.api.room.RoomNotificationMode +import io.element.android.libraries.matrix.ui.components.InviteSender open class RoomListRoomSummaryProvider : PreviewParameterProvider { override val values: Sequence diff --git a/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/model/InviteSender.kt b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/InviteSender.kt similarity index 95% rename from features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/model/InviteSender.kt rename to libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/InviteSender.kt index 64a47d5072..91c3e6ff40 100644 --- a/features/roomlist/impl/src/main/kotlin/io/element/android/features/roomlist/impl/model/InviteSender.kt +++ b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/InviteSender.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.element.android.features.roomlist.impl.model +package io.element.android.libraries.matrix.ui.components import androidx.compose.material3.MaterialTheme import androidx.compose.runtime.Composable @@ -24,9 +24,9 @@ import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.AnnotatedString import androidx.compose.ui.text.SpanStyle import androidx.compose.ui.text.font.FontWeight -import io.element.android.features.roomlist.impl.R import io.element.android.libraries.designsystem.components.avatar.AvatarData import io.element.android.libraries.matrix.api.core.UserId +import io.element.android.libraries.matrix.ui.R @Immutable data class InviteSender( diff --git a/libraries/matrixui/src/main/res/values/localazy.xml b/libraries/matrixui/src/main/res/values/localazy.xml new file mode 100644 index 0000000000..80939a8863 --- /dev/null +++ b/libraries/matrixui/src/main/res/values/localazy.xml @@ -0,0 +1,4 @@ + + + "%1$s (%2$s) invited you" + diff --git a/tools/localazy/config.json b/tools/localazy/config.json index 7d546df8ae..70eb82cdee 100644 --- a/tools/localazy/config.json +++ b/tools/localazy/config.json @@ -224,6 +224,12 @@ "troubleshoot_notifications_screen_.*" ] }, + { + "name" : ":libraries:matrixui", + "includeRegex" : [ + "screen_invites_invited_you" + ] + }, { "name" : ":features:call", "includeRegex" : [