[imdm] update resend method + fix refresh problem
This commit is contained in:
parent
9866204f74
commit
018abaeba4
2 changed files with 22 additions and 11 deletions
|
@ -422,10 +422,11 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
menu.add(v.getId(), MENU_COPY_TEXT, 0, getString(R.string.copy_text));
|
menu.add(v.getId(), MENU_COPY_TEXT, 0, getString(R.string.copy_text));
|
||||||
}
|
}
|
||||||
|
|
||||||
LinphoneChatMessage msg = getMessageForId(v.getId());
|
/* LinphoneChatMessage msg = getMessageForId(v.getId());
|
||||||
if (msg != null && msg.getStatus() == LinphoneChatMessage.State.NotDelivered) {
|
if (msg != null && msg.getStatus() == LinphoneChatMessage.State.NotDelivered) {
|
||||||
menu.add(v.getId(), MENU_RESEND_MESSAGE, 0, getString(R.string.retry));
|
menu.add(v.getId(), MENU_RESEND_MESSAGE, 0, getString(R.string.retry));
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -443,9 +444,10 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
case MENU_COPY_TEXT:
|
case MENU_COPY_TEXT:
|
||||||
copyTextMessageToClipboard(item.getGroupId());
|
copyTextMessageToClipboard(item.getGroupId());
|
||||||
break;
|
break;
|
||||||
case MENU_RESEND_MESSAGE:
|
/*case MENU_RESEND_MESSAGE:
|
||||||
resendMessage(item.getGroupId());
|
resendMessage(item.getGroupId());
|
||||||
break;
|
break;
|
||||||
|
*/
|
||||||
case MENU_PICTURE_SMALL:
|
case MENU_PICTURE_SMALL:
|
||||||
sendImageMessage(filePathToUpload, SIZE_SMALL);
|
sendImageMessage(filePathToUpload, SIZE_SMALL);
|
||||||
break;
|
break;
|
||||||
|
@ -765,19 +767,23 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
chatRoom.markAsRead();
|
chatRoom.markAsRead();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void resendMessage(int id) {
|
private void resendMessage(LinphoneChatMessage message) {
|
||||||
LinphoneChatMessage message = getMessageForId(id);
|
LinphoneCore lc = LinphoneManager.getLcIfManagerNotDestroyedOrNull();
|
||||||
if (message == null)
|
if (message == null || message.getStatus() != State.NotDelivered || !lc.isNetworkReachable())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
chatRoom.deleteMessage(getMessageForId(id));
|
message.reSend();
|
||||||
invalidate();
|
invalidate();
|
||||||
|
}
|
||||||
|
|
||||||
if (message.getText() != null && message.getText().length() > 0) {
|
private void resendMessage(int id) {
|
||||||
sendTextMessage(message.getText());
|
LinphoneChatMessage message = getMessageForId(id);
|
||||||
} else {
|
LinphoneCore lc = LinphoneManager.getLcIfManagerNotDestroyedOrNull();
|
||||||
sendImageMessage(message.getAppData(), 0);
|
if (message == null || message.getStatus() != State.NotDelivered || !lc.isNetworkReachable()){
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
message.reSend();
|
||||||
|
invalidate();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void copyTextMessageToClipboard(int id) {
|
private void copyTextMessageToClipboard(int id) {
|
||||||
|
@ -1153,6 +1159,10 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
LinphoneManager.getLc().getLimeEncryption() == LinphoneCore.LinphoneLimeState.Mandatory) {
|
LinphoneManager.getLc().getLimeEncryption() == LinphoneCore.LinphoneLimeState.Mandatory) {
|
||||||
LinphoneUtils.displayErrorAlert(getString(R.string.message_not_encrypted), LinphoneActivity.instance());
|
LinphoneUtils.displayErrorAlert(getString(R.string.message_not_encrypted), LinphoneActivity.instance());
|
||||||
}
|
}
|
||||||
|
if(message.getStatus() == State.NotDelivered) {
|
||||||
|
resendMessage(message);
|
||||||
|
//resendMessage(holder.id);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -1309,6 +1319,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
chatRoom.markAsRead();
|
||||||
}
|
}
|
||||||
|
|
||||||
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
|
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
Subproject commit bcc1305863186234746fd91487495773db93a511
|
Subproject commit 3bd323bec3535cb599d523096b49dced43f16308
|
Loading…
Reference in a new issue