From 12462238591a28a13e21f48260f0879235aa5eb0 Mon Sep 17 00:00:00 2001 From: Marcel Hibbe Date: Thu, 6 Apr 2023 19:13:03 +0200 Subject: [PATCH] Fix to add account (temp solution until conductor is removed) Signed-off-by: Marcel Hibbe --- .../java/com/nextcloud/talk/activities/MainActivity.kt | 5 ++++- .../talk/controllers/AccountVerificationController.kt | 3 ++- .../talk/ui/dialog/ChooseAccountDialogFragment.java | 9 +++++++-- .../java/com/nextcloud/talk/utils/bundle/BundleKeys.kt | 1 + 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/activities/MainActivity.kt b/app/src/main/java/com/nextcloud/talk/activities/MainActivity.kt index 52ad728b4..a52e67028 100644 --- a/app/src/main/java/com/nextcloud/talk/activities/MainActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/activities/MainActivity.kt @@ -52,6 +52,7 @@ import com.nextcloud.talk.users.UserManager import com.nextcloud.talk.utils.ApiUtils import com.nextcloud.talk.utils.SecurityUtils import com.nextcloud.talk.utils.bundle.BundleKeys +import com.nextcloud.talk.utils.bundle.BundleKeys.ADD_ACCOUNT import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ACTIVE_CONVERSATION import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_ID import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_TOKEN @@ -92,7 +93,9 @@ class MainActivity : BaseActivity(), ActionBarProvider { router = Conductor.attachRouter(this, binding.controllerContainer, savedInstanceState) - if (intent.hasExtra(BundleKeys.KEY_FROM_NOTIFICATION_START_CALL)) { + if (intent.hasExtra(ADD_ACCOUNT) && intent.getBooleanExtra(ADD_ACCOUNT, false)) { + addAccount() + } else if (intent.hasExtra(BundleKeys.KEY_FROM_NOTIFICATION_START_CALL)) { onNewIntent(intent) } else if (!router!!.hasRootController()) { if (!appPreferences.isDbRoomMigrated) { diff --git a/app/src/main/java/com/nextcloud/talk/controllers/AccountVerificationController.kt b/app/src/main/java/com/nextcloud/talk/controllers/AccountVerificationController.kt index dff638289..387b5aaed 100644 --- a/app/src/main/java/com/nextcloud/talk/controllers/AccountVerificationController.kt +++ b/app/src/main/java/com/nextcloud/talk/controllers/AccountVerificationController.kt @@ -466,7 +466,8 @@ class AccountVerificationController(args: Bundle? = null) : ApplicationWideMessageHolder.getInstance().messageType = ApplicationWideMessageHolder.MessageType.ACCOUNT_WAS_IMPORTED } - router.popToRoot() + val intent = Intent(context, ConversationsListActivity::class.java) + startActivity(intent) } } } diff --git a/app/src/main/java/com/nextcloud/talk/ui/dialog/ChooseAccountDialogFragment.java b/app/src/main/java/com/nextcloud/talk/ui/dialog/ChooseAccountDialogFragment.java index a6c65d0c1..6de4ddd30 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/dialog/ChooseAccountDialogFragment.java +++ b/app/src/main/java/com/nextcloud/talk/ui/dialog/ChooseAccountDialogFragment.java @@ -35,6 +35,7 @@ import android.view.View; import android.view.ViewGroup; import com.google.android.material.dialog.MaterialAlertDialogBuilder; +import com.nextcloud.talk.activities.MainActivity; import com.nextcloud.talk.adapters.items.AdvancedUserItem; import com.nextcloud.talk.api.NcApi; import com.nextcloud.talk.application.NextcloudTalkApplication; @@ -70,6 +71,8 @@ import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.disposables.Disposable; import io.reactivex.schedulers.Schedulers; +import static com.nextcloud.talk.utils.bundle.BundleKeys.ADD_ACCOUNT; + @AutoInjector(NextcloudTalkApplication.class) public class ChooseAccountDialogFragment extends DialogFragment { public static final String TAG = ChooseAccountDialogFragment.class.getSimpleName(); @@ -182,9 +185,11 @@ public class ChooseAccountDialogFragment extends DialogFragment { binding.addAccount.setOnClickListener(v -> { + // TODO: change this when conductor is removed + Intent intent = new Intent(getContext(), MainActivity.class); + intent.putExtra(ADD_ACCOUNT, true); + startActivity(intent); dismiss(); - // TODO -// ((MainActivity) getActivity()).addAccount(); }); binding.manageSettings.setOnClickListener(v -> { Intent intent = new Intent(getContext(), SettingsActivity.class); diff --git a/app/src/main/java/com/nextcloud/talk/utils/bundle/BundleKeys.kt b/app/src/main/java/com/nextcloud/talk/utils/bundle/BundleKeys.kt index 2dd613648..dc6a893d3 100644 --- a/app/src/main/java/com/nextcloud/talk/utils/bundle/BundleKeys.kt +++ b/app/src/main/java/com/nextcloud/talk/utils/bundle/BundleKeys.kt @@ -87,4 +87,5 @@ object BundleKeys { const val KEY_DISMISS_RECORDING_URL = "KEY_DISMISS_RECORDING_URL" const val KEY_SHARE_RECORDING_TO_CHAT_URL = "KEY_SHARE_RECORDING_TO_CHAT_URL" const val KEY_GEOCODING_RESULT = "KEY_GEOCODING_RESULT" + const val ADD_ACCOUNT = "ADD_ACCOUNT" // temp workaround until conductor is removed }