From 873711939dc4cfafc9d6240841a4ed471d045f36 Mon Sep 17 00:00:00 2001 From: Grishka Date: Sat, 20 Apr 2024 06:51:30 +0300 Subject: [PATCH] Post header tap area thing (AND-160) --- .../displayitems/HeaderStatusDisplayItem.java | 10 +++++---- .../displayitems/TextStatusDisplayItem.java | 2 +- .../main/res/drawable/bg_status_header.xml | 9 ++++++++ .../main/res/layout/display_item_header.xml | 22 ++++++++++++++++--- 4 files changed, 35 insertions(+), 8 deletions(-) create mode 100644 mastodon/src/main/res/drawable/bg_status_header.xml diff --git a/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/HeaderStatusDisplayItem.java b/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/HeaderStatusDisplayItem.java index 8b2a056c..c998434e 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/HeaderStatusDisplayItem.java +++ b/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/HeaderStatusDisplayItem.java @@ -119,6 +119,7 @@ public class HeaderStatusDisplayItem extends StatusDisplayItem{ private final TextView name, timeAndUsername, extraText; private final ImageView avatar, more; private final PopupMenu optionsMenu; + private final View clickableThing; public Holder(Activity activity, ViewGroup parent){ this(activity, R.layout.display_item_header, parent); @@ -131,7 +132,8 @@ public class HeaderStatusDisplayItem extends StatusDisplayItem{ avatar=findViewById(R.id.avatar); more=findViewById(R.id.more); extraText=findViewById(R.id.extra_text); - avatar.setOnClickListener(this::onAvaClick); + clickableThing=findViewById(R.id.clickable_thing); + clickableThing.setOnClickListener(this::onAvaClick); avatar.setOutlineProvider(OutlineProviders.roundedRect(10)); avatar.setClipToOutline(true); more.setOnClickListener(this::onMoreClick); @@ -262,7 +264,7 @@ public class HeaderStatusDisplayItem extends StatusDisplayItem{ time=item.parentFragment.getString(R.string.edited_timestamp, UiUtils.formatRelativeTimestamp(itemView.getContext(), item.status.editedAt)); timeAndUsername.setText(time+" ยท @"+item.user.acct); - itemView.setPadding(itemView.getPaddingLeft(), itemView.getPaddingTop(), itemView.getPaddingRight(), item.needBottomPadding ? V.dp(16) : 0); + itemView.setPadding(itemView.getPaddingLeft(), itemView.getPaddingTop(), itemView.getPaddingRight(), item.needBottomPadding ? V.dp(16) : V.dp(4)); if(TextUtils.isEmpty(item.extraText)){ extraText.setVisibility(View.GONE); }else{ @@ -270,8 +272,8 @@ public class HeaderStatusDisplayItem extends StatusDisplayItem{ extraText.setText(item.extraText); } more.setVisibility(item.inset ? View.GONE : View.VISIBLE); - avatar.setClickable(!item.inset); - avatar.setContentDescription(item.parentFragment.getString(R.string.avatar_description, item.user.acct)); + clickableThing.setClickable(!item.inset); + clickableThing.setContentDescription(item.parentFragment.getString(R.string.avatar_description, item.user.acct)); } @Override diff --git a/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/TextStatusDisplayItem.java b/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/TextStatusDisplayItem.java index d7959c16..7466873f 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/TextStatusDisplayItem.java +++ b/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/TextStatusDisplayItem.java @@ -94,7 +94,7 @@ public class TextStatusDisplayItem extends StatusDisplayItem{ text.setTextIsSelectable(item.textSelectable); text.setInvalidateOnEveryFrame(false); itemView.setClickable(false); - text.setPadding(text.getPaddingLeft(), item.reduceTopPadding ? V.dp(8) : V.dp(16), text.getPaddingRight(), text.getPaddingBottom()); + text.setPadding(text.getPaddingLeft(), item.reduceTopPadding ? V.dp(8) : V.dp(12), text.getPaddingRight(), text.getPaddingBottom()); text.setTextColor(UiUtils.getThemeColor(text.getContext(), item.inset ? R.attr.colorM3OnSurfaceVariant : R.attr.colorM3OnSurface)); updateTranslation(false); } diff --git a/mastodon/src/main/res/drawable/bg_status_header.xml b/mastodon/src/main/res/drawable/bg_status_header.xml new file mode 100644 index 00000000..b2d14174 --- /dev/null +++ b/mastodon/src/main/res/drawable/bg_status_header.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/mastodon/src/main/res/layout/display_item_header.xml b/mastodon/src/main/res/layout/display_item_header.xml index 9151d986..80b8714c 100644 --- a/mastodon/src/main/res/layout/display_item_header.xml +++ b/mastodon/src/main/res/layout/display_item_header.xml @@ -4,8 +4,9 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingTop="16dp" - android:paddingRight="16dp" - android:paddingLeft="16dp"> + android:paddingHorizontal="16dp" + android:paddingBottom="4dp" + android:clipToPadding="false"> + + + android:layout_marginEnd="8dp" + android:importantForAccessibility="no"/>