Minor bugs fixed.

This commit is contained in:
Alex Ning 2020-12-01 19:16:25 +08:00
parent a476d10151
commit ca010f1c01
3 changed files with 28 additions and 13 deletions

View File

@ -295,7 +295,9 @@ public class SearchResultActivity extends BaseActivity implements SortTypeSelect
startActivity(intent); startActivity(intent);
return true; return true;
case R.id.action_refresh_search_result_activity: case R.id.action_refresh_search_result_activity:
sectionsPagerAdapter.refresh(); if (sectionsPagerAdapter != null) {
sectionsPagerAdapter.refresh();
}
return true; return true;
case R.id.action_change_post_layout_search_result_activity: case R.id.action_change_post_layout_search_result_activity:
postLayoutBottomSheetFragment.show(getSupportFragmentManager(), postLayoutBottomSheetFragment.getTag()); postLayoutBottomSheetFragment.show(getSupportFragmentManager(), postLayoutBottomSheetFragment.getTag());
@ -321,7 +323,10 @@ public class SearchResultActivity extends BaseActivity implements SortTypeSelect
@Override @Override
public void sortTypeSelected(SortType sortType) { public void sortTypeSelected(SortType sortType) {
sectionsPagerAdapter.changeSortType(sortType); if (sectionsPagerAdapter != null) {
sectionsPagerAdapter.changeSortType(sortType);
}
} }
@Override @Override
@ -334,12 +339,18 @@ public class SearchResultActivity extends BaseActivity implements SortTypeSelect
@Override @Override
public void searchUserAndSubredditSortTypeSelected(SortType sortType, int fragmentPosition) { public void searchUserAndSubredditSortTypeSelected(SortType sortType, int fragmentPosition) {
sectionsPagerAdapter.changeSortType(sortType, fragmentPosition); if (sectionsPagerAdapter != null) {
sectionsPagerAdapter.changeSortType(sortType, fragmentPosition);
}
} }
@Override @Override
public void postLayoutSelected(int postLayout) { public void postLayoutSelected(int postLayout) {
sectionsPagerAdapter.changePostLayout(postLayout); if (sectionsPagerAdapter != null) {
sectionsPagerAdapter.changePostLayout(postLayout);
}
} }
@Subscribe @Subscribe
@ -349,7 +360,9 @@ public class SearchResultActivity extends BaseActivity implements SortTypeSelect
@Subscribe @Subscribe
public void onChangeNSFWEvent(ChangeNSFWEvent changeNSFWEvent) { public void onChangeNSFWEvent(ChangeNSFWEvent changeNSFWEvent) {
sectionsPagerAdapter.changeNSFW(changeNSFWEvent.nsfw); if (sectionsPagerAdapter != null) {
sectionsPagerAdapter.changeNSFW(changeNSFWEvent.nsfw);
}
} }
@Override @Override

View File

@ -62,9 +62,11 @@ public class ReportReasonRecyclerViewAdapter extends RecyclerView.Adapter<Recycl
} }
public ReportReason getSelectedReason() { public ReportReason getSelectedReason() {
for (ReportReason reportReason : rules) { if (rules != null) {
if (reportReason.isSelected()) { for (ReportReason reportReason : rules) {
return reportReason; if (reportReason.isSelected()) {
return reportReason;
}
} }
} }

View File

@ -323,7 +323,7 @@ public class PostDataSource extends PageKeyedDataSource<String, Post> {
int currentPostsSize = postLinkedHashSet.size(); int currentPostsSize = postLinkedHashSet.size();
postLinkedHashSet.addAll(newPosts); postLinkedHashSet.addAll(newPosts);
if (currentPostsSize == postLinkedHashSet.size()) { if (currentPostsSize == postLinkedHashSet.size()) {
callback.onResult(new ArrayList<>(), lastItem); loadBestPostsAfter(params, callback, lastItem);
} else { } else {
List<Post> newPostsList = new ArrayList<>(postLinkedHashSet).subList(currentPostsSize, postLinkedHashSet.size()); List<Post> newPostsList = new ArrayList<>(postLinkedHashSet).subList(currentPostsSize, postLinkedHashSet.size());
callback.onResult(newPostsList, lastItem); callback.onResult(newPostsList, lastItem);
@ -457,7 +457,7 @@ public class PostDataSource extends PageKeyedDataSource<String, Post> {
int currentPostsSize = postLinkedHashSet.size(); int currentPostsSize = postLinkedHashSet.size();
postLinkedHashSet.addAll(newPosts); postLinkedHashSet.addAll(newPosts);
if (currentPostsSize == postLinkedHashSet.size()) { if (currentPostsSize == postLinkedHashSet.size()) {
callback.onResult(new ArrayList<>(), lastItem); loadSubredditPostsAfter(params, callback, lastItem);
} else { } else {
List<Post> newPostsList = new ArrayList<>(postLinkedHashSet).subList(currentPostsSize, postLinkedHashSet.size()); List<Post> newPostsList = new ArrayList<>(postLinkedHashSet).subList(currentPostsSize, postLinkedHashSet.size());
callback.onResult(newPostsList, lastItem); callback.onResult(newPostsList, lastItem);
@ -589,7 +589,7 @@ public class PostDataSource extends PageKeyedDataSource<String, Post> {
int currentPostsSize = postLinkedHashSet.size(); int currentPostsSize = postLinkedHashSet.size();
postLinkedHashSet.addAll(newPosts); postLinkedHashSet.addAll(newPosts);
if (currentPostsSize == postLinkedHashSet.size()) { if (currentPostsSize == postLinkedHashSet.size()) {
callback.onResult(new ArrayList<>(), lastItem); loadUserPostsAfter(params, callback, lastItem);
} else { } else {
List<Post> newPostsList = new ArrayList<>(postLinkedHashSet).subList(currentPostsSize, postLinkedHashSet.size()); List<Post> newPostsList = new ArrayList<>(postLinkedHashSet).subList(currentPostsSize, postLinkedHashSet.size());
callback.onResult(newPostsList, lastItem); callback.onResult(newPostsList, lastItem);
@ -763,7 +763,7 @@ public class PostDataSource extends PageKeyedDataSource<String, Post> {
int currentPostsSize = postLinkedHashSet.size(); int currentPostsSize = postLinkedHashSet.size();
postLinkedHashSet.addAll(newPosts); postLinkedHashSet.addAll(newPosts);
if (currentPostsSize == postLinkedHashSet.size()) { if (currentPostsSize == postLinkedHashSet.size()) {
callback.onResult(new ArrayList<>(), lastItem); loadSearchPostsAfter(params, callback, lastItem);
} else { } else {
List<Post> newPostsList = new ArrayList<>(postLinkedHashSet).subList(currentPostsSize, postLinkedHashSet.size()); List<Post> newPostsList = new ArrayList<>(postLinkedHashSet).subList(currentPostsSize, postLinkedHashSet.size());
callback.onResult(newPostsList, lastItem); callback.onResult(newPostsList, lastItem);
@ -894,7 +894,7 @@ public class PostDataSource extends PageKeyedDataSource<String, Post> {
int currentPostsSize = postLinkedHashSet.size(); int currentPostsSize = postLinkedHashSet.size();
postLinkedHashSet.addAll(newPosts); postLinkedHashSet.addAll(newPosts);
if (currentPostsSize == postLinkedHashSet.size()) { if (currentPostsSize == postLinkedHashSet.size()) {
callback.onResult(new ArrayList<>(), lastItem); loadMultiRedditPostsAfter(params, callback, lastItem);
} else { } else {
List<Post> newPostsList = new ArrayList<>(postLinkedHashSet).subList(currentPostsSize, postLinkedHashSet.size()); List<Post> newPostsList = new ArrayList<>(postLinkedHashSet).subList(currentPostsSize, postLinkedHashSet.size());
callback.onResult(newPostsList, lastItem); callback.onResult(newPostsList, lastItem);