From bfe4ad6c34481f40328f0dcbf288ee1bec11eb02 Mon Sep 17 00:00:00 2001 From: Moxie Marlinspike Date: Wed, 18 Nov 2015 14:52:26 -0800 Subject: [PATCH] Voice notes Closes #4610 Closes #3563 // FREEBIE --- .../ic_keyboard_arrow_left_grey600_24dp.png | Bin 0 -> 307 bytes res/drawable-hdpi/ic_mic_grey600_24dp.png | Bin 0 -> 460 bytes res/drawable-hdpi/ic_mic_white_24dp.png | Bin 0 -> 487 bytes res/drawable-hdpi/ic_mic_white_48dp.png | Bin 0 -> 767 bytes .../ic_keyboard_arrow_left_grey600_24dp.png | Bin 0 -> 255 bytes res/drawable-mdpi/ic_mic_grey600_24dp.png | Bin 0 -> 336 bytes res/drawable-mdpi/ic_mic_white_24dp.png | Bin 0 -> 333 bytes res/drawable-mdpi/ic_mic_white_48dp.png | Bin 0 -> 557 bytes .../ic_keyboard_arrow_left_grey600_24dp.png | Bin 0 -> 328 bytes res/drawable-xhdpi/ic_mic_grey600_24dp.png | Bin 0 -> 601 bytes res/drawable-xhdpi/ic_mic_white_24dp.png | Bin 0 -> 557 bytes res/drawable-xhdpi/ic_mic_white_48dp.png | Bin 0 -> 1013 bytes .../ic_keyboard_arrow_left_grey600_24dp.png | Bin 0 -> 381 bytes res/drawable-xxhdpi/ic_mic_grey600_24dp.png | Bin 0 -> 739 bytes res/drawable-xxhdpi/ic_mic_white_24dp.png | Bin 0 -> 767 bytes res/drawable-xxhdpi/ic_mic_white_48dp.png | Bin 0 -> 1518 bytes .../ic_keyboard_arrow_left_grey600_24dp.png | Bin 0 -> 502 bytes res/drawable-xxxhdpi/ic_mic_grey600_24dp.png | Bin 0 -> 964 bytes res/drawable-xxxhdpi/ic_mic_white_24dp.png | Bin 0 -> 1013 bytes res/drawable-xxxhdpi/ic_mic_white_48dp.png | Bin 0 -> 2091 bytes res/layout/conversation_activity.xml | 85 +----- res/layout/conversation_input_panel.xml | 171 ++++++++++++ res/values/attrs.xml | 1 + res/values/strings.xml | 12 +- res/values/themes.xml | 2 + .../securesms/ConversationActivity.java | 130 ++++++++- .../securesms/InviteActivity.java | 4 +- .../securesms/audio/AudioRecorder.java | 201 ++++++++++++++ .../securesms/audio/AudioSlidePlayer.java | 15 + .../securesms/components/AnimatingToggle.java | 2 +- .../components/HidingLinearLayout.java | 83 ++++++ .../securesms/components/InputPanel.java | 256 ++++++++++++++++++ .../components/MicrophoneRecorderView.java | 184 +++++++++++++ .../components/camera/HidingImageButton.java | 57 ---- .../providers/PersistentBlobProvider.java | 29 +- .../thoughtcrime/securesms/util/ViewUtil.java | 12 +- 36 files changed, 1075 insertions(+), 169 deletions(-) create mode 100644 res/drawable-hdpi/ic_keyboard_arrow_left_grey600_24dp.png create mode 100644 res/drawable-hdpi/ic_mic_grey600_24dp.png create mode 100644 res/drawable-hdpi/ic_mic_white_24dp.png create mode 100644 res/drawable-hdpi/ic_mic_white_48dp.png create mode 100644 res/drawable-mdpi/ic_keyboard_arrow_left_grey600_24dp.png create mode 100644 res/drawable-mdpi/ic_mic_grey600_24dp.png create mode 100644 res/drawable-mdpi/ic_mic_white_24dp.png create mode 100644 res/drawable-mdpi/ic_mic_white_48dp.png create mode 100644 res/drawable-xhdpi/ic_keyboard_arrow_left_grey600_24dp.png create mode 100644 res/drawable-xhdpi/ic_mic_grey600_24dp.png create mode 100644 res/drawable-xhdpi/ic_mic_white_24dp.png create mode 100644 res/drawable-xhdpi/ic_mic_white_48dp.png create mode 100644 res/drawable-xxhdpi/ic_keyboard_arrow_left_grey600_24dp.png create mode 100644 res/drawable-xxhdpi/ic_mic_grey600_24dp.png create mode 100644 res/drawable-xxhdpi/ic_mic_white_24dp.png create mode 100644 res/drawable-xxhdpi/ic_mic_white_48dp.png create mode 100644 res/drawable-xxxhdpi/ic_keyboard_arrow_left_grey600_24dp.png create mode 100644 res/drawable-xxxhdpi/ic_mic_grey600_24dp.png create mode 100644 res/drawable-xxxhdpi/ic_mic_white_24dp.png create mode 100644 res/drawable-xxxhdpi/ic_mic_white_48dp.png create mode 100644 res/layout/conversation_input_panel.xml create mode 100644 src/org/thoughtcrime/securesms/audio/AudioRecorder.java create mode 100644 src/org/thoughtcrime/securesms/components/HidingLinearLayout.java create mode 100644 src/org/thoughtcrime/securesms/components/InputPanel.java create mode 100644 src/org/thoughtcrime/securesms/components/MicrophoneRecorderView.java delete mode 100644 src/org/thoughtcrime/securesms/components/camera/HidingImageButton.java diff --git a/res/drawable-hdpi/ic_keyboard_arrow_left_grey600_24dp.png b/res/drawable-hdpi/ic_keyboard_arrow_left_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..651cb3322e04a733b23901ea220a16aa4548bba7 GIT binary patch literal 307 zcmeAS@N?(olHy`uVBq!ia0vp^Dj>|k0wldT1B8K;Lb6AYF9SoB8UsT^3j@P1pisjL z28L1t28LG&3=CE?7#PG0=Ijcz0ZK3>dAqwX{BQ3+vmeOgEbxddW?HuasQPP^>{Mf+IxD~ zYG+Q2{`;$Sr%{FvpH@;)Knm-Dc_*j8nRkMzLDxFowQI$nYg`(-?rC2B+a_)*IqP!s zmj0E-rOW?1?Y;5g!~Y4k?@cbR^JxCZ^NZosFT0ulpP8xxoz39s>gTe~DWM4fPv&fD literal 0 HcmV?d00001 diff --git a/res/drawable-hdpi/ic_mic_grey600_24dp.png b/res/drawable-hdpi/ic_mic_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..9eddc686d4cb5d136b55da872e24ec2ffd2fa4da GIT binary patch literal 460 zcmV;-0W004R> z004l5008;`004mK004C`008P>0026e000+ooVrmw00002VoOIv0RM-N%)bBt010qN zS#tmY3ljhU3ljkVnw%H_00BfvL_t(Y$73jEpblghat2wK?kxRW`mJ<#sSPCtg_Zs( z{SSqIO2f%DNU-!H+!zr22oxd9pjZ@RKroIxgK9AhswK~$1`LDhsbx^z@HMD*&>2)S z00!9swKtTqgV}W$233K@xxi}d@EcSB)*ugNCtw&94Hj1gv-9v9<s}>O{jVV10 zHsmm{1Q(&Kf`sI_2Fh#NVQi2CxX^GIe$5*C8w3EPx;6&iX|*E&0000004R> z004l5008;`004mK004C`008P>0026e000+ooVrmw00002VoOIv0RM-N%)bBt010qN zS#tmY3ljhU3ljkVnw%H_00Cb~L_t(Y$K{s6N&-<7hJPz4Bm}`-pds`GEh3D9qFt?m zTvX7e+(oO_ZmNffc14SzMF=55L_UPu${rxmCNlGD;Utbzcbp+2>%TB?&iT2_J#+7O zCxpI7ed@J|Qp&3$OP8ARaAF$E)cH`Iw8?9lCQ6xhm5F}sHZ5&I5l0-+Vz3^Kx-yAi z6ZQLX`}_R-r49Mpm-Z8HG|&-GYgW>}UL-YK?q(*e9Z6TZF&)}%01^nXPN!B7Vhn&S z^I0oOlEx)T=c+hrkIJ=Gi)M@rV*zJ&ly+cb$SEfcOviV^@D-4b#SfHzKm?P*Zx d|Nb9!t#^73DuH!E3G4s>002ovPDHLkV1ndkzA^v+ literal 0 HcmV?d00001 diff --git a/res/drawable-hdpi/ic_mic_white_48dp.png b/res/drawable-hdpi/ic_mic_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..dda69060341d4f1ef5bd7dca3870003d838854be GIT binary patch literal 767 zcmV004R> z004l5008;`004mK004C`008P>0026e000+ooVrmw00002VoOIv0RM-N%)bBt010qN zS#tmY3ljhU3ljkVnw%H_00MVOL_t(&-tC%8YZFlv$Ik?-cA*u7Vks1CC>Sb&i-Hea zgi@o$4~iy*^~zlub2G^tH;TN_mPB8 z`x^CFJVM&tNg%|!Y09I+wT4n5sgP7i4w+O)DkK$>3UxnFO)Uq8jB%TVtd~}KLN}m_ zYW1=4uU4QhtXGfz=?3&o+eh6BRv_*%5_eZ@Kr57E=n~R~Fj2R|u50^GD%Cw>Cffw5j8lf^eKq&d zU2M3jl7$#H<}xTmaNZb|Bpkw)n!Vx{(#w*UE-1(q2t`kEhoXctzsq|+_oT-G92u+x`dHKv^fK)%6&YqX_sON-jVm`?@m z0y}YEVaOVB5KAm(+P9=P!_sf!CiES;k)rJ1-1D$*jopoJJOxn5OR{pGZz_4ZNO@q3qt xuhMXpf@NJMKmsH{-DH9MT}OZfNPq;0+h6SJe{e5kEm;5n002ovPDHLkV1mb9Q>*|0 literal 0 HcmV?d00001 diff --git a/res/drawable-mdpi/ic_keyboard_arrow_left_grey600_24dp.png b/res/drawable-mdpi/ic_keyboard_arrow_left_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..ebaae63359bfc315d67e502b83a8da89ddc69354 GIT binary patch literal 255 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM0wlfaz7_*1g=CK)Uj~LMH3o);76yi2K%s^g z3=E|P3=FRl7#OT(FffQ0%-I!a1C(G&@^*J&_}|`tWO=~G=WkKR z?&;zfVsScICsl#hfUlUB%i&K$1uqv5d&3gl!^w|K8m62!mP!1O^24czZO*BU*$o=@ zryew}l$p)e@hREi>HJRarOZ6vc1oNLWyaGCb!PC{xWt~$(69BKIQdO=~G=WkKx z!qdeu#Nu?aMydj@QGheE`^znt{FlmmFQ2kWczI&f%X*DDK6Bdq3wY%_E`N~coV4Ph z{8`gKs-cJFwX%N%?h^K?Z^^FUefD1aZ(r=;)=Sfuo^hz+igDJTa6IbQx-U9qyrB-N zA01}NN*tE=x4%O__W2+Ao7n!u4X91 z=P6#+UiD1921muctd>4Mxb8oPZ{Tz9t(>gd!7KA$%4~RK=^!S&QIaG3kaPs^7G0JP ZP7D^2xpo{gc|aaz@O1TaS?83{1OR&Qc8vf4 literal 0 HcmV?d00001 diff --git a/res/drawable-mdpi/ic_mic_white_24dp.png b/res/drawable-mdpi/ic_mic_white_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..199a33703e753c3248bb7e7713b0fdb0667518af GIT binary patch literal 333 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM0wlfaz7_*1g=CK)Uj~LMH3o);76yi2K%s^g z3=E|P3=FRl7#OT(FffQ0%-I!a1C(G&@^*J&_}|`tWO=~G=WkKx z)YHW=#NzbPD~4XofdUK{6c=q2I4_XnyPEO+1mlROJdD}g(vBV;Q@d|GVM{D#+bDSO z$@*5oE9uE%t)}msnvB0T&rD2nx^nsk%MJ5M-fgq49yp=JcGV%S!PWGGZB|qN+UD=O z9^@WQcp1jAlA+&eMujH3F@IT0BICN&SpQ{DA22<4x_sc!onG68?RAzGCHj_s13%A9 zFXyYv-le>~WTk40a(JAo`s-y^rZs-q8aVUu{$sZ;n6f3u_O4004R> z004l5008;`004mK004C`008P>0026e000+ooVrmw00002VoOIv0RM-N%)bBt010qN zS#tmY3ljhU3ljkVnw%H_00E^*L_t(o!|j((D@0Kk#-A(9_*4FECc;{lvhW#ftgK`w z#ngndQ$B)?Z@|XF7qFNGpjT7(rZf%BiTLvYJ)gxem9dhhyGGo^H2FxAyUO?O!Njl_QwL7BiJ2$XN;Y zU1~k2i&j+3lD${s*QIU*=9c3pd zNRkp}p0}c2vz?NpYj=WENz#CsuUJv5X7qwQbJyfW0DM}4d5j~A+|&lE9XtTA;I3%> zL6dot>Ef`YeU^k-TL^M}VI(sRz%5-S6C=eQK0XBB&AqFZ$Du2!0&TuZ5dgf?fM-00000NkvXXu0mjfi|g`3 literal 0 HcmV?d00001 diff --git a/res/drawable-xhdpi/ic_keyboard_arrow_left_grey600_24dp.png b/res/drawable-xhdpi/ic_keyboard_arrow_left_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..ff768e6a20d59c627ea0043f2d088a589e3f7396 GIT binary patch literal 328 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA0wn)(8}a}tg=CK)Uj~LMH3o);76yi2K%s^g z3=E|}g|8AA7_4S6Fo+k-*%fF5lweBoc6VX;-`;;_Kaj^+;1OBOz`!jG!i)^F=12eq z4|uvbhD02Gd+i|aAp@S)ha4)$GMvh5q7Mi-@b?^4QJr~Y&WfU%vRBN9UYY*dzoJV> zUFE($tAGPTJoyXYriRZ(uPrT~=r}GZ&67-j`&AY7F6m90PfqV1R2j7!aO#T}` zUaMY`e#jx?{MK0)_Gj1@eyyC$t;NzLI{A7?V8G5jwR&1746WFJZrIOU!@#y+%BmMp S>yH8b!r004R> z004l5008;`004mK004C`008P>0026e000+ooVrmw00002VoOIv0RM-N%)bBt010qN zS#tmY3ljhU3ljkVnw%H_00GfSL_t(o!|m6X(=hi(zX+?St z8@IJ}fa@#LFChk72e_0Y+7zHGN3f0(Lz6kAKmPuT&l!D%}qf5iJ$ni&rw ztIbL9Dm!2-I`0SKJ?QmrnWC!SpU57x1w6?Pm@@(H*&ju|IO>*ZH8mAOj+>9Jbhry% zMup8dw)B`3pzMrVgST+I3Ec=CQ_0f@Wg`*jxm|0fZ}UPoxSyWBQKJo;0;kOCOI4ip z)(J2fl_?jXu1__Z>YkZ$O?!N;!+>c|qaCW~x7gh1xWlM(3IDqVfj!HLHs-3I&7MU+ zoOi`S?C*BS!9@CbmtAO-KFeV@s?(6!Rq;1&=v<@6o0zU?*W+004R> z004l5008;`004mK004C`008P>0026e000+ooVrmw00002VoOIv0RM-N%)bBt010qN zS#tmY3ljhU3ljkVnw%H_00E^*L_t(o!|j((D@0Kk#-A(9_*4FECc;{lvhW#ftgK`w z#ngndQ$B)?Z@|XF7qFNGpjT7(rZf%BiTLvYJ)gxem9dhhyGGo^H2FxAyUO?O!Njl_QwL7BiJ2$XN;Y zU1~k2i&j+3lD${s*QIU*=9c3pd zNRkp}p0}c2vz?NpYj=WENz#CsuUJv5X7qwQbJyfW0DM}4d5j~A+|&lE9XtTA;I3%> zL6dot>Ef`YeU^k-TL^M}VI(sRz%5-S6C=eQK0XBB&AqFZ$Du2!0&TuZ5dgf?fM-00000NkvXXu0mjfi|g`3 literal 0 HcmV?d00001 diff --git a/res/drawable-xhdpi/ic_mic_white_48dp.png b/res/drawable-xhdpi/ic_mic_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..a11b5f6446b5ecc732d28653c6509bd49aef5772 GIT binary patch literal 1013 zcmV004R> z004l5008;`004mK004C`008P>0026e000+ooVrmw00002VoOIv0RM-N%)bBt010qN zS#tmY3ljhU3ljkVnw%H_00V7FL_t(|+U=X)OB7KQ$It9)1{y*58%-^ubbAPi5FY}K z42dFwYD@osUIN2>=%t6E2Ycv0h<+Jj^bkZ!MLzb!R3iFmDVagGlG(aoyXt;>=wLyO-5IU7Vjdl9IjFOF|VlD5#e-y#s!&=sJt|9(OZTGEaF0|;qJ z*ZA)lNKm$xbdKKubQKvq8_g&HRyzPkfFr;W;0SO8I0762jsQo1Bft^h2yg^A0vv&~ z0VGU|@^2LF^ICS}inm1?Sl)zVS-0X_*=yQKDRN@_e$_oO;e@k)?<=v}J8KF4_vo6&(jOdyUpCeVj-D6^G4Z_&Ef z%Up>kf~ka_F`Jt*FX-&`HrXR&F&9B~O78E(FUu|2;dQpkB}>46pe6E(0x%;m-cSx4A_*3 zl(SlTK&7^=Q}mf4G)o5MQ4wvUd|S!ybckN3u)dMPQEZu9tfcgzD3e)>2HG5c1*l3C zXB6KRX-~T>#hqm)(dzGl+cuNCjO2~hpbH7d&L?n7cgm2C#MeT!V`$kAnn9dJfj<*p z|CbVKqCHegb(Z=UG)x2Zh$h`NXL$BEEURL}8#BDT&HxO+01UtY48QI(3)EF2VS{N990fib~ zFff!FFfhDIU|_JC!N4G1FlSew4N!t9$=lt9;eUJonf*W>XMsm#F#`j)FbFd;%$g$s z6#VMx;uw-~@9mA#f`<%vSOUZyc#o)lI{A!wY2iXa4=cm+*J&!(&b-;tXkMnYcFKfb zR-OutEJ7Y2;>CYQ$(`x}$NKip6*;J>@pg&CIq@YLevSv*n1w@%x%|#ZZ<=HLS-R-) zj|QFRht@bxD^3l|IxRVK?ct&WZ&Ifj8_r(+^vs#Od`oWQx|YIQ4%0RpG0%E>XGiD9 z$U?a{9NGCV&Yiomu>aZD>1$&G6i#jq(vJxcIJx`w`IrC(O(jFWm004R> z004l5008;`004mK004C`008P>0026e000+ooVrmw00002VoOIv0RM-N%)bBt010qN zS#tmY3ljhU3ljkVnw%H_00LV{L_t(&-tF4YYZE~f!11J@(u4L^EP|j#FjPGV1w9BB zk(M6Ro8q5f6`}YQuSU??(wnE8EbXCG{0A&ZK`FHd1yNL*^dE>~OQj~Mc0Gubd9$0$ zmi>{o4(~Sa?c|f}X6I!#88X`|G7jWG4kRPXAX6+;qe_WM23ia1VG+-W1#+zdUEqh0 zm??S>l%i?KIGa16iWxK$fUF&`#@z{ufZaRXr@mt5(pesP7JYZP`HI)I=x6 zc*zR-AnH%6@p3fKdo|G&F+OPp6-512HU2IdXhuzRUyKh}LFYyNh#H@c1{&6OHDqR? zDQC{8eycLKqk&FoFLF#|a;!Dvtk7+2Ow@BHqJHf^si~eAnZ5?3Rn8fe1(o|4{XT^D zg*|HIa?JZUuZ&MJ!*MoL_D*!r0any>FUk7y{Y+4#LWL!sa?zJ>j literal 0 HcmV?d00001 diff --git a/res/drawable-xxhdpi/ic_mic_white_24dp.png b/res/drawable-xxhdpi/ic_mic_white_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..dda69060341d4f1ef5bd7dca3870003d838854be GIT binary patch literal 767 zcmV004R> z004l5008;`004mK004C`008P>0026e000+ooVrmw00002VoOIv0RM-N%)bBt010qN zS#tmY3ljhU3ljkVnw%H_00MVOL_t(&-tC%8YZFlv$Ik?-cA*u7Vks1CC>Sb&i-Hea zgi@o$4~iy*^~zlub2G^tH;TN_mPB8 z`x^CFJVM&tNg%|!Y09I+wT4n5sgP7i4w+O)DkK$>3UxnFO)Uq8jB%TVtd~}KLN}m_ zYW1=4uU4QhtXGfz=?3&o+eh6BRv_*%5_eZ@Kr57E=n~R~Fj2R|u50^GD%Cw>Cffw5j8lf^eKq&d zU2M3jl7$#H<}xTmaNZb|Bpkw)n!Vx{(#w*UE-1(q2t`kEhoXctzsq|+_oT-G92u+x`dHKv^fK)%6&YqX_sON-jVm`?@m z0y}YEVaOVB5KAm(+P9=P!_sf!CiES;k)rJ1-1D$*jopoJJOxn5OR{pGZz_4ZNO@q3qt xuhMXpf@NJMKmsH{-DH9MT}OZfNPq;0+h6SJe{e5kEm;5n002ovPDHLkV1mb9Q>*|0 literal 0 HcmV?d00001 diff --git a/res/drawable-xxhdpi/ic_mic_white_48dp.png b/res/drawable-xxhdpi/ic_mic_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..977f7bf00d80955e44ca555b93b033a29e71ade0 GIT binary patch literal 1518 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 literal 0 HcmV?d00001 diff --git a/res/layout/conversation_activity.xml b/res/layout/conversation_activity.xml index 1205ca2a88..16e569e73c 100644 --- a/res/layout/conversation_activity.xml +++ b/res/layout/conversation_activity.xml @@ -12,13 +12,17 @@ android:id="@+id/quick_attachment_drawer" android:layout_width="match_parent" android:layout_height="match_parent" - android:orientation="vertical"> + android:orientation="vertical" + android:clipToPadding="false" + android:clipChildren="false"> + android:gravity="bottom" + android:clipToPadding="false" + android:clipChildren="false"> - - - - - - - - - - - - - - - - - - - - - - +