will update messages on conversation update as well

This commit is contained in:
Daniel Gultsch 2014-02-02 16:33:34 +01:00
parent d365bbe480
commit bbdaf5b0bd
2 changed files with 15 additions and 3 deletions

View File

@ -73,6 +73,10 @@ public class ConversationActivity extends XmppActivity {
finish();
}
}
ConversationFragment selectedFragment = (ConversationFragment) getFragmentManager().findFragmentByTag("conversation");
if (selectedFragment!=null) {
selectedFragment.updateMessages();
}
}
});
}

View File

@ -31,6 +31,7 @@ public class ConversationFragment extends Fragment {
protected ListView messagesView;
protected LayoutInflater inflater;
protected List<Message> messageList = new ArrayList<Message>();
protected ArrayAdapter<Message> messageListAdapter;
@Override
public View onCreateView(final LayoutInflater inflater,
@ -76,7 +77,7 @@ public class ConversationFragment extends Fragment {
mProfileCursor.moveToFirst();
final Uri profilePicture = Uri.parse(mProfileCursor.getString(1));
messagesView.setAdapter(new ArrayAdapter<Message>(this.getActivity()
messageListAdapter = new ArrayAdapter<Message>(this.getActivity()
.getApplicationContext(), R.layout.message_sent, this.messageList) {
private static final int SENT = 0;
@ -134,7 +135,8 @@ public class ConversationFragment extends Fragment {
}
return view;
}
});
};
messagesView.setAdapter(messageListAdapter);
return view;
}
@ -180,4 +182,10 @@ public class ConversationFragment extends Fragment {
activity.invalidateOptionsMenu();
}
}
public void updateMessages() {
this.messageList.clear();
this.messageList.addAll(this.conversation.getMessages());
this.messageListAdapter.notifyDataSetChanged();
}
}