Fix the reload of host image sent when we edit chat list
This commit is contained in:
parent
a82f9e9218
commit
3206a55ddf
1 changed files with 46 additions and 39 deletions
|
@ -133,7 +133,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
private TextWatcher textWatcher;
|
private TextWatcher textWatcher;
|
||||||
private ViewTreeObserver.OnGlobalLayoutListener keyboardListener;
|
private ViewTreeObserver.OnGlobalLayoutListener keyboardListener;
|
||||||
private ChatMessageAdapter adapter;
|
private ChatMessageAdapter adapter;
|
||||||
|
|
||||||
private LinphoneCoreListenerBase mListener;
|
private LinphoneCoreListenerBase mListener;
|
||||||
private ByteArrayInputStream mUploadingImageStream;
|
private ByteArrayInputStream mUploadingImageStream;
|
||||||
private boolean newChatConversation = false;
|
private boolean newChatConversation = false;
|
||||||
|
@ -158,7 +158,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
|
|
||||||
//Initialize UI
|
//Initialize UI
|
||||||
defaultBitmap = BitmapFactory.decodeResource(getActivity().getResources(), R.drawable.chat_picture_over);
|
defaultBitmap = BitmapFactory.decodeResource(getActivity().getResources(), R.drawable.chat_picture_over);
|
||||||
|
|
||||||
contactName = (TextView) view.findViewById(R.id.contact_name);
|
contactName = (TextView) view.findViewById(R.id.contact_name);
|
||||||
messagesList = (ListView) view.findViewById(R.id.chat_message_list);
|
messagesList = (ListView) view.findViewById(R.id.chat_message_list);
|
||||||
searchContactField = (EditText) view.findViewById(R.id.search_contact_field);
|
searchContactField = (EditText) view.findViewById(R.id.search_contact_field);
|
||||||
|
@ -230,7 +230,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
cr.markAsRead();
|
cr.markAsRead();
|
||||||
LinphoneActivity.instance().updateMissedChatCount();
|
LinphoneActivity.instance().updateMissedChatCount();
|
||||||
adapter.addMessage(cr.getHistory(1)[0]);
|
adapter.addMessage(cr.getHistory(1)[0]);
|
||||||
|
|
||||||
String externalBodyUrl = message.getExternalBodyUrl();
|
String externalBodyUrl = message.getExternalBodyUrl();
|
||||||
LinphoneContent fileTransferContent = message.getFileTransferInformation();
|
LinphoneContent fileTransferContent = message.getFileTransferInformation();
|
||||||
if (externalBodyUrl != null || fileTransferContent != null) {
|
if (externalBodyUrl != null || fileTransferContent != null) {
|
||||||
|
@ -238,7 +238,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void isComposingReceived(LinphoneCore lc, LinphoneChatRoom room) {
|
public void isComposingReceived(LinphoneCore lc, LinphoneChatRoom room) {
|
||||||
if (chatRoom != null && room != null && chatRoom.getPeerAddress().asStringUriOnly().equals(room.getPeerAddress().asStringUriOnly())) {
|
if (chatRoom != null && room != null && chatRoom.getPeerAddress().asStringUriOnly().equals(room.getPeerAddress().asStringUriOnly())) {
|
||||||
|
@ -367,7 +367,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void redrawMessageList() {
|
private void redrawMessageList() {
|
||||||
if (adapter != null) {
|
if (adapter != null) {
|
||||||
adapter.notifyDataSetChanged();
|
adapter.notifyDataSetChanged();
|
||||||
|
@ -475,10 +475,10 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
//Hide keybord
|
//Hide keybord
|
||||||
InputMethodManager imm = (InputMethodManager)getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
|
InputMethodManager imm = (InputMethodManager)getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
|
||||||
imm.hideSoftInputFromWindow(message.getWindowToken(), 0);
|
imm.hideSoftInputFromWindow(message.getWindowToken(), 0);
|
||||||
|
|
||||||
super.onPause();
|
super.onPause();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onDestroy() {
|
public void onDestroy() {
|
||||||
if (adapter != null) {
|
if (adapter != null) {
|
||||||
|
@ -495,7 +495,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
@Override
|
@Override
|
||||||
public void onResume() {
|
public void onResume() {
|
||||||
super.onResume();
|
super.onResume();
|
||||||
|
|
||||||
message.addTextChangedListener(textWatcher);
|
message.addTextChangedListener(textWatcher);
|
||||||
addVirtualKeyboardVisiblityListener();
|
addVirtualKeyboardVisiblityListener();
|
||||||
|
|
||||||
|
@ -568,7 +568,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
int id = v.getId();
|
int id = v.getId();
|
||||||
|
|
||||||
if (id == R.id.back_to_call) {
|
if (id == R.id.back_to_call) {
|
||||||
LinphoneActivity.instance().resetClassicMenuLayoutAndGoBackToCallIfStillRunning();
|
LinphoneActivity.instance().resetClassicMenuLayoutAndGoBackToCallIfStillRunning();
|
||||||
return;
|
return;
|
||||||
|
@ -739,13 +739,13 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
String txt = null;
|
String txt = null;
|
||||||
if (message != null) {
|
if (message != null) {
|
||||||
txt = message.getText();
|
txt = message.getText();
|
||||||
}
|
}
|
||||||
if (txt != null) {
|
if (txt != null) {
|
||||||
ClipboardManager clipboard = (ClipboardManager) getActivity().getSystemService(Context.CLIPBOARD_SERVICE);
|
ClipboardManager clipboard = (ClipboardManager) getActivity().getSystemService(Context.CLIPBOARD_SERVICE);
|
||||||
ClipData clip = android.content.ClipData.newPlainText("Message", txt);
|
ClipData clip = android.content.ClipData.newPlainText("Message", txt);
|
||||||
clipboard.setPrimaryClip(clip);
|
clipboard.setPrimaryClip(clip);
|
||||||
LinphoneActivity.instance().displayCustomToast(getString(R.string.text_copied_to_clipboard), Toast.LENGTH_SHORT);
|
LinphoneActivity.instance().displayCustomToast(getString(R.string.text_copied_to_clipboard), Toast.LENGTH_SHORT);
|
||||||
|
@ -760,14 +760,14 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
imageToUploadUri = Uri.fromFile(file);
|
imageToUploadUri = Uri.fromFile(file);
|
||||||
captureIntent.putExtra(MediaStore.EXTRA_OUTPUT, imageToUploadUri);
|
captureIntent.putExtra(MediaStore.EXTRA_OUTPUT, imageToUploadUri);
|
||||||
cameraIntents.add(captureIntent);
|
cameraIntents.add(captureIntent);
|
||||||
|
|
||||||
Intent galleryIntent = new Intent();
|
Intent galleryIntent = new Intent();
|
||||||
galleryIntent.setType("image/*");
|
galleryIntent.setType("image/*");
|
||||||
galleryIntent.setAction(Intent.ACTION_PICK);
|
galleryIntent.setAction(Intent.ACTION_PICK);
|
||||||
|
|
||||||
Intent chooserIntent = Intent.createChooser(galleryIntent, getString(R.string.image_picker_title));
|
Intent chooserIntent = Intent.createChooser(galleryIntent, getString(R.string.image_picker_title));
|
||||||
chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, cameraIntents.toArray(new Parcelable[]{}));
|
chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, cameraIntents.toArray(new Parcelable[]{}));
|
||||||
|
|
||||||
startActivityForResult(chooserIntent, ADD_PHOTO);
|
startActivityForResult(chooserIntent, ADD_PHOTO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -865,13 +865,13 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
public void onActivityResult(int requestCode, int resultCode, Intent data) {
|
public void onActivityResult(int requestCode, int resultCode, Intent data) {
|
||||||
if (requestCode == ADD_PHOTO && resultCode == Activity.RESULT_OK) {
|
if (requestCode == ADD_PHOTO && resultCode == Activity.RESULT_OK) {
|
||||||
String fileToUploadPath = null;
|
String fileToUploadPath = null;
|
||||||
|
|
||||||
if (data != null && data.getData() != null) {
|
if (data != null && data.getData() != null) {
|
||||||
fileToUploadPath = getRealPathFromURI(data.getData());
|
fileToUploadPath = getRealPathFromURI(data.getData());
|
||||||
} else if (imageToUploadUri != null) {
|
} else if (imageToUploadUri != null) {
|
||||||
fileToUploadPath = imageToUploadUri.getPath();
|
fileToUploadPath = imageToUploadUri.getPath();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (fileToUploadPath != null) {
|
if (fileToUploadPath != null) {
|
||||||
//showPopupMenuAskingImageSize(fileToUploadPath);
|
//showPopupMenuAskingImageSize(fileToUploadPath);
|
||||||
sendImageMessage(fileToUploadPath,0);
|
sendImageMessage(fileToUploadPath,0);
|
||||||
|
@ -947,7 +947,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
for (ContactAddress c : searchAdapter.contacts) {
|
for (ContactAddress c : searchAdapter.contacts) {
|
||||||
String address = c.address;
|
String address = c.address;
|
||||||
if (address.startsWith("sip:")) address = address.substring(4);
|
if (address.startsWith("sip:")) address = address.substring(4);
|
||||||
if (c.contact.getFullName().toLowerCase(Locale.getDefault()).startsWith(search.toLowerCase(Locale.getDefault()))
|
if (c.contact.getFullName().toLowerCase(Locale.getDefault()).startsWith(search.toLowerCase(Locale.getDefault()))
|
||||||
|| address.toLowerCase(Locale.getDefault()).startsWith(search.toLowerCase(Locale.getDefault()))) {
|
|| address.toLowerCase(Locale.getDefault()).startsWith(search.toLowerCase(Locale.getDefault()))) {
|
||||||
result.add(c);
|
result.add(c);
|
||||||
}
|
}
|
||||||
|
@ -974,7 +974,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
public ImageView messageStatus;
|
public ImageView messageStatus;
|
||||||
public ProgressBar messageSendingInProgress;
|
public ProgressBar messageSendingInProgress;
|
||||||
public ImageView contactPictureMask;
|
public ImageView contactPictureMask;
|
||||||
|
|
||||||
public ViewHolder(View view) {
|
public ViewHolder(View view) {
|
||||||
id = view.getId();
|
id = view.getId();
|
||||||
bubbleLayout = (RelativeLayout) view.findViewById(R.id.bubble);
|
bubbleLayout = (RelativeLayout) view.findViewById(R.id.bubble);
|
||||||
|
@ -994,17 +994,17 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onLinphoneChatMessageStateChanged(LinphoneChatMessage msg, State state) {
|
public void onLinphoneChatMessageStateChanged(LinphoneChatMessage msg, State state) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onLinphoneChatMessageFileTransferReceived(LinphoneChatMessage msg, LinphoneContent content, LinphoneBuffer buffer) {
|
public void onLinphoneChatMessageFileTransferReceived(LinphoneChatMessage msg, LinphoneContent content, LinphoneBuffer buffer) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onLinphoneChatMessageFileTransferSent(LinphoneChatMessage msg, LinphoneContent content, int offset, int size, LinphoneBuffer bufferToFill) {
|
public void onLinphoneChatMessageFileTransferSent(LinphoneChatMessage msg, LinphoneContent content, int offset, int size, LinphoneBuffer bufferToFill) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -1012,7 +1012,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
if (msg.getStorageId() == id) fileTransferProgressBar.setProgress(offset * 100 / total);
|
if (msg.getStorageId() == id) fileTransferProgressBar.setProgress(offset * 100 / total);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ArrayList<LinphoneChatMessage> history;
|
ArrayList<LinphoneChatMessage> history;
|
||||||
Context context;
|
Context context;
|
||||||
|
|
||||||
|
@ -1021,7 +1021,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
history = new ArrayList<LinphoneChatMessage>();
|
history = new ArrayList<LinphoneChatMessage>();
|
||||||
refreshHistory();
|
refreshHistory();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void destroy() {
|
public void destroy() {
|
||||||
if (history != null) {
|
if (history != null) {
|
||||||
history.clear();
|
history.clear();
|
||||||
|
@ -1072,9 +1072,13 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
holder = new ViewHolder(view);
|
holder = new ViewHolder(view);
|
||||||
view.setTag(holder);
|
view.setTag(holder);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (holder.id == message.getStorageId()) {
|
if (holder.id == message.getStorageId()) {
|
||||||
if (holder.messageImage.getTag() != null && holder.messageImage.getTag().equals(message.getAppData())) {
|
// Horrible workaround to not reload image on edit chat list
|
||||||
|
if (holder.messageImage.getTag() != null
|
||||||
|
&& (holder.messageImage.getTag().equals(message.getAppData())
|
||||||
|
|| ((String) holder.messageImage.getTag()).substring(7).equals(message.getAppData()))
|
||||||
|
){
|
||||||
sameMessage = true;
|
sameMessage = true;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@ -1086,7 +1090,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
LinphoneChatMessage.State status = message.getStatus();
|
LinphoneChatMessage.State status = message.getStatus();
|
||||||
String externalBodyUrl = message.getExternalBodyUrl();
|
String externalBodyUrl = message.getExternalBodyUrl();
|
||||||
LinphoneContent fileTransferContent = message.getFileTransferInformation();
|
LinphoneContent fileTransferContent = message.getFileTransferInformation();
|
||||||
|
|
||||||
holder.delete.setVisibility(View.GONE);
|
holder.delete.setVisibility(View.GONE);
|
||||||
holder.messageText.setVisibility(View.GONE);
|
holder.messageText.setVisibility(View.GONE);
|
||||||
holder.messageImage.setVisibility(View.GONE);
|
holder.messageImage.setVisibility(View.GONE);
|
||||||
|
@ -1095,7 +1099,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
holder.fileTransferAction.setEnabled(true);
|
holder.fileTransferAction.setEnabled(true);
|
||||||
holder.messageStatus.setVisibility(View.INVISIBLE);
|
holder.messageStatus.setVisibility(View.INVISIBLE);
|
||||||
holder.messageSendingInProgress.setVisibility(View.GONE);
|
holder.messageSendingInProgress.setVisibility(View.GONE);
|
||||||
|
|
||||||
String displayName = message.getFrom().getDisplayName();
|
String displayName = message.getFrom().getDisplayName();
|
||||||
if (displayName == null) {
|
if (displayName == null) {
|
||||||
displayName = message.getFrom().getUserName();
|
displayName = message.getFrom().getUserName();
|
||||||
|
@ -1122,22 +1126,22 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
holder.contactPicture.setImageResource(R.drawable.avatar);
|
holder.contactPicture.setImageResource(R.drawable.avatar);
|
||||||
}
|
}
|
||||||
holder.contactName.setText(timestampToHumanDate(context, message.getTime()) + " - " + displayName);
|
holder.contactName.setText(timestampToHumanDate(context, message.getTime()) + " - " + displayName);
|
||||||
|
|
||||||
if (status == LinphoneChatMessage.State.NotDelivered) {
|
if (status == LinphoneChatMessage.State.NotDelivered) {
|
||||||
holder.messageStatus.setVisibility(View.VISIBLE);
|
holder.messageStatus.setVisibility(View.VISIBLE);
|
||||||
holder.messageStatus.setImageResource(R.drawable.chat_message_not_delivered);
|
holder.messageStatus.setImageResource(R.drawable.chat_message_not_delivered);
|
||||||
} else if (status == LinphoneChatMessage.State.InProgress) {
|
} else if (status == LinphoneChatMessage.State.InProgress) {
|
||||||
holder.messageSendingInProgress.setVisibility(View.VISIBLE);
|
holder.messageSendingInProgress.setVisibility(View.VISIBLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (externalBodyUrl != null || fileTransferContent != null) {
|
if (externalBodyUrl != null || fileTransferContent != null) {
|
||||||
String appData = message.getAppData();
|
String appData = message.getAppData();
|
||||||
|
|
||||||
if (message.isOutgoing() && appData != null) {
|
if (message.isOutgoing() && appData != null) {
|
||||||
holder.messageImage.setVisibility(View.VISIBLE);
|
holder.messageImage.setVisibility(View.VISIBLE);
|
||||||
if (!sameMessage) {
|
if (!sameMessage) {
|
||||||
loadBitmap(appData, holder.messageImage);
|
loadBitmap(message.getAppData(), holder.messageImage);
|
||||||
holder.messageImage.setTag(appData);
|
holder.messageImage.setTag(message.getAppData());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (LinphoneManager.getInstance().getMessageUploadPending() != null && LinphoneManager.getInstance().getMessageUploadPending().getStorageId() == message.getStorageId()) {
|
if (LinphoneManager.getInstance().getMessageUploadPending() != null && LinphoneManager.getInstance().getMessageUploadPending().getStorageId() == message.getStorageId()) {
|
||||||
|
@ -1162,7 +1166,10 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
LinphoneManager.removeListener(holder);
|
LinphoneManager.removeListener(holder);
|
||||||
holder.fileTransferLayout.setVisibility(View.GONE);
|
holder.fileTransferLayout.setVisibility(View.GONE);
|
||||||
holder.messageImage.setVisibility(View.VISIBLE);
|
holder.messageImage.setVisibility(View.VISIBLE);
|
||||||
if (!sameMessage) loadBitmap(appData, holder.messageImage);
|
if (!sameMessage) {
|
||||||
|
loadBitmap(appData, holder.messageImage);
|
||||||
|
holder.messageImage.setTag(message.getAppData());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1176,7 +1183,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
holder.messageText.setVisibility(View.VISIBLE);
|
holder.messageText.setVisibility(View.VISIBLE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (message.isOutgoing()) {
|
if (message.isOutgoing()) {
|
||||||
holder.fileTransferAction.setText(getString(R.string.cancel));
|
holder.fileTransferAction.setText(getString(R.string.cancel));
|
||||||
holder.fileTransferAction.setOnClickListener(new View.OnClickListener() {
|
holder.fileTransferAction.setOnClickListener(new View.OnClickListener() {
|
||||||
|
@ -1212,7 +1219,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
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);
|
||||||
if (message.isOutgoing()) {
|
if (message.isOutgoing()) {
|
||||||
layoutParams.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
|
layoutParams.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
|
||||||
|
@ -1237,7 +1244,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
holder.contactPictureMask.setImageResource(R.drawable.avatar_chat_mask);
|
holder.contactPictureMask.setImageResource(R.drawable.avatar_chat_mask);
|
||||||
}
|
}
|
||||||
holder.bubbleLayout.setLayoutParams(layoutParams);
|
holder.bubbleLayout.setLayoutParams(layoutParams);
|
||||||
|
|
||||||
if (isEditMode) {
|
if (isEditMode) {
|
||||||
holder.delete.setVisibility(View.VISIBLE);
|
holder.delete.setVisibility(View.VISIBLE);
|
||||||
holder.delete.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
|
holder.delete.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
|
||||||
|
@ -1268,7 +1275,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
holder.delete.setChecked(false);
|
holder.delete.setChecked(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return view;
|
return view;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1446,13 +1453,13 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
private class ViewHolder {
|
private class ViewHolder {
|
||||||
public TextView name;
|
public TextView name;
|
||||||
public TextView address;
|
public TextView address;
|
||||||
|
|
||||||
public ViewHolder(View view) {
|
public ViewHolder(View view) {
|
||||||
name = (TextView) view.findViewById(R.id.contact_name);
|
name = (TextView) view.findViewById(R.id.contact_name);
|
||||||
address = (TextView) view.findViewById(R.id.contact_address);
|
address = (TextView) view.findViewById(R.id.contact_address);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private List<ContactAddress> contacts;
|
private List<ContactAddress> contacts;
|
||||||
private LayoutInflater mInflater;
|
private LayoutInflater mInflater;
|
||||||
|
|
||||||
|
@ -1504,7 +1511,7 @@ public class ChatFragment extends Fragment implements OnClickListener, LinphoneC
|
||||||
View view = null;
|
View view = null;
|
||||||
ContactAddress contact;
|
ContactAddress contact;
|
||||||
ViewHolder holder = null;
|
ViewHolder holder = null;
|
||||||
|
|
||||||
do {
|
do {
|
||||||
contact = getItem(position);
|
contact = getItem(position);
|
||||||
} while (contact == null);
|
} while (contact == null);
|
||||||
|
|
Loading…
Reference in a new issue