From 5437a5738fe14f4fad58e8e5b0a39a027a53d12e Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 22 Oct 2025 16:11:41 +0200 Subject: [PATCH] Remove icon preview duplication. We now have IconsCompoundPreview with the same content in only one image. --- .../designsystem/icons/IconsPreview.kt | 50 ++----------------- 1 file changed, 3 insertions(+), 47 deletions(-) diff --git a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/icons/IconsPreview.kt b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/icons/IconsPreview.kt index e2da9bdcc0..73300d2cdf 100644 --- a/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/icons/IconsPreview.kt +++ b/libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/icons/IconsPreview.kt @@ -18,11 +18,8 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.text.style.TextAlign -import androidx.compose.ui.tooling.preview.PreviewParameter -import androidx.compose.ui.tooling.preview.PreviewParameterProvider import androidx.compose.ui.unit.dp import io.element.android.compound.theme.ElementTheme -import io.element.android.compound.tokens.generated.CompoundIcons import io.element.android.libraries.designsystem.preview.ElementPreview import io.element.android.libraries.designsystem.preview.PreviewsDayNight import io.element.android.libraries.designsystem.theme.components.Icon @@ -30,53 +27,12 @@ import io.element.android.libraries.designsystem.theme.components.Text import kotlinx.collections.immutable.ImmutableList import kotlinx.collections.immutable.toImmutableList -internal class CompoundIconChunkProvider : PreviewParameterProvider { - override val values: Sequence - get() { - val chunks = CompoundIcons.allResIds.chunked(36) - return chunks.mapIndexed { index, chunk -> - IconChunk(index = index + 1, total = chunks.size, icons = chunk.toImmutableList()) - } - .asSequence() - } -} - -internal class OtherIconChunkProvider : PreviewParameterProvider { - override val values: Sequence - get() { - val chunks = iconsOther.chunked(36) - return chunks.mapIndexed { index, chunk -> - IconChunk(index = index + 1, total = chunks.size, icons = chunk.toImmutableList()) - } - .asSequence() - } -} - -internal data class IconChunk( - val index: Int, - val total: Int, - val icons: ImmutableList, -) - @PreviewsDayNight @Composable -internal fun IconsCompoundPreview(@PreviewParameter(CompoundIconChunkProvider::class) chunk: IconChunk) = ElementPreview { +internal fun IconsOtherPreview() = ElementPreview { IconsPreview( - title = "R.drawable.ic_compound_* ${chunk.index}/${chunk.total}", - iconsList = chunk.icons, - iconNameTransform = { name -> - name.removePrefix("ic_compound_") - .replace("_", " ") - } - ) -} - -@PreviewsDayNight -@Composable -internal fun IconsOtherPreview(@PreviewParameter(OtherIconChunkProvider::class) iconChunk: IconChunk) = ElementPreview { - IconsPreview( - title = "R.drawable.ic_* ${iconChunk.index}/${iconChunk.total}", - iconsList = iconChunk.icons, + title = "Other icons", + iconsList = iconsOther.toImmutableList(), iconNameTransform = { name -> name.removePrefix("ic_") .replace("_", " ")