mirror of https://github.com/M66B/FairEmail.git
Limit number of recipients in headers
This commit is contained in:
parent
0a8ede7d57
commit
372f0b1b5e
|
@ -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);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue