Эх сурвалжийг харах

Fix to add account (temp solution until conductor is removed)

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
Marcel Hibbe 2 жил өмнө
parent
commit
1246223859

+ 4 - 1
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) {

+ 2 - 1
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)
                     }
                 }
             }

+ 7 - 2
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);

+ 1 - 0
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
 }