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") {
resultMessage?.replace("{$key}", individualHashMap["name"].toString())
} else {
individualHashMap["link"].toString()
individualHashMap["name"]?.let { resultMessage?.replace("{$key}",
individualHashMap["name"]!!) }
}
} else {
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.Intent
import android.graphics.Color
import android.net.Uri
import android.text.SpannableString
import android.text.SpannableStringBuilder
import android.text.Spanned
import android.text.style.ForegroundColorSpan
import android.util.Log
import android.view.View
import com.nextcloud.talk.R
@ -140,6 +143,22 @@ class MessageUtils(val context: Context) {
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
}
}
}
}