mirror of
https://github.com/nextcloud/talk-android
synced 2025-07-10 14:24:05 +01:00
remove unnecessary logic from LocationMessageViewHolders
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
This commit is contained in:
parent
4190cf1dfe
commit
3cb0fe75b1
@ -6,8 +6,6 @@ import android.content.Intent
|
|||||||
import android.graphics.drawable.Drawable
|
import android.graphics.drawable.Drawable
|
||||||
import android.graphics.drawable.LayerDrawable
|
import android.graphics.drawable.LayerDrawable
|
||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
import android.text.Spannable
|
|
||||||
import android.text.SpannableString
|
|
||||||
import android.text.TextUtils
|
import android.text.TextUtils
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
import android.util.TypedValue
|
import android.util.TypedValue
|
||||||
@ -34,7 +32,6 @@ import com.nextcloud.talk.application.NextcloudTalkApplication.Companion.sharedA
|
|||||||
import com.nextcloud.talk.models.json.chat.ChatMessage
|
import com.nextcloud.talk.models.json.chat.ChatMessage
|
||||||
import com.nextcloud.talk.utils.ApiUtils
|
import com.nextcloud.talk.utils.ApiUtils
|
||||||
import com.nextcloud.talk.utils.DisplayUtils
|
import com.nextcloud.talk.utils.DisplayUtils
|
||||||
import com.nextcloud.talk.utils.TextMatchers
|
|
||||||
import com.nextcloud.talk.utils.preferences.AppPreferences
|
import com.nextcloud.talk.utils.preferences.AppPreferences
|
||||||
import com.stfalcon.chatkit.messages.MessageHolders
|
import com.stfalcon.chatkit.messages.MessageHolders
|
||||||
import java.net.URLEncoder
|
import java.net.URLEncoder
|
||||||
@ -174,59 +171,14 @@ class IncomingLocationMessageViewHolder(incomingView: View) : MessageHolders
|
|||||||
itemView.isSelected = false
|
itemView.isSelected = false
|
||||||
messageTimeView!!.setTextColor(context?.resources!!.getColor(R.color.warm_grey_four))
|
messageTimeView!!.setTextColor(context?.resources!!.getColor(R.color.warm_grey_four))
|
||||||
|
|
||||||
var messageString: Spannable = SpannableString(message.text)
|
val textSize = context?.resources!!.getDimension(R.dimen.chat_text_size)
|
||||||
|
|
||||||
var textSize = context?.resources!!.getDimension(R.dimen.chat_text_size)
|
|
||||||
|
|
||||||
if (messageParameters != null && messageParameters.size > 0) {
|
|
||||||
for (key in messageParameters.keys) {
|
|
||||||
val individualHashMap = message.messageParameters[key]
|
|
||||||
if (individualHashMap != null) {
|
|
||||||
if (individualHashMap["type"] == "user"
|
|
||||||
|| individualHashMap["type"] == "guest"
|
|
||||||
|| individualHashMap["type"] == "call") {
|
|
||||||
if (individualHashMap["id"] == message.activeUser!!.userId) {
|
|
||||||
messageString = DisplayUtils.searchAndReplaceWithMentionSpan(
|
|
||||||
messageText!!.context,
|
|
||||||
messageString,
|
|
||||||
individualHashMap["id"]!!,
|
|
||||||
individualHashMap["name"]!!,
|
|
||||||
individualHashMap["type"]!!,
|
|
||||||
message.activeUser!!,
|
|
||||||
R.xml.chip_you
|
|
||||||
)
|
|
||||||
} else {
|
|
||||||
messageString = DisplayUtils.searchAndReplaceWithMentionSpan(
|
|
||||||
messageText!!.context,
|
|
||||||
messageString,
|
|
||||||
individualHashMap["id"]!!,
|
|
||||||
individualHashMap["name"]!!,
|
|
||||||
individualHashMap["type"]!!,
|
|
||||||
message.activeUser!!,
|
|
||||||
R.xml.chip_others
|
|
||||||
)
|
|
||||||
}
|
|
||||||
} else if (individualHashMap["type"] == "file") {
|
|
||||||
itemView.setOnClickListener { v ->
|
|
||||||
val browserIntent = Intent(Intent.ACTION_VIEW, Uri.parse(individualHashMap["link"]))
|
|
||||||
context!!.startActivity(browserIntent)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else if (TextMatchers.isMessageWithSingleEmoticonOnly(message.text)) {
|
|
||||||
textSize = (textSize * 2.5).toFloat()
|
|
||||||
itemView.isSelected = true
|
|
||||||
messageAuthor!!.visibility = View.GONE
|
|
||||||
}
|
|
||||||
|
|
||||||
messageText!!.setTextSize(TypedValue.COMPLEX_UNIT_PX, textSize)
|
messageText!!.setTextSize(TypedValue.COMPLEX_UNIT_PX, textSize)
|
||||||
messageText!!.text = messageString
|
messageText!!.text = message.text
|
||||||
|
|
||||||
// parent message handling
|
// parent message handling
|
||||||
|
|
||||||
if (!message.isDeleted && message.parentMessage != null) {
|
if (!message.isDeleted && message.parentMessage != null) {
|
||||||
var parentChatMessage = message.parentMessage
|
val parentChatMessage = message.parentMessage
|
||||||
parentChatMessage.activeUser = message.activeUser
|
parentChatMessage.activeUser = message.activeUser
|
||||||
parentChatMessage.imageUrl?.let {
|
parentChatMessage.imageUrl?.let {
|
||||||
quotedMessagePreview?.visibility = View.VISIBLE
|
quotedMessagePreview?.visibility = View.VISIBLE
|
||||||
|
@ -5,8 +5,6 @@ import android.content.Context
|
|||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.graphics.PorterDuff
|
import android.graphics.PorterDuff
|
||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
import android.text.Spannable
|
|
||||||
import android.text.SpannableString
|
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
import android.util.TypedValue
|
import android.util.TypedValue
|
||||||
import android.view.MotionEvent
|
import android.view.MotionEvent
|
||||||
@ -32,10 +30,8 @@ import com.nextcloud.talk.models.json.chat.ChatMessage
|
|||||||
import com.nextcloud.talk.models.json.chat.ReadStatus
|
import com.nextcloud.talk.models.json.chat.ReadStatus
|
||||||
import com.nextcloud.talk.utils.ApiUtils
|
import com.nextcloud.talk.utils.ApiUtils
|
||||||
import com.nextcloud.talk.utils.DisplayUtils
|
import com.nextcloud.talk.utils.DisplayUtils
|
||||||
import com.nextcloud.talk.utils.TextMatchers
|
|
||||||
import com.stfalcon.chatkit.messages.MessageHolders
|
import com.stfalcon.chatkit.messages.MessageHolders
|
||||||
import java.net.URLEncoder
|
import java.net.URLEncoder
|
||||||
import java.util.HashMap
|
|
||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
|
|
||||||
@AutoInjector(NextcloudTalkApplication::class)
|
@AutoInjector(NextcloudTalkApplication::class)
|
||||||
@ -95,45 +91,14 @@ class OutcomingLocationMessageViewHolder(incomingView: View) : MessageHolders
|
|||||||
override fun onBind(message: ChatMessage) {
|
override fun onBind(message: ChatMessage) {
|
||||||
super.onBind(message)
|
super.onBind(message)
|
||||||
sharedApplication!!.componentApplication.inject(this)
|
sharedApplication!!.componentApplication.inject(this)
|
||||||
val messageParameters: HashMap<String, HashMap<String, String>>? = message.messageParameters
|
|
||||||
var messageString: Spannable = SpannableString(message.text)
|
|
||||||
realView.isSelected = false
|
realView.isSelected = false
|
||||||
messageTimeView!!.setTextColor(context!!.resources.getColor(R.color.white60))
|
messageTimeView!!.setTextColor(context!!.resources.getColor(R.color.white60))
|
||||||
val layoutParams = messageTimeView!!.layoutParams as FlexboxLayout.LayoutParams
|
val layoutParams = messageTimeView!!.layoutParams as FlexboxLayout.LayoutParams
|
||||||
layoutParams.isWrapBefore = false
|
layoutParams.isWrapBefore = false
|
||||||
var textSize = context!!.resources.getDimension(R.dimen.chat_text_size)
|
|
||||||
if (messageParameters != null && messageParameters.size > 0) {
|
val textSize = context!!.resources.getDimension(R.dimen.chat_text_size)
|
||||||
for (key in messageParameters.keys) {
|
|
||||||
val individualHashMap: HashMap<String, String>? = message.messageParameters[key]
|
|
||||||
if (individualHashMap != null) {
|
|
||||||
if (individualHashMap["type"] == "user" || (
|
|
||||||
individualHashMap["type"] == "guest") || individualHashMap["type"] == "call"
|
|
||||||
) {
|
|
||||||
messageString = DisplayUtils.searchAndReplaceWithMentionSpan(
|
|
||||||
messageText!!.context,
|
|
||||||
messageString,
|
|
||||||
individualHashMap["id"]!!,
|
|
||||||
individualHashMap["name"]!!,
|
|
||||||
individualHashMap["type"]!!,
|
|
||||||
message.activeUser,
|
|
||||||
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)
|
|
||||||
}
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else if (TextMatchers.isMessageWithSingleEmoticonOnly(message.text)) {
|
|
||||||
textSize = (textSize * 2.5).toFloat()
|
|
||||||
layoutParams.isWrapBefore = true
|
|
||||||
messageTimeView!!.setTextColor(context!!.resources.getColor(R.color.warm_grey_four))
|
|
||||||
realView.isSelected = true
|
|
||||||
}
|
|
||||||
val resources = sharedApplication!!.resources
|
val resources = sharedApplication!!.resources
|
||||||
val bgBubbleColor = if (message.isDeleted) {
|
val bgBubbleColor = if (message.isDeleted) {
|
||||||
resources.getColor(R.color.bg_message_list_outcoming_bubble_deleted)
|
resources.getColor(R.color.bg_message_list_outcoming_bubble_deleted)
|
||||||
@ -159,12 +124,12 @@ class OutcomingLocationMessageViewHolder(incomingView: View) : MessageHolders
|
|||||||
}
|
}
|
||||||
messageText!!.setTextSize(TypedValue.COMPLEX_UNIT_PX, textSize)
|
messageText!!.setTextSize(TypedValue.COMPLEX_UNIT_PX, textSize)
|
||||||
messageTimeView!!.layoutParams = layoutParams
|
messageTimeView!!.layoutParams = layoutParams
|
||||||
messageText!!.text = messageString
|
messageText!!.text = message.text
|
||||||
|
|
||||||
// parent message handling
|
// parent message handling
|
||||||
|
|
||||||
if (!message.isDeleted && message.parentMessage != null) {
|
if (!message.isDeleted && message.parentMessage != null) {
|
||||||
var parentChatMessage = message.parentMessage
|
val parentChatMessage = message.parentMessage
|
||||||
parentChatMessage.activeUser = message.activeUser
|
parentChatMessage.activeUser = message.activeUser
|
||||||
parentChatMessage.imageUrl?.let {
|
parentChatMessage.imageUrl?.let {
|
||||||
quotedMessagePreview?.visibility = View.VISIBLE
|
quotedMessagePreview?.visibility = View.VISIBLE
|
||||||
|
Loading…
Reference in New Issue
Block a user