From 3011f875eb67afb18c40a4e6c4f95ff69d8c4551 Mon Sep 17 00:00:00 2001 From: Daniel Gultsch Date: Sat, 28 Apr 2018 23:50:35 +0200 Subject: [PATCH] highlight search term in search results --- art/message_bubble_received_warning.svg | 2 +- .../conversations/ui/SearchActivity.java | 2 + .../ui/adapter/MessageAdapter.java | 9 ++++ .../conversations/utils/StylingHelper.java | 51 ++++++++++++++++-- .../res/drawable-hdpi/date_bubble_grey.9.png | Bin 657 -> 657 bytes .../res/drawable-hdpi/date_bubble_white.9.png | Bin 689 -> 689 bytes .../message_bubble_received.9.png | Bin 772 -> 772 bytes .../message_bubble_received_dark.9.png | Bin 773 -> 773 bytes .../message_bubble_received_grey.9.png | Bin 750 -> 750 bytes .../message_bubble_received_warning.9.png | Bin 757 -> 776 bytes .../message_bubble_received_white.9.png | Bin 779 -> 779 bytes .../drawable-hdpi/message_bubble_sent.9.png | Bin 687 -> 687 bytes .../message_bubble_sent_grey.9.png | Bin 707 -> 707 bytes .../res/drawable-mdpi/date_bubble_grey.9.png | Bin 514 -> 514 bytes .../res/drawable-mdpi/date_bubble_white.9.png | Bin 525 -> 525 bytes .../message_bubble_received.9.png | Bin 596 -> 596 bytes .../message_bubble_received_dark.9.png | Bin 617 -> 617 bytes .../message_bubble_received_grey.9.png | Bin 595 -> 595 bytes .../message_bubble_received_warning.9.png | Bin 598 -> 599 bytes .../message_bubble_received_white.9.png | Bin 610 -> 610 bytes .../drawable-mdpi/message_bubble_sent.9.png | Bin 558 -> 558 bytes .../message_bubble_sent_grey.9.png | Bin 568 -> 568 bytes .../res/drawable-xhdpi/date_bubble_grey.9.png | Bin 739 -> 739 bytes .../drawable-xhdpi/date_bubble_white.9.png | Bin 769 -> 769 bytes .../message_bubble_received.9.png | Bin 936 -> 936 bytes .../message_bubble_received_dark.9.png | Bin 926 -> 926 bytes .../message_bubble_received_grey.9.png | Bin 915 -> 915 bytes .../message_bubble_received_warning.9.png | Bin 921 -> 916 bytes .../message_bubble_received_white.9.png | Bin 935 -> 935 bytes .../drawable-xhdpi/message_bubble_sent.9.png | Bin 857 -> 857 bytes .../message_bubble_sent_grey.9.png | Bin 842 -> 842 bytes .../drawable-xxhdpi/date_bubble_grey.9.png | Bin 1072 -> 1072 bytes .../drawable-xxhdpi/date_bubble_white.9.png | Bin 1127 -> 1127 bytes .../message_bubble_received.9.png | Bin 1319 -> 1319 bytes .../message_bubble_received_dark.9.png | Bin 1319 -> 1319 bytes .../message_bubble_received_grey.9.png | Bin 1301 -> 1301 bytes .../message_bubble_received_warning.9.png | Bin 1308 -> 1332 bytes .../message_bubble_received_white.9.png | Bin 1344 -> 1344 bytes .../drawable-xxhdpi/message_bubble_sent.9.png | Bin 1190 -> 1190 bytes .../message_bubble_sent_grey.9.png | Bin 1173 -> 1173 bytes .../drawable-xxxhdpi/date_bubble_grey.9.png | Bin 1392 -> 1392 bytes .../drawable-xxxhdpi/date_bubble_white.9.png | Bin 1430 -> 1430 bytes .../message_bubble_received.9.png | Bin 1713 -> 1713 bytes .../message_bubble_received_dark.9.png | Bin 1691 -> 1691 bytes .../message_bubble_received_grey.9.png | Bin 1670 -> 1670 bytes .../message_bubble_received_warning.9.png | Bin 1674 -> 1696 bytes .../message_bubble_received_white.9.png | Bin 1705 -> 1705 bytes .../message_bubble_sent.9.png | Bin 1499 -> 1499 bytes .../message_bubble_sent_grey.9.png | Bin 1468 -> 1468 bytes 49 files changed, 59 insertions(+), 5 deletions(-) diff --git a/art/message_bubble_received_warning.svg b/art/message_bubble_received_warning.svg index 9353492b5..765ca7041 100644 --- a/art/message_bubble_received_warning.svg +++ b/art/message_bubble_received_warning.svg @@ -140,7 +140,7 @@ transform="translate(0,-2)"> + style="fill:#ad4545;fill-opacity:1;stroke:none;fill-rule:nonzero;filter:url(#filter3811)"> messages) { runOnUiThread(() -> { this.messages.clear(); + messageListAdapter.setHighlightedTerm(term); DateSeparator.addAll(messages); this.messages.addAll(messages); messageListAdapter.notifyDataSetChanged(); diff --git a/src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java b/src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java index a76ca708a..3d7e069f7 100644 --- a/src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java +++ b/src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java @@ -99,6 +99,8 @@ public class MessageAdapter extends ArrayAdapter implements CopyTextVie + "\\;\\/\\?\\@\\&\\=\\#\\~\\-\\.\\+\\!\\*\\'\\(\\)\\,\\_])" + "|(?:\\%[a-fA-F0-9]{2}))+"); + private String highlightedText = null; + private static final Linkify.TransformFilter WEBURL_TRANSFORM_FILTER = (matcher, url) -> { if (url == null) { return null; @@ -548,6 +550,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); @@ -1003,6 +1008,10 @@ public class MessageAdapter extends ArrayAdapter implements CopyTextVie } } + public void setHighlightedTerm(String term) { + this.highlightedText = term; + } + public interface OnQuoteListener { void onQuote(String text); } diff --git a/src/main/java/eu/siacs/conversations/utils/StylingHelper.java b/src/main/java/eu/siacs/conversations/utils/StylingHelper.java index 454844488..84eae1e41 100644 --- a/src/main/java/eu/siacs/conversations/utils/StylingHelper.java +++ b/src/main/java/eu/siacs/conversations/utils/StylingHelper.java @@ -29,22 +29,28 @@ package eu.siacs.conversations.utils; +import android.content.Context; import android.graphics.Color; import android.graphics.Typeface; import android.support.annotation.ColorInt; +import android.support.v4.content.ContextCompat; import android.text.Editable; import android.text.ParcelableSpan; +import android.text.SpannableString; import android.text.Spanned; import android.text.TextWatcher; +import android.text.style.BackgroundColorSpan; import android.text.style.ForegroundColorSpan; import android.text.style.StrikethroughSpan; import android.text.style.StyleSpan; import android.text.style.TypefaceSpan; import android.widget.EditText; +import android.widget.TextView; import java.util.Arrays; import java.util.List; +import eu.siacs.conversations.R; import eu.siacs.conversations.entities.Message; import eu.siacs.conversations.ui.text.QuoteSpan; @@ -67,7 +73,7 @@ public class StylingHelper { } public static void format(final Editable editable, int start, int end, @ColorInt int textColor) { - for (ImStyleParser.Style style : ImStyleParser.parse(editable,start,end)) { + for (ImStyleParser.Style style : ImStyleParser.parse(editable, start, end)) { final int keywordLength = style.getKeyword().length(); editable.setSpan(createSpanForStyle(style), style.getStart() + keywordLength, style.getEnd() - keywordLength + 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); makeKeywordOpaque(editable, style.getStart(), style.getStart() + keywordLength, textColor); @@ -78,11 +84,29 @@ public class StylingHelper { public static void format(final Editable editable, @ColorInt int textColor) { int end = 0; Message.MergeSeparator[] spans = editable.getSpans(0, editable.length() - 1, Message.MergeSeparator.class); - for(Message.MergeSeparator span : spans) { - format(editable,end,editable.getSpanStart(span),textColor); + for (Message.MergeSeparator span : spans) { + format(editable, end, editable.getSpanStart(span), textColor); end = editable.getSpanEnd(span); } - format(editable,end,editable.length() -1,textColor); + format(editable, end, editable.length() - 1, textColor); + } + + public static void highlight(final Context context, final Editable editable, String needle, boolean dark) { + final int length = needle.length(); + String string = editable.toString(); + int start = indexOfIgnoreCase(string, needle, 0); + while (start != -1) { + int end = start + length; + editable.setSpan(new BackgroundColorSpan(ContextCompat.getColor(context, dark ? R.color.deep_purple_a100 : R.color.deep_purple_a200)), start, end, SpannableString.SPAN_EXCLUSIVE_EXCLUSIVE); + editable.setSpan(new ForegroundColorSpan(ContextCompat.getColor(context, dark ? R.color.black87 : R.color.white)), start, end, SpannableString.SPAN_EXCLUSIVE_EXCLUSIVE); + start = indexOfIgnoreCase(string, needle, start + length); + } + + } + + public static boolean isDarkText(TextView textView) { + int argb = textView.getCurrentTextColor(); + return Color.red(argb) + Color.green(argb) + Color.blue(argb) == 0; } private static ParcelableSpan createSpanForStyle(ImStyleParser.Style style) { @@ -114,6 +138,25 @@ public class StylingHelper { return Color.argb(Math.round(Color.alpha(c) * 0.6f), Color.red(c), Color.green(c), Color.blue(c)); } + private static int indexOfIgnoreCase(final String haystack, final String needle, final int start) { + if (haystack == null || needle == null) { + return -1; + } + final int endLimit = haystack.length() - needle.length() + 1; + if (start > endLimit) { + return -1; + } + if (needle.length() == 0) { + return start; + } + for (int i = start; i < endLimit; i++) { + if (haystack.regionMatches(true, i, needle, 0, needle.length())) { + return i; + } + } + return -1; + } + public static class MessageEditorStyler implements TextWatcher { private final EditText mEditText; diff --git a/src/main/res/drawable-hdpi/date_bubble_grey.9.png b/src/main/res/drawable-hdpi/date_bubble_grey.9.png index 24d5c48b2159f16787912747b53a052a5f83c8b3..a45cdd7ed7911bd0a8bff9278bc85cacdcc6bfa5 100644 GIT binary patch delta 69 zcmbQpI+1lkKZh)Xwo>x$R<(`OTNp(wLX3>8OpL9JO|%V+tPBj=GcB5cETNp*mLkvxAbl4WPc`E3<={& L>$@j6Fc|^>{QeY! delta 69 zcmdnUx{-B4KZmq{w$5I^klu~cmoSQ$hZveznHXD{m}naqSs57IKfHI&WPc`E42gB~ LSQREWFc|^>@VXR! diff --git a/src/main/res/drawable-hdpi/message_bubble_received.9.png b/src/main/res/drawable-hdpi/message_bubble_received.9.png index ed1040308e04a83e406361b0e965d529ee55eb00..2cba4cc1d29b21aa6b423159bff3f7942f8e91e4 100644 GIT binary patch delta 93 zcmZo+Yhjzv&mqg8EwOZa%#@AOzcad8gcuoFnHXCcnP?jrSs563AJSB3U|>)!ag8WR jNi0dV%FR#7OsixtGBC8zH89aNLf2q5f8y-PmzfL!1=bqf delta 93 zcmZo+Yhjzv&mk?KtrYdGvTNh??~JbIA%-SaCdO9ACfWu@Rt5%F*|xMYFfgc=xJHzu jB$lLF<>sekrd2W+85mmV8kp!Bp=($Y&0{(FGLs6&^2(Ece72t!ej^lwc!~R delta 93 zcmZo=Yh|0z&mk?Ktrk0b@8pfse=xe5hZveznHXCcTWA{?Ss54zExY%Tfq_A_#5JNM jC9x#cDmOnRGp&-r$iUD-*T6*A2wg++?=;`ZSC|X|PnR4y diff --git a/src/main/res/drawable-hdpi/message_bubble_received_grey.9.png b/src/main/res/drawable-hdpi/message_bubble_received_grey.9.png index 06ef519c1572110753b1c4644ce1165f1cd9a8b4..73ebdbcee285be13ccdfddf101ebd21b7f17fd1a 100644 GIT binary patch delta 69 zcmaFI`i^x%KZh)Xwv_iy+Z`LHKV%fK2r)9UGBLI?GSfCNvNABZ6KlaYxra#>Lt-sM K!=}l5nG6B*ClrnV delta 69 zcmaFI`i^x%KZmq{wzBR=PnnI=A2N!VhZveznHXCcn`#>vSs54<7w$Kl+`}Y`A;F}> K-aC0OlOX`%2NP!i diff --git a/src/main/res/drawable-hdpi/message_bubble_received_warning.9.png b/src/main/res/drawable-hdpi/message_bubble_received_warning.9.png index dd9c5fe09304bf5420edd2ca315cd511c48e0eda..e1ad30541240dab036bbe0cae5a7b7ba3e7bfa7e 100644 GIT binary patch delta 599 zcmey$+QBxVzh0I>TV~O%8NCb)jF&uJ978hhy}fDgf7?N#;p6kK@-70av?fHH2!Fs` z@}lWV|HaOo&Y>!8=XiQTFZO(LPMW~>nAP!*ZUA*BAT)MG-x6XRat z=Sj!UOITj}TeGe7BxhRitn)`d?C9!x7J6r|-qpKznNM%x^W`_H*IIgIYSUxy>wkZ| z`?6)Z^|?OF_SjrA{d-eRuX0zx4EGw(~bRkd3E*gb8_}* zSf1OayJ?!*8u_-hr+@#JZ~yu$@c8%tOw4x=q)p}C!(!H0+9s~Q)_e;S(*ou#jnQrU zJ%d@fHW(e6`i!MULb29l`^z=#3d#|)b`+*KoSQz|b?3PwRwb97r>-*m$1G{Rdx7re zd8-&07*tDKBT7;dOH!?pi&B9UgOP!cp@pu2iLQ}Fh>?+%iLsTDg|>l_m4QJ|l5;SM Yj@u5@0mH}}koMI3#6T3@G4+m@Nt*DTtla&eibzwqZC#p&Ot zo2$=x!g0mzSB`ks>r<0bBRH$Bxh@U3amh5-zjWffiJulSKQBF8e+%y!9-hR{#=m>S-XD(?J3y9yl z$7b)=HOW^c86n6dW2`}jWSTg`ao!u4iHUg?d7zA64J zI)`03r}S@&l`;FU@~Rda!%5c?S;i-4rcZx;bmq*Jp0V*KI1L5W&lKK$RlB%wV|``m z*8lhN_A|-uKeVWe(T91n!@Tvg#ji_8G08i~R|US5sIfi&@($DSMZ z?qayudbIO*=O2Zqm(S{~?CYw`*#9_nfs{QXgY5R*_t~;V85kH;OI#yLQW8s2t&)pU zffR$0fuV)2fr+k>d5EEjm5H&HiGj9(rID3^fp*W#eiR+K`6-!cmDqKFG(=rgG@g8& G$q)c~vi$J? diff --git a/src/main/res/drawable-hdpi/message_bubble_received_white.9.png b/src/main/res/drawable-hdpi/message_bubble_received_white.9.png index 186cdf6bfc39df8cac47b80ed1fbd6ebcb8f3174..8c4a6e23cf2aad970181e26904ed8ba78fce537d 100644 GIT binary patch delta 69 zcmeBX>t>tK&mqg8EqnFu3h9m0|1pYKgcuoFnHXCcS!x>?Ss55;iF!Prypl;4Ln7Ma KL-gcZOojmBh!ms% delta 69 zcmeBX>t>tK&mk?Kt$9{u0n^6m{}@HgLkvxcm<$2eRTUfn diff --git a/src/main/res/drawable-hdpi/message_bubble_sent.9.png b/src/main/res/drawable-hdpi/message_bubble_sent.9.png index 53702a74cae845762f7590d4fc569d98cbf4850a..c7a70a444f4ce722e1730215d6f5fb1a1171ffd5 100644 GIT binary patch delta 69 zcmZ3_x}J4HKZh)Xww%wEp9?omU&JV45n^OyWnye)Y@lsmWMyDbtj@b?vM-Y?h6Gd9 KR2^cGBLI?G14|LvNAB(BiylUvM-Y?hQwJv K1F6Y%Oojm3d=sJo diff --git a/src/main/res/drawable-hdpi/message_bubble_sent_grey.9.png b/src/main/res/drawable-hdpi/message_bubble_sent_grey.9.png index aed42f59d083f18f22e1ddc1e2968442647e1162..32850acdd4bda851dae277151b0c5168c599925f 100644 GIT binary patch delta 69 zcmX@idYE-WKZh)XwnFdLCtMq+Z(|g(2r)9UGBLI?HqtgQvNAAuvO}hMaw3x~hQ!pT LOYA34Vlo5(_bC-9 delta 69 zcmX@idYE-WKZmq{wzjg?LA{OBw=s&ChZveznHU3+wtiV3fs>_+~nh Jb@D|1CPF&mqg8t@vxxl{pKiGm2P*7#Ufa7+V<|Ya19@85lU77dM~0no$-*!g$j9 J?#Xu;4FSlg6gvO_ delta 68 zcmeBW>1CPF&mk?Kt+UrJq<7(TMiKK6LlY|#V=EIAZ381K1B3gA_s*HTno$-*V%zm7AZEnO4bQWMF8aYha>lgs#DA{>0gnm6;3y2bvlg delta 93 zcmcb@a)o6=KZmq{wo=r$%C3#m-5FiYLkvx)!ag8WR jNi0dV%FR#7OsixtGBC8zH89aNLf5b)n#XdoGLs8OpL9J%(V@StPBjQw2XI6W@nPckl-%w KW}9rmWC#G3e-U^9 delta 69 zcmaFK@{(mjKZmq{w#w$IclK|b9>XYN9%5)>Wnye)Y^H5sWMyFBG;`^i$?QzB7!t-u LWCbQ$Fc|^>4gM49 diff --git a/src/main/res/drawable-mdpi/message_bubble_received_grey.9.png b/src/main/res/drawable-mdpi/message_bubble_received_grey.9.png index 8fbf403a31307de209cd936c85944a9d09595f8c..9171c472f6f3ffc2ab307440808ec39a0c4fce82 100644 GIT binary patch delta 69 zcmcc2a+zg9KZh)Xw&bM^IZPX;yD^GbgcuoFnHXCcnQ9vtSs56--KsQs@<&El42d}} LX6a8>Vlo5(>o^p? delta 69 zcmcc2a+zg9KZmq{wzBR=PnnI=-55p8LkvxUhcA;F}> K-aA=|$q)d$%@SPz diff --git a/src/main/res/drawable-mdpi/message_bubble_received_warning.9.png b/src/main/res/drawable-mdpi/message_bubble_received_warning.9.png index b3cbc72946f8044f9b626aea2a3cb48ae8bc4e46..e2cee0dffda4d190fefeb219a066ac99874754e6 100644 GIT binary patch delta 421 zcmcb{a-C&Df4wY&w#=eiGkO^q7!^HT977@wzrAMb$K)t+?BoAEvnm+1EcwzWXjd>e zCHi}ql&FZA$u->KtMcG*HxQepuudf4qiJ%Z&?d=*xv6F9Ez57;Jb6Yx|C#qgb+vD6 zZO#^-Q@bX#-D|0};L6|g?nr!I_;A~uy!}W1cP`z3r^M=f{^iX2%hjP%w3z(O+Ig2X z7B0P=yT?zhe_x@vS1j}NjcLl(zs@%%ZoR(yJX3qB=gE2JA|DGKE;=gP^t8>J=``zf zk!`)z9K7G!rCT|gzgmi`=uDoIsAn*_O2mJIf-=jmH@v%&{+|nay;yb=_gZ`1v!__o zeg%d^uL+CK3@l#j-mI}IvHoU*-fQm$rT~_8GRGf?8#CW)%uh1!dcEM#FUvV)k0la3 z-LBuse10SS#=>Zok2UtLKeP5%EY%cXU|>)!ag8WRNi0dVN-jzTQVd20h8DU8Cb~uz tAx1`4CdO7q7TN|zRt5$=NzTD28glbfGSezS8ln7$B>A_Z?D<=9X60?e|TMf>JEnB>ghVR9L&t= z3H=jR>{2w`P{6gVY~_Ru{{siSRHK60N|Xd{lP3qmu@K6(G=sj!>rqxb4SVr0-K_vgC`mnQZ;GCL@Bcxt0* zlQwts@vlzJwU3`E9!e-Z$I7`{wR#5knKw3F>JbwJnQFhW#co{td0lC0d(N`2XD+RY zNqDB``AFw{yq3e+_mfqQZDOpCy*8b}-GSYrM5bB)jPwT<9gRC0>zcV%KmV{!`Z$C9 zm6Ef6--pz;^~1~;8R3OH7#J8-OI#yLQW8s2t&)pUffR$0fuV)2fr+k> ud5EEjm5H&Hv8A?wk(GhLmWx+iQ8eV{r(~v8f;C8D)p4{Z_vd6aCPM%dOtrfJ diff --git a/src/main/res/drawable-mdpi/message_bubble_received_white.9.png b/src/main/res/drawable-mdpi/message_bubble_received_white.9.png index 3ed7547cc7260148238349067047baac61aad6da..77030a90cf06899100cd754057cccde55e26f708 100644 GIT binary patch delta 68 zcmaFF@`zKhcb$ohZveznHXD{7-}0BSs57g{+?t#iAfei{LeD2 J_Q{4!h5*2$6UqPp diff --git a/src/main/res/drawable-mdpi/message_bubble_sent.9.png b/src/main/res/drawable-mdpi/message_bubble_sent.9.png index 38374f7778be15cabc1a5ea11cc358a842578a8f..a2cc7fb27bbd2e5b464fa345c2a14e9dceb8b6c7 100644 GIT binary patch delta 69 zcmZ3-vW{g!KZh)Xww%wEp9?omS7a2i2r)9UGBLI?HqbUOvNA9zR_9$c`3$2hh6Gd9 KR90hhZveznHXD{7-<_ASs57Y5$;$v`3$2hhQwJv K1F6Y>84Ur>eiRu1 diff --git a/src/main/res/drawable-mdpi/message_bubble_sent_grey.9.png b/src/main/res/drawable-mdpi/message_bubble_sent_grey.9.png index b79eb08eca20b455144aa1bc3af9701d500bed30..0eeb00f3c7660a0bcde4dacec9880659ad5f12b3 100644 GIT binary patch delta 93 zcmdnNvV&zpKZh)Xw!HP_lja+zYcsl9gcuoFnHXCc8)_RESs55y4PcXFU|>)!ag8WR jNi0dV%FR#7OsixtGBC8zH89aNLf5c_ci*DP>`aCL)t4D& delta 93 zcmdnNvV&zpKZmq{wzjg?LA{OBwHaN_LkvxKZh)Xwo>x$R<(`OuQ7^PgcuoFnHXCcn`j#tSs56#XK3!6+{h%0A@R+0 KBJ1Q$OojmK2^3)f delta 69 zcmaFN`j~Y>KZmq{wqCG<>B5cEuQ7_4hZveznHXD{m}wgrSs563#H`smxsgd0L&B0# KgmdyHCPM(%LK5o$ diff --git a/src/main/res/drawable-xhdpi/date_bubble_white.9.png b/src/main/res/drawable-xhdpi/date_bubble_white.9.png index 3b42dc4eefd601b9bdeb05b89615ea89004ae8bf..4af4e3250322e26cd620ac49c44168fdef7c96be 100644 GIT binary patch delta 69 zcmZo{qz+T delta 69 zcmZoRc?MtW?ChKk%6Iwu7QcJ5xRysFJ|daE@w6b03ya4S^xk5 delta 93 zcmZ3%zJh&1KZmq{wo=r$%C3#mXEV8)hZveznHXCcn`j#tSs55yW!uuqz`&qd;u=ws jl30>zm7AZEnO4bQWMF8aYha>lgsx#pG>_%va%MvSG8!6) diff --git a/src/main/res/drawable-xhdpi/message_bubble_received_dark.9.png b/src/main/res/drawable-xhdpi/message_bubble_received_dark.9.png index 23bfa0dfb0fb7f8af7d2abdcfd31479b0541c63c..f06d93c6e114b053db488b46ab01919b9675c659 100644 GIT binary patch delta 69 zcmbQoK97AuKZh)XwzSPYUcHUeCo+jxgcuoFnHXCcnQI#uSs55qX&LXDY{M*zA;DeV K%{Dog*$@DMxDko~ delta 69 zcmbQoK97AuKZmq{wz}4wUe=A%Co+kchZveznHXCcTWT8^Ss55?xp>uevJJB=hQ!gH K+@F(knGFHFsuX_! diff --git a/src/main/res/drawable-xhdpi/message_bubble_received_grey.9.png b/src/main/res/drawable-xhdpi/message_bubble_received_grey.9.png index 363dec55577b7158451d7cb2ca2f0feefbd89fca..b6ca1f78827bf8b6017ae88693cc0e75cbc2d831 100644 GIT binary patch delta 69 zcmbQtKAC+&KZh)Xwv_iy+Z`LHw=s!WgcuoFnHXCcnQ0psSs57IiM8OHY{)E&A+eUB KVbkO!WWnye)Y^H5sWMyFBG;`^i$%f3b7!t-u LWCbQCF&hE^@4pko diff --git a/src/main/res/drawable-xhdpi/message_bubble_received_warning.9.png b/src/main/res/drawable-xhdpi/message_bubble_received_warning.9.png index 7e86cd07815ff1f4cb045d297aa7a91726d77e42..04e47b872957e9a0e71e475330d800f9a6052d6f 100644 GIT binary patch delta 716 zcmV;-0yF)Y2b2epkAEEiD;%QQn2i7c0$xc(K~!ko?b9KrI3x1}44; zQ&B$!Vq#`OsIamCOGktR105LQ1GG}<)Jo~f08&*^b;(rat!`;vd?lp}5Uy>fkmKA+F$GRZ|yeO_ICu9SN1`hR4trS(9=*I^L6c(}Fo zL-HpQs0MK5)5^-)^)P(tdW@Fq_Tu>dJ zsaFCA;{h6ofeE0W?Cov*?DyZg9-YkscmRYLK3zsh5~vGc01TeBS|1L3y?3q$Xe*`E z4WMbT&=M#OjDLYMpbK=@_V?dc2@6Xz3jW6GR1C}br6z@fYGYZ2f@)*U?O&mwrdXGO zf*N9777A*HwFnf{2y0O&s0o%0D5wFJEhwlsmQ5&_f#rITHVSii&S@+~^8c*TXM09v zWmxAVV5KiFC`hm-Bw(d4PpB-@;$uC}AE-n16>7=AndnC}AE-SU^SYbMns5 zC}AE-n1>P;;5Ukj@-s@9hZ5$YgcSl6YaO{B=$vyq6&$7tfjS$FT8=$tb~+yKBDm=; z0xI5Yx7R1KcdpPTTKB#j9lb#SmG=sX0vg{=PR>Wry0^4+x7ldi36yF&28uev;qJ!4 z!PCv-<9|bvZI`2YV0qs|DU$t>H-X#0GUok~g;)W@6sQCA)1PNT<*}|eUAAnMee5oP zYa}z-)s1epI`k`riZIM33OdO_M99IvAuvxj#0000bbVXQnWGG>DWjbSWWnpw>05UK!I4v+VEiyP% yGBP?eGdeOjD=;!TFffc_LsOGC1057NR5CI;G&4FfI4dwRIxsN(Kl|^KXah0)&_*Hv delta 724 zcmV;_0xSKL2bl+ukAE8wD=4}nkdy!b0%J);K~!ko?bdN`F0ZeX`cldZ^+3Cp?RN*Ikd%a=l(0-?+WC^%=uAYhZXHH9Kbc*7o+RZWL|09+~B? zG?jWRa4;UAff$$q`p)j|>#u{sGuNZDSp#kYA%;(vQIZ7e6c_@-yPeL7UEX^qR8|%1YSjI0kDHK#2%PJI98|%#e6$)yK zbsi|FA=Y`Jpk`Q$KtYYL7KMVEVA+6z8erLif{J6=gn|q#*MqcCn8S0R0^M6pnJd`jGCCoz!^H9P9DsrEb zcYa0*^H9P(l&}E5QB;(lQNlcwFb^fH5U5z|$n`+8nri(+aF{9tYB(Nu9D8J++hnqX z;HJ9>sQBIC;imANE3}E${Wk{(8wjBCULjFH67^*+fAno9nt!eNhs*RI z51-HHD|N0fs#z_1fwexa->kk3-hxrGvj6}9C6fgM8AUf#F*G_fGdeUdD=;!TFfc2O znU4Sf03~!qSaf7zbY(hiZ)9m^c>ppnF*q$SG%YeWR53IA5n^OyWnye)WT|anWMyEWCF=2E72q15 delta 93 zcmZ3^zMOqRKZmq{w&q!t1xy>K&th^l4>2^cGBLI?G1N9NvNAB}{XNN=fq_A_#5JNM jC9x#cDmOnRGp&-r$iUD-*T6*A2wlUUWm@f%%a{!T4Fww) diff --git a/src/main/res/drawable-xhdpi/message_bubble_sent.9.png b/src/main/res/drawable-xhdpi/message_bubble_sent.9.png index 6890b361c016cb1f91e529bcf5d6e191715e3988..579ae1d7d851ac559b0fc9d94daf160c2219d102 100644 GIT binary patch delta 69 zcmcb~c9U&FKZh)Xw!HP_lja+z`!I=EgcuoFnHXCc8)_RESs55y4PcX-{GCY_Lt+W< KzD1KYm<<8cO%t~O delta 69 zcmcb~c9U&FKZmq{wpNJl#~mA|`!I=^hZveznHXD{7-<_ASs57Y5$;$v`8$&=hQwJv K1F6Xx%!UB*r4#r7 diff --git a/src/main/res/drawable-xhdpi/message_bubble_sent_grey.9.png b/src/main/res/drawable-xhdpi/message_bubble_sent_grey.9.png index 86d88f71fa726388edbe146c66a37eaccdf6ea7a..4876fa2029ab086f5e3c3f358f4898e7bc956fd4 100644 GIT binary patch delta 69 zcmX@bc8YC6KZh)XwnFdLCtMq++cJq*gcuoFnHXCc8)+LDSs55S*&)+B`2~|KhQ!pT LOYA30G8+N_@L?3s delta 69 zcmX@bc8YC6KZmq{wzjg?LA{OBZJ9*OLkvxrA0hA>Y00000 diff --git a/src/main/res/drawable-xxhdpi/date_bubble_grey.9.png b/src/main/res/drawable-xxhdpi/date_bubble_grey.9.png index 53c2a00eda7602ab2ff9559d046b33208d37b0bc..6ffee467fb9786f75eb2602d730b7f4c405ee013 100644 GIT binary patch delta 69 zcmdnMv4LYkKZh)Xwz9~cts6E@S7sKm2r)9UGBLI?Hq|yTvNAAGlvm=Ne2!TbLn6Rw K*2c;InGFGB5cEm6=7%Lkvxwfx5n^OyWnye)Y^-fyWMyFBbY9$?fq_A_#5JNM jC9x#cDmOnRGp&-r$iUD-*T6*A2wj8mr1jmC%~%WpV?`TA delta 93 zcmaFP@tk8qKZmq{w(cp<6zPrAqnKUILkvx)!ag8WR jNi0dV%FR#7OsixtGBC8zH89aNLf63Yl5fgnGZsSt6cQR7 diff --git a/src/main/res/drawable-xxhdpi/message_bubble_received.9.png b/src/main/res/drawable-xxhdpi/message_bubble_received.9.png index 70162dbc6ec06d1a89d42b701d4eeba5333874c6..fad9fc1bcfa6f1081741e2cfabbcefd728cdf26a 100644 GIT binary patch delta 93 zcmZ3^wVZ20KZh)Xw&bM^IZPX;OR>0GgcuoFnHXCcnQ9vtSs56--KsR1fq_A_#5JNM kC9x#cDmOnRGp&-r$iUD-*T6*A2wlUR7qj#ye`7HO0RQS6UjP6A delta 93 zcmZ3^wVZ20KZmq{wzBR=PnnI=rC40eLkvxsekrd2W+85mmV8kp!Bp=)5$Veg&%jl~cEyjK|h diff --git a/src/main/res/drawable-xxhdpi/message_bubble_received_dark.9.png b/src/main/res/drawable-xxhdpi/message_bubble_received_dark.9.png index eebfe887647cad127d75acdc0c38d859358f58ab..f055ad83a3ca669af18cfe2733e6f87cc87462c9 100644 GIT binary patch delta 93 zcmZ3^wVZ20KZh)XwzSPYUcHUerC3}oLX3>8OpL9J%(V@StPBjQw2XH#Ffgc=xJHzu jB$lLF<>sekrd2W+85mmV8kp!Bp=;nS?`E6)jl~cEkc=3r delta 93 zcmZ3^wVZ20KZmq{wz}4wUe=A%rC40eLkvxzm7AZEnO4bQWMF8aYha>lgs$OePwvmj-&hO*>dqUV diff --git a/src/main/res/drawable-xxhdpi/message_bubble_received_grey.9.png b/src/main/res/drawable-xxhdpi/message_bubble_received_grey.9.png index cdb9a538aa691b0ccdb8de950c45f6b173409b64..3467383daacb5f95a0c847fc72170aebd294f6ab 100644 GIT binary patch delta 93 zcmbQrHI-{ZKZh)Xwv_iy+Z`LHbFjEtgcuoFnHXCcnQ0psSs57IiM8NkU|>)!ag8WR jNi0dV%FR#7OsixtGBC8zH89aNLf5dCp<&bHCoF~lyy+R; delta 93 zcmbQrHI-{ZKZmq{w#w$IclK|b&cWhp9%5)>Wnye)Y^H5sWMyFBG;`@11_lPz64!{5 kl*E!$tK9sQ%(O}dBLhPVT>}$cBXkYMM`Q&iKVdNh04|Lh(*OVf diff --git a/src/main/res/drawable-xxhdpi/message_bubble_received_warning.9.png b/src/main/res/drawable-xxhdpi/message_bubble_received_warning.9.png index 5d53f562b74cc0440c3d3be40f90df20e4fc16d9..9e4cf6f21417c32f1699b9403b00b197d68c1a3d 100644 GIT binary patch delta 1111 zcmbQkwS{X!f4wY&w(QlrE2J41nE!dYIEGZ*dOP=gwrr?K!+z_}YPzNqx6Quf8oo~C zKf}RRr(Ht7#5tU{vzj-(y)>1pNm{&X_BOpGT#+2HoUtj13psDNN-g;k&Y_pJdg&9@ z%1ZtBXLsv8i@hJgJJWjROzY*A@-cB@#wTZfE=+qj`^?T{i#ZYX=imCiXb^P`6mboV z@)g~zI=4{tc)8hb_0&muV&~@VP3ie*QzFK)iFZxZj%}7Qb=7r+8{@x;|LiiJEcn;L zzJ8;y>-@HJEg@^RYTH_TKiDh1KX{Q)^7*%CQ|6~6=DxlD{oEW$xz5MsPU?|N6D|`+0V@vwSCQcUE@-sZ>u-`xg}v9sTXD z`KKG#_I=1~IM+JceEquoygE@U&Y;f4FKRa>6|@F&$QMrV-0Z-`(XtfBa>HK$iS^2GN2tuZVjFeB7>HL$iVF&@-qZ`86CKnq+%M&qv8?2K|KD3S%&D{a|0&~?^o9wBor)!s=Ik+?xko~R zrO%UP;n9O%P8vFg)!y^}D(B|p2pN19^vRi#qL)QsSaIHxCLUF6MWfIZ5LzB!edlfdD)JlN(eaDyfZS8&ZX8zxQ zUoSYC9F^aDuXLGhb8F^o3+@~G;bH5(Uj9<|BH`7t`OCiVi-`T($ac>bAfbo)Wpz-Ocgy zY<~XSx^w5djVhH}lh3R%RO6I=;s|un=DEwh%jM+M{6G2j_WZx!{`?Hy)EO~XoQvt?cv6uoK9oV=sP|A)f&&l7xNdY*ed)IH=WZTz;f{QA~ETi1S2 zS=!6_#_~qs;e^*qCiR;wYGxy}a+4x4+=H%o~7FiLC5F;Zi g6JskQOKk%qD+2>9QIF@7cVUr;_V^Gz`8A6n01|x&+W-In delta 1111 zcmdnOHHT|Lf4#JTw#F{y2~!vtn4fvNIEGZ*dOP>Lw`icq@%`n`Y$sp2Vz%}VbJoRW zzPlB2g|~3sVsR9Cdq-@?da<=xfh-fZaopamS@5xi#nebZGx)IULXD0+&p-d2H&g7h zp0VVkJB4ZQY^&@FB*pV<($BRU7t21sBWN+RqHDhRF6K0ewnT~gHp5veY2G%EyZT<` zd~UD z5RlvdYwyjQ7vCR!qFi`tkuqZo=sQS^jTiw6@yK^Ucns~QN(4J%Uo`;s7 z-mu3gA}&UUMO54~L8g%5wD+u#^r^oSD^D)0VSlahh+*3D-o;(a5%a_*39xV2bH>w4 z=D;T-RZpPG(>+U$GV16HUjj*7@$?2t1gZLhjOg70k`Ublk~ne_q(ey68zj-Q<|t$P zY3ZwTMYx`r)Yh-BdEjwsvc~`TS4$Ro%Y4{x^Yg|0b2CmXu=Wg^#~nY9cfmSKHK7+` z>@5C$oIkEE{}b}w)8+V+Ckjgr9I=Y(Ggj-IykQ5&42`}{hHhmp+^CCnpSg$7I*Uac zkkE=XY4wLCSi)rjBal#!$a6-~yM`&PuPdKQ?B-NHdR6B6^mh`Q7CqdxvG1x&;k~N0 zW(%!5)vx#B{6Z&D+}#i&7QMYJ=W>h(W`S{doSxDd{ch9zNu8% z#;ddTUb$XwnID;6%07)v^mt_DzAYwyQtPX$xgB`xs%JKL2>FVnGoSdYGxe3cxw(Dp zi;o%^558n*rR2A?!9FZn&? zldh61gCFw?#tXa)gkP<0ncbD6ntf<`DBA|^_&8=R(R8QeWQodvQkHaP_I*A(gDgTT zH_fU)E?ipBJmFFdi|zYQyTtZwbDg(j#*Bvg zb)^dxj|RGRWw*99OU&J&)-}1XHU5xF`$KmNrLzNcTAj9bt@KRl%M!b>TFQ ztdH;7=O?Cu^4hZsr`l;{5}D^8ZF%}$f5N|K{g-{2x_?hz$Rg`%9%5)>Wnye)VxVnc zWMyEW-7~YFfq_A_#5JNMC9x#cDmOnRGp&-r$iUD-*T6*A2wg+eMMdMu%&dk0GYRHQ diff --git a/src/main/res/drawable-xxhdpi/message_bubble_received_white.9.png b/src/main/res/drawable-xxhdpi/message_bubble_received_white.9.png index ad9c46be78f24c9679d0dec3d1c7cfe002073dec..4d105f9f5d5ca045f36a126a17cc5be7b5e2135c 100644 GIT binary patch delta 69 zcmX@Wb%1L^KZh)Xww%wEp9?omH)avB2r)9UGBLI?HqbUOvNA9zR_9$c`5ucbh6Gd9 KRK8?%U*hZveznHXD{7-}0BSs57g{+?t#`5ucbhQyy` KTJ4khSq%ZunG`hu diff --git a/src/main/res/drawable-xxhdpi/message_bubble_sent.9.png b/src/main/res/drawable-xxhdpi/message_bubble_sent.9.png index 9fa0f015b5605690c01e6803ebdc2b13094bae69..fad4d0c00f30d2481b34d82ede1b70144c5d15f6 100644 GIT binary patch delta 93 zcmZ3+xr}o{KZh)Xw!HP_lja+z&t!JB2r)9UGBLI?Hqzm7AZEnO4bQWMF8aYha>lgsx!;@4iKoOIZv7?!g)? delta 93 zcmZ3+xr}o{KZmq{wpNJl#~mA|&t!Hr4>2^cGBLI?G14|LvNAB(Biyl!fq_A_#5JNM jC9x#cDmOnRGp&-r$iUD-*T6*A2wlTjKLe@Br7VU3A}|_l diff --git a/src/main/res/drawable-xxhdpi/message_bubble_sent_grey.9.png b/src/main/res/drawable-xxhdpi/message_bubble_sent_grey.9.png index 2e532ae3a141d27e034bac2c5cef1f240fec4f7a..7d464c40949a4146b35ab615d0e402295bc78e84 100644 GIT binary patch delta 93 zcmbQrIhAulKZh)XwnFdLCtMq+cQCtJgcuoFnHXCc8)+LDSs55S*&)-+z`&qd;u=ws jl30>zm7AZEnO4bQWMF8aYha>lgsx%g(B5cElUYQ}Lkvxx$R<(`OJ6T*ULX3>8OpL9JO|%V+tPBj=Gcsekrd2W+85mmV8kp!Bp=)!ag8WR jNi0dV%FR#7OsixtGBC8zH89aNLf63Yl5fi7R8~U(>bn`> diff --git a/src/main/res/drawable-xxxhdpi/message_bubble_received.9.png b/src/main/res/drawable-xxxhdpi/message_bubble_received.9.png index 0688053edeea2f0c0b890530f3fbee31eaae0cbe..4faa86a0197985c9a614094acd17f9b3a493876b 100644 GIT binary patch delta 69 zcmdnUyODQ7KZh)Xw&bM^IZPX;FJTq22r)9UGBLI?GSxOPvNAAuyH#oOWPdhU42d}} LX6a9EU^4^&;jvSs54<7w$Kl?9V2PA;F}> K-aEO0%@6>xND@*2 diff --git a/src/main/res/drawable-xxxhdpi/message_bubble_received_dark.9.png b/src/main/res/drawable-xxxhdpi/message_bubble_received_dark.9.png index cf6f6e3ea2ea4531a1b06fe85942c7247d090cfb..638307766a2291e04b40c5210a65690f581b5005 100644 GIT binary patch delta 69 zcmbQuJDYbxKZh)Xw#=eiGkP~p?_(9Q2r)9UGBLI?vd}g#vNAB}NpcRJY{@2zA@SG# K_xs6NY=!{fI~4^0 delta 69 zcmbQuJDYbxKZmq{wz}4wUe=A%`&dQHLkvx7#LJbTq86&^4@OXxKD4l+6$T)NvWA delta 93 zcmZqUZR4HL&mk?Kt+ILQo&6i9SF*aAhZveznHXCcn`s*uSs55O&0M;Mfq_A_#5JNM jC9x#cDmOnRGp&-r$iUD-*T6*A2wj8m5m|xBp=^c#Mim;M diff --git a/src/main/res/drawable-xxxhdpi/message_bubble_received_warning.9.png b/src/main/res/drawable-xxxhdpi/message_bubble_received_warning.9.png index 4b2943f46d2dfd279766ab81a9ca6b1a51fb8f65..8f72e3332d65777ce758dc0348994327a718b518 100644 GIT binary patch delta 1444 zcmZXMeK^wz0LPcSgzy-m+1OYty0)Q+R2ZfZ#^mKvH+g^QlD94UEt>abjBv{-w@5EX zE02>_h;@@F8?g@EuqAn)@^W&X>*=ri{`dWSp6@qb%E9ENeR6oNt{2)!32oHHGS|koXPGW_)R#^UR)k zqJ~6R04wX=aviwIw~#?o)A~=0{1RLnQfE9Q^gwG_uh-sNqYj&7hF@St!JB?tUbD;%v)zD5{cJd>;f`>jc|vb&U;~xM|1 zBJ^UMEI1&VR@;e##>ZCpO|e2CF+L-P+!z&RUYuP@AzFY-e$8;^AX-3=1yY6ivCvZ$ zU#DkBmTKJ#)(FQPGgqL^e|n@M)1zKyiv)4A6B0>aVZA6n8+m~{LP<-~RuOqWO=+*_ z-cR9HP0yPx2fm{M*rqMu9mdDnn?@H3PSer&@ro`c+B@@b7$mrz`Mvm?aCSshj;e&veMP!y1_61@ zOw`&7`H`XSq8eb2QJosXHRSj8f~l&;0AaEWF~2v6?ILagCKwEc`g<=A<6y-rfO_g| z59g>f zJkkv+`&sA^l~pU-uy1-KC%#+?#uM4jm--e%AC@o>(H6s-5E@yyB+E6<_wBP5*$=Jqc|0Ji%dq2f zN7Lj7>wlqa*)AWO;WwzVbbKT-BhBy{jeM^B;y|K3jCJI?5-JT=ua-p_^RSiJ;!_Sv z3LjC3{R@hf0116Dxz!@;mkmqruwCb^js{MqO9xu_1u<8H!s+!E8janTW=8I;TvBip?bxNj-dM-OT6<;&&$&%8Ic|5zrj3*ba1 qvA!t5bnX1Dtn6*9?X3=3Vyx^j7z;hTjD=GEzX-w4hp>W_vHt>&QLyp= delta 1426 zcmZvcdo&XY9LMKv9wkNI?pUs8<~6P{Y*WKZ9=W6|+C=UQm#ocWOIIFu7$%&EEANtw zQ{5q<@~Au->vGu~kC^3Z<&o#^>U8co_niCt@AG~9&hM{ZrE<11J&&TTVrI-Tq%!~j z8GjFyoB!3xm1$@E6i%m4$eV-pjs~DJt4^b*14EJc^y~y&_%)fa9%^7<=<=`6yz&Qo zenTDe)Sw%OBa}L9qrAqTm#_PS;;NL~JQZ@zfeOygmaVjEzOP$6Z#nRMpXZ#K+?9tr zru)lB=grPOxM2C@H46Bdj3}fuRTA}WVDu-c-2%`;z#94OO>oFnyOjC<;9TF;+*sF0 zA_uT5GqVWEhEuku{@{J5b9R)@;2uAX=?Eg05ot@426}sBiJ#C$A|s=^hJW5 z7;Rl6txU<=q^MPHAv&b1r_RA0$$}Y5#7azwrqUJb2xKmhE#(f2XOI_mdNV3qH?O=B z1tNB;iPf@CQ&P#>Ysq)lf1e1ek{H_<7o5!RAf#V3)$%PP_^|kg?H8ZFEbi)PVQuI0 zDfv|^23;X%a47>eb1z31GM$Pf4&-a)2S^SIoXfjZ<&~|)bMLiQ}&q0wQqiS zX9(=~qCD&_89biEEEjw*T5pJMFL8oUYMJq8(lkA=m<{VxH|9|+vv^d1-h&wJFbF5! zXs}B(1JD4hmRYY7FcgEu{t1$xT{fo~fT>nzx%CK14ZoTk>o35mM~dNCsk}H=gf;yl zWe?B+FZ?xYzZwjXSPE)37xxFE!WG0Rj%l!XGll7^DGn4~8PrmR1Y)|yXM3<=o&%x? zQ=7dCh&!PZ(d)NCr#4{+xxjR#RuFiGTaw_q&BfqKPFW&0LZm>fLo&5Q+IyHeZq=^R zyN9&zFZnQCIze10&QfZ%0*A(9knKcUlbVSi) zeZ1NWp^IvsUpjp@oY#dTe~(|USoKEE1T&!-37h-*#RMK)ip#LgTbeD0MNrs0#pyiu zJ9^vay-T0+Y7%$w!VE3TM^NZc86FzrI&&&A9zF4wAu*&qapjq(#(osJ4&S0B9p60s zI)yq9Um)wm52Nka-t~Z@zbVSDoodp{eKj==$em4>wMqe8HuY|p*=W^b%Fgom-M$!7 zh$6or9360G#An6PI2budIUYGzJ$&b(`i;+*!orL)=Pu}7wslml*>Lc*WBA_Z>q1Sk zvBQD{^_ct3qP6j!o}|9!3nGGr(za$vl zmbcpDR5y3I9`>CZ(_|J2eW_aI2X9vNxv^RvfN$rKoX}NWH(X9R4+aTeCf#})0~{&O zg3@U}ZP0K2e1d5QwtzV}s_zZOvlr_QQYIgxij)x*m<;p_&tY^l9&SJQ`W=1SLcX3y zl3>{sz&mohTsxUwtY!Q1To3&rN8_uy4GPzjhCS>H?9qwPSy~$@;Egadc}=d-rhdXZ zZktIh+#;U6?Gq8w`Lf`OwMacEtkF~Ip0!KTBU3ofZ7nrQ@W`pOe>$?!;lZ5F(CJx= zRLfT!#RA5`)pYl7|B56`n-0ZXpqT6l)?D0PjR%H)^jRoWmeoCC?{8)6XlvtW3o(OO YJ3=64w9>pn`2QH^MnN`(F|tK&tVlY4>2^cGBLI?G1N9NvNAB}{XNNgvOAkBhQyy` KTJ4i7*bD*8X%tKV diff --git a/src/main/res/drawable-xxxhdpi/message_bubble_sent.9.png b/src/main/res/drawable-xxxhdpi/message_bubble_sent.9.png index e677488445d830a72fc185df2039c665e506855f..21b8c45abc08325dcb9d3506ecf94e7b58ccff36 100644 GIT binary patch delta 69 zcmcc3eVcniKZh)Xw!HP_lja+zpJNfR2r)9UGBLI?Hqb^*|LG delta 69 zcmdnPy@z{3KZmq{w$5I^klu~c*RzP2hZveznHXD{m}naqSs57IKfHI&b{x=lL