diff --git a/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/SpoilerStatusDisplayItem.java b/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/SpoilerStatusDisplayItem.java index 54b755985..722bd5c49 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/SpoilerStatusDisplayItem.java +++ b/mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/SpoilerStatusDisplayItem.java @@ -6,9 +6,9 @@ import android.graphics.drawable.LayerDrawable; import android.text.TextUtils; import android.view.View; import android.view.ViewGroup; +import android.widget.ImageView; import android.widget.TextView; -import org.joinmastodon.android.GlobalUserPreferences; import org.joinmastodon.android.R; import org.joinmastodon.android.fragments.BaseStatusListFragment; import org.joinmastodon.android.model.Status; @@ -29,11 +29,13 @@ public class SpoilerStatusDisplayItem extends StatusDisplayItem{ private final CharSequence parsedTitle; private final CustomEmojiHelper emojiHelper; private final Type type; + private final int attachmentCount; public SpoilerStatusDisplayItem(String parentID, BaseStatusListFragment parentFragment, String title, Status statusForContent, Type type){ super(parentID, parentFragment); this.status=statusForContent; this.type=type; + this.attachmentCount=statusForContent.mediaAttachments.size(); if(TextUtils.isEmpty(title)){ parsedTitle=HtmlParser.parseCustomEmoji(statusForContent.spoilerText, statusForContent.emojis); emojiHelper=new CustomEmojiHelper(); @@ -62,12 +64,14 @@ public class SpoilerStatusDisplayItem extends StatusDisplayItem{ public static class Holder extends StatusDisplayItem.Holder implements ImageLoaderViewHolder{ private final TextView title, action; private final View button; + private final ImageView mediaIcon; public Holder(Context context, ViewGroup parent, Type type){ super(context, R.layout.display_item_spoiler, parent); title=findViewById(R.id.spoiler_title); action=findViewById(R.id.spoiler_action); button=findViewById(R.id.spoiler_button); + mediaIcon=findViewById(R.id.media_icon); button.setOutlineProvider(OutlineProviders.roundedRect(8)); button.setClipToOutline(true); @@ -94,6 +98,10 @@ public class SpoilerStatusDisplayItem extends StatusDisplayItem{ itemView.getPaddingRight(), item.inset ? itemView.getPaddingTop() : 0 ); + mediaIcon.setVisibility(item.attachmentCount > 0 ? View.VISIBLE : View.GONE); + mediaIcon.setImageResource(item.attachmentCount > 1 + ? R.drawable.ic_fluent_image_multiple_24_regular + : R.drawable.ic_fluent_image_24_regular); } @Override diff --git a/mastodon/src/main/res/drawable/ic_fluent_image_multiple_24_regular.xml b/mastodon/src/main/res/drawable/ic_fluent_image_multiple_24_regular.xml new file mode 100644 index 000000000..cae62158a --- /dev/null +++ b/mastodon/src/main/res/drawable/ic_fluent_image_multiple_24_regular.xml @@ -0,0 +1,3 @@ + + + diff --git a/mastodon/src/main/res/layout/display_item_spoiler.xml b/mastodon/src/main/res/layout/display_item_spoiler.xml index 5e5b0fc32..4171087c9 100644 --- a/mastodon/src/main/res/layout/display_item_spoiler.xml +++ b/mastodon/src/main/res/layout/display_item_spoiler.xml @@ -1,5 +1,5 @@ - - - + + + @@ -32,21 +47,14 @@ android:id="@+id/spoiler_action" android:layout_width="match_parent" android:layout_height="20dp" + android:layout_below="@id/spoiler_title" + android:layout_toStartOf="@id/media_icon" android:textAppearance="@style/m3_label_large" android:singleLine="true" android:gravity="center_vertical" android:textColor="?colorM3Primary" tools:text="Re-hide"/> - + - - - \ No newline at end of file + \ No newline at end of file diff --git a/mastodon/src/main/res/values/strings_sk.xml b/mastodon/src/main/res/values/strings_sk.xml index 970baf128..b4f936577 100644 --- a/mastodon/src/main/res/values/strings_sk.xml +++ b/mastodon/src/main/res/values/strings_sk.xml @@ -384,4 +384,5 @@ post posts + Post contains media \ No newline at end of file