aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Ning <chineseperson5@gmail.com>2021-09-17 12:47:21 +0000
committerAlex Ning <chineseperson5@gmail.com>2021-09-17 12:47:21 +0000
commit48a8076fc064a4df1ff1d11c8999e324974f79c7 (patch)
tree5e9cd2e7992cb03b4f04a077dd315e42f20920eb
parent50a357267985b14894e275ef515778f33b3023af (diff)
downloadinfinity-for-reddit-48a8076fc064a4df1ff1d11c8999e324974f79c7.tar
infinity-for-reddit-48a8076fc064a4df1ff1d11c8999e324974f79c7.tar.gz
infinity-for-reddit-48a8076fc064a4df1ff1d11c8999e324974f79c7.tar.bz2
infinity-for-reddit-48a8076fc064a4df1ff1d11c8999e324974f79c7.tar.lz
infinity-for-reddit-48a8076fc064a4df1ff1d11c8999e324974f79c7.tar.xz
infinity-for-reddit-48a8076fc064a4df1ff1d11c8999e324974f79c7.tar.zst
infinity-for-reddit-48a8076fc064a4df1ff1d11c8999e324974f79c7.zip
Rewrite code related to hiding read posts.
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/adapters/PostRecyclerViewAdapter.java76
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/fragments/PostFragment.java18
2 files changed, 3 insertions, 91 deletions
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/adapters/PostRecyclerViewAdapter.java b/app/src/main/java/ml/docilealligator/infinityforreddit/adapters/PostRecyclerViewAdapter.java
index 39762f79..f1438382 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/adapters/PostRecyclerViewAdapter.java
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/adapters/PostRecyclerViewAdapter.java
@@ -169,7 +169,6 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
private int mVoteAndReplyUnavailableVoteButtonColor;
private int mPostIconAndInfoColor;
private int mDividerColor;
- private int mHideReadPostsIndex = 0;
private float mScale;
private boolean mDisplaySubredditName;
private boolean mVoteButtonsOnTheRight;
@@ -453,16 +452,6 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
Post post = getItem(position);
if (post != null) {
if (post.isRead()) {
- if ((mHideReadPostsAutomatically && !post.isHiddenManuallyByUser()) || position < mHideReadPostsIndex) {
- post.hidePostInRecyclerView();
- holder.itemView.setVisibility(View.GONE);
- RecyclerView.LayoutParams params = (RecyclerView.LayoutParams) holder.itemView.getLayoutParams();
- params.height = 0;
- params.topMargin = 0;
- params.bottomMargin = 0;
- holder.itemView.setLayoutParams(params);
- return;
- }
if (((PostBaseViewHolder) holder).itemViewIsNotCardView) {
holder.itemView.setBackgroundColor(mReadPostCardViewBackgroundColor);
} else {
@@ -950,14 +939,6 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
Post post = getItem(position);
if (post != null) {
if (post.isRead()) {
- if ((mHideReadPostsAutomatically && !post.isHiddenManuallyByUser()) || position < mHideReadPostsIndex) {
- post.hidePostInRecyclerView();
- holder.itemView.setVisibility(View.GONE);
- ViewGroup.LayoutParams params = holder.itemView.getLayoutParams();
- params.height = 0;
- holder.itemView.setLayoutParams(params);
- return;
- }
holder.itemView.setBackgroundColor(mReadPostCardViewBackgroundColor);
((PostCompactBaseViewHolder) holder).titleTextView.setTextColor(mReadPostTitleColor);
}
@@ -1280,16 +1261,6 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
Post post = getItem(position);
if (post != null) {
if (post.isRead()) {
- if ((mHideReadPostsAutomatically && !post.isHiddenManuallyByUser()) || position < mHideReadPostsIndex) {
- post.hidePostInRecyclerView();
- holder.itemView.setVisibility(View.GONE);
- RecyclerView.LayoutParams params = (RecyclerView.LayoutParams) holder.itemView.getLayoutParams();
- params.height = 0;
- params.topMargin = 0;
- params.bottomMargin = 0;
- holder.itemView.setLayoutParams(params);
- return;
- }
holder.itemView.setBackgroundTintList(ColorStateList.valueOf(mReadPostCardViewBackgroundColor));
((PostGalleryViewHolder) holder).titleTextView.setTextColor(mReadPostTitleColor);
}
@@ -1700,18 +1671,6 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
mShowAbsoluteNumberOfVotes = showAbsoluteNumberOfVotes;
}
- public int getHideReadPostsIndex() {
- return mHideReadPostsIndex;
- }
-
- public void setHideReadPostsIndex(int hideReadPostsIndex) {
- mHideReadPostsIndex = hideReadPostsIndex;
- }
-
- public void prepareToHideReadPosts() {
- mHideReadPostsIndex = getItemCount();
- }
-
public int getNextItemPositionWithoutBeingHidden(int fromPosition) {
int temp = fromPosition;
while (temp >= 0 && temp < super.getItemCount()) {
@@ -1813,21 +1772,6 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
((PostBaseViewHolder) holder).markPostRead(post, false);
}
}
- holder.itemView.setVisibility(View.VISIBLE);
- RecyclerView.LayoutParams params = (RecyclerView.LayoutParams) holder.itemView.getLayoutParams();
- params.height = ViewGroup.LayoutParams.WRAP_CONTENT;
- if (holder instanceof PostCard2VideoAutoplayViewHolder || holder instanceof PostCard2WithPreviewViewHolder) {
- int paddingPixel = (int) Utils.convertDpToPixel(16, mActivity);
- holder.itemView.setPadding(0, paddingPixel, 0, 0);
- } else if (holder instanceof PostCard2TextTypeViewHolder) {
- int paddingPixel = (int) Utils.convertDpToPixel(12, mActivity);
- holder.itemView.setPadding(0, paddingPixel, 0, 0);
- } else {
- int marginPixel = (int) Utils.convertDpToPixel(8, mActivity);
- params.topMargin = marginPixel;
- params.bottomMargin = marginPixel;
- }
- holder.itemView.setLayoutParams(params);
if (((PostBaseViewHolder) holder).itemViewIsNotCardView) {
holder.itemView.setBackgroundColor(mCardViewBackgroundColor);
} else {
@@ -1902,11 +1846,7 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
((PostCompactBaseViewHolder) holder).markPostRead(post, false);
}
}
- ((PostCompactBaseViewHolder) holder).itemView.setVisibility(View.VISIBLE);
- ViewGroup.LayoutParams params = holder.itemView.getLayoutParams();
- params.height = ViewGroup.LayoutParams.WRAP_CONTENT;
- holder.itemView.setLayoutParams(params);
- ((PostCompactBaseViewHolder) holder).itemView.setBackgroundColor(mCardViewBackgroundColor);
+ holder.itemView.setBackgroundColor(mCardViewBackgroundColor);
((PostCompactBaseViewHolder) holder).titleTextView.setTextColor(mPostTitleColor);
mGlide.clear(((PostCompactBaseViewHolder) holder).imageView);
mGlide.clear(((PostCompactBaseViewHolder) holder).iconGifImageView);
@@ -1937,14 +1877,7 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
((PostGalleryViewHolder) holder).markPostRead(post, false);
}
}
- ((PostGalleryViewHolder) holder).itemView.setVisibility(View.VISIBLE);
- RecyclerView.LayoutParams params = (RecyclerView.LayoutParams) holder.itemView.getLayoutParams();
- params.height = ViewGroup.LayoutParams.WRAP_CONTENT;
- int marginPixel = (int) Utils.convertDpToPixel(8, mActivity);
- params.topMargin = marginPixel;
- params.bottomMargin = marginPixel;
- holder.itemView.setLayoutParams(params);
- ((PostGalleryViewHolder) holder).itemView.setBackgroundTintList(ColorStateList.valueOf(mCardViewBackgroundColor));
+ holder.itemView.setBackgroundTintList(ColorStateList.valueOf(mCardViewBackgroundColor));
((PostGalleryViewHolder) holder).titleTextView.setText("");
((PostGalleryViewHolder) holder).titleTextView.setVisibility(View.GONE);
@@ -2636,7 +2569,6 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
if (mActivity != null && mActivity instanceof MarkPostAsReadInterface) {
((MarkPostAsReadInterface) mActivity).markPostAsRead(post);
}
- mFragment.addCurrentlyReadPostId(post.getId());
}
}
}
@@ -3249,7 +3181,7 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
itemView.setOnLongClickListener(view -> {
if (mLongPressToHideToolbarInCompactLayout) {
if (bottomConstraintLayout.getLayoutParams().height == 0) {
- ViewGroup.LayoutParams params = (LinearLayout.LayoutParams) bottomConstraintLayout.getLayoutParams();
+ ViewGroup.LayoutParams params = bottomConstraintLayout.getLayoutParams();
params.height = LinearLayout.LayoutParams.WRAP_CONTENT;
bottomConstraintLayout.setLayoutParams(params);
mCallback.delayTransition();
@@ -3621,7 +3553,6 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
if (mActivity != null && mActivity instanceof MarkPostAsReadInterface) {
((MarkPostAsReadInterface) mActivity).markPostAsRead(post);
}
- mFragment.addCurrentlyReadPostId(post.getId());
}
}
}
@@ -3856,7 +3787,6 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
if (mActivity != null && mActivity instanceof MarkPostAsReadInterface) {
((MarkPostAsReadInterface) mActivity).markPostAsRead(post);
}
- mFragment.addCurrentlyReadPostId(post.getId());
}
}
}
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/fragments/PostFragment.java b/app/src/main/java/ml/docilealligator/infinityforreddit/fragments/PostFragment.java
index 307bbd52..5d2af420 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/fragments/PostFragment.java
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/fragments/PostFragment.java
@@ -157,7 +157,6 @@ public class PostFragment extends Fragment implements FragmentCommunicator {
private static final String IS_IN_LAZY_MODE_STATE = "IILMS";
private static final String RECYCLER_VIEW_POSITION_STATE = "RVPS";
private static final String READ_POST_LIST_STATE = "RPLS";
- private static final String HIDE_READ_POSTS_INDEX_STATE = "HRPIS";
private static final String POST_FILTER_STATE = "PFS";
private static final String CONCATENATED_SUBREDDIT_NAMES_STATE = "CSNS";
private static final String POST_FRAGMENT_ID_STATE = "PFIS";
@@ -253,7 +252,6 @@ public class PostFragment extends Fragment implements FragmentCommunicator {
private float swipeActionThreshold;
private ItemTouchHelper touchHelper;
private ArrayList<ReadPost> readPosts;
- private Set<String> currentlyReadPostIds = new HashSet<>();
private Unbinder unbinder;
private Map<String, String> subredditOrUserIcons = new HashMap<>();
@@ -391,13 +389,11 @@ public class PostFragment extends Fragment implements FragmentCommunicator {
mSwipeRefreshLayout.setOnRefreshListener(this::refresh);
int recyclerViewPosition = 0;
- int hideReadPostsIndex = 0;
if (savedInstanceState != null) {
recyclerViewPosition = savedInstanceState.getInt(RECYCLER_VIEW_POSITION_STATE);
isInLazyMode = savedInstanceState.getBoolean(IS_IN_LAZY_MODE_STATE);
readPosts = savedInstanceState.getParcelableArrayList(READ_POST_LIST_STATE);
- hideReadPostsIndex = savedInstanceState.getInt(HIDE_READ_POSTS_INDEX_STATE, 0);
postFilter = savedInstanceState.getParcelable(POST_FILTER_STATE);
concatenatedSubredditNames = savedInstanceState.getString(CONCATENATED_SUBREDDIT_NAMES_STATE);
postFragmentId = savedInstanceState.getLong(POST_FRAGMENT_ID_STATE);
@@ -842,8 +838,6 @@ public class PostFragment extends Fragment implements FragmentCommunicator {
mPostRecyclerView.scrollToPosition(recyclerViewPosition);
}
- mAdapter.setHideReadPostsIndex(hideReadPostsIndex);
-
if (activity instanceof ActivityToolbarInterface) {
((ActivityToolbarInterface) activity).displaySortType();
}
@@ -872,7 +866,6 @@ public class PostFragment extends Fragment implements FragmentCommunicator {
postFilter.allowNSFW = !mSharedPreferences.getBoolean(SharedPreferencesUtils.DISABLE_NSFW_FOREVER, false) && mNsfwAndSpoilerSharedPreferences.getBoolean(accountName + SharedPreferencesUtils.NSFW_BASE, false);
}
this.readPosts = readPostList;
- currentlyReadPostIds.addAll(Lists.transform(readPosts, ReadPost::getId));
initializeAndBindPostViewModel(accessToken);
}
});
@@ -1279,9 +1272,6 @@ public class PostFragment extends Fragment implements FragmentCommunicator {
super.onSaveInstanceState(outState);
outState.putBoolean(IS_IN_LAZY_MODE_STATE, isInLazyMode);
outState.putParcelableArrayList(READ_POST_LIST_STATE, readPosts);
- if (mAdapter != null) {
- outState.putInt(HIDE_READ_POSTS_INDEX_STATE, mAdapter.getHideReadPostsIndex());
- }
if (mLinearLayoutManager != null) {
outState.putInt(RECYCLER_VIEW_POSITION_STATE, mLinearLayoutManager.findFirstVisibleItemPosition());
} else if (mStaggeredGridLayoutManager != null) {
@@ -1332,10 +1322,6 @@ public class PostFragment extends Fragment implements FragmentCommunicator {
}
}
- public void addCurrentlyReadPostId(String id) {
- currentlyReadPostIds.add(id);
- }
-
@Override
public void changeNSFW(boolean nsfw) {
postFilter.allowNSFW = !mSharedPreferences.getBoolean(SharedPreferencesUtils.DISABLE_NSFW_FOREVER, false) && nsfw;
@@ -1492,10 +1478,6 @@ public class PostFragment extends Fragment implements FragmentCommunicator {
@Override
public void hideReadPosts() {
- /*if (mAdapter != null) {
- mAdapter.prepareToHideReadPosts();
- refreshAdapter();
- }*/
mPostViewModel.hideReadPosts();
}