diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/AlertView.java b/app/src/main/java/org/thoughtcrime/securesms/components/AlertView.java
index 3e41116c19..e0a7b2886c 100644
--- a/app/src/main/java/org/thoughtcrime/securesms/components/AlertView.java
+++ b/app/src/main/java/org/thoughtcrime/securesms/components/AlertView.java
@@ -1,23 +1,16 @@
package org.thoughtcrime.securesms.components;
-import android.annotation.TargetApi;
import android.content.Context;
import android.content.res.TypedArray;
-import android.os.Build.VERSION_CODES;
import android.util.AttributeSet;
import android.view.View;
-import android.widget.ImageView;
-import android.widget.LinearLayout;
-import org.signal.core.util.logging.Log;
+import androidx.appcompat.widget.AppCompatImageView;
+import androidx.core.content.ContextCompat;
+
import org.thoughtcrime.securesms.R;
-public class AlertView extends LinearLayout {
-
- private static final String TAG = Log.tag(AlertView.class);
-
- private ImageView approvalIndicator;
- private ImageView failedIndicator;
+public class AlertView extends AppCompatImageView {
public AlertView(Context context) {
this(context, null);
@@ -25,53 +18,38 @@ public class AlertView extends LinearLayout {
public AlertView(Context context, AttributeSet attrs) {
super(context, attrs);
- initialize(attrs);
+ initialize();
}
public AlertView(final Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
- initialize(attrs);
+ initialize();
}
- private void initialize(AttributeSet attrs) {
- inflate(getContext(), R.layout.alert_view, this);
-
- approvalIndicator = findViewById(R.id.pending_approval_indicator);
- failedIndicator = findViewById(R.id.sms_failed_indicator);
-
- if (attrs != null) {
- TypedArray typedArray = getContext().getTheme().obtainStyledAttributes(attrs, R.styleable.AlertView, 0, 0);
- boolean useSmallIcon = typedArray.getBoolean(R.styleable.AlertView_useSmallIcon, false);
- typedArray.recycle();
-
- if (useSmallIcon) {
- int size = getResources().getDimensionPixelOffset(R.dimen.alertview_small_icon_size);
- failedIndicator.getLayoutParams().width = size;
- failedIndicator.getLayoutParams().height = size;
- requestLayout();
- }
- }
+ private void initialize() {
+ setImageResource(R.drawable.symbol_error_circle_compact_16);
+ setScaleType(ScaleType.FIT_CENTER);
}
public void setNone() {
- this.setVisibility(View.GONE);
+ setVisibility(View.GONE);
}
public void setPendingApproval() {
- this.setVisibility(View.VISIBLE);
- approvalIndicator.setVisibility(View.VISIBLE);
- failedIndicator.setVisibility(View.GONE);
+ setVisibility(View.VISIBLE);
+ setColorFilter(ContextCompat.getColor(getContext(), R.color.signal_colorOnSurfaceVariant));
+ setContentDescription(getContext().getString(R.string.conversation_item_sent__pending_approval_description));
}
public void setFailed() {
- this.setVisibility(View.VISIBLE);
- approvalIndicator.setVisibility(View.GONE);
- failedIndicator.setVisibility(View.VISIBLE);
+ setVisibility(View.VISIBLE);
+ setColorFilter(ContextCompat.getColor(getContext(), R.color.signal_colorError));
+ setContentDescription(getContext().getString(R.string.conversation_item_sent__send_failed_indicator_description));
}
public void setRateLimited() {
- this.setVisibility(View.VISIBLE);
- approvalIndicator.setVisibility(View.VISIBLE);
- failedIndicator.setVisibility(View.GONE);
+ setVisibility(View.VISIBLE);
+ setColorFilter(ContextCompat.getColor(getContext(), R.color.signal_colorOnSurfaceVariant));
+ setContentDescription(getContext().getString(R.string.conversation_item_sent__pending_approval_description));
}
}
diff --git a/app/src/main/res/drawable-hdpi/ic_error.webp b/app/src/main/res/drawable-hdpi/ic_error.webp
deleted file mode 100644
index 7d60a6e67b..0000000000
Binary files a/app/src/main/res/drawable-hdpi/ic_error.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-mdpi/ic_error.webp b/app/src/main/res/drawable-mdpi/ic_error.webp
deleted file mode 100644
index c4de1c10a8..0000000000
Binary files a/app/src/main/res/drawable-mdpi/ic_error.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_error.webp b/app/src/main/res/drawable-xhdpi/ic_error.webp
deleted file mode 100644
index f2f243101e..0000000000
Binary files a/app/src/main/res/drawable-xhdpi/ic_error.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-xxhdpi/ic_error.webp b/app/src/main/res/drawable-xxhdpi/ic_error.webp
deleted file mode 100644
index eccb4cd90f..0000000000
Binary files a/app/src/main/res/drawable-xxhdpi/ic_error.webp and /dev/null differ
diff --git a/app/src/main/res/drawable-xxxhdpi/ic_error.webp b/app/src/main/res/drawable-xxxhdpi/ic_error.webp
deleted file mode 100644
index 04af4a3de1..0000000000
Binary files a/app/src/main/res/drawable-xxxhdpi/ic_error.webp and /dev/null differ
diff --git a/app/src/main/res/drawable/symbol_error_circle_compact_16.xml b/app/src/main/res/drawable/symbol_error_circle_compact_16.xml
new file mode 100644
index 0000000000..7894a20398
--- /dev/null
+++ b/app/src/main/res/drawable/symbol_error_circle_compact_16.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
diff --git a/app/src/main/res/layout/alert_view.xml b/app/src/main/res/layout/alert_view.xml
deleted file mode 100644
index 02297292c7..0000000000
--- a/app/src/main/res/layout/alert_view.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/conversation_item_received_multimedia.xml b/app/src/main/res/layout/conversation_item_received_multimedia.xml
index 53fa450904..18b630070b 100644
--- a/app/src/main/res/layout/conversation_item_received_multimedia.xml
+++ b/app/src/main/res/layout/conversation_item_received_multimedia.xml
@@ -284,11 +284,10 @@
+ android:gravity="center_vertical" />
+ android:padding="8dp" />
-
-
-
-