From bdb12fd79441f15f33488dea176d9e75a632d0f6 Mon Sep 17 00:00:00 2001 From: stom79 Date: Sat, 1 Sep 2018 12:58:23 +0200 Subject: [PATCH] Fixes broken feature with Twitter usernames --- .../gouv/etalab/mastodon/client/Entities/Status.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/client/Entities/Status.java b/app/src/main/java/fr/gouv/etalab/mastodon/client/Entities/Status.java index b315ad87a..d37ace36e 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/client/Entities/Status.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/client/Entities/Status.java @@ -737,17 +737,17 @@ public class Status implements Parcelable{ spannableStringT = new SpannableString(Html.fromHtml(spannableString.toString())); - matcher = Helper.twitterPattern.matcher(spannableString); + matcher = Helper.twitterPattern.matcher(spannableStringT); while (matcher.find()){ int matchStart = matcher.start(2); int matchEnd = matcher.end(); - final String twittername = spannableString.toString().substring(matchStart, matchEnd); + final String twittername = matcher.group(2); URLSpan[] spans = spannableStringT.getSpans(matchStart, matchEnd, URLSpan.class); for (URLSpan span : spans) { spannableStringT.removeSpan(span); } - if( matchEnd <= spannableString.toString().length() && matchEnd >= matchStart) - spannableString.setSpan(new ClickableSpan() { + if( matchEnd <= spannableStringT.toString().length() && matchEnd >= matchStart) + spannableStringT.setSpan(new ClickableSpan() { @Override public void onClick(View textView) { Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://twitter.com/"+twittername.substring(1).replace("@twitter.com",""))); @@ -759,8 +759,8 @@ public class Status implements Parcelable{ ds.setUnderlineText(false); } }, matchStart, matchEnd, Spanned.SPAN_INCLUSIVE_EXCLUSIVE); - if( matchEnd <= spannableString.toString().length() && matchEnd >= matchStart) - spannableString.setSpan(new ForegroundColorSpan(ContextCompat.getColor(context, (theme==Helper.THEME_DARK||theme==Helper.THEME_BLACK)?R.color.mastodonC2:R.color.mastodonC4)), matchStart, matchEnd, + if( matchEnd <= spannableStringT.toString().length() && matchEnd >= matchStart) + spannableStringT.setSpan(new ForegroundColorSpan(ContextCompat.getColor(context, (theme==Helper.THEME_DARK||theme==Helper.THEME_BLACK)?R.color.mastodonC2:R.color.mastodonC4)), matchStart, matchEnd, Spanned.SPAN_INCLUSIVE_EXCLUSIVE); }