mirror of
https://github.com/nextcloud/talk-android
synced 2025-06-19 03:29:28 +01:00
detekt + merge conflicts
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
This commit is contained in:
parent
b92020d0d0
commit
689f5ede9e
@ -94,21 +94,31 @@ class IncomingTextMessageViewHolder(itemView: View, payload: Any) :
|
||||
colorizeMessageBubble(message)
|
||||
itemView.isSelected = false
|
||||
val user = currentUserProvider.currentUser.blockingGet()
|
||||
lateinit var userGroups: List<String>
|
||||
lateinit var userCircles: List<String>
|
||||
coroutineScope.launch {
|
||||
userGroups = userGroupsCirclesRepository.getUserGroups()
|
||||
.map { list -> list.mapNotNull { it.groups } }.firstOrNull() ?: emptyList()
|
||||
|
||||
userCircles = userGroupsCirclesRepository.getUserCircles()
|
||||
.map { list -> list.mapNotNull { it.displayName } }.firstOrNull() ?: emptyList()
|
||||
|
||||
val hasCheckboxes = processCheckboxes(
|
||||
message,
|
||||
user
|
||||
)
|
||||
processMessage(message, hasCheckboxes)
|
||||
processMessage(message, hasCheckboxes, userGroups, userCircles)
|
||||
}
|
||||
}
|
||||
|
||||
private fun processMessage(message: ChatMessage, hasCheckboxes: Boolean) {
|
||||
@Suppress("Detekt.LongMethod")
|
||||
private fun processMessage(
|
||||
message: ChatMessage,
|
||||
hasCheckboxes: Boolean,
|
||||
userGroups: List<String>,
|
||||
userCircles: List<String>
|
||||
) {
|
||||
var textSize = context.resources!!.getDimension(R.dimen.chat_text_size)
|
||||
coroutineScope.launch {
|
||||
val userGroups = userGroupsCirclesRepository.getUserGroups()
|
||||
.map { list -> list.mapNotNull { it.groups } }.firstOrNull() ?: emptyList()
|
||||
|
||||
val userCircles = userGroupsCirclesRepository.getUserCircles()
|
||||
.map { list -> list.mapNotNull { it.displayName } }.firstOrNull() ?: emptyList()
|
||||
|
||||
if (!hasCheckboxes) {
|
||||
binding.messageText.visibility = View.VISIBLE
|
||||
@ -195,7 +205,6 @@ class IncomingTextMessageViewHolder(itemView: View, payload: Any) :
|
||||
viewThemeUtils
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
private fun processCheckboxes(chatMessage: ChatMessage, user: User): Boolean {
|
||||
val chatActivity = commonMessageInterface as ChatActivity
|
||||
|
@ -93,20 +93,34 @@ class OutcomingTextMessageViewHolder(itemView: View) :
|
||||
|
||||
private val coroutineScope = CoroutineScope(Dispatchers.Main)
|
||||
|
||||
@Suppress("Detekt.LongMethod")
|
||||
override fun onBind(message: ChatMessage) {
|
||||
super.onBind(message)
|
||||
sharedApplication!!.componentApplication.inject(this)
|
||||
val user = currentUserProvider.currentUser.blockingGet()
|
||||
lateinit var userGroups: List<String>
|
||||
lateinit var userCircles: List<String>
|
||||
coroutineScope.launch {
|
||||
userGroups = userGroupsCirclesRepository.getUserGroups()
|
||||
.map { list -> list.mapNotNull { it.groups } }.firstOrNull() ?: emptyList()
|
||||
|
||||
userCircles = userGroupsCirclesRepository.getUserCircles()
|
||||
.map { list -> list.mapNotNull { it.displayName } }.firstOrNull() ?: emptyList()
|
||||
|
||||
val hasCheckboxes = processCheckboxes(
|
||||
message,
|
||||
user
|
||||
)
|
||||
processMessage(message, hasCheckboxes)
|
||||
processMessage(message, hasCheckboxes, userCircles, userGroups)
|
||||
}
|
||||
}
|
||||
|
||||
@Suppress("Detekt.LongMethod")
|
||||
private fun processMessage(message: ChatMessage, hasCheckboxes: Boolean) {
|
||||
private fun processMessage(
|
||||
message: ChatMessage,
|
||||
hasCheckboxes: Boolean,
|
||||
userGroups: List<String>,
|
||||
userCircles: List<String>
|
||||
) {
|
||||
var isBubbled = true
|
||||
val layoutParams = binding.messageTime.layoutParams as FlexboxLayout.LayoutParams
|
||||
var textSize = context.resources.getDimension(R.dimen.chat_text_size)
|
||||
@ -115,12 +129,6 @@ class OutcomingTextMessageViewHolder(itemView: View) :
|
||||
layoutParams.isWrapBefore = false
|
||||
viewThemeUtils.platform.colorTextView(binding.messageTime, ColorRole.ON_SURFACE_VARIANT)
|
||||
viewThemeUtils.platform.colorTextView(binding.messageTime, ColorRole.ON_SURFACE_VARIANT)
|
||||
coroutineScope.launch {
|
||||
val userGroups = userGroupsCirclesRepository.getUserGroups()
|
||||
.map { list -> list.mapNotNull { it.groups } }.firstOrNull() ?: emptyList()
|
||||
|
||||
val userCircles = userGroupsCirclesRepository.getUserCircles()
|
||||
.map { list -> list.mapNotNull { it.displayName } }.firstOrNull() ?: emptyList()
|
||||
|
||||
binding.messageText.visibility = View.VISIBLE
|
||||
binding.checkboxContainer.visibility = View.GONE
|
||||
@ -129,7 +137,7 @@ class OutcomingTextMessageViewHolder(itemView: View) :
|
||||
binding.messageText.context,
|
||||
message,
|
||||
false,
|
||||
viewThemeUtils,
|
||||
viewThemeUtils
|
||||
|
||||
)
|
||||
|
||||
@ -165,8 +173,6 @@ class OutcomingTextMessageViewHolder(itemView: View) :
|
||||
userCircles
|
||||
)
|
||||
binding.messageText.text = processedMessageText
|
||||
}
|
||||
|
||||
|
||||
if (
|
||||
(message.messageParameters == null || message.messageParameters!!.size <= 0) &&
|
||||
@ -177,7 +183,6 @@ class OutcomingTextMessageViewHolder(itemView: View) :
|
||||
realView.isSelected = true
|
||||
isBubbled = false
|
||||
}
|
||||
|
||||
binding.messageTime.layoutParams = layoutParams
|
||||
viewThemeUtils.platform.colorTextView(binding.messageText, ColorRole.ON_SURFACE_VARIANT)
|
||||
binding.messageText.text = processedMessageText
|
||||
@ -207,7 +212,10 @@ class OutcomingTextMessageViewHolder(itemView: View) :
|
||||
binding.sendingProgress.visibility = View.GONE
|
||||
|
||||
if (message.sendingFailed) {
|
||||
updateStatus(R.drawable.baseline_error_outline_24, context.resources?.getString(R.string.nc_message_failed))
|
||||
updateStatus(
|
||||
R.drawable.baseline_error_outline_24,
|
||||
context.resources?.getString(R.string.nc_message_failed)
|
||||
)
|
||||
} else if (message.isTemporary) {
|
||||
updateStatus(R.drawable.baseline_schedule_24, context.resources?.getString(R.string.nc_message_sending))
|
||||
} else if (message.readStatus == ReadStatus.READ) {
|
||||
@ -241,7 +249,6 @@ class OutcomingTextMessageViewHolder(itemView: View) :
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
private fun processCheckboxes(chatMessage: ChatMessage, user: User): Boolean {
|
||||
val chatActivity = commonMessageInterface as ChatActivity
|
||||
val message = chatMessage.message!!.toSpanned()
|
||||
|
@ -621,7 +621,7 @@ class ComposeChatAdapter(
|
||||
)
|
||||
|
||||
processedMessageText = viewModel.messageUtils.processMessageParameters(
|
||||
ctx, viewModel.viewThemeUtils, processedMessageText!!, message, null
|
||||
ctx, viewModel.viewThemeUtils, processedMessageText!!, message, null, null, null
|
||||
)
|
||||
|
||||
EmojiTextView(ctx).apply {
|
||||
|
@ -77,6 +77,7 @@ class MessageUtils @Inject constructor(val context: Context) {
|
||||
return viewThemeUtils.talk.themeMarkdown(context, message, incoming)
|
||||
}
|
||||
|
||||
@Suppress("LongParameterList")
|
||||
fun processMessageParameters(
|
||||
themingContext: Context,
|
||||
viewThemeUtils: ViewThemeUtils,
|
||||
|
Loading…
Reference in New Issue
Block a user