diff options
author | Alex Ning <chineseperson5@gmail.com> | 2021-09-17 12:47:21 +0000 |
---|---|---|
committer | Alex Ning <chineseperson5@gmail.com> | 2021-09-17 12:47:21 +0000 |
commit | 48a8076fc064a4df1ff1d11c8999e324974f79c7 (patch) | |
tree | 5e9cd2e7992cb03b4f04a077dd315e42f20920eb /app/src/main/java/ml/docilealligator | |
parent | 50a357267985b14894e275ef515778f33b3023af (diff) | |
download | infinity-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.
Diffstat (limited to 'app/src/main/java/ml/docilealligator')
-rw-r--r-- | app/src/main/java/ml/docilealligator/infinityforreddit/adapters/PostRecyclerViewAdapter.java | 76 | ||||
-rw-r--r-- | app/src/main/java/ml/docilealligator/infinityforreddit/fragments/PostFragment.java | 18 |
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(); } |