display label in the placeholder

Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
This commit is contained in:
sowjanyakch 2025-02-07 18:20:12 +01:00
parent 5e872564b7
commit 1ad186b94b
No known key found for this signature in database
GPG Key ID: F7AA2A8B65B50220
2 changed files with 21 additions and 1 deletions

View File

@ -39,7 +39,8 @@ class ChatUtils {
if (type == "file") { if (type == "file") {
resultMessage?.replace("{$key}", individualHashMap["name"].toString()) resultMessage?.replace("{$key}", individualHashMap["name"].toString())
} else { } else {
individualHashMap["link"].toString() individualHashMap["name"]?.let { resultMessage?.replace("{$key}",
individualHashMap["name"]!!) }
} }
} else { } else {
individualHashMap["name"]?.let { resultMessage?.replace("{$key}", it) } individualHashMap["name"]?.let { resultMessage?.replace("{$key}", it) }

View File

@ -8,9 +8,12 @@ package com.nextcloud.talk.utils.message
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
import android.graphics.Color
import android.net.Uri import android.net.Uri
import android.text.SpannableString import android.text.SpannableString
import android.text.SpannableStringBuilder
import android.text.Spanned import android.text.Spanned
import android.text.style.ForegroundColorSpan
import android.util.Log import android.util.Log
import android.view.View import android.view.View
import com.nextcloud.talk.R import com.nextcloud.talk.R
@ -140,6 +143,22 @@ class MessageUtils(val context: Context) {
context.startActivity(browserIntent) context.startActivity(browserIntent)
} }
} }
else -> {
val spannable = SpannableStringBuilder(messageStringInternal)
val placeholder = "{$key}"
val replacementText = individualHashMap["name"]
var start = spannable.indexOf(placeholder)
while (start != -1) {
val end = start + placeholder.length
spannable.replace(start, end, replacementText)
spannable.setSpan(
ForegroundColorSpan(Color.BLUE), start, start + replacementText!!
.length, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE)
start = spannable.indexOf(placeholder, start + replacementText.length)
}
messageStringInternal = spannable
}
} }
} }
} }