downloads: improve ui

This commit is contained in:
Rahul Patel
2026-05-19 22:37:26 +05:30
parent 5c6bcd6361
commit 8c51175312
2 changed files with 40 additions and 25 deletions

View File

@@ -59,7 +59,7 @@ fun DownloadListItem(modifier: Modifier = Modifier, download: Download, onClick:
progress = download.progress.toFloat() progress = download.progress.toFloat()
) )
}, },
trailing = if (download.isFinished) { trailing = if (download.status == DownloadStatus.COMPLETED) {
{ {
Icon( Icon(
painter = painterResource(R.drawable.ic_check), painter = painterResource(R.drawable.ic_check),
@@ -67,6 +67,14 @@ fun DownloadListItem(modifier: Modifier = Modifier, download: Download, onClick:
tint = Color(0xFF4CAF50) 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 { } else {
null null
} }

View File

@@ -74,30 +74,37 @@ fun DownloadActionsSheet(
modifier = Modifier.padding(vertical = dimensionResource(R.dimen.spacing_xsmall)) modifier = Modifier.padding(vertical = dimensionResource(R.dimen.spacing_xsmall))
) )
Item( if (download.isRunning) {
label = stringResource(R.string.action_cancel), Item(
enabled = download.isRunning, label = stringResource(R.string.action_cancel),
onClick = { enabled = download.isRunning,
onCancel() onClick = {
onDismiss() onCancel()
} onDismiss()
) }
Item( )
label = stringResource(R.string.action_install), } else {
enabled = canInstall, Item(
onClick = { label = stringResource(R.string.action_clear),
onInstall() enabled = !download.isRunning,
onDismiss() onClick = {
} onClear()
) onDismiss()
Item( }
label = stringResource(R.string.action_clear), )
enabled = !download.isRunning, }
onClick = {
onClear() if (!PackageUtil.isInstalled(context, download.packageName)) {
onDismiss() Item(
} label = stringResource(R.string.action_install),
) enabled = canInstall,
onClick = {
onInstall()
onDismiss()
}
)
}
Item( Item(
label = stringResource(R.string.action_export), label = stringResource(R.string.action_export),
enabled = canExport, enabled = canExport,