From d49c145c94fd15aec22bb774ed5521de7344fbce Mon Sep 17 00:00:00 2001 From: Floens Date: Thu, 20 Aug 2015 20:11:46 +0200 Subject: [PATCH] Use byte length when calculating comment length --- .../java/org/floens/chan/core/presenter/ReplyPresenter.java | 5 ++++- .../src/main/java/org/floens/chan/ui/layout/ReplyLayout.java | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Clover/app/src/main/java/org/floens/chan/core/presenter/ReplyPresenter.java b/Clover/app/src/main/java/org/floens/chan/core/presenter/ReplyPresenter.java index c072d44a..c9aee818 100644 --- a/Clover/app/src/main/java/org/floens/chan/core/presenter/ReplyPresenter.java +++ b/Clover/app/src/main/java/org/floens/chan/core/presenter/ReplyPresenter.java @@ -38,6 +38,7 @@ import org.floens.chan.ui.helper.ImagePickDelegate; import org.floens.chan.ui.layout.CaptchaLayout; import java.io.File; +import java.nio.charset.Charset; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -53,6 +54,7 @@ public class ReplyPresenter implements ReplyManager.HttpCallback, } private static final Pattern QUOTE_PATTERN = Pattern.compile(">>\\d+"); + private static final Charset UTF_8 = Charset.forName("UTF-8"); private ReplyPresenterCallback callback; @@ -246,7 +248,8 @@ public class ReplyPresenter implements ReplyManager.HttpCallback, makeSubmitCall(); } - public void onCommentTextChanged(int length) { + public void onCommentTextChanged(CharSequence text) { + int length = text.toString().getBytes(UTF_8).length; callback.updateCommentCount(length, board.maxCommentChars, length > board.maxCommentChars); } diff --git a/Clover/app/src/main/java/org/floens/chan/ui/layout/ReplyLayout.java b/Clover/app/src/main/java/org/floens/chan/ui/layout/ReplyLayout.java index a65f79f7..a2ffda3e 100644 --- a/Clover/app/src/main/java/org/floens/chan/ui/layout/ReplyLayout.java +++ b/Clover/app/src/main/java/org/floens/chan/ui/layout/ReplyLayout.java @@ -391,7 +391,7 @@ public class ReplyLayout extends LoadView implements View.OnClickListener, Anima @Override public void afterTextChanged(Editable s) { - presenter.onCommentTextChanged(comment.length()); + presenter.onCommentTextChanged(comment.getText()); } @Override