mirror of
https://github.com/Docile-Alligator/Infinity-For-Reddit.git
synced 2026-02-23 03:55:54 +00:00
Refresh CommentsListingRecyclerViewAdapter after network changes. Fix wrong post opens after on click performed on ImageAndGifBlock.
This commit is contained in:
@ -563,7 +563,7 @@ public class CommentsListingRecyclerViewAdapter extends PagedListAdapter<Comment
|
||||
}
|
||||
if (canStartActivity) {
|
||||
canStartActivity = false;
|
||||
itemView.callOnClick();
|
||||
itemView.performClick();
|
||||
}
|
||||
});
|
||||
commentMarkdownView.setAdapter(markwonAdapter);
|
||||
|
||||
@ -433,7 +433,25 @@ public class CommentsListingFragment extends Fragment implements FragmentCommuni
|
||||
String dataSavingMode = mSharedPreferences.getString(SharedPreferencesUtils.DATA_SAVING_MODE, SharedPreferencesUtils.DATA_SAVING_MODE_OFF);
|
||||
if (dataSavingMode.equals(SharedPreferencesUtils.DATA_SAVING_MODE_ONLY_ON_CELLULAR_DATA)) {
|
||||
mAdapter.setDataSavingMode(changeNetworkStatusEvent.connectedNetwork == Utils.NETWORK_TYPE_CELLULAR);
|
||||
refreshAdapter(mCommentRecyclerView, mAdapter);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void refreshAdapter(RecyclerView recyclerView, RecyclerView.Adapter<RecyclerView.ViewHolder> adapter) {
|
||||
int previousPosition = -1;
|
||||
if (recyclerView.getLayoutManager() != null) {
|
||||
previousPosition = ((LinearLayoutManagerBugFixed) recyclerView.getLayoutManager()).findFirstVisibleItemPosition();
|
||||
}
|
||||
|
||||
RecyclerView.LayoutManager layoutManager = recyclerView.getLayoutManager();
|
||||
recyclerView.setAdapter(null);
|
||||
recyclerView.setLayoutManager(null);
|
||||
recyclerView.setAdapter(adapter);
|
||||
recyclerView.setLayoutManager(layoutManager);
|
||||
|
||||
if (previousPosition > 0) {
|
||||
recyclerView.scrollToPosition(previousPosition);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user