fix content warnings overflowing notifications
This commit is contained in:
@@ -5,8 +5,10 @@ import android.graphics.drawable.Animatable;
|
|||||||
import android.graphics.drawable.Drawable;
|
import android.graphics.drawable.Drawable;
|
||||||
import android.graphics.drawable.LayerDrawable;
|
import android.graphics.drawable.LayerDrawable;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
|
import android.util.TypedValue;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
|
import android.widget.LinearLayout;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
import org.joinmastodon.android.R;
|
import org.joinmastodon.android.R;
|
||||||
@@ -20,6 +22,7 @@ import org.joinmastodon.android.ui.views.LinkedTextView;
|
|||||||
import me.grishka.appkit.imageloader.ImageLoaderViewHolder;
|
import me.grishka.appkit.imageloader.ImageLoaderViewHolder;
|
||||||
import me.grishka.appkit.imageloader.MovieDrawable;
|
import me.grishka.appkit.imageloader.MovieDrawable;
|
||||||
import me.grishka.appkit.imageloader.requests.ImageLoaderRequest;
|
import me.grishka.appkit.imageloader.requests.ImageLoaderRequest;
|
||||||
|
import me.grishka.appkit.utils.V;
|
||||||
|
|
||||||
public class TextStatusDisplayItem extends StatusDisplayItem{
|
public class TextStatusDisplayItem extends StatusDisplayItem{
|
||||||
private CharSequence text;
|
private CharSequence text;
|
||||||
@@ -61,8 +64,10 @@ public class TextStatusDisplayItem extends StatusDisplayItem{
|
|||||||
|
|
||||||
public static class Holder extends StatusDisplayItem.Holder<TextStatusDisplayItem> implements ImageLoaderViewHolder{
|
public static class Holder extends StatusDisplayItem.Holder<TextStatusDisplayItem> implements ImageLoaderViewHolder{
|
||||||
private final LinkedTextView text;
|
private final LinkedTextView text;
|
||||||
|
private final LinearLayout spoilerHeader;
|
||||||
private final TextView spoilerTitle, spoilerTitleInline;
|
private final TextView spoilerTitle, spoilerTitleInline;
|
||||||
private final View spoilerOverlay, spoilerHeader;
|
private final View spoilerOverlay, borderTop, borderBottom;
|
||||||
|
private final Drawable backgroundColor, borderColor;
|
||||||
|
|
||||||
public Holder(Activity activity, ViewGroup parent){
|
public Holder(Activity activity, ViewGroup parent){
|
||||||
super(activity, R.layout.display_item_text, parent);
|
super(activity, R.layout.display_item_text, parent);
|
||||||
@@ -71,7 +76,17 @@ public class TextStatusDisplayItem extends StatusDisplayItem{
|
|||||||
spoilerTitleInline=findViewById(R.id.spoiler_title_inline);
|
spoilerTitleInline=findViewById(R.id.spoiler_title_inline);
|
||||||
spoilerHeader=findViewById(R.id.spoiler_header);
|
spoilerHeader=findViewById(R.id.spoiler_header);
|
||||||
spoilerOverlay=findViewById(R.id.spoiler_overlay);
|
spoilerOverlay=findViewById(R.id.spoiler_overlay);
|
||||||
|
borderTop=findViewById(R.id.border_top);
|
||||||
|
borderBottom=findViewById(R.id.border_bottom);
|
||||||
itemView.setOnClickListener(v->item.parentFragment.onRevealSpoilerClick(this));
|
itemView.setOnClickListener(v->item.parentFragment.onRevealSpoilerClick(this));
|
||||||
|
|
||||||
|
TypedValue outValue=new TypedValue();
|
||||||
|
activity.getTheme().resolveAttribute(R.attr.colorBackgroundLight, outValue, true);
|
||||||
|
backgroundColor=activity.getDrawable(outValue.resourceId);
|
||||||
|
// activity.getTheme().resolveAttribute(R.attr.colorBackgroundLightest, outValue, true);
|
||||||
|
// backgroundColorInset=activity.getDrawable(outValue.resourceId);
|
||||||
|
activity.getTheme().resolveAttribute(R.attr.colorPollVoted, outValue, true);
|
||||||
|
borderColor=activity.getDrawable(outValue.resourceId);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -80,6 +95,10 @@ public class TextStatusDisplayItem extends StatusDisplayItem{
|
|||||||
text.setTextIsSelectable(item.textSelectable);
|
text.setTextIsSelectable(item.textSelectable);
|
||||||
spoilerTitleInline.setTextIsSelectable(item.textSelectable);
|
spoilerTitleInline.setTextIsSelectable(item.textSelectable);
|
||||||
text.setInvalidateOnEveryFrame(false);
|
text.setInvalidateOnEveryFrame(false);
|
||||||
|
spoilerTitleInline.setBackground(item.inset ? null : backgroundColor);
|
||||||
|
spoilerTitleInline.setPadding(spoilerTitleInline.getPaddingLeft(), item.inset ? 0 : V.dp(14), spoilerTitleInline.getPaddingRight(), item.inset ? 0 : V.dp(14));
|
||||||
|
borderTop.setBackground(item.inset ? null : borderColor);
|
||||||
|
borderBottom.setBackground(item.inset ? null : borderColor);
|
||||||
if(!TextUtils.isEmpty(item.status.spoilerText)){
|
if(!TextUtils.isEmpty(item.status.spoilerText)){
|
||||||
spoilerTitle.setText(item.parsedSpoilerText);
|
spoilerTitle.setText(item.parsedSpoilerText);
|
||||||
spoilerTitleInline.setText(item.parsedSpoilerText);
|
spoilerTitleInline.setText(item.parsedSpoilerText);
|
||||||
|
|||||||
@@ -19,6 +19,7 @@
|
|||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content">
|
android:layout_height="wrap_content">
|
||||||
<View
|
<View
|
||||||
|
android:id="@+id/border_top"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="0.5dp"
|
android:layout_height="0.5dp"
|
||||||
android:background="?attr/colorPollVoted"/>
|
android:background="?attr/colorPollVoted"/>
|
||||||
@@ -34,6 +35,7 @@
|
|||||||
tools:text="CW title"/>
|
tools:text="CW title"/>
|
||||||
|
|
||||||
<View
|
<View
|
||||||
|
android:id="@+id/border_bottom"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="0.5dp"
|
android:layout_height="0.5dp"
|
||||||
android:background="?attr/colorPollVoted"/>
|
android:background="?attr/colorPollVoted"/>
|
||||||
|
|||||||
Reference in New Issue
Block a user