diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/emoji/EmojiTextView.java b/app/src/main/java/org/thoughtcrime/securesms/components/emoji/EmojiTextView.java index 68951b2332..9473c8b0ea 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/emoji/EmojiTextView.java +++ b/app/src/main/java/org/thoughtcrime/securesms/components/emoji/EmojiTextView.java @@ -34,6 +34,7 @@ import org.thoughtcrime.securesms.components.emoji.parsing.EmojiParser; import org.thoughtcrime.securesms.components.mention.MentionAnnotation; import org.thoughtcrime.securesms.components.mention.MentionRendererDelegate; import org.thoughtcrime.securesms.components.spoiler.SpoilerRendererDelegate; +import org.thoughtcrime.securesms.conversation.MessageStyler; import org.thoughtcrime.securesms.emoji.JumboEmoji; import org.thoughtcrime.securesms.keyvalue.SignalStore; import org.thoughtcrime.securesms.util.Util; @@ -151,7 +152,12 @@ public class EmojiTextView extends AppCompatTextView { public void setText(@Nullable CharSequence text, BufferType type) { EmojiParser.CandidateList candidates = isInEditMode() ? null : EmojiProvider.getCandidates(text); - if (scaleEmojis && candidates != null && candidates.allEmojis && (candidates.hasJumboForAll() || JumboEmoji.canDownloadJumbo(getContext()))) { + if (scaleEmojis && + candidates != null && + candidates.allEmojis && + (candidates.hasJumboForAll() || JumboEmoji.canDownloadJumbo(getContext())) && + (text instanceof Spanned && !MessageStyler.hasStyling((Spanned) text))) + { int emojis = candidates.size(); float scale = 1.0f; diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/MessageRecordUtil.kt b/app/src/main/java/org/thoughtcrime/securesms/util/MessageRecordUtil.kt index 6802182837..6852c2b0d6 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/MessageRecordUtil.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/util/MessageRecordUtil.kt @@ -54,7 +54,7 @@ fun MessageRecord.isBorderless(context: Context): Boolean { } fun MessageRecord.hasNoBubble(context: Context): Boolean = - hasSticker() || isBorderless(context) || (isTextOnly(context) && isJumbomoji(context)) + hasSticker() || isBorderless(context) || (isTextOnly(context) && isJumbomoji(context) && messageRanges?.rangesList?.isEmpty() == true) fun MessageRecord.hasOnlyThumbnail(context: Context): Boolean { return hasThumbnail() &&