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,