Commit 5a804fd8 authored by Thomas's avatar Thomas
Browse files

Improve link side effect with Markdown

parent c9a86aae
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -40,10 +40,12 @@ public class MarkdownConverter {

        public int regexPosition(List<MarkdownItem> markdownItems) {
            int position = 0;
            int loopedPosition = 0;
            for (MarkdownItem markdownItem : markdownItems) {
                if (markdownItem.code.equals(code) && position <= this.position) {
                if (markdownItem.code.equals(code) && loopedPosition <= this.position) {
                    position++;
                }
                loopedPosition++;
            }
            return position;
        }
+6 −1
Original line number Diff line number Diff line
@@ -191,8 +191,13 @@ public class SpannableHelper {
            final Spanned markdown = markwon.toMarkdown(initialContent.toString());
            content = new SpannableStringBuilder(markdown);
            position = 0;

            for (MarkdownConverter.MarkdownItem markdownItem : markdownConverter.markdownItems) {
                Pattern p = Pattern.compile("(" + Pattern.quote(markdownItem.code) + ")", Pattern.CASE_INSENSITIVE);

                String sb = Pattern.compile("\\A[A-Za-z0-9_]").matcher(markdownItem.code).find() ? "\\b" : "";
                String eb = Pattern.compile("[A-Za-z0-9_]\\z").matcher(markdownItem.code).find() ? "\\b" : "\\B";

                Pattern p = Pattern.compile(sb + "(" + Pattern.quote(markdownItem.code) + ")" + eb, Pattern.CASE_INSENSITIVE);
                Matcher m = p.matcher(content);
                int fetchPosition = 1;
                while (m.find()) {