From d73dd44c4ab3bb8dd6daa7e592fc62007f73ab5b Mon Sep 17 00:00:00 2001 From: Mario Danic Date: Thu, 19 Dec 2019 20:49:19 +0100 Subject: [PATCH] Clean up image code in conversation info --- .../talk/controllers/ChatController.kt | 13 ++----- .../controllers/ConversationInfoController.kt | 37 ++++--------------- .../talk/controllers/SettingsController.kt | 2 +- .../res/layout/rv_item_notification_sound.xml | 1 - 4 files changed, 13 insertions(+), 40 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt b/app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt index 46c591864..1f6306e29 100644 --- a/app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt +++ b/app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt @@ -706,6 +706,10 @@ class ChatController(args: Bundle) : BaseController(), MessagesListAdapter override fun onDetach(view: View) { eventBus.unregister(this) + if (actionBar != null) { + actionBar?.setIcon(null) + } + if (activity != null) { activity?.findViewById(R.id.toolbar) ?.setOnClickListener(null) @@ -740,15 +744,6 @@ class ChatController(args: Bundle) : BaseController(), MessagesListAdapter public override fun onDestroy() { super.onDestroy() - if (activity != null) { - activity?.findViewById(R.id.toolbar) - ?.setOnClickListener(null) - } - - if (actionBar != null) { - actionBar?.setIcon(null) - } - adapter = null inConversation = false } diff --git a/app/src/main/java/com/nextcloud/talk/controllers/ConversationInfoController.kt b/app/src/main/java/com/nextcloud/talk/controllers/ConversationInfoController.kt index 165bd10c6..5ee66cdfa 100644 --- a/app/src/main/java/com/nextcloud/talk/controllers/ConversationInfoController.kt +++ b/app/src/main/java/com/nextcloud/talk/controllers/ConversationInfoController.kt @@ -69,6 +69,7 @@ import com.nextcloud.talk.models.json.participants.Participant import com.nextcloud.talk.models.json.participants.ParticipantsOverall import com.nextcloud.talk.newarch.local.models.UserNgEntity import com.nextcloud.talk.newarch.local.models.getCredentials +import com.nextcloud.talk.newarch.utils.Images import com.nextcloud.talk.utils.ApiUtils import com.nextcloud.talk.utils.DateUtils import com.nextcloud.talk.utils.DisplayUtils @@ -658,7 +659,7 @@ class ConversationInfoController(args: Bundle) : BaseController(), deleteConversationAction.visibility = View.VISIBLE } - if (Conversation.ConversationType.SYSTEM_CONVERSATION == conversation!!.type) { + if (SYSTEM_CONVERSATION == conversation!!.type) { muteCalls.visibility = View.GONE } @@ -813,40 +814,18 @@ class ConversationInfoController(args: Bundle) : BaseController(), } private fun loadConversationAvatar() { - when (conversation!!.type) { - ONE_TO_ONE_CONVERSATION -> if (!TextUtils.isEmpty - (conversation!!.name) - ) { + conversation?.let { + val conversationDrawable = Images().getImageForConversation(context, it) + conversationDrawable?.let { + conversationAvatarImageView.setImageDrawable(conversationDrawable) + } ?: run { conversationAvatarImageView.load(ApiUtils.getUrlForAvatarWithName( conversationUser!!.baseUrl, - conversation!!.name, R.dimen.avatar_size_big + it.name, R.dimen.avatar_size_big )) { transformations(CircleCropTransformation()) } } - GROUP_CONVERSATION -> { - conversationAvatarImageView.load(R.drawable.ic_people_group_white_24px) { - transformations(CircleCropTransformation()) - } - } - PUBLIC_CONVERSATION -> { - conversationAvatarImageView.load(R.drawable.ic_link_white_24px) { - transformations(CircleCropTransformation()) - } - } - - SYSTEM_CONVERSATION -> { - val layers = arrayOfNulls(2) - layers[0] = context.getDrawable(R.drawable.ic_launcher_background) - layers[1] = context.getDrawable(R.drawable.ic_launcher_foreground) - val layerDrawable = LayerDrawable(layers) - conversationAvatarImageView.load(layerDrawable) { - transformations(CircleCropTransformation()) - } - } - - else -> { - } } } diff --git a/app/src/main/java/com/nextcloud/talk/controllers/SettingsController.kt b/app/src/main/java/com/nextcloud/talk/controllers/SettingsController.kt index 62f649730..809354638 100644 --- a/app/src/main/java/com/nextcloud/talk/controllers/SettingsController.kt +++ b/app/src/main/java/com/nextcloud/talk/controllers/SettingsController.kt @@ -589,7 +589,7 @@ class SettingsController : BaseController() { .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .`as`>( - AutoDispose.autoDisposable(scopeProvider) + AutoDispose.autoDisposable(scopeProvider) ) .subscribe({ userProfileOverall -> diff --git a/app/src/main/res/layout/rv_item_notification_sound.xml b/app/src/main/res/layout/rv_item_notification_sound.xml index 7d6590d45..d124bd438 100644 --- a/app/src/main/res/layout/rv_item_notification_sound.xml +++ b/app/src/main/res/layout/rv_item_notification_sound.xml @@ -19,7 +19,6 @@ -->