diff options
author | Iván Ávalos <avalos@disroot.org> | 2023-10-13 20:59:42 -0600 |
---|---|---|
committer | Iván Ávalos <avalos@disroot.org> | 2023-11-11 13:20:09 -0600 |
commit | 406b8007a62131c3c53f27a51fb128738d8c7c8b (patch) | |
tree | 16a7c0d0d7377a8481fe6cdf65524108f2975d74 /anastasis/src/main/java/net/taler/anastasis/ui/screens/recovery/RecoveryFinishedScreen.kt | |
parent | 47372922558c4f0463c647b65332695d156b3754 (diff) | |
download | taler-android-dev/ivan-avalos/anastasis.tar.gz taler-android-dev/ivan-avalos/anastasis.tar.bz2 taler-android-dev/ivan-avalos/anastasis.zip |
[anastasis] Improve I/O for file recoverydev/ivan-avalos/anastasis
Diffstat (limited to 'anastasis/src/main/java/net/taler/anastasis/ui/screens/recovery/RecoveryFinishedScreen.kt')
-rw-r--r-- | anastasis/src/main/java/net/taler/anastasis/ui/screens/recovery/RecoveryFinishedScreen.kt | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/anastasis/src/main/java/net/taler/anastasis/ui/screens/recovery/RecoveryFinishedScreen.kt b/anastasis/src/main/java/net/taler/anastasis/ui/screens/recovery/RecoveryFinishedScreen.kt index 3bc48d2..3827de0 100644 --- a/anastasis/src/main/java/net/taler/anastasis/ui/screens/recovery/RecoveryFinishedScreen.kt +++ b/anastasis/src/main/java/net/taler/anastasis/ui/screens/recovery/RecoveryFinishedScreen.kt @@ -73,11 +73,11 @@ fun RecoveryFinishedScreen( onBackClicked = { viewModel.goHome() }, showNext = false, showPrev = false, - ) { + ) { scrollConnection -> LazyColumn( modifier = Modifier .fillMaxSize() - .nestedScroll(it), + .nestedScroll(scrollConnection), horizontalAlignment = Alignment.CenterHorizontally, ) { item { @@ -127,20 +127,20 @@ fun RecoveryFinishedScreen( contract = ActivityResultContracts.CreateDocument(coreSecret.mime ?: "application/octet-stream"), onResult = { uri -> if (uri != null) { - val outputStream = context.contentResolver.openOutputStream(uri) - if (outputStream != null) { + context.contentResolver.openOutputStream(uri)?.use { try { - // TODO: we should probably listen to Java and not block - outputStream.write(CryptoUtils.decodeCrock(coreSecret.value)) - outputStream.flush() - outputStream.close() + it.write(CryptoUtils.decodeCrock(coreSecret.value)) + it.flush() Toast.makeText( context, - context.getString(R.string.recovery_file_saved), + if (coreSecret.filename != null) + context.getString(R.string.recovery_file_saved_s, coreSecret.filename) + else + context.getString(R.string.recovery_file_saved), Toast.LENGTH_SHORT, ).show() } catch (e: IOException) { - e.printStackTrace() + Log.d("RecoveryFinishedScreen", e.stackTraceToString()) } } } |