diff --git a/src/android/org/linphone/chat/GroupChatFragment.java b/src/android/org/linphone/chat/GroupChatFragment.java index 3798ccebd..0b11e626b 100644 --- a/src/android/org/linphone/chat/GroupChatFragment.java +++ b/src/android/org/linphone/chat/GroupChatFragment.java @@ -351,6 +351,10 @@ public class GroupChatFragment extends Fragment implements ChatRoomListener, Con // Do not show incoming messages IDMN state in 1 to 1 chat room as we don't receive IMDN for them menu.removeItem(R.id.imdn_infos); } + if (!message.hasTextContent()) { + // Do not show copy text option if message doesn't have any text + menu.removeItem(R.id.copy_text); + } } @Override diff --git a/src/android/org/linphone/chat/ImdnFragment.java b/src/android/org/linphone/chat/ImdnFragment.java index 112415db7..a41489930 100644 --- a/src/android/org/linphone/chat/ImdnFragment.java +++ b/src/android/org/linphone/chat/ImdnFragment.java @@ -198,6 +198,8 @@ public class ImdnFragment extends Fragment { boolean first = true; for (ParticipantImdnState participant : participants) { Address address = participant.getParticipant().getAddress(); + if (!mMessage.isOutgoing() && address.weakEqual(remoteSender)) continue; + LinphoneContact participantContact = ContactsManager.getInstance().findContactFromAddress(address); String participantDisplayName = participantContact != null ? participantContact.getFullName() : LinphoneUtils.getAddressDisplayName(address); @@ -220,6 +222,8 @@ public class ImdnFragment extends Fragment { first = true; for (ParticipantImdnState participant : participants) { Address address = participant.getParticipant().getAddress(); + if (!mMessage.isOutgoing() && address.weakEqual(remoteSender)) continue; + LinphoneContact participantContact = ContactsManager.getInstance().findContactFromAddress(address); String participantDisplayName = participantContact != null ? participantContact.getFullName() : LinphoneUtils.getAddressDisplayName(address); @@ -242,6 +246,8 @@ public class ImdnFragment extends Fragment { first = true; for (ParticipantImdnState participant : participants) { Address address = participant.getParticipant().getAddress(); + if (!mMessage.isOutgoing() && address.weakEqual(remoteSender)) continue; + LinphoneContact participantContact = ContactsManager.getInstance().findContactFromAddress(address); String participantDisplayName = participantContact != null ? participantContact.getFullName() : LinphoneUtils.getAddressDisplayName(address);