diff options
Diffstat (limited to '')
-rw-r--r-- | src/eu/siacs/conversations/utils/UIHelper.java | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/src/eu/siacs/conversations/utils/UIHelper.java b/src/eu/siacs/conversations/utils/UIHelper.java index 1cd3403c6..335b471ad 100644 --- a/src/eu/siacs/conversations/utils/UIHelper.java +++ b/src/eu/siacs/conversations/utils/UIHelper.java @@ -15,6 +15,7 @@ import eu.siacs.conversations.entities.Contact; import eu.siacs.conversations.entities.Conversation; import eu.siacs.conversations.entities.Message; import eu.siacs.conversations.entities.MucOptions.User; +import eu.siacs.conversations.persistance.FileBackend; import eu.siacs.conversations.ui.ConversationActivity; import eu.siacs.conversations.ui.ManageAccountActivity; import android.app.Activity; @@ -214,13 +215,17 @@ public class UIHelper { new String[] { conversation.getName(false) }, size, bgColor, fgColor); } - String[] names = new String[members.size() + 1]; - names[0] = conversation.getMucOptions().getActualNick(); - for (int i = 0; i < members.size(); ++i) { - names[i + 1] = members.get(i).getName(); + ArrayList<String> names = new ArrayList<String>(); + names.add(conversation.getMucOptions().getActualNick()); + for(User user : members) { + names.add(user.getName()); + if (names.size() > 4 ) { + break; + } } - - return getUnknownContactPicture(names, size, bgColor, fgColor); + String[] mArrayNames = new String[names.size()]; + names.toArray(mArrayNames); + return getUnknownContactPicture(mArrayNames, size, bgColor, fgColor); } public static Bitmap getContactPicture(Conversation conversation, @@ -341,7 +346,7 @@ public class UIHelper { if ((currentCon != null) && (currentCon.getMode() == Conversation.MODE_MULTI) - && (!alwaysNotify)) { + && (!alwaysNotify) && notify) { String nick = currentCon.getMucOptions().getActualNick(); Pattern highlight = generateNickHighlightPattern(nick); Matcher m = highlight.matcher(currentCon.getLatestMessage() @@ -372,8 +377,7 @@ public class UIHelper { } else if (unread.size() == 1) { Conversation conversation = unread.get(0); targetUuid = conversation.getUuid(); - mBuilder.setLargeIcon(UIHelper.getContactPicture(conversation, 64, - context, true)); + mBuilder.setLargeIcon(conversation.getImage(context, 64)); mBuilder.setContentTitle(conversation.getName(useSubject)); if (notify) { mBuilder.setTicker(conversation.getLatestMessage() @@ -484,8 +488,7 @@ public class UIHelper { long id = Long.parseLong(systemAccount[0]); badge.assignContactUri(Contacts.getLookupUri(id, systemAccount[1])); } - badge.setImageBitmap(UIHelper.getContactPicture(contact, 72, context, - false)); + badge.setImageBitmap(contact.getImage(72, context)); } public static AlertDialog getVerifyFingerprintDialog( |