aboutsummaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorHarsh Shandilya <me@msfjarvis.dev>2022-10-29 04:36:34 +0530
committerHarsh Shandilya <me@msfjarvis.dev>2022-10-29 04:37:04 +0530
commit538ddbfd95af31de2b3ad7d0f9de0cefd91befae (patch)
treec531f0374528bdecad2a7afb3118d6c34a5ff9c2 /app
parentb4c9115365ecbdac2127f7b68d8b46ca1975f1da (diff)
feat(app): wire in ASCII armor toggle
Diffstat (limited to 'app')
-rw-r--r--app/src/main/java/app/passwordstore/data/crypto/CryptoRepository.kt9
1 files changed, 8 insertions, 1 deletions
diff --git a/app/src/main/java/app/passwordstore/data/crypto/CryptoRepository.kt b/app/src/main/java/app/passwordstore/data/crypto/CryptoRepository.kt
index 233dedef..f3a82f39 100644
--- a/app/src/main/java/app/passwordstore/data/crypto/CryptoRepository.kt
+++ b/app/src/main/java/app/passwordstore/data/crypto/CryptoRepository.kt
@@ -5,12 +5,15 @@
package app.passwordstore.data.crypto
+import android.content.SharedPreferences
import app.passwordstore.crypto.GpgIdentifier
import app.passwordstore.crypto.PGPDecryptOptions
import app.passwordstore.crypto.PGPEncryptOptions
import app.passwordstore.crypto.PGPKeyManager
import app.passwordstore.crypto.PGPainlessCryptoHandler
import app.passwordstore.crypto.errors.CryptoHandlerException
+import app.passwordstore.injection.prefs.SettingsPreferences
+import app.passwordstore.util.settings.PreferenceKeys
import com.github.michaelbull.result.Result
import com.github.michaelbull.result.getAll
import com.github.michaelbull.result.unwrap
@@ -25,6 +28,7 @@ class CryptoRepository
constructor(
private val pgpKeyManager: PGPKeyManager,
private val pgpCryptoHandler: PGPainlessCryptoHandler,
+ @SettingsPreferences private val settings: SharedPreferences,
) {
suspend fun decrypt(
@@ -54,7 +58,10 @@ constructor(
content: ByteArrayInputStream,
out: ByteArrayOutputStream,
): Result<Unit, CryptoHandlerException> {
- val encryptionOptions = PGPEncryptOptions.Builder().build()
+ val encryptionOptions =
+ PGPEncryptOptions.Builder()
+ .withAsciiArmor(settings.getBoolean(PreferenceKeys.ASCII_ARMOR, false))
+ .build()
val keys = identities.map { id -> pgpKeyManager.getKeyById(id) }.getAll()
return pgpCryptoHandler.encrypt(
keys,