diff options
author | Andy Scherzinger <info@andy-scherzinger.de> | 2022-04-21 12:09:50 +0300 |
---|---|---|
committer | Marcel Hibbe <dev@mhibbe.de> | 2022-04-22 12:28:07 +0300 |
commit | dd59d2dd20eb49b1546fb75870da671acdb2c121 (patch) | |
tree | 6a3d6ac0de1852e033cf538f833bb0975110e02d /app/src/main | |
parent | 0975968ff90ac906769c32bcc234e0890852c617 (diff) |
improve reactions alignment
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
Diffstat (limited to 'app/src/main')
-rw-r--r-- | app/src/main/java/com/nextcloud/talk/adapters/messages/Reaction.kt | 41 |
1 files changed, 18 insertions, 23 deletions
diff --git a/app/src/main/java/com/nextcloud/talk/adapters/messages/Reaction.kt b/app/src/main/java/com/nextcloud/talk/adapters/messages/Reaction.kt index e129ea7b1..7d19269a8 100644 --- a/app/src/main/java/com/nextcloud/talk/adapters/messages/Reaction.kt +++ b/app/src/main/java/com/nextcloud/talk/adapters/messages/Reaction.kt @@ -29,7 +29,6 @@ import android.widget.LinearLayout import android.widget.TextView import androidx.appcompat.content.res.AppCompatResources import androidx.core.content.ContextCompat -import androidx.core.content.res.ResourcesCompat import androidx.core.view.updatePadding import com.nextcloud.talk.R import com.nextcloud.talk.databinding.ReactionsInsideMessageBinding @@ -38,6 +37,7 @@ import com.nextcloud.talk.utils.DisplayUtils import com.vanniktech.emoji.EmojiTextView class Reaction { + fun showReactions( message: ChatMessage, binding: ReactionsInsideMessageBinding, @@ -49,6 +49,19 @@ class Reaction { var remainingEmojisToDisplay = MAX_EMOJIS_TO_DISPLAY val showInfoAboutMoreEmojis = message.reactions.size > MAX_EMOJIS_TO_DISPLAY + + val amountParams = LinearLayout.LayoutParams( + ViewGroup.LayoutParams.WRAP_CONTENT, + ViewGroup.LayoutParams.WRAP_CONTENT + ) + amountParams.marginStart = DisplayUtils.convertDpToPixel(AMOUNT_START_MARGIN, context).toInt() + + val wrapperParams = LinearLayout.LayoutParams( + ViewGroup.LayoutParams.WRAP_CONTENT, + ViewGroup.LayoutParams.WRAP_CONTENT + ) + wrapperParams.marginEnd = DisplayUtils.convertDpToPixel(EMOJI_END_MARGIN, context).toInt() + for ((emoji, amount) in message.reactions) { val emojiWithAmountWrapper = LinearLayout(context) emojiWithAmountWrapper.orientation = LinearLayout.HORIZONTAL @@ -71,34 +84,16 @@ class Reaction { if (isOutgoingMessage) { reactionAmount.setTextColor(ContextCompat.getColor(context, R.color.white)) } else { - // reactionAmount.setTextColor(ContextCompat.getColor(context, R.color.nc_message_incoming_reaction_text_color)) - /* reactionAmount.setTextColor( - ResourcesCompat.getColor( - context.resources, - R.color.high_emphasis_text, - null - ) + ContextCompat.getColor(binding.root.context, R.color.high_emphasis_text) ) - */ - reactionAmount.setTextColor(ContextCompat.getColor(binding.root.context, R.color - .high_emphasis_text)) } reactionAmount.text = amount.toString() + reactionAmount.layoutParams = amountParams emojiWithAmountWrapper.addView(reactionAmount) } - val params = LinearLayout.LayoutParams( - ViewGroup.LayoutParams.WRAP_CONTENT, - ViewGroup.LayoutParams.WRAP_CONTENT - ) - params.setMargins( - DisplayUtils.convertDpToPixel(EMOJI_START_MARGIN, context).toInt(), - 0, - DisplayUtils.convertDpToPixel(EMOJI_END_MARGIN, context).toInt(), - 0 - ) - emojiWithAmountWrapper.layoutParams = params + emojiWithAmountWrapper.layoutParams = wrapperParams val paddingSide = DisplayUtils.convertDpToPixel(EMOJI_AND_AMOUNT_PADDING_SIDE, context).toInt() emojiWithAmountWrapper.updatePadding(left = paddingSide, right = paddingSide) @@ -119,7 +114,7 @@ class Reaction { companion object { const val MAX_EMOJIS_TO_DISPLAY = 4 - const val EMOJI_START_MARGIN: Float = 2F + const val AMOUNT_START_MARGIN: Float = 2F const val EMOJI_END_MARGIN: Float = 6F const val EMOJI_AND_AMOUNT_PADDING_SIDE: Float = 6F const val EMOJI_MORE = "…" |