From 090b561004c71b05d585897c9e233c7338a9fee2 Mon Sep 17 00:00:00 2001 From: falkTX Date: Tue, 25 Feb 2014 14:49:40 +0000 Subject: [PATCH] Add keyboard artwork, thanks thorwil --- resources/bitmaps/keyboard/black_hover.png | Bin 0 -> 1289 bytes resources/bitmaps/keyboard/black_normal.png | Bin 0 -> 1513 bytes resources/bitmaps/keyboard/black_on_blue.png | Bin 0 -> 1848 bytes resources/bitmaps/keyboard/black_on_green.png | Bin 0 -> 1841 bytes .../bitmaps/keyboard/black_on_orange.png | Bin 0 -> 1827 bytes resources/bitmaps/keyboard/black_on_red.png | Bin 0 -> 1786 bytes resources/bitmaps/keyboard/export.sh | 26 + resources/bitmaps/keyboard/keyboard.svg | 32210 ++++++++++++++++ .../bitmaps/keyboard/white_bright_hover.png | Bin 0 -> 1460 bytes .../bitmaps/keyboard/white_bright_normal.png | Bin 0 -> 1791 bytes .../bitmaps/keyboard/white_bright_on_blue.png | Bin 0 -> 4301 bytes .../keyboard/white_bright_on_green.png | Bin 0 -> 4412 bytes .../keyboard/white_bright_on_orange.png | Bin 0 -> 4239 bytes .../bitmaps/keyboard/white_bright_on_red.png | Bin 0 -> 3889 bytes .../bitmaps/keyboard/white_dark_hover.png | Bin 0 -> 1908 bytes .../bitmaps/keyboard/white_dark_normal.png | Bin 0 -> 1849 bytes .../bitmaps/keyboard/white_dark_on_blue.png | Bin 0 -> 4428 bytes .../bitmaps/keyboard/white_dark_on_green.png | Bin 0 -> 4490 bytes .../bitmaps/keyboard/white_dark_on_orange.png | Bin 0 -> 4110 bytes .../bitmaps/keyboard/white_dark_on_red.png | Bin 0 -> 3901 bytes 20 files changed, 32236 insertions(+) create mode 100644 resources/bitmaps/keyboard/black_hover.png create mode 100644 resources/bitmaps/keyboard/black_normal.png create mode 100644 resources/bitmaps/keyboard/black_on_blue.png create mode 100644 resources/bitmaps/keyboard/black_on_green.png create mode 100644 resources/bitmaps/keyboard/black_on_orange.png create mode 100644 resources/bitmaps/keyboard/black_on_red.png create mode 100755 resources/bitmaps/keyboard/export.sh create mode 100644 resources/bitmaps/keyboard/keyboard.svg create mode 100644 resources/bitmaps/keyboard/white_bright_hover.png create mode 100644 resources/bitmaps/keyboard/white_bright_normal.png create mode 100644 resources/bitmaps/keyboard/white_bright_on_blue.png create mode 100644 resources/bitmaps/keyboard/white_bright_on_green.png create mode 100644 resources/bitmaps/keyboard/white_bright_on_orange.png create mode 100644 resources/bitmaps/keyboard/white_bright_on_red.png create mode 100644 resources/bitmaps/keyboard/white_dark_hover.png create mode 100644 resources/bitmaps/keyboard/white_dark_normal.png create mode 100644 resources/bitmaps/keyboard/white_dark_on_blue.png create mode 100644 resources/bitmaps/keyboard/white_dark_on_green.png create mode 100644 resources/bitmaps/keyboard/white_dark_on_orange.png create mode 100644 resources/bitmaps/keyboard/white_dark_on_red.png diff --git a/resources/bitmaps/keyboard/black_hover.png b/resources/bitmaps/keyboard/black_hover.png new file mode 100644 index 0000000000000000000000000000000000000000..2cc67f48e639cd6e9f83a744a44d3fbd96758d15 GIT binary patch literal 1289 zcmeAS@N?(olHy`uVBq!ia0vp^D}mUGgAGWYR9gP2NC6FM^K@|x zshIP2&i%Yc7Ba2tU zJ5$1ob9HIY>xljSU01jcJ)b8d6C`M?smgIEtzzz6$>jK`wbxXi+oboLjFoGPic6RoT z#}e)B?G~1njL-A!9XS*W%FEf$e>RwZp7B6(PwA2=E6>`6#+-ku+~+)Z=9gegiF1~_ z?&>|VIQH?QVP9V#1HUE2e;h4lE zm4io*vK}&UnYGO0^8LpghXn#f9=>|T)w9w3chtM!qhDis0hdBMO-(Q#&_4Q+A**D=a*Jo-kbgK#i6e;E0&1;3@Nk~*IMZc3WHX!tcm`j*NZblJY#pS zy3z{N{p{5|!?2%yt9~&#O|AjCloRL%wgOx6S)RJ!knWx7d7XW;<%3VzF;>h*Z$W*=r z&+vWtZR|N~*@s&BdC&LWoOW9El1Zz8)9EYwUow9<_Wbw0u=(o>^PVlLo)c=vpdDXX zz0vP}j@jxzze|2*onJEVx#DS~BZWPF>Az)HI|?Ki&0OPj`R(m5degmg?Lto#^076a ziYe(Up1%H%?fGIA&qY_Kr$#=#zx;Ig>LooJmChIIpD%U^4Efpj^84?Kii!h8J6V#~ z1jN>_I(0p7`}aq|OJ$Y|FeOTa*{#3-KG{Yt`}ERN;m?F!CtiE};nOE3&8NHnc$fTq zHRl~SgZ;Yo>$?>=6qdFKJi2Q(|GZ*L!~5S7y>6@x^6P(ReVn>JUgT)j3$MHP>ox*6GyQ`L^JK3x60=Y7vco`ySH z4UZX}|Gba+2iJqmZ|zPU<(oexsP^UY>#eK*1>BO{5gMa$dIl)Me|9`xP_wIk>fewX zUzeY9@cj);6w~`H__m5&WDR@2#{b7wiO{R5F^%!7SN;v&ZU9N3p7C!d2_4zD^6&YY zrW@uVL5HeVENS@~;K})V;UuAJ&Z??w+P%CY_@_?UAg867XiKt!&-#a%w$xUMCG-P} OEe20lKbLh*2~7aUzI09i literal 0 HcmV?d00001 diff --git a/resources/bitmaps/keyboard/black_normal.png b/resources/bitmaps/keyboard/black_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..9b89fca345bd27d36ddb3ec4b70245119e58d4fe GIT binary patch literal 1513 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 aVTB4D8_`AadjS6TCIGT_w5qf8!Tk>?->*#o literal 0 HcmV?d00001 diff --git a/resources/bitmaps/keyboard/black_on_orange.png b/resources/bitmaps/keyboard/black_on_orange.png new file mode 100644 index 0000000000000000000000000000000000000000..b5bc9f2bad8a0edcd7086d8907609513c4df3578 GIT binary patch literal 1827 zcmb_di8tHX9uLzHG_?#hB_mCz)bcES#h`|usa@1wZDZ%@ZwRp@h^5AeQjd1%VtGML zN`f$|(;;ZAZD_RiCaBu-+9E>4R{HWd=luomp7Xumb3f;vb3e;D-+SBL%^oVNCJO?A zppFigJjA_LTow>1@jh@asY~3B#o0P~LBxv)3C$6oWnvtz#)5|UkZW)VudZ1e#e zHI0;zalfxg8wrsG8ht<-$1@JK@cI#&)hRv|jhS~d&Ii^pWhYL)!Q^nyy89uL!?2)3 zDi+o!997+dj{#tSIjd9G>&G0;`>i6E&^y~?Izyd|4}~x)w_z6zb*lR^Ol*U|Ym;5U z`9G_^xy;Oy{8yJOyC*ffOFeg}X=6BgN$xv!=rtKXV7{hynyO34=iUjdi>B<`tYy!| zEi;}z@|rsb9haqa%zZmkBD&&|nw&#+GRAXFu-aDrY-hRJVl$6Bqa*G8Ij0?_Pif|0 zfDol@uZg4gW3{I1(RU>5kVccq`ybkaArsuQp%h@oo%ql42Z;%WzAmF99g4l9KRBUe zHlKE$FT;seN`6!(hwwB>UUvfj4FCS}aY{##C$#CC1og;Dvm5J&q=bdz+4&z>k`^F^ zH=JemKX9=Y3x~1ZMij4j-?(muy^MxkVUGTAvn>^08vH*q-Wt6WVPBl)qHx#UNkCL~ zpV))*8^hrq4G$G;)*v3~^I(_+vp?z&z*_l`;{>b3SPg7^TB&fCOFx4+phr)Q``73l z@h7%+>UtMQ1#RRhLp8kLYt6YOxtfStr%c7RQw6{3=2py9YM36(rI5}vy{7CV33dYW zM2x?~k8}F}521ehdcYrq%_kgQgF)0T5sp^SRgEt2t&eU`cSPhDcq(RY)Un+jPD;{GiUXuO zdDpLvsb~H+Y06x7wd8#htaS~8thv9k<}dh**xhrVKl-~XnLi&HL(o6NU(T9!p)odb zHjy2V)Aa?z5gvc@ZmBXlSQo$3dWv(lni4`#RrWxuc?o(9 zA0kImf2Q8K)areI+-ESwGKX=~)!Vy%-6ckOW9RigaQlJqLd&8o+fa|nLM*}tkDFX5 z)Oo3Fa)BY|kd#G(@l=8Pw8SL#M-z?kaW%uSCvh4&(G3HA5iJe=v;kL3ewWG&V|u<3 z<5^GJ64JlNI5`-SJA`8+h5?F$65+{NIy`sw+g+4-KNzJ&GJ7Nt($d$2ztb}Yo)Or< zf(pqU7R*Yz#-MO^g-f6d~=JqVR(7*S;N&^^+>yoOIg4}Kb zjI*d&zFH6f+cRYGuxTBw+o?%> za%N4&RLGrs@Px=--dAQynlodhWNR!+MBjM~M=dC> zHcPcx0l`m?MwA%5r%@%xy}OyUZA9fKj}K|aQqd<|CJv`f>w+f9Snu<*1ZlJri?y4^ vLcIRej&o>Ero)EoX7otLw5|Uqv}>5jwO#UKI?0JYG>{|8?NWnnVCH`SnO2YV literal 0 HcmV?d00001 diff --git a/resources/bitmaps/keyboard/black_on_red.png b/resources/bitmaps/keyboard/black_on_red.png new file mode 100644 index 0000000000000000000000000000000000000000..0751df031323de1ac81d1c1eabb7b08f376a3231 GIT binary patch literal 1786 zcmb_d3s(}@7RK>0>ZpyD=5!q&n5kJdDsd~26kk{=YTzSBv{bm^s{}?V$#l#pb$k_$ zkJO-=1e2~_FcHz3GFzfd&KUWk6u2mMH8HNHXcuYbAKbInK6{;g&i>B#t-aSd*CN70 z%uRQh0ssK>P()yq*0*Twh_R7&9&{x?(K-VHJQQWD9eKtnRPEa293qaOJulueJ-Aza zt~U4$F({UJG7C%0Ih~yf$jQm^Je!$DNIrco)iWy_SHA$=1ppZ3ga-PfavT2BFqA3l zx4zOFpK{VFeyR%EZ?@-2`Wb`auU7ZB4@wONfPVI_tW~{t4>)#@jguh7r@v|}b!v%c zyd+k)^5QBsoXeo$u{(mSNC0?6>>oL~WF`**c4r=oh^Vn%Pu~a3_brw7LeXJXNd~rk zRKQ!*c|VJkzO>5p=pFenqrK{an3w?e@p))dwBDnK5Sy!-!|UgTh$7<(e9sp) z1L!VK(@piVNOKV;`uD4a51%t8pzO*I&Ip(<49n|${&Lz$3UU!7a{&^`WD?eAD-3RO zrA(`zDSjh!0`>x%G>>h6U{Dzh=RHy{5r&_XBHZ86MbIdoJNOr+(!7{l^ynf_$YR|V z%e{X3QG{5FGoW%x>C~lMVTeP%uv(ftGPmP$JhXlV&uiXt$XgO zrEj;7BE1+`kjNKA;Dsx-zpOF0U20H%QnAs=GN$)f!X(@VL@P2KE zFbic@)F~ZG11so`U~ISehVLY9Tvt~Z)S2W%fqC;ytsRwH>@L+(fB4K5**CH&%P1(7UR!ym86NCdFy@i zC8FEQd}M==W|_P{YQsVvl)&IgoH{sd+xUW2yCdw{N+M~I>-HUR-aZv&IZ7%oVcEah ziAl_}xTWxQO&IbmMUZjR;pJANB&3x_0nbovY2XKkH$-DgIkuJRqof->c#hA#g5wUK z_q6(=Y7-I$tQDE+`&4E~250VX?6zV|4VWw;jEo|0^M7>&mNL6SF+*Xp@Cm_tC4QE4 zwqEh=$mkhB>oePqg-D}jUNLuydq77~v@YGWnH*QOwkad&ro&TjxUPKOt_um{GV)bo zJbu5@?o=%rZLjk0{aj5bNCdg#;Q=h<*m%G(wH#(FIwe)I^S{P_WnDpa+PD^W(BMUM z@0j~Eq{a0~{KTJ5T46nMv%oFv1?_l$NXSzN*t3Vb_<^)DlBnB1PT2uB{QLKO%NeEq8%1ETfC)r?LuCX{T{MrpXWcb46Dc zR4RHO%J+2?W;1u$*?T_vf@b6IRSaM9v?%wwNuq8em zuUG0c=pEeuu=?J^gKSM$1u)mj~UX;)+G0rf?tVD;!Plvf4 zI~j4;&9r@A+Kmue<-5f<-8!&3{l)8rJ#J^#WF}GSpGSXd^Mln_p7=$kP)y1WlYiAF z;@GAwQ510`$Fh+vB7%T0XdqMnQ9{j4(Yu<&U93S0U!LBNsiP%6ApE46p?gW%jCUA% z+w1W21kLTMkGnK-yb1BxW1tvFdI?Rt~@CMM~!8G8*yQ`MmK}%}mKQ z@!fBldWRss6kADNNmH;|@I u=1M*s@#7Kp*CWlt9z~%0%m2^N+5vC$Txft40o49efY6}uz&3bN;r{@;1cVX* literal 0 HcmV?d00001 diff --git a/resources/bitmaps/keyboard/export.sh b/resources/bitmaps/keyboard/export.sh new file mode 100755 index 000000000..dc7c9b58a --- /dev/null +++ b/resources/bitmaps/keyboard/export.sh @@ -0,0 +1,26 @@ +# TODO: split flattable from non-flattable PNGs + +IDs=" +white_bright_normal +white_bright_hover +white_bright_on_red +white_bright_on_orange +white_bright_on_green +white_bright_on_blue +white_dark_normal +white_dark_hover +white_dark_on_red +white_dark_on_orange +white_dark_on_green +white_dark_on_blue +black_normal +black_hover +black_on_red +black_on_orange +black_on_green +black_on_blue +" + +for ID in $IDs; do + inkscape keyboard.svg --export-id=$ID --export-png=$ID.png +done diff --git a/resources/bitmaps/keyboard/keyboard.svg b/resources/bitmaps/keyboard/keyboard.svg new file mode 100644 index 000000000..73bc1f3fd --- /dev/null +++ b/resources/bitmaps/keyboard/keyboard.svg @@ -0,0 +1,32210 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Hover + Down + External + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Workaround for https://bugs.launchpad.net/inkscape/+bug/180890.This text extends the area of this layer, which avoids rendering issues. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Workaround for https://bugs.launchpad.net/inkscape/+bug/180890.This text extends the area of this layer, which avoids rendering issues. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Workaround for https://bugs.launchpad.net/inkscape/+bug/180890.This text extends the area of this layer, which avoids rendering issues. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/bitmaps/keyboard/white_bright_hover.png b/resources/bitmaps/keyboard/white_bright_hover.png new file mode 100644 index 0000000000000000000000000000000000000000..73514b8ddd4ca16ee42fdbf334883bc1a1d387ca GIT binary patch literal 1460 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 literal 0 HcmV?d00001 diff --git a/resources/bitmaps/keyboard/white_bright_on_blue.png b/resources/bitmaps/keyboard/white_bright_on_blue.png new file mode 100644 index 0000000000000000000000000000000000000000..7d65a5291e73ec7a13dda61dc9cdf55300c5574f GIT binary patch literal 4301 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 literal 0 HcmV?d00001 diff --git a/resources/bitmaps/keyboard/white_bright_on_green.png b/resources/bitmaps/keyboard/white_bright_on_green.png new file mode 100644 index 0000000000000000000000000000000000000000..17cf0d0e540008f610b93d6cd73f88c166dd5f26 GIT binary patch literal 4412 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 literal 0 HcmV?d00001 diff --git a/resources/bitmaps/keyboard/white_bright_on_red.png b/resources/bitmaps/keyboard/white_bright_on_red.png new file mode 100644 index 0000000000000000000000000000000000000000..94ea2bd891162ff4a60527e0474340eb8333b7fb GIT binary patch literal 3889 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 literal 0 HcmV?d00001 diff --git a/resources/bitmaps/keyboard/white_dark_hover.png b/resources/bitmaps/keyboard/white_dark_hover.png new file mode 100644 index 0000000000000000000000000000000000000000..55ff459df60c6e8fbe7da08c14dd2e0f6f189098 GIT binary patch literal 1908 zcmbuAXH?V47QlnFNDI3nz346oBE3jaS||%F5?YiJnh*svgx(=2AgF-|k)i@IRKYbX zu!L?v1jHx^0g+`T6agVu=&B@**G* zNZiTM&I9Nh05Jy(0h+3w{1WH{Vxdl6V4$UeL-T;~(I`isSipbkQ23x4kCFhRT%5gk zoG1E9Tw-tx5|o&js1qJ}EjA=L3aNvRx%%kad3g{>Xw%8g#w)4(YXvp(@AvXKrJI9; zr!w`4S%^lB94}%aRIqWv@9&!9$F_{pGbOgnlXIWw-XmvWQ;6_-_;`^3c#bM(H!~z~ ziS3d?$pjXfaEXJSdaw@B*$3jX(@YUreKS+YVOdus=U~KHC zhwqkM2LEaC)`AwPo;)xuSe%<_Lsv3u(zx_k)>MYc_EnJE)5(qXX~REABq$t?{&oMH zOpBK2nKNgCu=5)mQFQ|!B8=C+eOs9C&vlbR_6oO4)X|wCD3rDVrBpZYa(cSbW|AW5 z2VEhL(K$IBu2R?s{RdeV5u3d4Qd{qfl|?fX>ZtHn*?g*nkF zBk`peISPhX@CqFpdu;l;bdhSlR>Pucl%g;hWebNJJ-VQ%tnB($IPYv}e!h5Ui_hz3 zv7q)E62oDwt)t^;zn+jK&Prt{`f;Nsm&;LTAn>-aR05y%FNM~c#WzWefcJ@hqb_(JVudo0Q;fyCVcVZ=+?*e{{5QB%SIuw=eJ?HR z^D(4OhAxST5hhV~@0gcHt5xI@0x^eM6Y3)rB8F|ctyYYj?h=1@WUsq{8Q9MIsBv&m z*;edTq-t8gKUlV+psK>#Y$4H@1G^k1XnDbeRO8NO?cHGDsJ!o#H^;J1xH%o2Cl>wu z(pF6^JJ;D63@N@ZsjPYWCv z&VrZ@EQgbR-?_H8vex71Zi-R~a(;Vdlz5@9}wiWHupcLgdKiy z-8v&B;`t-zU5@@OVTf`N2BSho!FnJAm-TlnvuBO%-GgL>0w@{cG^3`rHj@O6uYG-d zvlI+uj-Ald*?Gsg_U84o3Lj}k7bYT%%j#|e$cgW>cF`|6K#E{l2UY&I$gGv-t}X=) znUTZLp48mhTD8L^Uh?2shPF)maU7NwJ9REzya-*Y(hxCtAXaIGDF9eDLC;zj)ikkw zaK6zgR&z4TWUI+q`>FWX&De?xr8sjX1OhR)wkA@7>?5Pl`xBd+`k4$HzgA!I)wq-( zUxcg+?G*s}SY+GS^|R6O@i`C`%Op%dgO}vpf$sU>hjqyrn@MRT!KE*q5`(ey=vMIDFkap96rMlpdKUZZ`ugKfk&6chiWRQHB}nnl z5X4HqtSvx}d4+?)gX}5|V$4{)QjzNXDy=@O)z{SAT>kwEYdbg+s}JDprD;sFbV=te zs<=(Xm(`gWbuxje0LTTR{GTIqOyFkdszyy|8JT%giI@&W(1}uNaB{L7P|~_rFNSZ_ zo@RtjuXa#iZ_f{uFQ;CycbCKs5yR!1r`H`hPOR+R5G;|-{I%Fwa9qXsxSrS!%q@EZ z+g&tUjvMYkWvKC5Q8Uj`sm-TX@fl!F;id6#G}T6Tr3S_h-dRn6{eL8`hC211PdfK5 z`Otktfkm%6IQ=jh0{-WF2qepzU8CYah}_HG&;xymGk2`@@b>lw#}zG_+FDhYQ}&rY zB{{D3{3HUPbT#u{ESmDOw*#zJ=@pjznKYW`!Tu({sHo^Y)$qBctK*(p+^MA{HCGs{ zZx?v!ENd+8zF>6zPeevk$$wz+nKdcjQUV-CaEQ(-%Wfn324xnOWc9;GkP!o&M@>%Kp}psC>Rq zI~TZ1WHR}2aZ+Tr}p-C>*_J_%T5vY zAwCgN?&01*R8$nwFF1hY=^pBh3<L^~7IEHUtc;WZ?V-OaPH9tjGVp?)+ntVCNk(|H$43AT=ebhZ<+^XamRtEHq zAc*RUyOw7<|I5lF`JhSE_vVRb3{ynR%dWTbIE(>bLpOLQogmdF-PP5#y}hQ^*WX{L zpEVUTL2leZqPGbBv&=0|;3bop9od}eQ3DxkcneQ*hwItMR61CnMu>`N=ZnKVP0;9D z{xy4hd(mrC$%DBxJ1vMxp6e^3ZO`f~yRgEs>OAW>?hMpY)B>0gOvWgQC*NOp&La%+ zmLkv<4%#n+VpS8qqLn8EG83u(^)KEiKVr7?&HiLCH0K11LpmRMcYl9&%q{Yu+z!8k z0(^~&&lR#molg~bzcsYk{9UR$3_)~pLAHGIsY~nawVC0^%u=k&HE`l>(hWgRCssA5 z1PcRdV0zP(t7f?#@A`cQ+_G+@ePCdK756~e>iLH>dYubHjoP1tGNv$lG@+KX58U=G z_kaM2S4624_iHoQH?RV4cRl#oDZxy)j9#bDTt7U?`)0+EzjlHc@l-Y`>zc-q&QF;- z9nons{KAef#7wxUm;R&MSG6A`N~@xhStMixXWXMjdbXSelT4B4w<_bOvgzds$ zoyyfcun`v0ZiWh46X$lo-P`E-{D_lezV%{^iwC(jj=z51#vX)B&&EEPSwUM5VC%1# zGH6xbn(4G0?y7+`248Kz+pEKUu{GI{qp^IRj(yCGLjpaAMule#6RoX%VflIQm9(|W zE;`uZVk>A5wyxukEtln-7`0Sa|10(XT0nZ9Bd*eF%BnBCE6T86k%oW$Xv-`MZdq=3b2KD2_QD`a=1UmtWsu@Xpd8&%qJ;E1 zhCkOC{Vq%j23wnKI|^_bf32@KG9&N9OGr)yC%ZvDJSR|DVI_*>>D>#xF>MBeYCbIXj|)-FG|0(C?SzZJvj8+bQf&1Br{XeXo+2` zYm$`|hhcOYRo9kI^Sm<3#)Cag5PyJY8Y-wjzB3vP-CyHzegw>GoZ7dxB9~q9^g`4{qK|HkBc%cpnzp)jsFe>Jk%Ir_;_Ao|-^k@OB#BIiFcpQk)-78JS6 zHzAwGkyoA`2TC2Z%Wlza7y66Dqm|zg^&dggJEk%RQtH+zQF+b#J-R|Kc^_^+TN4Rt zgdUXW>|AO36jTrAvyK$3P)4@wqQQ@TS<|fz%Zk(Q?({P9l-u;$hlWmqh{zS?V7Ofa z)EM;^UdY=U*=q5F*(AjH%Ku<}kFKAzXw(UQJa&+8MctTQ=-&^yv146yIU(`x@I*?+ zcidbuBED%{X0#1(1G_X5_@dC|2UV!$1NVx)#I@A@5?+%D1|!BjJiSYI)X9l-5b8nK zHhDh-hXorO8?sbvg3F?f3x1^W8>-t#tB_K&RUiY1AF zk@;>yDmkz4TgT`h=931x4xF+g~qPoOW5th@;fWaCX%Q5KE^c z)2Z&h178;fgS-Vi-g|rapVPmpI(4ci3IK#{*_J=yq5M_3ly&vN0S6&08>TDER zv1xGc!{6fHKllecxcBiO!v|N7@x}_9pO-zc!tSq}-L-r&`}y_n{SZfAc@4tZ>O_&x zu^t5M@qPNc-{M#Ql;7Sa{51f)efthxc;yZ3jcaJ7pp=9V0!j!#M484A_V@Row8Fps z`29i7zJ2=+zVzywxUjbirDR+o1VFZ0j3Mmr?LljWpAWS6*6lm^@@sG6;@%#lY@s27 zA;6G9(-<_S!D##zl(V~zkM}bdmzTc!1}^OHqEIT~4*(DXO=Ggv!&|rS;LESRi3|IC zP*NoPeOWXO_IG!oRGxbHvs-WD@`VE^5$oN+z%&Mpv30QPc>esy@7qRtm4@)tt6&5hub@T`4)~Y z9Aalwg=L{Gh(JVW47rBdKuQU^`8t60e255It1MiOZ@!KzhX)vsD_e<-zvp8JD6-kR zg`t6bXONhm3(%3RA~pkiD00;rf+JP)fG=OEiL@$iOIr%LjW{IC~lZbWx%% z3Y0|wC4`F<(mE}o;{pO8Ko?cN2TxFnqQa;uQIWI< zo>nN7M5%Qzf6r&JXrNV|dMFCj(Qor_oNs_@q;~j{Q0`MoWrs8A`<5+2z^%{FNQHn> z!d3*+=Q$CP^+C4tvU3#gx0Eu`2W)>91^`ruB2r2_oMSUSQmHIlq>zw~O&@>HCs#d4 zA%gFH`~k~HNfCGqvgbN^TffcU`ewJ&b|bq7g*^#G!hTKTKZrVc^|=bMKdvvh^BGT$ z1;44KFZeN~D?`e}e=p&ai;Jx?ih3>nfltnQU|Jpio)7%sJkZ{T{6pJ-YouUK5CjYX zO0*mw>|VdKL|uLA*)E&iCHe$AAqhDWcjR;A;~NdIT)%w`Lk)JA@b8RI&SUJ;=lr=r z?RV=5BsTIh*;s*j+>L&)e<|&;`M^*}&{KVp7)tpN+Z(I-Wa6@pzvq*y9+J_4>Bsc~ zY?I;kHs#L@c87cLs6pMK2FMcGyf!g00f1Q8Ah(_}7)%;p0wg)wWCzY;9Up^y5q~9r zpI)%z7-oz@o%Zq%-sCBp^5=a*^98&WlMt~tGy2(vUe;qfjgTeoS%)@ni%$&PamG=i zYxha`4E8UvvqYceZCUK0Wuu1=G6f4TTdVkc-vFMIQYx@)`0`2pU`G)n<*IFRwNN5^ znxoxYJ^Tocfnu$69iMEuGn*ByieDy|J;YAYS?*Q_CYf!mdX*g0Ag( zE@!*dAX*2Jt5Yz+6p~*|5l}l)ZNev8lnK6|mw(`sEvm8OMwdVLDOcHqKX1(1d&;8+ z5kMk69f3qJ$laFp;Cm%2}hJ1KC6e}Z4Op+W-JcY`qj=n#rByumAI4$Lqsql!>$KUhe zeh)RskFSqEAANF^P55^sDOg2NJmo+F5bZo}O|G=Lr)lN4R=FsWuUk;a^V<69a7Gli z?)bEdPu5dHJ^H=AWU&`>POjg_C!4(``anN_?N_viK_OhF^1E;-Zkxl|b_0$178}xX z!67!;VETR~&wYbk25udnoD(Ms5PJB#RZnB$)W<(;0KQQ%mJf(M=GyK8~%29?8BpMJiZ2SldWKr>yiKNQVK!t_+zw8_Fcn=kk41!Xt0!jvRwvSv7w^FKk~_7%-IN+ zc31IdySU*#Jso777VHKGeo!q^=PbTb+xp?sadL}ThQglL;`-63NbK-bWFtNz9~boL zb5~o(GpGn8fuhYnEJUVy@KJOPf1Yr4CQjTd3ImzQ8bzZyFUIuwiAO@d%0O&fX>#qZ zBC)J&)x;_IifaR0JmY3XwKR1}%1;y7{heiApz9Xdq z=Pi6z$@P;VELTmy4Ug?1GE9zG)$}yx&G_Wu!d&a+AFgoavL|A|=;QDCcz#2RjiM3a zGX8v0oeuZxQwR?x=5fRX1{a@iwe*u2t&9;Rk3FP4Sz4n$Ct4Q`SMtf21{p*yZT^8z zHhUt`Yx9qM@{ee%`19}5FNo2D55XcyWP_EQv+b6C$5FxZu|Y+|oTp_!IbNQ7ceY#3 zCl?n#VOqwY&-}BDXf9YR;~)8Cs&mF@6@Q)vYWF+YiF_{PmJ2@f+92X=R$^sveFzB` zOPo(4PwwSmwDrm7TQS#6hIjV4icc;sNj~1g-}B)k(6ACuLG|(ve2^`hNhY2f@Mmvk z0E+~yVXz!1_Hx2_|M1*Sj`t5^F4CtTCRKJ5A`G|ZZlLJuvjzaRtX&~%_yD=Mm|p!3 zAJ_`cRS(PgXRZfq$e$G%Jn)6(ZDID!d##eFs~WF-^WAeh`^q=pMOBr6?COV!f&VTf z>be?iudZtdDZBbeJ4D(zdqT((K0=D&T)y#L6uN*^aw&iBt5A8kR8<8bSMU$VCsCFq zUirp%2iY5q>t20(P-r2yKNNuX|NJlh8lzDSU1e}FU+Ttjhr0sAL47@c@M9C>#uP6%4Jk_387S~?|O4MwL=80HAa_jK_53l}e;s!K?v z`uVdcZ@CQ4Ogiq;~HHQno^Tz93xAGMmjYolfw{z56(M_{f^`sRfa} z2a;?G{EvV0E`IQL{~UVGcxQyGS1zF*RW6!#^+CouZvcQWo6InoOz`Qa_wne_<7lU) zAM>hs?s9K`7hkw~8Krx3T%SIS0X6o8S!U6IjKSIC34Z^F2l&a4-od7P=8Fc?*$j6- z`3xr~r*Vo!tNDEYZ$H3zXN*f14lo+mD64WMfA9ZnI>&T6!@YZ-;pE||UB80A=R*+K z-P^$zjxM9B3zTKGlE3FOolG#9O!3+MKj87{*;@WSMIsW|KiI?Z^&^Z%^+x>7qQTvJ z|A(La=$+QJ`_Q)IY%AnPB7!PP4Jk)>@r7%c&*qq%O|h8G(KHKCW1JC#2MZ*b&3KUw$8EQ-4U$Z8ALnVr`fDi)5*REnZonmq}#cVdmAOH9ucz(FQ2dQm@ zQ(8lp1xBL^Woe_eF7#4;>wrIB$2qjiYCc7&A(g}zUpls2CQ~ftbC|{e4Z%>8@Ok*~ z5ddI3u5onn5LI15DYcfr_rE9$2r2Nwjcb@q=Qw-(81va2rfCxXo{uUNin2gm*QiG| zlvYqhkxZOc@hQp@M8LJ9OSW@-`um`NbmgLb9j3CKODYAaE%&;%qfkth*7N5z5Krd& zAtmGlB8bNCF@I3nzC*Gs3haz(P(z@mfoT>njltw>f~IKz06RM)?2K#Fbq%TQ0j$%v zvp(m%u&;`gC7_kSs46izn_w}Y0|0h+#yC9KW%?RIu}HLmelk&mAHrGF+>nndG!zkv zLSsB0*(mBF#WFrh+LT8KxiNq5zt$R%5{1$jS7opMN*D*CK)BH5bXB*WpjAv>e~+KePH?E|)$p ziI#9*lN5oi<5x5K*SFlF?lxQft^Skh%lM1p#%^o>JqWW;;SGY4UMdm`)cL;Ee^&L8 zSwHIPAWTslup(9run(QuP#uH`pwKfAdxtX?o!shg^@r)VuH6gvueU6M1AeUty&`Ux z_JC!H@K*m>)fb(Ahw1a*t=YZZ*fa*dSBTKEyMF?FmPTkA6LOFKvekcf^(nJ{w83Wg zF%-||3oM!jLaA`mgMDNI_J#ptxL+VLKx6+;NH5Or7ToGT7y8Jo9}Al}A=%Lyb-g1b zxqex9eS6vK~%^eO6V0GQ1dc}? zo1HebW z`~dUC48^sZAn9JCFIG9;U&74IEHJ`K~#90?VZn$9LIIXzptvgdwOPb=)JJxv0@*tAXi9c~H$_HOOqo$vo4Zohd0B+U!m znakh?_|30=i=X}EU-0Dd)3ppcn}=^6fFv3H=yd`<2YY{j!#8gL(&)RNu}xUJ|Mjci z;%7hkXFPfQbSWQhI6Ify*3ZaFu=zQ1aV_D~;*raq8TYo$E`J38-+J^8?%qGfR=ou! z6{M6PA_yTsLiUo4r56 zmmYordsnW4h*EpZU}k8o(KHR3ros5(7)nX}?T`L`DW66+xU#*S#m{d&dI$G@{|X^tU?L9;F9xG1)!NP$rNXGJP?kkY->hW- zUo+PN2toGm%roFaFfMeQA&*KQAa=KuNw`)((_aRpp=4=5=s@2QrI*mZ1@M_+D#P= zq|7jBq=YIIilRvLiA?%+E4t8gD7iiyDJ7IrC{&T?yIPO6h87w^YiQD#HD-TcH9ktu z^Kr4Z`uICOO63{{1yv|0RV4atKB}2z8V3a_i>3S<)`7qE3?u}Ev~`v+10hJjm2ZB( z#zc{|o3kNAs&6*TBeV5qeS0JXNRrhG`lcoYSeW=BqWxhb*eZO4%;l%CA>;smvjMV; zC5JufeDC4!_~h&#xy84DKR59FqorX|hz3LYEeFWVdsi{$IA_J)o=)^RvSI$|EEYNX zlj4b5=@kf_-P3M9WFN;{8A}@6G)9q{CxtveD|GHl4$X=U&s7U)3(&g-NVlU+% z^T{(wbrhI}`MaNhpQLG|F}sM!G4gKbnlfQHbfWKGiPu~Xi|q-RRzxlm#*;BvU5!t^ zrPQ|8$0uhbbv^3ipY|_LBwdAnoUv8vY8(@EYp%nbEr<-P(|X;Z;Eny8bx~+Am^jfV z>y1vl(XDbV*=&2m9nV(b6H?~7ex|Xs{c2nT=b1Dicl7aZ`?a>cfwM!4_;(JR93o)_O*4*D z#+p=n-5L^#GO~tw72NMX^;;wa&R$0fLs0U@-Yh{Q%y?lK&|gQxaC8+ zf<<3oTFk#U-BYrQ+rzY61$!FO)2NkniE>#BC!tawyd`u=^r!oNKDlbdz8ur#lP!{V z`r7u!v|OhGyE!WSeu#fMNlBa9jbN_sA^QmgSwVN%ScY2246CgWBYl6l71HRpcC)pR zspFynVfZ6x)BkQ+unM1iT0bWv+3FlMsgGQwd-*#)ZZy_zQMtI7e^~TB-N$Dx z-HRGXPJx8fkT1<3ItArYnt8NX$W7vP?O6b}pZ=0G0yIZH`Toc0bUB}Hl)kK=AzStF z&wX?c;-p_~{*F(s3>u#UUc{f>!i0;Y1ZWC7xtfa*9asBH#&RTI_-N$^Ho7FuxyRg1 ze3!Q8HYhwd`mUd?4?kVR#A$@Ts1dfGtXlFCa9R* zg>gv3M+&l0gQ8SSM%g?NqP|?Z`DoSFM-({8?U^HDL>D#1`tFp7?{|o#@n`o-`9%8b zG+$~A@efZkw*meX<&X>uk!UskZlVIoDX18baoGzJnJ)O%oQV)oS0Cx;)M>BQFlA?v zxj;FRWHS*o+lb;GktX}4d@^x~E%)+we7w!|8rd-wG{B$3F+-k6N@3h1{SN=A%!y7x zxf)Evd?Slo4_Xs6PsH%yprud#MK(Fjy}qtFiXVf%ODW{fueeW@(wcNBALQW@hNho? z;FD<_+=1Bue~%@PF~2C5^AC&FAKiyX2gfsN8Oakdd?e~f*$#jJGId$5!4S#OYtRP( zj+{w(tj33shl>##=I{K^WsfLM^g+MP$BozeEh;J&@(+w^??*xrUmSy1=@q+j@ukCyUNp(<;(e)E88=;nMAcNf72BLxg)prE&Axz$3O5v z9)nRvPW4;-JCT&^Q=ft(O;0Us=bJdx(T_i!cIiG>#4yoRwDb|awHWo^)S%|QEAjC* z*7h`wYlD1p6hRIz`AOR4Z~62_^~>0EW4??(d;UJ%`!z)2k$MhVTt_l^+p8b#VADaq zG?N}^7=7bPI9v!3K27t>_~haeB56PWuwSlOGc?^(KAFOHoFfL2W$>8f0 zKOj-M$(8P-twbL!Xu0e~K{?hpivAMKq}fkk{Wj$@ecef$BxaC06w4W)a>$3@&M z=4b`}kq@2ksCs8yP2^dn+qs-=>$@0cdXRG!8=d3>iEyUcN2Z0r9Siv6%7<=M4)70r z@^Fdk(LVm3PrelxFfHOAnN!};;4%E7iEBoL=h*_kUsaL54gB%Rx;(W|7>rooGJ=mE z7DgO6R^gM4OKiK3ze|kSB6pm%y8Jz#Ol#0{T*BXN0zQ%k_+f>n>CGmYBrUAvEP1z5 zeea>ISF%P7boAM#8S+O)@rd~Rvy_joA=mXY`q9hZGs}126dyDV^2xL+LMgMDe_)N) zRkd-b^`OFlxNT-&vNOK4qm!L6`~h7{KZX_@;ym`y)em;M5wz15@X5vnypVr;G34Nq zav$IWAj>#lHU4oQ1^h4L$QGqECuBv06sYSF9(?=c(#}43_XMMA&K7o&UK?v zjR)_pVei`~sO#F;Yw4#ED}Zq>#oLSc5UtPU{<|kARB3LChJOBj9E4n-%eyD2M>Pmy zkiX+2NT4b!++TAXCiP?`{y^X_0sQ4RzyAQ^dW@ndAcX`80V#yPwV_W1f&efISzvOj z21$V@|M3*Fi`hy}PIkt4_~&24!}s69!NER8)yUsQ(dqkI%)W=2p`^m(Rt+KP#qGWS z7T*5gK5pK;iBVaZ+f4SPN(Mt~2JCGhXY(1(&d>1kpZ)@?@Bsm(DzSAqzLcL||IY8> z>+gLHSNHcYszy*!_3|e_dl|}(gSg~4eB*=rxOwvis;ad8>hgC@GeeNT_U#Fzx`e&= z-@-S)`vAvBuR*C|DSyoxpFRH!KmX}3;-h==4~ak$EeM4wF&b$czkUSuNaCySy#XS& zcSy75w5vB5fA#2Z@E3pmU6>nT0oz*>+}OW?QE3LEt#9yzdPNlqBVFO}_!i#&0q~VS z`=T?{(FYLj^<+D-vwa1JHx7-xqUh-R(;qHQ`p&m8F6L9n0vIul?;b<`P~fZIdBgVE ze#Ezc&j&yL6KszsxO(*}##Id|+IO?<@+nk-Q8mKR>$jmE3B38$;r#Q8{L@oV z)ZKOmOL09`l@+9rxO;RL7qbhTou6Skonkhho14(;2D)kRARHea;q>gx*t@vE|9Hn&<|-j?X8bn!6@X>M^cgJ3u`e z`8ξ_v*g$_gY1ufKK&XBQWEe)=32(+kX-dBWfEk*dI`EHSRfs7EylRiG$}rTiVA zLKUb-BiuZ=h28TrJpTB2`MF{QYec8<9clF66ox_Ab(GU{7=|$PoZvb ztHP!MCW0yygp?@D661OTtsBhe4Vq?-rqMV(eUACO0RU``w=fw^FdmPM^HMFy)V%Z=XDT~NT095$J_~8p{xuS zFr(3WAs=aLP=A-a75F>41Uut*tuCpyyW`{f+*M>Z|rI0H7>N6h&cHgAl=h6cA*;lcF`Ww%1Q< zji%9<36tWwj&Jl|dVOTpk6Lt|l-yq{jMh>JA=tb|oyqUsN6DKv`mcsQGV6!df2-hu zRYHI{P0{~ySAB55js8Y|b^Z14XT52g_BpryJN0w_&I|y0!Pl{P@Rg1JM*q_KQ6y#e zHwea0xb=-6ZttAz+T-a)|K-+4X8q9O+rssA%YT8N!NyQzFn+zy;h_#}^j|{#ev_Bi zkD7|r$@hjsugLt4*?q)kh21{>{Tv?KUT^d_`fKP%-@A7|<7UJG^YsB2hErofjpO&V zda=>p=wDVpJ#dO9wka7HWUc}*+uo21+h#{b-^%D|8~u&`CG^t+C;OmvJXA3{BHO&LxOMbPT&zH`F%z zFR4Cf){jh>@7=d%H8{+Ecde-VNGrTMgy=YQ2N>b$M*rp4x9`ZNAL}Xrn9im+zIBAU zcK`Q$beA=MO}l|IKUW z&}W9%R{-$r^cl`B&Y@Yue;JC%U+rQay3LmkE@V5yjEm_M&rXezjsB~ke`YRh%B0T> zude{$`KQltaej`bY2d%s>Sn#GCVGs75`z8eFtrF{KAYkBr^d)e|K-;|KR+{Cgthg} z%w?~y0N~?aKEdsy=TK8=bqU_aibkxi3Dp4RO@ohr`2-vNS402lolos|(VS$6q$}w= z12(!&XH&1Q0N}%a{0Ot@9Q8c~mh3}wqB{_-JDUtpLpb|zj*tH7H`wTJ^w-s=bk|MW cwBNn<|9vC&?&)+ps{jB107*qoM6N<$g5=xn-v9sr literal 0 HcmV?d00001 diff --git a/resources/bitmaps/keyboard/white_dark_on_orange.png b/resources/bitmaps/keyboard/white_dark_on_orange.png new file mode 100644 index 0000000000000000000000000000000000000000..6c71985359acddff6058e3c8eb0ed59bb9ac4acc GIT binary patch literal 4110 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 LNkvXXu0mjfH(PxI literal 0 HcmV?d00001