|
|
@ -1322,11 +1322,12 @@ public class AdapterMessage extends RecyclerView.Adapter<AdapterMessage.ViewHold
|
|
|
|
MessageHelper.AddressFormat format = email_format;
|
|
|
|
MessageHelper.AddressFormat format = email_format;
|
|
|
|
|
|
|
|
|
|
|
|
if (show_recipients && recipients != null && recipients.length > 0) {
|
|
|
|
if (show_recipients && recipients != null && recipients.length > 0) {
|
|
|
|
|
|
|
|
int maxRecipients = (compact ? MAX_RECIPIENTS_COMPACT : MAX_RECIPIENTS_NORMAL);
|
|
|
|
tvFrom.setText(context.getString(outgoing && viewType != ViewType.THREAD && compact
|
|
|
|
tvFrom.setText(context.getString(outgoing && viewType != ViewType.THREAD && compact
|
|
|
|
? R.string.title_to_from
|
|
|
|
? R.string.title_to_from
|
|
|
|
: R.string.title_from_to,
|
|
|
|
: R.string.title_from_to,
|
|
|
|
MessageHelper.formatAddresses(senders, format, false),
|
|
|
|
formatAddresses(senders, format, maxRecipients),
|
|
|
|
MessageHelper.formatAddresses(recipients, format, false)));
|
|
|
|
formatAddresses(recipients, format, maxRecipients)));
|
|
|
|
} else
|
|
|
|
} else
|
|
|
|
tvFrom.setText(MessageHelper.formatAddresses(senders, format, false));
|
|
|
|
tvFrom.setText(MessageHelper.formatAddresses(senders, format, false));
|
|
|
|
|
|
|
|
|
|
|
@ -2195,6 +2196,21 @@ public class AdapterMessage extends RecyclerView.Adapter<AdapterMessage.ViewHold
|
|
|
|
}.setLog(false).execute(context, owner, sargs, "message:tools");
|
|
|
|
}.setLog(false).execute(context, owner, sargs, "message:tools");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private String formatAddresses(Address[] addresses, MessageHelper.AddressFormat format, int max) {
|
|
|
|
|
|
|
|
List<Address> list = new ArrayList<>();
|
|
|
|
|
|
|
|
if (addresses != null)
|
|
|
|
|
|
|
|
for (Address address : addresses)
|
|
|
|
|
|
|
|
if (!list.contains(address))
|
|
|
|
|
|
|
|
list.add(address);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Address[] sub = list.subList(0, Math.min(list.size(), max)).toArray(new Address[0]);
|
|
|
|
|
|
|
|
String result = MessageHelper.formatAddresses(sub, format, false);
|
|
|
|
|
|
|
|
if (list.size() > sub.length)
|
|
|
|
|
|
|
|
result = context.getString(R.string.title_name_plus, result, list.size() - sub.length);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return result;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private Spanned formatAddresses(Address[] addresses, boolean full) {
|
|
|
|
private Spanned formatAddresses(Address[] addresses, boolean full) {
|
|
|
|
return formatAddresses(addresses, full, Integer.MAX_VALUE);
|
|
|
|
return formatAddresses(addresses, full, Integer.MAX_VALUE);
|
|
|
|
}
|
|
|
|
}
|
|
|
|