From cc0d264791d7e9ebd996cac23894f00c9355a2d6 Mon Sep 17 00:00:00 2001 From: Christian Schneppe Date: Wed, 2 May 2018 20:59:08 +0200 Subject: highlight search term in search results --- src/main/java/de/pixart/messenger/ui/adapter/MessageAdapter.java | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/main/java/de/pixart/messenger/ui/adapter') diff --git a/src/main/java/de/pixart/messenger/ui/adapter/MessageAdapter.java b/src/main/java/de/pixart/messenger/ui/adapter/MessageAdapter.java index ad9bb8f4a..37eb00b76 100644 --- a/src/main/java/de/pixart/messenger/ui/adapter/MessageAdapter.java +++ b/src/main/java/de/pixart/messenger/ui/adapter/MessageAdapter.java @@ -109,6 +109,8 @@ public class MessageAdapter extends ArrayAdapter implements CopyTextVie + "|(?:\\%[a-fA-F0-9]{2}))+"); boolean isResendable = false; + private String highlightedText = null; + private static final Linkify.TransformFilter WEBURL_TRANSFORM_FILTER = (matcher, url) -> { if (url == null) { return null; @@ -595,6 +597,9 @@ public class MessageAdapter extends ArrayAdapter implements CopyTextVie } } StylingHelper.format(body, viewHolder.messageBody.getCurrentTextColor()); + if (highlightedText != null) { + StylingHelper.highlight(activity, body, highlightedText, StylingHelper.isDarkText(viewHolder.messageBody)); + } Linkify.addLinks(body, XMPP_PATTERN, "xmpp", XMPPURI_MATCH_FILTER, null); Linkify.addLinks(body, Patterns.AUTOLINK_WEB_URL, "http", WEBURL_MATCH_FILTER, WEBURL_TRANSFORM_FILTER); Linkify.addLinks(body, GeoHelper.GEO_URI, "geo"); @@ -1156,6 +1161,10 @@ public class MessageAdapter extends ArrayAdapter implements CopyTextVie } } + public void setHighlightedTerm(String term) { + this.highlightedText = term; + } + public interface OnQuoteListener { void onQuote(String text); } -- cgit v1.2.3