mirror of
https://github.com/signalapp/Signal-Android.git
synced 2025-12-23 12:38:33 +00:00
Add content description to DeliveryStatusView.
This commit is contained in:
committed by
Cody Henthorne
parent
8ce05c8bbe
commit
98ec2cceb4
@@ -12,6 +12,7 @@ import android.view.animation.LinearInterpolator;
|
|||||||
import android.view.animation.RotateAnimation;
|
import android.view.animation.RotateAnimation;
|
||||||
|
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
|
import androidx.annotation.StringRes;
|
||||||
import androidx.appcompat.widget.AppCompatImageView;
|
import androidx.appcompat.widget.AppCompatImageView;
|
||||||
|
|
||||||
import org.signal.core.util.DimensionUnit;
|
import org.signal.core.util.DimensionUnit;
|
||||||
@@ -133,6 +134,7 @@ public class DeliveryStatusView extends AppCompatImageView {
|
|||||||
state = State.NONE;
|
state = State.NONE;
|
||||||
clearAnimation();
|
clearAnimation();
|
||||||
setVisibility(View.GONE);
|
setVisibility(View.GONE);
|
||||||
|
updateContentDescription();
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isPending() {
|
public boolean isPending() {
|
||||||
@@ -145,6 +147,7 @@ public class DeliveryStatusView extends AppCompatImageView {
|
|||||||
ViewUtil.setPaddingStart(this, 0);
|
ViewUtil.setPaddingStart(this, 0);
|
||||||
ViewUtil.setPaddingEnd(this, horizontalPadding);
|
ViewUtil.setPaddingEnd(this, horizontalPadding);
|
||||||
setImageResource(R.drawable.ic_delivery_status_sending);
|
setImageResource(R.drawable.ic_delivery_status_sending);
|
||||||
|
updateContentDescription();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSent() {
|
public void setSent() {
|
||||||
@@ -154,6 +157,7 @@ public class DeliveryStatusView extends AppCompatImageView {
|
|||||||
ViewUtil.setPaddingEnd(this, 0);
|
ViewUtil.setPaddingEnd(this, 0);
|
||||||
clearAnimation();
|
clearAnimation();
|
||||||
setImageResource(R.drawable.ic_delivery_status_sent);
|
setImageResource(R.drawable.ic_delivery_status_sent);
|
||||||
|
updateContentDescription();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDelivered() {
|
public void setDelivered() {
|
||||||
@@ -163,6 +167,7 @@ public class DeliveryStatusView extends AppCompatImageView {
|
|||||||
ViewUtil.setPaddingEnd(this, 0);
|
ViewUtil.setPaddingEnd(this, 0);
|
||||||
clearAnimation();
|
clearAnimation();
|
||||||
setImageResource(R.drawable.ic_delivery_status_delivered);
|
setImageResource(R.drawable.ic_delivery_status_delivered);
|
||||||
|
updateContentDescription();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setRead() {
|
public void setRead() {
|
||||||
@@ -172,23 +177,36 @@ public class DeliveryStatusView extends AppCompatImageView {
|
|||||||
ViewUtil.setPaddingEnd(this, 0);
|
ViewUtil.setPaddingEnd(this, 0);
|
||||||
clearAnimation();
|
clearAnimation();
|
||||||
setImageResource(R.drawable.ic_delivery_status_read);
|
setImageResource(R.drawable.ic_delivery_status_read);
|
||||||
|
updateContentDescription();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setTint(int color) {
|
public void setTint(int color) {
|
||||||
setColorFilter(color);
|
setColorFilter(color);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void updateContentDescription() {
|
||||||
|
if (state.contentDescription == -1) {
|
||||||
|
setContentDescription(null);
|
||||||
|
} else {
|
||||||
|
setContentDescription(getContext().getString(state.contentDescription));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private enum State {
|
private enum State {
|
||||||
NONE(0),
|
NONE(0, -1),
|
||||||
PENDING(1),
|
PENDING(1, R.string.message_details_recipient_header__pending_send),
|
||||||
SENT(2),
|
SENT(2, R.string.message_details_header_sent),
|
||||||
DELIVERED(3),
|
DELIVERED(3, R.string.conversation_item_sent__delivered_description),
|
||||||
READ(4);
|
READ(4, R.string.conversation_item_sent__message_read);
|
||||||
|
|
||||||
final int code;
|
final int code;
|
||||||
|
|
||||||
State(int code) {
|
@StringRes
|
||||||
this.code = code;
|
final int contentDescription;
|
||||||
|
|
||||||
|
State(int code, @StringRes int contentDescription) {
|
||||||
|
this.code = code;
|
||||||
|
this.contentDescription = contentDescription;
|
||||||
}
|
}
|
||||||
|
|
||||||
static State fromCode(int code) {
|
static State fromCode(int code) {
|
||||||
|
|||||||
Reference in New Issue
Block a user