From 4ec6666f931f3516cbcecc19f8f7fc0d1409673e Mon Sep 17 00:00:00 2001 From: Balazs Toldi Date: Wed, 16 Aug 2023 19:35:40 +0200 Subject: [PATCH] Make instance names clickable --- .../PostDetailRecyclerViewAdapter.java | 12 ++- .../adapters/PostRecyclerViewAdapter.java | 73 ++++++++----------- 2 files changed, 39 insertions(+), 46 deletions(-) diff --git a/app/src/main/java/eu/toldi/infinityforlemmy/adapters/PostDetailRecyclerViewAdapter.java b/app/src/main/java/eu/toldi/infinityforlemmy/adapters/PostDetailRecyclerViewAdapter.java index 5be3fe0b..ea2ca6b3 100644 --- a/app/src/main/java/eu/toldi/infinityforlemmy/adapters/PostDetailRecyclerViewAdapter.java +++ b/app/src/main/java/eu/toldi/infinityforlemmy/adapters/PostDetailRecyclerViewAdapter.java @@ -1268,16 +1268,18 @@ public class PostDetailRecyclerViewAdapter extends RecyclerView.Adapter mSubredditTextView.performClick()); - mSubredditTextView.setOnClickListener(view -> { + View.OnClickListener communityClickListener = view -> { Intent intent; intent = new Intent(mActivity, ViewSubredditDetailActivity.class); intent.putExtra(ViewSubredditDetailActivity.EXTRA_SUBREDDIT_NAME_KEY, mPost.getSubredditName()); intent.putExtra(ViewSubredditDetailActivity.EXTRA_COMMUNITY_FULL_NAME_KEY, mPost.getSubredditNamePrefixed()); mActivity.startActivity(intent); - }); + }; + mSubredditTextView.setOnClickListener(communityClickListener); + mCommunityInstanceTextView.setOnClickListener(communityClickListener); - mUserTextView.setOnClickListener(view -> { + View.OnClickListener onUserClick = view -> { if (mPost.isAuthorDeleted()) { return; } @@ -1285,7 +1287,9 @@ public class PostDetailRecyclerViewAdapter extends RecyclerView.Adapter mUserTextView.performClick()); diff --git a/app/src/main/java/eu/toldi/infinityforlemmy/adapters/PostRecyclerViewAdapter.java b/app/src/main/java/eu/toldi/infinityforlemmy/adapters/PostRecyclerViewAdapter.java index d63b6d14..4ce7d885 100644 --- a/app/src/main/java/eu/toldi/infinityforlemmy/adapters/PostRecyclerViewAdapter.java +++ b/app/src/main/java/eu/toldi/infinityforlemmy/adapters/PostRecyclerViewAdapter.java @@ -2547,7 +2547,7 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter { + View.OnClickListener onClickListener = view -> { if (!canStartActivity) { return; } @@ -2564,49 +2564,35 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter { + int position = getBindingAdapterPosition(); + if (position < 0) { + return; + } + Post post = getItem(position); + if (post != null) { + if (canStartActivity) { + canStartActivity = false; + Intent intent = new Intent(mActivity, ViewSubredditDetailActivity.class); + intent.putExtra(ViewSubredditDetailActivity.EXTRA_SUBREDDIT_NAME_KEY, + post.getSubredditName()); + intent.putExtra(ViewSubredditDetailActivity.EXTRA_COMMUNITY_FULL_NAME_KEY, + post.getSubredditNamePrefixed()); + mActivity.startActivity(intent); + } + } + }; + communityInstanceTextView.setOnClickListener(onClickListener1); if (mDisplaySubredditName) { - subredditTextView.setOnClickListener(view -> { - int position = getBindingAdapterPosition(); - if (position < 0) { - return; - } - Post post = getItem(position); - if (post != null) { - if (canStartActivity) { - canStartActivity = false; - Intent intent = new Intent(mActivity, ViewSubredditDetailActivity.class); - intent.putExtra(ViewSubredditDetailActivity.EXTRA_SUBREDDIT_NAME_KEY, - post.getSubredditName()); - intent.putExtra(ViewSubredditDetailActivity.EXTRA_COMMUNITY_FULL_NAME_KEY, - post.getSubredditNamePrefixed()); - mActivity.startActivity(intent); - } - } - }); - + subredditTextView.setOnClickListener(onClickListener1); iconGifImageView.setOnClickListener(view -> subredditTextView.performClick()); } else { - subredditTextView.setOnClickListener(view -> { - int position = getBindingAdapterPosition(); - if (position < 0) { - return; - } - Post post = getItem(position); - if (post != null) { - if (canStartActivity) { - canStartActivity = false; - Intent intent = new Intent(mActivity, ViewSubredditDetailActivity.class); - intent.putExtra(ViewSubredditDetailActivity.EXTRA_SUBREDDIT_NAME_KEY, - post.getSubredditName()); - intent.putExtra(ViewSubredditDetailActivity.EXTRA_COMMUNITY_FULL_NAME_KEY, - post.getSubredditNamePrefixed()); - mActivity.startActivity(intent); - } - } - }); - + subredditTextView.setOnClickListener(onClickListener1); iconGifImageView.setOnClickListener(view -> userTextView.performClick()); } @@ -4025,7 +4011,7 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter { + View.OnClickListener onClickListener = view -> { int position = getBindingAdapterPosition(); if (position < 0) { return; @@ -4047,7 +4033,10 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter nameTextView.performClick());