Localize the name of the Download directory, use it on Home screen

This commit is contained in:
Pierre-Yves Nicolas
2025-09-08 21:43:54 +02:00
parent a663885b9e
commit 0c0f8202f5
6 changed files with 14 additions and 16 deletions

View File

@@ -319,8 +319,7 @@ class MainViewModel(
fun saveFile(pdfFile: File): File { fun saveFile(pdfFile: File): File {
val copiedFile = pdfFileManager.copyToExternalDir(pdfFile) val copiedFile = pdfFileManager.copyToExternalDir(pdfFile)
val dirName = copiedFile.parentFile?.name _pdfUiState.update { it.copy(savedFileUri = pdfFile.toUri()) }
_pdfUiState.update { it.copy(savedFileUri = pdfFile.toUri(), saveDirectoryName = dirName) }
return copiedFile return copiedFile
} }

View File

@@ -23,7 +23,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 hasSharedPdf: Boolean = false, val hasSharedPdf: Boolean = false,
val errorMessage: String? = null, val errorMessage: String? = null,
) { ) {

View File

@@ -215,8 +215,8 @@ private fun TextFieldAndPdfInfos(
} }
} }
if (uiState.saveDirectoryName != null) { if (uiState.savedFileUri != null) {
SavePdfBar(onOpen, uiState.saveDirectoryName) SavedPdfBar(onOpen)
} }
if (uiState.errorMessage != null) { if (uiState.errorMessage != null) {
ErrorBar(uiState.errorMessage) ErrorBar(uiState.errorMessage)
@@ -330,7 +330,7 @@ fun ExportButton(
} }
@Composable @Composable
private fun SavePdfBar(onOpen: () -> Unit, saveDirectoryName: String) { private fun SavedPdfBar(onOpen: () -> Unit) {
Row( Row(
verticalAlignment = Alignment.CenterVertically, verticalAlignment = Alignment.CenterVertically,
horizontalArrangement = Arrangement.Absolute.SpaceBetween, horizontalArrangement = Arrangement.Absolute.SpaceBetween,
@@ -340,9 +340,11 @@ private fun SavePdfBar(onOpen: () -> Unit, saveDirectoryName: String) {
.padding(vertical = 8.dp, horizontal = 16.dp), .padding(vertical = 8.dp, horizontal = 16.dp),
) { ) {
Text( Text(
text = stringResource(R.string.pdf_saved_to, saveDirectoryName), text = stringResource(R.string.pdf_saved_to),
style = MaterialTheme.typography.bodyMedium style = MaterialTheme.typography.bodyMedium,
modifier = Modifier.weight(1f),
) )
Spacer(Modifier.width(8.dp))
MainActionButton( MainActionButton(
onClick = onOpen, onClick = onOpen,
text = stringResource(R.string.open), text = stringResource(R.string.open),
@@ -401,7 +403,6 @@ fun PreviewExportScreenAfterSave() {
uiState = PdfGenerationUiState( uiState = PdfGenerationUiState(
generatedPdf = GeneratedPdf(file, 442897L, 3), generatedPdf = GeneratedPdf(file, 442897L, 3),
savedFileUri = file.toUri(), savedFileUri = file.toUri(),
saveDirectoryName = "Downloads",
), ),
) )
} }
@@ -422,7 +423,6 @@ fun PreviewExportScreenAfterSaveHorizontal() {
uiState = PdfGenerationUiState( uiState = PdfGenerationUiState(
generatedPdf = GeneratedPdf(file, 442897L, 3), generatedPdf = GeneratedPdf(file, 442897L, 3),
savedFileUri = file.toUri(), savedFileUri = file.toUri(),
saveDirectoryName = "Downloads",
), ),
) )
} }

View File

@@ -20,7 +20,7 @@
<string name="filename">Dateiname</string> <string name="filename">Dateiname</string>
<string name="file_size">Dateigröße: %1$s</string> <string name="file_size">Dateigröße: %1$s</string>
<string name="grant_permission">Berechtigung erteilen</string> <string name="grant_permission">Berechtigung erteilen</string>
<string name="last_saved_pdf_files">Zuletzt gespeicherte PDF-Dateien:</string> <string name="last_saved_pdf_files">Zuletzt gespeicherte PDF-Dateien in Downloads:</string>
<string name="libraries">Bibliotheken</string> <string name="libraries">Bibliotheken</string>
<string name="libraries_intro">Diese Anwendung verwendet mehrere Open-Source-Bibliotheken, darunter:</string> <string name="libraries_intro">Diese Anwendung verwendet mehrere Open-Source-Bibliotheken, darunter:</string>
<string name="libraries_open_source">Open-Source-Bibliotheken</string> <string name="libraries_open_source">Open-Source-Bibliotheken</string>
@@ -29,7 +29,7 @@
<string name="new_document_warning">Das aktuelle Dokument geht verloren. Möchten Sie fortfahren?</string> <string name="new_document_warning">Das aktuelle Dokument geht verloren. Möchten Sie fortfahren?</string>
<string name="open">Öffnen</string> <string name="open">Öffnen</string>
<string name="open_pdf">PDF öffnen</string> <string name="open_pdf">PDF öffnen</string>
<string name="pdf_saved_to">PDF gespeichert unter %1$s</string> <string name="pdf_saved_to">PDF gespeichert in Downloads</string>
<string name="resume">Fortsetzen</string> <string name="resume">Fortsetzen</string>
<string name="save">Speichern</string> <string name="save">Speichern</string>
<string name="scan_button">Neuer Scan</string> <string name="scan_button">Neuer Scan</string>

View File

@@ -20,7 +20,7 @@
<string name="filename">Nom de fichier</string> <string name="filename">Nom de fichier</string>
<string name="file_size">Taille du fichier : %1$s</string> <string name="file_size">Taille du fichier : %1$s</string>
<string name="grant_permission">Autoriser</string> <string name="grant_permission">Autoriser</string>
<string name="last_saved_pdf_files">Derniers fichiers PDF enregistrés :</string> <string name="last_saved_pdf_files">Derniers fichiers PDF enregistrés dans Téléchargements :</string>
<string name="libraries">Bibliothèques</string> <string name="libraries">Bibliothèques</string>
<string name="libraries_intro">Cette application utilise plusieurs bibliothèques open source, notamment :</string> <string name="libraries_intro">Cette application utilise plusieurs bibliothèques open source, notamment :</string>
<string name="libraries_open_source">Bibliothèques open source</string> <string name="libraries_open_source">Bibliothèques open source</string>
@@ -29,7 +29,7 @@
<string name="new_document_warning">Le scan en cours sera perdu. Voulez-vous continuer ?</string> <string name="new_document_warning">Le scan en cours sera perdu. Voulez-vous continuer ?</string>
<string name="open">Ouvrir</string> <string name="open">Ouvrir</string>
<string name="open_pdf">Ouvrir le PDF</string> <string name="open_pdf">Ouvrir le PDF</string>
<string name="pdf_saved_to">PDF enregistré dans %1$s</string> <string name="pdf_saved_to">PDF enregistré dans Téléchargements</string>
<string name="resume">Reprendre</string> <string name="resume">Reprendre</string>
<string name="save">Enregistrer</string> <string name="save">Enregistrer</string>
<string name="scan_button">Nouveau scan</string> <string name="scan_button">Nouveau scan</string>

View File

@@ -21,7 +21,7 @@
<string name="filename">Filename</string> <string name="filename">Filename</string>
<string name="file_size">File size: %1$s</string> <string name="file_size">File size: %1$s</string>
<string name="grant_permission">Grant permission</string> <string name="grant_permission">Grant permission</string>
<string name="last_saved_pdf_files">Last saved PDF files:</string> <string name="last_saved_pdf_files">Last PDF files saved in Downloads:</string>
<string name="libraries">Libraries</string> <string name="libraries">Libraries</string>
<string name="libraries_intro">This application uses several open-source libraries, including:</string> <string name="libraries_intro">This application uses several open-source libraries, including:</string>
<string name="libraries_open_source">Open-source libraries</string> <string name="libraries_open_source">Open-source libraries</string>
@@ -30,7 +30,7 @@
<string name="new_document_warning">The current scan will be lost. Do you want to continue?</string> <string name="new_document_warning">The current scan will be lost. Do you want to continue?</string>
<string name="open">Open</string> <string name="open">Open</string>
<string name="open_pdf">Open PDF</string> <string name="open_pdf">Open PDF</string>
<string name="pdf_saved_to">PDF saved to %1$s</string> <string name="pdf_saved_to">PDF saved in Downloads</string>
<string name="resume">Resume</string> <string name="resume">Resume</string>
<string name="save">Save</string> <string name="save">Save</string>
<string name="scan_button">New Scan</string> <string name="scan_button">New Scan</string>