From 38f4c9143f69e63ea8062158803e8aa36cc59df0 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Mon, 26 Jun 2023 14:56:47 +0200 Subject: [PATCH] Add preview for `TimelineItemImageContent`, (and video and file) since the icon is rendered differently in this case. --- .../actionlist/ActionListStateProvider.kt | 44 +++++++++++++++---- .../event/TimelineItemFileContentProvider.kt | 2 +- 2 files changed, 37 insertions(+), 9 deletions(-) diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListStateProvider.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListStateProvider.kt index 7df34bf36e..1d3f656fc0 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListStateProvider.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/actionlist/ActionListStateProvider.kt @@ -19,6 +19,10 @@ package io.element.android.features.messages.impl.actionlist import androidx.compose.ui.tooling.preview.PreviewParameterProvider import io.element.android.features.messages.impl.actionlist.model.TimelineItemAction import io.element.android.features.messages.impl.timeline.aTimelineItemEvent +import io.element.android.features.messages.impl.timeline.model.event.aTimelineItemFileContent +import io.element.android.features.messages.impl.timeline.model.event.aTimelineItemImageContent +import io.element.android.features.messages.impl.timeline.model.event.aTimelineItemVideoContent +import kotlinx.collections.immutable.ImmutableList import kotlinx.collections.immutable.persistentListOf open class ActionListStateProvider : PreviewParameterProvider { @@ -29,15 +33,27 @@ open class ActionListStateProvider : PreviewParameterProvider { anActionListState().copy( target = ActionListState.Target.Success( event = aTimelineItemEvent(), - actions = persistentListOf( - TimelineItemAction.Reply, - TimelineItemAction.Forward, - TimelineItemAction.Copy, - TimelineItemAction.Edit, - TimelineItemAction.Redact, - ) + actions = aTimelineItemActionList(), ) - ) + ), + anActionListState().copy( + target = ActionListState.Target.Success( + event = aTimelineItemEvent(content = aTimelineItemImageContent()), + actions = aTimelineItemActionList(), + ) + ), + anActionListState().copy( + target = ActionListState.Target.Success( + event = aTimelineItemEvent(content = aTimelineItemVideoContent()), + actions = aTimelineItemActionList(), + ) + ), + anActionListState().copy( + target = ActionListState.Target.Success( + event = aTimelineItemEvent(content = aTimelineItemFileContent()), + actions = aTimelineItemActionList(), + ) + ), ) } @@ -45,3 +61,15 @@ fun anActionListState() = ActionListState( target = ActionListState.Target.None, eventSink = {} ) + +fun aTimelineItemActionList(): ImmutableList { + return persistentListOf( + TimelineItemAction.Reply, + TimelineItemAction.Forward, + TimelineItemAction.Copy, + TimelineItemAction.Edit, + TimelineItemAction.Redact, + TimelineItemAction.ReportContent, + TimelineItemAction.Developer, + ) +} diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemFileContentProvider.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemFileContentProvider.kt index e037b9b41d..ef9d2c80d9 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemFileContentProvider.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemFileContentProvider.kt @@ -29,7 +29,7 @@ open class TimelineItemFileContentProvider : PreviewParameterProvider