From 8c511753123c5e930d281d35b1b23efad29e8d6a Mon Sep 17 00:00:00 2001 From: Rahul Patel Date: Tue, 19 May 2026 22:37:26 +0530 Subject: [PATCH] downloads: improve ui --- .../compose/composable/DownloadListItem.kt | 10 +++- .../compose/ui/sheets/DownloadActionsSheet.kt | 55 +++++++++++-------- 2 files changed, 40 insertions(+), 25 deletions(-) diff --git a/app/src/main/java/com/aurora/store/compose/composable/DownloadListItem.kt b/app/src/main/java/com/aurora/store/compose/composable/DownloadListItem.kt index 5948e8873..46ea7012a 100644 --- a/app/src/main/java/com/aurora/store/compose/composable/DownloadListItem.kt +++ b/app/src/main/java/com/aurora/store/compose/composable/DownloadListItem.kt @@ -59,7 +59,7 @@ fun DownloadListItem(modifier: Modifier = Modifier, download: Download, onClick: progress = download.progress.toFloat() ) }, - trailing = if (download.isFinished) { + trailing = if (download.status == DownloadStatus.COMPLETED) { { Icon( painter = painterResource(R.drawable.ic_check), @@ -67,6 +67,14 @@ fun DownloadListItem(modifier: Modifier = Modifier, download: Download, onClick: tint = Color(0xFF4CAF50) ) } + } else if (download.status == DownloadStatus.CANCELLED) { + { + Icon( + painter = painterResource(R.drawable.ic_cancel), + contentDescription = stringResource(R.string.download_canceled), + tint = Color(0xFFF44336) + ) + } } else { null } diff --git a/app/src/main/java/com/aurora/store/compose/ui/sheets/DownloadActionsSheet.kt b/app/src/main/java/com/aurora/store/compose/ui/sheets/DownloadActionsSheet.kt index 086bba308..f5208a3ce 100644 --- a/app/src/main/java/com/aurora/store/compose/ui/sheets/DownloadActionsSheet.kt +++ b/app/src/main/java/com/aurora/store/compose/ui/sheets/DownloadActionsSheet.kt @@ -74,30 +74,37 @@ fun DownloadActionsSheet( modifier = Modifier.padding(vertical = dimensionResource(R.dimen.spacing_xsmall)) ) - Item( - label = stringResource(R.string.action_cancel), - enabled = download.isRunning, - onClick = { - onCancel() - onDismiss() - } - ) - Item( - label = stringResource(R.string.action_install), - enabled = canInstall, - onClick = { - onInstall() - onDismiss() - } - ) - Item( - label = stringResource(R.string.action_clear), - enabled = !download.isRunning, - onClick = { - onClear() - onDismiss() - } - ) + if (download.isRunning) { + Item( + label = stringResource(R.string.action_cancel), + enabled = download.isRunning, + onClick = { + onCancel() + onDismiss() + } + ) + } else { + Item( + label = stringResource(R.string.action_clear), + enabled = !download.isRunning, + onClick = { + onClear() + onDismiss() + } + ) + } + + if (!PackageUtil.isInstalled(context, download.packageName)) { + Item( + label = stringResource(R.string.action_install), + enabled = canInstall, + onClick = { + onInstall() + onDismiss() + } + ) + } + Item( label = stringResource(R.string.action_export), enabled = canExport,