Fix potential issue setting account (only happens sometimes)

This commit is contained in:
Luna712 2023-10-30 13:32:58 -06:00
parent d1e46422df
commit fea6e5f704

View file

@ -58,16 +58,28 @@ class AccountSelectActivity : AppCompatActivity() {
showPinInputDialog(this@AccountSelectActivity, selectedAccount.lockPin, false) { pin ->
if (pin == null) return@showPinInputDialog
// Pin is correct, proceed to main activity
DataStoreHelper.selectedKeyIndex = selectedAccount.keyIndex
setAccount(selectedAccount)
navigateToMainActivity()
}
} else {
// No PIN set for the selected account, proceed to main activity
DataStoreHelper.selectedKeyIndex = selectedAccount.keyIndex
setAccount(selectedAccount)
navigateToMainActivity()
}
}
private fun setAccount(account: DataStoreHelper.Account) {
// Don't reload if it is the same account
if (DataStoreHelper.selectedKeyIndex == account.keyIndex) {
return
}
DataStoreHelper.selectedKeyIndex = account.keyIndex
MainActivity.bookmarksUpdatedEvent(true)
MainActivity.reloadHomeEvent(true)
}
private fun navigateToMainActivity() {
val mainIntent = Intent(this, MainActivity::class.java)
startActivity(mainIntent)