From 68cd1ff28c25a2056c5b5229336fb9e549830513 Mon Sep 17 00:00:00 2001
From: Torsten Grote <t@grobox.de>
Date: Mon, 21 Dec 2015 15:47:18 -0200
Subject: [PATCH] New Conversation View in XML

It now uses conversation bubbles in alternating colors
and vector drawables to indicate message state.

The conversation bubbles have been taken from Telegram
and can be replaced by a UX designer later.

This commit also addresses #9, because message text can
now be selected and copied. This is done by using

    android:textIsSelectable="true"

which only works for API level 11 or higher.

If we want copy and paste on lower API levels,
additional measures have to be implemented.
---
 .../res/drawable-hdpi/message_delivered.png   | Bin 479 -> 0 bytes
 .../res/drawable-hdpi/message_sent.png        | Bin 284 -> 0 bytes
 .../res/drawable-hdpi/message_stored.png      | Bin 323 -> 0 bytes
 briar-android/res/drawable-hdpi/msg_in.9.png  | Bin 0 -> 957 bytes
 briar-android/res/drawable-hdpi/msg_out.9.png | Bin 0 -> 1871 bytes
 .../res/drawable-hdpi/social_send_now.png     | Bin 1680 -> 0 bytes
 .../res/drawable-mdpi/message_delivered.png   | Bin 313 -> 0 bytes
 .../res/drawable-mdpi/message_sent.png        | Bin 238 -> 0 bytes
 .../res/drawable-mdpi/message_stored.png      | Bin 237 -> 0 bytes
 briar-android/res/drawable-mdpi/msg_in.9.png  | Bin 0 -> 669 bytes
 briar-android/res/drawable-mdpi/msg_out.9.png | Bin 0 -> 1693 bytes
 .../res/drawable-mdpi/social_send_now.png     | Bin 1097 -> 0 bytes
 .../res/drawable-xhdpi/message_delivered.png  | Bin 627 -> 0 bytes
 .../res/drawable-xhdpi/message_sent.png       | Bin 392 -> 0 bytes
 .../res/drawable-xhdpi/message_stored.png     | Bin 443 -> 0 bytes
 .../res/drawable-xhdpi/social_send_now.png    | Bin 2416 -> 0 bytes
 .../res/drawable-xxhdpi/message_stored.png    | Bin 683 -> 0 bytes
 .../res/drawable-xxhdpi/msg_in.9.png          | Bin 0 -> 2231 bytes
 .../res/drawable-xxhdpi/msg_out.9.png         | Bin 0 -> 3076 bytes
 .../res/drawable-xxxhdpi/message_stored.png   | Bin 969 -> 0 bytes
 .../res/drawable/message_delivered.xml        |   5 +
 briar-android/res/drawable/message_sent.xml   |   5 +
 briar-android/res/drawable/message_stored.xml |   5 +
 .../res/drawable/social_send_now.xml          |   5 +
 .../res/layout/activity_conversation.xml      |  16 ++--
 briar-android/res/layout/list_item_msg_in.xml |  42 +++++++++
 .../res/layout/list_item_msg_out.xml          |  54 +++++++++++
 briar-android/res/values/color.xml            |   1 -
 .../android/contact/ConversationActivity.java |   9 +-
 .../android/contact/ConversationAdapter.java  |  86 ++++--------------
 .../contact/ReadPrivateMessageActivity.java   |   1 +
 31 files changed, 147 insertions(+), 82 deletions(-)
 delete mode 100644 briar-android/res/drawable-hdpi/message_delivered.png
 delete mode 100644 briar-android/res/drawable-hdpi/message_sent.png
 delete mode 100644 briar-android/res/drawable-hdpi/message_stored.png
 create mode 100644 briar-android/res/drawable-hdpi/msg_in.9.png
 create mode 100644 briar-android/res/drawable-hdpi/msg_out.9.png
 delete mode 100644 briar-android/res/drawable-hdpi/social_send_now.png
 delete mode 100644 briar-android/res/drawable-mdpi/message_delivered.png
 delete mode 100644 briar-android/res/drawable-mdpi/message_sent.png
 delete mode 100644 briar-android/res/drawable-mdpi/message_stored.png
 create mode 100644 briar-android/res/drawable-mdpi/msg_in.9.png
 create mode 100644 briar-android/res/drawable-mdpi/msg_out.9.png
 delete mode 100644 briar-android/res/drawable-mdpi/social_send_now.png
 delete mode 100644 briar-android/res/drawable-xhdpi/message_delivered.png
 delete mode 100644 briar-android/res/drawable-xhdpi/message_sent.png
 delete mode 100644 briar-android/res/drawable-xhdpi/message_stored.png
 delete mode 100644 briar-android/res/drawable-xhdpi/social_send_now.png
 delete mode 100644 briar-android/res/drawable-xxhdpi/message_stored.png
 create mode 100644 briar-android/res/drawable-xxhdpi/msg_in.9.png
 create mode 100644 briar-android/res/drawable-xxhdpi/msg_out.9.png
 delete mode 100644 briar-android/res/drawable-xxxhdpi/message_stored.png
 create mode 100644 briar-android/res/drawable/message_delivered.xml
 create mode 100644 briar-android/res/drawable/message_sent.xml
 create mode 100644 briar-android/res/drawable/message_stored.xml
 create mode 100644 briar-android/res/drawable/social_send_now.xml
 create mode 100644 briar-android/res/layout/list_item_msg_in.xml
 create mode 100644 briar-android/res/layout/list_item_msg_out.xml

diff --git a/briar-android/res/drawable-hdpi/message_delivered.png b/briar-android/res/drawable-hdpi/message_delivered.png
deleted file mode 100644
index efade63916a2f36a74400bf378d587a763b690a6..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 479
zcmV<50U-W~P)<h;3K|Lk000e1NJLTq000;O000;W1^@s7mv9Yk00009a7bBm000XU
z000XU0RWnu7ytkPkx4{BR7gwhRXs}sK@g20YN}Y+s7TOK1x0NA4bj4X;qOW5AF#9z
z`2z|{gn-zHjUpn^LX1e_d&|r++1p!lq`AU_;oi-@`PhAPY^4%=+P#g2^8?hQ3|$?N
zas~U$r%9rYyjx5P8>S;>TSfkX)N8Os7VT(J-PN2h*n1y#c)I)WHCx@n(b}lA;+oFW
z<Xd&Y+hbLNBD5sS2>3+sFsUIHx3!$bh4)eN04H_gXgTgLke`F;aFT4N%L<qY!r~U}
zU9|96MH`#59}D@(kR8^i3Qz?}gLd%UN6)Ja1nv^s0G)5XN3dtun&OZ=(K|9OnASWl
zxyq$%FFAVCbPO?;!8?XxXO^%2+B8XG9GUe;S!)`_`44!1;T<6HIuhK%7~4eWA2QWZ
ze+>bwz6j!du*C_#O!^HtZ?F~c-8GWu*IYazUS#JW?%{oezzbQl{vY^WVM}@w1c|*r
zJWhW^2q3<M9k3AW4%U;7`9tqV{F{GWJsAz8&^3~ANApO)?s*jCX8d8t|KEjA;1_Ip
V$@bNPGJOC5002ovPDHLkV1g^*+2Q~I

diff --git a/briar-android/res/drawable-hdpi/message_sent.png b/briar-android/res/drawable-hdpi/message_sent.png
deleted file mode 100644
index 6edef05a95505d6e4605621b5975f179b331c04e..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 284
zcmV+%0ptFOP)<h;3K|Lk000e1NJLTq000;O000;W1^@s6;CDUv00001b5ch_0Itp)
z=>Px#)=5M`R7l6|l)nxEK@f+(lTd0TDv?zvC{E!$cnF<)o@u=Uuc5$nB;@ExXpks0
zS6t5CKTdbQZg-RK+eu~y%9P0yQPU7Llki=oKzJS415&skfS-b6GyLWh3~zg`e=Dp4
zQPTpBaqyo6qNWEN0)`d-ArLifQPa%`Ujt{L83(sjFavg?W|RSb0Xm-RKa)Na6-<E*
zFt<r8@JCv;js@ZXOJE3$J=b4+3y*Ens07#onirlp2NB5~xaNhY4q6~t0Ry1wx&G@P
i3#=w;`sFGw6Pq{lbXMMsP2|u30000<MNUMnLSTZyJ!`Q5

diff --git a/briar-android/res/drawable-hdpi/message_stored.png b/briar-android/res/drawable-hdpi/message_stored.png
deleted file mode 100644
index 8bf1ee459425236b46f96cc10c1912fec981d739..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 323
zcmV-J0lfZ+P)<h;3K|Lk000e1NJLTq000;O000;W1^@s6;CDUv0003BNkl<ZNQvE*
zF%N<;5QRSigR2aVY)%FZ`~XH1-Apk40oe@1%@BUP1J}?fr46KmzN7<v@9vSiYYYF5
z2-pKxpaxo5HBbVnXl7vtG(cxrjcA<_0B0>h1>`^sgtB7Ut2Et7Vy#fgUqEIF3PkhL
zOeV3@k|!>IBS<t8W4R)Rnr8-02NVV_W9Z3f<5Py3o60g}5HR#49TQxI%nb=_21sm2
zKf+(Ag^U*%#G<Lk$X3X3fk7ymc8S3q*vv6-DbW^qNP;7<`rs!^RAO&3^dnf%&;1iP
zXxwCzUB*<$8n^)$`L>R!%Rw81>Y4SRf#<72!RuwGg1lbW3f>+Z9TELRczH5^18?!i
VKJ0vVY&ie`002ovPDHLkV1gf|fCB&k

diff --git a/briar-android/res/drawable-hdpi/msg_in.9.png b/briar-android/res/drawable-hdpi/msg_in.9.png
new file mode 100644
index 0000000000000000000000000000000000000000..974d60e2d7aeec5229de2b26495af671ddb579ba
GIT binary patch
literal 957
zcmV;u148_XP)<h;3K|Lk000e1NJLTq001%o001}$1^@s6zoe_z00004XF*Lt006JZ
zHwB960000PbVXQnQ*UN;cVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU#Pf0{URCwC#
znq5c~Q547To!wct&6gI#f;6%3@;Q3$AtIt6e5gPoK}3*1C=7xEiCD-)G0lp^mqJJ}
z!xR^)?Th>f`k?JWf?k4Lv2|J2+1anTowJQG%F?dw%(PeLz=dTP&VPP$?z#7z*-Od)
zGp6}X^L3VXz!)Pu8>N&9WQ~|T+YQB4M^_VF^e4iw=`me2Q!oW10VAoMl9A6Nxr1ag
zbOx{(*>zvMy$z)$8%{bz`#uP_Qx^)x<ai?K56mz0?>$s|3ob=rD67tq93p}~T!E>9
z$Ln3rgGNrDMM-{Ey1)7u{FLyqmm;E9j)?y8drd||prHn8snd6v2|BD8j!hfgwPqzX
zYN4j?Afinuf}GfD76@vgrU4NlBD^8fmT}ZVO(Uk3>3dNoO<_f;@GqqSH60{_=9<~r
z*Axh~B4UA9AQnj0B^@ef8}A^v+Bu&-Xsh9(L;M@Wr_sChmF1hS@){9@D0)BAQwI>O
zyyi$6V){{c&5nvKZEA1M9Y`8tYN+e<?rmjVg#@u05QK2N9qg>$v%S0r%4m_t<u?uS
z=3&Q)s+|?Rg$R-BswKP|?moP$vaDbsa*7D_$5fJIPR0tmO3n)6blAy}GtItX@9Rs7
z!je2kgu#e6UT*gejQXw>DoifPu24!Ofzr9AmYYLE<F7nWUn$&y1S2wjoQMNV2w-N<
zUFjHn@_gb(p~2*|kF12Lzu4M8=9_HivW!<@VrdwG{-|rde&73Yx|7RV>kkYe3ji~F
z_PnRhH}T;Pm(}kw7)k=C8e96fZLCxn8Fu<0BW!`|4si(v_7#cyo*iM>@BjC#uP7FX
z1!93%Af|&bGb>?Li|GymrHT@ZCjw@Hpcc(=gd=YdC?1nD-@cET1%g_rsXK^G5Ms3#
zJl(-i*l#ohYM>Ts8UR9LvvWTK2aY$?y_o!XI~0z5)f)hPqHokdE!4~~#q&EI<SusN
z%W#2@67b>%S1zcCZIF)otca8-l+YA@H-Lu?Ld87~S0$+P6z%Dtyw7W)Lx72*00_w-
z>;l&!(f8mP9y-G+I|3t$nk#Rz>oRvEatdG;v9E^_CdQng!vs&L?E^6cMEik49i|)A
fQ1fi`mjD9*YGG0-hQus300000NkvXXu0mjfO1`hr

literal 0
HcmV?d00001

diff --git a/briar-android/res/drawable-hdpi/msg_out.9.png b/briar-android/res/drawable-hdpi/msg_out.9.png
new file mode 100644
index 0000000000000000000000000000000000000000..08fd35b4cbdba08150bb224a4981df94431749e7
GIT binary patch
literal 1871
zcmah~X;c$e6b>keC=x|cAlh-Dw1Qd5E+9!Jm{bB7(t-<UNQNXQBomVf1VLNTDx`pb
z6-80mMOu}`<+uTAtKw11(z<{PT9*m}73=Y+D4ignKYHxUym`xf-@V_x@4hpck>QJ6
zoIRa!IGl@E1WB=;hBda6Bld1A|LHo`d7#1=Gzv*TljTMj$5SHlFd){+Rj?G6D^pfC
z!+|*5IE_XYgT_e0xC%r^lG`vOi_U<tak#*R7K2=&g;5|LR%!G>VE@TR5YQ-tz-Weq
zA~6VHwMMkY2uH06mnqh06&xkFFc=85a4`cq7?lGSU83H^wFH5~cDdNtwoC?rVF;=X
z0^f^@kwgLl#0UcnQUFmwp;7@RlSHL6m`v(?fJULx$Q0~h5~*}9gUO|_fRPKtycv}V
zTqzVf;tQJvfoc>raLMH4<YZEE00}Xw$W#u8W3xe{5itbOl%hxF7NXwdJ!%1hO$wvN
zfNBsuV6!NXN6csth$(#^g3ch-sMM%w%(&h(k}NE3WQ*KDrjjUR<1oe+-zZBW`7}eP
z8$+8=Df~hFf7&<6QVcLz3Y!qKQGxAZg7-(RKJCZ`9EpJ|ksGxzwu_<iL=!yxK_cNo
zh{CLc^{5yM0x>8_sZnwvCYvvSSP-Ab4y96sbUug0=LiEhY!*ZlP$-m9u2^qE<$47?
z%GG?}3O>o@3XHHEMT{~8NgOSPNHu~YCN*LJ1W_~~TBBDY$tK%AVXAC8VWTDqR)!i8
z9Wb0SuI3}}W;5oRA*9gwY$lsZWiW&RR4R|oW(YCiv`|I>g%v6QM~KRgLViz#{)b4$
zWRPw3@lm~uE@4Gz8;(^!HW@oVupUdd5j!2T4t&eN4qciU;>j!>Pj^bf+<4P3s5(n4
zN@G29uML!lN^7&NX=?hdEXQmD!_&KUt91_D(<;jFfe_!)NK%YbzNKm0`3;#Y*G-XA
zC0<o+R&byMTBaL!_$m8PN4Yco@B;MYm2ldVK4!|$+ZPLwq(^2CXy3gWh2zAQ^wL>>
z?id$XpFD74ec7h=!MU>>{kuY9)BGL*vAv5dw;_6mUVFXn?mX}oFev*%#L7KbPPb1G
zAKUtF$3Nja1=^{i?G=N-D|T7C+MijsbiZGPpYZ&}s;ty0rW>rD_J}KC1=$f>J_EON
zMc?wgkIo-_kXNzds(gj!Mq=QeL!H&(izUkilfW-S<9T5jE}q2>JAdc7v-^sIqgI}&
ztkp)R7TCG8*h{*B$?<+>&)t4;QNHT+zGnO{U4gJwI+dJT?A}`LnqE_Mx%pXYhQkrc
zTf)8PtFltWA>t_ahEq)<93FD@(GYme_no$)Ie;C3C(ZF$og>2TjYo>I2w!V^)_0ap
zxS6MwsZ<Y&Si4@bq=aQfcn7@lBBSo6$IY3`FTe2=_K4Io5-)c)chg@_x<X9#vTQJj
zX6529A0(b!dLW^_;tjFFr4;o^i&(j%aq}N_9o3bO@*P{#H?Fcef7Moh<LByBS8I=O
z+tbBorqBGbQdJ#5zN_<_?^fYG<SxLwIT?(t=^=9u^$Ys9<Ym@g>xsV8F#XqQut!GW
zJ@Vd;u<LhjJBL@cE&vmAnlfspIbBdiFV`LE^*v5+Y;*YmTtcwRxPGvquw==;imUV(
zFBgda&?)4`iYbd@Uvy=w=ejQd@uJ4|?xV*yb@XTnj0Y&G;O(KV=3q)&zlWj2?(B4b
zi0|{JtLjQ;d(e^#6F_-V1`?OLZh*MY=hB|t$7*D0xmMSF?|g4CY5c@mXzAyR-0yQv
zg-oLF-(VnkzPy?;^S*=qvSRUUpRUIzcDwbjeP(Y*Y$=~IU`}i(8&d2|z7)V|?7$b>
z*)Zj|2X$?|&sO%<1{e0tUiYx@-HY21UbuLEVhau<$yW2!g4X80wF5fGhp*4g=&r9e
z*D0JG>UaB!fbTY^#q~XTKIf%i^IG?BPWxYNei#?Hf%R8`{Y1O7eN>0HFMlKVUpT+F
z+KD~8>U7z;?8<GA*ZAOt<9S1O=hWuy;$^m28jA|?_>z+E@zYon<*$fMxD%PJ^BN{Q
QhS+{_VqrLRkiRPZUsQV1M*si-

literal 0
HcmV?d00001

diff --git a/briar-android/res/drawable-hdpi/social_send_now.png b/briar-android/res/drawable-hdpi/social_send_now.png
deleted file mode 100644
index d6ebbaedd28c504ab516d2cc79641d66dc9e04f6..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1680
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
aALGAC6o9(GPXC4g0000<MNUMnLSTY+A|F=(

diff --git a/briar-android/res/drawable-mdpi/message_delivered.png b/briar-android/res/drawable-mdpi/message_delivered.png
deleted file mode 100644
index 938c50d909e9dfbf0e931632a4a6282f6fe922b4..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 313
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!6#=yXs@#Xw?AcwQSBeIx*fm;}a85w5HkpK$5
z_H=O!vG7k$XlPtHUF6$g%LKM%9Gh$c!dO}YzdBU*cq|iZy3ymX)W=~LZ^!@i*S0H;
ztm-v!TrhEKKzUQ9m`1w#1Ut4PVF9xkGvbXi-GakSFDxuyn8$osgF&N`Rf}_(<H3Cr
zZp=5+7v>o7@_DT|5TlUGa75g}<U;qcE2SoXeVD5*iQP04ke8X>!VvIKWr38s!nOuB
zt|tB|BCf`w=h#o_vOX$yIKz9j;}AQ$alj;YkM*oc6SD6#%n<I#XEgMPk&<{a-;s^+
zrj$bt_mg_(Z33438<<qLF>F*5Sk3%VKE*EJak*2RtVAV4l6+Lemj#ZCf!=2DboFyt
I=akR{0IWZ1XaE2J

diff --git a/briar-android/res/drawable-mdpi/message_sent.png b/briar-android/res/drawable-mdpi/message_sent.png
deleted file mode 100644
index 1f3807209e1db00dc0b3f07fa5f2fd0e2bd813ad..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 238
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|R(QHNhFF|_
zI@zA<kby|M{c86M=WdpCEocrFKj;_sfkjSXGJ8Rp_@?s0!ZOW!N)-(Xw(c)ODyBqi
z=sP=Q&mR4sd+QC(q|Wu4ReOcmj=8dU-XD(p4Z0iNDF05HTebb|#DW>62g)CC<lHJZ
zYH2TB#p37o+v`AhLgJSAR=Me(XBs3bB9|X~^jySa-%4rLCt?nqH4V)d>+VjS9U%Jc
mfbb2*&-JrXttRYT!T4~s`ej!WZF``b89ZJ6T-G@yGywpZJz$Uk

diff --git a/briar-android/res/drawable-mdpi/message_stored.png b/briar-android/res/drawable-mdpi/message_stored.png
deleted file mode 100644
index 01858ffc64ddf763b244d301acaa33657a5ea3d5..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 237
zcmV<J022R+P)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV0002ANkl<ZIE}TF
zy$S*`5QM)pqRmxum2DcqM@Xe`ZMZA!Y_-Z0`0y4tffzQNo;a{YW+y}TC-5iqKmej5
zh+D)Cn1CmcfU6>j8>MMpen{*ASLB?y1l(IDlLTGC9jbFD%~W6R^+a!&9xKjE`__{n
zXIF_W11D`L$;jNS8kPal#!n0e;0ElM3|b{P;H2CI*tAM$H8EogoSDaGHWBPG*2rTV
nt>n*(lucHza*5TS>1(_I)3qE34-Hbm00000NkvXXu0mjf|HEDa

diff --git a/briar-android/res/drawable-mdpi/msg_in.9.png b/briar-android/res/drawable-mdpi/msg_in.9.png
new file mode 100644
index 0000000000000000000000000000000000000000..f9a0267b6e8cc706a1350b1d0fccf6f4a0887b16
GIT binary patch
literal 669
zcmV;O0%HA%P)<h;3K|Lk000e1NJLTq001HY001Tk1^@s6q1H*%00004XF*Lt006JZ
zHwB960000PbVXQnQ*UN;cVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!FG)l}RCwBA
zV4w~755+_SMzF5`{}~1nFfua!XTc`HqvJ!!@gRMyK+FvD3<)9i7l?lY@gL++V<FM;
zOiYZ79Ot&oNS78DiREBt(*gR1m1tM||NrCrkDphczI?mL*f(R&zyJTg!yLmziYu6z
z7+EiDomH+PFWtw<!EQ*3BcM^h!Ntj8tg0YA@$BXqML_e|;65bHAxvD-5+Z5TNEdQa
zV%Z?`$Z`lHBLh1-8><9090D>2WFDCgVPv9mZec=p$bS;@IwMsbf@B^O!yo}n3{>_d
zB@SU2Y7Sun7D&tk?GPql;lp)u!}Ky*IfR8+M_k%Ir&V5BJbR!*1lbXJ1C>VT<_LTa
zp{pZsrV&<VCe|xE=QRN<xV!<)zAVg4%)fsB<{0pD1n7{zmVsGa7q8!4G@uRvM$K<v
zTj7mIY-!7-8~2tDm_y!u`SA~!Sib?=h0on%N*d|m7@XM`-7%MM-dizXbq%s(++s@V
zY3Ue(bq(AxjEv7+qKexFw9<n*<}0xF{W##w0FYz;Lpn#J4Wm(q3<-z){r%_fXKGjs
zHRmr`4gnTyzaKt*v4a{80ht3bkGxJeBjdN&g4Tv>w;!w|H)KHiuH3x8Jg%^<9%LTg
z5hGj!H9|ZbOn?9V=LV`52I}Ag3bB#lmR~?iKLPu_Z$X75sC@c*b?bkU25LZ>fR6bJ
zbpJ0P_ca+kMUapGK}U;zgUmw-5e5<m-e>?A0RjvFHWbr_e!>-000000NkvXXu0mjf
D)Q21^

literal 0
HcmV?d00001

diff --git a/briar-android/res/drawable-mdpi/msg_out.9.png b/briar-android/res/drawable-mdpi/msg_out.9.png
new file mode 100644
index 0000000000000000000000000000000000000000..f22c541f7f9087c833dd863c6cf07faab5c1d58e
GIT binary patch
literal 1693
zcmah~drT8|94}M>p*X<>C;>gMV&;Rk*O#<|VIP!MDUi|#q5{|60hP8_?had!SwOd<
z5_K^?K%!{SXe7&!4UEp$2J?mZb`EtKoNN=Y^M$~`?ux+pV{w<e`#tXS`Fx+h+@{pz
z#6bUWe;SPzs8%Vo)Cf|~JU<`mec-P8HZ?HGgbXqb%O!0vj?$zErbhv_8O}qsD2x;r
zUP5DOG`i8K%OEo}NfHBQX2Tu~+itc}Y#J>#-fo2r1t<yV(LAFi4s@M53j#(Y4onwn
zxEiY*%{Qt_a5SwXS!XCIFo+Q_{xcxfE};a>C<z00v&lk8>~Y|zu7sL<wmBd$3Ly*P
z!1qpNXi@<=hNFOx&5t&4AqWtO*pNUd5<!aq9v9+qxYR9*h6EC!NWxnTj9nmQ4M%b%
zT7`1V7PX24^GVVw;c#p=8{5WbV|X415{tzi4IVF=LPQhA7815cTL{*;f&wKBxY0@)
zF$>^Pg!Nbv83$6Hz7N4{)f)5iNn%3WLX0JgN*l)xTR9M$%fUx6p7_RD8qJ3pX7dD^
zAhqbf&i|)Ap)0nc94$&<MYw^gVlHcvsSg|S0LNmGXkfemrK+feO$0jnL8Fl<Fhh|U
zwUBB>97sXgh!K&9WCAf?E{%~%#Z*xe1Y#k?6)WU?NXQfMp%~>jS8X9k*kVA(xyFCF
zi$BPf$Z-@VF<ggXrtxM-&BsWL$j7XJJdFpW8!ZTCBRqAYyz=;o;>NWoqQo&XFq$%n
zagz0-BFZ#R%2i60LIK1R3KRGcBo)L66J+89o>Iu?E>_CHF(NW4<o87J{}4Hp8yru6
zOzM~MEvgAU(~0h<78B<OwNUBCsngMR-H%D5d0$p5q&j=29tHx3oj0qv<<aRO{8aB!
zQh#0$Q2Cg@b?)-nEc(v#Znv8m#$>via(1k0zP@mZs*Tn-YX-4B=Q#$PnbNwf%pNs=
z`VZENH>d9F(|hZg!Ls004<a5kBvmC<%^i5|{&{wGRMz(n_*K`#0D4_&<n6+GF><N&
z?W+0k(WEGK)Ox&v8P-}ATN`UyP`kjiD5-tLw(R)zJ|EX4Rb|c7&4ya9RH|O3vYwaE
z>hh`fT}mI|_8)<VIc+~(?nnxBmR<F#dAq+>P|+(}^VClp+~de-9!^A^!>k)~REO@w
zKl{>eT6ZH5s-;H?RpCb?z`1)aC@i(XJBf^Y)#bU(8`|5xXxz=xC9~F^?AP};nAA&%
z`_f#)k1?{1C#QRPty`T4iRuhxxh)&o6EDOpz3XOtOWS&~<J@*Q#k=Ow)?>(_;>vSn
zJN5-|k$aHLC$aK+#~k4CL6?6ZGpEL@^NrgbKjiddoCrU$#j9^q;zvOtCG|mie@RG*
z^J0I~%B+#05!?KL0M@>KKe{>ccwcXKx+~t1m6>U83_cxkU}dFA-1Op(^IG<<<-4;M
z_Eguu@_on-$qaeH{bumBPmZc|Mdr%2ryB|m_V0IWyy+Kx+;#X?Pu6MoYt*=U@apl7
zX*CY(FVZxpDfT;`-pZlP_tD6aXO6$BQ*Ip@eEFm&dpoOh==QrAyuIChU){~x8Q;2R
zOE}2TS(<o^^C6ve&ypFNm&dLNa=Y9YvK{NSZ9;%p(j9dFsiN?r>ycaZ;Pb-YKNUuJ
z^L&w6E2a+)ytsC7X3MtHGcW(>3dQ9<^{&fLmSs!3%i8Ig&QQIEm3Auo*DB4-=8@Nb
zrgk;%O{`!tnFFenI>!Dpj=x*py}9xzAoN<vx?_jsn;Xh&980dgEhAYoS`IkFZnXI#
t*6x%d=Wl1-id|7v`5Q?3)G#k^1}*%Pu$-w@TbJjDp-xCvd@akV_y^jygiQbd

literal 0
HcmV?d00001

diff --git a/briar-android/res/drawable-mdpi/social_send_now.png b/briar-android/res/drawable-mdpi/social_send_now.png
deleted file mode 100644
index 90b17a0170b63efad3051c1d15807a77e17f90d4..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1097
zcmV-P1h)H$P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F800001b5ch_0Itp)
z=>Px(14%?dR9M5kmhDdzR~W^AXJ_943sFFN$C%V;j7?wCI3N10|NobrG*zj=CK9O(
zR?$ciVV9lL4?IJrlvD)aCY#K?b7$|l=bYz7#3+g)17y1{%d+N*Mi=1W!-pBL0`w&9
z0k5wLKn9TKdEfS3N%w%1=lOn0=|fdjz7hs(OVTWG$M$teLrJSeQEUJcU@{twd}#nA
zO>MuH^bz<LxCIoppGkUTdky&e(j-VJAxXdzkR&Yv^YL4jw3Jes%kw--DeYHPHT|Lh
zs;Y8IX&MJE0@r{ZFa&N%x-IEzU;sEgLQ1Kws_NnZ0>oiTX-?9Tq+38&(!QjL?GCUY
z=?-u&-e;0_tE$?+um_qUX$N>~yFOBc+O`12-hrfn?XM&)+5V;|is!&f;MHg}8lRhi
z@Ipt@yrc)fjO~deBpH}Wng9l7fdm{&W4lf%HPZO3A>2JN-vi#*-U}cdAI0eLpV_W~
z1K>bX2gq%&06$4u2Oa}!z?;uzpsK1mrPK$$lQbXHJ6OOrA&n(9@??^Rz?`J(wwEQ{
z%=3Jq6*Y%v0uWiTE9rsl#fSojKRUsPB4j(UUN=(No|BYp-;Qt|M${bSc}||^^+{<?
zN`UP{;Ju_e!twx^9=&q2rvcSG*6}a}4uhd(+rI!m055<?wx0rj{V#yf_BY!ffSYl{
zPEg$gGTT{v+YJ`Gk}}(w?MzbN_CV5%?Lp*~>%g6&C^l?YlD2K{oCaWG`*%qjz+5Z*
zh7lP9U>Ng3$TSPg#PduT7ho)@8vwqSbl>(S@T={ok`6m3Pmd32SUy@(Gp8}+$^Gs5
z$+ece|9O9!2YOME?%MvB1h#t()j@l=B}dl!^@FK?cxe}S25i{gkW>NNz}{&R3?%&s
z{A@e7eQd(kE!~(g*lA4YSaulkqwRN%34y0&S$@)lUE2#0c00DmK&>Oo)6%z1yMu{-
z6tR6tTehD7Pa;8m1je7rghXR9Z@U{GOk25t0MW3J#lD`TL)-6dZ%KM#dtK6>Ks6eT
z_Ro}xi=yZO3%0L?#^c5~Edw>hiAYAZq&?f)z`CR-w%5wCe0`o;Fl&1Wm<_WvRgqRC
zbR_j#4eTcHSkfx+B0MuWS2?yl7Y#`-OypL+?*=PVV8`~Rq;=cJ<+v=%@kRTAdD}OD
zPV2S`5YzC)Ht<~1<8bx6FVc_{MKO%S7h8u8BldUWmaCB^8>+`#aCGDFj_rA1Mbe7x
zYtbpc1*)KV9oRZ==kqBBGT=tES+kOMqfLJnRcx&+%S&m?j{!(pj)Jmf`;ny8NSl+-
zarJotINGu2z#ow|H_Nh|a>=9HYC@{$<Mz&)M83r60K`pS0WT$ObA{s{dhc`KDX|Uc
P00000NkvXXu0mjfYcL1(

diff --git a/briar-android/res/drawable-xhdpi/message_delivered.png b/briar-android/res/drawable-xhdpi/message_delivered.png
deleted file mode 100644
index 99109113666357edda634c9bbcb9ebd2048e68a8..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 627
zcmV-(0*w8MP)<h;3K|Lk000e1NJLTq001BW001Be1^@s71bs?k00009a7bBm000XU
z000XU0RWnu7ytkQB}qg<R9HvtSG!6BQ4o!yf~8<#wDEyOd^Kqlk+lARsK21UphSCH
zD|@vQ!P3gYMi3ESAcCERZwnt-=sDM!WpZ<qT`@w64GcRwd(X_dXYai`$z-biR*$>C
z+;cjxNBT{I=)(1`DqNvO;<J)xBOa1?1k%32mLpoYX%~t&xNgpmT(>69_D=)Bsi+#3
zl~DGaNu;!l&LZg4QswD4m{eQv=V0fUW?LwA3y_`vG_ATwOKnv;>&KF#w6GUll<F%`
zWu~kTFsk@2{x+@!N-pnbG9<rCpg&obx43_T^~0PWd~dPb(*bp=Ky+OG>{)koHYVjN
zfP&fI&M#R=p=1E^NdDxigzc-3#kCj90AL=F3O?|`E&&Fuz)ppl^$C834Z{d_zE)PY
zx|v)8JRFo{jOPS=Wxyx?G$Rd^1qS3{JTeI!5}%dJz$F^6x@0Gqv_Im&J{xxrCe!-B
z`oY0zFjb)b6~HoHge~|?ZCsnbn$AW#q$MQfH+J0YD|SvL@tP9w3g>Y;9Lnalg`+s1
z)r0^FuOrv2%-9wV#;x3r021`#G6CBG>w6<vFm9f+rJRAW6UhO4A^C#w(0f(|c#y8a
znnC6aSN25wLlBHhuk@$FO2+T4_}5|=HUNu=prDNt`wSbcFyk?ehi2@@g5PAX;1NKV
zuqhbZOg4OdFdOG9_*LPc0zNws=|GH)K##l@*9cUKCz)|NCRM;!;2W0+8Zft}QxO0F
N002ovPDHLkV1g!u88rX^

diff --git a/briar-android/res/drawable-xhdpi/message_sent.png b/briar-android/res/drawable-xhdpi/message_sent.png
deleted file mode 100644
index a40d4d94c0fca5e85e08ce21f3ce99f8c74ceeea..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 392
zcmV;30eAk1P)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F800001b5ch_0Itp)
z=>Px$LP<nHR9M69ma$3$K@>$#B#otDVY<=MVj3&aU}3<<R?uH?e!)c1Z<yAIjXz+S
zCPBnXWC$YIOs9<~*aXtpOdu??$&A@-p>xY+hjZ_HZ{I8=B_;hAX(O82h?DH|g_7W>
zz&UVHx&a420|vlGsRlCeJtgg9_MJ*e@GT!4pgIR|6=(vjNy+DC0JsK@rX?@jfHq<g
zxC9P?Z(x5K+-pD^u?EzETP5vBgohFQ3)ocBzJwg|eFewB70}a0)IySLBW}jv^-y@8
zfi5rv)`5;TVmUH-Kc;n+oK#D|oip(aG?cV&6M8;M-jAIf?;=vtegX{#&#S~t$%7V=
zgLcO%vFm{CS(68ELN|yVXW|KX1rB1T{nrLOm7s{^(RYD1Vg<MdR)HNQZLf$07JM5j
mY2Sfu*ZYU`i<Ol0XY>OxrFzD0Tlw|?0000<MNUMnLSTYe<D|3z

diff --git a/briar-android/res/drawable-xhdpi/message_stored.png b/briar-android/res/drawable-xhdpi/message_stored.png
deleted file mode 100644
index b8eb1384a23a5819bde40bf9679643dd477604d6..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 443
zcmV;s0Yv_ZP)<h;3K|Lk000e1NJLTq001BW001Be1^@s6b9#F80004kNkl<ZScUDE
zKTpFj5XFBgS&&ecEFg7g%R+-95EUphm0%?O2n=M%mUe6T@C<d7OXS44DwPr9Ngit5
zpVzy0wgdk-4IwZGVzXvu@2rS`HBbQG9jgFdjqPX%febkGByO(*@WBXGSpeHs@X`=U
zfyAuT?3FFsEyq@!ghya6g5|&xnDqEej7={5_P~QS`J$El9S9Wuf$@<f23I1aS@xA8
zaT_a|?HHtqjOIV@!W7s5&yIMq5}7M`M6LFm{<7a2yNx4eK&^=bjuBl8wo6Cgp#(6o
zs<`Vu!|ISJ=~ug!z=V24i!P%OMX!_ups6jZ80W$uJp+MM#J7%QEDVw}5J*J)cuWEX
za5Dx0Z3`mm@!A7#z-5oUY{ATCpcNq;)%^nOjNcA;!ahMx5rS?EC9XJXp-S)xT(^ii
z#}IS}kquMe%lO}l{lN#3<|yvM1#l;RtBztAei;pg>N0{~a2<o^2T295PqGSLAEgz%
lKFcM%eVEwb<<snM;s+n0Z~+j3?QZ}8002ovPDHLkV1h%mzTE%-

diff --git a/briar-android/res/drawable-xhdpi/social_send_now.png b/briar-android/res/drawable-xhdpi/social_send_now.png
deleted file mode 100644
index 6fa26d165211460883e53df6953fb117fc5ae76f..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 2416
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

diff --git a/briar-android/res/drawable-xxhdpi/message_stored.png b/briar-android/res/drawable-xxhdpi/message_stored.png
deleted file mode 100644
index 153650a1f50238963f883cfeb8990d51d9ac57a0..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 683
zcmV;c0#yBpP)<h;3K|Lk000e1NJLTq001xm001xu1^@s6R|5Hm0007VNkl<ZXo2mS
zF;5#o5QRSur?8zUq_AY7m@ZuiMoK{u(?A6&;>Jj%jUsGPgvb{m%#Tm8d(vrc4|Zqw
zFh=*Jl`P-Qo0+@0nb}!r(V|5PWWWfR02ja<$bpqzIdBEc>^&cVt+iMxumhX|H^6=1
zx&cmrw@+?0&<DN&cb>*RwC;d2%lRbu3@j5EF4q$H)TH6tn5SN6Kn_fSF)#$Wm^k0E
zzlZkP)ZSaib8dAd#Vg=Pjlu<R0CWQQIv8gbHJq1LXA*4VHvSek!ek&VGRtx6;J+l%
zn{b8AH84m)ZZWW&u5gONzJv59(2FH@pl7+IKJ|y)r<!f9X~y^hJ*sbFi895WQ;qqM
zuqn%iU_kYoI1A)phiZ{J3gpl_fYl|7T~Nh76$A^yvrUWx8Pybf5+W>nn*)UrF%E#K
z6S8;mY5+$<Fej`?6^M19L$zX$d;}*#XsR?I)&Z>UGS9?EXeNZlO64gWI21fHAECJr
z8Y-2ia9~&P%zcDp+;x@8Q#jBSJh_k1N(gDUekmNt1kcJxs0jz&D>+mSG!a58OjjG)
zN2x+6)kpjh_$|1Wz!&_hy8MW*e1uY^Q82~mm}+zO3)u6JSEbQZg{+Ksn0e8?Sl@xy
z56GzsS*ljT1y@-8!`<nsTM1V)7ZXM<!(>>w`h9gX2Wi^r$54dTU#gids-1>38ya7{
zar_s(p@H}<r4~uHl<)#J^|0Y%l>!?**n$@@T7<`kyJMd5aJPW(c>NI5gmp1bIJ3WZ
z?X|Ux*UQ*vLk~F0=wqH#$|I&G({n9i4*CAD#zQ`dkYm=bJfmaQ7A-a%{{gUj`-YR=
RkU0PV002ovPDHLkV1i!`GmQWM

diff --git a/briar-android/res/drawable-xxhdpi/msg_in.9.png b/briar-android/res/drawable-xxhdpi/msg_in.9.png
new file mode 100644
index 0000000000000000000000000000000000000000..3db9979cf1b13128da38558494e6604e730098b6
GIT binary patch
literal 2231
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
FV1km7;-3Hj

literal 0
HcmV?d00001

diff --git a/briar-android/res/drawable-xxhdpi/msg_out.9.png b/briar-android/res/drawable-xxhdpi/msg_out.9.png
new file mode 100644
index 0000000000000000000000000000000000000000..b7aa02377fd49c6a462c58ed7972719f41ccd978
GIT binary patch
literal 3076
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
E04lRG=>Px#

literal 0
HcmV?d00001

diff --git a/briar-android/res/drawable-xxxhdpi/message_stored.png b/briar-android/res/drawable-xxxhdpi/message_stored.png
deleted file mode 100644
index b3833bc3e76f11b4abe7f1a487bb87025f003075..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 969
zcmV;)12+7LP)<h;3K|Lk000e1NJLTq002M$002M;1^@s6s%dfF000A!Nkl<Zc%1Fq
z(Q8~q6bA5LlBJ=whAIX$_+V=d5-8YKLJL-CAk`=>8bfQ6H)-tJg1EBP#N9vMhkF-f
zGqZc|-kHtD-4Etv+54Su&fJ+fbLLzYSYUw#7RZhzyoXIZ#1lNje%YR47Z30mZj{el
zYOLT>e1|rA=vQn#yuu!CmRy$xYxo*(RPXS(_8MQ|`V{+78*BI$XVP_ixSc7c&rCUD
z8Taw0d>tQd9o#K#Uns8OXZ6H)@e+qPDBEHATel|Hb6m~d%LvvL3)MK0r+9&Fe1z5r
z&Q|%K?edw^3j8PdAZgDk;5Ocl5!S|+SZ!cuwd81zvDH=VI8(uG{5?WUrxZPEr0b$p
za&|`8{mT@bux|9oA1QW&Tv)^L2>V?br^8k8Ip4!$(+OBsup=H={VK!4xU5)|VvF2X
zYJ(N9CB8^Lmw1c3A2HN(F`XY^OZ-i^m&(Yy;z7>i2{}Jjh##~j>&8w*TSuaZ@tcT&
zBa_ehpN6=ayhSVG3*(apyeLLL6x(++8?}@UP-+Qnk!Kpd1&;!xeZ`*K1gRZBp(&*G
z(WHbc!bjS+=0Q#l2egDE#y2LMs<#4UDMp_>4j}#(+?s@JFF<svS!_Q*E(fd%#|C?K
ziI#+4rx%HY=5hexfUT`&j`4<YfU%uOWKIWcJFmN^=u>5E21xpfvw8~TbijtN_RTsZ
z4+8{U>5jNL9nccaEIp`0vKt_HnNVa-2T*7o*1uba;8}p+FrmQQ4mfgN|I<1I`vHQ3
zgaUIr;J|tP`*jGW?SNYIvjQ4BVA@llhaVO9hbho_3glh{V@K?+VjpjsT5G%r=H3RE
z6&ag90(ScN1)ogFon#x#9S99@MKLn5+}<JHugRGt5Xv125934etj=4-nf^*et|Xyw
z?!!<B%eW(c`SBY*ufUV!Fht(t@F-lz_xLAZzmFgAPUP8S$6@j&M5<t2cr;JM7vrP}
zk(?>9s#wAo`29cjZ$|zbONqVKU|Y?V6s?PEiWK*#Xf%0JlzeINNfEp5%9a)<9<?2t
zjq0te7bA?m8rw->pdqqfjd3|INAIRIH22rzj4zPbF&hOECo)!!jVqBk_CGF>8DOr9
zqz0JlGPwaJDU{qWzEE<*B`A~}AXTaCkxN)AJHSO2OV89t6>EyHdG5;PhcUMwOblag
rKbZ+(_@k*^bMVpB0t+m#z|7-cs~f*?lyfk$00000NkvXXu0mjfuBgXF

diff --git a/briar-android/res/drawable/message_delivered.xml b/briar-android/res/drawable/message_delivered.xml
new file mode 100644
index 0000000000..7df040f3c0
--- /dev/null
+++ b/briar-android/res/drawable/message_delivered.xml
@@ -0,0 +1,5 @@
+<vector android:alpha="0.56" android:height="16dp"
+    android:viewportHeight="24.0" android:viewportWidth="24.0"
+    android:width="16dp" xmlns:android="http://schemas.android.com/apk/res/android">
+    <path android:fillColor="#FF000000" android:pathData="M18,7l-1.41,-1.41 -6.34,6.34 1.41,1.41L18,7zm4.24,-1.41L11.66,16.17 7.48,12l-1.41,1.41L11.66,19l12,-12 -1.42,-1.41zM0.41,13.41L6,19l1.41,-1.41L1.83,12 0.41,13.41z"/>
+</vector>
diff --git a/briar-android/res/drawable/message_sent.xml b/briar-android/res/drawable/message_sent.xml
new file mode 100644
index 0000000000..8a074e0fc8
--- /dev/null
+++ b/briar-android/res/drawable/message_sent.xml
@@ -0,0 +1,5 @@
+<vector android:alpha="0.56" android:height="16dp"
+    android:viewportHeight="24.0" android:viewportWidth="24.0"
+    android:width="16dp" xmlns:android="http://schemas.android.com/apk/res/android">
+    <path android:fillColor="#FF000000" android:pathData="M9,16.17L4.83,12l-1.42,1.41L9,19 21,7l-1.41,-1.41z"/>
+</vector>
diff --git a/briar-android/res/drawable/message_stored.xml b/briar-android/res/drawable/message_stored.xml
new file mode 100644
index 0000000000..b91196f032
--- /dev/null
+++ b/briar-android/res/drawable/message_stored.xml
@@ -0,0 +1,5 @@
+<vector android:alpha="0.56" android:height="16dp"
+    android:viewportHeight="24.0" android:viewportWidth="24.0"
+    android:width="16dp" xmlns:android="http://schemas.android.com/apk/res/android">
+    <path android:fillAlpha=".9" android:fillColor="#FF000000" android:pathData="M11.99,2C6.47,2 2,6.48 2,12s4.47,10 9.99,10C17.52,22 22,17.52 22,12S17.52,2 11.99,2zM12,20c-4.42,0 -8,-3.58 -8,-8s3.58,-8 8,-8 8,3.58 8,8 -3.58,8 -8,8zM12.5,7H11v6l5.25,3.15 0.75,-1.23 -4.5,-2.67z"/>
+</vector>
diff --git a/briar-android/res/drawable/social_send_now.xml b/briar-android/res/drawable/social_send_now.xml
new file mode 100644
index 0000000000..bd34e7fc21
--- /dev/null
+++ b/briar-android/res/drawable/social_send_now.xml
@@ -0,0 +1,5 @@
+<vector android:alpha="0.56" android:height="24dp"
+    android:viewportHeight="24.0" android:viewportWidth="24.0"
+    android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
+    <path android:fillColor="#FF000000" android:pathData="M2.01,21L23,12 2.01,3 2,10l15,2 -15,2z"/>
+</vector>
diff --git a/briar-android/res/layout/activity_conversation.xml b/briar-android/res/layout/activity_conversation.xml
index 1a07f07eb7..8bc064d2ad 100644
--- a/briar-android/res/layout/activity_conversation.xml
+++ b/briar-android/res/layout/activity_conversation.xml
@@ -39,9 +39,7 @@
 		android:layout_height="wrap_content"
 		android:background="@color/button_bar_background"
 		android:paddingLeft="@dimen/margin_medium"
-		android:paddingStart="@dimen/margin_medium"
-		android:paddingRight="@dimen/margin_medium"
-		android:paddingEnd="@dimen/margin_medium">
+		android:paddingStart="@dimen/margin_medium">
 
 		<EditText
 			android:id="@+id/contentView"
@@ -53,12 +51,16 @@
 
 		<ImageButton
 			android:id="@+id/sendButton"
-			android:layout_width="wrap_content"
-			android:layout_height="wrap_content"
+			android:layout_width="38dp"
+			android:layout_height="38dp"
+			android:layout_gravity="bottom"
 			android:src="@drawable/social_send_now"
-			android:background="@color/button_bar_background"
+			android:background="?attr/selectableItemBackground"
+			android:scaleType="fitEnd"
 			android:contentDescription="@string/send"
-			android:layout_gravity="center"/>
+			android:paddingRight="@dimen/margin_medium"
+			android:paddingEnd="@dimen/margin_medium"
+			android:paddingBottom="@dimen/margin_medium"/>
 	</LinearLayout>
 
 </LinearLayout>
\ No newline at end of file
diff --git a/briar-android/res/layout/list_item_msg_in.xml b/briar-android/res/layout/list_item_msg_in.xml
new file mode 100644
index 0000000000..8194f5453a
--- /dev/null
+++ b/briar-android/res/layout/list_item_msg_in.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout
+	xmlns:android="http://schemas.android.com/apk/res/android"
+	xmlns:tools="http://schemas.android.com/tools"
+	android:layout_width="match_parent"
+	android:layout_height="wrap_content"
+	android:orientation="vertical"
+	android:paddingRight="@dimen/margin_medium"
+	android:paddingEnd="@dimen/margin_medium"
+	android:paddingTop="@dimen/margin_small"
+	android:paddingBottom="@dimen/margin_small">
+
+	<RelativeLayout
+		android:layout_width="wrap_content"
+		android:layout_height="wrap_content"
+		android:layout_gravity="left|start"
+		android:background="@drawable/msg_in"
+		android:paddingLeft="17dp"
+		android:paddingTop="5dp"
+		android:paddingRight="7dp"
+		android:paddingBottom="5dp">
+
+		<TextView
+			android:id="@+id/msgBody"
+			android:layout_width="wrap_content"
+			android:layout_height="wrap_content"
+			android:minWidth="80dp"
+			android:textIsSelectable="true"
+			tools:text="Short message"/>
+
+		<TextView
+			android:id="@+id/msgTime"
+			android:layout_width="wrap_content"
+			android:layout_height="wrap_content"
+			android:textSize="10sp"
+			android:textColor="@color/private_message_date"
+			android:layout_below="@+id/msgBody"
+			tools:text="Dec 24, 13:37"/>
+
+	</RelativeLayout>
+
+</LinearLayout>
\ No newline at end of file
diff --git a/briar-android/res/layout/list_item_msg_out.xml b/briar-android/res/layout/list_item_msg_out.xml
new file mode 100644
index 0000000000..baacbb39fc
--- /dev/null
+++ b/briar-android/res/layout/list_item_msg_out.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout
+	xmlns:android="http://schemas.android.com/apk/res/android"
+	xmlns:tools="http://schemas.android.com/tools"
+	android:layout_width="match_parent"
+	android:layout_height="wrap_content"
+	android:orientation="vertical"
+	android:paddingLeft="@dimen/margin_medium"
+	android:paddingStart="@dimen/margin_medium"
+	android:paddingTop="@dimen/margin_small"
+	android:paddingBottom="@dimen/margin_small">
+
+	<RelativeLayout
+		android:layout_width="wrap_content"
+		android:layout_height="wrap_content"
+		android:layout_gravity="right|end"
+		android:background="@drawable/msg_out"
+		android:paddingLeft="7dp"
+		android:paddingTop="5dp"
+		android:paddingRight="17dp"
+		android:paddingBottom="5dp">
+
+		<TextView
+			android:id="@+id/msgBody"
+			android:layout_width="wrap_content"
+			android:layout_height="wrap_content"
+			android:textIsSelectable="true"
+			android:minWidth="80dp"
+			tools:text="This is a long long long message that spans over several lines.\n\nIt ends here."/>
+
+		<TextView
+			android:id="@+id/msgTime"
+			android:layout_width="wrap_content"
+			android:layout_height="wrap_content"
+			android:layout_below="@+id/msgBody"
+			android:layout_toLeftOf="@+id/msgStatus"
+			android:textSize="10sp"
+			android:textColor="@color/private_message_date"
+			android:singleLine="true"
+			tools:text="Dec 24, 13:37"/>
+
+		<ImageView
+			android:id="@+id/msgStatus"
+			android:layout_width="wrap_content"
+			android:layout_height="wrap_content"
+			android:layout_alignBottom="@+id/msgTime"
+			android:layout_alignRight="@+id/msgBody"
+			android:layout_alignEnd="@+id/msgBody"
+			android:layout_marginLeft="3dp"
+			tools:src="@drawable/message_delivered"/>
+
+	</RelativeLayout>
+
+</LinearLayout>
\ No newline at end of file
diff --git a/briar-android/res/values/color.xml b/briar-android/res/values/color.xml
index 01b15430a4..0ecc0f1ba7 100644
--- a/briar-android/res/values/color.xml
+++ b/briar-android/res/values/color.xml
@@ -5,7 +5,6 @@
     <color name="action_bar_background">#2D3E50</color>
     <color name="button_bar_background">#FFFFFF</color>
     <color name="dashboard_background">#FFFFFF</color>
-    <color name="private_message_background">#FFFFFF</color>
 	<color name="private_message_date">#AAAAAA</color>
     <color name="unread_background">#FFFFFF</color>
 	<color name="horizontal_border">#CCCCCC</color>
diff --git a/briar-android/src/org/briarproject/android/contact/ConversationActivity.java b/briar-android/src/org/briarproject/android/contact/ConversationActivity.java
index 98dcd179f8..02bc2b83a1 100644
--- a/briar-android/src/org/briarproject/android/contact/ConversationActivity.java
+++ b/briar-android/src/org/briarproject/android/contact/ConversationActivity.java
@@ -142,14 +142,7 @@ implements EventListener, OnClickListener, OnItemClickListener {
 			}
 		};
 		list.setLayoutParams(MATCH_WRAP_1);
-		int pad = LayoutUtils.getPadding(this);
-		list.setPadding(0, pad, 0, pad);
-		list.setClipToPadding(false);
-		// Make the dividers the same colour as the background
-		Resources res = getResources();
-		int background = res.getColor(android.R.color.transparent);
-		list.setDivider(new ColorDrawable(background));
-		list.setDividerHeight(pad);
+		list.setDivider(null);
 		list.setAdapter(adapter);
 		list.setOnItemClickListener(this);
 		list.setEmptyView(loading);
diff --git a/briar-android/src/org/briarproject/android/contact/ConversationAdapter.java b/briar-android/src/org/briarproject/android/contact/ConversationAdapter.java
index a95b00e475..0e2499c7ec 100644
--- a/briar-android/src/org/briarproject/android/contact/ConversationAdapter.java
+++ b/briar-android/src/org/briarproject/android/contact/ConversationAdapter.java
@@ -1,40 +1,28 @@
 package org.briarproject.android.contact;
 
 import android.content.Context;
-import android.content.res.Resources;
 import android.text.format.DateUtils;
+import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.ArrayAdapter;
-import android.widget.ImageButton;
 import android.widget.ImageView;
-import android.widget.LinearLayout;
 import android.widget.TextView;
 
 import org.briarproject.R;
-import org.briarproject.android.util.ElasticHorizontalSpace;
-import org.briarproject.android.util.LayoutUtils;
 import org.briarproject.api.messaging.PrivateMessageHeader;
 import org.briarproject.util.StringUtils;
 
 import java.util.ArrayList;
 
-import static android.view.Gravity.BOTTOM;
-import static android.view.Gravity.LEFT;
-import static android.widget.LinearLayout.HORIZONTAL;
-import static android.widget.LinearLayout.VERTICAL;
-import static org.briarproject.android.util.CommonLayoutParams.MATCH_WRAP;
 import static org.briarproject.api.messaging.PrivateMessageHeader.Status.DELIVERED;
 import static org.briarproject.api.messaging.PrivateMessageHeader.Status.SENT;
 
 class ConversationAdapter extends ArrayAdapter<ConversationItem> {
 
-	private final int pad;
-
 	ConversationAdapter(Context ctx) {
 		super(ctx, android.R.layout.simple_expandable_list_item_1,
 				new ArrayList<ConversationItem>());
-		pad = LayoutUtils.getPadding(ctx);
 	}
 
 	@Override
@@ -42,46 +30,15 @@ class ConversationAdapter extends ArrayAdapter<ConversationItem> {
 		ConversationItem item = getItem(position);
 		PrivateMessageHeader header = item.getHeader();
 		Context ctx = getContext();
-		Resources res = ctx.getResources();
-
-		LinearLayout layout = new LinearLayout(ctx);
-		layout.setOrientation(VERTICAL);
-		if (header.isLocal()) layout.setPadding(3 * pad, 0, 0, 0);
-		else layout.setPadding(0, 0, 3 * pad, 0);
 
-		int background = res.getColor(R.color.private_message_background);
-
-		View content;
-		if (item.getBody() == null) {
-			TextView ellipsis = new TextView(ctx);
-			ellipsis.setText("\u2026");
-			content = ellipsis;
-		} else if (header.getContentType().equals("text/plain")) {
-			TextView text = new TextView(ctx);
-			text.setText(StringUtils.fromUtf8(item.getBody()));
-			content = text;
-		} else {
-			ImageButton attachment = new ImageButton(ctx);
-			attachment.setImageResource(R.drawable.content_attachment);
-			content = attachment;
-		}
-		content.setLayoutParams(MATCH_WRAP);
-		content.setBackgroundColor(background);
-		content.setPadding(pad, pad, pad, 0);
-		layout.addView(content);
+		LayoutInflater inflater = (LayoutInflater) ctx.getSystemService
+				(Context.LAYOUT_INFLATER_SERVICE);
 
+		View v;
 		if (header.isLocal()) {
-			LinearLayout footer = new LinearLayout(ctx);
-			footer.setLayoutParams(MATCH_WRAP);
-			footer.setOrientation(HORIZONTAL);
-			footer.setGravity(BOTTOM);
-			footer.setPadding(pad, 0, pad, pad);
-			footer.setBackgroundColor(background);
+			v = inflater.inflate(R.layout.list_item_msg_out, null);
 
-			footer.addView(new ElasticHorizontalSpace(ctx));
-
-			ImageView status = new ImageView(ctx);
-			status.setPadding(0, 0, pad, 0);
+			ImageView status = (ImageView) v.findViewById(R.id.msgStatus);
 			if (item.getStatus() == DELIVERED) {
 				status.setImageResource(R.drawable.message_delivered);
 			} else if (item.getStatus() == SENT) {
@@ -89,27 +46,24 @@ class ConversationAdapter extends ArrayAdapter<ConversationItem> {
 			} else {
 				status.setImageResource(R.drawable.message_stored);
 			}
-			footer.addView(status);
+		} else {
+			v = inflater.inflate(R.layout.list_item_msg_in, null);
+		}
 
-			TextView date = new TextView(ctx);
-			date.setTextColor(res.getColor(R.color.private_message_date));
-			long timestamp = header.getTimestamp();
-			date.setText(DateUtils.getRelativeTimeSpanString(ctx, timestamp));
-			footer.addView(date);
+		TextView body = (TextView) v.findViewById(R.id.msgBody);
 
-			layout.addView(footer);
+		if (item.getBody() == null) {
+			body.setText("\u2026");
+		} else if (header.getContentType().equals("text/plain")) {
+			body.setText(StringUtils.fromUtf8(item.getBody()));
 		} else {
-			TextView date = new TextView(ctx);
-			date.setLayoutParams(MATCH_WRAP);
-			date.setGravity(LEFT);
-			date.setTextColor(res.getColor(R.color.private_message_date));
-			date.setBackgroundColor(background);
-			date.setPadding(pad, 0, pad, pad);
-			long timestamp = header.getTimestamp();
-			date.setText(DateUtils.getRelativeTimeSpanString(ctx, timestamp));
-			layout.addView(date);
+			// TODO support other content types
 		}
 
-		return layout;
+		TextView date = (TextView) v.findViewById(R.id.msgTime);
+		long timestamp = header.getTimestamp();
+		date.setText(DateUtils.getRelativeTimeSpanString(ctx, timestamp));
+
+		return v;
 	}
 }
\ No newline at end of file
diff --git a/briar-android/src/org/briarproject/android/contact/ReadPrivateMessageActivity.java b/briar-android/src/org/briarproject/android/contact/ReadPrivateMessageActivity.java
index 7ece03b027..01ba003033 100644
--- a/briar-android/src/org/briarproject/android/contact/ReadPrivateMessageActivity.java
+++ b/briar-android/src/org/briarproject/android/contact/ReadPrivateMessageActivity.java
@@ -40,6 +40,7 @@ import static org.briarproject.android.util.CommonLayoutParams.MATCH_WRAP_1;
 import static org.briarproject.android.util.CommonLayoutParams.WRAP_WRAP_1;
 import static org.briarproject.api.identity.Author.Status.VERIFIED;
 
+@Deprecated
 public class ReadPrivateMessageActivity extends BriarActivity
 implements OnClickListener {
 
-- 
GitLab