Improved code
This commit is contained in:
parent
6035ea2732
commit
0394ca2525
2 changed files with 13 additions and 11 deletions
|
@ -96,6 +96,18 @@ public class ChatMessagesAdapter extends SelectableAdapter<ChatMessageViewHolder
|
||||||
ChatMessage message = event.getChatMessage();
|
ChatMessage message = event.getChatMessage();
|
||||||
message.setUserData(holder);
|
message.setUserData(holder);
|
||||||
|
|
||||||
|
if (message.isOutgoing() && message.getState() != ChatMessage.State.Displayed) {
|
||||||
|
message.setListener(new ChatMessageListenerStub() {
|
||||||
|
@Override
|
||||||
|
public void onMsgStateChanged(ChatMessage message, ChatMessage.State state) {
|
||||||
|
ChatMessageViewHolder holder = (ChatMessageViewHolder) message.getUserData();
|
||||||
|
if (holder != null) {
|
||||||
|
notifyItemChanged(holder.getAdapterPosition());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
LinphoneContact contact = null;
|
LinphoneContact contact = null;
|
||||||
Address remoteSender = message.getFromAddress();
|
Address remoteSender = message.getFromAddress();
|
||||||
if (!message.isOutgoing()) {
|
if (!message.isOutgoing()) {
|
||||||
|
@ -108,17 +120,6 @@ public class ChatMessagesAdapter extends SelectableAdapter<ChatMessageViewHolder
|
||||||
}
|
}
|
||||||
holder.bindMessage(message, contact);
|
holder.bindMessage(message, contact);
|
||||||
changeBackgroundDependingOnPreviousAndNextEvents(message, holder, position);
|
changeBackgroundDependingOnPreviousAndNextEvents(message, holder, position);
|
||||||
|
|
||||||
message.setListener(new ChatMessageListenerStub() {
|
|
||||||
@Override
|
|
||||||
public void onMsgStateChanged(ChatMessage message, ChatMessage.State state) {
|
|
||||||
ChatMessageViewHolder holder = (ChatMessageViewHolder) message.getUserData();
|
|
||||||
if (holder != null) {
|
|
||||||
holder.bindMessage(message, null);
|
|
||||||
changeBackgroundDependingOnPreviousAndNextEvents(message, holder, holder.getAdapterPosition());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
} else { // Event is not chat message
|
} else { // Event is not chat message
|
||||||
Address address = event.getParticipantAddress();
|
Address address = event.getParticipantAddress();
|
||||||
String displayName = null;
|
String displayName = null;
|
||||||
|
|
|
@ -56,6 +56,7 @@ import android.widget.LinearLayout;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
import org.linphone.LinphoneManager;
|
import org.linphone.LinphoneManager;
|
||||||
|
import org.linphone.core.ChatMessageListenerStub;
|
||||||
import org.linphone.settings.LinphonePreferences;
|
import org.linphone.settings.LinphonePreferences;
|
||||||
import org.linphone.LinphoneService;
|
import org.linphone.LinphoneService;
|
||||||
import org.linphone.utils.FileUtils;
|
import org.linphone.utils.FileUtils;
|
||||||
|
|
Loading…
Reference in a new issue