From cf02653097893b06f24551b790b0f7ec288e704d Mon Sep 17 00:00:00 2001 From: Amith Yamasani <yamasani@google.com> Date: Tue, 26 Jan 2010 21:25:29 -0800 Subject: [PATCH] New keyboard layout for bottom row. Additional mode for WEB_EDIT fields w/Tab key for next field. Button assets refresh and fix for a highlight asset bug. --- .../btn_keyboard_key_normal.9.png | Bin 696 -> 1158 bytes .../btn_keyboard_key_normal_off.9.png | Bin 941 -> 1391 bytes .../btn_keyboard_key_normal_on.9.png | Bin 1076 -> 1495 bytes .../btn_keyboard_key_pressed.9.png | Bin 696 -> 1082 bytes .../btn_keyboard_key_pressed_off.9.png | Bin 964 -> 1362 bytes .../btn_keyboard_key_pressed_on.9.png | Bin 1055 -> 1419 bytes res/drawable-hdpi/highlight_pressed.png | Bin 1527 -> 4110 bytes res/drawable-hdpi/sym_keyboard_123_mic.png | Bin 0 -> 2575 bytes .../sym_keyboard_feedback_123_mic_.png | Bin 0 -> 1046 bytes ...keyboard_feedback_language_arrows_left.png | Bin 0 -> 262 bytes ...eyboard_feedback_language_arrows_right.png | Bin 0 -> 250 bytes .../sym_keyboard_feedback_tab.png | Bin 0 -> 462 bytes .../sym_keyboard_feedback_tabprev.png | Bin 0 -> 463 bytes .../sym_keyboard_language_arrows_left.png | Bin 0 -> 314 bytes .../sym_keyboard_language_arrows_right.png | Bin 0 -> 316 bytes res/drawable-hdpi/sym_keyboard_tab.png | Bin 0 -> 1027 bytes res/drawable-hdpi/sym_keyboard_tabprev.png | Bin 0 -> 1033 bytes .../btn_keyboard_key_normal.9.png | Bin 809 -> 726 bytes .../btn_keyboard_key_pressed.9.png | Bin 736 -> 664 bytes res/drawable-mdpi/sym_keyboard_123_mic.png | Bin 0 -> 1540 bytes .../sym_keyboard_feedback_123_mic_.png | Bin 0 -> 694 bytes ...keyboard_feedback_language_arrows_left.png | Bin 0 -> 205 bytes ...eyboard_feedback_language_arrows_right.png | Bin 0 -> 204 bytes .../sym_keyboard_feedback_tab.png | Bin 0 -> 364 bytes .../sym_keyboard_feedback_tabprev.png | Bin 0 -> 365 bytes .../sym_keyboard_language_arrows_left.png | Bin 0 -> 261 bytes .../sym_keyboard_language_arrows_right.png | Bin 0 -> 257 bytes res/drawable-mdpi/sym_keyboard_tab.png | Bin 0 -> 645 bytes res/drawable-mdpi/sym_keyboard_tabprev.png | Bin 0 -> 612 bytes res/xml-de/kbd_qwerty.xml | 153 ++++++++++------- res/xml-fr/kbd_qwerty.xml | 158 +++++++++++------- res/xml-ru/kbd_qwerty.xml | 140 ++++++++++++++-- res/xml/kbd_qwerty.xml | 102 +++++++---- .../inputmethod/latin/KeyboardSwitcher.java | 10 +- .../android/inputmethod/latin/LatinIME.java | 5 + .../inputmethod/latin/LatinKeyboard.java | 4 +- 36 files changed, 409 insertions(+), 163 deletions(-) mode change 100755 => 100644 res/drawable-hdpi/btn_keyboard_key_normal.9.png mode change 100755 => 100644 res/drawable-hdpi/btn_keyboard_key_normal_off.9.png mode change 100755 => 100644 res/drawable-hdpi/btn_keyboard_key_normal_on.9.png mode change 100755 => 100644 res/drawable-hdpi/btn_keyboard_key_pressed.9.png mode change 100755 => 100644 res/drawable-hdpi/btn_keyboard_key_pressed_off.9.png mode change 100755 => 100644 res/drawable-hdpi/btn_keyboard_key_pressed_on.9.png mode change 100755 => 100644 res/drawable-hdpi/highlight_pressed.png create mode 100644 res/drawable-hdpi/sym_keyboard_123_mic.png create mode 100644 res/drawable-hdpi/sym_keyboard_feedback_123_mic_.png create mode 100644 res/drawable-hdpi/sym_keyboard_feedback_language_arrows_left.png create mode 100644 res/drawable-hdpi/sym_keyboard_feedback_language_arrows_right.png create mode 100644 res/drawable-hdpi/sym_keyboard_feedback_tab.png create mode 100644 res/drawable-hdpi/sym_keyboard_feedback_tabprev.png create mode 100644 res/drawable-hdpi/sym_keyboard_language_arrows_left.png create mode 100644 res/drawable-hdpi/sym_keyboard_language_arrows_right.png create mode 100644 res/drawable-hdpi/sym_keyboard_tab.png create mode 100644 res/drawable-hdpi/sym_keyboard_tabprev.png mode change 100755 => 100644 res/drawable-mdpi/btn_keyboard_key_pressed.9.png create mode 100644 res/drawable-mdpi/sym_keyboard_123_mic.png create mode 100644 res/drawable-mdpi/sym_keyboard_feedback_123_mic_.png create mode 100644 res/drawable-mdpi/sym_keyboard_feedback_language_arrows_left.png create mode 100644 res/drawable-mdpi/sym_keyboard_feedback_language_arrows_right.png create mode 100644 res/drawable-mdpi/sym_keyboard_feedback_tab.png create mode 100644 res/drawable-mdpi/sym_keyboard_feedback_tabprev.png create mode 100644 res/drawable-mdpi/sym_keyboard_language_arrows_left.png create mode 100644 res/drawable-mdpi/sym_keyboard_language_arrows_right.png create mode 100644 res/drawable-mdpi/sym_keyboard_tab.png create mode 100644 res/drawable-mdpi/sym_keyboard_tabprev.png diff --git a/res/drawable-hdpi/btn_keyboard_key_normal.9.png b/res/drawable-hdpi/btn_keyboard_key_normal.9.png old mode 100755 new mode 100644 index 90b51fa637037082d109eeba3edc5098939bb609..5bd9f0ed606bca597432f957ad89ac87e5d1235e GIT binary patch delta 1115 zcmV-h1f=`81%?Tb7YalO1^@s6!$f9nks&941Sm;FK~#9!>|4!F<1i3*OF&2k#I@qY zi90V+9+d+Rz*8V`;(&O80^*;nKJQL<>dx5X#7WI+ExAqGB>q0nkH?d#bK|vk$eT~_ za&~ssx*yzbZ*M14_m8yyL~3gd|M2zo<z8Q3-TV8yKd!Ou?CiL`y*;<TzweJXhyeJ1 z)6<i?xVUg9Cns)qch`M?fBW9Ht?wJ2VlpY~)|4^Or_-tLA0Hp?;o-quUS7I`gM$^B z6_J;h7q?g}-0A75`~3V|Nu?$t0F4fez<PCc<;koOd3$?v^ZDE}1`%{lWSfl>X`064 z0ajq%AOhe}ClDbrwGrW1fE5@?m>b4_PSU862;rd5qSwMnWZdW=(UnNbcDme;t|7^U zxYi`XNpMm*1M@*kk)esfJFvl4fJ<FRLU+r1AJ0?DqfsZEs%pjhwp$8UW4)**BFPXX zJh3(+8qT7s)s?I@I>=Tn3z0s=Lg3cWCpEFEM7Z|~J%ojfm59ZC(_$!j)ToVrgl;ZJ zDpnQK2!-F{GfgBBirNS#!U;%3B(NoIgnviTFA>rvRt-^N66s<yIb<{<JUoepD3V&$ zL?pD4sA_QnRw8|ZLFu}bYDw|mMyw@~p^HjOLL<P#bsS4Jl8m(^7soFuB@Joz`8~qW zU0WKmB~sE;Y4?ywktEC#;Wi?Fx!|G0bd40g3pZ0q8_`zvZ3K>zL}GZvbtGmZLu{sE zVGBt_i#W2^ks)`2nw@al&0a@R!P(F%##JhXExC?pVf>hOLhDB?pf#-{F;_RX!E0X2 z9LCqO)wN)nTK31a?bnmZhp}^2CHM7BEHocF@sN{ZP3=;f98g1M5pxKCMw1UEXFPR& zP6{YTwc0L&^pQ~43`^`h5SjeGck8xo_^D7OcD|aR(^9BI5tBj^9?EN&qU(r75~UZ) zt{Kg!vGWHjUDT_Ov4=6171K23A*36mfb_95X&enx^7)7*FRMLb>+|g0I$2pE3eP9; z8IX=krc5=7a2(k-5=tU}MxvA?Qj*ceF-fE^&^|=6B@#3ClCy91Viu{GjXm@lLrKQ+ ztRyvV6H_b8fThS;?h#Y3ro;e4Z=SL?R()ovhFxNlyQ*$;s~fW!F+`~Wyv0sbuf<QY z5E`Qt(28x12o*q584(pe){sR37Q#k2RU)VtL_JhksU~F_hf+U(antk%IPjqa5bx+w zBK(;huOrOehL+s&5*8vtWJDqm+4J+WJ3KsGn*piFYwX5Vo`^g?KJo(Q$%+VmyuZJ9 z=jZ3EveZ=F@0ebSm&*d{&CQK}-;fCEXRoiX{Y5AcJ~}$`-`7M0ZMj^!ySqD&_4xSs z?|FE^|3^@HjgoRks2A#fx2;YwHG?E(vzecK)XC%jBWtRKAE_q3hAg}$A&>z9u39no hQ|rHcM9jYg7yxih?jyNj*}wn*002ovPDHLkV1oWi7OVgO delta 649 zcmV;40(Sj|3AhE27Ya=X1^@s6<V!cDks&940$NE#K~#9!?3+2x!Y~kp$01?~h=PuS zo>Nd!(Q-k~Lc<l{1awFs7P01MEc`2kET#y&m>J2Uh$G&|%(D}0t1t|y=uk@Cza~_L zen$`l)a&(%rztSz^SScKk?>uBxR)+DlM#1IYq#6ccDtq1=>#dbTCGy6)uLvznGUjl z*=(rYZqsNqqHecKJT!k|c((Ncx8-t4)9IAf>$TRJ2*Q~dkH=K6*EQ7bc7p=(JWq=s z4u>?EOwvKF*DEy|4Z2(|x*>vautwIF=@IS_ZxEx>10qFJ_yWQiFr7I=C>b$2(yAm8 zB;HUWOOt@WgCxPAfmqG##!SZWXcMA;(e^tTan9`V@f)GEva(W|(#q45Yj%`J6qA+G zoBi#Kpqf2TllvgZ9{J6TlpZ8H38H~yP0*#9N21zf9uc#D+w4x1md%ade5sPsDnn_x zyFTLF@QeJ2V(k(1Q7h3S`~5z2!6UM&D<A?QAOa#F0>U6c5GWTwoO${cj|hl=fV^pT zvoIfR2$84Bx497s<n4^u-27>fEKP2g7CMMkY4P4cvk}tlBZL@UA9|vjG=C=}(T0|h zG+p8mc#oKlX*YZmB&zM@I-gF+n@13vwb?6`%F~RBkP+5oZFcVL`@Vh)V+f?Z@kX2Z zk)ws=$2%Vm2Yu{<A$V^*A_!}AjA!KugpcygW-}TL2KwX-;<1bK`K&dv)~D+%wBPS* zwVZ*~YDLH65o()k9H>^SQK!@SFR{g9@mgBk0qM9!5{NN<YH68H31)&1U0U%IWG2v- j<&yqPyld2-e*z2uWZX{~+N+c+00000NkvXXu0mjf&OkcB diff --git a/res/drawable-hdpi/btn_keyboard_key_normal_off.9.png b/res/drawable-hdpi/btn_keyboard_key_normal_off.9.png old mode 100755 new mode 100644 index 6ddd516e790627b773405917a89b9da4feee36c9..aa4a4a368c9d8b5598ccf4b44a6ab35702acbc22 GIT binary patch delta 1336 zcmV-81;_fW2k#1yNPh(pNkl<Zc-rh+$xb6N5Uqq}-;oePT!0IAzJmjw%7G8yE0DMV z65;>|vF}Tdo|(#2953bG(lZ)MCP}xu{hn)a*)E8hD|wwS@8HkY)>ck`aXC6V>U8NJ zDgTMItz`1Y*Vh-lzP{4?`@8wx#xgQ8LStiNG%+z@z7G%q@PEh0N7~)prM0y+8XX;_ z@9%F@^E@|oz*BTO)w(rLAE@1K*VK=X4>~_Tr@g&BnwgpDk?DCYkl5MTq0P-r`uzMf z#8BHr1fWr~ETiM&W7^-}H)P<odJ=hid!yCWRl^uWm<$scW|2fd0(gKGm_ejZwE!II z1R_kPZA2s%V1ETh7UqDlvozXBgmLh1r`JLwHf~hgMp8RYwT0OG_!*XrjjK;0l7u9c z(y{EcDl$AU_yjiC3UGPn5!>C$%H{6vj;^k*=>GnmUS3{ka&nU9=H_U5d70+t=WA0# ziG^``RV!3cE-o%ig?MLYXK8V9(by6Qot~c3%F2qVb$=6a4REG?2$HzGyfhL(1sRB% zXIYTJ{qgZ}BbhphL_-w2p?vuE_SX1tfMycXgWx)(b8~ZJRILsoKAcIa_5A#7Mw<!P zFJkGSovpuRJX~Sb@;!h+5=2}i<V(>mqyjc@ZRq185S57ZUidyeJ>Bybu8!Dkb2}{& zjr-=w(0}DogEnHjIeZ5|*a-)2wu-?%5ZWv(EU1<MK0@|&{AN{ULO~mmL?i+JgeSt> zfj|v$4jVkTflA>T485$4$ZH(^G9h0y?hR3FLI9756KesuT9yj#K^pjt`)CJJWkMPs z5gDEYLll=<@dH>nPEAeG#>NI+UtgPf1s)1>%74<*lBpmAl0||-twhwSB?;J~e0q8^ zE*2xdzP@he6-Wc>2BNrMgn-MHhg8euOa@{t7a4wtC4*Wdij4)1HZfLRmyJYYEtiXv z5Bb0sB_&5+zQYdPeN#iSL|j0th;(i6_H~woS|ZX$TrRju@F}El&0b7JZNxXLheD3J zNq<R+gzz}$k&um4X&;)fg(c#PIFjd)I_x86C(?G4=aE=&R=0{tm5O1D&Lh6Kzezjc z`6Cq2s^*c9t83ceeO^l)#>dvlO%jS>>T1@<!!8;;S<zkcrngMh2R*)Zc-6axMYmX8 zSfZN`O-m+qeIML>sB*+(?NhdZQdBE1(tk-A2^HO83AF=}&d<AZ8n)rbLX}W^?*^T3 z3$-p{u8>5A@;*$#c|;?Lswc{rS5muQ-@!@|^(tfRc8sOP)Qx!v*9&4m%GjB!A0MXZ z`G{s;)_25K=ImWNSV<v@+)t7t;QC(GE=ouu5=XL)*pdj5s7ews$@uzFNu(^$GJiyp zB@#0BDo0=I#WYe;8@uf_>XMA+tR&WN7E&ushgFf&yd$JuSrr}By?9DmSd|&2Hmnk} z)LC_yOWlyoI75^+fY;cG*K5f}8bVE^0&21K5#a<#P9x&P$2RPu01IPdoL(Y06T}(0 zovG&9X{<~AoQtO4z=02^#`r`H5`U3rb~2AJbs1Xal9#bC5hmj#0+HcV7I|251YAj8 zO&6*1OyuF=K_)Q&NteaVv$HeW-rnw|rN;7poAgpLT^3jm4-d`ffJBf#dvI`I9zs$8 z=Ulak2ny0jPEJk?R^+|(+Tjl}v5|IxY;33(l4FLgP9ZgeB#`8T!AAl^Uoj>&-{hS5 uHtfRtBm^=bAXO{me%kt9K2FTP1Q-Ceh;lqz4>QI90000<MNUMnLSTZ@GkkCW delta 882 zcmV-&1C9Le3atl_NPh!QNkl<Zc-rh+xsK{U5NvZ}4v8ZnAVT6Zh=@q}LB55AUw|Be z1PF1O8{XDv2N|zz3~S?lUXL_du^O8ys=9m3G|KIEBd>>|C|_@LQ#^eSRaL24t$NSK z!_n{el?Vl7#DYNL%eoX8MS^Rs?RHC>&4!N0BTK-EM1r!}EPrJ(8EYb|)r#`@JhfUa zs#Ge3)clF`>@*HA$Kx?|yIoo?mjbIP5h&4aw<(oM2~yYVl@*alBqG2!n@#F;I@Uxk zmkXuSX*!?JVsa#c0gS+A8zWd?oGh}^Hwg<&w;x2HfLsiPxF{lVSh>WMh;iE89Fl*M zj1{JriQx5my?>_telHY@Mx(;BNQqvPa*YUNoy}&V)_?$fi+Y1>r)e6M%jLV5eJ5f@ zMv|CJCUiQTM0(bL`d9;nrqijXWbCYNnzi%+FE2!00oY_R`4D{f8^vNmDcH<db=@q8 z65Csf;07Q8J6Xj6{tq&{-Hz~#<GUheF#@Z|PvKcQ#(z4H@}mB{73{_o3pG&f?T7$; zJRZMWz-?>Usp805m`Jb4Ojh>78l+?Ff4tb*JgaL@gB|m5IEZY7U`7lW$zVOy0*PEM zM~lV6v;CG;ut%IKf?83p*9A}zLmCEn{Ke}+p+L1-O{_D!-p%=Tuwwu$iXp(_Spd}? z#SrNjwtoXb)De*Lx)}btvV+WUI23iFR4R#dD-{`yMjzXryhOxq8xJ)w{dgvEZPV!I zHs00U?|(x?U%j~zvD;ZVsv}&69^2d7cuv;(RUHX~-S1!zgteSp=ob;I%oSRTo3(;_ zJ`%X}%Xy39I7YZ<Ez=m$H0>6I7>TH=s)WJLD1X?)bM}x(NaV#}m*)`r$zeRh6mxPR zCn7H^;^g8_6S2b-Y-@2R;>cP!W|Ms%ULG~SoL;~2=zCKBjw1TWO%W?xVT`bk5xLOn z0zZl9vHhJoA|=ETw7#NpP(*elIkFZO<B(H!JaB3Sl-T5ltQRb1T#SYQ*~WxU29894 z(QBy60}*uf^m;vNG#a8&m}8eIj>Cb`*n#x$vkNFNpU=g)ITr$EgwUi=EEew;8w>_N zt%U`gx=YQ7$e_2hmRw{KOzekZ*X_pbTS&7n6VZBw@lSvO0II`AoJcib5C8xG07*qo IM6N<$g0l;wE&u=k diff --git a/res/drawable-hdpi/btn_keyboard_key_normal_on.9.png b/res/drawable-hdpi/btn_keyboard_key_normal_on.9.png old mode 100755 new mode 100644 index 65fdeb353f8d1de9d732405dceb11a9cc2f4e27b..27556f8451e7959168f6994ffe96f51267016a3f GIT binary patch delta 1441 zcmV;S1z!5J2-gdcNPh)+Nkl<Zc-rh+U2h^)7=EBbKPXVPNv%kB3uN71?5>(7-Wo5w zGA8XmwHMVZFPiAa#Jy3YUAz5E5VzH=whYix3M22>gNNaK4a^Lq*^?X?;G8+nbKZ~h zo-;2%bj1nt<_UUPUtf3dA1?d*`-vp}C*=*1xD|{4(Cv0{eSdw8o0}W=I*w&#W(Kpf zvzVWscdti?5b#E$fvv4A6pKZqQYrL$J-0fJ<JJ*Rkw^sV)+A$4O(v6W?Q}Y*)oR$@ z-bN;q8ITzexw^W-=H@2K<uYz>ZwFF|6A=PUl`s<4ot+(*%n*@wyNyDj;4&s6RCyxP zEIbj*vRpibm47gg5Fy~CPDF%}i5n3f3t=UUOqe6a&ZH4XA`A!nEc9B`h#5CkA~7xz zo$ZWsKh}py#*1r6B0LG66yKrMYN1}QquFe_IyyHu=jv%Tn?*XE9vU<#GHhb#ov@Lu z5H9ID;&r!trE+<B2`77scRs3O<=qQp-)_M^OXH7&JbzxlxR0BQ5|);h!ihLJEDWbq zwN#ZPktrSH;U}lat+wyF=8!G{tEC3&?;Ydts~(!aK5``!CK2xhk4Qw-DZOIj>8CdG z1@Vk$*MM~Y_n$tu;WQRPC87;cybbxzYfn3PP<cx^Sgr!ppLB5gtrH3n8BSlSwf1-h z3#ohB0e{z?baDKw7np||TeV~zN|hpdNn1N$sgmutZ%b9c3*0pHkrB{Jg!f)_-8x@J z?!JDe>(%9c`<gKk)tWKbYuqh{B9E%H5wDx0>$AgItd>{MMN=MPV-YV8ETb)ejF9(x z`pjG{Bc!wuo(NBXy&wK~iS_p@$QCa8WUd4x7Jp#B%H!n^M<YJoFCqRr7X30pvS?fy zqId}%{c?_HUuN*}XB8|LZ_#n;E+Hb2O62fo&B8Zd9QE6sjTK9o5aGiUWr!kDD}Dx^ ze|>=0zuWlW!!jN{et^~DJ)GD6!v4=SeE;1^pTw)NgF;h@7^@afKqSh;7r)_PuNGJ^ zD1YjwQ!P;-I}&S&$gob{&Xb1sG6H<KPS+wE(Z*UL7sq#!fghI?Kl}VWyrH{nY49x( z5zrtuTwd_r@0lcwCBoZ?$OQ)p-VZ7I&byh?+K6mbS4Ev+lj0?!!XsQqR5lW%eVBwT zOd_&~!}mH8hJEPlgtuMa>xeEm3tPo_m4DJ<)2<`3xIaoeVe5w~pfy@YRIV;+gO_<N z<1k*gPmYq14pY)(e?0ACg2x*7lsxJqQ{x9cqJYp;t-@SKR9Li!4^d0T@BUtS_z>ib z>)QJ{0`j9;&NzciBB60lSXAwZNaCM+JD9fN>p~S(d+7n4><Be1Vxo|Q59MW;lz;1p zi6nwvD0N=R*!_xT$B)+t%GkXzmMNyB&O?Z9paU|Aor%VgVbVSyF*%o&Jz|^W*}Lgv z`3h0^^CW%-MAt!`qNpUo<M3@GUP-7(1SJWbWMtzQNn}!>lMwMO5tXqAIs2ww%tR{2 z#_shRVM)g1S&433OQlvO0|rIT<bNJ2^|FE(AneVPuZ`6tvlNG2qUCp0o#s|oWi!GM zB@W<C>_qCd_(mp#qDTca#WqBQB|x$?B9{0Vhf@^7!mu%%QX-TuNYBW<nQEew#<0{+ zxM{irPWUJVklv{(iSW<t_&h?t+t47lybKE?!pI1TkjN-2jxyo+84x9TMSop*m1jh3 z+vXFP69XdjW3^hv#>U1VEmfEI8>N@x(`5<k-rk=3J|YpyOWfVvbvsdla4wf~zmF3U zDwI!oa&qEg&FAy~wxbvN{|IGXQ%X6h7v=p<Tb)#DMv_=uTy!U&^5p6NBSWf1KeC+o vIGn=EBt&G00Iymq_Y>ED`5Fi@|1H1(U0p}@mXW7Z00000NkvXXu0mjfr}?&g delta 1018 zcmV<W0|oro3$zH3NPh#?Nkl<Zc-rh*-*3`T7(Feeg_a>;HnVJ~i4Q)_#J4@|#U&<t z^$*y;w*SJ1C1#l>GtopJ7Q=ipPGOr1V^Dt6)_x6lDbQje6s{fLa?>o_3+HgY^W9te z36^Cc><|RO{uoOL^)pmeMLwSopG}BSC=>({5eX>@B<$2hWPcQiZfe!*b?CZ|PN%~q zU|E)tN~NG_nm>_hwTg5)jlI1+tgo+wO7lF*b5I}9D3wY$K0e0n?X82=v-}o|MeOhI zBaukJFbtTc$rTY%6cLNX&}y}CaBzT)jSc6uv$Hc{KoJ6;OeWFm^_;;Y5emXc*v5K< zCJYZQs#2eX4}T_Wga|3XCX+(ED8g{~Wr-(|;lWFc!!#9<cDwBujuew535udP<G&$7 zz$=vstmGw9n-wUj4%#&Z)r$;7{Sh*m%v~-ooQM}03aVm6Vr}aup1-<;q6&5?Byvr( z>NhAHHgWwek8C#Ul*llN1lrk|nV8|(!dk6{C)>ZU^?$mKWGW3YMjI5pxxFT9A^k?j zSGk0%Q)ytMn)QaruuY{1siCda@M70OCTD-+(&#->LbmX7uY;rWI(l6-6jdft#LFY( zjm>8kvY8yzq~s_uvMz2blj&mhv57z5jZnNYmD%0@lcebfNvMiF;{LZVmePfmZsWS2 z0<%u7aet}=N-cU5qm@8hNJELqKHrvImhC^IS-s2Ud8rY|?95o@-xAEGhWLu+7=1X5 zo;|mv<EGRIZ6h6Lb}@(|G_KDDoPOw_*U%uDS;#^TiulmE#*7R)x`r?B+R)2_=lWTW zsm;#f(_sZ>N5=N<QzTW{Rz`$rn5gS5ynlOv(|?b(xon0rIih?%y2Ot{6|3tj&{h=a zw=G;<=qO({=XN}qh{(8O{8h2;j78j&%=FN>=#%gLBI3S@;f;v<I`uxnL%6X`eT?V% z?r>@L|H|x<NUb0X7e&OcaxGJfx73R6^O4AvU!IRBfjz=|)$;U6qtURU;1N+(Rbgp% zj(^O)e9pckvLrI0+1Yal_uwJ^g-HsskS8J&D-vY!yorp%6z$aFok*b6qDN+|?<34d z%@dc`J|1^Z%KcHqJ$O^Z57*Ko+<Syg^jok<B5rK=XCGk_vK9<ph%iin%}$f42a7cd z@YD*(uzB>k3^r%d<Yu$!beTHc4*gD3-gAf$#$i<kh*0b7$;k<Jc6OXbVII3oyWOsX zk+2TD?(X{~1<K{J)9S}lFXJ#FYCFv3a(5{<()UY@X#!8(rCvms>3vg+O$w`(FI0lV ox#kYueueb<G1128T>lC%09A-MFpcEZasU7T07*qoM6N<$f-kfGGynhq diff --git a/res/drawable-hdpi/btn_keyboard_key_pressed.9.png b/res/drawable-hdpi/btn_keyboard_key_pressed.9.png old mode 100755 new mode 100644 index efaad9612d2f3578707c27318e384bd11d0e3f7e..e43504ce0680e2f5546891ad33a8842ae61fddd2 GIT binary patch delta 1038 zcmV+p1o8X01-b~37YalO1^@s6!$f9nks&941KdeOK~#9!?3>H3DM1v5t7(@QcmYHt z5+l3@GcPM*;vK|<F(w{B#H~+OCCe#g)vZ-`my=UT?Y-H3`M+Mbs!|xsuO(StJc1vC z!60Ej+;+QNRAT=~`wtRYi^Uhu=ab#<clLNZcn`6a%Vpl<IA*0%=@SGXuGcG@PN!^t zJRY-7r^8Q3l7#mnTNFjS!^7S0_iVjhv&CY;s@3WX<^^)Q-PmL@VYAtcLqUi4LIMHN z-ENoldOfabxm>bZt@aKAE;SmBUT%dj2;l+)H`NxD6xTu!=-?@!bv~bef`IsTyG??G zVi8dbYQ<;s7VJQa5coSSh{`HyuZ19g_!_K2W-T}f0YbHi{GO=mBmE*!$ROZ3piNmv z5JH408Ul5RK@Ymb8bX4odeIi4^eJN`R1lrUpR$NbUnZ`V7S>ceok3Ipm>sgRis`zT zW+AwpUCWeyvvxJnN|>?mf#Oib=vtz9@pVxkvUruISXV<-wWJ6T8A{e=EQs=d2_^_z zNK=r@;^nHYbuAl<6b*t^-D-%U8>YCpm3*um#I7J1^j0xK^|T;9CR8$r3dWdziwbt} z9x{lrvQutl8Ug!)(z%^H-9=qiF(MbltgWEBK0<&Nrx>9E-dBvI9lFbwpmdS0<vO|g z7LH2Asu&S9I?WLCm?he#VpUatHx@)weE0^`6-mnFwZnK3An$p*Dc~{nQls*(ERy%^ z(8?mzFg}!(6qQA^Af`!v2=jHy4PzUK&_F1dpIJpQX^OKLx#pFUzh0ord-1`><pCt| zX$>DUMBRi;XOReDbkw#2v#9nqUJ_FRTmwFhcxq7Sl76kSmTm6#wPdP)8=6q}c3%5c z!TF348wlq`Y?F0-#)4^pD1Kh3vVv9mRo&G0kY0`t3P4WB#zpKj0)1J=B^^_(<Rd+X zaE(}(32cMVWd+ejyh}P(x|V!^PB<m{o2RQfmx>XkMbh|X8cTcwZk4rcQljlKd5n6s zLlo6gewKpM!fCf~xcX{;UPE{rZLyC4%wy5PxsKSlR|syUtt0a15P1|e*AIW>r6JO_ za0jQDt98TdJgtFS0L8A15!iw%0;m>@iw3DwDqO1)1Wtg1aBC`b(+ts99O<r)UEK34 z-!~SmaXOv&rbjrK+G$#}MbIjs^>8?dR*7DJ!Dis?cFX$xzH-ZXY$zbmK`Utfut=lP zV5`-NA3PimS*z9JCxiq75BGRHvdw10wKkj0zsJB2`2Glpy<9Hrd_ME7<rp6!HH;Im z1U&e9z0Ti*?~ladLGTX<c66%{o9JF|MN*eYSeT8}{6~NR0N$@jq0f0$0{{R307*qo IM6N<$f`QiS00000 delta 649 zcmV;40(Skn2)G517Ya=X1^@s6<V!cDks&940$NE#K~#9!?3>T-!9WnlXRAR<NL+E0 zcpXpR;;kILgJ&Ub4vrFnAXujPjkIgo{(eb+rkj~$(}NA)kNLCPc2;SvA#YPkJ$^>3 zTz?~qBItIz`P1ZRv)N1q;E9DkKs-Vhyzz*?p|#)dVYl1C`Fv(6xLhtny<Ue}t@a*& zWV_u$r_+Jqa0tC#4{o;`{6~4toCiSwi^T#alL;)BOK3D2_VT-0tzbMJL$le0>-EYK zq*N-wX0w6OXawzcJN|4wpR1HdP&`6hE|(O@w_y;1Ku`;6L~S2)1ScQ_4Ne|GZ^RWU zc&Sm^3X&Y0KxmlWuzG|-DLJ^<Cr#pi5%wOzN!&e>8N@~ZO^+n6h0YPuB_M?Zu~jZ^ zRV&jr-pkOUQq1BG@Ug#2YRd#-t|gr8-Jk1R5V?W83wLLZa0K~PjwC(9>9NnB*O9`4 zaLy3|$($oxs}}8iCA10|T3qiCU7Gw2Ew6IKi_oHpoXf8yyW|Lm94Q>g;c(D@ww0aZ zHlA*GZ6NYiS3m?rKm<fU1O!+1D2lK}PZxcQ;%}Rictnz2Km<fU1VlgtL_h?@xoJ$c z+|l4*E=~S~7M@OUd4%I|h88u_V>>xsxr7$#B5jtI@>dX?h$9Tc=NE8k@<&ai&zusP z)Od!34w=x?Z!R98KNvNdUP*y;;8~LCbP9vP0IJpM^RxmNk08kLc#Jio*3=vn+3)vb zr6_#8Uc>2hV%3ysLRBgiXti3;5PLZYgYLo!oX(BdKx_#g+9p|&iM_?4Wu71-GhfSn j+kPG<ni}KlU4Q`q0e6P-xG9{b00000NkvXXu0mjf$!{ze diff --git a/res/drawable-hdpi/btn_keyboard_key_pressed_off.9.png b/res/drawable-hdpi/btn_keyboard_key_pressed_off.9.png old mode 100755 new mode 100644 index 43927172310d4d3b24260b4e1ec2280596d4d33b..e55ab1ead14f788b0cbf1d0232f866c65c9006b1 GIT binary patch delta 1307 zcmV+$1?2j~2hs|VNPh(MNkl<Zc-rh+*-9ia6usS+`-Uj)qN1oT>Tl?qKP%#kf8c}o zqPQTqpgy>P`_j${+~#&VNhQ@))iuKeGETRt)H!wTmQ*CluT`>~yo7%i7Z)q^7q`R1 z!%~_4k@lZR(OM)w{QUgT*Vh+)e}Ai9#MaW%qIwiXR4$k6iGP5^$Hxb)udmbU>MBi5 zO{ohim5S=kY^733bv)ej^K;tU+oP?mEoy6PtCFb_`TYE(wY4?c*w|2{(D7Z7hye8T z^fb-R&MHjX+uPLM-d;-tCbhD%QZ*|k!z4n;;HJ)ml3*?-f(}ao*3He$dLjTnIXP)0 zQWQlb7RJiYrhmrS!Inwz&!j|bswAC@iSTErVvJfC!~}|}i2j|#RTqAlP?3qia)8a6 zN0@{pqm#J4zNWLYGrGOKrKhJS>g(&H;o)JLnVF%{(a~(G%|95V(*u{xAx0v$j&^)} zOh-pYDj5w84bk}cxXL|`kB_vwyGsiT3p6)3mx&@Ke1BFSarK*<8#*~Tq5l4Ur2@#{ z23=iU)YH?W)B(}%?rs_x8Ocl;8yRm!E-o&pqoad*dwZ$1wY5fSkiz#!pcn^J%Y#TF z(}MW`EQdWg5r@Oh&Q5xGc&Ky4Mv`YR5gP#p_5S{@OiGS5fx@_uC>J-D!z`RT*tAUH z7iw^RF@H7AKOh^TNSsO>v3O1{Rbov`f|sA+<oEaYs^Wx?$jR^%{_*zqMgs!_sS?q_ zOH9tpt}DXdArgVe%gc-M1^5KZj)L>`^;OM-aaj=2N$F%_6QWcEN$>RZROJp{3-CGy zH$Zs}(*m(Zom>a6XLYA(xfB6dJZ<EStE(%zyMMc*=jUgYHwFg>X>4pv`4OBwjc8>f z!dcy`M6s1A@B!qKrKP3nQj-^8>?5v-q&sma5q5enA2D@#5h4@RNt)1-_=zN9BNH2b zP3*I-hV>F%ClZ_4O=e{xk_9Q3+3Cw&#^vQBdP2-v1>5{g0$754#N_buqP!MavUJy# zFn{4PnpWK6DsA&Jg<_kJNQ^-%L?0qqnU%{&f)Zk!f22*&l_X6j?=0gbfxHy)b$AZF zrcIHC6v?xBD`G0+^H#*iM`Fu(DXnWI)=Wht7H1xDEqRMX#6%`&U#mz&oTim!(#s+w zC)%LPyZQ|^c@U|jsfO>^xa1eA3W$`LjDL%@FTgCay^obdCIF!hp9H+AC=3a|UQx?8 zcBi3)z8bXs&V<W*@7G2yO&{?g5xj{Vr%sx_5LY0|_l2(g=GgFSyJ^}bz3v|-0(v-( z-Na4;FfC<5!m+89(+H16m?LsU0$(Q#*+KLH9}<qOrlk*X0k^&ENn06{k60B+Vt<!O zlxT#wSJd(eiN0g<sCu0xift=DOTbCVIgfCJ+G<`Uybrc04F}9)(;+yI_?TA_%*vTZ z^!E^XB(>0&Kl;{?(X{vkr;OFEGCNN-_z0lvRv*E8K}o>2VccvYc+U^4RwB5756tjM zhPV}CT7Kl3pSwKstKT=0YTzu3sju<4{}vlU@gfEA~Zges-#|8M}{;NXDf=jW|Q zW{W}u9aw?6P7xdg*xA`pgO`_=X<}kRT~H(<c(|9Bm$bjXudwoIB_i?nBLIsR{y1xb z_vq{&MQZFPPy!DghZpc2{(dBqgYXMDyX!bpvzs)pnk4B8Bvj01#QZD302J4!+VOHP RP~rdp002ovPDHLkV1gA{h!p?; delta 906 zcmV;519kk;3d9GHNPh!nNkl<Zc-rh*%Wmp05S@fjs+3oGtSB2$H!S!UzJN{tiY5Qh zUuglcVSxmwKwHWia(k@nE0da6F98#IBr9!Vk~uzeX6(d<<2dBC8HVxw7{~DR8MbXx zHk<VxjfeL7`f8Zu6SMpP;yZN7H;ni<w7$N+Xfztpd_Gsw;eVT(8w!WRba!{R9mvPW z2R%GIP`O;D$Hzxnuh(>r^n9=mOp_Xo234z7YPDJvjYj3^x7}`2rBb0-EJmx<N=YDr zK!D!g-|6Y;i87fCyH=~!j15NMJU}d$%MBox1_KZr2z-H$@NK6?&;cNLQ;89<!7`Nj zBS$$>AYxMq2!C&GHl&R3P!gNW#PhiMIc%3tM>B$Ry<U%o!y!x2p-_n8@i?VYDH-MJ zF@htKK(pDTx3@P627}D;@pw#~PKWyaKIL*bvMkFphK^zcon(wG77MD^>ol26SV0m; zAFO~O<oJ9(&p>*~hzy9iE%rt9$X*!r&(BZhv^#|G|9|c6Ee!?(#+I12Pu<-5JW3+~ zf)U5`V4Dtb9!#KEC6mdM>qXSZK^l<(!4dk{7yED?{bUbP0tgJn2w7@ZT|s|dv`!6X z9}sh2c0j`oFhPUhw*kS;asB@OerxtSrA~g$2xi5Y9fK8~dd1(&W-~Sif<C-h0{mBK zaectxTz|1xq?eZ$mYo2Gr$Ssyr_*fekGkT8Mlf)qZwCQ!*Ajjn3$8+;K;3Sau>%&6 zb|aAptL(V$1qfN4JGvl>Kf>Rr;8>kuTEa&O+CX|fhi#k4?$wA4J*qp}CG2R8h|H+; z+UM7G<Z6NJ(ugWR4%Ub)YpDX{;H;%XOSRBCbboGhZrkURe?!Yx8u3MF@s28|UoCd6 z5fwCYbwIwCrjD$#t2mA43ppte+qUtt%DHw%{QFf`GjeJDXdoJh2BLvzAR34UqJdn& zq*2^qz?&+|++99tMpR?Ok}W6k(I4A3a8v~d{NldJwuk%xf{tj|uEcMk%AQ8}#Qk%3 zv47mC@!6U0spX4(RT$v|3?JRBYyiR5+2`kHDwRs?`#Im7sR|<iGM!GDkMMP)kGSs_ zj^jHzHUg-!R+oXop0PwC@h`-F?E3{>=%CUzSs4(S;4N7viI|i(!yRj)x!*!w+Wx*w gbo<DTe*_o+Bfh!IeFUxE00000NkvXXt^-0~f>kWKq5uE@ diff --git a/res/drawable-hdpi/btn_keyboard_key_pressed_on.9.png b/res/drawable-hdpi/btn_keyboard_key_pressed_on.9.png old mode 100755 new mode 100644 index c2cc3204482d9ee2a41d3bc2d4d5a3afd7f5402a..02010b443e142ea497760600746e4650f199a660 GIT binary patch delta 1364 zcmV-a1*`g>2#X7lNPh(_Nkl<Zc-rh+OHb=Y7(EGjrz8pmng<cki^QS=y10ujy6Osc z{8@z9u<NEst++@PEUI!#!bOQn9+!mh2yQ;BLx;)Ccx-IrRvl>qPR8~*KHqC56Ck{1 z1$prpy{xaVTlg2Zv$L~U9RHE_Kar@l1b^`K^n}O9M~uf~yMITq&CJZ$J&{Nt9*<8G zArklZ_t@Fl!PeFm>h-#Pf@N8Df6Eq&#q3TG_u}FL$H&Lm-`__nm3k)gOyuF=0o&W# z*xlW=Nl~ZwqC|v1FE1}+b#>LobZ~HhbUOW#2$|I8=H|0mF*1yV8!~iLZ9?&IEk=Yo zSqfp@+uNHaLVw_wmX@SMqM`_og<)mS=7qBpTSkKY^-4sgiq~r~BJ7w{kwz^V#0W%H z5%E19*Hrjrgj7Vj-7ebgHaeXS27>|e`8-Oc5*8O1Q7jfiAwrfz*pzvMk>JVjB(AQm z(7HQ9YUNi{zW;>GTo0q`B5oQLd~AM$h2eXY%Vqzo&3_37-suS!pF^ZXRK3^hp`ZQ{ z)$e{rcJA}vXUrm7eL|_)#O-w-*T38$-TA?HWf%z&lhQ|YeKd29`ulU_=d+X1*{Pe& zR)Ku#9NnXH6s*l)<^d91t`(WBwNR;-CZkHq8x`u4eDtXWt7C;i#FJ?)e0`5>vgCNP z#mTtd(SMU~$<s9v6#*6<s<j1-<9)}QRci%wf3jSGb0SJ($hlpcmMr{^`xT_-oh#z| zc4aCwz9yNnh{dkSN)<=b;=%LBx2<^;%Xb)Kpf0hIM{hFDPa-0C9+Nh+i;A%Kx|bQ0 zS5}ZIT}{Z`N=Rh!a9u{{lAhkkcOoJwk&I(PWPiu)%OP?f3V8SJ8fL$|!GqPe2@!#0 ztbpO4U*O}1JG7cTUz}V7FJ^VEY3UT9_WNlUH@zI{?~3@UUc+1|jb7&tjf)%n@mp^~ zc3@nWc_qTKx>1RuEmInw?d~NaiB9a62y=QPACYzbq}No!UMFWf5fvH7@GD~<bXhN! z=zk&+$ILD>D;bd>Na@T@obEDQMm{1Y#GqABU7wL4EUtV+=J0;`h}Y6xR6>SJYFfIe z6@+=oLb1w6c#N)Qh$cjWGAo^rxJrml{^2)4U6PcUyta(z352DHsl&6-D_azKl_Fs_ zV?|_TeAtSZ_=sZ}&r7SDiM^#FJQi&p(SJ>OqeMhT#(41|YDBcA6=c#2A|!iSpbNYD zb!+lO#PU-OKW2!!37Jlj7$c)&Z3-}mY;R&E2^j#l4(|oLtSEF7evP7*Y3%kx32`>4 z`b>t)c<on3&QBjPA>n!v+esZieZi?f<i9UesbCa-RX6p!q!;}|MnDY5j*Hk{0Dt<W zjGJ&QYjHoqV-&8D&_x1MCv>xdXae3%I98gLI6wzn2KqHmS9Pw;N0f?qu}d#XyoR_@ z)G`T)rengWdbK5rYAHWRz+TB|w{W<%)v!u<6Kn}T959SU2iJMT#Jr+lR@yuweh(2w zQgi#|kGM1>H7&M-laJN9GCNE)*nbv4zAJr%wxIF^R13y$O(dC2+E|rD=mZ+Xwx&{d znj!k-N4o2?&hPmZ@0;M&Xti4Qrbikq+iCjNiZE3OYopQNRf#?SN1K69PfxM7wx--N z8x<nd2`gcqQY4ql;qdU#9=x%!fm*F*pAaP?^l+QaCQeRHY^;Ss;h!<|LQTIPv3JRh zMi>r<_SSOdA5m(|Pe=)R@R>};evf`XlHdo?2juL`tfJU>^Lmjab%6xYY*NgB2`~V{ W7`ik3vC&@u0000<MNUMnLSTZ~v7BK5 delta 997 zcmV<B0~-8`3!ey(NPh#tNkl<Zc-rim&2HL25Xb+<HU{&NK>7h9q?M|uhaRf-P^piR zC&(plm1Eu^FVIU4y|k)Y5ULtck>*QO5C{fiyE|?c8Dj{EVzMBwv_cA#_5A#wnO&Qa z9LGV}Ly{zR8Al5B8oI8dTrP)C6XK{;DpCw9GL%(-V4;hZQGaB0L#x~EqSNVMFc=8w za6BGII-N!;m6{IHZnv?yxryD~U2Jb}!?tZKqCC%?2eBAxwHgi%4p6Vxk<Dg<%kRm_ z3HJB*v9`7b%d&(7k!2aJRttN3dnlDk?swH{RT@)-oF|Cka5x6?*f0daLC6>Kk$jt( zBV<4je2Sz9sej>CsMth}asolTQzQ^R{b~d%!b8bBMH#bvx|bqUo@tt<2~|~*$z&$V zq0owu<5bz2Mg>y30V&ae)6d|~?=m*@*C-Z?P!vTBMaU>fk$%6AMxz09;|PV1U!duf zd{pTGqx&7LZ|68Z{(!Bmtx#aRip&iXM1OgCiCF0fFMr<uL^7R4Or}N2j)h~+VVhG8 zr=JyETqIE_6hc$P`+4UaAvK2a-zdI4!+JgkS($uBO2i#V@9H@J^orT%+}sI65$@N$ zKqxnoPg}^X=b<MRSBZ(c#r(F{O|)|@n0<3p^MwMT1@x2(U1K2X^!Rr)6A7Jt-$&rZ z777wnxqsZdYh|EHGBi0pC4R~OK4Q#{?8Df9X6<WpD`IsvVD}`bnUtI8{$UN7y}`<H z@5yK#VM2?SVs|0q8P2QhP?^?Pm}xgv>whUEh+e0U(;sofhU`EG`@z+q^Oe`Pxj_7T z2_LQcbJXlBynG`gsWYc#wzy@Z+cEI#tAg%Xj(=7N{g^WM&h8H{@Az9!p><|J&sb13 zU|;~fEA~HwROk@i8-3>-38J@qakP6Ae_hDI@y<EoRYs)OKKI^7mKNl;91#Iz?i`s` zwL}1!yJ|(DC0b~S`pkZtPpcbRE0rTF5n9|(<nkLOdz2$0<jB&2Twh;1K|8yM$9Vp@ z8-EC*>pHzjaF$(>)%{gBQslAoCjyB;B9I6q0*OE(kO*W64vpRp13pE0%$?;^q=;yW zC_#^t^gB6q&(WtSAmkVKEue#L5`+wC@(v%~M<{|C<P-PLZ=(3Asb!Wok@1IpQ54}f zn0)lBG6q7evxkR=*xA`ZB9Rz1XNsZ-fnFGf;rd9vj@fwoe#!A>v+1@qiPX#Jhtf0+ z`Fws9ViSG8Bo`To)FvAQ5|r>tkkLc;S}g?7A8X#>e+&88<K|_e-$(cJp8x{@50W6* TvCH#q00000NkvXXu0mjfv{T_> diff --git a/res/drawable-hdpi/highlight_pressed.png b/res/drawable-hdpi/highlight_pressed.png old mode 100755 new mode 100644 index d2276feb82c5fc8041bf75e171470e98f8aa7830..ae04901a0655fce7e719df852977c0347e644f0b GIT binary patch literal 4110 zcmV+p5b^JcP)<h;3K|Lk000e1NJLTq002w?002w~1^@s6$Cptn00009a7bBm000XU z000XU0RWnu7ytkYPiaF#P*7-ZbZ>KLZ*U+<Lqi~Na&Km7Y-Iodc-oy)XH-+^7Crag z^g>IBfRsybQWXdwQbLP>6p<z>Aqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uh<iVD~V z<RPMtgQJLw%KPDaqifc@_vX$1wbwr9tn;0-&j-K=43<bUQ8j=JsX`tR;Dg7+#^K~H zK!FM*Z~zbpvt%K2{UZSY_<lS*D<Z%Lz5oGu(+dayz)hRLFdT>f59&ghTmgWD0l;*T zI7<kC6aYYajzXpYKt=(8otP$50H6c_V9R4-;{Z@C0AMG7=F<Rxo%or10RUT+Ar%3j zkpLhQWr#!oXgdI`&sK^>09Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-<?i z0%4j!F2Z@488U%158(66005wo6%pWr^Zj_v4zAA5HjcIqUoGmt2LB>rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_<lS*MWK+n+1cgf z<k(8YLR(?VSAG6x!e78w{cQPuJpA|d;J)G{fihizM+Erb!p!tcr5w+a34~(Y=8s4G zw+sLL9n&JjNn*KJDiq^U5^;`1nvC-@r6P$!k}1U{(*I=Q-z@tBKHoI}uxdU5dyy@u zU1J0GOD7Ombim^G008p4Z^6_k2m^p<gW=D2|L;HjN1!DDfM!XOaR2~bL?kX$%CkSm z2mk;?pn)o|K^yeJ7%adB9Ki+L!3+FgHiSYX#KJ-lLJDMn9CBbOtb#%)hRv`YDqt_v zKpix|QD}yfa1JiQRk#j4a1Z)n2%f<xynzV>LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_Ifq<Ex{*7`05XF7hP+2Hl!3BQJ=6@fL%FCo z8iYoo3(#bAF`ADSpqtQgv>H8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ<AYmRsNLWl*PS{AOARHt#5!wki2?K;t z!Y3k=s7tgax)J%r7-BLphge7~Bi0g+6E6^Zh(p9TBoc{3GAFr^0!gu?RMHaCM$&Fl zBk3%un>0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 z<uv66WtcKSRim0x-Ke2d5jBrmLam{;Qm;{ms1r1GnmNsb7D-E`t)i9F8fX`2_i3-_ zbh;7Ul^#x)&{xvS=|||7=mYe33=M`AgU5(xC>fg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vF<Q0r40Q)j6=sE4X&sBct1q<&fbi3VB2Ov6t@q*0);U*o*SAPZv|vv@2aYYnT0 zb%8a+Cb7-ge0D0knEf5Qi#@8Tp*ce{N;6lpQuCB%KL_KOarm5cP6_8Ir<e17iry6O zDdH&`rZh~sF=bq9s+O0QSgS~@QL9Jmy*94xr=6y~MY~!1fet~(N+(<=M`w@D1)b+p z*;C!83a1uLJv#NSE~;y#8=<>IcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a<fJbF^|4I#xQ~n$Dc= zKYhjYmgz5NSkDm8*fZm{6U!;YX`NG>(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-k<Mujg;0Lz*3buG=3$G&ehepthlN*$KaOySSQ^nWmo<0M+(UEUMEXRQ zMBbZcF;6+KElM>iKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BK<z=<L*0kfKU@CX*zeqbYQT4(^U>T#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot<a{81DF0~rvGr5Xr~8u`lav1h z1DNytV>2z=0000WV@Og>004R=004l4008;_004mL004C`008P>0026e000+nl3&F} z000F!Nkl<Zc-q{Y{c;*H48-L_36spU58K!3`?b>~p#DMHGQ^g4Wf@3sro%x4XaBrf z$-a;F{hL^8B25am7QAP_f4&*{TQ>Rq&ezREbpIf-+eEe|(n_cS;Hr*;fU$x@n8?vY z4o4AveiYe1i0JMFZJDAPsVEjy1ZM)|(L~-3BEMcm^y{<8A85NR39DTh+6*k?p&gDV zSU+Cg753#x<mpl5VOIpIkt%G(uxw(#v%MZfe!iUcb^maJ^}H8()Ja$^slZBL(S8Ej z%iF(K-EAjjJ!+sZ6wpd&D`0`pUf)iZrD?xv$^ToC03yik?6voqowXqdPlaJ2U^2>E zRcbU4;0R<2*bFRIWo;5n57G!uq%a4XPQ$t-u*y&cp($N2wF#A70~o5R(RVJ}WD&58 zqV5UUibRkK$yNw33#csw<Utz(W3yfsT-DU5fuN#9G4iiY2rHHS*!}9Vq6f<BERs<p zg<Z5CFDquju^~A!VWzBLK>@Xx(xre0sP}&}X5T=iA>a^z;)Lk?dxh(-2wVhfWk`CS z)PpzzB@V2=3PX+Edyj@9t1d4jM^Fq@o(IZ-ukiAX2MWoGRSS+$C`AB;0N43@Edw<> z0ndaaTOvpjob)^_>dfdfwv?DDUJ>s?N`&6}R~vlxAtX_CjUZ(v?K9w_Y=*8pFz^~W zmy`fd3#$040(R6HVoEdgGcTcZ+Otu9(i|USUmG|mnIwZ+1R5=8@3)k)n5Ao^(W6d8 zpsJRZkbbvwg|W&)>n&Dc0(4|XVKOMV38g8N5i`p!)oWr%MILz>aFQcx&*pY`CM40! zIis+OW0U>HPqRgaFJK3<Q>AF?GRlaa%A$-cBZXBh5zm~8%PMTu>h7R#nqK{^C_<U< z+Jp~Tuursc3rDg-aTO}as%y6W)Jc#=_*a$6qN=-EUF21dn_O$ldKv3oi?{7+psqbI zpB7lw{F~Hgy1M{&hn-s4#(7|gYeuiW6}D0Ds#DGBl>ILu$&Bu`)%2-N--6da`@Jio zjr^U3o2EvJIrYwlqj&6?+h@G}(LYFGRybNls*COXYPEG(s5{b(Nmr=L7I@U;T_Bf# zyOo-yO{mMr(XLc4(Kn?*cs_Qin&=Xw(X#VwO=Vzt0{YfR4>M;(Evcxe162x}JvP~I z9p2b9ljV9ULoN=<co<{+8UHgcOBz7^as)EIVnqtG2|puBiSy4j963*I$i*MGR#;U? zn&)At(z1;<$9&OFSn{}0UxL9=s_Jfz-ys<hStiaDut?ErLHGyC>YF}#wVoHM>`esO zIw^BMq<{)@GO`XEfL^gD9hD*1YBkU&5&uG=F^~qor7kSbl)WqVqWciDMJqe09>GGr zvGbb>&ks>>k-|i<lc~`uwJ2M%Nye~&(BXkR6(HAxMgY--!h9CZQ&CVBg(PCy0w~10 zsUY&MY)GP0E*rc@C->6xFf^Mn*C=GY3pvY;_!qMe_@F{_L<7Ul>uB^hD?&004!TL+ zfGG|ODw+~ig(L!rg*AB9)CvO%N`g?GUEIs43ov$XN~KUZ&fY|TY}JM9EI{}%49pWm znq2q1V-+w4R`^r_WI+&_60LyBKE){u$?-}&BxNCpTL4Q=+VQd?vrx#C6|>oqnSf_k zI0QLsgg&YuTYRnn#)2VE$>FEj?jaG}@cCgJFcI$V*KC1%D`-SLsPqUkw-4VUELnhL z@vP|vXVg@2!_+Eh%Ya2Iv#ViMK%1D7X-Rl6>tt2)NEAfzlY@T`09&M`)+c8};Q#;t M07*qoM6N<$f)#Y3r~m)} literal 1527 zcmV<T1qk|yP)<h;3K|Lk000e1NJLTq002$^002%11^@s6j;bIX0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU%nMp)JRCwCloNsd6L=eTh<#9q>1=rys zRKYQTPaJ_Sz%^3bgbP7oJ84#Ns2HQ^ey_V{cPpw|OS|5c)W3QCXGSCG+wWz~qP6dS z_p8{xe*5EOPe$zD`R=#BS<bxQe>nY7vD1sP6^5XVz*!ru`1^yO+v(3YznG43BeK74 zHjzy~KwP7^D$oibYdFMdAMa1EckiFxk5@zFi(8S`w@&~!U8pcEx-_CdTcf}o+T%Ns zzaKt=+o64RCvx}d3Er-}6f`|Eyb3hq;q6M>q5XOP5!?=IhxX+gkvFIH?M)LfB~_`- z(5$e1usod9_SgNV_a9>14sVBc_gZ9k-4ZlSDzXz?w4H!=|M=ha*kju6p1aa^Xs+T= zP%GiBfCj>Qc>EN~Mk$_Y@_#E5MFd-)t&cvlXXgOKy+J`k0A-Z8szgx`<P2yDTm>4d zIxPY^f;EE_DK3CFTA*DLT&D{Y@J6cM(t_&F0S;B!>^CpZ$xv_^g<TW46$zu{s@e!L z3rZJ)^5BKw*esa^*wy7y5LlE@X7O#}+Jl0oiS6!k<OrB&G?IZM#T}eKSB_KxvaUJ{ z)=W9V0t0Kgk*fGTP)Gl(Bn1VPhX6!CisQP^jyI_KEdm%pTj{D^%sPTO111i%|0xbl z0N#7lMOn3Zt~!Hbpb|Y`;+G|Z8aDEPAz8F*;4^Zu2&51IC)s;YF)adC?dWG*l`SnK z2~fNk7a2ACj4eSbMKBWEkkaC4{7omHO<fgL+YDA_aG(M(%6@2Poq?!qUsVE78uSXf z3gMYiOjl_Z@4Un_IiHP=H|oSWcCBFJWRejYI#BO<@qUBi8k+SgCqFYL0@gL8h1jh} zier_A)@!Wd1Td(gIGGggr1A!wK{LZW-D7e{g&)N_@M27KK3iyb#Z}QvTTxucu@iQ4 zmj|Q7AfO@HE?Cqhnq^Q=bx{VFNO4_5*Og0%S;egyZFX!MrP0`qVwU->72=cy+hnZU zpqA}ur4ChO)mA<K)WsSl;#-&MqAI>yZHZZ+o1AmW#yU2(onhI|3hdksv=ZFcKXuHI zU0^U;_FQP$mKc1EOY=EyfBf9Ao5Y;jvoFo(IIhk(b&Rvm%~hG!{!EUyUBsZ-`rqxN z8RSOpXYn%9EyqkLVBOR^cICDtZ+rHl6laaCXQbL#2&>gMVKKs%XM%Z$+H64#E8bOe z^xdsJs9Hg7Mz(&Znn~M6miRQzy;M;&^=dX8UaiRtENh6kcC0vaTG)~biwx;fT=m!q zyT{>9&}pJkY(!>#R~5%5h)jGmB&!<G3NKqE6L+jhaaM?TObKEy6=y(8dg?<axm;Rt zU9M_Kj6;=|J$ZA2G-`|`j~m$nG}54}cy;0-l0lK->r5ex6u%aP1wd)@<bcjz^jw&| z86#U~W$s56P;utF_Ha)Goxvyvszc_gDHulujKgTMLSZ@T9@B#%!P}d`7~Kb&Eq>X~ z`wSWyJ16@bRR0qN7%5H!yC@u83XHNVn~Y50e(i7%=&1skFB^eG6A$xQ)DK31S>&oh z1a|=x<K3JQ#kR`xl8~;PP2Qt}2#3kR$n3|=!N|ro<f=Uq-<WN%Cp4gzMW+!&AfxZB zaMdh8>R|>3be&jWQCF+WRS{S$G^f`wpemm!Ef_be6u%X<AqgNDX&JDaR&T~YmhJ+$ z3X*<&2J=K1mGfRV?E=R@gP#I{3``<jtrc+Dr*>sw1p^M8tI9$kmjIU?9H7gQ%z!0R zj#RTL)6p+L!@!B)kC@07u`9r_fXGXU+~vV*NEjD<eq0Wm2zNJfwotwlJhGk~sTOB$ z>%N4$vLF*h_$ZxtMqM2@rmcdv9GoOaO}e0Uz$<q3Mw{C(<8)p9R20a9CsC`}wa#|F d?&Ti=1^`|ex8Etv*zf=V002ovPDHLkV1lu5$P)kn diff --git a/res/drawable-hdpi/sym_keyboard_123_mic.png b/res/drawable-hdpi/sym_keyboard_123_mic.png new file mode 100644 index 0000000000000000000000000000000000000000..62669803d9c7c7b682ac2f0dfca532c3f9031f04 GIT binary patch literal 2575 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 literal 0 HcmV?d00001 diff --git a/res/drawable-hdpi/sym_keyboard_feedback_123_mic_.png b/res/drawable-hdpi/sym_keyboard_feedback_123_mic_.png new file mode 100644 index 0000000000000000000000000000000000000000..f57e581d5a318d13c2ec1b74f3d32ca955002a88 GIT binary patch literal 1046 zcmV+x1nK*UP)<h;3K|Lk000e1NJLTq00372002Y?1^@s6^oprj0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU#xJg7oRCwC#nt^fJFcgNN#{k|SY=AmJ zoe2UH)ZKtg5N86@2}~w{Okg^JlL<m6h&Q0p-SeHQO4gHwO;Y}M_wG2bpRG^g>Al~c zo=&F;Y#93j1b_>;Fu(;|z=Z)W-~uiTZ~+%^VSo#`S7)<p2QZyZIfrG^7t-g_U!@<& zCtZ^5^xE}Y4_qOAM^H`MOaCGHHGmrqR{^c1Cmp9BB)?na+;DsFfK`^t$;q&C!&fdB z%w95FVde5o1RR?nEreNejvzD7Zdn+!_#}NBxB|Yb++@U2Wy~+>8|h6zyruMS6f4!f zS213sKdbxe+QC1{%vF?kbkCXR&mHHR{!TR{2kILmUK?|%_7aY}HY(<|lvg3KMaMum za8nxKDZo?DM1{sXaRHABH}edH1Gnx0;*HTE1;_kIa0^DDoS9Pe391QB;#t|LCvHi{ zm3scBL98A3D=rN;p%%|PsgB6Gf&k_LD{;-3w0}w@Z6Kv>!Y&DSMuC<_aJBQ^5}-b& z&i^X?==lBEqx@+r0+;<}UT0LvQ3()_+IL$5GmngY46Gw#LEM<}<m$O7+*WeTNm6^( z>eyt!>)zQ!kcbvGwUl)C0V!-r|BOv!E1hWRZKLbCtC1#jZUJ!!Sh=YooGdJ9O-X@! zX1vN+NHKs*?Otv!A(oex?;ZoruewAO=|3gdkbgm9`P{d|(<gpDwzg1MO0I28N-#Fj zCUUP>XtB7~I3}v`%|hQ&j9Y&B#Aufk$Z1Lhvx%sU*4eD9eV$RAWeBTt!p$5SKx{?Q zZbqdmJ_D}VJY@lGccsNKwG=T1T;UkFI7gn*250Ni3I<$ZS@nr_@2+-UHC_qDNNuh6 z&~Sxi_Rj`Zhf9NDcTYx#R(aCZlE&V;@Qg7V8t&j=8F1g3aBV4|X58!AcAlrTj)t3z z0oF(h^N5w(rM&Ivw^Z}BLzew3&kq4NapbAKVArM+X2R{bW)Udd^pQ5570M7zMCAZc zb2>=JWM$+>szG11mUBT1!B)~e1>XCX;_m`08Se`s=UTa^2)9|@Ggc8Hmba_eC;XRP zvgZE^H;;UVX8v<Zm-gHh`!l?V*FGV>n{+>|Xj=L7%u-`x(TZ8^aTnZ!BM0`$o3Vr2 zXlj+P<kyR9w^k5%ooVW-(Yc$NT7)axW`;Lz?Dh~)Eu^k85pex7V(;T;;Apk`iT#16 z%~ZaBLCzi7kQM+JaAAN8xPS`-T)+if7~ldf;KBeGZ~+$vxPW{0_D6sL0Il%2ahIQA Qy#N3J07*qoM6N<$g0D*Ji~s-t literal 0 HcmV?d00001 diff --git a/res/drawable-hdpi/sym_keyboard_feedback_language_arrows_left.png b/res/drawable-hdpi/sym_keyboard_feedback_language_arrows_left.png new file mode 100644 index 0000000000000000000000000000000000000000..8f9b493acaf521eb0bc2d234d6d3faa1f8a803bf GIT binary patch literal 262 zcmeAS@N?(olHy`uVBq!ia0vp^d_b(m!3HG1Y+uy{q$EpRBT9nv(@M${i&7aJQ}UBi z6+Ckj(^G>|6H_V+Po~-c6|L}eaSW-rmGtNTe|u)jhR#MGgH?qgk2hSBkdo43IHZ!v zl2yPE^t|x~L*yLR`MM6P<U52noZS52f(XNsXUrQJ^qM0#++eyS;860wA$O;LkJ^S_ z2VSm#Xc>>*K9(TUM$>h1dv`H<STlWOo+Qi=@R?B|mE%aS%5s?n&-epwJF>+nSe|4w zjb}(|+V<F|h$WXjl(D72!^4A7Kw6>Ou<x4eVyTl%42*0H)-Qwht6OiH3v@Gsr>mdK II;Vst06xcADgXcg literal 0 HcmV?d00001 diff --git a/res/drawable-hdpi/sym_keyboard_feedback_language_arrows_right.png b/res/drawable-hdpi/sym_keyboard_feedback_language_arrows_right.png new file mode 100644 index 0000000000000000000000000000000000000000..a2fbd0fd0f8f7261066ba80dd2d0c0341a7d14df GIT binary patch literal 250 zcmeAS@N?(olHy`uVBq!ia0vp^d_b(m!3HG1Y+uy{q$EpRBT9nv(@M${i&7aJQ}UBi z6+Ckj(^G>|6H_V+Po~-c70vN<aSW-rmGtNTe|u)jhR#MGgH?qgk0)G_kdo43IP~O3 z2E&o(jk9D=6s}?tc+Z|Sum5~mO`Q+Jqu&l^8K1E5ojCT@;q2>+x$0&i%olRg6&2YM zw#hSG>U?rUS>uRsgvXUH3@Nu?U0uyTAt_l|K)T69@bz)-fM`7hZlOyzIIdi1@NH@p yiT;rJhv7)81Fta0&iRE~-bq~b5M$slU^xERVC~zUX`6uVWbkzLb6Mw<&;$Tg(qKIR literal 0 HcmV?d00001 diff --git a/res/drawable-hdpi/sym_keyboard_feedback_tab.png b/res/drawable-hdpi/sym_keyboard_feedback_tab.png new file mode 100644 index 0000000000000000000000000000000000000000..7754752f3a12ce3384d2a6747772ada1b0bfb850 GIT binary patch literal 462 zcmeAS@N?(olHy`uVBq!ia0vp^#z5@C!3HFC+IWM3lw^r(L`iUdT1k0gQ7VIDN`6wR zf@f}GdTLN=VoGJ<$y6H#2F3zU7srr_TW@av&uwxLVK3;jV35vu%w*yCQl*vml}aDO z>>GXo>>0s#4)A{1%hG%F-{Hdk>V0+bMUK7}KPvY87A=jvt{SG~%fo6Am0Vc)a87Xj z=GRZN+}r;=Tl_ZsckzzHHXa5`c2v$+OmARhlSqIPZmMn9lvJnQ@jAU`#T!+}V*9j6 zeyuf6&aj3=y<&KEVZn{PkpUCh*3ERxpLT4fY-5&pbDE{-l3X?e&Mgu>m+s_x@n)SC zRItn2-~aX`x3g#g@BEVq(+$G7KTh}h{>6xG3ZK>q5!<3l`yFX^Gtygy6WOlX&ERj9 zxc6{<jREh}Fv*mVb1~KoR-KCeLB>&C*X{IO70P3a`>VvG=7>(3U~f2av7*b<>Y^;x zMV!Wxi&%wO7AdA{HJONsr8_Db8Xi>KXrMG<XK`D)gmjb45<LTHw^gPl`m-C6eHd?Z ttA9&-_QH7SR=#>mMz$IMyDhm57;+|OuDa9gYygZP22WQ%mvv4FO#u4`t)c(` literal 0 HcmV?d00001 diff --git a/res/drawable-hdpi/sym_keyboard_feedback_tabprev.png b/res/drawable-hdpi/sym_keyboard_feedback_tabprev.png new file mode 100644 index 0000000000000000000000000000000000000000..36f6b536459f3c4b1b94132c224cbdefc102acad GIT binary patch literal 463 zcmeAS@N?(olHy`uVBq!ia0vp^#z5@C!3HFC+IWM3lw^r(L`iUdT1k0gQ7VIDN`6wR zf@f}GdTLN=VoGJ<$y6H#2F5~97srr_TW@Y(<ZUt#U`tTpIlz`w!Z63-E{oX(PZ`I# zE_WMPeM*?k5A1$o(yPC0>(=l;`k5RmY<4@fp9;Cv-cNV#w2=;ASZvBwoF3+zbt|XW z`R>!QyBY2_ulH40$6bn0I@`d=CXoOq+Gq5wp5->#rcH5+<)syqjtQh_PB40DGI`4{ z%Oloq3cH`EH{1}&muOm(>}<isFW_b}v*|=T(@(C&ypN`&wLH))&t{Z7U99d>aQy4L z7C{bs=dAAeri||&%w3o1cYAf{EK4UR_soBRW~Q5i*(#46V!d3{r*&k`TEn0W?No(z zQ}<qGIiRp=?$p$`A5QWqs+8C+U%xDk{leS7OIFFv;#p*9o?rOsv?SBkSq?kf_k=Q^ zvK3v#HDUX7W5%t`2RJh1g`ezQC@3tl<f;g_$Qn+K1=l~>bjlrI5BPq1tBln10}RYO z22djTH`f8(8<RKQU)m!1aI$bh!_W9L&JBzV*UAgcUTL&P0%M55)78&qol`;+0E-E> AasU7T literal 0 HcmV?d00001 diff --git a/res/drawable-hdpi/sym_keyboard_language_arrows_left.png b/res/drawable-hdpi/sym_keyboard_language_arrows_left.png new file mode 100644 index 0000000000000000000000000000000000000000..65ccfda875c0c4f1ff33d4572678ddf15cca1abe GIT binary patch literal 314 zcmV-A0mc4_P)<h;3K|Lk000e1NJLTq000;O0012b1^@s6u)3^E0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUy+(|@1RCwBA{Qv(y11$j)1C7C`1)~;> zTEM`-g3MuLWF(}X1DNxF(8>o60s;a_6!`!LkO1NUH#fHkaUcM)r%}@a2Sr822wPiQ ze{ODWi7#Ki+@O{Z1fZ@?P*zs9r&=UKfrX@`WT2y?V;Da_zXDZL5fFGdI5-rjsj1mB zGc$8gJ(*@^X1W6@cba9i>C>kd0;xut=47BH4M55fh#%6dr~q1W07w}C@dTQcML<hF zK!c1T-w-S+kbT3&#r1|{8$it#7$yXOsZ0S`Ju#SZv|Tj(EdU5G0DP!j=Ll3O=>Px# M07*qoM6N<$f|${8*#H0l literal 0 HcmV?d00001 diff --git a/res/drawable-hdpi/sym_keyboard_language_arrows_right.png b/res/drawable-hdpi/sym_keyboard_language_arrows_right.png new file mode 100644 index 0000000000000000000000000000000000000000..0d01bc224322f14f91828d248e9c81cc637a59f3 GIT binary patch literal 316 zcmV-C0mJ@@P)<h;3K|Lk000e1NJLTq000;O0012b1^@s6u)3^E0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUy-bqA3RCwBA{Qv(y11$j)1C7C`1)~;> zTEM`-LaGKvMn(=G^#h+8<kEp;9|#BtBmpT0qBVeQBL&CC#$I=Gb2|XkngPTTgv=x> z4wRLZ?c?I&>J=3g8wmM^>`3P3=9cjA@JI*x24qPBDD-HOia@@Jii)b2l$5LlaxG|* zO!@iw6?}bt^Bf!;K)&&yD4F5{%*@OjnwpyKKztp@-9f92);N9o^g>$r;2|iYfrcNT zMI1~3Vgqc3Q|bepuBONbTwGjl2)UY~q9QXhQ-KsS8Asbi!`}jc00RIOM2ojB^u<L0 O0000<MNUMnLSTZ5cYUA$ literal 0 HcmV?d00001 diff --git a/res/drawable-hdpi/sym_keyboard_tab.png b/res/drawable-hdpi/sym_keyboard_tab.png new file mode 100644 index 0000000000000000000000000000000000000000..1d4d92bd16c5768e15bcb70000d7a8f7e0f0c16f GIT binary patch literal 1027 zcmV+e1pNDnP)<h;3K|Lk000e1NJLTq001Na001)x1^@s6|I@0w0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU#rAb6VRCwC#na^tzK@`WcKa#EMnxw^w z2wDVB{sVfEQV`Od+CssAp$(xZ{R70C^j3=WXbQngp%6WIXnQI3QV3Yoo(jQ(2qj>P z6isNF#59{--wSVKTuVEl+icJbJevKHnNQ|@-+MDt$+m4@CpFpEVXX_)1^VZJI<6`I zGmuQ<p{ev&a=xUVbrg|IFF_-K0GOY~wZM+ZOzg@PpcZBaVJ?zsV0ExVnk9>@ZBfR6 zf?Hc#PheI*<@5Okxb6k(;a%6xuty-HQmG(-uU4zE84K_n?E+#N(g?(7nkLHS0?Eb` zARJ2tkY;3Cmc^n@?v{>L+L^<ia*U6Q6r1vs?FA6i1~ZmZY~XAFljQ}FLWwRw{WU22 z)&Q#BDwG>QSPJyz<>mXOQb~))<L}|R0#?FIj8N?qH3KpZ4i2uxVzGsEI{gr?Z-8CF z%uF+PY#}`tQBxm!u~@vMC`w>zYU*hq5V)R5BwlkMHPMxYdW=97&SZh_hrs#(C`?f& zPfkw8L!nUr*w|Q#`YDpm6j30FKKm)1>(qh&6eyM4aur<G%Rd+$9gS>kY=olG=zO(W z{YqljC_@VYDFlKYU#4HK(>u}$8pHzGUoMyXoDT;F2k&lfZay0t8k#E<3O`U!rvdRR zM+3z;J3E_z0$8$LY&$zUp9cm8lF)w)qVWyh%jI(KkQwYIdF8JtYw8Dn)g2I};bu7i zm|Lr>tB+6uz#@r+y-gXmvA({Zh3U<^2?R6rWqf@6C9V=d^tNb};kvdmGc)rM>;b1C zzlesWr>F0wQmLr(h3)O_-0<-5+}_^ackD}+WlIFeW<WGkRj_?ZYSIZnEXqoTVcd2; z%x1G6B9X{*h_YSkKhz3PgA!PsfJE~UMx`7K1`GUym6esZBO@a(;3K-fKxw2$6o`jv z5R_<QZMrQS4i{<JVJ$5!y_%Sq$PmmoDz+i&``k+hx}pp~CCD-6;^N|bGMQW>m+w=N zl|*3N0J7Qs3S73E$z&b_%pcXBo~vx()-Iq5=w;2h9>QnnLI`!?aohkxfS&~Md&P+N zy;w2Y+%~u)*3|sKuADD-_hp>|#I$Crs@lv)l(8G^7{&{rW@*wi?WieURW+$ZnLJcG zU4|fsx~^l2@DW&<?pr>`_V>Jx^b|UnI_?Cm!p)Q`dwY@B*m)wGDd!oZ<;5v11FLf& xb<&pY1rVRr8(f6h&fP{wHL277qxegJ0RYYfvJyBoU3dTh002ovPDHLkV1l<e+1LO8 literal 0 HcmV?d00001 diff --git a/res/drawable-hdpi/sym_keyboard_tabprev.png b/res/drawable-hdpi/sym_keyboard_tabprev.png new file mode 100644 index 0000000000000000000000000000000000000000..51bff1bcd580c0d86a64e043bc0d12c008f00379 GIT binary patch literal 1033 zcmV+k1or!hP)<h;3K|Lk000e1NJLTq001Na001)x1^@s6|I@0w0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU#t4TybRCwC#m`iIDQ546MnaRT>#>9oX zYO1a!GzeNZO?Pe!#R|zHEu|n`R&lAg$rq4N#0mvnbyFxBEPWsfet=RJrJ9mzRn#Qr zHIvCadTuzkj6<4CnsgE*1Apd`o0;F7=bdX+Rn^i<o3#(r2kHZz_SOe7;xen%T02HD zC~~Y2X3hT8={YSNp4(9@NCH(s6_8vHs9g)AG3o*lt2jVzkOyQ#kP?CjX1I*eS;z_U zr_<>Ky!of??d`{Keh#lQW&<(kDz_jA#8Q@Wx$M+f%i0Yf;zFk^%Orj*l}g2qZsfWF zbOa?yQVj^eC?sQ6+B23O+j<U&Yo~-@9ig$MVqH?Z0mNY8q?Mgka|QU6cA&Tu!q_nT zY<Ld|i>TOci{V;y5sMHWlzVY;@w(IL<R>O3-XVx=R#3B8IK7|?puqh6{M|?-@(jwv zK&J{Q*8(_gx&&rmVPWCU<m6-&Vus0NG6d2E`g^Kb2C+$J0B7)$kH9P~E!`U*AHPk< z<#IW4{XFS57}!#i=PKx0DmuL}1mwU5>jz!j*x0x~Iy!nwJ1(Eklix1kjXfCTjbP}M zhP(ie=j1<XLm)*_7<2{e_xpY8>+27OhK7Rraivm;Smz4pEKXOH<K7V;Tt@f)24z9T zqxqJmWDvJp28Fk_wmy<tvbMICg!4!s5SUJ-QoCvgH)!02csw2>A%Iq8n`RkW$hNYw zGCeprc(s!)!fv;FMn*<%AP8e9?HPut`5OZG#opfD=S~7;v)T0O>gxNJf*P`g4B~fo zc5<Om=+Wlp=EGnxcuhZUc6RnnB9Zt2hrbNOP*oE{fACl`l=f&L@`oI}QFeHE_(?LE zoC8ze)Q)qz-5J<@0UeN}YmjBMt%#Z|6KIAtbs1Wyf^T!c^Zaf&9F8w9FTd4}^Lo7` zQ+^=Oegl04eFObO>lE}~G)90VtQ7?6J18|aHue;H*h@&3nrnPMUk-K|9FvFZ%~S;O zpsN1!%4q9Q(98mDps`r&xhRVJQ&UrO094S&f*IXj#(>NtAU`uR^UCFN?LrC{vA9*+ z{km-hNY$9PfEFu6qtVxB8PRMYeJ@hbh5yVLy8&d;J-8?4)Exupf0wljL}EkYIIcEP zXIWOk3{tuQL?12yNDav0aL}G3nX!6S4~PJi;IoE6SfJ<$oho=IS!1M=`Fbm8MXWip znM-;K0?_G!c8yUy&O-Vd{&%ae{e^QwF6*W3P=Emdg2XA`Vzt8>00000NkvXXu0mjf Drrp=U literal 0 HcmV?d00001 diff --git a/res/drawable-mdpi/btn_keyboard_key_normal.9.png b/res/drawable-mdpi/btn_keyboard_key_normal.9.png index d0f9b7cc68907243d491edf188157a1486a8f8ce..7ba18dd25ac8f79d769a2291c77ab2844e3d21b3 100644 GIT binary patch delta 715 zcmV;+0yO=p2G#|T7k@4Y1^@s6O@+(30000PbVXQnQ*UN;cVTj606}DLVr3vnZDD6+ zQe|Oed2z{QJOBU!cu7P-RCwCVSxJt<Fc55qupM{@oZ!a)Pe_Oh5**+q>|~}QHR?F+ zB{&|9r6>rT?n+g8YfM#Dl-i6jzhNqq6azpOi$yw`gmyZeOn*WDr2QKpC4YcK_xqim z&nNZan@}4Lhcp_E;IAf->-9?O^_u4MIhAEe@AtcRKuB5?MSVXU4z%0tXgZxXfjk}$ zS}vD#yWQw=xzOwN%EH88FsRvBtyZ+zY}!E3APp{n$_WHavm`wH8y-P&cmzNoO^$}R z00H@>^rhX2y??<#B=VHTNfD3pI7bb4kVfs>uv(55Blv-@T+)CM&f#Q4g77gCVo8&e zzvI|8m=+^Un;bP=!1zE&dAy8B{d}y%_{JKZpSv_`aMXYeTpEyA^SXe@JSrn-3?MfU zj_;KQ9i&H6hp`O;cg_(lO;;9T*$GNxn>7azEq-v+<bMJZB@K775vO=WJ{x4jCruxV zU1w>eM7g#B_A=s};<ZJoucm>hckyf_nOrVPIW9Y2i;-BJQ$~&NI8nK#aUXy#tFPRh zxt0q6F$~6+D3%qwp9JQMQP^*<0r=KCnipKTirBaN#wT5#FGCAd7oYe{scj3K6PoO3 zYb%HOw||MXxGE#u(SATO6JjZ}DbnIcGopb>-KBXMalL^JAmuob<PlqrF2_)f*(i^s zOw%dTzABC8kv;(grLjkiUB^gW{<ZijBdBTd?w!vyeFH(E26=EfrQzZliYPfNM#zKm zl>lizK*r-SozLgGm^YbB8YjJPOzV0UKv2*-9z>6I&K4uH*^Ku4J#Dw!Z2MIS2q2KN x1q43;Eox|g(YU(UsKqOYvsQeyKM;Nd7yzIKFqsU(eDeSR002ovPDHLkV1jUzKt2Ef delta 799 zcmV+)1K|AD1*ry*7k@Me1^@s6@5t&z00001b5ch_0Itp)=>Px#24YJ`L;wH)0002_ zL%V+f000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iXV&6A3Zci=B%A00OB=L_t(o z!|j-{lJX!Fh0hIy#KPym%I$pr%EnR)^B&F^lMuEdKS4qg34i}=Av4bItib*DoC{na ztu<mB5oxV8Ma`kL#^G>?r-^9y`<*iUk@jamxcNnEjizbPbse_Io4J<fIfM`(qA^Ha z*EpR{kWzwkj=t|V2O=V5Sq37)^?JqSa=~u58-uiMi{tT#*XxDn^9iL?5+xX8$nzXO zKR-C1&+i}r(0?=ynx;Y9wn;&>)`KNx`Hyl$DTS`<(6%l5zE1+u_dSRRob!?O-0fs? z!+_Z2G0g-eq9M-YsxckxMBO@JeKFn?(OM6mRMrsD5Mxpi8zQ90oJu}B&EL%2F3g)E zMmBrZtbqwZ*!Bb!vHc6FvLtVu<vIMclXZ60D5ap3@_&LXP2MRGJC0Wo00Tg35Ho+! z8l}`IM`D+;3qeFfjK$WhRbi<*v(~uDngYZ(|Lm$s1+vH*)5#@{$q{?(tRf+6wm9ro zTVq?4stj<Ck;yIIcPMSud=LPTnMAUK+lNw$j~nkzk)=MzteVhuLQieuA%HcfuU(x@ z9T(r5-hUV53$hwy>ZQk5r~0aI-?*uMp>cd}@A#xl^qsu+{^E<3E!|N+*<II+=W}J< zn%y<DmHUe6pf&dW!~V`b96t^0o7by|>F5q{y<T(W^i}ch{EHO{CElk%K}Dwi0~a9X z5+0Q!t{rP0Z+yxw%8{7jCZ<^OTI0)+Edge&aer5h`}!AKH2dZsK!^xZN&tWmVz~2~ z*MO}-7-JAZKnO8yjd_yhoF{!}6+$4-^O0i%NKq81stQs{lw~=3ANeF{r^YhIkYyQe zw;PJ0`1c(ENGWw)*LXZ0c)ec9Zh1CPQ54wk_bAH}RaK1@VT_^cy8luLnK${7B0gmk da~QnE{RMP18V>MZW%mF8002ovPDHLkV1hYQb6@}f diff --git a/res/drawable-mdpi/btn_keyboard_key_pressed.9.png b/res/drawable-mdpi/btn_keyboard_key_pressed.9.png old mode 100755 new mode 100644 index 91809e242239d063a7ddaca169a8451d13423909..39b9314a1a699813ecc408a150b7ac8b7b4217d9 GIT binary patch delta 653 zcmV;80&@M}1(*ep7k@4Y1^@s6O@+(30000PbVXQnQ*UN;cVTj606}DLVr3vnZDD6+ zQe|Oed2z{QJOBU!I!Q!9RCwCVnM<zfFbsy>5}p$KU<ZsCGh?Sr7&BtT5?BZW-aYrP z<SQpQX`3cMq^L;8wZHliCpkq`Rn&JBMe$EfRrJyUki}xrpMR#uIGs*KNk1}v2E_0W zgy?p=(c|%;6nWD$hQlF^MkC~x4RX0$XtUYSYPF)-Y(}rwD^Cc@lAg~e?e}}y?RGSs zPHm9;{Z8xkx)y?Ga)MyO)^@vn2f+XYfbi5n*o|$67GgjQ1_MhM%HPTn0PxJ^5rzYh z1hqT@<8tO2@PCG@-}1<(L4MyOJadC^enfdBc9GL6P1FCDBU~|f<^q9klyIX*xP<#c z_+WxL!lZKM1aUpChUQZq@rFj`hf5p-<ZB5*k8qC2B|i0bfWc6{!K#rExvK`VRn>gW zBW~5??7qA?`g+r2{a<f-jZ3`S_;Ph#X-D;l3)5u_*nf6Q>C<0gzbKWvFk0?tGF|1} z4=UxEwaGy0*(ygg;n*df-*fY$b&g2En8gk6xcSoPksKghlGSL2LJ)0%WLV^HpRO`R zW9xI!@_Iyr;UtSWc53pPE#sq<#$AQ63tC8r2`O(<=)TkEkZwYTQiP$YoK+AAb%BTl zm3Gw7uz!Fin6mrw^o9m^TD~1rs(}-pF{ZZV4Gk{XAczaS)cX<kI6e{}c#6Lj|3Sv% zF&&RbS}vC~pU<=2p#kb}IMg=ZZk}<gcs`%$dc9`dCUTwt0v|k?OzN9w%Of0?PYl>X nDp(#-h_f~w?H>q#0t^6uKU&u06kO>50000<MFvhpu0mjfztl8~ delta 725 zcmV;`0xJEO1>gmc7k@Me1^@s6@5t&z00001b5ch_0Itp)=>Px#24YJ`L;(K){{a7> zy{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iXV&6A>SVMhG1M00Ll1L_t(o z!|j;6(y}lRhTly%s54v#-hq`hop)+uZDr*p=zUlqu;j1u{eKCBgFw{6%w&clY#!b{ zWC<yyFn17<QcBS*8%il`x7+zNGsf+9BY`g&Ujq{82c;B>qCizuSR!tQMi_>Oq6kD} zgXDRR!{LDaevi#&gSxK$xIhRnGtTETPNx&r>$MG1mL;+*12dy23a=nS2xM7?<MG%A z0RU!3S(adCCx3{RaqMupSO@_rrDcnVlocb){5O3mqTz%P7O162UDww1HHfHX-%{k= zAm6Wup1whJd`wbgYLRngn#+DGMs&t7vo{cChLmzx5uL(wA-Z6CV?>jh(<ew%ai?qE zrAVi1%=l;$PXX#W5_%QUF=CeZrP~1wCWPqE8WX~I)_*YbxUBh@BF(JvdHU++=;Mc; zw*T=%Z?MES4?bTfuepy?ktWP5E#TOevdg|8B4rwH!nk6`wdU3J%@6wh>HR={ATNWM zH$6jXx%3=WSzU{#Hb(lrW>p<sS<Qu0S^}k1tI7^4;sfNB5+ArW>Vp^yWV*$C?y@D8 zXb0z9Pk(eO;)2mZHs!L$wcfQ?&_!u(-ZVJ14d}BG^cf#A*nDTs)mG5A(GqSLN@phs z5xoR471Z3v=^DMjwQ$LvRZq(`M1(X=0RT}Hb^doOHKddXf&ftzb-N}ELr5u6Rn_8M zyjENYfglJVgjK@m4<wFbT(4K`b~_|V;`QcPDNcpU<$^el|C0bfnx-nxb37goJfBam zKUX?V;y6Z<Bv`FhxZm%#BHAtQ7*a}vVQ4Gja;ayI*1rD$O@2>ff}>xQ00000NkvXX Hu0mjfm5e`Q diff --git a/res/drawable-mdpi/sym_keyboard_123_mic.png b/res/drawable-mdpi/sym_keyboard_123_mic.png new file mode 100644 index 0000000000000000000000000000000000000000..35afe0821aa86f0ffbb72de1b46cf152c497a9d9 GIT binary patch literal 1540 zcmV+f2K)JmP)<h;3K|Lk000e1NJLTq001@s001Hg1^@s66ap$x0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU%rb$FWRCwC#SZhdJR}gmHM@%+}tBH^G z)wRa>T-|EaCL#zCTL1V&p*{+>Mn&{T&5wXWML`hqCn*+cMMYxK3JS*fXlq-1CRGF_ zN<@usjnTNKwZ>i7bvv`n4VTNhSxo|x?t$Und(PZ*=9@F~&AFGS)9EZe#Aa#nfi^QR zGcYqSGcYr-{{=9?Nil@S<8d7>1hE1+MSW@z6^I7pfURukkRdpM&gKyqTM#K-u_-~G z(G>w2KQbX&t{gL@`Q#`8J@X70{3ad7*$yBPLqkJ<>8Rm7_R*N&jTlS-#;1_52C)G- z2O?sDIRkPL<RcIdy4q1cpY{F)5Lb{(q~}C)iZ}pK*Q>g^x=P1s*oR}JV-%Rcgd7x; zQMUB_H^@53zho4GlE%l!`}zC(yKX_NsHhl*z7>!cAp0Qa5r{&e@Q8_tk>kXrrKJxk zv`}7x?6KB7Yhz<0;~GPKXH7~WBReLb9g_R``F%M)KK>ZJ*3;9|2z{5ySclBa%=o3H zr6+99&d$zG2L%Nsz_=SaBsMno%KZHN!$Wo;2t>kSXq@-crlzJpx%$|LW2AHJP&^Id zo{*66^~%c1GiLI(wzdv326xbTWMrfk`)6imW^rMqQn`iCy}iA^!}up4ju?K6i;IH` z3k#E|Gdeo@+7XF~iC^J7<VZe6K!g!s5v0RsLii}5h%X4EqoW-f8XCS6i9}~sS6A1Z zoSYo@_Vz?93RVRN2j8x*uYa1Bmi7emtE#F>4ZHXm=*q}BNX^@BZf?1h_}DLn#fx!* zfPes(=H_NT(YuHoCNUCZHl%~Jzsm|?lL|C$o3^vF^Lbxi-@WAI<U0cc1C#m}EG?ND zg4Z38H2_ry*E!5R7Z(?6JvS?rFKBT!=^;&T<8xeGoTJ_=(29$TM@Ubfuif3<-=wCd zUOfy|N=nLA&?z8-vN}$I#>KXxqN47?)i)_ANkN5F#{z~%YZ)p}Pfz!XjEvOlm6Vj+ z!}qD?paXS~r#Ho7aez!FyEHa7HVFjs2aRhf3hb_5zn-JfXdZ2EZ>tO$m7AOUd3bm@ zu2Dy%bL1nHhCIB1J0TPbHLTrazmK#o_3`nMmzS4kT0yI<tgLHqZyzRL`<zJ7?^Ix5 zpm#w*!8P)_ka7k?*CH$|%o}!Pfol-<`TF|GSY?5C9AG-~B*ySQ?9_pQcM+5`EEWoj zmSGNdb#*<;$;o*D{r`}21dQQO4sN@<yMOED<#iWx7Cm2ETN^_q1=mweOiVlmT9<@` zgg6!!7XCavJw1<t_t=MH!^6WvlwX?naaKfQ&&%a<1%T0mf;=1r!uf>^wI*;PdbXoJ zAuyzBV`Jkbz9W@N9mx(1>y4tKqVF3U8}A?iA)waQ)-hZxBO@cs)6-LiyIodRR!uch z^)^Q;JZS_0k=#eh#VgT0GMsOJfB&xx9ZyY7&7nMn20Jni<NhEY*VWbC*xcNl>*(mX z-_p|Z8_e;#ra{i!L>&r4WW0c^tgKr&50~z-FFQN?7U~dl^55o2g$rJW-S`P7$14?R ztR>!1<0f>6G%~;gaxX=#R`0OKcA?eO)cgqJSLkHJP(JQ#C`cBt=MPvzQScu7Xv~gu z58WJ|p+hg{6GBLp{sMu-*xsZt5Yw5@j_#S<d_}~uMj?h{&iVQIArgti7E1=O<{*u) z(J_swM|v`XW7!RRd;3seWd#w(==%ElP+neM6&=G~F=S*Ag9*SaDF;rGSG8p90rj7z zF?PN(q_a!+LINiyJuMlwLpu8`wnetHhhtg;)WmCSLzb792VGrVzo4_K%GmdqDZt*< zHx`fcsiGw?Is>G1j&k@S-CI!ULBe=W_nMOc?5N*%LIaVoPm!|A{fagj*a`SGaHMvk qe+|5A2b+JtnSq&sz2Ekq00RIC9-5B+L`{MK0000<MNUMnLSTYU{m_;G literal 0 HcmV?d00001 diff --git a/res/drawable-mdpi/sym_keyboard_feedback_123_mic_.png b/res/drawable-mdpi/sym_keyboard_feedback_123_mic_.png new file mode 100644 index 0000000000000000000000000000000000000000..bc11cf31ab8758f15a0e016f03b38a5bf84ef8ca GIT binary patch literal 694 zcmV;n0!jUeP)<h;3K|Lk000e1NJLTq0024w001or1^@s6|7ds%0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!SV=@dRCwC#n9*^<FbqJOUjCaAGD0?} zJ3$$NPSA7$=mhBo=?1_ArV}KcfHDDWklJ?&Csf-}0`x8*-{~NUl=xY)EIVqN=I$0+ zB%lH+paLqO0xF;adi9`D6wS@gBV6u{yc?$asz42-Hb08owy;lsU@hnv#k7g-zDE{R z|9-?#n+2Xt=#AL8-}jOP{;xYesL&kQg8mPqlh*D5uD`9F8TtKxj#Np)AT(+lPv{f_ zY<5QS9-%uAgl^-|KQ!yX%3<Vcv(QICa)({Pu$x>GG=mXsn4nm{gfO(CkzM7ntpGSf zp}z?wl5>G7qQni|%#qp^)AlIqlL*n50F5De*fl3L@&fD7l+nk!<9VONlA!;qOD3R% zgi<fBcoJF3{BBOdJ@I%jg%H<Vk3#a>fv$787y?S|(txfex*G`JgcGVgKo{+FI9I`t z!Aslr##l>nOJVe113GI|`l*hovqbM@dxjH!RnL&kP^O-dtXl>`_ejSP8LcS7QJe}o z1k#mtQyTUjSPV9W@6XXdEl^cgbxk8K=*f_HQ$aoA0j2BxoX%_LKkirI+o5qmhd?Ti zM-|7TpgVPxjv9oPm)cbV_5tOTat+MCBQEGn3D0JZ0!1^51r?~758n3Gx_v<P37{dV zLf-W3NlRj%yWSCdDw?jXS<MX9ExERp*E7tulq?;#BKqvJRWrJF8Cja;rmf^w=HACu zof#Rp3~jJyXu!U#vncSGL0#uXxY=`~LuAGyK1%uO*ih7Rt}CDdDxd-?paLqO0xF=l c(0&CN036%G`^|+mZU6uP07*qoM6N<$f(t)BLI3~& literal 0 HcmV?d00001 diff --git a/res/drawable-mdpi/sym_keyboard_feedback_language_arrows_left.png b/res/drawable-mdpi/sym_keyboard_feedback_language_arrows_left.png new file mode 100644 index 0000000000000000000000000000000000000000..8ab87d05ec613fa9602bac636f4d7685df65a7ee GIT binary patch literal 205 zcmeAS@N?(olHy`uVBq!ia0vp^oIote!3HEByR&qII3=zTCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X@;zM~Ln>}1{rUgjo>}pL#i|YsR~`k|8wDO79n3vvo7QQX zn1nEToNX`SZ{ScfVP$oAWg}p%(7k!V%d!K{RMcX21&SC7FwO{DA7{(xA$>@u^Rmi< zL+lQ3I8wxzKC<t*_RvJsKSAoijl<Tqj4Toi$NkFm<s+X}1FdH8boFyt=akR{0AjjA AqW}N^ literal 0 HcmV?d00001 diff --git a/res/drawable-mdpi/sym_keyboard_feedback_language_arrows_right.png b/res/drawable-mdpi/sym_keyboard_feedback_language_arrows_right.png new file mode 100644 index 0000000000000000000000000000000000000000..92d19b5b130e86fc76b114854d84f28da3d8c804 GIT binary patch literal 204 zcmeAS@N?(olHy`uVBq!ia0vp^oIote!3HEByR&qII3=zTCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X@;qG}Ln>}1{rUgjo>}q05eF8D(3SuZDXCWt-h#?HM;g1n zIUf}YUmy3EVScH?<#WuYA_7H|83evJ`>-XkI`Os7_L}lO;=>8qhDxT{i})Sxa7>xg zaC!;zjiv@h5kCbPA)zFO<i*Ly66e-1GVw4}uC@7-&Yk=pXfuPStDnm{r-UW|rG-QC literal 0 HcmV?d00001 diff --git a/res/drawable-mdpi/sym_keyboard_feedback_tab.png b/res/drawable-mdpi/sym_keyboard_feedback_tab.png new file mode 100644 index 0000000000000000000000000000000000000000..593fa67034e8f2c1b9a55992e6b741323d99b59a GIT binary patch literal 364 zcmV-y0h9iTP)<h;3K|Lk000e1NJLTq001HY001or1^@s6%MrO30000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUz4oO5oRCwC#*y{~~Knwt2jyQlDh;ac% zzzrPX+`tu_KsS(0U<3!ycy8bZ*e1pJL%9R4&>wBWE8+3cd(dE-rb#43nh1#nu8c90 zJ#e$imaxg`(B0g_&6N>ERJ2%eO`{NnC`2J5ATVv`xJbwdem|-)n3zq|VhRa;q{Ub% zo%PZe!#QetVYr7cVot#o8dXhrK{ldq{EGwL|NeA)FN7*3%a|Dpn4}An2E0+M*a0T< zK}sxS84-BzEo8)XHVvJy9x=riR1E)$D<NKUj+!6@HzXLr2`T#^zK3sAgm2E6A|rzk zu_5Q7h-gg%fEqTn)~pIqh(Z*?^wA5c){eCQnT?J9d6o)!3orn69#Aw}*5AGW0000< KMNUMnLSTZ+`;ZU- literal 0 HcmV?d00001 diff --git a/res/drawable-mdpi/sym_keyboard_feedback_tabprev.png b/res/drawable-mdpi/sym_keyboard_feedback_tabprev.png new file mode 100644 index 0000000000000000000000000000000000000000..d4b3e7db3b8da530da3af0d185452ef3443bcc29 GIT binary patch literal 365 zcmV-z0h0cSP)<h;3K|Lk000e1NJLTq001HY001or1^@s6%MrO30000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBUz4@pEpRCwC#*ntUxKokaG6$fyGj2gf; z$PF67MsO0{KsU(|Y=FQva0B}vyugA^ySzK0_ux^1#K-fx`_mtW!CONG-byNbzS+my z7%wq@Y;X6jw}qg)GM-3=zHldhdus$D5P=B9DP*^a6Kbar2GDU3IfDRkToR!L0U}!( z@il}ImD9y)5-}SBL}3!~lF$^0ibK<<DsYW%n(NRxx(|OucnhStE4mC62+FS~3!7@B zTq6k2G`5t-XR7GC>&Z0&OpD1JCIWSe>l)*~8va{BlWCnFdNwe#H?$F^b{+!=gFc(U zXq~<$Fxq*9F{QOFegczAW)+A)1R@Z{&f2^sC#&VlljpTU9s&#iQ4muC6`Wn}00000 LNkvXXu0mjf^DvDA literal 0 HcmV?d00001 diff --git a/res/drawable-mdpi/sym_keyboard_language_arrows_left.png b/res/drawable-mdpi/sym_keyboard_language_arrows_left.png new file mode 100644 index 0000000000000000000000000000000000000000..91eda5f2dd89c40a5ce4f3428a42714d71c3af8a GIT binary patch literal 261 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRx!3HE}ruUu)Qj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS>Jik5r2IEGZ*O8WEvzdf^RLuaFtK^DU##-5&@8yi@5>OEjc z;&*jD%I3tjAwe+s!Q;o>TefcfI(hQs%?zK6J4_i;RyR+Z7S__*+G=lYy_>->k-^-- z!9n5Vty@-NS=tvF@*G@TTr3PO=xB7Z)+?AchA>Mc&g2xyRhTey=1YbpVhkH?I_z_A znYc|_RQT)5OZJ8-j2G82?qmp`#<uGigIYhgG2h=$3<?JrGB;Vxs$bIN3v@Drr>mdK II;Vst0I^426aWAK literal 0 HcmV?d00001 diff --git a/res/drawable-mdpi/sym_keyboard_language_arrows_right.png b/res/drawable-mdpi/sym_keyboard_language_arrows_right.png new file mode 100644 index 0000000000000000000000000000000000000000..62a5beba490b006f55c3dd56c6ebff96886ef1a3 GIT binary patch literal 257 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRx!3HE}ruUu)Qj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS>JiWYmiIEGZ*O8WEvzdf^RLuaFtK^B7`n}Ly$7lR?QmD()^ zSJ$I#3Qrl2$V7-XTw=7FGjrz8`?qiZwvd;PR}I+7w99VMAqPLdb4n^IOMJY&xeuG_ z9AOi)w%*;acW<rD1@Bkx{c@p9T)xUD8B(sFICbh@lca;6i66tUCi|0d3{CA0a|~*K zePLEOw<YtkhnI(N!wrUIGp}Tr91#E8<GkO7fy02oH7<6Zp2yY_pmP~KUHx3vIVCg! E0GQ-j{r~^~ literal 0 HcmV?d00001 diff --git a/res/drawable-mdpi/sym_keyboard_tab.png b/res/drawable-mdpi/sym_keyboard_tab.png new file mode 100644 index 0000000000000000000000000000000000000000..cd9daff08aa710f6a65654ec1dc8dd360b3cb773 GIT binary patch literal 645 zcmV;00($+4P)<h;3K|Lk000e1NJLTq000;O001Hg1^@s6MV1*e0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!CrLy>RCwC#R?kZtQ4r2sx7qq@#ae&m z5D-bJcosbL5S8BQB?%PIUXx&;mlATWw?IOUJt{~DB6v6ClK;V+LXjS74@QlR*&lu* zv$83P8hl$pI`C~~U&ws(=6y4H!nSRnm!|kUw*LgrPoUC62=UZ71HdbeN3v`K24Ja@ z64iiFKnJdYbD%*4vPv`vOrxicE0xL@_-}Ye($2sSjFHo5G)C|-?8KHuKxgopoK~yl zXF}!Qsi+T0E1WHv$*^S+3~+5nn5YR{P*r3#8cFeOxm^BQEEZGnL%<~0UU>|Ga5aq9 z1(f-0C=~h>i^aC``FsNJ?}?PZ7x$IOQNbve!QUmTap0X{7`MNP$KxA;Kwvr=jc#+P zwEGA&&SWl=$*eV-&0#c6M@Ep}P`lmk2oi}zR&%-BuVga0->Xcjt5GHp^r&AMCK8Fy zilUg<(b4lwQyx&iF;!O{Dp5L}{um4f1I{`Qdk-Z#aP>#0@t?k<@flzqSO6CP!Utfp zUaz0nY}stKh_zK<8Ca*aQmM29e~ATiw*!+K=MU|qN9jmKLRD3o^S(l%u$xMyzQa9c z1?mrVvh8aBZbnl4S*z6!tJP`?hf3N108W9aUL&KQQ9&c&G#n0p>oO`V8MDabfLC4( zJBwkw$ZLzq3iN53cFlcd$t0kFXXNO*PUm##5D02C3HPF*9@iE_*1gD)>ZR-AWw}R% fXC}NRxDj9gmafD?CfAE800000NkvXXu0mjfEhZo* literal 0 HcmV?d00001 diff --git a/res/drawable-mdpi/sym_keyboard_tabprev.png b/res/drawable-mdpi/sym_keyboard_tabprev.png new file mode 100644 index 0000000000000000000000000000000000000000..eb90872fc5c188bc47ecbdba057ed6611e6735d9 GIT binary patch literal 612 zcmV-q0-ODbP)<h;3K|Lk000e1NJLTq000;O001Hg1^@s6MV1*e0000PbVXQnQ*UN; zcVTj606}DLVr3vnZDD6+Qe|Oed2z{QJOBU!21!IgRCwC#S4&F*Q52r>(Uh4*OynOZ zS_idj(?3WCqIN;J@qt2%T8sP8fxvwbh>O+{i2aHp2xc)67LjQ<I?nAJI~Oc`l`~k- zh0nQ<x#zp*IaiS}COFw#g2U~fVEhCg{1HXbMSU+00VbdcXxTzQn)m@TfC)ea@Ctad z%S3qc`BJHL0C{l({YAi(oj$<lbfr@9(|DFNv6W!LFbpnq65#$jQ8b{5qz%^yBg-O; zOn|~AiZCAutpaMp61WDep)VEyOZj|0Su7Thpf3~YNG9SZM`0`3Y<5pklpS5yH5i|f z7R@gEtPZe#1YEekP$(RRLZMBZG))uVU#88^U4%Ete3+zl^j9x}w#_q{%oZ2UTR0rv z@Or)Lk|ce~aws><=kwK4snjJ5?*Qd?C7>@FmWVYt?J4`1*jH7x-Tz60{i}evvF1T7 z8jYS?mgSDcV%vOD(=<JuPG5kDi~%NkB7gKGz$hul<MCXp)p92i3574@a=9ybTo2)7 zqaOh-K4K&!lgSe}aU&9m?0P&N{7zuCz3oEqtuSSD8YB_GTxu{Fe2`@s!}p#vG)65I zR;MPAXvZC;!mz8@F%o8yT|0}NZPk<!f%&ViE$tA4*ly6cZpV${D?u#~2vlkO!V_iG yCSvJ;EJR-foVd1d0>>_1g46#GM5hVf1sDL3P5q<Hn`=J+0000<MNUMnLSTY<)C9Ev literal 0 HcmV?d00001 diff --git a/res/xml-de/kbd_qwerty.xml b/res/xml-de/kbd_qwerty.xml index 3fb8f52262..9e2f5841dd 100755 --- a/res/xml-de/kbd_qwerty.xml +++ b/res/xml-de/kbd_qwerty.xml @@ -96,7 +96,7 @@ </Row> <Row android:keyboardMode="@+id/mode_normal" android:rowEdgeFlags="bottom"> - <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" + <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> @@ -112,115 +112,116 @@ android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> - <Row android:keyboardMode="@+id/mode_url" android:rowEdgeFlags="bottom"> - <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" + <Row android:keyboardMode="@+id/mode_normal_voice" android:rowEdgeFlags="bottom"> + <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe" - android:keyWidth="15%p"/> - <Key android:keyLabel="/" android:keyWidth="15%p"/> - <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + <Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic" + android:iconPreview="@drawable/sym_keyboard_feedback_mic" + android:keyWidth="10%p"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" android:iconPreview="@drawable/sym_keyboard_feedback_space" - android:keyWidth="15%p" android:isRepeatable="true"/> - <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" - android:keyWidth="15%p"/> - <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" + android:keyWidth="40%p" android:isRepeatable="true"/> + <Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" + android:keyWidth="10%p"/> + <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" android:iconPreview="@drawable/sym_keyboard_feedback_return" android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> - <Row android:keyboardMode="@+id/mode_email" android:rowEdgeFlags="bottom"> - <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" + <Row android:keyboardMode="@+id/mode_url" android:rowEdgeFlags="bottom"> + <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe" - android:keyWidth="15%p"/> - <Key android:keyLabel="\@" android:keyWidth="15%p"/> - <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + <Key android:keyLabel="/" android:keyWidth="10%p"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" android:iconPreview="@drawable/sym_keyboard_feedback_space" - android:keyWidth="15%p" android:isRepeatable="true"/> + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:keyLabel="@string/popular_domain_0" + android:keyOutputText="@string/popular_domain_0" + android:popupKeyboard="@xml/popup_domains" + android:keyWidth="20%p"/> <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" - android:keyWidth="15%p"/> + android:keyWidth="10%p"/> <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" android:iconPreview="@drawable/sym_keyboard_feedback_return" android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> - <Row android:keyboardMode="@+id/mode_im" android:rowEdgeFlags="bottom"> + <Row android:keyboardMode="@+id/mode_url_voice" android:rowEdgeFlags="bottom"> <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe" - android:keyWidth="10%p"/> + <Key android:keyLabel="/" android:keyWidth="10%p"/> <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" android:iconPreview="@drawable/sym_keyboard_feedback_space" - android:keyWidth="40%p" android:isRepeatable="true"/> - <Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:keyLabel="@string/popular_domain_0" + android:keyOutputText="@string/popular_domain_0" + android:popupKeyboard="@xml/popup_domains" + android:keyWidth="20%p"/> + <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" android:keyWidth="10%p"/> - <Key android:keyLabel=":-)" android:keyOutputText=":-) " - android:popupKeyboard="@xml/popup_smileys" + <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" + android:iconPreview="@drawable/sym_keyboard_feedback_return" android:keyWidth="20%p" android:keyEdgeFlags="right"/> - </Row> - <Row android:keyboardMode="@+id/mode_normal_voice" android:rowEdgeFlags="bottom"> - <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" + <Row android:keyboardMode="@+id/mode_email" android:rowEdgeFlags="bottom"> + <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic" - android:iconPreview="@drawable/sym_keyboard_feedback_mic" - android:keyWidth="10%p"/> - <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + <Key android:keyLabel="\@"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" android:iconPreview="@drawable/sym_keyboard_feedback_space" - android:keyWidth="40%p" android:isRepeatable="true"/> - <Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" - android:keyWidth="10%p"/> - <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:keyLabel="@string/popular_domain_0" + android:keyOutputText="@string/popular_domain_0" + android:popupKeyboard="@xml/popup_domains" + android:keyWidth="20%p"/> + <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"/> + <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" android:iconPreview="@drawable/sym_keyboard_feedback_return" android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> - <Row android:keyboardMode="@+id/mode_url_voice" android:rowEdgeFlags="bottom"> + <Row android:keyboardMode="@+id/mode_email_voice" android:rowEdgeFlags="bottom"> <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> + <Key android:keyLabel="\@"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + android:iconPreview="@drawable/sym_keyboard_feedback_space" + android:keyWidth="20%p" android:isRepeatable="true"/> <Key android:keyLabel="@string/popular_domain_0" android:keyOutputText="@string/popular_domain_0" android:popupKeyboard="@xml/popup_domains" - android:keyWidth="15%p"/> - <Key android:keyLabel="/" android:keyWidth="15%p"/> - <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" - android:iconPreview="@drawable/sym_keyboard_feedback_space" - android:keyWidth="15%p" android:isRepeatable="true"/> - <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" - android:keyWidth="15%p"/> + android:keyWidth="20%p"/> + <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"/> <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" android:iconPreview="@drawable/sym_keyboard_feedback_return" android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> - <Row android:keyboardMode="@+id/mode_email_voice" android:rowEdgeFlags="bottom"> + <Row android:keyboardMode="@+id/mode_im" android:rowEdgeFlags="bottom"> <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:keyLabel="\@" android:keyWidth="15%p"/> - <Key android:keyLabel="@string/popular_domain_0" - android:keyOutputText="@string/popular_domain_0" - android:popupKeyboard="@xml/popup_domains" - android:keyWidth="15%p"/> + <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe" + android:keyWidth="10%p"/> <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" android:iconPreview="@drawable/sym_keyboard_feedback_space" - android:keyWidth="15%p" android:isRepeatable="true"/> - <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" - android:keyWidth="15%p"/> - <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" - android:iconPreview="@drawable/sym_keyboard_feedback_return" + android:keyWidth="40%p" android:isRepeatable="true"/> + <Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" + android:keyWidth="10%p"/> + <Key android:keyLabel=":-)" android:keyOutputText=":-) " + android:popupKeyboard="@xml/popup_smileys" android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> @@ -229,7 +230,7 @@ android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic" + <Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic" android:iconPreview="@drawable/sym_keyboard_feedback_mic" android:keyWidth="10%p"/> <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" @@ -242,4 +243,42 @@ android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> + <Row android:keyboardMode="@+id/mode_webentry" android:rowEdgeFlags="bottom"> + <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" + android:popupKeyboard="@xml/kbd_popup_template" + android:popupCharacters="_" + android:keyWidth="20%p" android:keyEdgeFlags="left"/> + <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe" + android:keyWidth="10%p"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + android:iconPreview="@drawable/sym_keyboard_feedback_space" + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:codes="9" android:keyIcon="@drawable/sym_keyboard_tab" + android:iconPreview="@drawable/sym_keyboard_feedback_tab" + android:keyWidth="20%p"/> + <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"/> + <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" + android:iconPreview="@drawable/sym_keyboard_feedback_return" + android:keyWidth="20%p" android:keyEdgeFlags="right"/> + </Row> + + <Row android:keyboardMode="@+id/mode_webentry_voice" android:rowEdgeFlags="bottom"> + <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" + android:popupKeyboard="@xml/kbd_popup_template" + android:popupCharacters="_" + android:keyWidth="20%p" android:keyEdgeFlags="left"/> + <Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic" + android:iconPreview="@drawable/sym_keyboard_feedback_mic" + android:keyWidth="10%p"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + android:iconPreview="@drawable/sym_keyboard_feedback_space" + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:codes="9" android:keyIcon="@drawable/sym_keyboard_tab" + android:iconPreview="@drawable/sym_keyboard_feedback_tab" + android:keyWidth="20%p"/> + <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"/> + <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" + android:iconPreview="@drawable/sym_keyboard_feedback_return" + android:keyWidth="20%p" android:keyEdgeFlags="right"/> + </Row> </Keyboard> diff --git a/res/xml-fr/kbd_qwerty.xml b/res/xml-fr/kbd_qwerty.xml index fef260d1da..7abe18eb23 100644 --- a/res/xml-fr/kbd_qwerty.xml +++ b/res/xml-fr/kbd_qwerty.xml @@ -100,128 +100,130 @@ <Row android:keyboardMode="@+id/mode_normal" android:rowEdgeFlags="bottom"> <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" android:popupKeyboard="@xml/kbd_popup_template" - android:popupCharacters="" + android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe" android:keyWidth="10%p"/> - <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" android:iconPreview="@drawable/sym_keyboard_feedback_space" android:keyWidth="40%p" android:isRepeatable="true"/> <Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" android:keyWidth="10%p"/> - <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" + <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" android:iconPreview="@drawable/sym_keyboard_feedback_return" android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> - <Row android:keyboardMode="@+id/mode_url" android:rowEdgeFlags="bottom"> + <Row android:keyboardMode="@+id/mode_normal_voice" android:rowEdgeFlags="bottom"> <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" android:popupKeyboard="@xml/kbd_popup_template" - android:popupCharacters="" + android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe" - android:keyWidth="15%p"/> - <Key android:keyLabel="/" android:keyWidth="15%p"/> + <Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic" + android:iconPreview="@drawable/sym_keyboard_feedback_mic" + android:keyWidth="10%p"/> <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" android:iconPreview="@drawable/sym_keyboard_feedback_space" - android:keyWidth="15%p" android:isRepeatable="true"/> - <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" - android:keyWidth="15%p"/> + android:keyWidth="40%p" android:isRepeatable="true"/> + <Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" + android:keyWidth="10%p"/> <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" android:iconPreview="@drawable/sym_keyboard_feedback_return" android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> - <Row android:keyboardMode="@+id/mode_email" android:rowEdgeFlags="bottom"> - <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" + <Row android:keyboardMode="@+id/mode_url" android:rowEdgeFlags="bottom"> + <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" android:popupKeyboard="@xml/kbd_popup_template" - android:popupCharacters="" + android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe" - android:keyWidth="15%p"/> - <Key android:keyLabel="\@" android:keyWidth="15%p"/> - <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + <Key android:keyLabel="/" android:keyWidth="10%p"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" android:iconPreview="@drawable/sym_keyboard_feedback_space" - android:keyWidth="15%p" android:isRepeatable="true"/> + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:keyLabel="@string/popular_domain_0" + android:keyOutputText="@string/popular_domain_0" + android:popupKeyboard="@xml/popup_domains" + android:keyWidth="20%p"/> <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" - android:keyWidth="15%p"/> + android:keyWidth="10%p"/> <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" android:iconPreview="@drawable/sym_keyboard_feedback_return" android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> - <Row android:keyboardMode="@+id/mode_im" android:rowEdgeFlags="bottom"> + <Row android:keyboardMode="@+id/mode_url_voice" android:rowEdgeFlags="bottom"> <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" android:popupKeyboard="@xml/kbd_popup_template" - android:popupCharacters="" + android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe" - android:keyWidth="10%p"/> + <Key android:keyLabel="/" android:keyWidth="10%p"/> <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" android:iconPreview="@drawable/sym_keyboard_feedback_space" - android:keyWidth="40%p" android:isRepeatable="true"/> - <Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:keyLabel="@string/popular_domain_0" + android:keyOutputText="@string/popular_domain_0" + android:popupKeyboard="@xml/popup_domains" + android:keyWidth="20%p"/> + <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" android:keyWidth="10%p"/> - <Key android:keyLabel=":-)" android:keyOutputText=":-) " - android:popupKeyboard="@xml/popup_smileys" + <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" + android:iconPreview="@drawable/sym_keyboard_feedback_return" android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> - <Row android:keyboardMode="@+id/mode_normal_voice" android:rowEdgeFlags="bottom"> - <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" + <Row android:keyboardMode="@+id/mode_email" android:rowEdgeFlags="bottom"> + <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic" - android:iconPreview="@drawable/sym_keyboard_feedback_mic" - android:keyWidth="10%p"/> - <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + <Key android:keyLabel="\@"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" android:iconPreview="@drawable/sym_keyboard_feedback_space" - android:keyWidth="40%p" android:isRepeatable="true"/> - <Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" - android:keyWidth="10%p"/> - <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:keyLabel="@string/popular_domain_0" + android:keyOutputText="@string/popular_domain_0" + android:popupKeyboard="@xml/popup_domains" + android:keyWidth="20%p"/> + <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"/> + <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" android:iconPreview="@drawable/sym_keyboard_feedback_return" android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> - <Row android:keyboardMode="@+id/mode_url_voice" android:rowEdgeFlags="bottom"> + <Row android:keyboardMode="@+id/mode_email_voice" android:rowEdgeFlags="bottom"> <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> + <Key android:keyLabel="\@"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + android:iconPreview="@drawable/sym_keyboard_feedback_space" + android:keyWidth="20%p" android:isRepeatable="true"/> <Key android:keyLabel="@string/popular_domain_0" android:keyOutputText="@string/popular_domain_0" android:popupKeyboard="@xml/popup_domains" - android:keyWidth="15%p"/> - <Key android:keyLabel="/" android:keyWidth="15%p"/> - <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" - android:iconPreview="@drawable/sym_keyboard_feedback_space" - android:keyWidth="15%p" android:isRepeatable="true"/> - <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" - android:keyWidth="15%p"/> + android:keyWidth="20%p"/> + <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"/> <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" android:iconPreview="@drawable/sym_keyboard_feedback_return" android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> - <Row android:keyboardMode="@+id/mode_email_voice" android:rowEdgeFlags="bottom"> + <Row android:keyboardMode="@+id/mode_im" android:rowEdgeFlags="bottom"> <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:keyLabel="\@" android:keyWidth="15%p"/> - <Key android:keyLabel="@string/popular_domain_0" - android:keyOutputText="@string/popular_domain_0" - android:popupKeyboard="@xml/popup_domains" - android:keyWidth="15%p"/> + <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe" + android:keyWidth="10%p"/> <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" android:iconPreview="@drawable/sym_keyboard_feedback_space" - android:keyWidth="15%p" android:isRepeatable="true"/> - <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" - android:keyWidth="15%p"/> - <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" - android:iconPreview="@drawable/sym_keyboard_feedback_return" + android:keyWidth="40%p" android:isRepeatable="true"/> + <Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" + android:keyWidth="10%p"/> + <Key android:keyLabel=":-)" android:keyOutputText=":-) " + android:popupKeyboard="@xml/popup_smileys" android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> @@ -230,7 +232,7 @@ android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic" + <Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic" android:iconPreview="@drawable/sym_keyboard_feedback_mic" android:keyWidth="10%p"/> <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" @@ -242,5 +244,45 @@ android:popupKeyboard="@xml/popup_smileys" android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> + + <Row android:keyboardMode="@+id/mode_webentry" android:rowEdgeFlags="bottom"> + <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" + android:popupKeyboard="@xml/kbd_popup_template" + android:popupCharacters="_" + android:keyWidth="20%p" android:keyEdgeFlags="left"/> + <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe" + android:keyWidth="10%p"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + android:iconPreview="@drawable/sym_keyboard_feedback_space" + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:codes="9" android:keyIcon="@drawable/sym_keyboard_tab" + android:iconPreview="@drawable/sym_keyboard_feedback_tab" + android:keyWidth="20%p"/> + <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"/> + <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" + android:iconPreview="@drawable/sym_keyboard_feedback_return" + android:keyWidth="20%p" android:keyEdgeFlags="right"/> + </Row> + + <Row android:keyboardMode="@+id/mode_webentry_voice" android:rowEdgeFlags="bottom"> + <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" + android:popupKeyboard="@xml/kbd_popup_template" + android:popupCharacters="_" + android:keyWidth="20%p" android:keyEdgeFlags="left"/> + <Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic" + android:iconPreview="@drawable/sym_keyboard_feedback_mic" + android:keyWidth="10%p"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + android:iconPreview="@drawable/sym_keyboard_feedback_space" + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:codes="9" android:keyIcon="@drawable/sym_keyboard_tab" + android:iconPreview="@drawable/sym_keyboard_feedback_tab" + android:keyWidth="20%p"/> + <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"/> + <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" + android:iconPreview="@drawable/sym_keyboard_feedback_return" + android:keyWidth="20%p" android:keyEdgeFlags="right"/> + </Row> + </Keyboard> diff --git a/res/xml-ru/kbd_qwerty.xml b/res/xml-ru/kbd_qwerty.xml index 9a42d421c6..8a3a59229d 100755 --- a/res/xml-ru/kbd_qwerty.xml +++ b/res/xml-ru/kbd_qwerty.xml @@ -96,37 +96,97 @@ android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> + <Row android:keyboardMode="@+id/mode_normal_voice" android:rowEdgeFlags="bottom"> + <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" + android:popupKeyboard="@xml/kbd_popup_template" + android:popupCharacters="_" + android:keyWidth="20%p" android:keyEdgeFlags="left"/> + <Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic" + android:iconPreview="@drawable/sym_keyboard_feedback_mic" + android:keyWidth="10%p"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + android:iconPreview="@drawable/sym_keyboard_feedback_space" + android:keyWidth="40%p" android:isRepeatable="true"/> + <Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" + android:keyWidth="10%p"/> + <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" + android:iconPreview="@drawable/sym_keyboard_feedback_return" + android:keyWidth="20%p" android:keyEdgeFlags="right"/> + </Row> + <Row android:keyboardMode="@+id/mode_url" android:rowEdgeFlags="bottom"> <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe" - android:keyWidth="15%p"/> - <Key android:keyLabel="/" android:keyWidth="15%p"/> + <Key android:keyLabel="/" android:keyWidth="10%p"/> <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" android:iconPreview="@drawable/sym_keyboard_feedback_space" - android:keyWidth="15%p" android:isRepeatable="true"/> + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:keyLabel="@string/popular_domain_0" + android:keyOutputText="@string/popular_domain_0" + android:popupKeyboard="@xml/popup_domains" + android:keyWidth="20%p"/> <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" - android:keyWidth="15%p"/> + android:keyWidth="10%p"/> <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" android:iconPreview="@drawable/sym_keyboard_feedback_return" android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> - <Row android:keyboardMode="@+id/mode_email" android:rowEdgeFlags="bottom"> + <Row android:keyboardMode="@+id/mode_url_voice" android:rowEdgeFlags="bottom"> <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe" - android:keyWidth="15%p"/> - <Key android:keyLabel="\@" android:keyWidth="15%p"/> + <Key android:keyLabel="/" android:keyWidth="10%p"/> <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" android:iconPreview="@drawable/sym_keyboard_feedback_space" - android:keyWidth="15%p" android:isRepeatable="true"/> + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:keyLabel="@string/popular_domain_0" + android:keyOutputText="@string/popular_domain_0" + android:popupKeyboard="@xml/popup_domains" + android:keyWidth="20%p"/> <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" - android:keyWidth="15%p"/> + android:keyWidth="10%p"/> + <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" + android:iconPreview="@drawable/sym_keyboard_feedback_return" + android:keyWidth="20%p" android:keyEdgeFlags="right"/> + </Row> + + <Row android:keyboardMode="@+id/mode_email" android:rowEdgeFlags="bottom"> + <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" + android:popupKeyboard="@xml/kbd_popup_template" + android:popupCharacters="_" + android:keyWidth="20%p" android:keyEdgeFlags="left"/> + <Key android:keyLabel="\@" android:keyWidth="10%p"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + android:iconPreview="@drawable/sym_keyboard_feedback_space" + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:keyLabel="@string/popular_domain_0" + android:keyOutputText="@string/popular_domain_0" + android:popupKeyboard="@xml/popup_domains" + android:keyWidth="20%p"/> + <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"/> + <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" + android:iconPreview="@drawable/sym_keyboard_feedback_return" + android:keyWidth="20%p" android:keyEdgeFlags="right"/> + </Row> + + <Row android:keyboardMode="@+id/mode_email_voice" android:rowEdgeFlags="bottom"> + <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" + android:popupKeyboard="@xml/kbd_popup_template" + android:popupCharacters="_" + android:keyWidth="20%p" android:keyEdgeFlags="left"/> + <Key android:keyLabel="\@" android:keyWidth="10%p"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + android:iconPreview="@drawable/sym_keyboard_feedback_space" + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:keyLabel="@string/popular_domain_0" + android:keyOutputText="@string/popular_domain_0" + android:popupKeyboard="@xml/popup_domains" + android:keyWidth="20%p"/> + <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"/> <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" android:iconPreview="@drawable/sym_keyboard_feedback_return" android:keyWidth="20%p" android:keyEdgeFlags="right"/> @@ -148,5 +208,63 @@ android:popupKeyboard="@xml/popup_smileys" android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> + + <Row android:keyboardMode="@+id/mode_im_voice" android:rowEdgeFlags="bottom"> + <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" + android:popupKeyboard="@xml/kbd_popup_template" + android:popupCharacters="_" + android:keyWidth="20%p" android:keyEdgeFlags="left"/> + <Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic" + android:iconPreview="@drawable/sym_keyboard_feedback_mic" + android:keyWidth="10%p"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + android:iconPreview="@drawable/sym_keyboard_feedback_space" + android:keyWidth="40%p" android:isRepeatable="true"/> + <Key android:codes="46" android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" + android:keyWidth="10%p"/> + <Key android:keyLabel=":-)" android:keyOutputText=":-) " + android:popupKeyboard="@xml/popup_smileys" + android:keyWidth="20%p" android:keyEdgeFlags="right"/> + </Row> + + <Row android:keyboardMode="@+id/mode_webentry" android:rowEdgeFlags="bottom"> + <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" + android:popupKeyboard="@xml/kbd_popup_template" + android:popupCharacters="_" + android:keyWidth="20%p" android:keyEdgeFlags="left"/> + <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe" + android:keyWidth="10%p"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + android:iconPreview="@drawable/sym_keyboard_feedback_space" + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:codes="9" android:keyIcon="@drawable/sym_keyboard_tab" + android:iconPreview="@drawable/sym_keyboard_feedback_tab" + android:keyWidth="20%p"/> + <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"/> + <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" + android:iconPreview="@drawable/sym_keyboard_feedback_return" + android:keyWidth="20%p" android:keyEdgeFlags="right"/> + </Row> + + <Row android:keyboardMode="@+id/mode_webentry_voice" android:rowEdgeFlags="bottom"> + <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" + android:popupKeyboard="@xml/kbd_popup_template" + android:popupCharacters="_" + android:keyWidth="20%p" android:keyEdgeFlags="left"/> + <Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic" + android:iconPreview="@drawable/sym_keyboard_feedback_mic" + android:keyWidth="10%p"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + android:iconPreview="@drawable/sym_keyboard_feedback_space" + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:codes="9" android:keyIcon="@drawable/sym_keyboard_tab" + android:iconPreview="@drawable/sym_keyboard_feedback_tab" + android:keyWidth="20%p"/> + <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"/> + <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" + android:iconPreview="@drawable/sym_keyboard_feedback_return" + android:keyWidth="20%p" android:keyEdgeFlags="right"/> + </Row> + </Keyboard> diff --git a/res/xml/kbd_qwerty.xml b/res/xml/kbd_qwerty.xml index 552e7e5440..e0fe5cdc32 100755 --- a/res/xml/kbd_qwerty.xml +++ b/res/xml/kbd_qwerty.xml @@ -128,7 +128,7 @@ android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic" + <Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic" android:iconPreview="@drawable/sym_keyboard_feedback_mic" android:keyWidth="10%p"/> <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" @@ -146,18 +146,16 @@ android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe" - android:keyWidth="15%p"/> - <!--Key android:keyLabel="@string/popular_domain_0" - android:keyOutputText="@string/popular_domain_0" - android:popupKeyboard="@xml/popup_domains" - android:keyWidth="15%p"/--> - <Key android:keyLabel="/" android:keyWidth="15%p"/> + <Key android:keyLabel="/" android:keyWidth="10%p"/> <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" android:iconPreview="@drawable/sym_keyboard_feedback_space" - android:keyWidth="15%p" android:isRepeatable="true"/> + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:keyLabel="@string/popular_domain_0" + android:keyOutputText="@string/popular_domain_0" + android:popupKeyboard="@xml/popup_domains" + android:keyWidth="20%p"/> <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" - android:keyWidth="15%p"/> + android:keyWidth="10%p"/> <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" android:iconPreview="@drawable/sym_keyboard_feedback_return" android:keyWidth="20%p" android:keyEdgeFlags="right"/> @@ -168,16 +166,16 @@ android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> + <Key android:keyLabel="/" android:keyWidth="10%p"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + android:iconPreview="@drawable/sym_keyboard_feedback_space" + android:keyWidth="20%p" android:isRepeatable="true"/> <Key android:keyLabel="@string/popular_domain_0" android:keyOutputText="@string/popular_domain_0" android:popupKeyboard="@xml/popup_domains" - android:keyWidth="15%p"/> - <Key android:keyLabel="/" android:keyWidth="15%p"/> - <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" - android:iconPreview="@drawable/sym_keyboard_feedback_space" - android:keyWidth="15%p" android:isRepeatable="true"/> + android:keyWidth="20%p"/> <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" - android:keyWidth="15%p"/> + android:keyWidth="10%p"/> <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" android:iconPreview="@drawable/sym_keyboard_feedback_return" android:keyWidth="20%p" android:keyEdgeFlags="right"/> @@ -188,18 +186,15 @@ android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe" - android:keyWidth="15%p"/> - <Key android:keyLabel="\@" android:keyWidth="15%p"/> - <!--Key android:keyLabel="@string/popular_domain_0" - android:keyOutputText="@string/popular_domain_0" - android:popupKeyboard="@xml/popup_domains" - android:keyWidth="15%p"/--> + <Key android:keyLabel="\@"/> <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" android:iconPreview="@drawable/sym_keyboard_feedback_space" - android:keyWidth="15%p" android:isRepeatable="true"/> - <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" - android:keyWidth="15%p"/> + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:keyLabel="@string/popular_domain_0" + android:keyOutputText="@string/popular_domain_0" + android:popupKeyboard="@xml/popup_domains" + android:keyWidth="20%p"/> + <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"/> <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" android:iconPreview="@drawable/sym_keyboard_feedback_return" android:keyWidth="20%p" android:keyEdgeFlags="right"/> @@ -210,16 +205,15 @@ android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:keyLabel="\@" android:keyWidth="15%p"/> + <Key android:keyLabel="\@"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + android:iconPreview="@drawable/sym_keyboard_feedback_space" + android:keyWidth="20%p" android:isRepeatable="true"/> <Key android:keyLabel="@string/popular_domain_0" android:keyOutputText="@string/popular_domain_0" android:popupKeyboard="@xml/popup_domains" - android:keyWidth="15%p"/> - <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" - android:iconPreview="@drawable/sym_keyboard_feedback_space" - android:keyWidth="15%p" android:isRepeatable="true"/> - <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation" - android:keyWidth="15%p"/> + android:keyWidth="20%p"/> + <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"/> <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" android:iconPreview="@drawable/sym_keyboard_feedback_return" android:keyWidth="20%p" android:keyEdgeFlags="right"/> @@ -247,7 +241,7 @@ android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="_" android:keyWidth="20%p" android:keyEdgeFlags="left"/> - <Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic" + <Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic" android:iconPreview="@drawable/sym_keyboard_feedback_mic" android:keyWidth="10%p"/> <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" @@ -259,5 +253,45 @@ android:popupKeyboard="@xml/popup_smileys" android:keyWidth="20%p" android:keyEdgeFlags="right"/> </Row> + + <Row android:keyboardMode="@+id/mode_webentry" android:rowEdgeFlags="bottom"> + <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" + android:popupKeyboard="@xml/kbd_popup_template" + android:popupCharacters="_" + android:keyWidth="20%p" android:keyEdgeFlags="left"/> + <Key android:codes="@integer/key_f1" android:keyIcon="@drawable/sym_keyboard_globe" + android:keyWidth="10%p"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + android:iconPreview="@drawable/sym_keyboard_feedback_space" + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:codes="9" android:keyIcon="@drawable/sym_keyboard_tab" + android:iconPreview="@drawable/sym_keyboard_feedback_tab" + android:keyWidth="20%p"/> + <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"/> + <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" + android:iconPreview="@drawable/sym_keyboard_feedback_return" + android:keyWidth="20%p" android:keyEdgeFlags="right"/> + </Row> + + <Row android:keyboardMode="@+id/mode_webentry_voice" android:rowEdgeFlags="bottom"> + <Key android:codes="-2" android:keyLabel="@string/label_symbol_key" + android:popupKeyboard="@xml/kbd_popup_template" + android:popupCharacters="_" + android:keyWidth="20%p" android:keyEdgeFlags="left"/> + <Key android:codes="-102" android:keyIcon="@drawable/sym_keyboard_mic" + android:iconPreview="@drawable/sym_keyboard_feedback_mic" + android:keyWidth="10%p"/> + <Key android:codes="32" android:keyIcon="@drawable/sym_keyboard_space" + android:iconPreview="@drawable/sym_keyboard_feedback_space" + android:keyWidth="20%p" android:isRepeatable="true"/> + <Key android:codes="9" android:keyIcon="@drawable/sym_keyboard_tab" + android:iconPreview="@drawable/sym_keyboard_feedback_tab" + android:keyWidth="20%p"/> + <Key android:keyLabel="." android:popupKeyboard="@xml/popup_punctuation"/> + <Key android:codes="10" android:keyIcon="@drawable/sym_keyboard_return" + android:iconPreview="@drawable/sym_keyboard_feedback_return" + android:keyWidth="20%p" android:keyEdgeFlags="right"/> + </Row> + </Keyboard> diff --git a/src/com/android/inputmethod/latin/KeyboardSwitcher.java b/src/com/android/inputmethod/latin/KeyboardSwitcher.java index aa52c03810..45d0a1e126 100644 --- a/src/com/android/inputmethod/latin/KeyboardSwitcher.java +++ b/src/com/android/inputmethod/latin/KeyboardSwitcher.java @@ -33,6 +33,7 @@ public class KeyboardSwitcher { public static final int MODE_URL = 4; public static final int MODE_EMAIL = 5; public static final int MODE_IM = 6; + public static final int MODE_WEB = 7; public static final int MODE_TEXT_QWERTY = 0; public static final int MODE_TEXT_ALPHA = 1; @@ -42,6 +43,7 @@ public class KeyboardSwitcher { public static final int KEYBOARDMODE_URL = R.id.mode_url; public static final int KEYBOARDMODE_EMAIL = R.id.mode_email; public static final int KEYBOARDMODE_IM = R.id.mode_im; + public static final int KEYBOARDMODE_WEB = R.id.mode_webentry; private static final int SYMBOLS_MODE_STATE_NONE = 0; private static final int SYMBOLS_MODE_STATE_BEGIN = 1; @@ -52,7 +54,8 @@ public class KeyboardSwitcher { KEYBOARDMODE_NORMAL, KEYBOARDMODE_URL, KEYBOARDMODE_EMAIL, - KEYBOARDMODE_IM}; + KEYBOARDMODE_IM, + KEYBOARDMODE_WEB}; //LatinIME mContext; Context mContext; @@ -91,6 +94,7 @@ public class KeyboardSwitcher { mModeToVoice.put(R.id.mode_url, R.id.mode_url_voice); mModeToVoice.put(R.id.mode_email, R.id.mode_email_voice); mModeToVoice.put(R.id.mode_im, R.id.mode_im_voice); + mModeToVoice.put(R.id.mode_webentry, R.id.mode_webentry_voice); mInputMethodService = ims; } @@ -212,10 +216,12 @@ public class KeyboardSwitcher { || id.mKeyboardMode == KEYBOARDMODE_URL || id.mKeyboardMode == KEYBOARDMODE_IM || id.mKeyboardMode == KEYBOARDMODE_EMAIL + || id.mKeyboardMode == KEYBOARDMODE_WEB || id.mKeyboardMode == R.id.mode_normal_voice || id.mKeyboardMode == R.id.mode_url_voice || id.mKeyboardMode == R.id.mode_im_voice || id.mKeyboardMode == R.id.mode_email_voice + || id.mKeyboardMode == R.id.mode_webentry_voice ) { keyboard.setExtension(R.xml.kbd_extension); } @@ -255,6 +261,8 @@ public class KeyboardSwitcher { return new KeyboardId(R.xml.kbd_qwerty, KEYBOARDMODE_EMAIL, true); case MODE_IM: return new KeyboardId(R.xml.kbd_qwerty, KEYBOARDMODE_IM, true); + case MODE_WEB: + return new KeyboardId(R.xml.kbd_qwerty, KEYBOARDMODE_WEB, true); } return null; } diff --git a/src/com/android/inputmethod/latin/LatinIME.java b/src/com/android/inputmethod/latin/LatinIME.java index a9a61c3a2b..7eecfb9b94 100644 --- a/src/com/android/inputmethod/latin/LatinIME.java +++ b/src/com/android/inputmethod/latin/LatinIME.java @@ -502,6 +502,8 @@ public class LatinIME extends InputMethodService } else if (variation == EditorInfo.TYPE_TEXT_VARIATION_FILTER) { mPredictionOn = false; } else if (variation == EditorInfo.TYPE_TEXT_VARIATION_WEB_EDIT_TEXT) { + mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_WEB, + attribute.imeOptions, mEnableVoiceButton); // If it's a browser edit field and auto correct is not ON explicitly, then // disable auto correction, but keep suggestions on. if ((attribute.inputType & EditorInfo.TYPE_TEXT_FLAG_AUTO_CORRECT) == 0) { @@ -915,6 +917,9 @@ public class LatinIME extends InputMethodService startListening(false /* was a button press, was not a swipe */); } break; + case 9 /*Tab*/: + sendKeyChar((char) primaryCode); + break; default: if (isWordSeparator(primaryCode)) { handleSeparator(primaryCode); diff --git a/src/com/android/inputmethod/latin/LatinKeyboard.java b/src/com/android/inputmethod/latin/LatinKeyboard.java index f5748f4153..df38358d6b 100644 --- a/src/com/android/inputmethod/latin/LatinKeyboard.java +++ b/src/com/android/inputmethod/latin/LatinKeyboard.java @@ -261,11 +261,11 @@ public class LatinKeyboard extends Keyboard { Paint paint = new Paint(); paint.setAntiAlias(true); // TODO: Make the text size a customizable attribute - paint.setTextSize(22); + paint.setTextSize(18); paint.setTextAlign(Align.CENTER); // Draw a drop shadow for the text paint.setShadowLayer(1f, 0, 0, 0xFF000000); - paint.setColor(0x80C0C0C0); + paint.setColor(0xFF808080); canvas.drawText(mLocale.getDisplayLanguage(mLocale), buffer.getWidth() / 2, - paint.ascent() + 2, paint); int x = (buffer.getWidth() - mSpaceIcon.getIntrinsicWidth()) / 2; -- GitLab