diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/AccountTimelineFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/AccountTimelineFragment.java index 786bf6ca4..19a540b09 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/AccountTimelineFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/AccountTimelineFragment.java @@ -60,8 +60,7 @@ public class AccountTimelineFragment extends StatusListFragment{ .setCallback(new SimpleCallback<>(this){ @Override public void onSuccess(List result){ - if(getActivity()==null) - return; + if(getActivity()==null) return; onDataLoaded(result, !result.isEmpty()); } }) diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/AnnouncementsFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/AnnouncementsFragment.java index a945bf453..a87b8c465 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/AnnouncementsFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/AnnouncementsFragment.java @@ -92,6 +92,7 @@ public class AnnouncementsFragment extends BaseStatusListFragment .setCallback(new SimpleCallback<>(this){ @Override public void onSuccess(List result){ + if (getActivity() == null) return; List unread = result.stream().filter(a -> !a.read).collect(toList()); List read = result.stream().filter(a -> a.read).collect(toList()); onDataLoaded(unread, true); diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/BookmarkedStatusListFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/BookmarkedStatusListFragment.java index 501ff1275..6fd12d95d 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/BookmarkedStatusListFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/BookmarkedStatusListFragment.java @@ -25,6 +25,7 @@ public class BookmarkedStatusListFragment extends StatusListFragment{ .setCallback(new SimpleCallback<>(this){ @Override public void onSuccess(HeaderPaginationList result){ + if (getActivity() == null) return; if(result.nextPageUri!=null) nextMaxID=result.nextPageUri.getQueryParameter("max_id"); else diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/EditTimelinesFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/EditTimelinesFragment.java index 98a960b82..8a0e65cad 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/EditTimelinesFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/EditTimelinesFragment.java @@ -146,6 +146,7 @@ public class EditTimelinesFragment extends BaseRecyclerFragment(this){ @Override public void onSuccess(HeaderPaginationList result){ + if (getActivity() == null) return; if(result.nextPageUri!=null) nextMaxID=result.nextPageUri.getQueryParameter("max_id"); else diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/FollowRequestsListFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/FollowRequestsListFragment.java index 8f2b35fcf..76b28334f 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/FollowRequestsListFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/FollowRequestsListFragment.java @@ -80,6 +80,7 @@ public class FollowRequestsListFragment extends BaseRecyclerFragment(this){ @Override public void onSuccess(HeaderPaginationList result){ + if (getActivity() == null) return; if(result.nextPageUri!=null) nextMaxID=result.nextPageUri.getQueryParameter("max_id"); else diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/FollowedHashtagsFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/FollowedHashtagsFragment.java index 1a9ecb862..cdb729841 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/FollowedHashtagsFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/FollowedHashtagsFragment.java @@ -55,6 +55,7 @@ public class FollowedHashtagsFragment extends BaseRecyclerFragment impl .setCallback(new SimpleCallback<>(this){ @Override public void onSuccess(HeaderPaginationList result){ + if (getActivity() == null) return; if(result.nextPageUri!=null) nextMaxID=result.nextPageUri.getQueryParameter("max_id"); else diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/HashtagTimelineFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/HashtagTimelineFragment.java index c7b0afd51..e0510e5db 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/HashtagTimelineFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/HashtagTimelineFragment.java @@ -70,6 +70,7 @@ public class HashtagTimelineFragment extends PinnableStatusListFragment { new GetHashtag(hashtag).setCallback(new Callback<>() { @Override public void onSuccess(Hashtag hashtag) { + if (getActivity() == null) return; updateTitle(hashtag.name); updateFollowingState(hashtag.following); } @@ -91,6 +92,7 @@ public class HashtagTimelineFragment extends PinnableStatusListFragment { new SetHashtagFollowed(hashtag, following).setCallback(new Callback<>() { @Override public void onSuccess(Hashtag i) { + if (getActivity() == null) return; if (i.following == following) Toast.makeText(getActivity(), getString(i.following ? R.string.followed_user : R.string.unfollowed_user, "#" + i.name), Toast.LENGTH_SHORT).show(); updateFollowingState(i.following); } @@ -117,6 +119,7 @@ public class HashtagTimelineFragment extends PinnableStatusListFragment { .setCallback(new SimpleCallback<>(this){ @Override public void onSuccess(List result){ + if (getActivity() == null) return; onDataLoaded(result, !result.isEmpty()); } }) diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeTabFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeTabFragment.java index ea4c7d765..8951b8833 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeTabFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeTabFragment.java @@ -265,6 +265,7 @@ public class HomeTabFragment extends MastodonToolbarFragment implements Scrollab new GetAnnouncements(false).setCallback(new Callback<>() { @Override public void onSuccess(List result) { + if (getActivity() == null) return; if (result.stream().anyMatch(a -> !a.read)) { announcementsBadged = true; announcements.setVisible(false); @@ -338,6 +339,7 @@ public class HomeTabFragment extends MastodonToolbarFragment implements Scrollab } private void updateOverflowMenu() { + if (getActivity() == null) return; Menu m = overflowPopup.getMenu(); m.clear(); overflowPopup.inflate(R.menu.home_overflow); diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeTimelineFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeTimelineFragment.java index fdd0baae7..69fe4c182 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeTimelineFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/HomeTimelineFragment.java @@ -58,8 +58,7 @@ public class HomeTimelineFragment extends FabStatusListFragment { .getHomeTimeline(offset>0 ? maxID : null, count, refreshing, new SimpleCallback<>(this){ @Override public void onSuccess(CacheablePaginatedResponse> result){ - if(getActivity()==null) - return; + if (getActivity() == null) return; List filteredItems = filterPosts(result.items); onDataLoaded(filteredItems, !result.items.isEmpty()); maxID=result.maxID; diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/ListTimelineFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/ListTimelineFragment.java index 955571245..08a884aaa 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/ListTimelineFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/ListTimelineFragment.java @@ -59,6 +59,7 @@ public class ListTimelineFragment extends PinnableStatusListFragment { new GetList(listID).setCallback(new Callback<>() { @Override public void onSuccess(ListTimeline listTimeline) { + if (getActivity() == null) return; // TODO: save updated info if (!listTimeline.title.equals(listTitle)) setTitle(listTimeline.title); if (listTimeline.repliesPolicy != null && !listTimeline.repliesPolicy.equals(repliesPolicy)) { @@ -96,6 +97,7 @@ public class ListTimelineFragment extends PinnableStatusListFragment { new UpdateList(listID, newTitle, editor.getRepliesPolicy()).setCallback(new Callback<>() { @Override public void onSuccess(ListTimeline list) { + if (getActivity() == null) return; setTitle(list.title); listTitle = list.title; repliesPolicy = list.repliesPolicy; @@ -131,6 +133,7 @@ public class ListTimelineFragment extends PinnableStatusListFragment { .setCallback(new SimpleCallback<>(this) { @Override public void onSuccess(List result) { + if (getActivity() == null) return; onDataLoaded(result, !result.isEmpty()); } }) diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/ListTimelinesFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/ListTimelinesFragment.java index 929868c1a..209784368 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/ListTimelinesFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/ListTimelinesFragment.java @@ -140,24 +140,26 @@ public class ListTimelinesFragment extends BaseRecyclerFragment im .setCallback(new SimpleCallback<>(this) { @Override public void onSuccess(List lists) { + if (getActivity() == null) return; for (ListTimeline l : lists) userInListBefore.put(l.id, true); userInList.putAll(userInListBefore); if (profileAccountId == null || !lists.isEmpty()) onDataLoaded(lists, false); if (profileAccountId == null) return; currentRequest=new GetLists().setCallback(new SimpleCallback<>(ListTimelinesFragment.this) { - @Override - public void onSuccess(List allLists) { - List newLists = new ArrayList<>(); - for (ListTimeline l : allLists) { - if (lists.stream().noneMatch(e -> e.id.equals(l.id))) newLists.add(l); - if (!userInListBefore.containsKey(l.id)) { - userInListBefore.put(l.id, false); - } - } - userInList.putAll(userInListBefore); - onDataLoaded(newLists, false); - } + @Override + public void onSuccess(List allLists) { + if (getActivity() == null) return; + List newLists = new ArrayList<>(); + for (ListTimeline l : allLists) { + if (lists.stream().noneMatch(e -> e.id.equals(l.id))) newLists.add(l); + if (!userInListBefore.containsKey(l.id)) { + userInListBefore.put(l.id, false); + } + } + userInList.putAll(userInListBefore); + onDataLoaded(newLists, false); + } }).exec(accountId); } }) diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/NotificationsFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/NotificationsFragment.java index 1af34399f..c3eaf1ff4 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/NotificationsFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/NotificationsFragment.java @@ -195,6 +195,7 @@ public class NotificationsFragment extends MastodonToolbarFragment implements Sc new GetFollowRequests(null, 1).setCallback(new Callback<>() { @Override public void onSuccess(HeaderPaginationList accounts) { + if (getActivity() == null) return; getToolbar().getMenu().findItem(R.id.follow_requests).setVisible(!accounts.isEmpty()); } diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/NotificationsListFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/NotificationsListFragment.java index 9f406d5c6..a7a47cb4e 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/NotificationsListFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/NotificationsListFragment.java @@ -130,8 +130,7 @@ public class NotificationsListFragment extends BaseStatusListFragment0 ? maxID : null, count, onlyMentions, onlyPosts, refreshing, new SimpleCallback<>(this){ @Override public void onSuccess(PaginatedResponse> result){ - if(getActivity()==null) - return; + if (getActivity() == null) return; if(refreshing) relationships.clear(); onDataLoaded(result.items.stream().filter(n->n.type!=null).collect(Collectors.toList()), !result.items.isEmpty()); diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/ProfileFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/ProfileFragment.java index ef9721d51..23b91d9a0 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/ProfileFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/ProfileFragment.java @@ -380,6 +380,7 @@ public class ProfileFragment extends LoaderFragment implements OnBackPressedList .setCallback(new SimpleCallback<>(this){ @Override public void onSuccess(Account result){ + if (getActivity() == null) return; account=result; isOwnProfile=AccountSessionManager.getInstance().isSelf(accountID, account); bindHeaderView(); @@ -767,6 +768,7 @@ public class ProfileFragment extends LoaderFragment implements OnBackPressedList } private void updateRelationship(){ + if (getActivity() == null) return; invalidateOptionsMenu(); actionButton.setVisibility(View.VISIBLE); notifyButton.setVisibility(relationship.following ? View.VISIBLE : View.GONE); @@ -780,7 +782,7 @@ public class ProfileFragment extends LoaderFragment implements OnBackPressedList setNote(relationship.note); aboutFragment.setNote(relationship.note, accountID, profileAccountID); } - if (getActivity() != null) notifyButton.setContentDescription(getString(relationship.notifying ? R.string.sk_user_post_notifications_on : R.string.sk_user_post_notifications_off, '@'+account.username)); + notifyButton.setContentDescription(getString(relationship.notifying ? R.string.sk_user_post_notifications_on : R.string.sk_user_post_notifications_off, '@'+account.username)); } public ImageButton getFab() { @@ -867,8 +869,7 @@ public class ProfileFragment extends LoaderFragment implements OnBackPressedList @Override public void onSuccess(Account result){ editModeLoading=false; - if(getActivity()==null) - return; + if (getActivity() == null) return; enterEditMode(result); setActionProgressVisible(false); } @@ -876,8 +877,7 @@ public class ProfileFragment extends LoaderFragment implements OnBackPressedList @Override public void onError(ErrorResponse error){ editModeLoading=false; - if(getActivity()==null) - return; + if (getActivity() == null) return; error.showToast(getActivity()); setActionProgressVisible(false); } @@ -980,6 +980,7 @@ public class ProfileFragment extends LoaderFragment implements OnBackPressedList public void onSuccess(Account result){ account=result; AccountSessionManager.getInstance().updateAccountInfo(accountID, account); + if (getActivity() == null) return; exitEditMode(); setActionProgressVisible(false); } diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/ScheduledStatusListFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/ScheduledStatusListFragment.java index 4a17d51a4..ea9fc0677 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/ScheduledStatusListFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/ScheduledStatusListFragment.java @@ -109,6 +109,7 @@ public class ScheduledStatusListFragment extends BaseStatusListFragment result){ Collections.sort(result, Comparator.comparing((Status s)->s.createdAt).reversed()); + if (getActivity() == null) return; onDataLoaded(result, false); } }) diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/ThreadFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/ThreadFragment.java index 8c7933d2e..da9918ece 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/ThreadFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/ThreadFragment.java @@ -61,8 +61,7 @@ public class ThreadFragment extends StatusListFragment{ .setCallback(new SimpleCallback<>(this){ @Override public void onSuccess(StatusContext result){ - if(getActivity()==null) - return; + if (getActivity() == null) return; if(refreshing){ data.clear(); displayItems.clear(); diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/account_list/BaseAccountListFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/account_list/BaseAccountListFragment.java index b8dd2017b..aea419590 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/account_list/BaseAccountListFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/account_list/BaseAccountListFragment.java @@ -101,6 +101,7 @@ public abstract class BaseAccountListFragment extends BaseRecyclerFragment(this){ @Override public void onSuccess(List result){ + if (getActivity() == null) return; onDataLoaded(result.stream().map(fs->new AccountWrapper(fs.account)).collect(Collectors.toList()), false); loadRelationships(); } @@ -107,6 +108,7 @@ public class DiscoverAccountsFragment extends BaseRecyclerFragment result){ relationshipsRequest=null; relationships=result.stream().collect(Collectors.toMap(rel->rel.id, Function.identity())); + if (getActivity() == null) return; if(list==null) return; for(int i=0;i implements imageRequests=result.stream() .map(card->TextUtils.isEmpty(card.image) ? null : new UrlImageLoaderRequest(card.image, V.dp(150), V.dp(150))) .collect(Collectors.toList()); + if (getActivity() == null) return; onDataLoaded(result, false); } }) diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/DiscoverPostsFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/DiscoverPostsFragment.java index ebf8b7620..f06874a60 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/DiscoverPostsFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/DiscoverPostsFragment.java @@ -21,6 +21,7 @@ public class DiscoverPostsFragment extends StatusListFragment{ .setCallback(new SimpleCallback<>(this){ @Override public void onSuccess(List result){ + if (getActivity() == null) return; onDataLoaded(result, !result.isEmpty()); } }).exec(accountID); diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/FederatedTimelineFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/FederatedTimelineFragment.java index 39b609308..32f5d0603 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/FederatedTimelineFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/FederatedTimelineFragment.java @@ -29,6 +29,7 @@ public class FederatedTimelineFragment extends FabStatusListFragment { public void onSuccess(List result){ if(!result.isEmpty()) maxID=result.get(result.size()-1).id; + if (getActivity() == null) return; onDataLoaded(result.stream().filter(new StatusFilterPredicate(accountID, Filter.FilterContext.PUBLIC)).collect(Collectors.toList()), !result.isEmpty()); } }) diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/LocalTimelineFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/LocalTimelineFragment.java index 77ad5e42f..fb2a2ac22 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/LocalTimelineFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/LocalTimelineFragment.java @@ -29,6 +29,7 @@ public class LocalTimelineFragment extends FabStatusListFragment { public void onSuccess(List result){ if(!result.isEmpty()) maxID=result.get(result.size()-1).id; + if (getActivity() == null) return; onDataLoaded(result.stream().filter(new StatusFilterPredicate(accountID, Filter.FilterContext.PUBLIC)).collect(Collectors.toList()), !result.isEmpty()); } }) diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/SearchFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/SearchFragment.java index 42fe63850..74d4643d3 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/SearchFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/SearchFragment.java @@ -157,6 +157,7 @@ public class SearchFragment extends BaseStatusListFragment{ } prevDisplayItems=new ArrayList<>(displayItems); unfilteredResults=results; + if (getActivity() == null) return; onDataLoaded(filterSearchResults(results), false); } diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/TrendingHashtagsFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/TrendingHashtagsFragment.java index 091f3d0bf..4d2d019e3 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/TrendingHashtagsFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/discover/TrendingHashtagsFragment.java @@ -43,6 +43,7 @@ public class TrendingHashtagsFragment extends BaseRecyclerFragment impl .setCallback(new SimpleCallback<>(this){ @Override public void onSuccess(List result){ + if (getActivity() == null) return; onDataLoaded(result, false); } }) diff --git a/mastodon/src/main/java/org/joinmastodon/android/fragments/report/ReportAddPostsChoiceFragment.java b/mastodon/src/main/java/org/joinmastodon/android/fragments/report/ReportAddPostsChoiceFragment.java index f71552e56..f8c2fc050 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/fragments/report/ReportAddPostsChoiceFragment.java +++ b/mastodon/src/main/java/org/joinmastodon/android/fragments/report/ReportAddPostsChoiceFragment.java @@ -89,6 +89,7 @@ public class ReportAddPostsChoiceFragment extends StatusListFragment{ .setCallback(new SimpleCallback<>(this){ @Override public void onSuccess(List result){ + if (getActivity() == null) return; onDataLoaded(result, !result.isEmpty()); } }) diff --git a/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/HeaderStatusDisplayItem.java b/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/HeaderStatusDisplayItem.java index 953fb909c..f959e7ba4 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/HeaderStatusDisplayItem.java +++ b/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/HeaderStatusDisplayItem.java @@ -375,6 +375,7 @@ public class HeaderStatusDisplayItem extends StatusDisplayItem{ public void onSuccess(Object o) { item.consumeReadAnnouncement.accept(item.announcement.id); item.announcement.read = true; + if (item.parentFragment.getActivity() == null) return; rebind(); } @@ -447,6 +448,7 @@ public class HeaderStatusDisplayItem extends StatusDisplayItem{ } private void updateOptionsMenu(){ + if (item.parentFragment.getActivity() == null) return; if (item.announcement != null) return; boolean hasMultipleAccounts = AccountSessionManager.getInstance().getLoggedInAccounts().size() > 1; Menu menu=optionsMenu.getMenu(); diff --git a/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/TextStatusDisplayItem.java b/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/TextStatusDisplayItem.java index f3898cd02..c9a4d3596 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/TextStatusDisplayItem.java +++ b/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/TextStatusDisplayItem.java @@ -166,6 +166,7 @@ public class TextStatusDisplayItem extends StatusDisplayItem{ public void onSuccess(TranslatedStatus translatedStatus) { item.translation = translatedStatus; item.translated = true; + if (item.parentFragment.getActivity() == null) return; translateProgress.setVisibility(View.GONE); translateButton.setClickable(true); translateButton.animate().alpha(1).setInterpolator(CubicBezierInterpolator.DEFAULT).setDuration(50).start(); diff --git a/mastodon/src/main/java/org/joinmastodon/android/ui/utils/UiUtils.java b/mastodon/src/main/java/org/joinmastodon/android/ui/utils/UiUtils.java index eca4a7eb0..e1a8e8110 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/ui/utils/UiUtils.java +++ b/mastodon/src/main/java/org/joinmastodon/android/ui/utils/UiUtils.java @@ -376,6 +376,7 @@ public class UiUtils{ .setCallback(new Callback<>(){ @Override public void onSuccess(Relationship result){ + if (activity == null) return; resultCallback.accept(result); if(!currentlyBlocked){ E.post(new RemoveAccountPostsEvent(accountID, account.id, false)); @@ -404,6 +405,7 @@ public class UiUtils{ new SetAccountBlocked(account.id, false).setCallback(new Callback<>() { @Override public void onSuccess(Relationship relationship) { + if (activity == null) return; Toast.makeText(activity, R.string.sk_remove_follower_success, Toast.LENGTH_SHORT).show(); resultCallback.accept(relationship); } @@ -511,7 +513,7 @@ public class UiUtils{ () -> new DeleteStatus.Scheduled(status.id) .setCallback(new Callback<>(){ @Override - public void onSuccess(Object nothing){ + public void onSuccess(Object o){ resultCallback.run(); E.post(new ScheduledStatusDeletedEvent(status.id, accountID)); }