You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
refactor(details): Improve download and downgrade UX
This commit enhances the user experience on the details screen by improving the download and version management logic.
Downloads are now cached within a screen session. If a user dismisses an install prompt and retries the installation, the app will reuse the already-downloaded file instead of re-downloading it. The download progress indicator now displays the downloaded size (e.g., "14.2 MB / 25.0 MB") for better feedback. Temporary files from canceled or completed downloads are now reliably cleaned up when the user navigates away from the screen.
The downgrade detection logic has also been made more robust. It now uses the release list order as the primary method to determine if a selected version is older, falling back to semantic version comparison only when necessary. This provides more accurate downgrade warnings.
Finally, ProGuard/R8 is now enabled for release builds to optimize and shrink the application size.
- **feat(download)**: Reuse an already-downloaded file if the user cancels the install prompt and then re-initiates it in the same session.
- **feat(download)**: Display download progress with file sizes (e.g., "X MB / Y MB") instead of just a percentage.
- **fix(download)**: Ensure partially downloaded and cached files are properly cleaned up when the user leaves the details screen.
Copy file name to clipboardExpand all lines: feature/details/presentation/src/commonMain/kotlin/zed/rainxch/details/presentation/components/SmartInstallButton.kt
+19-2Lines changed: 19 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -251,8 +251,13 @@ fun SmartInstallButton(
251
251
fontWeight =FontWeight.Bold
252
252
)
253
253
254
+
val progressText =if (state.totalBytes !=null&& state.totalBytes >0) {
0 commit comments