diff --git a/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/mailbox/MailboxScreen.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/mailbox/MailboxScreen.kt index c9920763af3bf57a5f1f2c5f089a7debb0da6ab8..fb6db35ab34a5571a1d0e07dcf123a08d3eced5a 100644 --- a/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/mailbox/MailboxScreen.kt +++ b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/mailbox/MailboxScreen.kt @@ -1,6 +1,6 @@ /* * Briar Desktop - * Copyright (C) 2021-2022 The Briar Project + * Copyright (C) 2021-2023 The Briar Project * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as @@ -36,7 +36,7 @@ import org.briarproject.briar.desktop.viewmodel.viewModel @Composable fun MailboxScreen(viewModel: MailboxViewModel = viewModel()) { - when (val state = viewModel.pairingState.value) { + when (val state = viewModel.pairingUiState.value) { Unknown -> Loader() NotSetup -> MailboxSetupScreen(viewModel, false) is Pairing -> when (state.pairingState) { diff --git a/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/mailbox/MailboxSetupScreen.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/mailbox/MailboxSetupScreen.kt index 858727f0c7c80122eadc3a4d6f68e2367220818b..2557659493c45f768a6df9c4934a7a73e849b4f5 100644 --- a/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/mailbox/MailboxSetupScreen.kt +++ b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/mailbox/MailboxSetupScreen.kt @@ -48,7 +48,7 @@ import org.briarproject.briar.desktop.utils.InternationalizationUtils.i18n @Composable fun MailboxSetupScreen(viewModel: MailboxViewModel, showError: Boolean) { MailboxErrorDialog( - state = viewModel.pairingState.value, + state = viewModel.pairingUiState.value, visible = showError, ) { viewModel.onPairingErrorSeen() @@ -99,7 +99,7 @@ fun MailboxSetupScreen(viewModel: MailboxViewModel, showError: Boolean) { .fillMaxWidth() .description(i18n("mailbox.setup.hint")), ) - if (viewModel.pairingState.value is NotSetup) Button( + if (viewModel.pairingUiState.value is NotSetup) Button( onClick = onOkButtonClicked, modifier = Modifier.align(End) ) { diff --git a/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/mailbox/MailboxViewModel.kt b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/mailbox/MailboxViewModel.kt index 50fd5e3ada166edd63ae8323f48545e68005b1ab..97d699270b206ba6b80ebc8d8b0025c8e826f835 100644 --- a/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/mailbox/MailboxViewModel.kt +++ b/briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/mailbox/MailboxViewModel.kt @@ -1,6 +1,6 @@ /* * Briar Desktop - * Copyright (C) 2021-2022 The Briar Project + * Copyright (C) 2021-2023 The Briar Project * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as @@ -72,8 +72,8 @@ class MailboxViewModel @Inject constructor( private val LOG = KotlinLogging.logger {} } - private val _pairingState = mutableStateOf<MailboxPairingUiState>(Unknown) - val pairingState = _pairingState.asState() + private val _pairingUiState = mutableStateOf<MailboxPairingUiState>(Unknown) + val pairingUiState = _pairingUiState.asState() private val _pairingLink = mutableStateOf("") val pairingLink = _pairingLink.asState() private val _status = mutableStateOf<MailboxStatus?>(null) @@ -94,11 +94,11 @@ class MailboxViewModel @Inject constructor( if (isPaired) { val mailboxStatus = mailboxManager.getMailboxStatus(txn) briarExecutors.onUiThread { - _pairingState.value = IsPaired(connectionCheckRunning = false, isWiping = false) + _pairingUiState.value = IsPaired(connectionCheckRunning = false, isWiping = false) _status.value = mailboxStatus } } else briarExecutors.onUiThread { - _pairingState.value = NotSetup + _pairingUiState.value = NotSetup } } else { task.addObserver(this) @@ -117,10 +117,10 @@ class MailboxViewModel @Inject constructor( @UiExecutor private fun onTorInactive() { - val lastState = _pairingState.value + val lastState = _pairingUiState.value if (lastState is Pairing) { // check that we not just finished pairing (showing success screen) - if (lastState.pairingState !is Paired) _pairingState.value = OfflineWhenPairing + if (lastState.pairingState !is Paired) _pairingUiState.value = OfflineWhenPairing // else ignore offline event as user will be leaving UI flow anyway } } @@ -128,7 +128,7 @@ class MailboxViewModel @Inject constructor( @UiExecutor override fun accept(t: MailboxPairingState) { LOG.i { "New pairing state: ${t::class.simpleName}" } - _pairingState.value = Pairing(t) + _pairingUiState.value = Pairing(t) } private fun isTorActive(): Boolean { @@ -149,26 +149,26 @@ class MailboxViewModel @Inject constructor( it.addObserver(this) } } else { - _pairingState.value = OfflineWhenPairing + _pairingUiState.value = OfflineWhenPairing } } @UiExecutor fun onPairingErrorSeen() { - _pairingState.value = NotSetup + _pairingUiState.value = NotSetup } @UiExecutor fun checkConnection() { // we can only check the connection when we are already paired (or just finished pairing) - _pairingState.value = IsPaired(connectionCheckRunning = true, isWiping = false) + _pairingUiState.value = IsPaired(connectionCheckRunning = true, isWiping = false) briarExecutors.onIoThread { // this check updates _status state via an Event val success = mailboxManager.checkConnection() LOG.i { "Got result from connection check: $success" } briarExecutors.onUiThread { - val s = pairingState.value - if (s is IsPaired) _pairingState.value = IsPaired(connectionCheckRunning = false, isWiping = false) + val s = pairingUiState.value + if (s is IsPaired) _pairingUiState.value = IsPaired(connectionCheckRunning = false, isWiping = false) else LOG.w { "Unexpected state: ${s::class.simpleName}" } } } @@ -176,11 +176,11 @@ class MailboxViewModel @Inject constructor( @UiExecutor fun unlink() { - _pairingState.value = IsPaired(connectionCheckRunning = false, isWiping = true) + _pairingUiState.value = IsPaired(connectionCheckRunning = false, isWiping = true) briarExecutors.onIoThread { val wasWiped = mailboxManager.unPair() briarExecutors.onUiThread { - _pairingState.value = WasUnpaired(!wasWiped) + _pairingUiState.value = WasUnpaired(!wasWiped) } } }