From b273e6dd4f61dbb0aac0ef8d0e09d7a9e7806fbb Mon Sep 17 00:00:00 2001 From: David Kaspar Date: Wed, 18 Dec 2024 22:52:01 +0100 Subject: [PATCH] rearrange code for easier diff --- .../ui/screen/loggedIn/AccountBackupDialog.kt | 180 +++++++++--------- 1 file changed, 90 insertions(+), 90 deletions(-) diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/AccountBackupDialog.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/AccountBackupDialog.kt index 0a2090483..40ec2ca58 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/AccountBackupDialog.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/AccountBackupDialog.kt @@ -300,96 +300,6 @@ private fun DialogContents( } } -@Composable -private fun QrCodeButton(accountViewModel: AccountViewModel) { - val context = LocalContext.current - - // store the dialog open or close state - var dialogOpen by remember { mutableStateOf(false) } - - val keyguardLauncher = - rememberLauncherForActivityResult(ActivityResultContracts.StartActivityForResult()) { result: ActivityResult -> - if (result.resultCode == Activity.RESULT_OK) { - dialogOpen = true - } - } - - IconButton( - onClick = { - authenticate( - title = stringRes(context, R.string.copy_my_secret_key), - context = context, - keyguardLauncher = keyguardLauncher, - onApproved = { dialogOpen = true }, - onError = { title, message -> accountViewModel.toast(title, message) }, - ) - }, - ) { - Icon( - painter = painterResource(R.drawable.ic_qrcode), - contentDescription = stringRes(id = R.string.show_npub_as_a_qr_code), - modifier = Modifier.size(24.dp), - tint = MaterialTheme.colorScheme.primary, - ) - } - - if (dialogOpen) { - ShowKeyQRDialog( - accountViewModel.account.settings.keyPair.privKey - ?.toNsec(), - onClose = { dialogOpen = false }, - ) - } -} - -@Composable -private fun QrCodeButtonEncrypted( - accountViewModel: AccountViewModel, - password: MutableState, -) { - val context = LocalContext.current - - // store the dialog open or close state - var dialogOpen by remember { mutableStateOf(false) } - - val keyguardLauncher = - rememberLauncherForActivityResult(ActivityResultContracts.StartActivityForResult()) { result: ActivityResult -> - if (result.resultCode == Activity.RESULT_OK) { - dialogOpen = true - } - } - - IconButton( - enabled = password.value.text.isNotBlank(), - onClick = { - authenticate( - title = stringRes(context, R.string.copy_my_secret_key), - context = context, - keyguardLauncher = keyguardLauncher, - onApproved = { dialogOpen = true }, - onError = { title, message -> accountViewModel.toast(title, message) }, - ) - }, - ) { - Icon( - painter = painterResource(R.drawable.ic_qrcode), - contentDescription = stringRes(id = R.string.show_npub_as_a_qr_code), - modifier = Modifier.size(24.dp), - ) - } - - if (dialogOpen) { - val key = - accountViewModel.account.settings.keyPair.privKey - ?.toHexKey() - ?.let { CryptoUtils.encryptNIP49(it, password.value.text) } - ShowKeyQRDialog( - key, - onClose = { dialogOpen = false }, - ) - } -} - @Composable private fun NSecCopyButton(accountViewModel: AccountViewModel) { val clipboardManager = LocalClipboardManager.current @@ -559,6 +469,96 @@ private fun encryptCopyNSec( } } +@Composable +private fun QrCodeButton(accountViewModel: AccountViewModel) { + val context = LocalContext.current + + // store the dialog open or close state + var dialogOpen by remember { mutableStateOf(false) } + + val keyguardLauncher = + rememberLauncherForActivityResult(ActivityResultContracts.StartActivityForResult()) { result: ActivityResult -> + if (result.resultCode == Activity.RESULT_OK) { + dialogOpen = true + } + } + + IconButton( + onClick = { + authenticate( + title = stringRes(context, R.string.copy_my_secret_key), + context = context, + keyguardLauncher = keyguardLauncher, + onApproved = { dialogOpen = true }, + onError = { title, message -> accountViewModel.toast(title, message) }, + ) + }, + ) { + Icon( + painter = painterResource(R.drawable.ic_qrcode), + contentDescription = stringRes(id = R.string.show_npub_as_a_qr_code), + modifier = Modifier.size(24.dp), + tint = MaterialTheme.colorScheme.primary, + ) + } + + if (dialogOpen) { + ShowKeyQRDialog( + accountViewModel.account.settings.keyPair.privKey + ?.toNsec(), + onClose = { dialogOpen = false }, + ) + } +} + +@Composable +private fun QrCodeButtonEncrypted( + accountViewModel: AccountViewModel, + password: MutableState, +) { + val context = LocalContext.current + + // store the dialog open or close state + var dialogOpen by remember { mutableStateOf(false) } + + val keyguardLauncher = + rememberLauncherForActivityResult(ActivityResultContracts.StartActivityForResult()) { result: ActivityResult -> + if (result.resultCode == Activity.RESULT_OK) { + dialogOpen = true + } + } + + IconButton( + enabled = password.value.text.isNotBlank(), + onClick = { + authenticate( + title = stringRes(context, R.string.copy_my_secret_key), + context = context, + keyguardLauncher = keyguardLauncher, + onApproved = { dialogOpen = true }, + onError = { title, message -> accountViewModel.toast(title, message) }, + ) + }, + ) { + Icon( + painter = painterResource(R.drawable.ic_qrcode), + contentDescription = stringRes(id = R.string.show_npub_as_a_qr_code), + modifier = Modifier.size(24.dp), + ) + } + + if (dialogOpen) { + val key = + accountViewModel.account.settings.keyPair.privKey + ?.toHexKey() + ?.let { CryptoUtils.encryptNIP49(it, password.value.text) } + ShowKeyQRDialog( + key, + onClose = { dialogOpen = false }, + ) + } +} + @Composable private fun ShowKeyQRDialog( qrCode: String?,