Fix feed stories not rendered if app goes in background immediately after startup. Fixes austinhuang0131/barinsta#1258

This commit is contained in:
Ammar Githam 2021-05-15 08:21:38 +09:00
parent 7797ca3205
commit 1e94c73e10
2 changed files with 10 additions and 3 deletions

View File

@ -337,6 +337,12 @@ public class FeedFragment extends Fragment implements SwipeRefreshLayout.OnRefre
return super.onOptionsItemSelected(item); return super.onOptionsItemSelected(item);
} }
@Override
public void onResume() {
super.onResume();
binding.getRoot().postDelayed(feedStoriesAdapter::notifyDataSetChanged, 1000);
}
@Override @Override
public void onRefresh() { public void onRefresh() {
binding.feedRecyclerView.refresh(); binding.feedRecyclerView.refresh();
@ -418,15 +424,16 @@ public class FeedFragment extends Fragment implements SwipeRefreshLayout.OnRefre
} }
private void fetchStories() { private void fetchStories() {
if (storiesFetching) return;
// final String cookie = settingsHelper.getString(Constants.COOKIE); // final String cookie = settingsHelper.getString(Constants.COOKIE);
storiesFetching = true; storiesFetching = true;
updateSwipeRefreshState(); updateSwipeRefreshState();
storiesService.getFeedStories(new ServiceCallback<List<FeedStoryModel>>() { storiesService.getFeedStories(new ServiceCallback<List<FeedStoryModel>>() {
@Override @Override
public void onSuccess(final List<FeedStoryModel> result) { public void onSuccess(final List<FeedStoryModel> result) {
storiesFetching = false;
feedStoriesViewModel.getList().postValue(result); feedStoriesViewModel.getList().postValue(result);
feedStoriesAdapter.submitList(result); feedStoriesAdapter.submitList(result);
storiesFetching = false;
if (storyListMenu != null) storyListMenu.setVisible(true); if (storyListMenu != null) storyListMenu.setVisible(true);
updateSwipeRefreshState(); updateSwipeRefreshState();
} }

View File

@ -10,11 +10,11 @@
motion:layout_constraintStart_toStartOf="parent" motion:layout_constraintStart_toStartOf="parent"
motion:layout_constraintTop_toTopOf="parent" /> motion:layout_constraintTop_toTopOf="parent" />
<Constraint <Constraint
android:id="@+id/privatePage"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:visibility="visible"
android:layout_marginTop="@dimen/private_page_margins" android:layout_marginTop="@dimen/private_page_margins"
android:id="@+id/privatePage" android:visibility="visible"
motion:layout_constraintTop_toBottomOf="@+id/header" /> motion:layout_constraintTop_toBottomOf="@+id/header" />
</ConstraintSet> </ConstraintSet>
<ConstraintSet android:id="@+id/end"> <ConstraintSet android:id="@+id/end">