From f1f409a389d67dedc4847f802df402e78dd01353 Mon Sep 17 00:00:00 2001 From: Gilles Debunne Date: Thu, 27 Jan 2011 17:31:00 -0800 Subject: [PATCH] Fxi initial error popup dialog in TextEdit and refreshed assets. Bug 3398923 Set the background of the popup when it is created so that the first measure is correct. New assets. Change-Id: I4803754ef3115429a608d890f56c6b0c8033d253 --- core/java/android/widget/TextView.java | 41 ++++++++++-------- .../drawable-hdpi/indicator_input_error.png | Bin 1461 -> 1162 bytes .../popup_inline_error_above_holo_dark.9.png | Bin 0 -> 992 bytes .../popup_inline_error_above_holo_light.9.png | Bin 0 -> 1000 bytes .../popup_inline_error_holo_dark.9.png | Bin 0 -> 979 bytes .../popup_inline_error_holo_light.9.png | Bin 0 -> 968 bytes .../drawable-mdpi/indicator_input_error.png | Bin 884 -> 822 bytes .../popup_inline_error_above_holo_dark.9.png | Bin 1462 -> 648 bytes .../popup_inline_error_above_holo_light.9.png | Bin 1446 -> 666 bytes .../popup_inline_error_holo_dark.9.png | Bin 1418 -> 680 bytes .../popup_inline_error_holo_light.9.png | Bin 1410 -> 668 bytes core/res/res/layout/textview_hint.xml | 2 +- 12 files changed, 25 insertions(+), 18 deletions(-) create mode 100644 core/res/res/drawable-hdpi/popup_inline_error_above_holo_dark.9.png create mode 100644 core/res/res/drawable-hdpi/popup_inline_error_above_holo_light.9.png create mode 100644 core/res/res/drawable-hdpi/popup_inline_error_holo_dark.9.png create mode 100644 core/res/res/drawable-hdpi/popup_inline_error_holo_light.9.png diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java index b2170521a97fa..4ba907f3008e8 100644 --- a/core/java/android/widget/TextView.java +++ b/core/java/android/widget/TextView.java @@ -3489,8 +3489,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener com.android.internal.R.layout.textview_hint, null); final float scale = getResources().getDisplayMetrics().density; - mPopup = new ErrorPopup(err, (int) (200 * scale + 0.5f), - (int) (50 * scale + 0.5f)); + mPopup = new ErrorPopup(err, (int) (200 * scale + 0.5f), (int) (50 * scale + 0.5f)); mPopup.setFocusable(false); // The user is entering text, so the input method is needed. We // don't want the popup to be displayed on top of it. @@ -3514,6 +3513,12 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener ErrorPopup(TextView v, int width, int height) { super(v, width, height); mView = v; + // Make sure the TextView has a background set as it will be used the first time it is + // shown and positionned. Initialized with below background, which should have + // dimensions identical to the above version for this to work (and is more likely). + mPopupInlineErrorBackgroundId = getResourceId(mPopupInlineErrorBackgroundId, + com.android.internal.R.styleable.Theme_errorMessageBackground); + mView.setBackgroundResource(mPopupInlineErrorBackgroundId); } void fixDirection(boolean above) { @@ -3521,18 +3526,21 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener if (above) { mPopupInlineErrorAboveBackgroundId = - getResourceId(mPopupInlineErrorAboveBackgroundId, com.android.internal.R.styleable.Theme_errorMessageAboveBackground); + getResourceId(mPopupInlineErrorAboveBackgroundId, + com.android.internal.R.styleable.Theme_errorMessageAboveBackground); } else { - mPopupInlineErrorBackgroundId = - getResourceId(mPopupInlineErrorBackgroundId, com.android.internal.R.styleable.Theme_errorMessageBackground); + mPopupInlineErrorBackgroundId = getResourceId(mPopupInlineErrorBackgroundId, + com.android.internal.R.styleable.Theme_errorMessageBackground); } - mView.setBackgroundResource(above ? mPopupInlineErrorAboveBackgroundId : mPopupInlineErrorBackgroundId); + mView.setBackgroundResource(above ? mPopupInlineErrorAboveBackgroundId : + mPopupInlineErrorBackgroundId); } private int getResourceId(int currentId, int index) { if (currentId == 0) { - TypedArray styledAttributes = mView.getContext().obtainStyledAttributes(R.styleable.Theme); + TypedArray styledAttributes = mView.getContext().obtainStyledAttributes( + R.styleable.Theme); currentId = styledAttributes.getResourceId(index, 0); styledAttributes.recycle(); } @@ -3562,9 +3570,8 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener final float scale = getResources().getDisplayMetrics().density; final Drawables dr = mDrawables; - return getWidth() - mPopup.getWidth() - - getPaddingRight() - - (dr != null ? dr.mDrawableSizeRight : 0) / 2 + (int) (25 * scale + 0.5f); + return getWidth() - mPopup.getWidth() - getPaddingRight() - + (dr != null ? dr.mDrawableSizeRight : 0) / 2 + (int) (25 * scale + 0.5f); } /** @@ -3576,20 +3583,20 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener * Compound, not extended, because the icon is not clipped * if the text height is smaller. */ - int vspace = mBottom - mTop - - getCompoundPaddingBottom() - getCompoundPaddingTop(); + final int compoundPaddingTop = getCompoundPaddingTop(); + int vspace = mBottom - mTop - getCompoundPaddingBottom() - compoundPaddingTop; final Drawables dr = mDrawables; - int icontop = getCompoundPaddingTop() - + (vspace - (dr != null ? dr.mDrawableHeightRight : 0)) / 2; + int icontop = compoundPaddingTop + + (vspace - (dr != null ? dr.mDrawableHeightRight : 0)) / 2; /* * The "2" is the distance between the point and the top edge * of the background. */ - - return icontop + (dr != null ? dr.mDrawableHeightRight : 0) - - getHeight() - 2; + final float scale = getResources().getDisplayMetrics().density; + return icontop + (dr != null ? dr.mDrawableHeightRight : 0) - getHeight() - + (int) (2 * scale + 0.5f); } private void hideError() { diff --git a/core/res/res/drawable-hdpi/indicator_input_error.png b/core/res/res/drawable-hdpi/indicator_input_error.png index 213976c70adc2e9117199609f14a95910e00ed8c..878537649c901b377cc5ec790f91d152fd4a8865 100644 GIT binary patch delta 1106 zcmV-Y1g-nE3yKMlB!32COGiWi{{a60|De66lK=n!32;bRa{vGUNB{r;NB~C3Yd!z~ z010+*L1zE}03HAU03HDNPvJcP00WLmL_t(Y$Gw+Jh#XZEK+k*i>6-4Y?w(0cXVOMT zvk4eKMBONeA4IcqF(~3jkeJQ5%pwa{imP#<8$Z#7D;FxvMt_13QT%`iVirLV7g79R zm>y@QKULjT-Bs_os2bCDIx|%>gBJ>_pzb^O-gn=<_X(zmZY&8v0v2Ec4&c!59Az{( zj*1&7)j)^=(r6)!tCXrgVivkUkUm2o29#*6UdIpTm^K{qG5Dm`&74nFXm$7G7s2=_j=%ofk z<8UznEdVaPje7{XZ=&_FT);_@<_FY{yo_nJfc`jKOn6$M(|VN9dlzu`1-<6|x6~F+ zV>wsH;WG8w1WI_DcMGJ5kY7*+Qq|bgz7pBhyEtGiVxw{<+j^O9C?l{^>O2nb3eD zEe`2-7Jo1(bw9oJdx3%^8dg!!sf^J5%W$xifc>reILIvC)$8~{z?MYAlm8nOKu z>Df(?D!x0P?Xqhk#BVvnbb?r&$m`+w3OMCoB!8BDX&;N^7a@Mdo@twu=6)dXyJTDRUnkWfEo8a z@@4mSt&YiBry&^%-1;S8XaXUn*`FBnK0-y$W(gL7*91KefYzmq*chj@LekYnLN}I7 zpnu4)zes286SUrICEHmH>n#r5{3_7i4s{HK*u}qa++~uf@L)w6Uod;qYb5=91SmK{dxhz@pC*nTL#vbAa6}Sq zr2GogzCd;1B0_knmm_w%!b})2d1)&E4uN-=(7S^;z6DeT!~h|?7}gcabC;1uKlLtT zmrL6}cI9Ch;uh7-0000bbVXQnWMOn=I%9HWVRU5xGB7bQEif@HGB{K*H99mkIz2Ht zEigDbFff6W(8B-#03~!qSaf7zbY(hiZ)9m^c>ppnF)=MLF)cDUR53L=G&4FiFfA}R YIxsNo0#gx@Atwp|07*qoM6N<$g3$5xW&i*H delta 1410 zcmV-|1%3L83AGE5B$HeOB!2~0NklS15eptgI2DK!uy9&V<$tXsa0Z5e~H81r-OK64qdM2rG-9w~T^1Sd7WoUuzHc7l}1kqOER(e%l)8)L^++=0+xvJAVcFXn(xAw|ueqbSh?jz{PQ9Gf+bH2c5kA zy3!Kv%>NUsY)#joSYaac+7s~iZgN%W!zYk<<6zC4R$IapVR=b}0tZ~ETp|Uj3X86{ zy&~ubXjDrOYhtQE%2NN>W@In^TfMgvCSyxo-P?X)zjghRkPdP&N|cr608MuoEKxcWJ%W=&COIKWh@tyuseqL4-|sOA<9puk&mY!{Jv*JI51>vSWRbPl)c!m zWl}i)(V+tI(f2=dYrEW9#$YVQWbC3d{}bB_=jZEcgWkTXO{uRtl8eTBtl=xLXVOI; zPEa|WrcxS0((OV$bj{yICDnqu;xi2eV1IP4hThsRXOK5HZjYy28yHs|dh0%fkgwi&(+ZP1!RgZZiC^X=cgoi15-4!tFr zYqYN-L)vY7b02Bm$;Xo2)@T&D%Q4ugIg~s@$VOdR4}DD&3@S6NDL6{nJ#C-9GIv;U zgJ+i$-yA9eq428&)Gsu(Pv-1i>eHq}e^!xSoVeVH&rSem%_w7gr^zKu2Z9`m1f^}hp0H0M8c8>*z QDgXcg07*qoM6N<$f^Np1mH+?% diff --git a/core/res/res/drawable-hdpi/popup_inline_error_above_holo_dark.9.png b/core/res/res/drawable-hdpi/popup_inline_error_above_holo_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..61ea2b0fdf7541250be86916e90d13c9829d7921 GIT binary patch literal 992 zcmeAS@N?(olHy`uVBq!ia0vp^@j&d$!3HD`1no!#QY^(zo*^7SP{WbZ0pxQQctjR6 zFmQK*Fr)d&(`y+Rn43IZ978JRyq&u@PdHMfVZZfb7WUJA3cehdn7Bh@mN+bO=wM&q zv}nmfM~?&6YbrWKy|uh%trf6wQaRF}ame4%k;RFF>7Zwa@cBENkDgg0biC8{=SRcC zKbK_Ml&_ijUT%K%yQ^nzbaI@tWMjB_cq4NmW2L~&(@&+^5+xug`h>CZpY36*=dKT1 zeXwz^Z(~GM)TdszWU(EaVrScYvVWG7ui~wCeEaR0>RrAyb!8=Knl6Hq*LR!@Kk`I7 z>6578&#oCYu0H#e)Z!;L?7eH6@J4Rq2~0U0TF``9Zmhi@Wzh{a4=CxeGMahiby)$K zs;^xKET!jGyD;b=69w>xr{xbF;4Nev&od>ACkXVyjM{fWcpDWe&p)P2vmKj=bEa`Kx-OJ7Bg!jrZ9-j^_??30z#ryldJll~3aH|Gw1k>k4U0Ji+^*Du5$V z(yik4x=qjYp8jjvWD{fYRNf@f)NfJgb&eBOTg2u@TZ(VwSW}+0eesbkS9m5Sx%QF~GllGO!pHJa;uYJ(}LQ1rfxkh>7*7$y})ceYBA0=)`eU@~1eF=+1y5f!l z&kNWVZhGt3m#X&YwanMe2f`;66?nJEi8Rl0Dw@poS%qo8@w@p3&)#pSB{_Lo2#5f8hZR}G;FjVFI7itfC=vC#FMk)*v^=Z{c@cgrg@X4Ev4Flx`ddsy7h z?Z1IezqzTEO238VS%!EI_8WEG?MzSqlwG=dBQc?;LwJw$EXAZ*Li(0>cR6-`pD?9y zZkWt($A?Px%A&WJq^8VBSK8-!LPz+cuGbl6-UUll<*H_<{5@4MsqqW@;(w-#{~39n zz3XEi9&4tVbL-@dfTpzatd#7~+O;`WffYX`Gu0XXhr7a4yxYWrQ~!G{Jo3%ntY#5> aX#f5y^S3t~viE>ll)=;0&t;ucLK6VzT)N5t literal 0 HcmV?d00001 diff --git a/core/res/res/drawable-hdpi/popup_inline_error_above_holo_light.9.png b/core/res/res/drawable-hdpi/popup_inline_error_above_holo_light.9.png new file mode 100644 index 0000000000000000000000000000000000000000..83b2bce82588bd7c32a2982b3722207de003845a GIT binary patch literal 1000 zcmeAS@N?(olHy`uVBq!ia0vp^@j&d$!3HD`1no!#QY^(zo*^7SP{WbZ0pxQQctjR6 zFmQK*Fr)d&(`y+Rn7ce(978JRyuEuiPdHqn;oTvt~6NMY@CQGg^ugio+BGV9*{21Y-ZsR|VSb;O z5FEAkimuL^h&9(wlsoXwSX2AG`101<0*6lK6x^)n@43!8gTd+FEyJweo$;({tL)Ft zwVc?ivpLIk#~GFlY&q}hcFz}H$NuX0-q_{M4%g0Iewwsx{tu=jkMFJsPCfr{*@f2| zlpWY3s_)d;zjKO-wf&RwV8{N&DoWQAWIbMPVy^NtJ^4uA{+C6ao#v$#j#qmh{8ixJ z$M@K#JbvTTeG)&IUm0!x61ZnSr?jH<+IBUC+!s35+v{{wB{RyS-yP`q8Dgwx{Zedw z;9i5z2PA{eeO^@6KSjHCedI&V=~nk2RC4Zl+VQb?V$OqYC*A7q*j{~O+4Na9K*zjD zxo&n#PShX9*YASGwD$|le3`s<{||$|v)XK!|0#Eu#)umoeSYHI2ZLLN?3>>uAAwrvtg6&isxH#RbxHK?W?lHvWi@%16zpYvvZn2>WMpCNI^!-Xjy89zx! zH0E@D@9KWZf91);zSd(;!u6JIKA`tu@wUj8ilD_i!cDKt^fh1FAAh2p>BIjuC!opRXQsu| l|GgGo=Vkd!n>s%5Dc<7R82@q40$^5U@O1TaS?83{1OWB4;GzHk literal 0 HcmV?d00001 diff --git a/core/res/res/drawable-hdpi/popup_inline_error_holo_dark.9.png b/core/res/res/drawable-hdpi/popup_inline_error_holo_dark.9.png new file mode 100644 index 0000000000000000000000000000000000000000..daa47b7100c46e19d68175ac891f81031d16fe34 GIT binary patch literal 979 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 delta 829 zcmV-D1H$~a2J{AyB$EgOB!2@INklNAEu zJ@4M#|9|)W-~Zp4noK72@Ht#rFZM~-4ACZDD`;!+(hb_BBI=dM?|&ZLUko1lrjmfi zD;uc`(hUl!Uh=qFrYx0+@yl*KAWQww(v=rTe@-5C*2!=0-k(mE00Fkz5B0w9adU$T zR0aq$fIRTYhy}*hq8ZZY5docI3r)5KwnqTHn*pAH*%jF@VAHGstb_&Y0U)D@i$2*x z#L*4|qJbtJLyS;B5r01o(F-Vl+yT?HplYJV0@zFhIKBkelLI0&##rWTY*TOoiw`$3 zY=}qt_sTXnsJiG?NP>X@Vk0}!Gk7~1xjDBMKjKq%Dy#Ylu+mVdmL;lYr%s99wS=<` z=krP1tVdHlE=nFdKblHc}CmlvswmmS)+><5?mcM7+BRrI<}3=O%g!If56N;$9;3 z(bCGpabixW5iv6qX{r+pb%N#GR>06Z47z~}UmA~II99R{MtUmAu7vgTjLufJiQ{=m zp7G+cO7zP4(0`>z8SW{jwk^l*4v@wj)@s`VfEHWPknV5Vq;^HnL9701o|6-vAOg zfMM$xfyi;Qt}PW*#SVnW*Fx@zQ6#6ip$_! zGD{{su>--q*XO3%37iFQxK@2AI~(?XXIJH0d}A4$ucb0P$16=J*^tb&#ZX z>DTAUqcS)440!jjsB(S{z>od~AUi#CYrCc64@-Xm{{$ES^7?a=+ZV}c00000NkvXX Hu0mjf8t#R7 diff --git a/core/res/res/drawable-mdpi/popup_inline_error_above_holo_dark.9.png b/core/res/res/drawable-mdpi/popup_inline_error_above_holo_dark.9.png index dd4af6d04d670bad4e9b522dd1e0d9a4481732bf..c03e658ab3d51809eb95456d9b728e6b309be821 100644 GIT binary patch literal 648 zcmeAS@N?(olHy`uVBq!ia0vp^4nS9q_DOj@2Ujv*P1Z)cy+6ABb*-*3$qCXm~7w6%V+nE8eb6T7zR>H8X1 zR@ZWw+cju!-`AA)`q0sm#7k;wTeVd$imf${DW%QFjCl?lOq;y<*7>rfK|422P?5ZxWA?rA_sd_AOnjR<7a!YN zqIkh$qPkB*8AC3FVAx!r8tZl>3?YJz#o#5bR@}5%bb+kH?1Gp;Dc*(!8#Zq?X|uVo z`a1K0-5OHYj&nUoNsZYPsxe2K{hG}`1_8Yulnj@#7 zo20qsLh<&S-0_#5zq=u*`2NNVTcsz;7ykA>pZ4ULXKCXd8CI{w4;zfy^CtiOAUf~0 zJuk90L^N_M0;>FRkNiTcCh{`!k!RLEo9Q$mbyD}CjPR1^*} z-(T^|Jm%Z^NxuzO|I^I=r(58W#s6P-=S?Q&N$2M?1*DqaVM4ZBEQ( zknpnLkMZz2?ofVja{C;vhJ`JTb|;fQwIxa%``>r^g}!m*zjqmViLNd3QF+rtyKYE{ Q1CtVir>mdKI;Vst06!%dPx#24YJ`L;(K){{a7>y{D4^00mx2L_t(&-sPH2XdG1>z<)D4v2QSGcH0M7;28~UE zAv>~d=Vf=Y<6+(=v$L}w)o$6m{^2pq%$u1vzxjW?H-Cf9h~H*EgDw%H$#Da)fP~r_ z-8Ar9{3t%K0eGtU(T`;`fM5YOaIb1RLNK-?hz&pjH&k;&Kw?1{Ko8Ih3;=_`ZnfV7 znA;FU1tKs&h3U z4B#H1AJ_v7owSAz9cSo?A;h3SB(}OrumpG#5ViZ8$5H20|7ySR){@}G9B+0_(=GMm z3HB@V$dxJb=f}PI8TIlvfpujze)#K}3c@}C2hLd86Is$D@q@Y*xl`A)cfV?Z? zWDSUFG%zxr-3vgk&=W*52}m-Q-5ZXAW?dd(p}9!pmLoR8=1?mhhTIHA8jDw(57mRP zKp-?nA?s2}vyt*>j372gi8GDcoXm8W2!+G->OuI8xaq4A!Q?4CCox-HpsTpF;Un}m zj(9QeMs1LQZMCTpy5op*mUXrhOt|$n4!f0U*j7~+q}ImK+F5#fyGz+%(Z_5YR&><} z(O%TBn^4m)t!n8k^>&o9-8>@bsV!ZL zvm9wOPO&YG^9Zlr1IB^ywaz0v)N*9)I*b_u!EfYQwGeAFX{@P{Fe4Buz=o@+X&yc| z)cg8zAj&qBur$_)tqi(Es6N7sm_(_7yNm~}Q_yoA!U>l03%Gw1z^K!R3a~znvmjxO zMMqCnSXe@Otes`~DnWfjCDt??q?4y`3Si=5s;Co#iHoVC1o9M4NpQlZ5l*J6^;32d zk(y>~QXrm*t4WDYYGsQ_uZ(zYy!sj!@7YIqf9G$#C4Zx>(xf+f_PdYG{^`k8S$FT~ zv%^~l`9qf36ArSV=9pz76*C5*8i_QbZ;FGjWUvnl#IOh|>ta(@(ITZ4Esk#uR`S&g zd+cB2YSWnY0sC(boV&6?o6nZ8E|K#~xZfS)!q*P6s7{xwkt43E&QxsgQLTrd$gFWX z{@)`2L{b+-i-vnhu-iF`_i(%gg5g%GanOp zeK(@!&6?i~R-%idn-BPTuDb(>KMs&O{OJ76%J&bk<2n2O^5bVNmnGg`?{WT}MdWhW zlcN2(B7&EM{j4{xY!FcMhysz}|kBgo}l%}}y?rD~PC8(z^MeY3mI;w7wsxw;$ zipQ9nbYPA}2MNqm_;iB&Po03!jbbP*wSnC^(j(`|UY;fU4MACSKS4fYau-NAitPN7 zgQKb@vR6S!bRvRvYo)yzYDUO(DxES3qsukJs9!?V*DrJp^-hJsZ8i3P0U|>dR{q9V QKmY&$07*qoM6N<$f-G9E1poj5 diff --git a/core/res/res/drawable-mdpi/popup_inline_error_above_holo_light.9.png b/core/res/res/drawable-mdpi/popup_inline_error_above_holo_light.9.png index 892511270d3a294fb455d418db14fe0491e0cd7f..19b153b3ba4ea14501b3bd43e039e39b76e52710 100644 GIT binary patch literal 666 zcmeAS@N?(olHy`uVBq!ia0vp^4nS9q_DOg5e_jv*P1Z)Y3kUv>~VUVq+9q`k%Kf`N!Y5Lb{YKgW^d3GKc5 z4X60#H?{H~IC3hyVJi<$+=LY^Apz}8ENY&aMc*Y}Em2faba+#I_^%4TW&E7~zhB?o z`+2U?s;-Uz0ju==hgi-ymBv-d^&fv6>6bQbzRu}wy@u0I3k9nrO1v|Z>b?E=?Zy0k z+vVC8>Uspm)bn;j7bbE_j?$xE`F_|%%qetiKStxiR`^uWd=eF>CJohPRI-2p#CRE zg+rlFbOobqg2V+K=5yE0-pA@V##y!~<`gknBphkTEN&=xa!qI~lRu-fIvn{N+WsKy%3&6spG>UHjihWAD3Y0pJ#KYpB5 zc}sNWWxWjv`yH02{y5_Ci@)x-I9q7L#=l=8L=ik5oVS zz&~&8&s53POj9FSvnFu_s85!D<92>y%&(Qs2iVtrc^`D$+#&i>iQ?9sM%)W+7MSt+ zMjG=A-a2lcdD$fTiYcpAH p|L+s|GJU4f_X}cbVWB@6-4y58ZMgg08JM^jJYD@<);T3K0RVSR6K((i literal 1446 zcmV;X1zGxuP)Px#24YJ`L;(K){{a7>y{D4^00mA-L_t(&-sPH4XdG1>$3HVWY2MbvY}ycZv0~%N z_ zB-GJpr-9$%OYwnCz*WtUzAU2#1Pe$4_o&txg0T}pYyuKkSFI2N5(~lrI)E;q59kN> zs`C!O+<_oGpalE_tO2XQb#-1U!>}SZC6ouGfd_znz#iotJ25=UA>b-6SW_?60+sCPPI0KIjAo>L&vE5aICBT({s65}gj`~dXFZT-{EeUSS^?LWz zJyJcM;M`k8u1=AgKjkjYs2_h5*id2Phu^NLAnX_L@OdkHG)sCYeo(h!cj}(zzHge9 z%ZJ?QNeP#LCEy0&SrHHd=$^7h#dVKRGNz+x27VE&8@75szF#F5SpWq zRi&g^%Xu_L5L=_fg~tC}%(RyYg`?nBgYau{)7K+{#Z!1qVm7)#S1Zs&j?grm6LtZJAn^-h$s**YTVs&TS(n+75DUTs*SIS@MM2nnJ8T`EDu|8wQ)=@SA$%yy(v zyTrCMt|Q#)3>XK(*Sd~yQQMJ~`!Hq<1iw~h)xxZ;qOn3FVMZW$z-B>F(|r2eRKM4c z15rvs5ldr_*sh?9g!B<+BqWM?3M;r!u=9HEL)gJqexAbL1Td;R!UHy@v6m#Qan07# z6_%EfE^FVh@;iY(!ix&i~H0=tbhDc(=vpmi8F;qX0N*Px~%%{=(EE|8+jqi z>`@z;S8L1?5ygx_NF$L(bWbt-a)#uy0x>88WnFB^DjJluqQUj;!Adq3PBnz#ynE(m z-}hHGY4X_;HY9R!nZgf8Sop$5I_l$6dFF^y)tQRzF4Z~+L}sR>zrrZ4UddP}1{j6o{UhE=#I!QTdJ+7aGyQnF>G{LMs$? zrUKr5j*-^~>3v1)PjTbhc(qRF@G%F3J4Nn|Q!LI9h{8(LR{Q!980GrGqmIrpdfkY$ zR#;fzx@VT`XDP(vza4tey8rli#b$HoGaoqEHVYI^A7SoO0wLIzGOo@u{756(Kha>2 zVVZZO3y#MiX)2SPj{M$U}9T;`^)v@L`63 z8H^{a^OuTyzrIkCh~gAi-u#A@UkLQn#b})0ZlY=zD<`uJz&XO)qz!Xivys3e`HxPM z`>7QW+R+T07*qoM6N<$g4tHK A9{>OV diff --git a/core/res/res/drawable-mdpi/popup_inline_error_holo_dark.9.png b/core/res/res/drawable-mdpi/popup_inline_error_holo_dark.9.png index 66c2c09b52a46676fa3528302d0eb3e49967ce89..4092728be22221002d4bf73bb546bb32aa77979f 100755 GIT binary patch delta 669 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 delta 1404 zcmV-?1%vvW1%eBZ7k@Sg1^@s6cM_ih00001b5ch_0Itp)=>Px#24YJ`L;(K){{a7> zy{D4^00k;ZL_t(&-tC%SXdFcx$3MF_N#>fax$7T#p%Ih#pvgmP5d%@{!yyVSf=J(_ zg7^oEC_*VhMMS8Amip3%f>@}^!)O#H!e+{~~$-|u{Xe|B~pR>o?}80+xA{deZ9(m6R1YO1XV0^Gpm&#fA` zT24Y@m92aNXahPvW7kd%bQIjT^L74T)6(J^@Ie>kPxM_tEw&JzEgBilp&|1p4wN z@;87=t7E}xARuAn?Y+Z5_9?m#gK*2=z3YuX+}*bA+|Sh=q#wD;^vEQt7$CtK0y==s zESdhd=szwH8*l&gzUL-fy0&j~Ze9Odd)M>c5L^3CGk^XqFxN^YxJ%?>U!KDF=t^80 zfYcENKa|KVzwPZ8i8e7mk-^jTBS) zi^m^i_V|9US;b7ecdE2=^bf6Ws)l=ppBenkqkhaXdLWOQ21>sBI1%Zn>pa5;2S~q4 zPl}myhdkD}bv<*mpeFN-GyUmaE*=ABfHF{V!wN_tQ+=fO0ak$baY&$#^ganGqjV>n z27g_kBTK4R!X|oBcD-%%b|VFw_K>+h_+H_L@_u`oWCj7rRN5;1$&>^QX_8w_c56_8 z1GJT(9c==Og;rWf?U4kyKq486s@9m85B6>p0gJbzY*T=)*U#aK){WmLllHB?1{JDi z<9ArJvI@UMf@oY;H}+*h*rfo4ii&GBH-DBbY*Rq=qPlT>Sr!566hyeS8_$=06hvjV z1_F}4zgTFpnJuxBr7<9mf=C5eSqH={s2lGm7S;hY5d=%xUwdh#3nZHhf*>sogr(-v zpsfmkq-cTwJE7Ncm2{H|P^=Gg*Ovnj83dj60AEH2K_{jTu+IUMp9Y%?g0?E4nSZxI zU4I#}GX}_pO_3-Us7Y%>U>)Dx2&h@P9X{{aY5`}60RJ0%EhkDv0E(6c!h9Z(KMhTj~M&@HGS!vhTnldfm=oe4P~$ZJfIu659k3lnG#yCawo-FZGMo`rgi%L2biQz zKn^IFzJ`tB3NQ;ynE?f0Gq92RCuMgHxxOFMiiUt2z)gd%5|lg