Fixed potential null pointers when refreshing comments fragment, people fragment

pull/14/head
Sam Bosley 13 years ago
parent fa4971f50c
commit 6c478be120

@ -210,11 +210,16 @@ public abstract class CommentsFragment extends ListFragment {
} }
protected void refreshUpdatesList() { protected void refreshUpdatesList() {
Activity activity = getActivity();
View view = getView();
if (activity == null || view == null)
return;
Cursor cursor = null; Cursor cursor = null;
ListView listView = ((ListView) getView().findViewById(android.R.id.list)); ListView listView = ((ListView) view.findViewById(android.R.id.list));
if(updateAdapter == null) { if(updateAdapter == null) {
cursor = getCursor(); cursor = getCursor();
getActivity().startManagingCursor(cursor); activity.startManagingCursor(cursor);
String source = getSourceIdentifier(); String source = getSourceIdentifier();
updateAdapter = new UpdateAdapter(this, R.layout.update_adapter_row, updateAdapter = new UpdateAdapter(this, R.layout.update_adapter_row,
@ -224,19 +229,19 @@ public abstract class CommentsFragment extends ListFragment {
} else { } else {
cursor = updateAdapter.getCursor(); cursor = updateAdapter.getCursor();
cursor.requery(); cursor.requery();
getActivity().startManagingCursor(cursor); activity.startManagingCursor(cursor);
populateListHeader(listHeader); populateListHeader(listHeader);
} }
View activityContainer = getView().findViewById(R.id.no_activity_container); View activityContainer = view.findViewById(R.id.no_activity_container);
if (cursor.getCount() == 0) { if (cursor.getCount() == 0) {
activityContainer.setVisibility(View.VISIBLE); activityContainer.setVisibility(View.VISIBLE);
TextView textView = (TextView)activityContainer.findViewById(R.id.no_activity_message); TextView textView = (TextView)activityContainer.findViewById(R.id.no_activity_message);
if(actFmPreferenceService.isLoggedIn()) { if(actFmPreferenceService.isLoggedIn()) {
textView.setText(getActivity().getString(R.string.ENA_no_comments)); textView.setText(activity.getString(R.string.ENA_no_comments));
} }
else { else {
textView.setText(getActivity().getString(R.string.UpS_no_activity_log_in)); textView.setText(activity.getString(R.string.UpS_no_activity_log_in));
activityContainer.setOnClickListener(new OnClickListener() { activityContainer.setOnClickListener(new OnClickListener() {
@Override @Override
@ -253,7 +258,7 @@ public abstract class CommentsFragment extends ListFragment {
listView.setVisibility(View.VISIBLE); listView.setVisibility(View.VISIBLE);
} }
if (getActivity() instanceof CommentsActivity) if (activity instanceof CommentsActivity)
setLastViewed(); setLastViewed();
} }

@ -200,23 +200,25 @@ public class PersonViewFragment extends TaskListFragment {
} }
private void refreshData() { private void refreshData() {
emptyView.setText(R.string.DLG_loading); if (user != null) {
Runnable callback = new Runnable() { emptyView.setText(R.string.DLG_loading);
@Override Runnable callback = new Runnable() {
public void run() { @Override
Activity activity = getActivity(); public void run() {
if (activity != null) { Activity activity = getActivity();
activity.runOnUiThread(new Runnable() { if (activity != null) {
public void run() { activity.runOnUiThread(new Runnable() {
reloadUserData(); public void run() {
refresh(); reloadUserData();
emptyView.setText(getEmptyDisplayString()); refresh();
} emptyView.setText(getEmptyDisplayString());
}); }
});
}
} }
} };
}; ActFmSyncThread.getInstance().enqueueMessage(new BriefMe<User>(User.class, user.getValue(User.UUID), user.getValue(User.PUSHED_AT)), callback);
ActFmSyncThread.getInstance().enqueueMessage(new BriefMe<User>(User.class, user.getValue(User.UUID), user.getValue(User.PUSHED_AT)), callback); }
} }
private String getEmptyDisplayString() { private String getEmptyDisplayString() {

Loading…
Cancel
Save