diff --git a/app/src/main/java/com/nextcloud/talk/adapters/messages/IncomingVoiceMessageViewHolder.kt b/app/src/main/java/com/nextcloud/talk/adapters/messages/IncomingVoiceMessageViewHolder.kt index 029380b41..16fa75891 100644 --- a/app/src/main/java/com/nextcloud/talk/adapters/messages/IncomingVoiceMessageViewHolder.kt +++ b/app/src/main/java/com/nextcloud/talk/adapters/messages/IncomingVoiceMessageViewHolder.kt @@ -37,6 +37,8 @@ import android.view.View import android.widget.SeekBar import android.widget.SeekBar.OnSeekBarChangeListener import androidx.appcompat.content.res.AppCompatResources +import androidx.core.content.ContextCompat +import androidx.core.content.res.ResourcesCompat import androidx.core.view.ViewCompat import androidx.work.Data import androidx.work.OneTimeWorkRequest @@ -94,7 +96,7 @@ class IncomingVoiceMessageViewHolder(incomingView: View) : MessageHolders colorizeMessageBubble(message) itemView.isSelected = false - binding.messageTime.setTextColor(context?.resources!!.getColor(R.color.warm_grey_four)) + binding.messageTime.setTextColor(ResourcesCompat.getColor(context?.resources!!, R.color.warm_grey_four, null)) // parent message handling setParentMessageDataOnMessageItem(message) @@ -172,7 +174,7 @@ class IncomingVoiceMessageViewHolder(incomingView: View) : MessageHolders .endConfig() .buildRound( ">", - context!!.resources.getColor(R.color.black) + ResourcesCompat.getColor(context!!.resources, R.color.black, null) ) binding.messageUserAvatar.visibility = View.VISIBLE binding.messageUserAvatar.setImageDrawable(drawable) @@ -197,13 +199,13 @@ class IncomingVoiceMessageViewHolder(incomingView: View) : MessageHolders } val bgBubbleColor = if (message.isDeleted) { - resources.getColor(R.color.bg_message_list_incoming_bubble_deleted) + ResourcesCompat.getColor(resources, R.color.bg_message_list_incoming_bubble_deleted, null) } else { - resources.getColor(R.color.bg_message_list_incoming_bubble) + ResourcesCompat.getColor(resources, R.color.bg_message_list_incoming_bubble, null) } val bubbleDrawable = DisplayUtils.getMessageSelector( bgBubbleColor, - resources.getColor(R.color.transparent), + ResourcesCompat.getColor(resources, R.color.transparent, null), bgBubbleColor, bubbleResource ) ViewCompat.setBackground(bubble, bubbleDrawable) @@ -229,7 +231,7 @@ class IncomingVoiceMessageViewHolder(incomingView: View) : MessageHolders binding.messageQuote.quotedMessage.text = parentChatMessage.text binding.messageQuote.quotedMessageAuthor - .setTextColor(context!!.resources.getColor(R.color.textColorMaxContrast)) + .setTextColor(ContextCompat.getColor(context!!, R.color.textColorMaxContrast)) if (parentChatMessage.actorId?.equals(message.activeUser.userId) == true) { binding.messageQuote.quoteColoredView.setBackgroundResource(R.color.colorPrimary) diff --git a/app/src/main/java/com/nextcloud/talk/adapters/messages/MagicOutcomingTextMessageViewHolder.kt b/app/src/main/java/com/nextcloud/talk/adapters/messages/MagicOutcomingTextMessageViewHolder.kt index 520e20294..9d04a33d7 100644 --- a/app/src/main/java/com/nextcloud/talk/adapters/messages/MagicOutcomingTextMessageViewHolder.kt +++ b/app/src/main/java/com/nextcloud/talk/adapters/messages/MagicOutcomingTextMessageViewHolder.kt @@ -2,8 +2,10 @@ * Nextcloud Talk application * * @author Mario Danic + * @author Marcel Hibbe * @author Andy Scherzinger * Copyright (C) 2021 Andy Scherzinger + * Copyright (C) 2021 Marcel Hibbe * Copyright (C) 2017-2018 Mario Danic * * This program is free software: you can redistribute it and/or modify @@ -29,6 +31,8 @@ import android.text.Spannable import android.text.SpannableString import android.util.TypedValue import android.view.View +import androidx.core.content.ContextCompat +import androidx.core.content.res.ResourcesCompat import androidx.core.view.ViewCompat import autodagger.AutoInjector import coil.load @@ -71,9 +75,9 @@ class MagicOutcomingTextMessageViewHolder(itemView: View) : OutcomingTextMessage for (key in messageParameters.keys) { val individualHashMap: HashMap? = message.messageParameters[key] if (individualHashMap != null) { - if (individualHashMap["type"] == "user" || ( - individualHashMap["type"] == "guest" - ) || individualHashMap["type"] == "call" + if (individualHashMap["type"] == "user" || + individualHashMap["type"] == "guest" || + individualHashMap["type"] == "call" ) { messageString = searchAndReplaceWithMentionSpan( binding.messageText.context, @@ -85,31 +89,30 @@ class MagicOutcomingTextMessageViewHolder(itemView: View) : OutcomingTextMessage R.xml.chip_others ) } else if (individualHashMap["type"] == "file") { - realView.setOnClickListener( - View.OnClickListener { v: View? -> - val browserIntent = Intent(Intent.ACTION_VIEW, Uri.parse(individualHashMap["link"])) - context!!.startActivity(browserIntent) - } - ) + realView.setOnClickListener { v: View? -> + val browserIntent = Intent(Intent.ACTION_VIEW, Uri.parse(individualHashMap["link"])) + context!!.startActivity(browserIntent) + } } } } } else if (TextMatchers.isMessageWithSingleEmoticonOnly(message.text)) { textSize = (textSize * 2.5).toFloat() layoutParams.isWrapBefore = true - binding.messageTime.setTextColor(context!!.resources.getColor(R.color.warm_grey_four)) + binding.messageTime.setTextColor( + ResourcesCompat.getColor(context!!.resources, R.color.warm_grey_four, null)) realView.isSelected = true } val resources = sharedApplication!!.resources val bgBubbleColor = if (message.isDeleted) { - resources.getColor(R.color.bg_message_list_outcoming_bubble_deleted) + ResourcesCompat.getColor(resources, R.color.bg_message_list_outcoming_bubble_deleted, null) } else { - resources.getColor(R.color.bg_message_list_outcoming_bubble) + ResourcesCompat.getColor(resources, R.color.bg_message_list_outcoming_bubble, null) } if (message.isGrouped) { val bubbleDrawable = getMessageSelector( bgBubbleColor, - resources.getColor(R.color.transparent), + ResourcesCompat.getColor(resources, R.color.transparent, null), bgBubbleColor, R.drawable.shape_grouped_outcoming_message ) @@ -117,7 +120,7 @@ class MagicOutcomingTextMessageViewHolder(itemView: View) : OutcomingTextMessage } else { val bubbleDrawable = getMessageSelector( bgBubbleColor, - resources.getColor(R.color.transparent), + ResourcesCompat.getColor(resources, R.color.transparent, null), bgBubbleColor, R.drawable.shape_outcoming_message ) @@ -130,7 +133,7 @@ class MagicOutcomingTextMessageViewHolder(itemView: View) : OutcomingTextMessage // parent message handling if (!message.isDeleted && message.parentMessage != null) { - var parentChatMessage = message.parentMessage + val parentChatMessage = message.parentMessage parentChatMessage.activeUser = message.activeUser parentChatMessage.imageUrl?.let { binding.messageQuote.quotedMessageImage.visibility = View.VISIBLE @@ -171,8 +174,8 @@ class MagicOutcomingTextMessageViewHolder(itemView: View) : OutcomingTextMessage } readStatusDrawableInt?.let { drawableInt -> - context?.resources?.getDrawable(drawableInt, null)?.let { - it.setColorFilter(context?.resources!!.getColor(R.color.white60), PorterDuff.Mode.SRC_ATOP) + ContextCompat.getDrawable(context!!, drawableInt)?.let { + it.setColorFilter(ContextCompat.getColor(context!!, R.color.white60), PorterDuff.Mode.SRC_ATOP) binding.checkMark.setImageDrawable(it) } }