From 3bbfc8ac3ac8bb75d513ca38cd933fd4f1548892 Mon Sep 17 00:00:00 2001 From: FooIbar <118464521+FooIbar@users.noreply.github.com> Date: Wed, 3 Dec 2025 00:10:46 +0800 Subject: [PATCH] Use different icon for finished download items --- .../com/hippo/ehviewer/ui/main/DownloadCard.kt | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/app/src/main/kotlin/com/hippo/ehviewer/ui/main/DownloadCard.kt b/app/src/main/kotlin/com/hippo/ehviewer/ui/main/DownloadCard.kt index 13b9cb017..0c9237be1 100644 --- a/app/src/main/kotlin/com/hippo/ehviewer/ui/main/DownloadCard.kt +++ b/app/src/main/kotlin/com/hippo/ehviewer/ui/main/DownloadCard.kt @@ -13,6 +13,7 @@ import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.offset import androidx.compose.foundation.layout.padding import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.DownloadDone import androidx.compose.material.icons.filled.Pause import androidx.compose.material.icons.filled.PlayArrow import androidx.compose.material3.Card @@ -165,18 +166,18 @@ fun DownloadCard( } Spacer(modifier = Modifier.weight(1f)) val running = downloadState == DownloadInfo.STATE_WAIT || downloadState == DownloadInfo.STATE_DOWNLOAD - val icon = remember { - movableContentOf { - Icon(imageVector = if (it) Icons.Default.Pause else Icons.Default.PlayArrow, contentDescription = null) - } + val icon = when (downloadState) { + DownloadInfo.STATE_WAIT, DownloadInfo.STATE_DOWNLOAD -> Icons.Default.Pause + DownloadInfo.STATE_FINISH -> Icons.Default.DownloadDone + else -> Icons.Default.PlayArrow } if (selectMode) { Box(modifier = Modifier.offset(4.dp).minimumInteractiveComponentSize()) { - icon(running) + Icon(imageVector = icon, contentDescription = null) } } else { IconButton(onClick = if (running) onStop else onStart, shapes = IconButtonDefaults.shapes(), modifier = Modifier.offset(4.dp)) { - icon(running) + Icon(imageVector = icon, contentDescription = null) } } }