fix mergable() for /me command.

This commit is contained in:
Michael 2015-01-25 16:29:26 +01:00
parent 90d06d38d6
commit 29331e49b9
3 changed files with 9 additions and 5 deletions

View File

@ -47,6 +47,7 @@ public class Message extends AbstractEntity {
public static final String REMOTE_MSG_ID = "remoteMsgId";
public static final String SERVER_MSG_ID = "serverMsgId";
public static final String RELATIVE_FILE_PATH = "relativeFilePath";
public static final String ME_COMMAND = "/me ";
public boolean markable = false;
protected String conversationUuid;
@ -367,7 +368,8 @@ public class Message extends AbstractEntity {
(message.getTimeSent() - this.getTimeSent()) <= (Config.MESSAGE_MERGE_WINDOW * 1000) &&
!message.bodyContainsDownloadable() &&
!this.bodyContainsDownloadable() &&
!this.body.startsWith("/me ")
!message.getBody().startsWith(ME_COMMAND) &&
!this.getBody().startsWith(ME_COMMAND)
);
}
@ -380,7 +382,7 @@ public class Message extends AbstractEntity {
}
public boolean hasMeCommand() {
return getMergedBody().startsWith("/me ");
return getMergedBody().startsWith(ME_COMMAND);
}
public int getMergedStatus() {

View File

@ -220,7 +220,8 @@ public class MessageAdapter extends ArrayAdapter<Message> {
viewHolder.messageBody.setVisibility(View.VISIBLE);
if (message.getBody() != null) {
final String nick = UIHelper.getMessageDisplayName(message);
final String formattedBody = message.getMergedBody().replaceAll("^/me ", nick + " ");
final String formattedBody = message.getMergedBody().replaceAll("^" + Message.ME_COMMAND,
nick + " ");
if (message.getType() != Message.TYPE_PRIVATE) {
if (message.hasMeCommand()) {
final Spannable span = new SpannableString(formattedBody);

View File

@ -150,8 +150,9 @@ public class UIHelper {
return new Pair<>(getFileDescriptionString(context,message),true);
}
} else {
if (message.getBody().startsWith("/me ")) {
return new Pair<>(message.getBody().replaceAll("^/me ",UIHelper.getMessageDisplayName(message) + " "),false);
if (message.getBody().startsWith(Message.ME_COMMAND)) {
return new Pair<>(message.getBody().replaceAll("^" + Message.ME_COMMAND,
UIHelper.getMessageDisplayName(message) + " "), false);
} else {
return new Pair<>(message.getBody(), false);
}