diff --git a/res/layout/conversation_item_received.xml b/res/layout/conversation_item_received.xml index 25c207992b..aa7f7a84f0 100644 --- a/res/layout/conversation_item_received.xml +++ b/res/layout/conversation_item_received.xml @@ -243,27 +243,21 @@ app:mhfl_maxHeight="@dimen/reactions_bubble_container_max_height" tools:visibility="visible"> - + android:padding="6dp" + android:background="?attr/reactions_recv_background" /> - + android:padding="6dp" + android:background="?attr/reactions_recv_background" /> diff --git a/res/layout/conversation_item_sent.xml b/res/layout/conversation_item_sent.xml index 0467136a6e..904ef51397 100644 --- a/res/layout/conversation_item_sent.xml +++ b/res/layout/conversation_item_sent.xml @@ -200,27 +200,21 @@ app:mhfl_maxHeight="@dimen/reactions_bubble_container_max_height" tools:visibility="visible"> - + android:padding="6dp" + android:background="?attr/reactions_recv_background" /> - + android:padding="6dp" + android:background="?attr/reactions_recv_background" /> diff --git a/src/org/thoughtcrime/securesms/components/emoji/EmojiImageView.java b/src/org/thoughtcrime/securesms/components/emoji/EmojiImageView.java new file mode 100644 index 0000000000..c953b3d737 --- /dev/null +++ b/src/org/thoughtcrime/securesms/components/emoji/EmojiImageView.java @@ -0,0 +1,20 @@ +package org.thoughtcrime.securesms.components.emoji; + +import android.content.Context; +import android.util.AttributeSet; + +import androidx.appcompat.widget.AppCompatImageView; + +public class EmojiImageView extends AppCompatImageView { + public EmojiImageView(Context context) { + super(context); + } + + public EmojiImageView(Context context, AttributeSet attrs) { + super(context, attrs); + } + + public void setImageEmoji(CharSequence emoji) { + setImageDrawable(EmojiProvider.getInstance(getContext()).getEmojiDrawable(emoji)); + } +} diff --git a/src/org/thoughtcrime/securesms/conversation/ConversationItemReactionBubbles.java b/src/org/thoughtcrime/securesms/conversation/ConversationItemReactionBubbles.java index f5d7041144..7f6d002b5b 100644 --- a/src/org/thoughtcrime/securesms/conversation/ConversationItemReactionBubbles.java +++ b/src/org/thoughtcrime/securesms/conversation/ConversationItemReactionBubbles.java @@ -9,23 +9,22 @@ import androidx.annotation.Nullable; import androidx.core.util.Pair; import org.thoughtcrime.securesms.R; -import org.thoughtcrime.securesms.components.emoji.EmojiTextView; +import org.thoughtcrime.securesms.components.emoji.EmojiImageView; import org.thoughtcrime.securesms.database.model.ReactionRecord; import org.thoughtcrime.securesms.recipients.Recipient; import org.thoughtcrime.securesms.util.ThemeUtil; import java.util.Collection; import java.util.HashMap; -import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Objects; final class ConversationItemReactionBubbles { - private final ViewGroup reactionsContainer; - private final EmojiTextView primaryEmojiReaction; - private final EmojiTextView secondaryEmojiReaction; + private final ViewGroup reactionsContainer; + private final EmojiImageView primaryEmojiReaction; + private final EmojiImageView secondaryEmojiReaction; ConversationItemReactionBubbles(@NonNull ViewGroup reactionsContainer) { this.reactionsContainer = reactionsContainer; @@ -81,7 +80,7 @@ final class ConversationItemReactionBubbles { primaryEmojiReaction.setVisibility(View.VISIBLE); secondaryEmojiReaction.setVisibility(View.GONE); - primaryEmojiReaction.setText(reactionInfo.emoji); + primaryEmojiReaction.setImageEmoji(reactionInfo.emoji); primaryEmojiReaction.setBackground(getBackgroundDrawableForReactionBubble(reactionInfo)); } @@ -91,9 +90,9 @@ final class ConversationItemReactionBubbles { secondaryEmojiReaction.setVisibility(View.VISIBLE); Pair primaryAndSecondaryReactions = getPrimaryAndSecondaryReactions(reactionInfos); - primaryEmojiReaction.setText(primaryAndSecondaryReactions.first.emoji); + primaryEmojiReaction.setImageEmoji(primaryAndSecondaryReactions.first.emoji); primaryEmojiReaction.setBackground(getBackgroundDrawableForReactionBubble(primaryAndSecondaryReactions.first)); - secondaryEmojiReaction.setText(primaryAndSecondaryReactions.second.emoji); + secondaryEmojiReaction.setImageEmoji(primaryAndSecondaryReactions.second.emoji); secondaryEmojiReaction.setBackground(getBackgroundDrawableForReactionBubble(primaryAndSecondaryReactions.second)); }