Updated linphone submodule + added room's last message in chat room list

This commit is contained in:
Sylvain Berfini 2017-11-27 13:39:03 +01:00
parent 053d73f60d
commit a099768150
2 changed files with 9 additions and 12 deletions

View file

@ -132,20 +132,18 @@ public class ChatRoomsAdapter extends ListSelectionAdapter {
Long time; Long time;
int unreadMessagesCount = chatRoom.getUnreadMessagesCount(); int unreadMessagesCount = chatRoom.getUnreadMessagesCount();
//TODO rework ChatMessage lastMessage = chatRoom.getLastMessageInHistory();
ChatMessage[] history = chatRoom.getHistory(1);
if (history.length > 0) { if (lastMessage != null) {
ChatMessage msg = history[0]; if (lastMessage.getFileTransferInformation() != null || lastMessage.getExternalBodyUrl() != null || lastMessage.getAppdata() != null) {
if (msg.getFileTransferInformation() != null || msg.getExternalBodyUrl() != null || msg.getAppdata() != null) {
holder.lastMessageView.setBackgroundResource(R.drawable.chat_file_message); holder.lastMessageView.setBackgroundResource(R.drawable.chat_file_message);
time = msg.getTime(); time = lastMessage.getTime();
holder.date.setText(LinphoneUtils.timestampToHumanDate(mContext, time, R.string.messages_list_date_format)); holder.date.setText(LinphoneUtils.timestampToHumanDate(mContext, time, R.string.messages_list_date_format));
holder.lastMessageView.setText(""); holder.lastMessageView.setText("");
} else if (msg.getTextContent() != null && msg.getTextContent().length() > 0) { } else if (lastMessage.getTextContent() != null && lastMessage.getTextContent().length() > 0) {
message = msg.getTextContent(); message = lastMessage.getTextContent();
holder.lastMessageView.setBackgroundResource(0); holder.lastMessageView.setBackgroundResource(0);
time = msg.getTime(); time = lastMessage.getTime();
holder.date.setText(LinphoneUtils.timestampToHumanDate(mContext, time, R.string.messages_list_date_format)); holder.date.setText(LinphoneUtils.timestampToHumanDate(mContext, time, R.string.messages_list_date_format));
holder.lastMessageView.setText(message); holder.lastMessageView.setText(message);
} }
@ -153,6 +151,7 @@ public class ChatRoomsAdapter extends ListSelectionAdapter {
holder.displayName.setSelected(true); // For animation holder.displayName.setSelected(true); // For animation
holder.contactPicture.setImageBitmap(mDefaultBitmap);
if (!chatRoom.canHandleParticipants()) { if (!chatRoom.canHandleParticipants()) {
contact = ContactsManager.getInstance().findContactFromAddress(contactAddress); contact = ContactsManager.getInstance().findContactFromAddress(contactAddress);
if (contact != null) { if (contact != null) {
@ -160,7 +159,6 @@ public class ChatRoomsAdapter extends ListSelectionAdapter {
LinphoneUtils.setThumbnailPictureFromUri(LinphoneActivity.instance(), holder.contactPicture, contact.getThumbnailUri()); LinphoneUtils.setThumbnailPictureFromUri(LinphoneActivity.instance(), holder.contactPicture, contact.getThumbnailUri());
} else { } else {
holder.displayName.setText(LinphoneUtils.getAddressDisplayName(contactAddress)); holder.displayName.setText(LinphoneUtils.getAddressDisplayName(contactAddress));
holder.contactPicture.setImageBitmap(mDefaultBitmap);
} }
} else if (chatRoom.getNbParticipants() == 1 && mContext.getString(R.string.dummy_group_chat_subject).equals(chatRoom.getSubject())) { } else if (chatRoom.getNbParticipants() == 1 && mContext.getString(R.string.dummy_group_chat_subject).equals(chatRoom.getSubject())) {
contact = ContactsManager.getInstance().findContactFromAddress(chatRoom.getParticipants()[0].getAddress()); contact = ContactsManager.getInstance().findContactFromAddress(chatRoom.getParticipants()[0].getAddress());
@ -169,7 +167,6 @@ public class ChatRoomsAdapter extends ListSelectionAdapter {
LinphoneUtils.setThumbnailPictureFromUri(LinphoneActivity.instance(), holder.contactPicture, contact.getThumbnailUri()); LinphoneUtils.setThumbnailPictureFromUri(LinphoneActivity.instance(), holder.contactPicture, contact.getThumbnailUri());
} else { } else {
holder.displayName.setText(LinphoneUtils.getAddressDisplayName(chatRoom.getParticipants()[0].getAddress())); holder.displayName.setText(LinphoneUtils.getAddressDisplayName(chatRoom.getParticipants()[0].getAddress()));
holder.contactPicture.setImageBitmap(mDefaultBitmap);
} }
} else { } else {
holder.displayName.setText(chatRoom.getSubject()); holder.displayName.setText(chatRoom.getSubject());

@ -1 +1 @@
Subproject commit 191a9f24ba2ad380cff353707d3714662c7226d8 Subproject commit 9a8181ee3108e7ab713d80edbaf705a457e01440