From 93556da33ae979d4be221bd04f675d6f0b1bc483 Mon Sep 17 00:00:00 2001 From: Dariusz Olszewski Date: Sun, 27 Feb 2022 16:02:51 +0100 Subject: [PATCH] Re-use existing ChatController from notification NotificationWorker provides the user information under KEY_USER_ENTITY parameter of the notification intent, but does not set the KEY_INTERNAL_USER_ID parameter. With this change existing ChatController instance that has been opened manually from the conversation list is properly reused when a notification is opened. Otherwise two instances of the ChatController were running in parallel for the same room, causing unintended side effects. Signed-off-by: Dariusz Olszewski --- .../main/java/com/nextcloud/talk/activities/MainActivity.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 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 900d3a36e..231082239 100644 --- a/app/src/main/java/com/nextcloud/talk/activities/MainActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/activities/MainActivity.kt @@ -48,9 +48,9 @@ import com.nextcloud.talk.controllers.SettingsController import com.nextcloud.talk.controllers.WebViewLoginController import com.nextcloud.talk.controllers.base.providers.ActionBarProvider import com.nextcloud.talk.databinding.ActivityMainBinding +import com.nextcloud.talk.models.database.UserEntity import com.nextcloud.talk.models.json.conversations.RoomOverall import com.nextcloud.talk.utils.ApiUtils -import com.nextcloud.talk.utils.ConductorRemapping import com.nextcloud.talk.utils.ConductorRemapping.remapChatController import com.nextcloud.talk.utils.SecurityUtils import com.nextcloud.talk.utils.bundle.BundleKeys @@ -346,8 +346,8 @@ class MainActivity : BaseActivity(), ActionBarProvider { intent.extras?.let { callNotificationIntent.putExtras(it) } startActivity(callNotificationIntent) } else { - ConductorRemapping.remapChatController( - router!!, intent.getLongExtra(BundleKeys.KEY_INTERNAL_USER_ID, -1), + remapChatController( + router!!, intent.getParcelableExtra(KEY_USER_ENTITY)!!.id, intent.getStringExtra(KEY_ROOM_TOKEN)!!, intent.extras!!, false ) }