diff options
author | Daniel Gultsch <daniel@gultsch.de> | 2016-02-17 16:51:36 +0100 |
---|---|---|
committer | Daniel Gultsch <daniel@gultsch.de> | 2016-02-17 16:51:36 +0100 |
commit | 59978e157ccbf4717a15238ddb0b0d0d422d7e3f (patch) | |
tree | 1d01b8da5f741afd2c69fbb8fef259257af5d05f /src/main/java/eu/siacs/conversations/entities/Message.java | |
parent | 3626e4b3a0d3d3da4be1bdf7645045d8cf892b50 (diff) |
only offer message correction for the very last message
Diffstat (limited to 'src/main/java/eu/siacs/conversations/entities/Message.java')
-rw-r--r-- | src/main/java/eu/siacs/conversations/entities/Message.java | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/main/java/eu/siacs/conversations/entities/Message.java b/src/main/java/eu/siacs/conversations/entities/Message.java index 1f9212fd..63db9a44 100644 --- a/src/main/java/eu/siacs/conversations/entities/Message.java +++ b/src/main/java/eu/siacs/conversations/entities/Message.java @@ -428,6 +428,21 @@ public class Message extends AbstractEntity { } } + public boolean isLastCorrectableMessage() { + Message next = next(); + while(next != null) { + if (next.isCorrectable()) { + return false; + } + next = next.next(); + } + return isCorrectable(); + } + + private boolean isCorrectable() { + return getStatus() != STATUS_RECEIVED && !isCarbon(); + } + public boolean mergeable(final Message message) { return message != null && (message.getType() == Message.TYPE_TEXT && |