commit 5062582e46254a83da45bd85a29a7efc248c2f6f
parent 5f8c8a46753eadcfa08320ae826922325ef5bf38
Author: t3sserakt <t3sserakt@posteo.de>
Date: Fri, 20 Mar 2026 18:45:23 +0100
When connecting new account disconnect is not needed before, becasue libgnunetchat handles that. Removed unnecessary iterateAccounts. This is triggered by refresh callback message.
Diffstat:
2 files changed, 9 insertions(+), 27 deletions(-)
diff --git a/GNUnetMessenger/app/src/main/java/org/gnunet/gnunetmessenger/ui/account/AccountListFragment.kt b/GNUnetMessenger/app/src/main/java/org/gnunet/gnunetmessenger/ui/account/AccountListFragment.kt
@@ -80,12 +80,12 @@ class AccountListFragment : Fragment() {
viewLifecycleOwner.lifecycleScope.launch {
try {
- if (activity.currentAccount != null) {
+ /*if (activity.currentAccount != null) {
runCatching { gnunetChat.disconnect(handle) }
.onFailure {
Log.w(TAG, "disconnect before connect failed", it)
}
- }
+ }*/
gnunetChat.connect(handle, selectedAccount)
selectedAccount.key = gnunetChat.getProfileKey(handle)
diff --git a/GNUnetMessenger/app/src/main/java/org/gnunet/gnunetmessenger/ui/account/CreateAccountFragment.kt b/GNUnetMessenger/app/src/main/java/org/gnunet/gnunetmessenger/ui/account/CreateAccountFragment.kt
@@ -94,43 +94,25 @@ class CreateAccountFragment : Fragment() {
}
private fun createAccount(accountName: String) {
-
-
viewLifecycleOwner.lifecycleScope.launch {
try {
val result = gnunetChat.createAccount(handle = handle, name = accountName)
when (result) {
GnunetReturnValue.OK -> {
- gnunetChat.iterateAccounts(handle) { account ->
- if (account.name == accountName) {
- viewLifecycleOwner.lifecycleScope.launch {
- try {
- if (null != mainActivity.currentAccount)
- runCatching { gnunetChat.disconnect(handle) }
- .onFailure { /* loggen/toast, aber trotzdem weiter */ }
- gnunetChat.connect(handle, account)
- } catch (t: Throwable) {
- // optional: Fehlermeldung / Toast
- }
- }
- requireActivity().runOnUiThread {
- val action =
- CreateAccountFragmentDirections.actionCreateAccountFragmentToAccountOverviewFragment(
- account = account
- )
- findNavController().navigate(action)
- }
- }
-
+ // Erfolgreich → zurück zur Account-Liste
+ requireActivity().runOnUiThread {
+ findNavController().popBackStack()
}
}
else -> {
- println("result ${result} not ok")
+ // TODO: Fehler anzeigen (Toast/Snackbar)
+ println("createAccount failed: $result")
}
}
} catch (t: Throwable) {
- // TODO: Fehlermeldung / Toast / Log
+ // TODO: Fehler anzeigen (Toast/Snackbar)
+ t.printStackTrace()
}
}
}