Browse Source

Read receipt: Cleanup

pull/1834/head
Benoit Marty 10 months ago committed by Benoit Marty
parent
commit
c25e01fe39
  1. 4
      features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesView.kt
  2. 4
      features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/receipt/TimelineItemReadReceiptView.kt
  3. 10
      features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/receipt/bottomsheet/ReadReceiptBottomSheet.kt
  4. 4
      features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/TimelineItemReadReceipts.kt
  5. 3
      tools/detekt/detekt.yml

4
features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/MessagesView.kt

@ -71,7 +71,7 @@ import io.element.android.features.messages.impl.timeline.components.customreact
import io.element.android.features.messages.impl.timeline.components.reactionsummary.ReactionSummaryEvents import io.element.android.features.messages.impl.timeline.components.reactionsummary.ReactionSummaryEvents
import io.element.android.features.messages.impl.timeline.components.reactionsummary.ReactionSummaryView import io.element.android.features.messages.impl.timeline.components.reactionsummary.ReactionSummaryView
import io.element.android.features.messages.impl.timeline.components.receipt.bottomsheet.ReadReceiptBottomSheetEvents import io.element.android.features.messages.impl.timeline.components.receipt.bottomsheet.ReadReceiptBottomSheetEvents
import io.element.android.features.messages.impl.timeline.components.receipt.bottomsheet.ReadReceiptBottomSheetView import io.element.android.features.messages.impl.timeline.components.receipt.bottomsheet.ReadReceiptBottomSheet
import io.element.android.features.messages.impl.timeline.components.retrysendmenu.RetrySendMenuEvents import io.element.android.features.messages.impl.timeline.components.retrysendmenu.RetrySendMenuEvents
import io.element.android.features.messages.impl.timeline.components.retrysendmenu.RetrySendMessageMenu import io.element.android.features.messages.impl.timeline.components.retrysendmenu.RetrySendMessageMenu
import io.element.android.features.messages.impl.timeline.model.TimelineItem import io.element.android.features.messages.impl.timeline.model.TimelineItem
@ -252,7 +252,7 @@ fun MessagesView(
ReactionSummaryView(state = state.reactionSummaryState) ReactionSummaryView(state = state.reactionSummaryState)
RetrySendMessageMenu(state = state.retrySendMenuState) RetrySendMessageMenu(state = state.retrySendMenuState)
ReadReceiptBottomSheetView(state = state.readReceiptBottomSheetState) ReadReceiptBottomSheet(state = state.readReceiptBottomSheetState)
ReinviteDialog(state = state) ReinviteDialog(state = state)
// Since the textfield is now based on an Android view, this is no longer done automatically. // Since the textfield is now based on an Android view, this is no longer done automatically.

4
features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/receipt/TimelineItemReadReceiptView.kt

@ -148,7 +148,7 @@ private fun ReadReceiptsAvatars(
receipts receipts
.take(TimelineConfig.maxReadReceiptToDisplay) .take(TimelineConfig.maxReadReceiptToDisplay)
.reversed() .reversed()
.forEachIndexed { index, it -> .forEachIndexed { index, readReceiptData ->
Box( Box(
modifier = Modifier modifier = Modifier
.padding(end = (12.dp + avatarStrokeSize * 2) * index) .padding(end = (12.dp + avatarStrokeSize * 2) * index)
@ -159,7 +159,7 @@ private fun ReadReceiptsAvatars(
contentAlignment = Alignment.Center, contentAlignment = Alignment.Center,
) { ) {
Avatar( Avatar(
avatarData = it.avatarData, avatarData = readReceiptData.avatarData,
) )
} }
} }

10
features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/receipt/bottomsheet/ReadReceiptBottomSheetView.kt → features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/receipt/bottomsheet/ReadReceiptBottomSheet.kt

@ -41,7 +41,7 @@ import kotlinx.coroutines.launch
@OptIn(ExperimentalMaterial3Api::class) @OptIn(ExperimentalMaterial3Api::class)
@Composable @Composable
internal fun ReadReceiptBottomSheetView( internal fun ReadReceiptBottomSheet(
state: ReadReceiptBottomSheetState, state: ReadReceiptBottomSheetState,
modifier: Modifier = Modifier, modifier: Modifier = Modifier,
) { ) {
@ -62,7 +62,7 @@ internal fun ReadReceiptBottomSheetView(
} }
} }
) { ) {
ReadReceiptBottomSheetContents( ReadReceiptBottomSheetContent(
state = state, state = state,
) )
// FIXME remove after https://issuetracker.google.com/issues/275849044 // FIXME remove after https://issuetracker.google.com/issues/275849044
@ -72,7 +72,7 @@ internal fun ReadReceiptBottomSheetView(
} }
@Composable @Composable
private fun ColumnScope.ReadReceiptBottomSheetContents( private fun ColumnScope.ReadReceiptBottomSheetContent(
state: ReadReceiptBottomSheetState, state: ReadReceiptBottomSheetState,
) { ) {
val receipts = state.selectedEvent?.readReceiptState?.receipts().orEmpty() val receipts = state.selectedEvent?.readReceiptState?.receipts().orEmpty()
@ -97,10 +97,10 @@ private fun ColumnScope.ReadReceiptBottomSheetContents(
@PreviewsDayNight @PreviewsDayNight
@Composable @Composable
internal fun ReadReceiptBottomSheetViewPreview(@PreviewParameter(ReadReceiptBottomSheetStateProvider::class) state: ReadReceiptBottomSheetState) = ElementPreview { internal fun ReadReceiptBottomSheetPreview(@PreviewParameter(ReadReceiptBottomSheetStateProvider::class) state: ReadReceiptBottomSheetState) = ElementPreview {
// TODO restore RetrySendMessageMenuBottomSheet once the issue with bottom sheet not being previewable is fixed // TODO restore RetrySendMessageMenuBottomSheet once the issue with bottom sheet not being previewable is fixed
Column { Column {
ReadReceiptBottomSheetContents( ReadReceiptBottomSheetContent(
state = state state = state
) )
} }

4
features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/TimelineItemReadReceipts.kt

@ -21,7 +21,9 @@ import kotlinx.collections.immutable.ImmutableList
import kotlinx.collections.immutable.persistentListOf import kotlinx.collections.immutable.persistentListOf
sealed interface TimelineItemReadReceipts { sealed interface TimelineItemReadReceipts {
/** Value when the feature is disabled */ /**
* Value when the feature is disabled.
*/
data object Hidden : TimelineItemReadReceipts data object Hidden : TimelineItemReadReceipts
data class ReadReceipts( data class ReadReceipts(

3
tools/detekt/detekt.yml

@ -31,6 +31,9 @@ style:
active: false active: false
UnusedPrivateMember: UnusedPrivateMember:
active: true active: true
DestructuringDeclarationWithTooManyEntries:
active: true
maxDestructuringEntries: 5
UnusedParameter: UnusedParameter:
active: true active: true
UnnecessaryInnerClass: UnnecessaryInnerClass:

Loading…
Cancel
Save