Downloadable gets priority over emojis only

Stephen Paul Weber created

Change summary

src/main/java/eu/siacs/conversations/entities/Message.java          | 2 
src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java | 4 
2 files changed, 3 insertions(+), 3 deletions(-)

Detailed changes

src/main/java/eu/siacs/conversations/entities/Message.java 🔗

@@ -857,7 +857,7 @@ public class Message extends AbstractEntity implements AvatarService.Avatarable
 
     public synchronized boolean bodyIsOnlyEmojis() {
         if (isEmojisOnly == null) {
-            isEmojisOnly = Emoticons.isOnlyEmoji(body.replaceAll("\\s", ""));
+            isEmojisOnly = Emoticons.isOnlyEmoji(getBody().replaceAll("\\s", ""));
         }
         return isEmojisOnly;
     }

src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java 🔗

@@ -818,8 +818,6 @@ public class MessageAdapter extends ArrayAdapter<Message> {
         } else {
             if (message.isGeoUri()) {
                 displayLocationMessage(viewHolder, message, darkBackground, type);
-            } else if (message.bodyIsOnlyEmojis() && message.getType() != Message.TYPE_PRIVATE) {
-                displayEmojiMessage(viewHolder, message.getBody().trim(), darkBackground);
             } else if (message.treatAsDownloadable()) {
                 try {
                     final URI uri = message.getOob();
@@ -836,6 +834,8 @@ public class MessageAdapter extends ArrayAdapter<Message> {
                                     UIHelper.getFileDescriptionString(activity, message)),
                             darkBackground, type);
                 }
+            } else if (message.bodyIsOnlyEmojis() && message.getType() != Message.TYPE_PRIVATE) {
+                displayEmojiMessage(viewHolder, message.getBody().trim(), darkBackground);
             } else {
                 displayTextMessage(viewHolder, message, darkBackground, type);
             }