From 4f8cf61e5a734526d31abb4fac80c0bdafc277ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrien=20B=C3=A9raud?= <adrien.beraud@savoirfairelinux.com> Date: Mon, 27 Sep 2021 11:33:23 -0400 Subject: [PATCH] home activity: handle case of missing path Change-Id: I6a3bcfd8064826174c6bee2602b09e7951c49b90 --- .../main/java/cx/ring/client/HomeActivity.kt | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/ring-android/app/src/main/java/cx/ring/client/HomeActivity.kt b/ring-android/app/src/main/java/cx/ring/client/HomeActivity.kt index 6a683f938..3fbc4ea0a 100644 --- a/ring-android/app/src/main/java/cx/ring/client/HomeActivity.kt +++ b/ring-android/app/src/main/java/cx/ring/client/HomeActivity.kt @@ -186,7 +186,10 @@ class HomeActivity : AppCompatActivity(), NavigationBarView.OnItemSelectedListen startActivity(intent) } } else if (DRingService.ACTION_CONV_ACCEPT == action || Intent.ACTION_VIEW == action) { - startConversation(ConversationPath.fromIntent(intent)!!) + val path = ConversationPath.fromBundle(extra) + if (path != null) { + startConversation(path) + } } //else { val fragmentManager = supportFragmentManager fContent = fragmentManager.findFragmentById(R.id.main_frame) @@ -258,18 +261,19 @@ class HomeActivity : AppCompatActivity(), NavigationBarView.OnItemSelectedListen mAccountService.observableAccountList .observeOn(AndroidSchedulers.mainThread()) .subscribe({ accounts -> - if (mAccountAdapter == null) { - mAccountAdapter = AccountSpinnerAdapter(this@HomeActivity, ArrayList(accounts), mDisposable).apply { - setNotifyOnChange(false) - mBinding?.spinnerToolbar?.adapter = this - } - } else { - mAccountAdapter!!.clear() - mAccountAdapter!!.addAll(accounts) - mAccountAdapter!!.notifyDataSetChanged() + mAccountAdapter?.apply { + clear() + addAll(accounts) + notifyDataSetChanged() if (accounts.isNotEmpty()) { mBinding!!.spinnerToolbar.setSelection(0) } + } ?: run { + AccountSpinnerAdapter(this@HomeActivity, ArrayList(accounts), mDisposable).apply { + mAccountAdapter = this + setNotifyOnChange(false) + mBinding?.spinnerToolbar?.adapter = this + } } if (fContent is SmartListFragment) { showProfileInfo() -- GitLab