Remove hardcoded "Downloads"

This commit is contained in:
Pierre-Yves Nicolas
2025-07-12 16:09:06 +02:00
parent a18957d5e1
commit f4a3ffdeee
3 changed files with 7 additions and 11 deletions

View File

@@ -17,11 +17,9 @@ package org.mydomain.myscan
import android.content.Context import android.content.Context
import android.graphics.Bitmap import android.graphics.Bitmap
import android.graphics.BitmapFactory import android.graphics.BitmapFactory
import android.net.Uri
import android.os.Environment import android.os.Environment
import android.util.Log import android.util.Log
import androidx.camera.core.ImageProxy import androidx.camera.core.ImageProxy
import androidx.core.net.toFile
import androidx.core.net.toUri import androidx.core.net.toUri
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.ViewModelProvider
@@ -277,14 +275,11 @@ class MainViewModel(
fun saveFile(pdfFile: File): File { fun saveFile(pdfFile: File): File {
val copiedFile = pdfFileManager.copyToExternalDir(pdfFile) val copiedFile = pdfFileManager.copyToExternalDir(pdfFile)
markFileSaved(pdfFile.toUri()) val dirName = copiedFile.parentFile?.name
_pdfUiState.update { it.copy(savedFileUri = pdfFile.toUri(), saveDirectoryName = dirName) }
return copiedFile return copiedFile
} }
fun markFileSaved(uri: Uri) {
_pdfUiState.update { it.copy(savedFileUri = uri) }
}
fun cleanUpOldPdfs(thresholdInMillis: Int) { fun cleanUpOldPdfs(thresholdInMillis: Int) {
pdfFileManager.cleanUpOldFiles(thresholdInMillis) pdfFileManager.cleanUpOldFiles(thresholdInMillis)
} }

View File

@@ -22,5 +22,6 @@ data class PdfGenerationUiState(
val generatedPdf: GeneratedPdf? = null, val generatedPdf: GeneratedPdf? = null,
val desiredFilename: String = "", val desiredFilename: String = "",
val savedFileUri: Uri? = null, val savedFileUri: Uri? = null,
val saveDirectoryName: String? = null,
val errorMessage: String? = null val errorMessage: String? = null
) )

View File

@@ -157,8 +157,8 @@ fun PdfGenerationBottomSheet(
MainActions(pdf, onShare, onSave) MainActions(pdf, onShare, onSave)
} }
if (uiState.savedFileUri != null) { if (uiState.saveDirectoryName != null) {
SavePdfBar(onOpen) SavePdfBar(onOpen, uiState.saveDirectoryName)
} }
if (uiState.errorMessage != null) { if (uiState.errorMessage != null) {
ErrorBar(uiState.errorMessage) ErrorBar(uiState.errorMessage)
@@ -196,7 +196,7 @@ private fun MainActions(
} }
@Composable @Composable
private fun SavePdfBar(onOpen: () -> Unit) { private fun SavePdfBar(onOpen: () -> Unit, saveDirectoryName: String) {
Row( Row(
verticalAlignment = Alignment.CenterVertically, verticalAlignment = Alignment.CenterVertically,
horizontalArrangement = Arrangement.Absolute.SpaceBetween, horizontalArrangement = Arrangement.Absolute.SpaceBetween,
@@ -206,7 +206,7 @@ private fun SavePdfBar(onOpen: () -> Unit) {
.padding(vertical = 8.dp, horizontal = 16.dp), .padding(vertical = 8.dp, horizontal = 16.dp),
) { ) {
Text( Text(
text = "PDF saved to Downloads", text = "PDF saved to $saveDirectoryName",
style = MaterialTheme.typography.bodyMedium style = MaterialTheme.typography.bodyMedium
) )
MainActionButton( MainActionButton(