mirror of
https://github.com/viq/NewsBlur.git
synced 2025-09-18 21:43:31 +00:00
Fix force close when Profile$LoadUserTask completes after activity has been detached from ProfileActivityFragment and ProfileDetailsFragment
This commit is contained in:
parent
5654dcdafd
commit
8b383b06b8
3 changed files with 13 additions and 11 deletions
|
@ -78,7 +78,7 @@ public class Profile extends SherlockFragmentActivity {
|
|||
@Override
|
||||
protected void onPreExecute() {
|
||||
if (TextUtils.isEmpty(userId)) {
|
||||
detailsFragment.setUser(PrefsUtils.getUserDetails(Profile.this), true);
|
||||
detailsFragment.setUser(Profile.this, PrefsUtils.getUserDetails(Profile.this), true);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -102,8 +102,8 @@ public class Profile extends SherlockFragmentActivity {
|
|||
@Override
|
||||
protected void onPostExecute(Void result) {
|
||||
if (user != null && detailsFragment != null && activitiesFragment != null) {
|
||||
detailsFragment.setUser(user, TextUtils.isEmpty(userId));
|
||||
activitiesFragment.setActivitiesAndUser(activities, user);
|
||||
detailsFragment.setUser(Profile.this, user, TextUtils.isEmpty(userId));
|
||||
activitiesFragment.setActivitiesAndUser(Profile.this, activities, user);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package com.newsblur.fragment;
|
||||
|
||||
import android.content.Context;
|
||||
import android.os.Bundle;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.view.LayoutInflater;
|
||||
|
@ -32,9 +33,9 @@ public class ProfileActivityFragment extends Fragment {
|
|||
return v;
|
||||
}
|
||||
|
||||
public void setActivitiesAndUser(final ActivitiesResponse[] activities, UserDetails user ) {
|
||||
public void setActivitiesAndUser(Context context, final ActivitiesResponse[] activities, UserDetails user ) {
|
||||
// Set the activities, create the adapter
|
||||
adapter = new ActivitiesAdapter(getActivity(), activities, user);
|
||||
adapter = new ActivitiesAdapter(context, activities, user);
|
||||
displayActivities();
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package com.newsblur.fragment;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.Bitmap;
|
||||
import android.os.AsyncTask;
|
||||
import android.os.Bundle;
|
||||
|
@ -43,11 +44,11 @@ public class ProfileDetailsFragment extends Fragment implements OnClickListener
|
|||
apiManager = new APIManager(getActivity());
|
||||
}
|
||||
|
||||
public void setUser(final UserDetails user, final boolean viewingSelf) {
|
||||
public void setUser(Context context, final UserDetails user, final boolean viewingSelf) {
|
||||
this.user = user;
|
||||
this.viewingSelf = viewingSelf;
|
||||
if (username != null) {
|
||||
setUserFields();
|
||||
setUserFields(context);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -69,13 +70,13 @@ public class ProfileDetailsFragment extends Fragment implements OnClickListener
|
|||
unfollowButton.setOnClickListener(this);
|
||||
|
||||
if (user != null) {
|
||||
setUserFields();
|
||||
setUserFields(getActivity());
|
||||
}
|
||||
|
||||
return v;
|
||||
}
|
||||
|
||||
private void setUserFields() {
|
||||
private void setUserFields(Context context) {
|
||||
username.setText(user.username);
|
||||
|
||||
if (!TextUtils.isEmpty(user.bio)) {
|
||||
|
@ -114,8 +115,8 @@ public class ProfileDetailsFragment extends Fragment implements OnClickListener
|
|||
}
|
||||
} else {
|
||||
followButton.setVisibility(View.GONE);
|
||||
Bitmap userPicture = PrefsUtils.getUserImage(getActivity());
|
||||
userPicture = UIUtils.roundCorners(userPicture, 5);
|
||||
Bitmap userPicture = PrefsUtils.getUserImage(context);
|
||||
userPicture = UIUtils.roundCorners(userPicture, 5);
|
||||
imageView.setImageBitmap(userPicture);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue