From d66858abe74b4272aef58cc4871031c180a6638e Mon Sep 17 00:00:00 2001 From: kyori19 Date: Tue, 13 Nov 2018 07:07:47 +0900 Subject: [PATCH] fix link's too large hitbox (#916) * fix link's too large hitbox (tuskyapp#846) * Use zero width space instead of normal space. * Add comment. * Remove unnecessary Html.fromHtml --- .../com/keylesspalace/tusky/util/LinkHelper.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/app/src/main/java/com/keylesspalace/tusky/util/LinkHelper.java b/app/src/main/java/com/keylesspalace/tusky/util/LinkHelper.java index 725cea10..2d3df52b 100644 --- a/app/src/main/java/com/keylesspalace/tusky/util/LinkHelper.java +++ b/app/src/main/java/com/keylesspalace/tusky/util/LinkHelper.java @@ -113,6 +113,18 @@ public class LinkHelper { } builder.removeSpan(span); builder.setSpan(customSpan, start, end, flags); + + /* Add zero-width space after links in end of line to fix its too large hitbox. + * See also : https://github.com/tuskyapp/Tusky/issues/846 + * https://github.com/tuskyapp/Tusky/pull/916 */ + if(end >= builder.length()){ + builder.insert(end, "\u200B"); + } else { + if(builder.subSequence(end, end + 1).toString().equals("\n")){ + builder.insert(end, "\u200B"); + } + } + } view.setText(builder); view.setLinksClickable(true);