From eaab21069b0e8c58ed2c8462fdef4d510068afd4 Mon Sep 17 00:00:00 2001 From: Vlad Mihalachi Date: Sun, 28 Sep 2014 10:55:13 +0200 Subject: [PATCH] Some minor but major changes New advance settings screen, new setting to ignore the back button, new behaviour of the left and right panels, now the app highlightes all the visible text --- app-pro/src/main/AndroidManifest.xml | 15 +- app/src/main/AndroidManifest.xml | 15 +- build/intermediates/dex-cache/cache.xml | 50 +++- build/intermediates/model_data.bin | Bin 466706 -> 500768 bytes .../outputs/aar/FloatingActionButton.aar | Bin 6055 -> 5980 bytes libraries/sharedCode/build.gradle | 4 +- .../libs/juniversalchardet-1.0.3-sources.jar | Bin 0 -> 220482 bytes .../sharedCode/src/main/AndroidManifest.xml | 7 +- .../activity/BaseHomeActivity.java | 75 +++--- .../activity/LicensesActivity.java | 3 +- .../turboeditor/activity/PreferenceAbout.java | 8 +- .../activity/SelectFileActivity.java | 27 +-- .../adapter/AdapterDetailedList.java | 6 +- .../turboeditor/adapter/AdapterDrawer.java | 5 +- .../fragment/ChangelogDialogFragment.java | 3 +- .../turboeditor/fragment/EditorFragment.java | 115 +++++----- .../fragment/EncodingDialogFragment.java | 9 +- .../fragment/FindTextDialogFragment.java | 55 ++--- .../NavigationDrawerListFragment.java | 9 +- .../NewFileDetailsDialogFragment.java | 6 +- .../fragment/SaveFileDialogFragment.java | 17 +- .../preferences/ExtraSettingsActivity.java | 215 ++++++++++++++++++ .../preferences/PreferenceHelper.java | 24 +- .../preferences/SettingsFragment.java | 132 ++--------- .../turboeditor/util/EditorInterface.java | 15 +- .../turboeditor/util/EventBusEvents.java | 18 +- .../turboeditor/util/LineUtils.java | 5 +- .../turboeditor/util/PageSystem.java | 49 ++-- .../turboeditor/util/PageSystemButtons.java | 50 ++-- .../sharedcode/turboeditor/util/Patterns.java | 6 +- .../turboeditor/util/ProCheckUtils.java | 4 +- .../turboeditor/util/SaveFileTask.java | 5 +- .../turboeditor/util/SearchResult.java | 2 +- .../turboeditor/views/GoodScrollView.java | 33 ++- .../src/main/res/layout/fragment_settings.xml | 126 ++-------- .../sharedCode/src/main/res/values/arrays.xml | 32 +++ .../sharedCode/src/main/res/values/ids.xml | 2 +- .../src/main/res/values/strings.xml | 4 +- .../src/main/res/xml/extra_options.xml | 71 ++++++ 39 files changed, 712 insertions(+), 510 deletions(-) create mode 100644 libraries/sharedCode/libs/juniversalchardet-1.0.3-sources.jar create mode 100644 libraries/sharedCode/src/main/java/sharedcode/turboeditor/preferences/ExtraSettingsActivity.java create mode 100644 libraries/sharedCode/src/main/res/xml/extra_options.xml diff --git a/app-pro/src/main/AndroidManifest.xml b/app-pro/src/main/AndroidManifest.xml index 67bdfc0..1312ba9 100644 --- a/app-pro/src/main/AndroidManifest.xml +++ b/app-pro/src/main/AndroidManifest.xml @@ -86,7 +86,7 @@ android:theme="@style/AppTheme.Dark"> + android:value=".HomeActivity" /> + android:value=".PreferenceAbout" /> + android:value=".HomeActivity" /> + + + + + android:value=".HomeActivity" /> + android:value=".PreferenceAbout" /> + android:value=".HomeActivity" /> + + + + + + + - + + + + sha1="a3cd442213d832a910c1ec51cd2f2c507f7fea64"/> + 7@t39h-*xJDFiFU>8Ieksv)ghL>Yff+9Gpk+E+Bj<2=HV5yx$1XX{uA1p zwc4z9ZEJ&fXLpt@=Zxw3mg^AhD%OClJIlM~iDx;>_pG-yt@gn89>3Xu8C{9(*RlQj z1G>KgeOz$SzyHC1`Qpd_`)%69QSDOO)s3Tilepe-?Gm!$nf{7v8|&@+UajH(cAUQ$ zo;%^c3yHQ(Z?~bzA|V9-a@TQZ z&28!g5as~@rfqtFBe0N<$o=<^?KeN-0YaEwqV?bWUq5=4_v#5pA~JS+uR@q`v4A4-j&45w@SHJCpJtvw&2${8?+!)4h#bZwnBg z0_+fL>A#)yp8B^R`cJ=vVZBbffDQ|`3eo1{J%^xXJF52~ESm(^|JK{sW+B>}m2K1Q zc-XaZ8DUZGO`jsin^*NU1YXIfaJZVzhW0q)dHTkz<&*W_{WmZB)Bj5U@HVY>T-)wj zPnt+Gw2AZE@yW6Crmmw}$HlyiF6qw5!iH4iVxq0aL6F`qV6@R`lB2f1=6V@Z<`b*~ zxaUl7*)&)Um@nH{uk5jl)Cq)`c`eZ%jZdIEW=1B0!#r&|K)U>iv5?eek-b;>)2fzj%!1TH=;#uV=h5+kKyA9-+g7mmS!TH)eyWk9rpqAUG z>(jf5_D*FNlz0K>axaCfG^aZ<(D1OW`~FeOw2j{P%4yR-Lr*J8IoXj*JD;_jRny=M z)ZXtu*w|@*|DWkO@*=(2G=2Z12iu#H6LGlh3^*rk9k%#m%9%-X$(Tw4?PF_0v}KR9MmG%$I6B3lYB{8zj`%7aX5>n6lXTR_9bzt<-c|q0$DaH3@4n*z0OPng zR6T8HxKa;xT8pOl_Rs(E%U<;C{|ub5Mvs~siI&)%VIAIfKO>#f*XNB@K3=+f^D-G5 zfV&CVn)^M^^(bPz>b=JQ+cpw=&c zVE!Lhz4hI1VYO}yYXMCpAbbQLe&pXSEBOddH`1@4d6yWrj&~%btU6p)WID_%ZELkbIh}3&7c# zM0@#T61e7rg8OX~$vE)Q*C1d(7V*sxCO*-2vTC>`cOf4G0LJ6&ep0(#0?cHK0`u<4 z#J-6kN&V7=6?1ZpiBgm9(j=1|CO6y;pdK6}z=aZb(r`_G(s9WoU#&^9q7&W;G~rId zKwW#yg!krT+jC*%TdWP_URQu+H+OZ~hym;qq65o9y7pVYbjBv8=fE1TnfAsVL6g?9 z<9gVXl^;#4^CYL<7MF+=Zi;gE2pw8)!SQ)VZ6Gwmh z-h2P^ZydzcN5*g;@Y62|(J8TF`XxX5;BVdai>E>EJq{wJ<(O>O&uW(&X43}Q$62QI z7*`7fql=M7NrKX)Y{h~%w9}i2c1P;g0Xl}DvFicG0(x8#{;1<cB;+l^i(q5k^D{yTwD+KJq)Ox4)Xq1L|;?PjbZ1i=R>iZBu~Lysen z=IL-=mR7_EbP*fS?f@zWafQy{;}Lv36cpS}v|HsqkAPsi4E;LGs(x?EDyDr$TAz45 z(XJ2iOU#S4OtcrVKa%xoUnRq;Y>4(Uu1R2{D?d3w%V=()Rt(! zp#nfq&Y^G_zyJYr*mi*^i}BSyOSCB*1a2GKw$9bvw(00?D^QhLfQPt;ur9;Nozkyh zNgdImb^>Qi$@&uj62@KKeCO@}MQcAI+R?tcym@YecR8m!a3XnlbeJF{U{6orBkcV- zqTSVV#@{r8iIC z6@qTt&xp2vkiKu8-p`xe<^e^;zk!5q`#I6}DVqbekdPhf6ai$0l@g|FVsAK>T@KAZ z;#tI;p^A~9r=Q4E+tEZEgd7a^+l<7fbtPr#>nxFV9oP+?&WfAZN z-+TvFGlDc=SwP$i!4C$S$Zy{JHHNvQcWiQmFDb1MG`j=4{tiCAOSH?+D*LXT3_rrZ zz9njF|3tKxMwd(U0fHiM(C2UOWJJk|NtP{HODlojMw%CZ-Pp z=NxYv821dYCYqZyK^MWT2>W4|Uk&K%#@p-#!Wo?=@M_L-A`6N8=BIQwrJ0>J;o|Jg ze{n8{#W@pSoa_Zpz+N_7Ezms$I3W;#sW9Ff?;<3hMJVkLp<4j6N>O#cAUJ!tl{uz} zUsR5k?ydoeEmHsi`?70FN>PXtgx`qjVd?^*LXKdYQ9C4e}Chj-*+~!Hgut1KY znmE5fI^Lo?#q5L)5a}C~>1v=J&uhVJ5OVznsP1tz4V+_xZp8BwS_3xuLqotiK4r1f zFF&g@WIBu8o$ZUSIAVg@5m>0E1*V#GY>js&xG#qI!fyd|C;pIM(I~720O5NiO4TwPlPEn+9}>r>0Y=5Dq>U)yCqxlH4l4Rm+SL6( zMIgTdAb`^u_UNvTDRIO)4BB;2S1f=Us!(zOu+T6Ae=;u{b42vuqYY~-K*v=Vz zP^;LZL09SKGW?k8CK}Qhz`5@A_>(@)Mha?Q#hP<1icz*dVZpgz=HJGj zHa=ST2#f-?&*D#Jzljvch8-*jbV{`!;m-~};>H+!cOD;<*am%UzX#tjO9%e-hG10l z(SkRLf^9#;0%}a7O$7?eZ9m5XrbfrV-WJr5Ob%G^c2Q6}fR{7hA5Dg!B`q7TPLWNmZ@s7;Cn$0Nr#ICe<=zw^tSk2sN(!@)D_=tF7QgJY~>Krj^AwE?bwbZm_CmU$*23js)K;K=uQE_}9_ve5wN zp$0JRF&29Spa*#g-EgR5u;96c6qYxa$R3y9WK3Ps(8Wo4Hr?gYD7=)xF>kK6SPxop>{SPTvTRO2S^S|MhO z5!BaPHW!vp^f%r5JUCAf22Y$E`wI+l{Kf#zs+G&ET#7P2i2tjo0+^x_{uEN8sSfzo zQ3XpK3i&+LDmY0N%aFWNmoB+mkj_3jkcuG=xg)0IgQc0-FuBkt$zUs_cAH8Di@`tE z%2pS^4g_3Ajsn#0Q7KZP!80G_#I;PFpe0KKM?hyTi9rWiV3lE0W?hUN%gD= z%+LZ!J;h>GsCa z06~4)d;)@TK|nI8CbhwJM&C0Hk`U{79k<`aMCK;knz;F=QQQP~RJ@bkn1w)YwlFp| zbmlQR>26=Eh4^MivRX1xh?bj98vR?`=E z5*yOH2E;0>Pv6-v5A2yX^(B3JacS>?gZiGk7LCRI(@O{U?cRT&x#zC^2lg%AxnG}_ zt4^`1TN+tGYE3x^$(+5+%(D(naHGWR3M$@x4Q@UnY2)^7ZCD6L+Zc8#+;(;A&3 zGHoXuE4UEC1-|!25j&UL9uNf7hI^>Sl&*skNxC0Ww`p8eaNKYBE4qiwqhU565J=l> z!i8$nXq3?bo77(Vf5%QbQI>moj%dm>Qiz;g%pIvTX|GzuW0 zGgFM5jeFJGe3W&vPB;jjRW5&jLS%FUWXX}yFLA5z9hxFh3gH=LjwyxAQQZFhqcNfJ zY1f6z<}CKin0D~{%Qp35_wa|xHvLVvi^Isp>Wj>S95xA&=FiHuOk5o+v5xshjaJZ7 zR5bu#WcT0@_KCm(^swvA>XGaV4m^wyhxcr+yE|Yv?v}|_E;oGn`G7|S?~>aj#;F8L zo7o_UEXQkzGmY;n8%}$Ib5fhJ2AO|+&i|@pbLMQs;R9uZ0>ro> z5*IQqlNGZZjaP~r7n67tvNmDpWfmp%P=^rLiBP8E^f4b96MA+9L9tTZb7ciXCEcL{ zHEysP*U{1yYqyM)_X2q``6NQB{+Upm$MHVQHDqVx+^r7y{FWkq*1A|5&8NkChb~m9$7B zRN{q?n73*E)?3+aBJSn4wpTd!6(<`$Gis#lZNkM$f+JV5_crND?o-KqBX^tWZE?yW z<;4P9ja(+~4K~1q`Ya4BgrGT#*<9kT$KXIVBI6@mwH_uCRH|8X3rU^7Uk;jIfQ+%Q{~5F7k+2y9i0t!$s2N^ zcz)Bf+9d8vRtOg~0KF+dU>o_xgTap6kxOtfqSf2&+(CGUMPtvN=7HV&mdri-_rp!y zJxk34cNzzl_Aee>+P!!{*P92L`}W*9miS& z#!9zAfc6ZNzyY?qe&-a6yypi_(Ri~I4ZdI8JaY)fK04zHI?IOWh{Nt6*aK!sTMyCW{uUeW08l~3(} zVY5}itJ5@BgM`1xire$T_o>Bzd|yq=W-$mjMN}MY_!~qUZD5+pYqSM%@O=@Le4ca+ z%RR*+dO?m{DUv9rndRYxqRA!(IE{-@T#VdS)7$Ab7KKISH5z1BfbejbZfAsS)X1-_ z_al*(gP981*Xq7c%s>?J_8KQ|QV5M$?ooACfaU4kqgG`1u}w#AcZ%snd%pX_)+?EU zgumwkOCwbU8qteRF}-MEW~q@|Q~Oxq!hFMGD?OUaF+FeNLc$9c;{(+r7!Hxy`}#KeiQT}O5n1lfz&q^`d^{So ze-M9$1rG%Uw_^d#1mD2Ff`WS9$5?C_v9sEfj-^IVa7ZmJ>7W}0ssGW=!1WjrG zgazNn#}DxF*P@2@@o2#hgM#-*3w|6Fyf0etH$lO>(h4X=3Oj!azx!J_*YqLIHO?T3 zl)-q2vOL?zOeZ|tAXBnPP)$=Mvrl}YJ*n(kd8Bi7bJlUL7z_-<^dJwXaoS|=!0h6c ze8R_ULyzSmNs8$j4bX=+AU}1Ou6G0wx0W3UJIqpVGj;;j7Sly1;ESvum-Aw(3$`Yp z9$vHHmRcXI43DA`txxkdB=U)kp!d0sO{}A~zUF$05eySHCeCTiKu)RFqHW4(eHpsP z;7f|uM0=(ud`<^L41-U0NV`M&M0r*z4Z|O!bRwF~J4~#60nwVuDfDdY5tM+90_j1p z1x0}NFo^nEE_*F%vS{g!wFJ3z`IZyb57D_49sWdrGp*0JZHt8SVt++57r#E23AuFH zA!lrR6)iJUly=nN7uPH;DF@!0Afm)DT&5&?0}a{sr8MhbW^Zv&9Wfoqc)J0xA|{Wa zFUvar1*zSpl67JLkF~PZ1)crDiGLHG{X4mc)uB$#cROCwY>Oe)O`6wxp(2OZLA6H^grryBx>Mh7&Z`b3xw-frBo-mmbZ6|2b+7{Qo;WvQ1 zZ&!93N8WT595y4ASXr7kuJ%OL$^GlZ)8%@y@=bWlty9YK68cP2zg?^_a;J|JbhSpO zNtp68Lt!h8bk6jaO@q~7YB+6DF`_Wx`n5!RG!D>3*R@UE$>=dMGK7%qM*pC(ItPo) zyT1nZT)r8T5qB8wW6v;@jLOGk2^l`I_T*Qxd&b6bjJaU2kk21uQ24o&3D>u*CVmT^OO^c?>9Qj9!xmV#RFjb zFg36HBA!)_VhFH;Q=M%!DM*hS6r8Wkvx_qjuLf2tFxF_hArXnP0}9DGy?t*SQSQh< z!oxNgCXPaIStE;tMS%?#vNO8f33kbz`(CZ#|8}0g7@zp(I&9X*l%pIF(lIC_2eyxB zv+*uK!=EwP#J1qTJseV*{V@0&Gd*~YJH%Yhw0kAGnbX(jjaA+mCujFiYKk5_+Z&{I zyGpw6*3MR!@rQNb(dMZrxunBi?TlnR}#vPDET~z8OUNk5(lC1(P2Dx2mE$m2x_K1 z!F8rH?K5qQpV9sB5DPj;N+fZ<|5PC@h3*sE2pm40MPM8!^+jOI^(L8&vuzoJ2uF&N z3$iZ`^$mvj+6%cg3!Tgp58Q=ry^UxS(+7!mG~RYLyA>TJ{F*h_Oq=sR$Y@;+Qn(v$ zGw=18vz!MOJoCC{K+2?Pnn+Ft^?CB(V-yfT`WbXTlVqFv-c&J@t`5KZj| zMFBc%`6MARXTeYEC^8)Zwi{6XJ-;2FFr{IrywuYX%f~x)$(iNsN7&=UsU9=tAf}%G zLrPTc4O^u7(`~x2(FSFpysoWy>lud!iw-0dw!LA}oNhUy2HzFGR-Egh7W4`Q5_eao z#UNR?{CRNHH9?z1J44OqF#f6W=7D8Ut5Xu>p6_qG@-AFp8wedxGYGI-8vC1kNVt zQ#SGpU;RzK%|}@$>x6^g**FUs+o`><>rrrIaqQ7A5paB?r||BwbPt~3d$Q!jQ8f2eFLzv*^yD1obW&4Uo!K=eX=1d`g3 zCzI@VgKm+KjYPXn$|5H3*<6&I{CwbN>^V?J^e;rGiSD7}A?xL{b+AO3W=LV2w*Zt6I&-;Z%sA z_4LREt+x$9@tAC%v&1&RMA-ye5IRvU$ zH13g$pS{5bxKO`AUDT^gtphqQt6YfFMAt#I;#n577k;KzrmjIf@7G2q&SC3S(pG+> zcQ6!9T%IWj`&Eo|R3&YNYnY8Qwr(^=lgUkIx8dsP99Sj!1d`9lwSLH2EL&uyvsho& z7d?o^WVUqAatX2O%@y5QHf?tqIEx0;acwlF>-*}{1v=$^c+~RwfDkBFHY$Y08~_h0 zdz8u^^@)<=Y&oQ-(8p4J>32w*5cRgp;m-0by_m4EHQo6N;erOBH-#9R{-=>jCx1`0 zhm|)O2I1CcAY^ac6?5d~jX_UL7%PXYI#SRe0Dy2z@%fjPXDUX1`CLiQp0OBripkU5 zKl@x32?y>!=I85}&>4^X5J_<+^H+2aBM=y7#JpS%?nk=kiKeY@j(WTH2P3LOKG$)q zHP8a+Hb{V;VUnro`tJIjQ!FCAUq7dNl#UDct1oVzIRs+|%pVc=NwjMvXQ&Vt)AYzg zvb$U8j>&t$?5MC%BjF&0jDTsNOnU{DqY7m3`MZ<(A*T zpp8?$>8)8!2v)ZbIJg4`3)I_>oB;PT?P8VnBfsO-&(t@ahF)^68S~C9iQT)n+h5NV zL8`jje~aC%g%GOlliqauG&JLkP=z#deilh-_r)oP>PVuDs5&adCfpr1RAp4T9b!hn zL1U&?ZikH#DpNoNxBw#CtHXg0VsjEPIx1g7DSOBufK(XoO2Ts$qqrEkfuy(7ZH9T| z6&ncS56i)8mPJu9T1(uY6annz9(54qV5UO$bwqX`IC3g4B%@BP0U0-qvaUoFLL+)b z+Yxdo!NrJeqYEeo%*wXcjoS5SNw^JFaS%gCeG^@Hgp zVq#X6u8qTFV3gx6OU}4*))#S>0~3|VCr*Pz_vT{}&xdo^ZM7k1#)9szvP?Wkr?oJ9 z@`X2%+8wIw$z2<&(kCM%Aw{fq6aMiUe9Yowj)E8qeuY0z;^P!P9%2QUxDS5TuE+Gr zwHtz$|AOC~!N()`cr<9{V6=cY1MT0A1&`sQfsdeI;`R8GKF&r8YG1{lsw~M>`s6oj z>j<1T1Yn=XpHJe07Q9ImZ2K9$drMI8R8a79eD{0!sM03`5UTXaRr+K=gQsvq{4Jbo zy7FA@?OfvwlAI=Q-tBlz^O)&`ha1seylgrqBs4Zpvy67^BcEt}q*dl>z#cLy$isnw z(2fnz2-1-;pMLp_j~PFHCl`%|n6Lp!{Cv$eGew zlzBFyU4iywe96(8XgOytJ=r1c4(Su+S*0`#e~g}sJLxl-r|bfvHI?+BXC=JYd~6iR zRtH;9sDZ{f3fU$2vD@0TDeTg zr3>#j^!6(J*Ph~;K&K#m5ly06hXU@ut4;$v5d98kmc(|L-i6IHTUTapai|?JVG?8m zzy>)_d5%g+^zlgTHkIfTgMF-(tuFWM7wqn!a*sph9+x!(vd~!No~MyH=}RE0B&AAH z3bw!kqE9ICJu3>fU55ql#|IS!Lm81O3&I*75H%+LG1^pE@DC{k8fp==58>m(_z3!_ z-G@IvijR*)3l8AVPvGN|_;@bp{1^E1Q~3BaK0YG~wB=~Q=S0B--3FfzY6P86d>!8< z3dBDD5|(}$A72qoF|Enh@ExuD4N)-hSNJX*)whCz?_dFad>8-vUQnmphmSY zVU3_E?Vqs5_wn%qeEhYjp?y4B@WY^hu4-80$3emSqBZ^|D0o*|0oC1vO+AI*p``v9458~|XWkbWMu@#|1{)oNuCF@t-mE==uy=wT z`W*f|j}NNr3ktU1gYQBmV5J?@wCc>`r(|{JX&jD4X?Gh^MaMKaNd=vh z02L+dv$;svp@Pn*dclSlQPCj{!p;^)(;0dYDErGteUO+ORrWFMpt9S?M>EZ&-t%!K zHf8cqfs0REC3gbyX(ueHM7s*~jA&iuN;&)r(D?1jj^k*YuA;z9Wp`fpm%y&Uq+AdG)3b!qJ3n@Sw|JVLFZXhPYyL$r)X<3AjC=$&5e(^2cTrB z(i6)TSqxB(G1&iR58b4K{QC13!vapie^(CYHWZNr%5#!t41)tWWeOq(~p z9{>b6`Cxp7&%w5@_eh?^aw3434F(U91)`l(wi>5Bw5uMDP$Ywllw(J*jcL+#)IzJV zHlZL+N2dpkRn~H^Fbyiu)laNWf2+R$TKmH;#D~$B&HEi4>?($|^xg=82$S|94}#Yn zm=DB9(cctbXSHW+(BO-C)gT2$yhVx!6glSf_Pucgydz_24%=XmItr0ijZ7jK!5^@T zp3&`2fIEBcdo^qYP1{N7#!mcm9X8&3$2&?&2N-J7`3X!<8EryS)88tca4aSDc}*M$ z{WW{K;|K&3>kp7k*r57rlnxXE?AoSi6L4zC`QP7KG>ti{>A67XMYAx}$KvykBWDI~ zMvjj&5CaO14kVJ&;qjER`HYO7PA*5C9MLx72W2`(9~EnRIiG>c zVmbtrE~3?e6<`wSt-W@bDwggD*vm^5a&^c8A9igUv=qQBFiyA!`6xPOoCWf8mIuwa zkcL2<^EUuz8*}}e9a0PCd(DP{Vrvi$36wke$}P#sp{ow@dz#u zvb)P`5+Q|P67>mfq;|62mg;nFGX`8_{j$YcUq|lx!v8>d z?8>;1&W8p1mIyx=yk%OQ3!hiOv9cJTDGm8X`FJVLVzB+YmBk=~qY6+M>_wHuz|)&N zC1Zx3G@VLR76WeI7*b=txh)2u+8=WMN{ay)BDR{v;4dnR0a(^uXHs{JNzc@cNtdj^ zeL~Awa=jMy7noe~+}0$#ooqoK6}wKA%*S9G4rMU_rtqRyqK5mTTbcT`G6YnH0O|IH z_C{3FQ9E;Dr=WJ&n;20F%9_ zp^zR+sn~xo2XzF$f?HD6{zEy=u%ycUJggVNB930Yk79gj)cbkDuG9+tJS;#0Ny?|< z&y$XoRLP%*=2$FX!D{~3=SYJ$i=uxa$2lid{lMWok*irFdG+C_2R?}BU2m0HJY?s9 z(C>d3Ek?4-ITU-j2js1{5$(d=_31tJJqkl&y54R^Zxhr=gWqz7sx;ZRR8Q@%Pi>do zEnmr&saiIkF!{)k*s+K%_0;e~w0HG{3F#o4mqR3Fd5R|I7O5(ui0~g_UNNuivGX3B zVlEmkiD+cNXvuhuxdDFXI*c8n7V!yE&tWJSPD_{QY9737%u~Qa!ma}UeWG2YvncRH zd#!Q_d%Inc=m$m~_5#w##V;k=sdxw7eW|1ET0Z}M8gy41!u1&xnQ9a9fJ3JsLL(D` zXWO||2!y8gG3mY$qr*p!Ed+nm{CrDv7mBPj%vGtrYHs*ghi@}=%AElxD*3wLRnj-c zmnVJ0fWNQNX%ZIND==a9MeB~3OFD!HW48tZ*R|dK_SwU3g^NR=VUObGpm`=5(`yNye5Sbv_D8j!*=M+E*=Nv6!J9qOaDDvQXIhjS9Xi1e6 z4@U{n5w{7Kt{jNe#!sYq(lIO-@ER|s`VBcFEJi_Vpns)2%aST8=5wAVk`m#nq&_El zB+t~52Ea>WJmRKd^qFWclAu~5twr8|EVbq$4-KBQj3Vz=Odz0gv|DKWVYWB?=79r zi*S+|Ja*)}$QU9eTx^jR;k;fgMc$7h-ej9Lm83K#Yt`ey*hFrM$ zPP^@TB(`|@UYv>E*#+e7@xuSvyulg?ok77lj9MhIa?;i6TW>>)^zO|PVqh38YXS^0 zC?g>D5p6cUnAzb&60LIJ9uBDt#tpeKGdaw0hnUNmA=MMz%<1d%#%iD}@0aK-b z0W=5#8)u||In*_NSK`z`-tlP1p_jIG8-GzQCy|UqsUeRutvxHinK0l}6&G-KOV)A+ z63(E3l*}GIWPRh z*_;33Tn>wqi1L@c;0X#L3+-&508a32x*zze=QmrtvBmff2zS?j1oQz=<=Q4dZpnfi zoUqp*@=-bBW2J;#8^&&&K#)L{rTr4n?M-p$rqhC`6)=OQMY@crvZ75etlT_?#5@8V zv>=3RNiB$ZI6%_rmDF^YM+^tHd?U6QqB#7^5}68f16-+XgeP*aQBd?KpKEh&gsY@h z!8|Yw6MaiMkfqO4JqjcC;)ICN-Rvm!0pUUpub9o%8QXqD z_b^+oSQHE_KY-_OwC&@|4mi;&S{{1TqRkoqe$R7*IK?>X<8eIi7a|Y3FpD50A~u;Y zk@eRkpx&b``?QJnT)x|{87v^R3|?q;!CVJpzuYVgHUV3@fx3H5$J%~?v}~69RIMxP z4+I>~PP0_k^j<`OX}N#`hZ_Y2G@Hm=(C?sU7GcRwIuysGl{+>piape^kQ`CHC!#`5 zYliqBtyxa3B4RM@F~tP6UWZ27nKwxyHh%V`n#KdVzXI+5 z-2Qj3`{Q5y_RA+A1izaok-mk$Kcyic6Vmz(P08k0-19)%1)>3QP+K+fSUi@Tf^~JtH3`V8a~$Q- zF+IRi`yG14?_USr%5skTewYsex9nS#E1nT>iedzHJvz?3ANtrC^N^LrgZ$7Z;U5o@ z(F5wW`%?m*0Nn>?h6Z6{lGOp?jGM{Gf|RV4%G8AR9=Ilv$j%bNt}73i>=W%iOo532 z0Q=V>sE-L;WP*D})AjwM=#DAymEFOz{f-iKdh<$4vbd+YNOj6HMaH2&Pr^$vKngD0pOHYH~pIrj2Mq5J@?*G{c+U?!EsWum-Gzi8M6X78o%?F-b%dcK?hX z%jm=e+kAlZCW(ewOg=${q0xtx>(e6wc*I(Q0C)1R1Jghayj<6PPunHKmVmk1uLIT4 z>&u=F7L@vN`1=_Blgr45e(5}U+yC(SuT5y%XSEl#HrT~g$eu*B%V%-(?Xuimc!BPo zS#3vagV%*K5LKQN^c^@Vc5D+z!rwtN3%b9GZzw>Ithe!BOdvR{UW;CV<&)ul)7$UX z+td^3I@%ecn|ppcK8bccmfg(-KUo1lw98l#MDA`uwiw8h7x_(ZgF@boR6YZKv z0cUPO#-y+5AjLQIhv=HX-Nv2aHxHVoVH%=Z6Xh|;=t0Zr4>}6rDo(T;!V=zNSjKv8 zVsX8yQ3Wfu` z8D58u;T7^2ctLaoVshXr+$5&K2`0m!t9fl+MtK>c?PhO1V0rBgVm1B4xQLy$Aoc#t z5;47p+qSENLJMN+6Kzi)Rrn~0c1yQPyzy6d`z~nlx8h$OGr>VxCy;oOxuN*H$y>XA z7_`YD972O$=RIP&5F(pRp5uY)i=dUsc!vUfVKcvx@k!850v5a-3mn6(ML1(!hmY#E zl;)%_gH{u8W3AGe!V-sLOu#MiVbCVSe8XI`nkGjqM(zxAoe%L!Iz;iCq2v|fUC1 z1TgYD1{g-(`TJm+Y!|jYlPbor+W}0<4~;5F^jBp7LVzRkWt1q zTe@etgjk1HbZ6PL-DTTar3aFHPS4v6c_n=r-m}4~dw+Z})+NK}ClA ze8d!Tg1>4)LK~tn8X%V=RHEOoEy%y&0EvEaR36?!$6IvoH!KJZ!G-}H9fd=ffZ}|H z`gR`b5aK#;5ut51ttHDeg5kcZTSKSODCD+Uz^D4E2JY?F!2Aj&SRA(faz3MIxzv87bG|%5>x{VZ z&UsMY4YWW;_h2#p7+fbgk%rYsO2XULpt>OF>0W!`3lGc0IT<}ce{V6PXC0SJ= z5`E(WyhH)&P+fH~(N^Q)JctP*piF%c!!-rz+F|lx2$u{?rj#*#4v#~F1%2TwQQac# z9pcq3(&`rJq`nB!S&$W?H$_`ytDfo6T+AL&{ z+8$`$5{7eN`7@|q8py|cxAc;qR(DIslDuG(+%2uL7{6Jg7MeFvMhPxbZu=SXO>e;m zEeKNGZu>dD3)2L=EvWGmEO;`g@pe&AJA&_iA0PCZYS2`byZ}J*VT4NnlG=Uv^P~9q zShU~({`>?!K8cU#1av2Ufj>Wm51NzsGoqkMUH~8|I(b2wdj{oK4po;v9tJNTh^{9H9S(A=}R@o3rnv@%t zYUjjZ2xxWbl!Z*fOQ#8Ou8-{@X|#me?*fCFZ`JNzROvSh#?roAN~LZh(xkwfXvBkI z)R|IG;J6A-f*bL9J)@*1y(=@hK34b>WhphK!7%qLrfU^d<=Kn)?8x-}n(}*TTI4Gf zE8g9MIyP#!Vt|Tn6I2DXGxVLz!2wRpjGbI<+iKFl7EB}YvNVlEoqz#CaaW(>ad#Ja zjF%>NObHs8fLzq@viYHVlNG(a({D&$)bux~+PDGg64PseLIrFFexqsYV0MQXz%U6G zsGK`LslAVTJGSC;3e;P*?R{O4k{+}!xf+Myg$kq$_3hy3_wIB#nxM?G6 zPsu|=Gz+VN*^gs$l$<2OdsDm$30b;bfNz=sM#ZY6jVNK72uCD&g3^}~y7U7Tpt3YF zwE`e;VhnSeD~>9MnOl}{D&!r8G2kwJfYk0##enPD&{huucUK_x4;BQjc0HOaYd5fF z#vKH%Z+%>??;2IuIA9*CuyFu{Dr{U8HV)9Bm#}eNudc*7XW%)Qv)(b&2~R!nXHR!H z>?5EYXLqyCdc}ZXDAb?V5Y9A=`IY%0Nx(pE*vO3=7SlEw9&o{4f)NIOLw&zZVr?>5 zQ^jl}nS?^lc!6jMK&SI|Yz=`=qA4aa1`y{{xKJ0ZPw!wR7|jv%J_mV%EarBi7{M?i zTzsDBc8S+7WE{T|MIC%eU8R_BRnGD>yJ^`c{Axy=yCzkno7~7yW|9f!K)nMNHx;KH_ATQv}g370Xs1%RQx^xZ@o zK(voT@QCU7aNiL?2+D+{)bv48yGfXGw{S->V% zZW2sn+IAgkpWly9D zEeM3HIVDSxc?8D~#hFDb?Lho@q;^XW2cpzMbr|A80fK1*>JQmr_yvX$)nTY3I2ZBJ z3^vIJ@n=}D5)@E3yRhI~Q1ET6VdJBP4@VT#K8ru;1(PQt1=@*dfgjZP5f*gt5v%bW zzB`W(db9<7Y`+KJh5meR5KU?G(SpinP^%6@Ko#nK$UPYa0r(Q4%9ru+l>mKa@#oj@ z@pXKBLljK>75)r88G{pSf*yC_nfJY*#tY&w#H@Df%HuHZXF!d7Ln{54A}Fcy+fGAm zY)8!ekZ^RpD^h{bP-TxMk0OScZlT!XhMR%CHENWP{!i?Ahv=kw-w($>B`iY z8ZJYZEA==B;lqU22v@(nApLFtoR|FF$enBQGbco~n!>q;YX3&+SM$%6UybQN8Xml+ zpXFDxjUFo7kibt&&{I3=s22JJfv3_t;+vQrccJUeeUlIy6T0;?_AFAG9z1ZQ&v5v% zn-JgLQLmsx2tqov?mGWiKPPmLX~7X5mk@0&KI3$Qi$?4>VsU^0)<6UYC;J!^D*0yb8l}TuC%_?z!%VLUhQK8aP(m0r`(} z6APj|k_oYJA-s$+rRyMvVKAI2cG_k55T7%Zi45-p&mUY$mOHv;{?~jxZ0AN<9BdwEl!ol#Y z5)Hy#+Y7@MMTs6fIVA3e|0!>5iF=b28e`tee=^3^ltWUDX*YkcjMFc6KYy%@AlP&} zI!tprXj+6QwTUp|c-kZB{b(7NifcA74G^cj=hA6!{8mWs3S*hJVxA(9S7kT35dMiw zsq_HsO^KLX12_cn{s~^Qz3%RS4Y^w;UAbI1lcvYJ#io|I%8-$OPgBHgb%J-KM zuX(<{G|liJFo@6lk4iZ2Ox@%llRnhJw7QJ>K_W(mm~^lK8}bI^w;2OxOOPJq;yQ>E zd{*kn_=C&}1A51obDW}qJmCm0h1MlL`}~AL@Xn7a)V6#&POjRTGb(c~R11sTtE^q{uG~f$_sikzMg%EYjq2Wrj#4RnmZKsL}g_BGyTE zv+z4@%u3$i|4yy#ZS2`yhyNGo2k@TqOuAT!u@Gf_Z>wF&hbsB75cizk7N{K3pyWA) z8<9b?T}h~}WyBIFB@Mt?cFSkVa|RS3 zkG``svmKfAiN5dONK2qSh*+yK6aHao;MgciyekohSd1|D;qt8USVXt?m1q8ypcV*f zg=kcf^I4{;TIH5CZ4e6Ep}14Zne^`R^8isr|u; zs_4&k9Ba+=eBA~K)-y~pH4Wy*JEvIGC_m8F3m3hwZmxL*;~$;1foRuC4s+ox?#c); zEHnLV`EacO9{RndoAt<8XF*hki3JzB#D!Z=acwFrEX@6_5O;$9NPbaPkwOgh{Y||X z4*kzdw|O%XOytKF&c?4x6`}~}4*^QVk8h>qf;)Cq$pu|!Qg@6=&(w`cm#moHq~$ER zUW;a4om}$V)+D^0Y(a=1yH2A;AA^wK`|x-iCOCMhk_&zlClf~74&rlH=`8>*ReB4C z=~YB;fI}70n<0bNcY2Gwli1P7*^nqq&aZZjh;mKytFgG=z9Ow%7)x*P$S@-KF^0^6 zVf2|l@N90psF-q)KQN5-3wo8jp$~;~gr5jQL_C?>ev1Z=Yz1ip>9)%d=tht+Fu#lh!L`JA#=xP zYs~R%NU`L8lw%JQtM7QKN)b4K;In^N!Do}F2&_aUE)iA9k2Gxo<>oMb-?L(GRH9NP zDwQ=8;EsP?WdiI|*_YFqw`ns0R%c#y=82=NI`d*j8zi8mN&7yJyg;QM1R!9_)IQaN zrA+vz=cY3Vb#y_(zfenuI}5$g^2-61=nh>A8p$44M>jz^&0n(P#nE*P8UDilKml4n za=)G6n;j(gJAsM)i1zlLf{~+BH^|_Mn+@2EP;h0XfRHls-M>yeU9P7JR8GTzYA>PG zJT39q#Y9UO!P7?yal?&HlN`16HP_3?!6l7!&h(Z|gVkUvI&D%hqA<10wM0uK7+G{( z+ti(m9wQ?|HNAYP{y}4P4oted`)gqTkov0Bj$o=5=4hv&vBn0oIvz+qRk%q{j^k&e!JI#Tjrewp=GLEz_D*F7 zG=0$t^!0gTm3PL07HYXKdpW7y{xIM#4P9j#lP#01xW?U+-P);Nx&U4;=zR_dGU+Z& z9`kevs6V;kc3^a{yPIT^xRZtpi5DH0O!6MUS4Jni6KKK(zZ#nLkowTHJ$KPITdWNv z-Sl4eu15NTG5Ar^OgS@?QN6;kLCtVMlvV6#m*)-b(hd+Rx zdsqh_ZJy?$Utn^RNdA2Wg@i}&@hB?*j5vrt!-9u`g4?m+F?=-e5fn_k9)Hru*+@a{ ztN2sp$5To0l>{H)Ri(9#3hI>v|9zwzKfuQjTI&o~lSBRU>c~_c?Kn-O-@1*zDEsqd z{7_Ek^CV^OG)&x#~^FPRFT@6yW8*el3^_jDr7yjbx&3|z&hs8+* z7|dR9#Xg06>z?2AtTti$1h7CL05Dw76Yah6^$)2<5wgsoj%7ohac9X|rc#g~A}KP> zqH?r!cMV8D9{|SJHUV-=7TmB{rhE7)WiJ`>U7U1e5!0wFC)}`3*?QAlacx|#Y_U## z>!mjWlR%JAtoiRN_65mVzE;@65JJyd{Rp}^nndbAi2>y|$c^05huB-$A&J%@2y zjW-Y6f?AW3p!9U>bq{Qb)I@-Z@*=2DO6Gve&kYhzAk%9>_HUg)(r+HCpuu-~=1tq) zkS;!%Qee%ol|hHW_N2^zmaOXGsK6YU-8W2cn4mu%eOKr+WKeTKuA zrz4F%j1qQIIkfIuBGyk3@&n;<3DL%tWsYc__=M6?VoqN(ox`r{85St;K!2G2DaRZH zDT-zGnhE?=P!aeUmfo(ygfL$hV#3uGCV(zuJ2xGK^laOBnW{xYV2D%#j>MH;LxB0#=rYJi!U?28yoT z*?}ms;xP$gBlR>m-3dGm(7C9P_VTNET&JZJPv1Rme? zDcsw3%6o37yytlLaw)T37q^?o8Nehp^L4Q?w8xpgFBJrvZbygmm|F2T2mua6GNcno zdJ72;n?ib1m#Q3b7(@80RYbjMRg!cZ4#9Kapn|rg>!kR9GBk2geM#ae?~=oWAZ3f;B&nZ;Pp5|sL3lC;i^U+0}wX#iv+u();|vd=Xf4kGK7P)O|@+x zhBP8jO6H%Hiwg_9H%?Amo^S+fiVD3~O1=#|^f>#iwkHjO&%*K-Qj0>8e)M|^@{>c1 zw!Yr7IVkeu2NL1;J~YJM9ya4{>JBJN0KO6kSL5W@x@JT!PRRPi7}2yV7>X6PK2v5; zR6-XhZW2P*IFFmI*t=zfuUAOImkKIrqRNnR-xdiV@bnGz7*EE24D8gRuy0&y^V> zmGBnink`Yv=i)@Q_Y{Ggvd09!?AhS|POa^2?AZ;eiFP-N70e1zLH9QCN(@tpVTCxI z^tM3d5V|CPAhZn@BBu5RAK+B|26cdj`*vroR@B zD+kDeUYyAE@uF~Z04NkILlwq?4giTts8R`4pDHo#mP5)KxnE%=unaA*6viD5Kz9m} zVE*GsC78b-wFFa$nPfmdq9~E3%)C@FGR_xEd=`yG==o%c0a6wz2<~U*=U+_;I9a({xt39;AOt&z29@ir`gu z+&D5`RqW#S5ReU>tU_FGBwee*!onP?3NcXkM`MfPjSDgT_BZunSmHk)0+WYzo(fSs z;yO1LPI#QRv{T?vA_h2-VIvGsBE{8;^8;Do4CJTe$w(ED7+CKk($rWnC6@p|L)oPh{rEl9{CqxKc(e1I=GY7;HzAkZf}q}?HX zqCKmWhUJgZgE=h@>;*(?D#MEPd^Jqa12zg|t%GeSA_s(V4&FE->93_b))HjF2)11# zU8p?olw3n!XWz`Cm2&P~ zaSf^6(!;qYwNRaTxU@s){v4|N`$Bc*X&;OpxGTZ#c}uk5Tu|_BEU@v>!bhOVtF(mx zjdvqRo(W*p#GmiNN37uCl!Dr;vEcXc@m74iM>MrK%2SUf3W(d`hE&-xZB9~QCxsP9x2$GvlD5!N8V#RnF&kb)WruqUJIpVAQldlj zHBk218r>wR5|C*Pm0cU7>pH0ueO!rMnLJhCnG{#ooq!A$2}>){t^yro8+0{XVTWG< zTEAV{aU8AF)tA_e(3@l_>!dVlG;f<+PuAB3mS-5-yN4XxAxx`?`PyKW31m_;y{r*( zH5urE(Hf50yP&>2K*>4s!v8>zoiv3aB*ps3kTZxXc6*veFzDcGoC<|`v^9BB0_uGw z7YlmIQkf@~AOcvX_PX$S1subic2^GPju;FRd!A{73bRQw^&U6oJ4;K}I#t*w!islK znisZf`SOMPBj#dfnHF-T9;VMrM9j_3VH&m#W0o5~33=*U@eHQO=He#dM?m;(JT!0vH1Kcst!OMd1iJblG5Q(j!em+ z8{HL8liDto4lPQ7g-tS=b$P36)Ak0cguy)NE_x+u(=NJ|HG}STMEfnjRZPB@<4jM9d#U!;iG|%pkU(l_>(@)Mha?Q#h-oIi~6=O zRVp$7F;zyrO(4p)pCH&nr@gm}g4z)*_wZHNO#BtT3rF>>px`@LKp)@5zrGg~?1&cpr6{OTXWg(y(3JL1SR=IM z{I#f|eLPz5!=T{((SrQVLLjbh#826DemyFQ_QJGBq}gb7cFSXU@|84_6GU$q;`cPi`CR9S zzGgfHCQP#($FscG5#-sPCizgVlf+q2UnZDhLLlvfVNI@EM5Z4#^kzVnI|k?lx77f8 z`Ks!Z@RSuYJx%pwu86`fa>7L25$^<$v3r_dz7!3-hQ&VcM?66w*|QMNw5LffTSu+OV&4AwDoml zI4TpID;t2PH_2p3?kgLB zvt%vf-lZFvnWv6grfmpoSBk}ANF6vzp(+dH=CA>Pcs%6%l{Nq{Eo?Cxz|I|&4FGKA zt~04S#-wNJ#-vMD;Ci3sEV*8bdH_r=d2VYG-cGh$!?f%4ruH$=yytHN08a6WXDaiO+hUJm3|*x^pInUYBe^Se*bh%S_gjFwWJ#UhjX4~Np<{r z88U*!9KDtwrS{Tj`SXTfsrCGM8H5C~luy&2H*G7au0Jouu~^80wf&1Z)8@^h?|(Gs zc_%dfU~_vyX{j01CpvlQ;HU@Ah38#wl`%m=S#$%4O`(_mFv^T%mvbona@R%-3Vh-2 z`t+Xq9)*1|-J@ehZxd8ZgF|wL#x&WtR8Q@QPc@3&4PnWasoIU*qGB8*`d&Pc1BNW3 zzdW@85$#<)VM99D=H=i;{oPK9RF%<03hZ?8wV6&a7ZELS@u44219|Ysx4*{R055SJ z1_Szzi*FoG=@ywEl?uSI#ykalBJ2)uu*WW5O0?H1SD-iF-b5ELfkX$V;vIDNbB?xa z`TX~3&_Zo6T-2@sm89C}JK)gg5juF;i9zP3G$)eoTPZqv6vwdXs6F|X=sv3Jj)93@ zm`_rD)!gv04&Nl|82$s!Q*vg(YngA1uTJ`210Qyy(5w{6flpF|1#?R<^(lIO-P?Sa;ZpfjzMWC++`ZvlmEva_k zkr7N4se^C}8j&C1#fM6yAs7V=ORXiyOLHdgkMd~>MnUgNsx5fkD5yZO{(*VKc8Jq# zPVR+6Vtu`3bB3^7UV@DgEMHu6Kr}R_fCEIPNW@+U+2ZZU7QZ3h zTRM9g;T1Eu;mCK9F+@tZd^4$F9>XjB*Anf~_z1g;Rgr#h^0HSPTmeTth7hkn)*tWf z^+fOKE6~gB^~BtRN>pvK9EWBfVtk@$}-9>>Mi(9&f{Necj6-P?x6tL|;HEimzqh{|DH z#Sbu~hRh=WkW!#wk|6Cv`1mkBf~(WD`|#&S@loB|1|WcYQK-$r6F|tm0E<}+=JAH{t^LH7U_iDUey3ZZDn`HO*z*a`oEsbCm=UpP{P268D5SduC97vh{x z9MBnai#7|t*wUb#cw+h>(T>L3&gQBT&BcS6U9Gy;n)mw5SeCdy^HhszOUD&@}7 zFc#hff&{88?U#UVZ;C@VofbrGhZ!_2(q%-I6>WlH<>rYjl2@F876eNzsc|tc2Shr> zl3Eq>3a7x9arEXy?UyAoC*}&gQri(9%*k#+(WHC^#9WD4NiBzYdB+QaU1Ug+vw5Q5 zX0a9KWxHp4E*?-sVYeGvPUesWmPdp&f7n6mq`hVuawhQJ1mzJ72Y6(1*oLFHt&@}BtrNWD3%LWCTjJF8LGfq(obCZv`A2cC zQaQ17R#VMEX6Y-E>kw%}t*FSbEcBWxRa*GNBKi@(tqbE!ATS zeX%Nne#A_ikSw}e8>L<#FvsB)v$;BB+mGlTrim4B#-Qv2c=kryKECXLm#d=Xp+_y+ zobm7XJlB&)eLRl3{X*nH7iJN}%|<{ZEMxsO3E1>#%RX(Q8JBNhbZ;IYkb?|fXm!C{ z2OGcKEDSaQTe@|-yEVt!et@)WmcUf4BI^$X9M4X(JkRv%L9k}IfC7gb1qC#li2C2} zpl23g$xb>H$E1}zHY|!g)UlAlP<1DwLQZRj_#mxWPOTzhFr_iY1hqPcUhtVW$-NZY zB)6R`njb^CBbFb=JHOm34@B*==4e(G$seQz1q z#Qo38I4MR!btuIvt$V3;iM zNrv?_msd_fD0`ka=MU2Htf#vz!hLbhBsy~SSy-1G5WUPInh*pJO?}cemP>YJ;s6-k z5~)$L4H}|9F=T4>r1!39N9Yp-8*qSdTZx8QR5?K(q0xtx(3TFP44rqPb->j?(_RCo zQ5w$jk^?viyeXN7`i0(n7#5JMt9(XNSp z`=DtWrXe@cMEQegFA2V*FX#w`XEf1X7A@r?3CqI~HPIjs$=t#U_~N)>>hdt@SNIaV zDmw_H8^Z6I5J(3w1F@RZ%8s^bE%uBCa$%31dzHZ)`9 zbO^U7hk(sThY>CkZw48&$eOU$Io#RUq!o*lvXO9~F~J}zDu9hE$J@UCqV z)8HhIVd!;IE4-X?6Ee~n=9<+s`Rj0V80I?P1J?$Ph`} zl1GZExWhPTqP-$$IPwjg9V}f_))y?iu8cO3HrUY$n{HCw2gNHs)DSfyP2eYy;f70< z_)Z#f_E%!q;f_eO6%765iJ=Rm;{#82#XpD)JK0r$Vga19z7a!Ct`=`681QAmfPu3E ziVz|W{ucBlL^BH<$93E0=oiu*`8`9yuw|QW$B?GsZ{9$-b@3%1oJ_Ou^%)DgRFpwx zv}H4b!688j%LH2kh!t+huvo^b5b>hrQWGKBpr7zj&G6L?mtQWGs)vAV>&;b2D3<`F z{GI_aBow?X07Xa<+MY=fNIov%9c`T#gd|NA1iM8hIkZram+%yoUb9h!$1*Dl1{JBp z-|`{s3y=-!v~>^i1-3X%fAIPja0*Mn#wX_3FdNk_j6cQXHu&o%nh ziTKbLI^LptzhS`zdNwTR^r-EEG~q1IP`|oE9YS0OoWR>=(^|4jBN+anUK%@%3U{~F z0tU-hHS+3S8kt{#)iKb^Ow~lV&Dx%e`K>4z@#F+lm$#W*9I`v%E|JTnT@vm?`2$>n zpbvQ^!y(`&VL!hi%{2Or)K_9Kd>MnDLK?~k!#@c7Neq{NA@vgO7N14cV9GwCg#@7k z`fEyCL1{v?aMK6xIjIOKP_%??%a9@mrF=B&ZTMo@pK5=U({~n7gzp2Z7@0b0phSS`rJXE(cC?u8Q`jcG}N4KoZ^Nr z%jdg9lBb4pw`8Uz(R?6HMW(2Tk#G(+K|LNW2zW>lLZiNj;bns4&OC2&e{wOeBum6n z+G6b`3TTIJs23A$H7;kSj}PV_2Gz(AKc)Q7b9gEnEDQ%}^0pvVQC8OlA+QvjbL^060(VoVrP<6L3ybIS455X+HFZ}Ck)!o8+ zkCxrwiYiKa#a#TX?iND6AnLVDQ+o9-O;SZSvz7Id3{35eHVgr+?iRAhIC!@(;rB|F zbG_|4NukBuD2R4}fr;1BynLw6Z`Shrb0L(vi70hs-Ch_Md>DnM)Dt)=f?L@}d|uDQ zl~jG|GPy=pc%o!&8fh@h$%koMMOAtBlCO{UYlUVr)FWS^Sn=*2v$0WwOF8PpO;8lj z&d}Q~2RAD*GbG`$@I~OLpw>s!30N}}7qaQHbocH=HJ98iC1+r3a#8)vW`~YIYeU@g zv8jO$3|Ng&?cbmZ?gnU1Os@rs6|ge+jV4|Ifq!vEEQmDs7gD>f_O?ai6O`PY`nv8Q z8|*STwRm@OH4e@T75Euy-oY2`=^?k+39v43J4e>`l81&E7gmF{;)soISr<^ZtP60| z6BC(Z-%hl5q>r7Fz56D?ecJ@1V+IVvfox=rU-}G(FHc7reMlD*ezxb(3e$ay#QHg* zdn^n(!s8Oy8u1yY+ezm1HPbolLgaeOL5$CU0bf6y*lF_#@aqM~AgLzR;3pzz=HD~B zA{OnK`UqB-fEz}_gsUq|0G-Enev=`jXIqaZysW~63KJ+_h@8`U-kcM#Q-0$d_-(*N z3tzXJ;7VbbWNNy;yME`C&wTpuf-C2ps^e+P6D8!?5Ea`+qT-fDK~O6s@}f{~GnD_+ zc{MI;4#2^)DpBrzJLTTDQ|?`r%q5hJuOyl}MqGCmIXYx2OgL6thI}q>^i#=@CftPs zi@hs}+EH)1 ztmJ~gcEX4*=&y9$-2sKWTc&WiXeK$TA=dFOxpH=#iiotC4ML{nTUl{p{mIfJIS<@L zG_|I55P-yi@UgN3AyZd82m}swFaT$$11GsaK;D{M3+{GEy924wkY$mJ>+pilN`2{f zkXhlq#`xO)c`h^SqTL^gGt*(z92EKSsBrTl4vF&fsGcd9GPRv=5S$Q~R6<<;dg(EO zpM_%RQevt6*qvFhPr*SRg5|TN2MgYWlz5$SX@8iFV7&5XX?RoB#l11fonI;o0(XT; zvGV6PHVs@VITU1&gdAF$^QtReZy9;?6_Pxvf=Zh7Hl!%Lh2+w|*fd0|0QvMYn*|sn zms8)C3nWxqRw1vdJ}XRaEsfS#1%(KQSCss^d3fGp)$L}xa)JG-^KRqy#jA^vsamEHSnJEN5Uh2$x8R5vtPSS5w$Yfb@2gK2C`f*BELb}LNQ#v#$HRUP z0G3MBREe5j+bmdJ4%u_$zPXj;=DC&;i)owmWzKTJ9S^TH07WW5lq>%3$YAIANM*af zAGK^(yd`ZgC>JK|Z5sBm80qhOo8^!li#Yh@%>tdW$cLaeP6S*}zn3KWNM+qkl5d7d zS9eqwlc4{M@WWlx;Kjq<9A?>)7Ic4=1>B)=WA35PSAlNs>T{%a2PBPP#zfPYY?)-m zHSV75+ED${g%xuW@4j2EGwCi(9;2DXCO6y;gj1m@k|v2eX}Azx#c|0b?_!dy=!EwI zO}LXlB{2Opyf-I7jDRF!E!KwaOfuPYSEr3x%h)GG$9&0M`>kI(V?#(Ii0%T{^X-j0 zf+ita6l4j8-Yg#?;55xP!QtzU0Rz#ENf(CUOhM{%?Yv%dqpZ^zZ`3ycD!N;RP`v;>14+RCcW5HwiXy79#n0P(@ zq>rUJ#M-v&5G3!% z$6N6chGeF(xxW@Hkf`ht6Z!(vF!AS38~u45C6W!6!Q zU>F~Q_&jGIMg*o`l@b0*R8`|kniXn+2B*w9W+=-)p2heob|9=V+@@}?N&!cwXjtAU3@tj<0p}eWy|u2lSGksIm>l3S zYzt?d+#fLYtG|$TO<$7glEfws(IckgLt1eFDaacPcQi@9`q!j(n@YZltxK$xtu9<0 z5Paf*$z5s=6|P*?%oY%?Dsc?>X)3@~;#eh)p$z(INe~qT;7j=K%lP<8KwxI^=hyI2 ziDOJ0n^UqFeI1H3i&ol!_#a8_mL3j7sfFq=MC=?w)5s3PFI0zN?VAY6P}3ObKP%lN zz=f*rs-$UE(zNO@)Sf~Z{O$TWXvEf)$6-8abe~}gg&rcJfnZvqq;gOS9gFh1KN@*G zR1W$ycy$Bfwt|!{B>=$#1P3spBqWIep!$roK!Y3MptPN`39)O6<&J z)`E2AaW&!z$itB^7!&Op(2ce&Ns)-(;m%M8Iqa=(DW?$4!nLr`h7f;ylKPrpwo;FCy5)!+$W=Bk$YezT&a19Xy9n1^XBx+k!z?dQJXYU`j1^HeDR)to zsL^ov7oS^boA~D{9TDUOGMy%b=*Hs-cRRbS7!7D%r6Uq>*(A(lF+<) zqDn_pVFKlACaQEq6()qXfYVSCnF+jVpyBNU;f5pmUgxvPuvHp52Wzwr(_zxXn(>bihM}3)}OgV^}WuV`0h* z@LTD4i|!O8k0q|hZxCa4pB#d<$wBxdVf@ZH7Dw4f;;I6=dfjDPJ{2hp3p$CAL?HU& zFL}w}>?K(e`gv6eg8a7Gw3aN>XjFHRRd{j4{0a+DJ|>UI@y?P622P_@3Le)bV2lCxV8f5_K1BtUs#5SUYiIF6 zSo$R@oR?L2i&rUl&IPHv#wFZVDR?9)rfc}^;v~B&1&=xfY?XqCT|(okfgY|mNlFC% zr+nd`I~d#mcgDjANBI%vDg{sKy}_i8XLdX(VXG88&B;LBKN88W_@Fo`Oj_3it`G_E z`H@S2RdSocwc%Y+t0>8^G`hsD5Gf`ERh8Vvh_FDhWUWjVHJ{7XhIjeHC^l2UgEyz~N(Q@ssDo4v;Ia>Ci z{4-4C#8TyGNeffm^i5NxB)iW&$}o%4mFQm1l9C*S zThs!?G^qvTM%f7-u|aN>6POo;Xm3|~=*JTV$#;P$_#*Log{CYk`iPX!**tf5U@t4Nm!2S485#0(mB&xHVsyTM@E@cjOhCF z7X!yV3I9R^VqWp%4g~V15rTDMxz6d1 z13F#WRU_WjkPA28X}4XE#1_ws_mbn{0kD0Tn%8|1&nibT1XyRB=aFu3sM+OqoTtP=I(>Ah5Saherg`_jO4L9QX z&fIg~tAPM$+D=LgcH*Dwuvs5dj#3&|#;_6y9D_0(+n6zFHr@qT4f<)71NU%9W%k41 zYeY-zh!Cd79bztFe{xD({Q~EzCXs;+K=!?W$C(2_VGU+3E>bhjkm$<}v%Y zwm^@U<0AR+8GQE$J|1NSfDs4rXIQ{h>`-t!7EmL71OEyNCSH#}>Empqp!QY#sYq>_ zn)9@B8v=k;ZbJYBP;OS5Zh%82^)qDXU(=o8vvR0^ULBdrqaCM-+@x;fFUtNr89$WM z`82#jMa;GP7Lj6sAWMac!(7e{Y_pad75)c4K@X%;$}C!Xaj-+CL-CZ-P( z?Pz?++3Z$yl<;fTTr+LX{~)7vHAvxZyv@AVXU=k7_=~eQ|HZi+7UxWSak3X&u}>jG zrRO(2t4-KG0W1&*fF24&dvCmpkXjTW%N)X(UyO`UDM%2J6q#mGIa<2A1|*;lfK!NV z{{QWLdypO1S!dsoV#zKOKO$qtcFf3+*v8hiB^> z@v^a0Y3?Y!ojm$U4JpGBWK*x7QBHZOrGsJIYx$ez$i@s-EIDwh$K;Nrd8*8zaAk>t zRT@9trb+JU?ccaya!-RE(z;zTv zZAfW`5gC_6?rFa5bA5Hokxw68a$MD1_UWF>K3y-~A4ij{+-g!s&;rf4?9-?VbJ?d| z_Gz1$b35@qka_#1tlLAg!3Ke&D9+&xrA?T};7Fh0MOl~};&^7)MmrN+_Gxz}Faa51 zDPzZl(3quX`knAB$a#LNu?8`y0F~JnaS1NU08<_ zlA`9p!)2c~wYBLrl%usQou){>aPR_R!AKxSGuN1*W?}oe?f9h2bWg@IO#wN86Uf#D z7hh0ZYLtSZ9PNa94ASY(J2<&;hA#WG8prU%Iz{!M8oP6ZwK@SzavW3A{3Yw8^ z(H%xiFk&WtVd^&u7~RPfXgsDNm)O*Be}(x1Cnwpt?9(p$bO}Zw&#Yjw6rBB*^*xe` zNBDseZ+r){A?Z!ceO0*EFBpl>WuMl;u*0w*vIC*cwog9Xw}nY7T=Wx>0A2QJzXXEA zJifCe!l}`C7A~zxNrqd8o1Bb<=(11Cs%Jw|blIm}_UT}WD&v+^Sf^s=kyX+5Onj4* z4_)?Ymwh@1d1f*XQy}}f?9(p$be%a04YYK*sgT+T$KaH3K^q}m_G$3WDap=dpFR}>e0J${%Wp0n>^5jjrC3Cz zUnKoz*yU$stN@diTH!KWJ%H$2N<+Sni|6H=VzTx0}&`$FiaNd3}R6l(R^iFlV!TQ?)!b zGryo4@+xTk{AQoNOk|(t>)hp^4x8d|D3yQu1Cy}Eiu}`j2MSwXhOzCazGCxj+IkXY zHe}2}BQ!t6d+leSzWPfxFhFjcMxA&EgH9ZhO`slxh2$PJl7#e4mx0=M8K{9J94P&U z%f{&hDynP2+`=vcwG*h4#qeVI(=sH4DTpoYb|j4QSw7O-7c=^;EL>$ANH4@{eWIowixn|YVFe_ zjzCpRml{UW>Evr13eB6N)+P@sjr=k|RSPK+GR*WMj(DXO`9teU>Xf-XmdK z&t?Y;?Xk>-maD@|vK=XnrHN)vX5<~GDrJ2G%6jI!4W{P*f_+wy_1wsvW#8#Z0`oFU z5!XRdfX==#JA=(WCZIgfg~0ayYH+CIFSi0n$4!?sPQ8%_a*RZTJzg^V_#^rP8ElB} z4104eFw==~L8j`hkqdllW%)DIF@w$0(N36o`aC+?zn13tb&0A-r-r@+_@*NJ^K-bYx9T?M>ILk=k8ZdEM0$ zSlAHN42&0gZufiW!Hp{S-KevA6d%X%F`vBnKK?w8j}!Rdxz{nPDE!=UE9Q3JaU1)Z z|M9X9(}eFymUfrE9q9H95-%21t^G0n?Bj#J=!h5IXYp_6@Im2q$&2l8#lJn9yl}WX zXC}hM;8bQn1U$gTWhMeqd{gHj?7X-tWtL&c6-iYs&MxsCOY|_X3EG!rB=a7L$yWP- z@&a;JVFVh7E;`Y3)&kSw)Tlb3hW$fT+PlWB$%>=KQWGW0CE=wEvoT(g!W`{f47rQr zQUiWZbpu9x8i{E#RTy(mUxDMEVbF(_8u7cU8!-+^jMtD!>3GXY^yZ8zVtv)5#Ly+@ zo0N$w9W0%VikFV8peZ%(rRtUtkKYQTHZ*x--Y^S6xf7zoBT={q!f4})=NK*kaFQ!G zV!yiSg-ZatAr6TrGDlq;z1Tb;gfOTAK-<-g#2z)q$O1I}h1=~%jgrf^Q5^|j`Ld3% z>D-{H7@Sdo*=z=891}$ip;=#6BD*F8LWWkpvnFR$*!~S?R4B8s>tXDS3X$I+ zv+3DC@AuxO^T2oJ5c5C_1c<|7&}x=9N&!!E+Hds}32)y+ZwDFA^DaNP6QB6c4UqDj zQ2~gsHH-?-(JG7zV5_*$j0)d#Mg=gw59jIcj0&ijr6Az7M6drM{w?*0Ig`BjI=*P( zqm7S5;a~d#{-l-^%|viiec_A>o_7jKLLIDM#(#ZSP`CDW{P`33_(^>HjCir_F7?I7 z#S4eS1u{9K0uaF&70&wgVc}1v&ZVqT;pr+=5W=B&I?W2pRStPd4GWc+Qj%$|-n4+i z{nVHiDkbJr8y70EPl;tTeddKq563ArFjS(G7E?T76GOMklYXlh8GUahLc%xoj4o;MDkoWT4!93jF?D$4Mx$Rm`%=in?Z{MG;h0|co*GW-@C8AFT)UO z$F9uzJ%ZYBfK}&c7R|P$a@p<#RB>5smosaoN_#z>=&5lp7iuV=Rw&|qsMON1({NFa z=9H&;H3zE{mDh}fve|hRl}l|{pdG|Bd^vQjan95#JwQ9jqroNs-+kx|NXI*`9Zl_L z)V>IKqTmGZqp(%LX8@bHo_O!boPmSJxnXDTD5iGqHe0X&$4eb^i_R5*o<+q_$J9tkUiu$ zC2$UUr#`RGj(xAeiQDWq$l;cMwi_idx}5cG?zw}(ir;U6|4L^iTxB!4^VZxg2JS|m z(Yr|JLBBri{Z?h+q~m#~MfOl}g%|j?$!Eu&+=0yyuZpm5mce4z)mM!ATLsUIqh#XFO_BgiHtcnKOC|nasW{iRJO}st+o3r63A`(Yk#G5~u#M)W@+Wg{b0Y zHFK=xR+m9mmtl(`RZm7qK_c0{^Lj&w+{nj6~PXlCBuSZuB*3SoMVratm-{4%NCk>w*_RFCtI zN0`v?{_zkB2P-&9=i>&OrzIaiiAvV$yNmbrIVu>^s-mj`J{wR6ziu&T) z$%}FM$mb?S+28H90>3i|TZ+8n;eLmPxbs{1i*h+eQWQHcE^$|R{J3%7EpV?i;O@X8 z(2pqJDjVZc1Fpeb+IjQ2UdXTFfvDg|s3q60@xP?gXEOnUePR^tVcJs^50FdgfGwL+ z|D?|Oqzp=N`k{mXRNU-^tOQ!BXZAioyu*6k`COISOZcS+g?j@?uZ9coxaVg+?7a3T z=brIT&g)@v3^R59glFv24kSB@8&TLJC+R+cRlvpe`!Md%R`XL@)^|X~zkiy~-?}WMp!J=@`C;rm0Zo_YhWR?Q_v?p$^ zFZEhJS?NaYIQi?|2gEzXIAojY%{2@Tg1d z@qQS{OJPiNhU-C^voY0*3xjE@=}O4fAyHuZVnB@eL3wAsw&V_maT=`t;$7!11qT2}eM7^7wH~5zD>7n&LC$@fq@f^4U3-#?dgnrmXFbJmZHp zfGG+)N8&h*OoeCki?T27dpc56a%dP#o%lZL5}O=@V_W*CRdQqWL}zt z$eICL+qK83i3Wikufv}w(w`eR7XxS`kAg;pGe5(yEoN~(Q8(urkzh+3`Daq{74mOp ztH``Fttbu#4v1yYNfYp$BHp&W_4}%5j`50_&A}9ml2gg#hlSPfL==deN*}Q=&r<2T z1SE4lAU+BWd5hKT5IuTD72=$fL=&9-i|@)^17Jur(&pqFX+(RX%Q)%Gfh}48uy2Qm zoMu$a0tAX<6)HWINo~mpoTJA#YKLwo)`J=VVQFO2i|@xlV3hN*YlNu(X?->F!Cb?E z&R0Fy3YQ}v!>vCUulZ5XL{ltu;EI2vw8W`grNP%%iFbSE#}9G|NtTp}cZ20yh&JAa zY&68XDgOhSxQ2MQmiP+I_QboT=u7H=SNI)gPl`OWK?o8PZ+A{Dj|D+9 zXy$x_W;IR+3$>Q}_)Srt8z|oq@3!o|(6_W10fZ;skLG;JTT4H-P^y7o4C4KWr7C=T zq#5{DTGI0P1z>IaxMJRHsfmf~bOdt{6TQ@jcyriWmTCmxGV$ugEz96;JN=}Jan-W! z+K8=v%(`sZgAMIt+U@JgH-ocb zBj7FGnBB2vut6JSz2B4l5eSAD>y_=3PNz#4cEdX0(!w{f_);5X*v(yr4(?Yh~O8J>o^AQI{?t#$2$HcnishugxAYNMUeQ z%-UZT+)p9+rueOvv_UNmwdmPuxi9f0t-{JL;1_&I)+?|b0Mbv{o|Yw^ehA9()OX0r z1E${#5e2r7<;+dLmG@3zNAP2*a?8a+E9YdGaWqfLZSnMMU<0XI1ZXU}G&OhX{LVKLw z0r90EhGiqG^`_*o97gKrDnTr(PcM>?#3J7GqJW-pR^9+UpzDEuWg{5>3aQG!w5>7x zQoj7{-*KYy`u1m^XVAYMNP(cu;0zJ>cjNy%eb2tT@4g$1>mV|20sy$El7~aG)?a?u zUj_lQ6|_Ol>=F_lSo1rpL94q8vL~-=?_2gJwc1uQ>l!7W5V6oIOFYZ9%f~_sASKm8 zwnf5P;lxslJdr!xll^G9d#D*g{2DeC=-c5|7r3m>>KsLw@9z`R?SMN}FKC1-VbDy5 ze0<=V7tkc!ZMQ-Ajj=RWN=exG*7a<D&(ZdG7zfQZ8KVJU1)ESFhAG7#U%$h|! z3)|lZYc1t1K=p4G%94+gePEsNvwkaV`h=ZOJebo4`jK7nPw=?1N4!hrWk(f6JLvOL z`cz#7QXBP^Lzz$c0R%TQMP-CB-z}0hZX^c;!}iZ~aoQj=f)$;CwPD031}Rmdp|W)z*~lh~ zhsCGEdC-@qc;XD7Lv3YNkmgAtYJqhg^g-T+x*$F1;e7s}z6jH^D%)0RKNc!X>{F%p zJP^Tv>VRN8$WG%Pbh76>bM(o9njIOp=lpfso#%XK7P#Bl2!dbEcF7vVB?vo+S)_W) z*_Ei&T(LB1hIU2`t=JcE7WcfIYekydFg zmY))|axV2i7aB9*=LJb-{!XP;^1^!+UwjfDpTb8%-P%L=^Oy1QE9#5;@#kmo;auv0 z2zVqpmwJCWre-K9<)8#pq3nu;rpV**3=Ua{)y$COTO51 ze-Iw;0&uCX0orZc;SP4d+&GVVEl+7S8k(MB`-clj;ymhUJUHr6Z%A|c9g(x`C6$#> z?!B%VEcXG+mJK_lsNQ2?JQ#*uYDT$~WbIw*FgA+PQfdj1@_<*~)W`Kt8>%zlkdf16P5;s|rZ`^$JxUO@gJuXef_SNcnV;eRI3||9 zfn!RuT_hx~E@#K;LzM8b191hi;ckHD(UzrCOg7Ksuud_u;*GU@s^12ODyE7~FWno1ZdhE-4DJ6&3;MJ}{n`P~dtQrws z?=&hR&O_|WffaSNflIh(nJ~3fkL6T*-poJXLQl1wi3ZQ9_JA%lhG!Dua^?b#mRWe= z={z;?91JS^aL`F_J>p$s#}E$?N0W2Ed3SwAhoCC~gw70_LifjbVfp%(L=R++$CFed zgE zKb0%VypDK{Oi89#F4fj1>jlav$@UZgxl~B~=wyUc5WB+_5K!gqC<5Y$PDy!Rjt)kF z`eF~fi_`J4f2j!%KUmd3yM5B@!@&IB`jUJe?V%d3Jt&s%>30Cqhl-Foe8t7{Y|YnD zr%*a_bC&=Ya@{wHH-s`kr|Q9=6N3*okQLMqT%#k&S$|4uw`a*&+T3WhTG0S<8iB+-BsPAqdt3~;CX1qcF0 z*e_k>Y4YLvr8u`7S}w%vcaYjGB`!p%26q|a%#5IMWS8NW-DT+Dhwd^=*?`@+t+G^+ z?lN?jA-fDQ{pUue)J+YQx>;~UH6ha#nM%U#)VFFop5Le>>{lhTr%J+@I#(}6y7^pm zp)w=B(FKeEZ|lX26C(sg7%=3ftutpQ)|pK0ZFXS8a(WY8sdyA@{)PdWc)LJT+6yJM zB7TQEWC$%v5Y?Gygap%}zTYfT8m@HE6u0%QXV=wgT0WCS&1!KTA}R{V3Rm5{M)5y4 zmB9a04*jXjx{(e2p_;}@Q9u9YP(Mldd58KDN1Bd>njX~8^{Wo`(>*VKd((ybv3cP+ zEwYf0ofg^Kb~VaCui%3!i=E)i^HjT3xG#8rBCIUlQ@B9VJiIUAPt+oh8%{zcQZU)e zNQYfQT%ltSsr!C3 zam>#3Ul>Z;q?;!-v<Qq0cvUw4=tfAG*I_a!U=HLN^}jKDE`%qK6tk3Wy&;{-k) zXD={(4gB2dm>nlnaiGm}$$T&3EI*462h9N@fC=9TRX_*o=D@{C;Q-}?sxm@Vwa}b@ zcF>#w!+DMA&fBuk9CzorJ1@EIPvS+N;%RVC-uniQt_Boq`6_VC>j~q>u~y-L0c%W!|n* zCl97E?nBC+;z@j3pG3Or%R&2$89ND%ms)fv2ul5qaW=stR5SaK3;PXWzFsR~zu$D) zh5bG+@F8yz{aL+}Or#Pzv(xyu^AI%1N&QahXDbnS4JY-h3T@Au`5oMsU&4pebORC4 zb8$eaKNmhUWZ2rn{SM7@=C_asqL=ajKp~0U%H#12eoG*P7}xH?e!H;Wi6e@!R$SQc zX4DOvT86STggQ!`@atG`HfV8i_dYmVT-a|Qg6G11>m*nhr%;=q9jgfYy(5DBqoCS( z?FIf$M>b}}V%{aJt1mU*z$^{sP_VM(B$pagofx-&7`=Bfmki)AHDL+Gw{JB20K%%oZx#2qH;UvMzXe zV^+>S*08qD~s2yN}s}!k?%q0%Gg=04|?3E^J(q`unpeu`k{1AgSj%^@FwTV z=v*1m67Az-86U;T*qvYnWTNtub7gb@58N{{j>7>wvb;A27OX0DWxU}X&Xv)*GP*nO z1+S9;^*)OS**SdBt1Wr4{jK=7)JxypdG5}0cb@m{WaE4ssWFB-Zz^3GqsjTuLFz$@ za-p_tr0!&cnNw%RtS&r1F%rn`j9ERYEI_hQFsFW{kOWeijmfw)UJ2S%3?RP1T1GQF zG(5FVjnKE3Ga+PpBtg59I6(se{Fgwm@gT~>EpZGC=#()_I6`2O@-k*=hNc6U!5wtb z59ldn^SOll@1GuV1ge_5)G(4xCtu@Gs3WObn>?u0XR)jIxCD9gzyBR6ML(?%d%4?%Y5&$CR2nm!R zEinUt;lP>#ZH7p`p?YA#J}YpaHIh-}EW>GP;ggu$v^=y$|!74r}4+Q^4HSf#Y1tGHQ2ov@}x9RH#Aa?qR) z8&MaWtVOlZ)u;6F>x(mIZ7SD?JG}T>q5`>_ZCXV;q(3NxD}m+cihIRan8ampoZ7RN22qp zeF1+`pXz6n7v53zMJ(o`_Q&|5j}NVc)2s0W0Y4*Xwe2n>QyK~EO#P@}qn8ukyhZBLJ1)fGn#9`F22C#0%9(3^}`;xNaHh#C@?8uD_LLq<3oiN&aU z`YIgvEQ7+V)R^B><(P3$V#J2ns`HgO`^%hFMe?tjm~)U=^86DMmC}Nk<4rVbl2_K^ zlp6WFt6WA=vTY27-OtZf_9+(+dmG^mmYu!vb# z*pzN;AYb8Z5X`=ivw{;1j>1YNe`QP9*&y`D9|?hw#g%Wb$=M*#f#2C6y6rlks54@- zq%#!8&IX~msAp?l?UJdpL4Z?A za5jiU=lyk5hC3U?3to~y*n1vHLOljv#(#Y{p;g27;*{k@?d|v?H8nUJgy*dyNj`@U zYHIimLERY|x7UbE>ik*8f$eoRh_W^azZwk%hqEqCrxl`E?VzXB4pEWqC7J5#EfFaH zPmLv_VscKkEutcmmRL&DXN{=%n4D63L`CXrG0hXUNK}xZ3eD|eG+V_cv0ClrXILcw zfbh&%jWVWV#^K0s2j{xcIT zIOq2WD$fD5onx*r+m^~@J1bC=ZLulOteI+%4^tRvYRP+I{0n9oT@0w%ig+I?wK(il zTm%?;*jZ(u>OADEIb5ZvylNz%&d#f-#AbsN?I51vD>4Y|Lhd{oRvryD0a))tXFz1! zdF^O=LS=kd`yxP+f)l`>!e#-V1Z?8^(eh0hO~3$*22SWxTnr6Y>kVW6dm-?fn`~)% zyFiPYZN)C<=b|NU@Q*DZ_V9e;Lh|Jy^EQk6nno_ zJATsfywf6ksJMv=eCOn|V^8kDW{78mE-pKU9GY7OOZPto48YK6m^?=Pt%H}Wh#mEr zF%>PQQ>w36Q;&*+-3H_;?2uSQf?Fj0X4r*kMNiduiS(o8?w+6-!U3|>3YQ}vai~iR z-7ajqb{obUFCphD4}3~>7Aw_{9FGzKimC`fxpV&%=`AKe(y7*6RHXcqH`Da#FD7tw zPN@zfoWKb(S!87eIWP3vV2)jhQ;)A)uYPiMeFpKGnapTOnL}Z~5=InxGZA?<<<7Sw zcmAB-nw>*bSk@c{QTa~kgYt%pS+f~DY#NN=D&jq<_pn&HQ`*77%XmWY#YgRmkn#Y6 zbAB;@M(g$&NWut|r9O^5DMXbyt2#9Y&?XpUMV|IZCngc)7isbyaNdT%C$y<0y{Qo= zZn59%bt9rp-gv!_RF`E~yd~ouxU}6#eyj?SjicyTjm2vwMn9%6*!-v|MvYuwdmues z?gNMHSBYorgmlv#>5yPGhz8lv^Zv$Sb3IWG)AKX+#-F{yrR^RnZTCHtki&c8Z;`a! zwtU{+FCvI2jiR}hkmE)5#hK)V1G{l&cn5a#yjO9Rd=ej@!bd`q+C%vBm+|o{>WlmF z=V$QoYxwxASXVRO#h)pr?bpQ%2X+Ix`~ec@j}nr+fjqi7J*o}yTQTuKM*+LTp4sdGLlgHoIcqZe{sgo>HH zkd;8I^~}DziFa79JD;mkdzp~|dKXBoh8OX;=f`E|&hh{&oEw*&J0m9Cvc3V*&9%QU z?4x;dfXw{}XoFh;yjlrcfK8xVcsinjS;FFtVqZ2WkZ7=IcJBA;)U_W4s^zlmajj^u z)GD@`g|ng<4{Zo`JEf-0ihz}L#8Yb1tSGVto8;<^ncnxN$e39rEvMRw`L1d#A9N8- zpZT)Nb8$-TmKC`dh^t_dpsQcYswV)U?s_$r?8vA_AP_@rZXqU4~#@ zIOr39=~%bnw*-<(V50WK&Gn^T%O@+{s2wMN-TQ#}XZ?&Hft>pZow?1Vvz_Brc;|$X z9c&(yI%E`cO8*@DMzQ*UVF9FxKfn@4Fck@^5iS972jh|K+55miqW>|_GzDDdwn$YTggtS{MxoozgZZHz?b+*8AvQT%7WTlOT6xdyr6i}^^En?74 z&n?509q-UJCe7T#qb{+>`(Yq2g)z+;t_Nw(##AdV3^>9mtR1qKXKR({6}%V_BOgNE znXfImgJGP;$-j8lxl2)}#nT;la48)hmF#oNaIg0Xc#4oUdHFrAS3KO7flV$^f8=v$ zajkm}4ra0LU~BuC{Tv7BSvn8aR0ieWQ(43G`mwe<@{Awa0A?rb9EsyJg9iH7yl5X# zc0et&4(~5QSv(IQ%aPn|QVKU^x$Q5UEo0O}RBa76i?pnfn!5$T(H3)LZW3SH-<=pm0XKAGP&~zNd`|NIUWF%>9_R znSO4iTm$pM5pTD(I(&bm8TdKWrFGypfSv8*db-V88&6ZsukeK z#Jjsp`!Z-dkDgNHxUyNd?c~=!XI;1MShy1~izOup)=s;BPnquH*Xj_gYnnHLe0bg} zV_o4(hYi!dB$bcZAg!kZZ=csphq$j`i2Pf1fH_15RCt2~O@2AD6X?zMHu&e1EzLRp z8r|L|of<|u>yd`v@gB1;ty9qq&W4SEw|ld#gUw(gSrIwMy~xDMwi8Vsk+b%duc>U# z#69BGZT(P+0N=w>)D2L8MflFyT}lg#X@t}Hu2LPMyOEFDx@D9Gu!J&l>oPQoNuwXA zkf4C|NHSVVsIaGq3Sz5r8Wi@6f3HxWuwTheOlE(8B4YG~D~z|2jQx7s*g>#@tKi1G z*M+xG2tFl#t0iqQYjZ7nW?FAYd`+v#;T7;3KD?akt{nhkPua-UO^|*HTJ1FJXwEK6 zOUQesL<9J_kau8TTCW4z03YNWUygfib0mMPjlg=s_WZ^=9?RV@;W9bsjW)ETR|A>##HN0Nn<@^ z)B-ATtSe0~l#s_NwDh8Yo?kh)Hhe~q74@yS;USy|Iw)NKTD%(vWGAI^cijU;`YiXHal zD19y+F!qHaeUAf2j+1sMhq`I^u|(P_>%kh_9D;kK{SE5_?eZ>aCzfU_=G;&@* z>XKFLj9FABW+x$@mCNjdC6Hc(pnlFd+mp}eNRbb3hwbkZ0&bA-(%V6wm(r(-QBQ55R}N*S({yHG4EPZUDYAdsXG*1dq z+plxo4)QkC1?jpC$MTg|5buNfLQK!AY&)9$XxO6e+i;EIm{$Do*|y(W_d8*Ih2LXf z1c7^Oncia=w-ZQzgX~G}>m)mQGgC?q2e`$G+L1?Yo&1JNav>P+*0ZhI|vVPfp~u-TzlN!-){i8kn{eomju(~xaRM@ zXZ(}%dYBv|T={_fwXB$C`vmqFS2*x+N*~kr=VYZF$vk&B3|dWbh**4|vw^yF0{1)j z??U*ZagZlyFzWto_yo|kP;Prj+AX0Ed|fkG?yuSqkW>M9EQ|+(S4+((gAwaS%_A|2 zo>OWGK->Vi-PFhRVf)rO&~3EI?%wszv3|OEJy8f1zBD zO}%_sh5%peO~BR5qSxSVgPQLEQWVg}5Q#hn2x?M2XzsM&a$qAYqn)S|s=POjP`ajz zT}My@CU=6Wa)MY-xbc$es5WG{?<_09(lRFASb`Hjh}sY!9PAA7Qlo{A@(?y0#>TP_ za8PA7+`rt`)rXoK3bpM6@dvW0Er)~Co0E&NMO3>eW8J3edBE?!Z^W&46ig7@ERwhF zNTnmnY4#-(&gVyGqNtJN&f;S>m z6~?o{Mk5$HZSlR7lEVjVtX+e4&)OSVH4v!t-%-pyjgKer@nll}1L}*%lNWd3i>L6h zgpcIK%)9X?eLStasQniH%+kyatg@>OT*8HT1lm)Tom298Gyi}qG1YtiyjavTe`k5& zLOcS&s4nlD39VlHO1{DiPiL-y=U^z&hl5Uf>k;o7JCOF-QmhfZ?>QHoch_fh2)Yu0 z#xH0JEg<8GEiwrD6+KrqlPsvwgba`IQe^PQz=mY|nMxc_4#%271SL^d$}pcKojlax$uX9u(X6^g93>M2$%uzUE^d#V6Ui0?ge5%*c&zAl?wl0-eeSgH8-?&Om06 zOSs^d%3(L&NNTrd$zj@DX|-JFLKt<#MSG{W8`;K3@o@|v^MXh6zK=ht(eniUiwjAZ z83BIQI#dYjvac@yA$ zz9yE>%(w7onlB&$RLoHHMGC=q&53REnQTX{fS_NBbIYOaLVTLkZYgmgN;SC45Le>J zm*JP)W$1v4u#ntk$aa&v41o^6iAT#<#hu4^?BB+}xy$ec?=K)O5b-uLuS4ByYaD7s zrb9B7h})^Z)^?mFR3g5&Y8gINBF5Bjc`4G(?4m1`8~u&0V0?31Z$2<_!cb%a!+zR2 z^}@tEm8td34)T}F)FrtWb!FsHzzi4$Xz+Rj4XYB>2EW4{G=!EVX4npD2HmvQ)tgkmpN$9 z5F*rll#C-=Gq)_X#|d3rwt6mE2#d%prXf)rg2xG6xFSA}4;}_bK={6be{(_?5CKn6 z>LZpRbXAJrx#>}d;2BVDIHo&q%OZH(o#*bnidvl6ZSdey`UH!vm-w-adOD;9J4>06Ymco zbJA{rK6V12oXcfU4h7^8@BKP#CQ~tP$I@UmLf@9>8z>=ZXsjN&oa`PbV&rYmO@1AH z+8hL3L~;^A=;7JSDWiWZ;meGG9j3KMxCQ_d(sVK$<|KzMA>J8%!PwVE5?nk7F9Z#y zapJKDNg)@Jyjw?y&AeTuP998S+=tXU#gq87K8bX-ltTa-GjA!7-Oj^^@b`jf1NJb-1BX z!}AUkRdA%ttLb~<;o9B$n}L04jAJgPsG|P;*IZ!f>r=Jp4VQ)@pNQk zhCJqN99@s8`4Wm{qw36tz@HU6J#PQT1>^Jx5WZ1RwAvi8YaQaFHK>D+q)DkbEPCb6 z+A7pkI6d+Mz_~rzmF0FFHrgqMh(4Ycvqc~`Vp38Stc!`>nDv)q$*v(uM>$GO!|k{r zCi=|~i_gVGcW#dkjpWcsLTT&tjhb4~=^L{^N8{8tjxF^04-5Fu0+aTp+3|6LP$=&B zD09FQaeV~)x1j*G^O$V1KrP@Rp0gMWIyYy=Y$o1i!tIf-c<1;SHU$u?l;h*as)oF& z(x`BJ< zW#hM##qe=lC1X%FPNnPPvsEh^gzi&veUvqRNagbrE1fz&W_6|VP)r6%WcSCc9#tNY z+2|2CK*}ANj0@zIpoPV_p>Ho|BF*&3g?8m~5-A<lp zi7S{u7mdlw5h;_Dm!VBFGz-BD?yQS`KuP}Sq5hLLnS`5K2p9Z%KT zW0nwG7cs|r=|6V@d5_^j^aiX_Q=6txxY$ZavbF@ zz;G?<3nAZ8Ev*~oPOkhoBy?{d3n1w`ulznB5G=IE^!h2JrX+ww%n=eO0c2ug0mI=n z1?n8=wpy@F!fxkn^p6#|+Zs7A?Q@ZM&X$@l9A!N@w4goxx@wJs%Eq&qA2R z)!h(R(r25Z@X0<}gXA7*~yWAJl717stHc zW2-`1fOqCh%`m`iZ~-~(xB7uN#w=*%kDcFM(v8ekS{Zn`p|%-pmX3D9%+u#lod|< zGiPloN3rCLEnOZjWmZpjc=k@vo6loQRCfgt#PvkWZv-k_KMl!w%Pgtgm6cquOkEdx zn!!ilNT zzB6Z8(Fjyc)H%p&IXy&0CAJ{yc=Ml{WR|r&r6{m6iDeZf+o@aeb^>|6)UYRVhyr+8 z%zIq%xZ&~uC%bZEU!TO3!v%sJ661d&bNpQ0H_$;MWLJ#r#;$I>6wgg!OkB4wdQjhJ zvwcmxe&+Co)y`#Y>zL+hDmTIHNe}}TH|r9c;td*a(%CYYog!yNCz>FIB~AXymb9~F z*zF|e&6a`j0-P#6#^;?a18n~1Cr`7pWe63y=K`eaiI2VK(da}y6JExDeK?_2!}j8oK)p9>R*Z zI2;w@vtM*~eeb^dz6`L7T~#^f_Xs)^0Ej%t>|wSomCJUXpm>8~6QNl%HKrVO?BNC2XpS5XPj26Ng$Ji~`& z5ZH&@dBik58f*gK--phC2)gsy(e#eW_^|dxfJy}?fWL)J!?HQ;yneL2Sw<5u0Hc8u z`V<#K*428$nEze~{N^TGqTVjh%4S>1%OT9wCIofRX^IhlcZT~=$sLwmwQ7LBMcrP) z+lj%+>g&N~jFZJT$tc0!jm}8OBJ|#UUY{NNUQ^=8C+66J4zYv5ir;U6-wyKv!p*hw z*4!-yZdRYsyGZ9jM+?~dt>Occj^~{g*+a!mRN&JmpB;O02R1`IBP4U#G33zPGFZC* zDF6Y6M#KKGeYACOoE5XHK65ujOYD^DKYHqsaj@Hf+>0F&i^z71q~8p?FumwW8!wT5 zwA|ejG($K@mRjL*2RwHQRq9XbJUG+f1i+UX9+o5nE+F&1L;hT0(is-9au%k z&Yk(2SeU_eg#5wPfs&Gp1~OlR~j>C~5EA@&2r zJFJTX`7!s@UcxUu%-$P7dNsVD?Xpu^-yridA9h~*ljE|LyKLo>eksrVsmjMfk(Uwv z%o6`^6oa*KcqXbWnyvi3`uSo%3sh5R+4DeAWvNwcHIr$@!7ADi-FHfDrSGXuwL7J@ z(RWohV$knbYzpY!Dybv9@o40;&Kywgwv z*`@K}2e5t&-JSj2E};tjo=?`e*$lDN9MML+6Y32EO7(+2@t2Nu8-7b*kOYcoPuyHz z>a~2b(v8}2^4Gl&h=114_z_5UpU}CvOgh_HJcU_IIJZ33)|>~W4jBiW(%-Og(QZnl z&S5Ui1`n{55KJk6F!D=$20q)f7X)bIT(^(@7|7PcK*^1lQ1d+5ZY>08J{5NF;lg{%l8VUG1TVUB%sAEGiXJa7+c2^|@RBPmc7<4JjEyI)@@6a_S&D_JI665iH z7|2UuOml|oL7KBM)rt!Pj&PA4Vp$)2dNnKt#K?4zcjjwL?qC?F5%4eGb?#EQ<-CX9 zj!y`pL%id9%Y#oR-0OV;z7}LnUVe}36%V&%V3SMKANd?wTu!&bo50>))8ndH-dgk28FnonsoKyVfTtf$VLKs2>6AZ z3&m^|#aAZK;$Q%dj8F34(a+grc4isl$Im)RUl!Mie-!La<}0uLp5A__z%rH^Db zP~JsGzy{|7;v-j|cbb|EE%k{JRfq#mk{xjNFTN{x4S=!BNS0GzIf_WQ0>(PgWt?>8 zzC|0t6iu)JhX`CI29i`9#)yCu=Oa{lDwEnJr!%A5iH5rdU`-kr^y2$*5E!YoLLDyk z!>q4HezPS!&3@#;#8c$KEKd>W)b1ar^u_6YnnqfGns`4}Q0zf2;K+h5@opwD#ZJe7AvHD12fMN@Aks# z@w+3 zcN!a3@ic11*w6}38qk(tzD-I%Y>f`@ZG#LCOQ}OF+*`a+W1Xw}MiL z5u@;wpOwC)L-2<2 zTPSEI~=R z6g9Qc#tL_uTui;g3l9~wXe@SUA?qra!|5v_h4CVM-ss56c2ATMge*Kj)V5Mm79N&r zL6w+=D_Sp{kh4(u?L`4SmrHO%@F`t~{QE+-P<)@#dFMx^F^f=E)+R>QMVDqF+U2<`fzTQ+1OI4R7@>i z{!%gNfGl2!QaL0LN)WW8C1xcZ9+pfyTX?|Al)<7>hszFB>~qoG;(g8r%FCslElVL@ zQ0i)-`Xgp>yqH~(c!knJA1vUMfdI2hiMuWNoUSmWV~OQ;)^CMPpRj|02Z7o^m$lvZ z;^Vidn$g?N&0d$D+X?!-%i%xB+<3X)>n$y#rzckq_9JiRsr_I2r>lQ((aw{9I|D|t z9)A7cUu|A_Vn!i}B44S|7Wi0={{`Kd+ zIQP$sJHPn%&)o2L5B!I>5^r}}K3;>9powk^meN1>mhZg0cKQ5QX8-SrnH%* WpM3S7F8%x|uxViI!yl{P@&5r&J@2Fd literal 466706 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 -tdMhw=+5gV~s^C!{9(aAfty5`(?z_{jAOyM=6 zJMW@(%`tbLx$~k!YY|Vg*tzs~#0#V2Gk0EmwN5+;m`QR$>_x$_~KD~Jcf_x#q|5}=i~UG8mQ>S)VJ_&PvV1q z@|5UG8&PAtd;nKQ>kUXST5qHE1~M2}1CWso6AbVv zpl8+xOD%2Eez!9`f?`}ELBg*S&bs4qaq7o#SDUoo)#?DH5XzEy-F7>%rcK&!tTRL7 zV~#-4$#$L=MiusHbQF{QX-lDpx#ztP0F7FfN&B5d!F=*OrCOG9ad)YUD#~D1N80c0 z0n{G_)y}1t_&c82h_jyMZJea~GU1^pc8;nlt0jnW>(iG_5F_Y1>rP@m5kZW#g?Ov3 zt0I3nKN(CIV_c0e>Bz5VlhJN5K$`HlnJ!g$Dv2b$TH^W)dXV^8Gyqg4c{%F1_QT`N zH<~a;6UJy61*gzs8n<4{GA>T4_b%jG{|+9Q#;tcK1?M<&l>dtGEt+Ry;3Nk!j={f* z2Qtc>?^r?^!AhHo9Mv;&0|ydv=~QiRQj@#OP;MMGuq=R37Sg5qTvHR3n!L7*-Ks1o z!Wj9EFoBHSl}6P95ph^*I*}Ezt`dQa`~)6DDC3*gOemuXWke3GlJABI>o8#*!o$bN zJg|G@h(#mwWJN4i4C^3Pt)Yx>{)!1@G@*><&O2|Njn45eAsaw{QMbhC#nyM@i#ST( z==qGE4=KXjd4L2=XF?09jNs0j$WX>$d@*!T6_7fhP%|?gMB`0nPJ-kqJaOKeqIc7@z2Iw`+9C+;(?k z?>&usi1k~U!zAabSBOXH+rdeZKw@<#$n()k0~WQHRln1;zQQyfN!uQz9MUfO+{(Qk zm0I_oA94n&O1{)IBA}zMaan25tlFDADG@eX$>lp5DaXA&`bL2!`YWTZZSxs;yzbl% zxK3x_|5p#W@B6OT#w7mCnHs8Iwrt}1-MRKce|g#6poWe|k_*-JeYk(RWv13}!+A_P z9)zvH?U6%Hv%f-T$oCEg-7X~i&yPxo5QH$xouBFvx07@S-$Ja1lKs;YpxlmB28+B( zvD(3f4HZrm`_%9BGNHoiG}~)Hk<0E1UH#PRR9pQ;C|7#WUx&)dE6(Ar4OK(i($WW+ zOOrgs%AVM&3pUIl?01}?IPUsb5{hb5eBABLVl`GVuPI`EEZHNS0-e`MyZ4?X0p6Lj zl?L%XheWrJ*k0ce$C$?J{G|&EB_%pWX=QxmQ+lpyt8~2UW}ZH&(!kZarG2g-T}#XV zU=p#_`ke1~1<{I5;g}qTu~7CmXD9G9lTP^|(R;YlblNA~R^UT4wFLEtlc*@#3CX>Y z$CjuYUetX)?b$77)%Wn$;gGQOV(5+dmbZ|pyRynAmg(zqFQ9lI~zlZG1l; z^gYjMp*YAG))G1s6$TX0knM5<=*AD!@C?~a47i)8Mz1>zgBH&vf41vVT`A~@Mk{fo z=Zl&%5|)~Bv(71_ixdgPtb0i+9Q7)L2C~$gpRRMxI4LpXl-Qc&D|7Z&dQ}z4ziwpC zLZ!|Nk4)6^3uKPAa%&pBvKFV*%->%p83oa{N#%GL@wNduz0`DTJsiP-TdZ?f_c76R zAug`moLhA+F5SI>WADw9WZ-&V}pd#mJ3~4%@d--#Bwx zgKF2Zwrxnu8<$&9r%ogQ5i?NOl5T7u-(zeLOu3&!!P%^2^jFSB8XH8SE>(n}3ulAC zWCg|s;deB3uHqGPLt}$TgyS0<1e&*S?@}_k^lT8oa~K;0Ref9w*0_nYL43*BAi!3C zVUi*k8$_h@{vImBjSb?w#Y+Z*KMgI2`%%Qp^Z5A92v;rqnf2m~=Ec+l_#!qn7#oCT ztsqLih!1LN__Dz6G>wx>A_O(rctN|R@esQH+jPT9vgW41`tQ1J`R?P4|;i%nvs z-pem#l>i5Xluc3Z5Hf4`2s*WcBXf=lKOLJPwaa$kr)JDz^H#cNsxCW1T`Obj)}y0G zViV&Ms40h7A1`Ia(qnM}T(jNo3RCjsd6TB6t27n9q?m|Ua$ecqrc#W~#b!IPQt=a2 zToGj8QDOO@vkA`THUI-+)OL3`w_s&{*!u#w={To>XM-pw@YBa3)`<1K%oQjXK#>{( zCXgE7baH@Ve`&Q}H{`$P9lO2BNYg^qU$$j;K+q|6Fj|IT1~QOkdzlpPEERfzc-3fp ztGca(orAeFHP)QX5EqMYl3}u^r+|^XT`<)41Ig9V?=>Y6d*q!~>F_$_EZcn#Vn$d5 z3U03L>$zJDLVUiM1ToW5Ll3uV+l~OwJ1w%Oikqk)o=iSFnBqxyc1#m1mAbg>9CC23 znJnG^)QApKTX(^Go?Cw}8Xv-%STws!3z47|aYAMIRrRPixscq6eMOF~#I-6`YXoS5G4ix?-H-&7U!Sya;p#MvpQIn~U5gi{=Uo1y>GJaY-j@$TYS=MVvCBKW0&)_3M$<%xC=V$TpIrYW6 z@aO08@vrdluLWIA{}g}5?pR+EFN~iS;N_1HIsYa?$*1vW?2h%v(Th3!A9)_jSi-0Y{XQA)Nv60)`k2^ zlr>*WicuBpziPMe%T(u1oDzfNN2?h1)6_5Efx=XXsZ$JP?qi@0_8fS%?0VpvK*?k> zqEs}g;)by=r!Wv{uxNGe4<@mzS751@%d*F{qQO$TxY#V5HRV0%KmynaHEq`9Y)EH3 zp*GE$vOTaxuHTqx{cM7anRViFqOF)u)?@jgL^OHk%R0}+3AJ0+^rf^nut>DEZA z7mKB`Ca(jwUz5pEGOUJ~4s%ICCC?v@BN~`JbTUFA=u8)Fqu#pHKIHT;33#`qrhtpZ z^$J<67N`s?0(;-8JPb^zAdPbQh$Og!s3UWIp#7};tQSNh0Sm!vFx$(7IHwbKg^PGne} zV$lwO3b1Oyl_2f}zT4ijcV8t3_!E!`eh>$EsU2JB9Y?9YPIa_YjMM|TAWNe_n)|tx zF1X`9Y6s|SF0hR0?Ng#tvH4r=`QWP4TATH}I{FrU&W4ABz>o4JBiwUI(ya>jLq5zS z%0Z4@o*1r6pr*$<-n@fGWWIsX$9sUx)iQ#i*F|RoJPhP+0oatiao~@kRKx*j}^wN-|B4kx2>W7mZ4@T6m$t64ueGVyhZnzKWCzPFJDrPL^y2M$@FFTZ=>jeku zh`40)6#OTE00khu9+2~snJ`FvVkPE97@1B7jwparK|^^Q^edeG8H903H|I-AGWeIc zni2$xqzb~sh%PL?o*ot1ccv-D$$*`$33_S*fmOuXvbS-69m6qhF>^Rr;}OI1i6BTRRc0o?&XE{TfQ)Oxg3stc zKgKY`fzo`XI%XO2#Q6xFp2@^^$sH9CciCW$r7Q6z=TeFF7G0kdr#U^*_W~^>B-SmtJw4<&ZKs|4 z6tm~d$))}6T@^D*PkwU}#Rtu$io)^>;Q=h}{) zgI(GOegpLY`$$i>X?tU`H=WBYr0_2JDP942<4e7Q`!%udE;GLDw4H}fsdJ=k2DTpk ziO(76+8qmb0xBaYLa=uV{=H?u$FJ2XXla@cg8WJzl`&8_>9A?)NmBWkO;US0@bP)i zbc**BOp$-9PA~`Q;1%8?PMcqj>;(E%{TTdn%9iFFe=WbaNtcG9PJ5)`cN}8&rFJRW z&br%j__%M=0oZmnB8td4?nSv*ww-86g&f*fzNQjC6C#P#(7~ZJ0oIe1ZL83LWxdYX zUCIcIr-Re^u2KNe-Nol2Ri@SlCm91+i5*4hrGo z-zyj>ge%&K(dt)dB4%GmVSJQm?r+x39Rw@53U1DOU3d$*5L04%p0vfZ!+G?~)ZUKx zns$@JE8sVLdO6n}l!9Dg*T5`aPVFX$KLy?SO5YCJn3@5$jrM$uTgZE+!~poY5IJE0 z?R7v0;FA>a@71l5{BdFi+7q^Cx7MIWC&l$~JIFZ{l`mOnV-9BIuc;}8cCMvx`E&Jd z(r#9@Nho%NmPL}kNA%}#-TYIIcM5qC7~)%j812SX`;JkgJ!I4dDsr@xmTVNEM=P}S z0*9VoIkz@^Lg|Emr)5jTchRko!(!5JjKQ zZ3Y@yc-WTs2#%-j(CMh*u+i;EIakp%{&vtBY&F;F5Wqyx=H34#9Ht9V^tQ=pZ zIc8F3n&Jy4MMu$96uk|6JoAXgQ~az90Hc!=emGST1X zErQ62;*+=h1b@c$Fg`4BwdK$7#X3G{i(eNnrVioXeghvgG(PIeROtYenCNdn0&KPE zok$?x#RuJV-;c=Wl=|Y^;)V71_#%$w{z3HO3+juDJ^Gt@2xL1uQLgjAV9|?5`dxY> z+a5BZl(l^}lLt%6TS`lQm8=dXDR{jy@3Ed?wi=d6GH8vKt~FC|GJ*3M*m4eCk6gnzFzn1f&5VS2z0 z9d>R~O%MoI%W!g^_Ux9kO0)S3oz?imzf&;*$x9+<>r2`#p%1*G?KJx?y( zz%U0$7Q`c(%Cnbpnp;25IA`Nfo2!OVFN>ie+y*t@4wNXMgP|w#2)ux!?%@be=zzdR zSVlY1AXIsuIzlN;7YBFXHkE;(hno{73vPT^4OAO2-FKFiV5y0PH(5=EBd}PS2 zcN|O*+$@r}?PSpKw2qtUq9;>D0w}q~XICNvtEBxrt2Od8Qk(uBI1T%zK3)f$sIZ9oYXEyylkTUh4n<4&8+jqj5u1{w85Hn=eCVUj=!k-CP zm@WL>ndt>SI2?CaA9i=9wQ6@)oV)rxbcc56Cxpgj7LMDva@K=mpbMr%VB$CLjJkxA z7a|>@D>s~RHd@ZWrF@y=_28Kxr>;Z0=hXFdK@J0F`Ad}F=kc+Ck45$ZF6Vvfi<8ld zJMhJ$_;?H-(TnN#Rb3TOXXKt7dTb9g~=TWxTm^6qdl~y{}w4RR;YeT z5cTxmXkM7yk$^C&B>ck&SC@$PFh|K(c;O{P0^~WEm*`Qa8{c}wx=!y%TS5KDx!}CJ zJ_8^C#esZ}PFrXJ8BeT{K`^f9xw@HTfsHm)Jq(wE6n_kC$f#F^xg9Y~MXPyhTJp6#-mhqvLV0@_02& zG!}Xgn;OrX{Y$N-_nEpU?Dt8p52dy2-r7=@V7-T`rS_l*y{F#=7e3TpG~jDK=V8Kk zwG@DU;uwA?AL3V|ERTPbd<_SXoKH-xf~U52kP%DxPgh2}B@dNG$F+caC= zgu92DU@eA_zkJyW9pr>es3!c zrP_+Cg!;V?)-BS<`n`~b6fXry3%CHKc6)pZ6ihv?gXa0MBZfK+Fs-BxsPkh7DpMhw zoqtaM1`6=5l1SEp;Q%N|3-wo%Uk{mg$*MU7T)4^>zfGQ`NpycmE z1FKoGG2CvTVeTaNzh1|i&`0H~0&p zl+7A3MnO`Dxg8FmCsr*D3Bj1L=d3R?LJ`4pqv;u06Y-G_E}ZNH+|DLt8U1TGt*U z4{_V%Il7;a5EhV+TgQhnS~BUz7%c%0zlRjTQ{M=$g_rSf#%Rf?gav5D>0Ca5$U%9i zRu7)tpD`Xh6*YPzy7Mkt4<2*pnL97K?HBQsihWRjN4zk19^l2?dHiboI8sS`wf%{p z63v}Ak&ZeWb<5#GCD~qz9Ccz<9Aa$D;eZ?p>Z6keelssu@t{%Ca9Fi!~6wxAlmdQwt z8M>jGjl*4zut@dUQcFhHv4p21I_$)mx4Pe+ z$lR>u96D2bBa!n9I0tmq%gH4)H|l)jyMJNwjb9LNA(L-B5-q-mGRG=DTzs4rFQ&eV zKRtYOlo!@<^@Sg`_)~oGOh$_@;osQFCC{*=n67^Ze<;f^AW6!3_ zip(5+MSVA9r84;&?hE5F{%+YZtldEvqP;GBA zp1aGy=%d<^1suvUxl{*iYN9fpzf`xEn<^WMut&Z#OyHy43`r~>N?OF6?U>O0#Nn;! z{8z-fN(4Ug6M7)6P_@vX|U0PKAhV} zQd^qV%Ag_m2a_BG39vn*cY{k-DlZZ3$5mF~X@|whQAc_tushBe@D+fyX#={?$Y7dyMVF+5m_LC1h@)zr5^jPy@*$$%ShAKKMyOJ$k>> z0HtBzyX{6(i4u$^(Qw0gOmfbBdJj3x{tA7`_YMZ>E+qTUk6wuT2AJi}PeJke&Itz! z+)F_WKxhvo`={#;L_0eVdpuY|& zELWVvT^ov(wxy*HGM6Ulaz@vy#ECsBCuj!Q^fjMvd7qCE!!bm zzkD?Y+`e>Sp`?2Y&c0=Lg$5LhLst_XoJs*!ZIzC9-OSS`RiU_Ax3td{q-$yUA50>) zTA%a%E^r+*xq#>tj>%yd3*{K&>;#@>(kVYAdJlJ+PWz6PcZr zs;#0!Bj_YHldOQA(^EyzGTgc%II7Lr6};{18Pa1cgE zs8<~{lBMRpI*z&Hi?rY#Pn7mZua3 zmd8O>LA0Ixnzs`q&?+_Uu^gh{C@$7Lta;vWc|aUqxw)^6W69wHL4d^kAI+S9apli6 zg$sETv)Hk#8*P2(#xWn5vs!*;4tKP)fG9bgOv1PayCOLz#WkkAjlVz5NF7eV{aLCi> zjgNw{%X%IkzZv1Gg+H@ioYB0PdH`R<)nz^*y4rG=`r<|L!q_qZVRABAW6LnM4Bzv> z2myD+d#J*l4LRv#07qW)q_vDAPr( zkC(EJ>9M&0F5{5En>j#N3%*gB3b$#jJtjHTY;RL}P#1u+omi>3jw-GYGVti<^PsZ{ zPVhDW15)XBcQ|)tWq#QE0=N%3r-A2#=qrdHz#-O%^}fs%DCx_QF@e+or;`H|`*EwF zyCMHQ@7V24Mxqv~60o4m;;Pe(AuBX&ad1ka4|gc+|FWR0~zlD7w!T_@fbG92Gx zCv^tIYG*RFgIp>RLyNbID2*Q7GE-ZT%YQC8nx4~CSl=8*Q~6GTL3zW)wV4biKTg2# zMq)jdgs@mjRK~%{%O36!e{af|&kT}fIE7Z^iRZeIu9)(hz&-k12(E@?CsYrWss=se z!Y%ZBJwG6c#T%_{P7PBA;x%Q=iR(2cD67ISar!9&R&ugX_0G71qDzsTY19JOdl7#igfocjZ zdn72TEVT=!%er_>rZp#U=s?EX3AL3zU7u=qLT#f@);D9&@7HV!wSG1+rce;wZ@pej zcfwM#D6pkm4l})C=pP4))0i)rE~Q4on@}TR&3^RaSRH4Mlo~C+7l$=a+FF_RGX3U~ zOm=x5WgHE_--$%{XS!$=^wypBA*YAwy}K^j!+=u#kWK8R6MoC~gb$MNBH9zS*Oq#oO_u$j6GngCyHEVHan=rioBL#vo6E$r zp2btx<%n~uwhl@kvLA4a|CEi3f+?Xohq+8I{6SWCf(biVkKjt1iN|~Pf{d0r*Y&eM z0ixC*uH;fXw$M9{QZ=~hs;HP}2XNw*Mu7zOb1PkNXnoWU&|O<#857s1oLh_ShicCU zSDn_{tmoCyx9D>=JRAgmAj3VEB;BfTKjgza9J$MsPOn;*plEum0zTC zcjy&AyaCLP+no!;ete?C4*rmSLfOt1F=H{;CC*BIL7@a)FF@6nz$Kff;6DMl_yg(n zfSjMqghARmImc<5c>%GIyEHqZv`qz-+;MQL=IqZPj7z#XUs966zr-1uA=DyO>Lo_> z0ttX6$w5MTR8)sE)gVp=JffPe2Z%>rZp+@r{dEk-xW&xjV2xkMT;uW~GQw@}q(f}v z>hn(1G)>T$7}13|@Fdv*7iY)$+$DlApHu;vd_#g5Pk@YT!os)cKtG1F95&zpiMLW6 zyCEv!#rX)Gp2@^^$sH9CciCgnb_a^W5Nl7_PiaOsV(qQ; zJuWY??keAg2C-FW!MR*w-C8sTU6T?$)9(a2Nl2_aO7;AZ+-W~p~yz8dx~JD-%%ihGdZ#DE!Bv_5;rTvd<(0w5$pEC?(w_1wquuACE6!`3*M}K zq~p5_duO@=1hK#~fj>E-AqNvzk5*56S ziii@627ci!;_btD-Ntc+RyzuD8@A-^ai^3&sJL_)C;qcs9 zG=a9W5m8);>rfQHW!szQ-CqQs(iB+uM{ExSl>r*Eyxt{ty)q)> zm0`ShRsxis792Z;TUZ$oTPheTB>Plz2}=Vt7MLnLT2muO*t)MQw!~4waa9^#-cG?( zX?UX(BBG`NnhGqHreHp5grm0=;Rpm_xDww{=Cjhbv;p;|cRu(+bMj*2A08z(^QCWCcstr|S7E*MwafHr7;kOq! z^jt2%4Z)|B4*Bt_T08j*ulW_XKi3C+)W>W$IKK}Gg@1@*(=tSLp8%) zcCWY8#3XH8IoJ=Z=_d}n@(*wNzuR^!{`E8%$$Fsu+qM5MH?O&Q;e|i{<8L?D{>f** zas{z&iL{4H^XN|EcRHZ?3)RkG_*?%Aw*Rlc_~$Rr{-1>%FaM8c-ugHD{^`4kwL5Mf zuEI&sKIpd{P3u2Df8Q_v)91FHdG*+R4}baln-2io9=f75farP-Xjz@G9}V^RTYmV% z|9PlwzpMB1)@=uW_@9Y&HPd@$e*IUUzWY;u^xs}w*>dKEumA6FzWDEe7mESQQj2Op zeD0n9;qcnQ*W10%?0@;8tN!YGV!d7Uq2c&l%7Nu~KmKC(ufO|^U)*x)Kfe0H?tKfy zx(aF#Vg{d3tWGq`=cm5%;P+;)yy267dGmpv{@Y`eR$_tzSC{C^%S B4&nd+ diff --git a/libraries/FloatingActionButton/build/outputs/aar/FloatingActionButton.aar b/libraries/FloatingActionButton/build/outputs/aar/FloatingActionButton.aar index ace1125c0c45290b496b4a80a470da85fc5679f3..8f6720df637ecd016f0f025bc7f47c8e329d8d98 100644 GIT binary patch delta 4864 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 delta 4845 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 T9v2+}r;|Jv8V1f4000006QFZ1 diff --git a/libraries/sharedCode/build.gradle b/libraries/sharedCode/build.gradle index 5b6b150..4eb1e85 100644 --- a/libraries/sharedCode/build.gradle +++ b/libraries/sharedCode/build.gradle @@ -51,12 +51,12 @@ dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile project(':libraries:RootCommands') compile project(':libraries:FloatingActionButton') - compile 'com.android.support:support-v4:19.+' compile('de.greenrobot:eventbus:2.2.1') { exclude module: 'support-v4' } // compile 'com.googlecode.juniversalchardet:juniversalchardet:1.0.3' + compile files('libs/juniversalchardet-1.0.3.jar') + compile 'com.android.support:support-v4:20.0.0' compile 'com.github.gabrielemariotti.changeloglib:library:1.5.1' compile 'commons-io:commons-io:2.4' - compile files('libs/juniversalchardet-1.0.3.jar') } diff --git a/libraries/sharedCode/libs/juniversalchardet-1.0.3-sources.jar b/libraries/sharedCode/libs/juniversalchardet-1.0.3-sources.jar new file mode 100644 index 0000000000000000000000000000000000000000..dc30af92949c6e4b1b71dc5e544ed6cb07a5d18b GIT binary patch literal 220482 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

WJ0(8gTdDq^X(Zj4;8Kj1U?m^q>TCZMmOJIS zZdaym|8>}W^%OsTA+H9~UWfa>fG{h0Jd=qtcEUE-4S(Sh4Wlg?nny4{?8e=dReh6H zwklcBuQOc(u}dv{^{9*PD?LAYcD}Q?#k1@KCs%0AJv^K84dP{GaV}K0XMFoJ5m@#! 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.?F@5LBkdf9-JePtZ~sC2AL{4g1niWMZwUeo9gj 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 literal 0 HcmV?d00001 diff --git a/libraries/sharedCode/src/main/AndroidManifest.xml b/libraries/sharedCode/src/main/AndroidManifest.xml index c3bd325..e2adce2 100644 --- a/libraries/sharedCode/src/main/AndroidManifest.xml +++ b/libraries/sharedCode/src/main/AndroidManifest.xml @@ -1,3 +1,4 @@ + - +--> - + package="sharedcode.turboeditor" > diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/activity/BaseHomeActivity.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/activity/BaseHomeActivity.java index 7ed2d45..657a174 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/activity/BaseHomeActivity.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/activity/BaseHomeActivity.java @@ -33,8 +33,6 @@ import android.os.IBinder; import android.preference.PreferenceManager; import android.support.v4.app.ActionBarDrawerToggle; import android.support.v4.app.ActivityOptionsCompat; -import android.text.TextUtils; -import android.util.Log; import android.view.Gravity; import android.view.KeyEvent; import android.view.MenuItem; @@ -43,19 +41,6 @@ import android.view.inputmethod.InputMethodManager; import android.widget.EditText; import android.widget.Toast; -import sharedcode.turboeditor.R; -import sharedcode.turboeditor.fragment.ChangelogDialogFragment; -import sharedcode.turboeditor.fragment.EditorFragment; -import sharedcode.turboeditor.fragment.NoFileOpenedFragment; -import sharedcode.turboeditor.preferences.SettingsFragment; -import sharedcode.turboeditor.util.AppInfoHelper; -import sharedcode.turboeditor.util.Constants; -import sharedcode.turboeditor.util.ProCheckUtils; -import sharedcode.turboeditor.views.CustomDrawerLayout; -import sharedcode.turboeditor.util.EventBusEvents; -import sharedcode.turboeditor.preferences.PreferenceHelper; -import sharedcode.turboeditor.util.ThemeHelper; - import org.apache.commons.io.FilenameUtils; import org.sufficientlysecure.rootcommands.Shell; import org.sufficientlysecure.rootcommands.Toolbox; @@ -63,6 +48,16 @@ import org.sufficientlysecure.rootcommands.Toolbox; import java.io.File; import de.greenrobot.event.EventBus; +import sharedcode.turboeditor.R; +import sharedcode.turboeditor.fragment.ChangelogDialogFragment; +import sharedcode.turboeditor.fragment.EditorFragment; +import sharedcode.turboeditor.fragment.NoFileOpenedFragment; +import sharedcode.turboeditor.preferences.PreferenceHelper; +import sharedcode.turboeditor.util.AppInfoHelper; +import sharedcode.turboeditor.util.EventBusEvents; +import sharedcode.turboeditor.util.ProCheckUtils; +import sharedcode.turboeditor.util.ThemeHelper; +import sharedcode.turboeditor.views.CustomDrawerLayout; public abstract class BaseHomeActivity extends Activity { @@ -145,7 +140,18 @@ public abstract class BaseHomeActivity extends Activity { @Override public void onBackPressed() { - if (getFragmentManager().findFragmentById(R.id.fragment_editor) instanceof EditorFragment) { + + // if we should ignore the back button + if(PreferenceHelper.getIgnoreBackButton(this)) + return; + + + boolean fileOpened = getFragmentManager().findFragmentById(R.id.fragment_editor) instanceof EditorFragment; + if (mDrawerLayout.isDrawerOpen(Gravity.START) && fileOpened) { + mDrawerLayout.closeDrawer(Gravity.START); + } else if (mDrawerLayout.isDrawerOpen(Gravity.END) && fileOpened) { + mDrawerLayout.closeDrawer(Gravity.END); + } else if (fileOpened) { // remove editor fragment getFragmentManager() @@ -178,12 +184,12 @@ public abstract class BaseHomeActivity extends Activity { // this will happen on first key pressed on hard-keyboard only. Once myInputField // gets the focus again, it will automatically receive further key presses. - try{ + try { if (editor != null && !editor.hasFocus()) { editor.requestFocus(); editor.onKeyDown(keyCode, event); } - } catch (NullPointerException ex){ + } catch (NullPointerException ex) { } @@ -204,7 +210,7 @@ public abstract class BaseHomeActivity extends Activity { File file = new File(path); if (file.isFile() && file.exists()) { EventBus.getDefault().postSticky(new EventBusEvents.NewFileToOpen(new File(path))); - } else if(file.isDirectory()) { + } else if (file.isDirectory()) { } } @@ -234,7 +240,7 @@ public abstract class BaseHomeActivity extends Activity { subActivity.putExtra("action", SelectFileActivity.Actions.SelectFile); Bundle scaleBundle = ActivityOptionsCompat.makeScaleUpAnimation( view, 0, 0, view.getWidth(), view.getHeight()).toBundle(); - if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) startActivityForResult(subActivity, SELECT_FILE_CODE, scaleBundle); else startActivityForResult(subActivity, SELECT_FILE_CODE); @@ -249,7 +255,7 @@ public abstract class BaseHomeActivity extends Activity { Intent subActivity = new Intent(BaseHomeActivity.this, PreferenceAbout.class); Bundle scaleBundle = ActivityOptionsCompat.makeScaleUpAnimation( view, 0, 0, view.getWidth(), view.getHeight()).toBundle(); - if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) startActivity(subActivity, scaleBundle); else startActivity(subActivity); @@ -269,6 +275,7 @@ public abstract class BaseHomeActivity extends Activity { File file; String message; String fileText; + String encoding; ProgressDialog progressDialog; @Override @@ -312,20 +319,17 @@ public abstract class BaseHomeActivity extends Activity { } boolean autoencoding = PreferenceHelper.getAutoEncoding(BaseHomeActivity.this); - if (autoencoding) { - String encoding = sharedcode.turboeditor.util.FileUtils.getDetectedEncoding(file); - if (!TextUtils.isEmpty(encoding)) { - encoding = SettingsFragment.sCurrentEncoding; - } else { - SettingsFragment.sCurrentEncoding = encoding; + encoding = sharedcode.turboeditor.util.FileUtils.getDetectedEncoding(file); + if (encoding.isEmpty()) { + encoding = PreferenceHelper.getEncoding(BaseHomeActivity.this); } - - fileText = org.apache.commons.io.FileUtils.readFileToString(file, encoding); } else { - fileText = org.apache.commons.io.FileUtils.readFileToString(file, SettingsFragment.sCurrentEncoding); + encoding = PreferenceHelper.getEncoding(BaseHomeActivity.this); } + + fileText = org.apache.commons.io.FileUtils.readFileToString(file, encoding); } catch (Exception e) { message = e.getMessage(); fileText = ""; @@ -351,7 +355,7 @@ public abstract class BaseHomeActivity extends Activity { } else { getFragmentManager() .beginTransaction() - .replace(R.id.fragment_editor, EditorFragment.newInstance(event.getFile().getAbsolutePath(), fileText)) + .replace(R.id.fragment_editor, EditorFragment.newInstance(event.getFile().getAbsolutePath(), fileText, encoding)) .commit(); } @@ -386,9 +390,9 @@ public abstract class BaseHomeActivity extends Activity { displayInterstitial(); } - public void onEvent(EventBusEvents.AFileIsSelected event){ + public void onEvent(EventBusEvents.AFileIsSelected event) { String name = FilenameUtils.getName(event.getPath()); - if(name.isEmpty()) + if (name.isEmpty()) getActionBar().setTitle(R.string.nome_app_turbo_editor); else getActionBar().setTitle(name); @@ -414,7 +418,7 @@ public abstract class BaseHomeActivity extends Activity { public void onEvent(EventBusEvents.APreferenceValueWasChanged event) { - if (event.getType() == EventBusEvents.APreferenceValueWasChanged.Type.THEME_CHANGE) { + if (event.hasType(EventBusEvents.APreferenceValueWasChanged.Type.THEME_CHANGE)) { ThemeHelper.setWindowsBackground(this); } } @@ -506,8 +510,7 @@ public abstract class BaseHomeActivity extends Activity { && type != null) { // Post event EventBus.getDefault().postSticky(new EventBusEvents.NewFileToOpen(new File(intent.getData().getPath()))); - } - else if (Intent.ACTION_SEND.equals(action) && type != null) { + } else if (Intent.ACTION_SEND.equals(action) && type != null) { if ("text/plain".equals(type)) { onEvent(new EventBusEvents.NewFileToOpen(intent.getStringExtra(Intent.EXTRA_TEXT))); onEvent(new EventBusEvents.AFileIsSelected("")); // simulate click on the list diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/activity/LicensesActivity.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/activity/LicensesActivity.java index aed2b6a..62285c1 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/activity/LicensesActivity.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/activity/LicensesActivity.java @@ -37,13 +37,14 @@ public class LicensesActivity extends Activity implements AdapterView.OnItemClic @Override protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); boolean light = PreferenceHelper.getLightTheme(this); if (light) { setTheme(R.style.AppTheme_Light); } else { setTheme(R.style.AppTheme_Dark); } + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_licenses); ListView listView = (ListView) findViewById(android.R.id.list); listView.setOnItemClickListener(this); diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/activity/PreferenceAbout.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/activity/PreferenceAbout.java index 8502537..e63e9bf 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/activity/PreferenceAbout.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/activity/PreferenceAbout.java @@ -20,14 +20,10 @@ package sharedcode.turboeditor.activity; import android.app.Activity; -import android.app.AlertDialog; -import android.content.DialogInterface; import android.content.Intent; import android.content.pm.PackageManager; import android.net.Uri; import android.os.Bundle; -import android.view.Menu; -import android.view.MenuItem; import android.view.View; import android.widget.TextView; @@ -79,8 +75,8 @@ public class PreferenceAbout extends Activity { public void GoToProVersion(View view) { try { - startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=com.maskyn.fileeditorpro")) - .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK)); + startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=com.maskyn.fileeditorpro")) + .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK)); } catch (Exception e) { } } diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/activity/SelectFileActivity.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/activity/SelectFileActivity.java index 84de8ee..316082b 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/activity/SelectFileActivity.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/activity/SelectFileActivity.java @@ -35,13 +35,6 @@ import android.widget.TextView; import android.widget.Toast; import com.faizmalkani.floatingactionbutton.FloatingActionButton; -import sharedcode.turboeditor.R; -import sharedcode.turboeditor.adapter.AdapterDetailedList; -import sharedcode.turboeditor.fragment.EditDialogFragment; -import sharedcode.turboeditor.util.AlphanumComparator; -import sharedcode.turboeditor.util.Constants; -import sharedcode.turboeditor.preferences.PreferenceHelper; -import sharedcode.turboeditor.util.RootUtils; import org.apache.commons.io.FileUtils; import org.apache.commons.io.FilenameUtils; @@ -57,6 +50,14 @@ import java.util.Comparator; import java.util.LinkedList; import java.util.concurrent.TimeoutException; +import sharedcode.turboeditor.R; +import sharedcode.turboeditor.adapter.AdapterDetailedList; +import sharedcode.turboeditor.fragment.EditDialogFragment; +import sharedcode.turboeditor.preferences.PreferenceHelper; +import sharedcode.turboeditor.util.AlphanumComparator; +import sharedcode.turboeditor.util.Constants; +import sharedcode.turboeditor.util.RootUtils; + public class SelectFileActivity extends Activity implements SearchView.OnQueryTextListener, AdapterView.OnItemClickListener, EditDialogFragment.EditDialogListener { private String currentFolder; private ListView listView; @@ -87,7 +88,7 @@ public class SelectFileActivity extends Activity implements SearchView.OnQueryTe listView.setOnItemClickListener(this); listView.setTextFilterEnabled(true); - FloatingActionButton mFab = (FloatingActionButton)findViewById(R.id.fabbutton); + FloatingActionButton mFab = (FloatingActionButton) findViewById(R.id.fabbutton); mFab.setColor(getResources().getColor(R.color.fab_light)); mFab.setDrawable(getResources().getDrawable(R.drawable.ic_fab_add)); @@ -218,15 +219,15 @@ public class SelectFileActivity extends Activity implements SearchView.OnQueryTe MenuItem imSetAsWorkingFolder = menu.findItem(R.id.im_set_as_working_folder); MenuItem imIsWorkingFolder = menu.findItem(R.id.im_is_working_folder); MenuItem imSelectFolder = menu.findItem(R.id.im_select_folder); - if(imSetAsWorkingFolder != null){ + if (imSetAsWorkingFolder != null) { // set the imSetAsWorkingFolder visible only if the two folder dont concide imSetAsWorkingFolder.setVisible(!currentFolder.equals(PreferenceHelper.getWorkingFolder(SelectFileActivity.this))); } - if(imIsWorkingFolder != null) { + if (imIsWorkingFolder != null) { // set visible is the other is invisible imIsWorkingFolder.setVisible(!imSetAsWorkingFolder.isVisible()); } - if(imSelectFolder != null) { + if (imSelectFolder != null) { imSelectFolder.setVisible(!wantAFile); } return super.onPrepareOptionsMenu(menu); @@ -329,8 +330,8 @@ public class SelectFileActivity extends Activity implements SearchView.OnQueryTe getString(R.string.folder), "")); } else if (f.isFile() - && !FilenameUtils.isExtension(f.getName().toLowerCase(), unopenableExtensions) - && FileUtils.sizeOf(f) <= Constants.MAX_FILE_SIZE * FileUtils.ONE_KB) { + && !FilenameUtils.isExtension(f.getName().toLowerCase(), unopenableExtensions) + && FileUtils.sizeOf(f) <= Constants.MAX_FILE_SIZE * FileUtils.ONE_KB) { final long fileSize = f.length(); SimpleDateFormat format = new SimpleDateFormat("MMM dd, yyyy hh:mm a"); String date = format.format(f.lastModified()); diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/adapter/AdapterDetailedList.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/adapter/AdapterDetailedList.java index 7a6e94b..0b44d7f 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/adapter/AdapterDetailedList.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/adapter/AdapterDetailedList.java @@ -29,14 +29,14 @@ import android.widget.Filter; import android.widget.ImageView; import android.widget.TextView; -import sharedcode.turboeditor.R; -import sharedcode.turboeditor.util.MimeTypes; - import org.apache.commons.io.FilenameUtils; import java.util.Arrays; import java.util.LinkedList; +import sharedcode.turboeditor.R; +import sharedcode.turboeditor.util.MimeTypes; + public class AdapterDetailedList extends ArrayAdapter { diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/adapter/AdapterDrawer.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/adapter/AdapterDrawer.java index 321f38d..ca7fd91 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/adapter/AdapterDrawer.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/adapter/AdapterDrawer.java @@ -29,11 +29,11 @@ import android.widget.ArrayAdapter; import android.widget.ImageView; import android.widget.TextView; -import sharedcode.turboeditor.R; - import java.io.File; import java.util.ArrayList; +import sharedcode.turboeditor.R; + public class AdapterDrawer extends ArrayAdapter { @@ -111,6 +111,7 @@ public class AdapterDrawer extends public interface Callbacks { void CancelItem(int position, boolean andCloseOpenedFile); + void ItemSelected(String path); } diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/ChangelogDialogFragment.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/ChangelogDialogFragment.java index 86037c2..9af4197 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/ChangelogDialogFragment.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/ChangelogDialogFragment.java @@ -31,9 +31,8 @@ import android.net.Uri; import android.os.Bundle; import android.view.LayoutInflater; -import sharedcode.turboeditor.R; - import it.gmariotti.changelibs.library.view.ChangeLogListView; +import sharedcode.turboeditor.R; import sharedcode.turboeditor.util.Constants; public class ChangelogDialogFragment extends DialogFragment { diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/EditorFragment.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/EditorFragment.java index c92d3cd..0393772 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/EditorFragment.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/EditorFragment.java @@ -63,8 +63,8 @@ import sharedcode.turboeditor.preferences.SettingsFragment; import sharedcode.turboeditor.util.EditorInterface; import sharedcode.turboeditor.util.EdittextPadding; import sharedcode.turboeditor.util.EventBusEvents; -import sharedcode.turboeditor.views.GoodScrollView; import sharedcode.turboeditor.util.LineUtils; +import sharedcode.turboeditor.views.GoodScrollView; import sharedcode.turboeditor.util.MimeTypes; import sharedcode.turboeditor.util.PageSystem; import sharedcode.turboeditor.util.PageSystemButtons; @@ -105,6 +105,7 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S private SearchResult searchResult; private PageSystem pageSystem; private PageSystemButtons pageSystemButtons; + private String currentEncoding; private static final int SYNTAX_DELAY_MILLIS_SHORT = 250; private static final int SYNTAX_DELAY_MILLIS_LONG = 1500; @@ -115,7 +116,7 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S static final int ID_PASTE = android.R.id.paste; private static final int ID_UNDO = R.id.im_undo; private static final int ID_REDO = R.id.im_redo; - private static final int CHARS_TO_COLOR = 2000; + private static final int CHARS_TO_COLOR = 2500; private final Handler updateHandler = new Handler(); private final Runnable colorRunnable_duringEditing = @@ -134,11 +135,12 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S }; //endregion - public static EditorFragment newInstance(String filePath, String fileText) { + public static EditorFragment newInstance(String filePath, String fileText, String encoding) { EditorFragment frag = new EditorFragment(); Bundle args = new Bundle(); args.putString("filePath", filePath); args.putString("fileText", fileText); + args.putString("encoding", encoding); frag.setArguments(args); return frag; } @@ -151,6 +153,7 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S setHasOptionsMenu(true); sFilePath = getArguments().getString("filePath"); pageSystem = new PageSystem(this, getArguments().getString("fileText")); + currentEncoding = getArguments().getString("encoding"); getArguments().remove("fileText"); } @@ -164,49 +167,49 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S mEditor.setEditorInterface(this); - if (SettingsFragment.sWrapContent) { + if (PreferenceHelper.getWrapContent(getActivity())) { horizontalScroll.removeView(mEditor); verticalScroll.removeView(horizontalScroll); verticalScroll.addView(mEditor); } else { // else show what is in the xml file fragment_editor.xml- } - if (SettingsFragment.sLightTheme) { + if (PreferenceHelper.getLightTheme(getActivity())) { mEditor.setTextColor(getResources().getColor(R.color.textColorInverted)); } else { mEditor.setTextColor(getResources().getColor(R.color.textColor)); } - if (SettingsFragment.sLineNumbers) { - mEditor.setPadding(EdittextPadding.getPaddingWithLineNumbers(getActivity(), SettingsFragment.sFontSize), EdittextPadding.getPaddingTop(getActivity()), 0, 0); + if (PreferenceHelper.getLineNumbers(getActivity())) { + mEditor.setPadding(EdittextPadding.getPaddingWithLineNumbers(getActivity(), PreferenceHelper.getFontSize(getActivity())), EdittextPadding.getPaddingTop(getActivity()), 0, 0); } else { mEditor.setPadding(EdittextPadding.getPaddingWithoutLineNumbers(getActivity()), EdittextPadding.getPaddingTop(getActivity()), 0, 0); } - if(SettingsFragment.sReadOnly) { + if(PreferenceHelper.getReadOnly(getActivity())) { getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); mEditor.setReadOnly(true); } else { getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_UNSPECIFIED); mEditor.setReadOnly(false); - if (SettingsFragment.sSuggestionsActive) { + if (PreferenceHelper.getSuggestionActive(getActivity())) { mEditor.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_MULTI_LINE | InputType.TYPE_TEXT_FLAG_IME_MULTI_LINE); } else { mEditor.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_MULTI_LINE | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS | InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD | InputType.TYPE_TEXT_FLAG_IME_MULTI_LINE); } } - if (SettingsFragment.sUseMonospace) { + if (PreferenceHelper.getUseMonospace(getActivity())) { mEditor.setTypeface(Typeface.MONOSPACE); } else { mEditor.setTypeface(Typeface.DEFAULT); } - mEditor.setTextSize(SettingsFragment.sFontSize); + mEditor.setTextSize(PreferenceHelper.getFontSize(getActivity())); mEditor.setFocusable(true); mEditor.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - if(!SettingsFragment.sReadOnly) { + if(!PreferenceHelper.getReadOnly(getActivity())) { ((InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE)) .showSoftInput(mEditor, InputMethodManager.SHOW_IMPLICIT); } @@ -216,7 +219,7 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S mEditor.setOnFocusChangeListener(new View.OnFocusChangeListener() { @Override public void onFocusChange(View v, boolean hasFocus) { - if(hasFocus && !SettingsFragment.sReadOnly) { + if(hasFocus && !PreferenceHelper.getReadOnly(getActivity())) { ((InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE)) .showSoftInput(mEditor, InputMethodManager.SHOW_IMPLICIT); } @@ -249,7 +252,7 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S // Unregister the Event Bus EventBus.getDefault().unregister(this); - if(SettingsFragment.sAutoSave && mEditor.canSaveFile()) { + if(PreferenceHelper.getAutoSave(getActivity()) && mEditor.canSaveFile()) { onEvent(new EventBusEvents.SaveAFile()); mEditor.fileSaved(); // so it doesn't ask to save in onDetach } @@ -260,7 +263,7 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S super.onDetach(); if (!getActivity().isFinishing() && mEditor.canSaveFile()) - SaveFileDialogFragment.newInstance(sFilePath, pageSystem.getAllText(mEditor.getText().toString())).show(getFragmentManager(), "dialog"); + SaveFileDialogFragment.newInstance(sFilePath, pageSystem.getAllText(mEditor.getText().toString()), currentEncoding).show(getFragmentManager(), "dialog"); } //endregion @@ -286,8 +289,8 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S if (searchingText) { MenuItem imReplace = menu.findItem(R.id.im_replace); - if (imReplace != null) - imReplace.setVisible(searchResult.isReplace); + if (imReplace != null) + imReplace.setVisible(searchResult.isReplace); } else { MenuItem imSave = menu.findItem(R.id.im_save); @@ -387,7 +390,7 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S @Override public void updateTextSyntax() { - if (!SettingsFragment.sColorSyntax || mEditor.hasSelection() || updateHandler == null || colorRunnable_duringEditing == null) + if (!PreferenceHelper.getSyntaxHiglight(getActivity()) || mEditor.hasSelection() || updateHandler == null || colorRunnable_duringEditing == null) return; updateHandler.removeCallbacks(colorRunnable_duringEditing); @@ -492,7 +495,7 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S public void onScrollChanged(int l, int t, int oldl, int oldt) { pageSystemButtons.updateVisibility(Math.abs(t) > 10); - if (!SettingsFragment.sColorSyntax || (mEditor.hasSelection() && !searchingText) || updateHandler == null || colorRunnable_duringScroll == null) + if (!PreferenceHelper.getSyntaxHiglight(getActivity()) || (mEditor.hasSelection() && !searchingText) || updateHandler == null || colorRunnable_duringScroll == null) return; updateHandler.removeCallbacks(colorRunnable_duringEditing); @@ -592,8 +595,8 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S //region Eventbus public void onEvent(EventBusEvents.APreferenceValueWasChanged event) { - if (event.getType() == WRAP_CONTENT) { - if (SettingsFragment.sWrapContent) { + if (event.hasType(WRAP_CONTENT)) { + if (PreferenceHelper.getWrapContent(getActivity())) { horizontalScroll.removeView(mEditor); verticalScroll.removeView(horizontalScroll); verticalScroll.addView(mEditor); @@ -602,65 +605,65 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S verticalScroll.addView(horizontalScroll); horizontalScroll.addView(mEditor); } - } else if (event.getType() == LINE_NUMERS) { + } else if (event.hasType(LINE_NUMERS)) { mEditor.disableTextChangedListener(); mEditor.replaceTextKeepCursor(null, true); mEditor.enableTextChangedListener(); - if (SettingsFragment.sLineNumbers) { - mEditor.setPadding(EdittextPadding.getPaddingWithLineNumbers(getActivity(), SettingsFragment.sFontSize), EdittextPadding.getPaddingTop(getActivity()), 0, 0); + if (PreferenceHelper.getLineNumbers(getActivity())) { + mEditor.setPadding(EdittextPadding.getPaddingWithLineNumbers(getActivity(), PreferenceHelper.getFontSize(getActivity())), EdittextPadding.getPaddingTop(getActivity()), 0, 0); } else { mEditor.setPadding(EdittextPadding.getPaddingWithoutLineNumbers(getActivity()), EdittextPadding.getPaddingTop(getActivity()), 0, 0); } - } else if (event.getType() == SYNTAX) { + } else if (event.hasType(SYNTAX)) { mEditor.disableTextChangedListener(); mEditor.replaceTextKeepCursor(null, true); mEditor.enableTextChangedListener(); - } else if (event.getType() == MONOSPACE) { - if (SettingsFragment.sUseMonospace) + } else if (event.hasType(MONOSPACE)) { + if (PreferenceHelper.getUseMonospace(getActivity())) this.mEditor.setTypeface(Typeface.MONOSPACE); else this.mEditor.setTypeface(Typeface.DEFAULT); - } else if (event.getType() == THEME_CHANGE) { - if (SettingsFragment.sLightTheme) { + } else if (event.hasType(THEME_CHANGE)) { + if (PreferenceHelper.getLightTheme(getActivity())) { mEditor.setTextColor(getResources().getColor(R.color.textColorInverted)); } else { mEditor.setTextColor(getResources().getColor(R.color.textColor)); } - } else if (event.getType() == TEXT_SUGGESTIONS || event.getType() == READ_ONLY) { - if(SettingsFragment.sReadOnly) { + } else if (event.hasType(TEXT_SUGGESTIONS) || event.hasType(READ_ONLY)) { + if(PreferenceHelper.getReadOnly(getActivity())) { getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); mEditor.setReadOnly(true); } else { getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_UNSPECIFIED); mEditor.setReadOnly(false); - if (SettingsFragment.sSuggestionsActive) { + if (PreferenceHelper.getSuggestionActive(getActivity())) { mEditor.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_MULTI_LINE | InputType.TYPE_TEXT_FLAG_IME_MULTI_LINE); } else { mEditor.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_MULTI_LINE | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS | InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD | InputType.TYPE_TEXT_FLAG_IME_MULTI_LINE); } } // sometimes it becomes monospace after setting the input type - if (SettingsFragment.sUseMonospace) + if (PreferenceHelper.getUseMonospace(getActivity())) this.mEditor.setTypeface(Typeface.MONOSPACE); else this.mEditor.setTypeface(Typeface.DEFAULT); - } else if (event.getType() == FONT_SIZE) { - if (SettingsFragment.sLineNumbers) { - mEditor.setPadding(EdittextPadding.getPaddingWithLineNumbers(getActivity(), SettingsFragment.sFontSize), EdittextPadding.getPaddingTop(getActivity()), 0, 0); + } else if (event.hasType(FONT_SIZE)) { + if (PreferenceHelper.getLineNumbers(getActivity())) { + mEditor.setPadding(EdittextPadding.getPaddingWithLineNumbers(getActivity(), PreferenceHelper.getFontSize(getActivity())), EdittextPadding.getPaddingTop(getActivity()), 0, 0); } else { mEditor.setPadding(EdittextPadding.getPaddingWithoutLineNumbers(getActivity()), EdittextPadding.getPaddingTop(getActivity()), 0, 0); } - this.mEditor.setTextSize(SettingsFragment.sFontSize); - } else if (event.getType() == ENCODING) { + this.mEditor.setTextSize(PreferenceHelper.getFontSize(getActivity())); + } else if (event.hasType(ENCODING)) { String oldEncoding, newEncoding; - oldEncoding = SettingsFragment.sCurrentEncoding; + oldEncoding = currentEncoding; newEncoding = PreferenceHelper.getEncoding(getActivity()); try { final byte[] oldText = this.mEditor.getText().toString().getBytes(oldEncoding); mEditor.disableTextChangedListener(); mEditor.replaceTextKeepCursor(new String(oldText, newEncoding), true); mEditor.enableTextChangedListener(); - SettingsFragment.sCurrentEncoding = newEncoding; + currentEncoding = newEncoding; } catch (UnsupportedEncodingException ignored) { try { final byte[] oldText = this.mEditor.getText().toString().getBytes(oldEncoding); @@ -676,9 +679,9 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S public void onEvent(EventBusEvents.SaveAFile event) { File file = new File(sFilePath); if(!file.getName().isEmpty()) - new SaveFileTask(getActivity(), sFilePath, pageSystem.getAllText(mEditor.getText().toString()), SettingsFragment.sCurrentEncoding).execute(); + new SaveFileTask(getActivity(), sFilePath, pageSystem.getAllText(mEditor.getText().toString()), currentEncoding).execute(); else { - NewFileDetailsDialogFragment dialogFrag = NewFileDetailsDialogFragment.newInstance(pageSystem.getAllText(mEditor.getText().toString()), SettingsFragment.sCurrentEncoding); + NewFileDetailsDialogFragment dialogFrag = NewFileDetailsDialogFragment.newInstance(pageSystem.getAllText(mEditor.getText().toString()), currentEncoding); dialogFrag.show(getFragmentManager().beginTransaction(), "dialog"); } } @@ -724,6 +727,7 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S private boolean canSaveFile = false; private KeyListener keyListener; private int firstVisibleIndex = 0, firstColoredIndex = 0; + private int deviceHeight; //endregion //region CONSTRUCTOR @@ -732,6 +736,7 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S mEditHistory = new EditHistory(); mChangeListener = new EditTextChangeListener(); lineUtils = new LineUtils(); + deviceHeight = getResources().getDisplayMetrics().heightPixels; this.mPaintNumbers.setAntiAlias(true); this.mPaintNumbers.setDither(false); @@ -846,21 +851,23 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S @Override public void onDraw(final Canvas canvas) { - if (SettingsFragment.sLineNumbers) { + if (PreferenceHelper.getLineNumbers(getContext())) { if (lineCount != getLineCount()) { lineCount = getLineCount(); lineUtils.updateHasNewLineArray(editorInterface.getPageSystem().getStartingLine(), lineCount, getLayout(), getText().toString()); } - int i = lineUtils.getFirstVisibleLine(editorInterface.getVerticalScrollView(), lineCount); - int lastLine = lineUtils.getLastVisibleLine(i, lineCount); + int editorHeight = getHeight(); + int i = lineUtils.getFirstVisibleLine(editorInterface.getVerticalScrollView(), editorHeight, lineCount); + int lastLine = lineUtils.getLastVisibleLine(editorInterface.getVerticalScrollView(), editorHeight, lineCount, deviceHeight); boolean[] hasNewLineArray = lineUtils.getToCountLinesArray(); int[] realLines = lineUtils.getRealLines(); + boolean wrapContent = PreferenceHelper.getWrapContent(getContext()); while (i < lastLine) { // if last line we count it anyway - if (!SettingsFragment.sWrapContent + if (!wrapContent || hasNewLineArray[i] || i == lastLine - 1) { if (i == lastLine - 1) @@ -994,7 +1001,7 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S - if(SettingsFragment.sColorSyntax) + if(PreferenceHelper.getSyntaxHiglight(getContext())) setText(highlight(textToUpdate == null ? getEditableText() : Editable.Factory.getInstance().newEditable(textToUpdate))); else setText(textToUpdate == null ? getText().toString() : textToUpdate); @@ -1022,12 +1029,18 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S } firstVisibleIndex = 0; - if(getHeight() > 0) - firstVisibleIndex = getLayout().getLineStart(getLineUtils().getFirstVisibleLine(editorInterface.getVerticalScrollView(), getHeight(), getLineCount())); + int end = CHARS_TO_COLOR; + int height = getHeight(); + + if(height > 0) { + firstVisibleIndex = getLayout().getLineStart(getLineUtils().getFirstVisibleLine(editorInterface.getVerticalScrollView(), height, getLineCount())); + end = getLayout().getLineStart(getLineUtils().getLastVisibleLine(editorInterface.getVerticalScrollView(), height, lineCount, deviceHeight)); + //int end = firstColoredIndex + CHARS_TO_COLOR; + } + firstColoredIndex = firstVisibleIndex - (CHARS_TO_COLOR / 5); if (firstColoredIndex < 0) firstColoredIndex = 0; - int end = firstColoredIndex + CHARS_TO_COLOR; if (end > editable.length()) end = editable.length(); @@ -1550,4 +1563,4 @@ public class EditorFragment extends Fragment implements FindTextDialogFragment.S } -} +} \ No newline at end of file diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/EncodingDialogFragment.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/EncodingDialogFragment.java index 662ffa8..b93981d 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/EncodingDialogFragment.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/EncodingDialogFragment.java @@ -22,23 +22,18 @@ package sharedcode.turboeditor.fragment; import android.app.AlertDialog; import android.app.Dialog; import android.app.DialogFragment; -import android.content.DialogInterface; import android.os.Bundle; -import android.view.LayoutInflater; import android.view.View; -import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.CompoundButton; import android.widget.ListView; import android.widget.Switch; +import org.mozilla.universalchardet.Constants; + import sharedcode.turboeditor.R; import sharedcode.turboeditor.preferences.PreferenceHelper; -import sharedcode.turboeditor.preferences.SettingsFragment; -import sharedcode.turboeditor.util.SaveFileTask; - -import org.mozilla.universalchardet.Constants; public class EncodingDialogFragment extends DialogFragment implements AdapterView.OnItemClickListener { diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/FindTextDialogFragment.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/FindTextDialogFragment.java index 4162906..7dd660b 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/FindTextDialogFragment.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/FindTextDialogFragment.java @@ -32,14 +32,13 @@ import android.widget.CompoundButton; import android.widget.EditText; import android.widget.Toast; -import sharedcode.turboeditor.R; - -import sharedcode.turboeditor.util.SearchResult; - import java.util.LinkedList; import java.util.regex.Matcher; import java.util.regex.Pattern; +import sharedcode.turboeditor.R; +import sharedcode.turboeditor.util.SearchResult; + // ... public class FindTextDialogFragment extends DialogFragment { @@ -91,30 +90,24 @@ public class FindTextDialogFragment extends DialogFragment { } @Override - public void onStart() - { + public void onStart() { super.onStart(); //super.onStart() is where dialog.show() is actually called on the underlying dialog, so we have to do it after this point - AlertDialog d = (AlertDialog)getDialog(); - if(d != null) - { + AlertDialog d = (AlertDialog) getDialog(); + if (d != null) { Button positiveButton = (Button) d.getButton(Dialog.BUTTON_POSITIVE); positiveButton.setText(getString(R.string.find)); - positiveButton.setOnClickListener(new View.OnClickListener() - { + positiveButton.setOnClickListener(new View.OnClickListener() { @Override - public void onClick(View v) - { + public void onClick(View v) { returnData(); } }); Button negativeButton = (Button) d.getButton(Dialog.BUTTON_NEGATIVE); negativeButton.setText(getString(android.R.string.cancel)); - negativeButton.setOnClickListener(new View.OnClickListener() - { + negativeButton.setOnClickListener(new View.OnClickListener() { @Override - public void onClick(View v) - { + public void onClick(View v) { dismiss(); } }); @@ -122,7 +115,7 @@ public class FindTextDialogFragment extends DialogFragment { } void returnData() { - if(textToFind.getText().toString().isEmpty()) { + if (textToFind.getText().toString().isEmpty()) { this.dismiss(); } else { // we disable the okButton while we search @@ -130,7 +123,11 @@ public class FindTextDialogFragment extends DialogFragment { } } - private class SearchTask extends AsyncTask{ + public interface SearchDialogInterface { + void onSearchDone(SearchResult searchResult); + } + + private class SearchTask extends AsyncTask { LinkedList foundIndex; boolean foundSomething; @@ -145,9 +142,9 @@ public class FindTextDialogFragment extends DialogFragment { Matcher matcher = null; foundSomething = false; - if(isRegex) { + if (isRegex) { try { - if(caseSensitive) + if (caseSensitive) matcher = Pattern.compile(whatToSearch, Pattern.MULTILINE).matcher(allText); else matcher = Pattern.compile(whatToSearch, Pattern.CASE_INSENSITIVE | Pattern.MULTILINE).matcher(allText); @@ -156,14 +153,14 @@ public class FindTextDialogFragment extends DialogFragment { } } - if(isRegex) { + if (isRegex) { while (matcher.find()) { foundSomething = true; foundIndex.add(matcher.start()); } } else { - if(caseSensitive == false) { // by default is case sensitive + if (caseSensitive == false) { // by default is case sensitive whatToSearch = whatToSearch.toLowerCase(); allText = allText.toLowerCase(); } @@ -183,15 +180,15 @@ public class FindTextDialogFragment extends DialogFragment { @Override protected void onPostExecute(Void aVoid) { super.onPostExecute(aVoid); - if(foundSomething) { + if (foundSomething) { // the class that called this Dialog should implement the SearchDialogIterface SearchDialogInterface searchDialogInterface; - searchDialogInterface = ((SearchDialogInterface) getTargetFragment()); - if(searchDialogInterface == null) + searchDialogInterface = ((SearchDialogInterface) getTargetFragment()); + if (searchDialogInterface == null) searchDialogInterface = ((SearchDialogInterface) getActivity()); // if who called this has not implemented the interface we return nothing - if(searchDialogInterface == null) + if (searchDialogInterface == null) return; // else we return positions and other things else { @@ -206,8 +203,4 @@ public class FindTextDialogFragment extends DialogFragment { FindTextDialogFragment.this.dismiss(); } } - - public interface SearchDialogInterface { - void onSearchDone(SearchResult searchResult); - } } \ No newline at end of file diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/NavigationDrawerListFragment.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/NavigationDrawerListFragment.java index 392d308..d45eab7 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/NavigationDrawerListFragment.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/NavigationDrawerListFragment.java @@ -27,15 +27,14 @@ import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.ListView; -import sharedcode.turboeditor.R; -import sharedcode.turboeditor.adapter.AdapterDrawer; -import sharedcode.turboeditor.util.EventBusEvents; -import sharedcode.turboeditor.preferences.PreferenceHelper; - import java.io.File; import java.util.ArrayList; import de.greenrobot.event.EventBus; +import sharedcode.turboeditor.R; +import sharedcode.turboeditor.adapter.AdapterDrawer; +import sharedcode.turboeditor.preferences.PreferenceHelper; +import sharedcode.turboeditor.util.EventBusEvents; public class NavigationDrawerListFragment extends Fragment implements AdapterView.OnItemClickListener, AdapterDrawer.Callbacks { diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/NewFileDetailsDialogFragment.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/NewFileDetailsDialogFragment.java index 6241aad..5cebbb5 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/NewFileDetailsDialogFragment.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/NewFileDetailsDialogFragment.java @@ -24,17 +24,13 @@ import android.app.Dialog; import android.app.DialogFragment; import android.content.DialogInterface; import android.os.Bundle; -import android.view.KeyEvent; import android.view.View; import android.view.WindowManager; -import android.view.inputmethod.EditorInfo; import android.widget.EditText; -import android.widget.TextView; import java.io.File; import sharedcode.turboeditor.R; -import sharedcode.turboeditor.activity.PreferenceAbout; import sharedcode.turboeditor.preferences.PreferenceHelper; import sharedcode.turboeditor.util.SaveFileTask; @@ -72,7 +68,7 @@ public class NewFileDetailsDialogFragment extends DialogFragment { new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { - if(!mName.getText().toString().isEmpty() && !mFolder.getText().toString().isEmpty()) { + if (!mName.getText().toString().isEmpty() && !mFolder.getText().toString().isEmpty()) { File file = new File(mFolder.getText().toString(), mName.getText().toString()); new SaveFileTask(getActivity(), file.getPath(), getArguments().getString("fileText"), getArguments().getString("fileEncoding")).execute(); } diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/SaveFileDialogFragment.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/SaveFileDialogFragment.java index c5f749c..97f102c 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/SaveFileDialogFragment.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/fragment/SaveFileDialogFragment.java @@ -25,21 +25,21 @@ import android.app.DialogFragment; import android.content.DialogInterface; import android.os.Bundle; -import sharedcode.turboeditor.R; -import sharedcode.turboeditor.preferences.SettingsFragment; -import sharedcode.turboeditor.util.SaveFileTask; - import org.apache.commons.io.FilenameUtils; import java.io.File; +import sharedcode.turboeditor.R; +import sharedcode.turboeditor.util.SaveFileTask; + public class SaveFileDialogFragment extends DialogFragment { - public static SaveFileDialogFragment newInstance(String filePath, String text) { + public static SaveFileDialogFragment newInstance(String filePath, String text, String encoding) { SaveFileDialogFragment frag = new SaveFileDialogFragment(); Bundle args = new Bundle(); args.putString("filePath", filePath); args.putString("text", text); + args.putString("encoding", encoding); frag.setArguments(args); return frag; } @@ -48,6 +48,7 @@ public class SaveFileDialogFragment extends DialogFragment { public Dialog onCreateDialog(Bundle savedInstanceState) { final String filePath = getArguments().getString("filePath"); final String text = getArguments().getString("text"); + final String encoding = getArguments().getString("encoding"); final String fileName = FilenameUtils.getName(filePath); final File file = new File(filePath); @@ -57,10 +58,10 @@ public class SaveFileDialogFragment extends DialogFragment { new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { - if(!fileName.isEmpty()) - new SaveFileTask(getActivity(), filePath, text, SettingsFragment.sCurrentEncoding).execute(); + if (!fileName.isEmpty()) + new SaveFileTask(getActivity(), filePath, text, encoding).execute(); else { - NewFileDetailsDialogFragment dialogFrag = NewFileDetailsDialogFragment.newInstance(text, SettingsFragment.sCurrentEncoding); + NewFileDetailsDialogFragment dialogFrag = NewFileDetailsDialogFragment.newInstance(text, encoding); dialogFrag.show(getFragmentManager().beginTransaction(), "dialog"); } } diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/preferences/ExtraSettingsActivity.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/preferences/ExtraSettingsActivity.java new file mode 100644 index 0000000..e61b918 --- /dev/null +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/preferences/ExtraSettingsActivity.java @@ -0,0 +1,215 @@ +/* + * Copyright (C) 2014 Vlad Mihalachi + * + * This file is part of Turbo Editor. + * + * Turbo Editor is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * Turbo Editor is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package sharedcode.turboeditor.preferences; + +import android.content.Context; +import android.content.res.Configuration; +import android.os.Build; +import android.os.Bundle; +import android.preference.ListPreference; +import android.preference.Preference; +import android.preference.PreferenceActivity; +import android.preference.PreferenceFragment; +import android.preference.PreferenceManager; + +import java.util.ArrayList; +import java.util.List; + +import de.greenrobot.event.EventBus; +import sharedcode.turboeditor.R; +import sharedcode.turboeditor.util.EventBusEvents; + +/** + * A {@link PreferenceActivity} that presents a set of application settings. On + * handset devices, settings are presented as a single list. On tablets, + * settings are split by category, with category headers shown to the left of + * the list of settings. + *

+ * See + * Android Design: Settings for design guidelines and the Settings + * API Guide for more information on developing a Settings UI. + */ +public class ExtraSettingsActivity extends PreferenceActivity { + /** + * Determines whether to always show the simplified settings UI, where + * settings are presented in a single list. When false, settings are shown + * as a master/detail two-pane view on tablets. When true, a single pane is + * shown on tablets. + */ + private static final boolean ALWAYS_SIMPLE_PREFS = true; + boolean encodingChanged = false, + themeChanged = false, + keyboardSuggestionsChanged = false; + /** + * A preference value change listener that updates the preference's summary + * to reflect its new value. + */ + private Preference.OnPreferenceChangeListener sBindPreferenceSummaryToValueListener = new Preference.OnPreferenceChangeListener() { + @Override + public boolean onPreferenceChange(Preference preference, Object value) { + String stringValue = value.toString(); + + if (preference instanceof ListPreference) { + // For list preferences, look up the correct display value in + // the preference's 'entries' list. + ListPreference listPreference = (ListPreference) preference; + int index = listPreference.findIndexOfValue(stringValue); + + // Set the summary to reflect the new value. + preference.setSummary( + index >= 0 + ? listPreference.getEntries()[index] + : null); + + } + switch (preference.getKey()) { + case "light_theme": + themeChanged = !themeChanged; + break; + case "suggestion_active": + keyboardSuggestionsChanged = !keyboardSuggestionsChanged; + break; + case "editor_encoding": + encodingChanged = true; + break; + + } + return true; + } + }; + + /** + * Helper method to determine if the device has an extra-large screen. For + * example, 10" tablets are extra-large. + */ + private static boolean isXLargeTablet(Context context) { + return (context.getResources().getConfiguration().screenLayout + & Configuration.SCREENLAYOUT_SIZE_MASK) >= Configuration.SCREENLAYOUT_SIZE_XLARGE; + } + + @Override + protected void onCreate(Bundle savedInstanceState) { + boolean light = PreferenceHelper.getLightTheme(this); + if (light) { + setTheme(R.style.AppTheme_Light); + } else { + setTheme(R.style.AppTheme_Dark); + } + super.onCreate(savedInstanceState); + } + + @Override + protected void onPostCreate(Bundle savedInstanceState) { + super.onPostCreate(savedInstanceState); + + setupSimplePreferencesScreen(); + } + + /** + * Shows the simplified settings UI if the device configuration if the + * device configuration dictates that a simplified, single-pane UI should be + * shown. + */ + private void setupSimplePreferencesScreen() { + if (!isSimplePreferences(this)) { + return; + } + + // In the simplified UI, fragments are not used at all and we instead + // use the older PreferenceActivity APIs. + + // Add 'general' preferences. + addPreferencesFromResource(R.xml.extra_options); + + // Bind the summaries of EditText/List/Dialog/Ringtone preferences to + // their values. When their values change, their summaries are updated + // to reflect the new value, per the Android Design guidelines. + bindPreferenceSummaryToValue(findPreference("editor_encoding")); + + String[] checkBoxPreferences = {"light_theme", "suggestion_active"}; + for (String key : checkBoxPreferences) { + // Set the listener to watch for value changes. + findPreference(key).setOnPreferenceChangeListener(sBindPreferenceSummaryToValueListener); + } + } + + /** + * {@inheritDoc} + */ + @Override + public boolean onIsMultiPane() { + return isXLargeTablet(this) && !isSimplePreferences(this); + } + + /** + * Determines whether the simplified settings UI should be shown. This is + * true if this is forced via {@link #ALWAYS_SIMPLE_PREFS}, or the device + * doesn't have newer APIs like {@link PreferenceFragment}, or the device + * doesn't have an extra-large screen. In these cases, a single-pane + * "simplified" settings UI should be shown. + */ + private boolean isSimplePreferences(Context context) { + return ALWAYS_SIMPLE_PREFS + || Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB + || !isXLargeTablet(context); + } + + @Override + protected void onDestroy() { + List listOfChanges = new ArrayList<>(); + if (themeChanged) { + listOfChanges.add(EventBusEvents.APreferenceValueWasChanged.Type.THEME_CHANGE); + } + if (keyboardSuggestionsChanged) { + listOfChanges.add(EventBusEvents.APreferenceValueWasChanged.Type.TEXT_SUGGESTIONS); + } + if (encodingChanged) { + listOfChanges.add(EventBusEvents.APreferenceValueWasChanged.Type.ENCODING); + } + + + if (listOfChanges.size() > 0) { + EventBus.getDefault().postSticky(new EventBusEvents.APreferenceValueWasChanged(listOfChanges)); + } + super.onDestroy(); + } + + /** + * Binds a preference's summary to its value. More specifically, when the + * preference's value is changed, its summary (line of text below the + * preference title) is updated to reflect the value. The summary is also + * immediately updated upon calling this method. The exact display format is + * dependent on the type of preference. + * + * @see #sBindPreferenceSummaryToValueListener + */ + private void bindPreferenceSummaryToValue(Preference preference) { + // Set the listener to watch for value changes. + preference.setOnPreferenceChangeListener(sBindPreferenceSummaryToValueListener); + + // Trigger the listener immediately with the preference's + // current value. + sBindPreferenceSummaryToValueListener.onPreferenceChange(preference, + PreferenceManager + .getDefaultSharedPreferences(preference.getContext()) + .getString(preference.getKey(), "")); + } +} diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/preferences/PreferenceHelper.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/preferences/PreferenceHelper.java index d6ca741..f91a52c 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/preferences/PreferenceHelper.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/preferences/PreferenceHelper.java @@ -105,6 +105,10 @@ public final class PreferenceHelper { return getPrefs(context).getBoolean("read_only", false); } + public static boolean getIgnoreBackButton(Context context) { + return getPrefs(context).getBoolean("ignore_back_button", false); + } + // Setter methods public static void setUseMonospace(Context context, boolean value) { @@ -123,30 +127,14 @@ public final class PreferenceHelper { getEditor(context).putBoolean("editor_wrap_content", value).commit(); } - public static void setLightTheme(Context context, boolean value) { - getEditor(context).putBoolean("light_theme", value).commit(); - } - - public static void setSuggestionActive(Context context, boolean value) { - getEditor(context).putBoolean("suggestion_active", value).commit(); - } - public static void setAutoencoding(Context context, boolean value) { getEditor(context).putBoolean("autoencoding", value).commit(); } - public static void setSendErrorReports(Context context, boolean value) { - getEditor(context).putBoolean("send_error_reports", value).commit(); - } - public static void setLastDayAdShowed(Context context, int value) { getEditor(context).putInt("last_day_ad_showed", value).commit(); } - public static void setEncoding(Context context, String value) { - getEditor(context).putString("editor_encoding", value).commit(); - } - public static void setFontSize(Context context, int value) { getEditor(context).putInt("font_size", value).commit(); } @@ -163,10 +151,6 @@ public final class PreferenceHelper { getEditor(context).putBoolean("page_system_button_popup_shown", value).commit(); } - public static void setAutoSave(Context context, boolean value) { - getEditor(context).putBoolean("auto_save", value).commit(); - } - public static void setReadOnly(Context context, boolean value) { getEditor(context).putBoolean("read_only", value).commit(); } diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/preferences/SettingsFragment.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/preferences/SettingsFragment.java index a916b4a..d539b4f 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/preferences/SettingsFragment.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/preferences/SettingsFragment.java @@ -27,59 +27,39 @@ import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.CheckBox; -import android.widget.CheckedTextView; import android.widget.CompoundButton; -import android.widget.Switch; import android.widget.TextView; -import sharedcode.turboeditor.R; -import sharedcode.turboeditor.fragment.EncodingDialogFragment; -import sharedcode.turboeditor.fragment.SeekbarDialogFragment; - import de.greenrobot.event.EventBus; +import sharedcode.turboeditor.R; +import sharedcode.turboeditor.fragment.SeekbarDialogFragment; import sharedcode.turboeditor.util.ProCheckUtils; import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged; -import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.AUTO_SAVE; -import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.ENCODING; import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.FONT_SIZE; import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.LINE_NUMERS; import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.MONOSPACE; import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.READ_ONLY; import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.SYNTAX; -import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.TEXT_SUGGESTIONS; -import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.THEME_CHANGE; import static sharedcode.turboeditor.util.EventBusEvents.APreferenceValueWasChanged.Type.WRAP_CONTENT; -public class SettingsFragment extends Fragment implements EncodingDialogFragment.DialogListener, SeekbarDialogFragment.onSeekbarDialogDismissed { +public class SettingsFragment extends Fragment implements SeekbarDialogFragment.onSeekbarDialogDismissed { - public static String sCurrentEncoding; // Editor Variables - public static boolean sLineNumbers; - public static boolean sColorSyntax; - public static boolean sWrapContent; - public static int sFontSize; - public static boolean sUseMonospace; - public static boolean sLightTheme; - public static boolean sSuggestionsActive; - public static boolean sAutoSave; - public static boolean sReadOnly; - public static boolean sSendErrorReports; + private boolean sLineNumbers; + private boolean sColorSyntax; + private boolean sWrapContent; + private boolean sUseMonospace; + private boolean sReadOnly; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - SettingsFragment.sCurrentEncoding = PreferenceHelper.getEncoding(getActivity()); - SettingsFragment.sUseMonospace = PreferenceHelper.getUseMonospace(getActivity()); - SettingsFragment.sColorSyntax = PreferenceHelper.getSyntaxHiglight(getActivity()); - SettingsFragment.sWrapContent = PreferenceHelper.getWrapContent(getActivity()); - SettingsFragment.sLineNumbers = PreferenceHelper.getLineNumbers(getActivity()); - SettingsFragment.sFontSize = PreferenceHelper.getFontSize(getActivity()); - SettingsFragment.sSuggestionsActive = PreferenceHelper.getSuggestionActive(getActivity()); - SettingsFragment.sLightTheme = PreferenceHelper.getLightTheme(getActivity()); - SettingsFragment.sAutoSave = PreferenceHelper.getAutoSave(getActivity()); - SettingsFragment.sReadOnly = PreferenceHelper.getReadOnly(getActivity()); - SettingsFragment.sSendErrorReports = PreferenceHelper.getSendErrorReports(getActivity()); + sUseMonospace = PreferenceHelper.getUseMonospace(getActivity()); + sColorSyntax = PreferenceHelper.getSyntaxHiglight(getActivity()); + sWrapContent = PreferenceHelper.getWrapContent(getActivity()); + sLineNumbers = PreferenceHelper.getLineNumbers(getActivity()); + sReadOnly = PreferenceHelper.getReadOnly(getActivity()); } @Override @@ -92,25 +72,17 @@ public class SettingsFragment extends Fragment implements EncodingDialogFragment switchSyntax = (CheckBox) rootView.findViewById(R.id.switch_syntax); switchWrapContent = (CheckBox) rootView.findViewById(R.id.switch_wrap_content); switchMonospace = (CheckBox) rootView.findViewById(R.id.switch_monospace); - switchLightTheme = (CheckBox) rootView.findViewById(R.id.switch_light_theme); - switchSuggestionsActive = (CheckBox) rootView.findViewById(R.id.switch_suggestions_active); - switchAutoSave = (CheckBox) rootView.findViewById(R.id.switch_auto_save); switchReadOnly = (CheckBox) rootView.findViewById(R.id.switch_read_only); - switchSendErrorReports = (CheckBox) rootView.findViewById(R.id.switch_send_error_reports); switchLineNumbers.setChecked(sLineNumbers); switchSyntax.setChecked(sColorSyntax); switchWrapContent.setChecked(sWrapContent); switchMonospace.setChecked(sUseMonospace); - switchLightTheme.setChecked(sLightTheme); - switchSuggestionsActive.setChecked(sSuggestionsActive); - switchAutoSave.setChecked(sAutoSave); switchReadOnly.setChecked(sReadOnly); - switchSendErrorReports.setChecked(sSendErrorReports); - TextView encodingView, fontSizeView, goProView; - encodingView = (TextView) rootView.findViewById(R.id.drawer_button_encoding); + TextView fontSizeView, goProView, extraOptionsView; fontSizeView = (TextView) rootView.findViewById(R.id.drawer_button_font_size); + extraOptionsView = (TextView) rootView.findViewById(R.id.drawer_button_extra_options); goProView = (TextView) rootView.findViewById(R.id.drawer_button_go_pro); switchLineNumbers.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @@ -151,33 +123,6 @@ public class SettingsFragment extends Fragment implements EncodingDialogFragment } }); - switchLightTheme.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { - @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - sLightTheme = isChecked; - PreferenceHelper.setLightTheme(getActivity(), isChecked); - EventBus.getDefault().post(new APreferenceValueWasChanged(THEME_CHANGE)); - } - }); - - switchSuggestionsActive.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { - @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - sSuggestionsActive = isChecked; - PreferenceHelper.setSuggestionActive(getActivity(), isChecked); - EventBus.getDefault().post(new APreferenceValueWasChanged(TEXT_SUGGESTIONS)); - } - }); - - switchAutoSave.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { - @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - sAutoSave = isChecked; - PreferenceHelper.setAutoSave(getActivity(), isChecked); - EventBus.getDefault().post(new APreferenceValueWasChanged(AUTO_SAVE)); - } - }); - switchReadOnly.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { @@ -187,23 +132,6 @@ public class SettingsFragment extends Fragment implements EncodingDialogFragment } }); - switchSendErrorReports.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { - @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - sSendErrorReports = isChecked; - PreferenceHelper.setSendErrorReports(getActivity(), isChecked); - } - }); - - encodingView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - EncodingDialogFragment dialogFrag = EncodingDialogFragment.newInstance(); - dialogFrag.setTargetFragment(SettingsFragment.this, 0); - dialogFrag.show(getFragmentManager().beginTransaction(), "dialog"); - } - }); - fontSizeView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { @@ -217,6 +145,13 @@ public class SettingsFragment extends Fragment implements EncodingDialogFragment } }); + extraOptionsView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + startActivity(new Intent(getActivity(), ExtraSettingsActivity.class)); + } + }); + goProView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { @@ -232,33 +167,10 @@ public class SettingsFragment extends Fragment implements EncodingDialogFragment return rootView; } - - @Override - public void onEncodingSelected(String value) { - PreferenceHelper.setEncoding(getActivity(), value); - EventBus.getDefault().post(new APreferenceValueWasChanged(ENCODING)); - } - @Override public void onSeekbarDialogDismissed(SeekbarDialogFragment.Actions action, int value) { - sFontSize = value; PreferenceHelper.setFontSize(getActivity(), value); EventBus.getDefault().post(new APreferenceValueWasChanged(FONT_SIZE)); } - - /** - * This interface must be implemented by activities that contain this - * fragment to allow an interaction in this fragment to be communicated - * to the activity and potentially other fragments contained in that - * activity. - *

- * See the Android Training lesson Communicating with Other Fragments for more information. - */ - public interface OnFragmentInteractionListener { - // TODO: Update argument type and name - public void onFragmentInteraction(Uri uri); - } } diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/EditorInterface.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/EditorInterface.java index bf6236e..491f042 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/EditorInterface.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/EditorInterface.java @@ -19,13 +19,14 @@ package sharedcode.turboeditor.util; -import android.widget.ScrollView; - import sharedcode.turboeditor.views.GoodScrollView; public interface EditorInterface { - public GoodScrollView getVerticalScrollView(); - public String getFilePath(); - public PageSystem getPageSystem(); - public void updateTextSyntax(); - } \ No newline at end of file + public GoodScrollView getVerticalScrollView(); + + public String getFilePath(); + + public PageSystem getPageSystem(); + + public void updateTextSyntax(); +} \ No newline at end of file diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/EventBusEvents.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/EventBusEvents.java index 49b4362..9fe0669 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/EventBusEvents.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/EventBusEvents.java @@ -20,6 +20,7 @@ package sharedcode.turboeditor.util; import java.io.File; +import java.util.List; public class EventBusEvents { public static class CannotOpenAFile { @@ -65,21 +66,28 @@ public class EventBusEvents { public static class APreferenceValueWasChanged { private Type type; + private List types; public APreferenceValueWasChanged(Type type) { this.type = type; } - public Type getType() { - return type; + public APreferenceValueWasChanged(List types) { + this.types = types; } - public void setType(Type type) { - this.type = type; + public boolean hasType(Type value) { + + if (type != null) { + return value == type; + } else { + return types.contains(value); + } + } public enum Type { - FONT_SIZE, ENCODING, SYNTAX, WRAP_CONTENT, MONOSPACE, LINE_NUMERS, THEME_CHANGE, TEXT_SUGGESTIONS, AUTO_SAVE, READ_ONLY + FONT_SIZE, ENCODING, SYNTAX, WRAP_CONTENT, MONOSPACE, LINE_NUMERS, THEME_CHANGE, TEXT_SUGGESTIONS, READ_ONLY } } diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/LineUtils.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/LineUtils.java index e26f435..20a6e13 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/LineUtils.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/LineUtils.java @@ -48,9 +48,8 @@ public class LineUtils { return line; } - public int getLastVisibleLine(int firstVisibleLine, int lineCount) { - int line; - line = firstVisibleLine + 150; + public int getLastVisibleLine(ScrollView scrollView, int childHeight, int lineCount, int deviceHeight) { + int line = ((scrollView.getScrollY() + deviceHeight) * lineCount) / childHeight; if (line > lineCount) line = lineCount; return line; } diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/PageSystem.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/PageSystem.java index 10cf4a5..6f0c96a 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/PageSystem.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/PageSystem.java @@ -24,16 +24,9 @@ import java.util.List; public class PageSystem { - public interface PageSystemInterface { - void onPageChanged(int page); - } - private List pages; - private int[] startingLines; - private int currentPage = 0; - private PageSystemInterface pageSystemInterface; public PageSystem(PageSystemInterface pageSystemInterface, String text) { @@ -46,7 +39,7 @@ public class PageSystem { int to; int indexOfReturn; int textLenght = text.length(); - if(textLenght > maxLenghtInOnePage) { + if (textLenght > maxLenghtInOnePage) { while (i < textLenght) { to = i + charForPage; indexOfReturn = text.indexOf("\n", to); @@ -78,8 +71,8 @@ public class PageSystem { public String getTextOfNextPages(boolean includeCurrent, int nOfPages) { StringBuilder stringBuilder = new StringBuilder(); int i; - for(i = includeCurrent ? 0 : 1; i < nOfPages; i++){ - if(pages.size() > (currentPage + i)) { + for (i = includeCurrent ? 0 : 1; i < nOfPages; i++) { + if (pages.size() > (currentPage + i)) { stringBuilder.append(pages.get(currentPage + 1)); } } @@ -92,25 +85,25 @@ public class PageSystem { } public void nextPage() { - if(!canReadNextPage()) return; + if (!canReadNextPage()) return; goToPage(currentPage + 1); } public void prevPage() { - if(!canReadPrevPage()) return; + if (!canReadPrevPage()) return; goToPage(currentPage - 1); } public void goToPage(int page) { - if(page >= pages.size()) page = pages.size() - 1; - if(page < 0) page = 0; + if (page >= pages.size()) page = pages.size() - 1; + if (page < 0) page = 0; boolean shouldUpdateLines = page > currentPage && canReadNextPage(); - if(shouldUpdateLines) { + if (shouldUpdateLines) { String text = getCurrentPageText(); int nOfNewLineNow = (text.length() - text.replace("\n", "").length()) + 1; // normally the last line is not counted so we have to add 1 - int nOfNewLineBefore = startingLines[currentPage+1] - startingLines[currentPage]; - int difference = nOfNewLineNow - nOfNewLineBefore; - updateStartingLines(currentPage+1, difference); + int nOfNewLineBefore = startingLines[currentPage + 1] - startingLines[currentPage]; + int difference = nOfNewLineNow - nOfNewLineBefore; + updateStartingLines(currentPage + 1, difference); } currentPage = page; pageSystemInterface.onPageChanged(page); @@ -122,8 +115,8 @@ public class PageSystem { int nOfNewLines; String text; startingLines[0] = 0; - for(i = 1; i < pages.size(); i++) { - text = pages.get(i-1); + for (i = 1; i < pages.size(); i++) { + text = pages.get(i - 1); nOfNewLines = text.length() - text.replace("\n", "").length() + 1; startingLine = startingLines[i - 1] + nOfNewLines; startingLines[i] = startingLine; @@ -131,11 +124,11 @@ public class PageSystem { } public void updateStartingLines(int fromPage, int difference) { - if(difference == 0) + if (difference == 0) return; int i; - if(fromPage < 1) fromPage = 1; - for(i = fromPage; i < pages.size(); i++) { + if (fromPage < 1) fromPage = 1; + for (i = fromPage; i < pages.size(); i++) { startingLines[i] += difference; } } @@ -144,13 +137,15 @@ public class PageSystem { return pages.size() - 1; } - public int getCurrentPage() { return currentPage; } + public int getCurrentPage() { + return currentPage; + } public String getAllText(String currentPageText) { pages.set(currentPage, currentPageText); int i; StringBuilder allText = new StringBuilder(); - for(i = 0; i < pages.size(); i++) { + for (i = 0; i < pages.size(); i++) { allText.append(pages.get(i)).append("\n"); } return allText.toString(); @@ -163,4 +158,8 @@ public class PageSystem { public boolean canReadPrevPage() { return currentPage >= 1; } + + public interface PageSystemInterface { + void onPageChanged(int page); + } } diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/PageSystemButtons.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/PageSystemButtons.java index acf5154..c7a104d 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/PageSystemButtons.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/PageSystemButtons.java @@ -24,21 +24,20 @@ import android.os.Handler; import android.view.View; import com.faizmalkani.floatingactionbutton.FloatingActionButton; + import sharedcode.turboeditor.R; public class PageSystemButtons { private static final int TIME_TO_SHOW_FABS = 2000; - - public interface PageButtonsInterface { - public void nextPageClicked(); - public void prevPageClicked(); - public void pageSystemButtonLongClicked(); - - public boolean canReadNextPage(); - public boolean canReadPrevPage(); - } - + final Handler handler = new Handler(); + final Runnable runnable = new Runnable() { + @Override + public void run() { + PageSystemButtons.this.next.setVisibility(View.GONE); + PageSystemButtons.this.prev.setVisibility(View.GONE); + } + }; FloatingActionButton prev, next; PageButtonsInterface pageButtonsInterface; @@ -53,10 +52,10 @@ public class PageSystemButtons { this.prev.setColor(context.getResources().getColor(R.color.fab_light)); this.prev.setDrawable(context.getResources().getDrawable(R.drawable.ic_keyboard_arrow_left)); - if(pageButtonsInterface.canReadNextPage()) + if (pageButtonsInterface.canReadNextPage()) next.setVisibility(View.VISIBLE); - if(pageButtonsInterface.canReadPrevPage()) + if (pageButtonsInterface.canReadPrevPage()) prev.setVisibility(View.VISIBLE); this.next.setOnClickListener(new View.OnClickListener() { @@ -90,23 +89,14 @@ public class PageSystemButtons { }); } - final Handler handler = new Handler(); - final Runnable runnable = new Runnable() { - @Override - public void run() { - PageSystemButtons.this.next.setVisibility(View.GONE); - PageSystemButtons.this.prev.setVisibility(View.GONE); - } - }; - public void updateVisibility(boolean autoHide) { - if(pageButtonsInterface.canReadNextPage()) + if (pageButtonsInterface.canReadNextPage()) PageSystemButtons.this.next.setVisibility(View.VISIBLE); else PageSystemButtons.this.next.setVisibility(View.GONE); - if(pageButtonsInterface.canReadPrevPage()) + if (pageButtonsInterface.canReadPrevPage()) PageSystemButtons.this.prev.setVisibility(View.VISIBLE); else PageSystemButtons.this.prev.setVisibility(View.GONE); @@ -121,7 +111,7 @@ public class PageSystemButtons { else prev.hideFab();*/ - if(autoHide) { + if (autoHide) { handler.removeCallbacks(runnable); handler.postDelayed(runnable, TIME_TO_SHOW_FABS); } else { @@ -129,4 +119,16 @@ public class PageSystemButtons { } } + public interface PageButtonsInterface { + public void nextPageClicked(); + + public void prevPageClicked(); + + public void pageSystemButtonLongClicked(); + + public boolean canReadNextPage(); + + public boolean canReadPrevPage(); + } + } diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/Patterns.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/Patterns.java index bcc06f5..06af62f 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/Patterns.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/Patterns.java @@ -69,9 +69,9 @@ public class Patterns { "\\b(int|float|long|complex|str|unicode|list|tuple|bytearray|buffer|xrange|set|frozenset|dict|bool)|(True|False|None|self|NotImplemented|Ellipsis|__debug__|__file__)|(and|del|from|not|while|as|elif|global|or|with|assert|else|if|pass|yield|break|except|import|print|class|exec|in|raise|continue|finally|is|return|def|for|lambda|try)|(ArithmeticError|AssertionError|AttributeError|BaseException|DeprecationWarning|EnvironmentError|EOFError|Exception|FloatingPointError|FutureWarning|GeneratorExit|IOError|ImportError|ImportWarning|IndexError|KeyError|KeyboardInterrupt|LookupError|MemoryError|NameError|NotImplementedError|OSError|OverflowError|PendingDeprecationWarning|ReferenceError|RuntimeError|RuntimeWarning|StandardError|StopIteration|SyntaxError|SyntaxWarning|SystemError|SystemExit|TypeError|UnboundLocalError|UserWarning|UnicodeError|UnicodeWarning|UnicodeEncodeError|UnicodeDecodeError|UnicodeTranslateError|ValueError|Warning|WindowsError|ZeroDivisionError)\\b", Pattern.CASE_INSENSITIVE); public static final Pattern LUA_KEYWORDS = Pattern.compile( -"@[A-Za-z0-9_\\.]*|\\b(local|global|boolean|number|userdata)\\b|\\b(true|false|nil)\\b|\\b(return|then|while|and|break|do|else|elseif|end|for|function|if|in|not|or|repeat|until|thread|table)\\b" + - "|(?i)\\b(editsetText|editText|inkey|touch|system.exit|system.expCall|system.getAppPath|system.getCardMnt|system.getSec|system.impCallActionSend|system.impCallActionView|system.setrun|system.setScreen|system.version|El_Psy_Congroo|canvas.drawCircle|canvas.drawCls|canvas.drawLine|canvas.drawRect|canvas.getBmpSize|canvas.getColor|canvas.getg|canvas.getviewSize|canvas.loadBmp|canvas.putCircle|canvas.putCls|canvas.putflush|canvas.putg|canvas.putLine|canvas.putRect|canvas.putrotg|canvas.putWork|canvas.saveBmp|canvas.setMainBmp|canvas.setWorkBmp|canvas.workCls|canvas.workflush|color|canvas.drawText|canvas.drawTextBox|canvas.drawTextCenter|canvas.drawTextRotate|canvas.putText|canvas.putTextBox|canvas.putTextRotate|http.addHeader|http.addParam|http.clrHeader|http.clrParam|http.get|http.post|http.setContentType|http.setPostFile|http.status|dialog|item.add|item.check|item.clear|item.list|item.radio|toast|sensor.getAccel|sensor.setdevAccel|sensor.setdevMagnet|sensor.setdevOrient|sensor.getGdirection|sensor.getMagnet|sensor.getOrient|sound.beep|sound.isPlay|sound.pause|sound.restart|sound.setSoundFile|sound.start|sound.stop|zip.addFile|zip.exec|zip.status|sock.close|sock.connectOpen|sock.getAddress|sock.listenOpen|sock.recv|sock.send|sprite.clear|sprite.define|sprite.init|sprite.move|sprite.put)\\b" + - "|(?i)\\b(assert|collectgarbage|coroutine.create|coroutine.resume|coroutine.running|coroutine.status|coroutine.wrap|coroutine.yield|debug.debug|debug.getfenv|debug.gethook|debug.getinfo|debug.getlocal|debug.getmetatable|debug.getregistry|debug.getupvalue|debug.setfenv|debug.sethook|debug.setlocal|debug.setmetatable|debug.setupvalue|debug.traceback|dofile|error|file:close|file:flush|file:lines|file:read|file:seek|file:setvbuf|file:write|getfenv|getmetatable|io.close|io.flush|io.input|io.lines|io.open|io.output|io.popen|io.read|io.tmpfile|io.type|io.write|ipairs|load|loadfile|loadstring|math.abs|math.acos|math.asin|math.atan2|math.atan|math.ceil|math.cosh|math.cos|math.deg|math.exp|math.floor|math.fmod|math.frexp|math.ldexp|math.log10|math.log|math.max|math.min|math.modf|math.pow|math.rad|math.random|math.randomseed|math.sinh|math.sin|math.sqrt|math.tanh|math.tan|module|next|os.clock|os.date|os.difftime|os.execute|os.exit|os.getenv|os.remove|os.rename|os.setlocale|os.time|os.tmpname|package.cpath|package.loaded|package.loadlib|package.path|package.preload|package.seeal|pairs|pcall|print|rawequal|rawget|rawset|require|select|setfenv|setmetatable|string.byte|string.char|string.dump|string.find|string.format|string.gmatch|string.gsub|string.len|string.lower|string.match|string.rep|string.reverse|string.sub|string.upper|table.concat|table.insert|table.maxn|table.remove|table.sort|tonumber|tostring|type|unpack|xpcall)\\b" + "@[A-Za-z0-9_\\.]*|\\b(local|global|boolean|number|userdata)\\b|\\b(true|false|nil)\\b|\\b(return|then|while|and|break|do|else|elseif|end|for|function|if|in|not|or|repeat|until|thread|table)\\b" + + "|(?i)\\b(editsetText|editText|inkey|touch|system.exit|system.expCall|system.getAppPath|system.getCardMnt|system.getSec|system.impCallActionSend|system.impCallActionView|system.setrun|system.setScreen|system.version|El_Psy_Congroo|canvas.drawCircle|canvas.drawCls|canvas.drawLine|canvas.drawRect|canvas.getBmpSize|canvas.getColor|canvas.getg|canvas.getviewSize|canvas.loadBmp|canvas.putCircle|canvas.putCls|canvas.putflush|canvas.putg|canvas.putLine|canvas.putRect|canvas.putrotg|canvas.putWork|canvas.saveBmp|canvas.setMainBmp|canvas.setWorkBmp|canvas.workCls|canvas.workflush|color|canvas.drawText|canvas.drawTextBox|canvas.drawTextCenter|canvas.drawTextRotate|canvas.putText|canvas.putTextBox|canvas.putTextRotate|http.addHeader|http.addParam|http.clrHeader|http.clrParam|http.get|http.post|http.setContentType|http.setPostFile|http.status|dialog|item.add|item.check|item.clear|item.list|item.radio|toast|sensor.getAccel|sensor.setdevAccel|sensor.setdevMagnet|sensor.setdevOrient|sensor.getGdirection|sensor.getMagnet|sensor.getOrient|sound.beep|sound.isPlay|sound.pause|sound.restart|sound.setSoundFile|sound.start|sound.stop|zip.addFile|zip.exec|zip.status|sock.close|sock.connectOpen|sock.getAddress|sock.listenOpen|sock.recv|sock.send|sprite.clear|sprite.define|sprite.init|sprite.move|sprite.put)\\b" + + "|(?i)\\b(assert|collectgarbage|coroutine.create|coroutine.resume|coroutine.running|coroutine.status|coroutine.wrap|coroutine.yield|debug.debug|debug.getfenv|debug.gethook|debug.getinfo|debug.getlocal|debug.getmetatable|debug.getregistry|debug.getupvalue|debug.setfenv|debug.sethook|debug.setlocal|debug.setmetatable|debug.setupvalue|debug.traceback|dofile|error|file:close|file:flush|file:lines|file:read|file:seek|file:setvbuf|file:write|getfenv|getmetatable|io.close|io.flush|io.input|io.lines|io.open|io.output|io.popen|io.read|io.tmpfile|io.type|io.write|ipairs|load|loadfile|loadstring|math.abs|math.acos|math.asin|math.atan2|math.atan|math.ceil|math.cosh|math.cos|math.deg|math.exp|math.floor|math.fmod|math.frexp|math.ldexp|math.log10|math.log|math.max|math.min|math.modf|math.pow|math.rad|math.random|math.randomseed|math.sinh|math.sin|math.sqrt|math.tanh|math.tan|module|next|os.clock|os.date|os.difftime|os.execute|os.exit|os.getenv|os.remove|os.rename|os.setlocale|os.time|os.tmpname|package.cpath|package.loaded|package.loadlib|package.path|package.preload|package.seeal|pairs|pcall|print|rawequal|rawget|rawset|require|select|setfenv|setmetatable|string.byte|string.char|string.dump|string.find|string.format|string.gmatch|string.gsub|string.len|string.lower|string.match|string.rep|string.reverse|string.sub|string.upper|table.concat|table.insert|table.maxn|table.remove|table.sort|tonumber|tostring|type|unpack|xpcall)\\b" ); public static final Pattern PHP_VARIABLES = Pattern.compile("\\$\\s*(\\w+)"); diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/ProCheckUtils.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/ProCheckUtils.java index d7ed05a..40b9040 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/ProCheckUtils.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/ProCheckUtils.java @@ -26,9 +26,9 @@ public class ProCheckUtils { String packageName = context.getPackageName(); - if(Constants.FOR_AMAZON) + if (Constants.FOR_AMAZON) return true; - else if(packageName.equals("com.maskyn.fileeditorpro")) + else if (packageName.equals("com.maskyn.fileeditorpro")) return true; else return false; diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/SaveFileTask.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/SaveFileTask.java index 019c198..2c94b8e 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/SaveFileTask.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/SaveFileTask.java @@ -23,8 +23,6 @@ import android.content.Context; import android.os.AsyncTask; import android.widget.Toast; -import sharedcode.turboeditor.R; - import org.sufficientlysecure.rootcommands.Shell; import org.sufficientlysecure.rootcommands.Toolbox; @@ -33,6 +31,7 @@ import java.io.IOException; import java.util.concurrent.TimeoutException; import de.greenrobot.event.EventBus; +import sharedcode.turboeditor.R; public class SaveFileTask extends AsyncTask { @@ -100,7 +99,7 @@ public class SaveFileTask extends AsyncTask { protected void onPostExecute(final Void aVoid) { super.onPostExecute(aVoid); Toast.makeText(context, message, Toast.LENGTH_LONG).show(); - if(message.equals(positiveMessage)) + if (message.equals(positiveMessage)) EventBus.getDefault().post(new EventBusEvents.SavedAFile(filePath)); } } \ No newline at end of file diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/SearchResult.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/SearchResult.java index df814ab..eb9ab22 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/SearchResult.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/util/SearchResult.java @@ -38,7 +38,7 @@ public class SearchResult { public void doneReplace() { foundIndex.remove(index); int i; - for(i = index; i < foundIndex.size(); i++) { + for (i = index; i < foundIndex.size(); i++) { foundIndex.set(i, foundIndex.get(i) + textToReplace.length() - textLength); } index--; // an element was removed so we decrease the index diff --git a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/views/GoodScrollView.java b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/views/GoodScrollView.java index 60efd0b..e03e380 100644 --- a/libraries/sharedCode/src/main/java/sharedcode/turboeditor/views/GoodScrollView.java +++ b/libraries/sharedCode/src/main/java/sharedcode/turboeditor/views/GoodScrollView.java @@ -21,11 +21,13 @@ package sharedcode.turboeditor.views; import android.content.Context; import android.util.AttributeSet; +import android.view.View; import android.widget.ScrollView; public class GoodScrollView extends ScrollView { public ScrollInterface scrollInterface; + int lastY; public GoodScrollView(Context context) { super(context); @@ -39,24 +41,33 @@ public class GoodScrollView extends ScrollView { super(context, attrs, defStyle); } - public interface ScrollInterface { - public void onScrollChanged(int l, int t, int oldl, int oldt); - } - public void setScrollInterface(ScrollInterface scrollInterface) { this.scrollInterface = scrollInterface; } - int lastY; - @Override protected void onScrollChanged(int l, int t, int oldl, int oldt) { super.onScrollChanged(l, t, oldl, oldt); - if(scrollInterface == null) return; - if(Math.abs(lastY - t) > 50){ - lastY = t; - scrollInterface.onScrollChanged(l, t, oldl, oldt); - } + if (scrollInterface == null) return; + + + + if (Math.abs(lastY - t) > 100) { + lastY = t; + scrollInterface.onScrollChanged(l, t, oldl, oldt); + } } + + public boolean hasReachedBottom(){ + View firstChild = getChildAt(getChildCount()-1); + + int diff = (firstChild.getBottom()-(getHeight()+getScrollY()+firstChild.getTop()));// Calculate the scrolldiff + return diff <= 0; + } + + + public interface ScrollInterface { + public void onScrollChanged(int l, int t, int oldl, int oldt); + } } diff --git a/libraries/sharedCode/src/main/res/layout/fragment_settings.xml b/libraries/sharedCode/src/main/res/layout/fragment_settings.xml index 9d6fd02..5af7835 100644 --- a/libraries/sharedCode/src/main/res/layout/fragment_settings.xml +++ b/libraries/sharedCode/src/main/res/layout/fragment_settings.xml @@ -143,71 +143,6 @@ android:layout_width="match_parent" android:layout_height="@dimen/line_dimension"/> - - - - - - - - - - - - - - - - - + + + + \ No newline at end of file diff --git a/libraries/sharedCode/src/main/res/values/arrays.xml b/libraries/sharedCode/src/main/res/values/arrays.xml index f093d60..0b71647 100644 --- a/libraries/sharedCode/src/main/res/values/arrays.xml +++ b/libraries/sharedCode/src/main/res/values/arrays.xml @@ -26,4 +26,36 @@ RootCommands Floating Action Button + + + ISO-2022-JP + ISO-2022-CN + ISO-2022-KR + ISO-8859-5 + ISO-8859-7 + ISO-8859-8 + BIG5 + GB18030 + EUC-JP + EUC-KR + EUC-TW + SHIFT_JIS + IBM855 + IBM866 + KOI8-R + MACCYRILLIC + WINDOWS-1251 + WINDOWS-1252 + WINDOWS-1253 + WINDOWS-1255 + UTF-8 + UTF-16BE + UTF-16LE + UTF-32BE + UTF-32LE + GB2312 + HZ-GB-2312 + X-ISO-10646-UCS-4-3412 + X-ISO-10646-UCS-4-2143 + \ No newline at end of file diff --git a/libraries/sharedCode/src/main/res/values/ids.xml b/libraries/sharedCode/src/main/res/values/ids.xml index 7618435..14c2aae 100644 --- a/libraries/sharedCode/src/main/res/values/ids.xml +++ b/libraries/sharedCode/src/main/res/values/ids.xml @@ -73,7 +73,7 @@ - + diff --git a/libraries/sharedCode/src/main/res/values/strings.xml b/libraries/sharedCode/src/main/res/values/strings.xml index 91ef12d..ce44053 100644 --- a/libraries/sharedCode/src/main/res/values/strings.xml +++ b/libraries/sharedCode/src/main/res/values/strings.xml @@ -167,5 +167,7 @@ Auto save Read only Send error reports - + Extra options + Split the text if too long + Ignore back button diff --git a/libraries/sharedCode/src/main/res/xml/extra_options.xml b/libraries/sharedCode/src/main/res/xml/extra_options.xml new file mode 100644 index 0000000..39eda45 --- /dev/null +++ b/libraries/sharedCode/src/main/res/xml/extra_options.xml @@ -0,0 +1,71 @@ + + + + + + + + + + + + + + + + + + + + + + +