Filter self on not replying to self

If this sounds complicated: it is!
This commit is contained in:
M66B 2020-07-04 18:59:17 +02:00
parent e75487f9fa
commit 93022cc19b
1 changed files with 9 additions and 1 deletions

View File

@ -3270,7 +3270,15 @@ public class FragmentCompose extends FragmentBase {
// Prevent replying to self
if (ref.replySelf(data.identities, ref.account)) {
data.draft.from = ref.from;
data.draft.to = ref.to;
List<Address> tos = new ArrayList<>();
if (ref.to != null)
for (Address to : ref.to)
for (EntityIdentity identity : data.identities)
if (!Objects.equals(identity.account, ref.account) ||
!identity.self ||
!identity.similarAddress(to))
tos.add(to);
data.draft.to = (tos.size() == 0 ? null : tos.toArray(new Address[0]));
} else {
data.draft.from = ref.to;
data.draft.to = (ref.reply == null || ref.reply.length == 0 ? ref.from : ref.reply);