From 6f9490ea1c5ffca431da8e90699fa6d7a486affe Mon Sep 17 00:00:00 2001 From: Omni Devel Date: Mon, 15 Jun 2026 15:14:12 +0300 Subject: [PATCH 1/5] fix: fixed top bar paddings --- mobile/build.gradle.kts | 4 ++-- .../baselineProfiles/0/mobile-release.dm | Bin 14444 -> 14452 bytes .../baselineProfiles/1/mobile-release.dm | Bin 14362 -> 14361 bytes .../main/java/ru/omni_devel/cards/Elements.kt | 4 +++- .../baselineProfiles/0/wear-release.dm | Bin 13490 -> 13490 bytes .../baselineProfiles/1/wear-release.dm | Bin 13460 -> 13457 bytes 6 files changed, 5 insertions(+), 3 deletions(-) diff --git a/mobile/build.gradle.kts b/mobile/build.gradle.kts index bad61f7..eef0c06 100644 --- a/mobile/build.gradle.kts +++ b/mobile/build.gradle.kts @@ -12,8 +12,8 @@ android { applicationId = "ru.omni_devel.cards" minSdk = 30 targetSdk = 36 - versionCode = 70 // 0 at end for mobile - versionName = "2.3.0" + versionCode = 80 // 0 at end for mobile + versionName = "2.3.1" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } diff --git a/mobile/release/baselineProfiles/0/mobile-release.dm b/mobile/release/baselineProfiles/0/mobile-release.dm index 23d89773555ba2b828acf2b53a8311ee56915c06..6d74b8b39c3dcd73ccc1010ff7e8ce96a35a2309 100644 GIT binary patch delta 13681 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 delta 13675 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 diff --git a/mobile/release/baselineProfiles/1/mobile-release.dm b/mobile/release/baselineProfiles/1/mobile-release.dm index f98718dd0cda2e20fbd894c198452dad2bf72e05..2d964e9c19d87a04e7713ed9b03ab07586c59246 100644 GIT binary patch delta 13154 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 P$Da$n!iy68&)EM1kcEs_ delta 13273 zcmYkj1yEc;(=Hq&NU#KgFDwZj9D+L}c(4!%?!n#lpaBxxU4sQ#g1ZM<+}(X~hlOST zyzl+Ld%x+LIyF;0RXtDlbe-v*PIF9m#8p*9Lx24Y3k&NRW^5cT7@&H;IppZ<@Qjm- z^BLL(0opU%_s^brq8$6-q=LR=ogSPF4sT0-yP&~-Gw3Q6@(hKR1|vxcO-;fWTTIM% z#r$O)4VK!8wH~!T_D12`iHBq2ws&#nw=l#>!>%`krNw8?>O<6Af6!*J-nme)FH4E# z_fUEw?kP89$8We>P9;zZt30Xn|CFPkoaOR#dMS={foWv@&c26TD<-ezsP>Dy`6!o$ zG+#8c*teelrd07;`yxzQqEhrUN17;PH@5-tJ9YXvZN<)B*v_L>8n)`zv+vOHwKEHU zx!%8!gsG53K|xMvbtopjRYhHW5+u(o-xlxP%Dui$9$PyT9H?S-yIle zkwrJ~9QRsF4po%UDE78m3-hTi-e|}~z6u3yH73Kn#){pV`*GA=b=UqMbJDNpsB~0k zi66i{`q_r~k5qzL56_%@C4oW;8qM@crj{jl6zhn6{uV1_-JTXR^ zY;~z^?wGU)*Pv=mGNbf$6j_@@%>hhTmhllz9vSl!a)x>fy?pIz?BU+J?$dd?Kz6}U zWWnQip`#ztKpXd!n`~P(E?_lG0gwS2KTvp{C@5+BI-;%}3h($lw~*c@0b@4rqD;j) zDrB|j4G>N0^o!p%S?-Gn+tcd%3T^o6nc3IK1iy{)a*aQdS@va4<5I1F0O7ul5itJ> z$f4-ChG(^^q4JjP)YSE>>cX&ip+C-rT1$@-*xesIOJwSeJlyd%li8WMKG-RF9LaC# z-??0ai~|*DsRpAy?S(52e0puQaq;gH zD!Cd2FUO$;R&zu{2 zm#gnr!52C9!R&jljb{&wY#%3v$s~@r{nPkAcTCLqpWAQddihNP_U-okKEsdWtzT{H zA)m@eR@?2|S;_s5i4~1ab;AyK+>bik8z2-pBSrNZQztT0-&f`u5;~R!lVxth;?@=q z1E_6`9|Vm}i!$Jq#A55Gm#zsppLBJF!JWudqN=?>y&SO8T5Y?761dUtB}q!S?(mH9 zo%2&!XmO@UFwYk7w>KaHg$QlJB;XQ)q;i8ph;1BUd|tI;k(-P+F0XZ@iE`GWIHEW{ z;np%>q;u_Uc05}{>LqJ6Ws@m+JPi8<8nne92uNys1g zA+?oa1B(KS_x1PnGhj5cU^L&S3oe%4O9n=1^w0SEHT-VFiX>7YwbV^F%44KNbTP567veYQ9mwT<$#pMh8 zht`W`zE-;#)|-FF(>=Mkj7&QJ&$gl>P|62k+9?OEGf#Z{Zin1T;`~K9Eh`X)J|#W3 z2Qp6J__UI%^RVpT_5^nO?Y05A_~Z8TV^yPV(6TasEL3Zc80wc%zPj(eGIuphYvgX{ z<{J0nGTLn%J*=?@SyV($X&%@ot=dOIzSTEP!Rw}u@L)sk)@XpR;D9n3&)k-PNp99= zTb6A^PlF_Pb6%9>F&`(7VHz1Hmnt)cfH*K)4X7TsFece@c@jaM$c%j98%6de|ItdI z%-_yxz6Z8*9VE%>{hMQ~2TIzg3yXs7&9)bG@#@fg21SN$QK!HXm}4L=aIm(ph6qol=wM7X~dpz&Hr z+Vs)ve*j~^_z$$4{}9X-HKB>#6I)qK*Yh9bQ23cd0l-&QnOnIrLion z8H_K(`C$~(>Bf&=l$Eq>&SCAf#Yb||Chap2gM#o@QE3CPS>MkwMuLXmY@?oen$rl6 z@y^+5TTF1oA_la?+ND|s4}lK#xsNTJ4jcEQE2uPv(;`$8(IpoYlKd}CXqUhZ$}9a& zLzSAV9p7u)bOgV*!~YojYQk!W{=PXI95ai*df1)1$S(lT{(xiJq@q!p@6p?t{ao#f z3O>L7LOVMwIcK!;BmnK76@>8RuROWy8x}|TdsUPV(E^3Z!vrJy#hUOs;^sqbk3fD~ zQLR!oMJW?YMXc8NR+)_hFtP;+r!H^r)6*+P82ejkJVY+f4x9I#_MKKl1}afqYBXc4 z7Fe%Gz;bfky2!ghN#ZY7#BvaazSlJ5@P_@y=;0a9AebcgyRLC}1pIS!_FT2|`|Hiz zVDIjBz_{#|g8W;-$r@+6a^OF#OViqol-_?Xo*+I2Sw51VjOE&>Ry_TvR*9djq*uFU z#oNHni0SD&g1!{2qK)i#Fx6Hm+dyElHX4aWP%szHrYl=JRkpf~PZjmIRwG|r31m4fP+YRTzux3w2_z$q{j z>ra2+5I_;8Ip+Hdab(Y}Ry*Y_`i!0zyP%_kci_a+k7FUFc zc7rmCUooGJ;S|>pz3p(=Gfw5y1_r2HVE%n(%7~?fGYmQ0ewjh=z0+o*^fIJPw{ohs zIBoJT|in&3Jr zN5B%S4_F5A5=b#1bR5dQ!t*aJd|b7otaS^vVf7i#PLG-wABAuGDSzvAXaI_agZ!OZ z7b-mMEk8_(^PEiEC(}ig#lQTB5^(zx|6G^CN~Nw^5`4qvTvz?BPLy3FJM1rg8MWX@ zk(0#+o?pZxQD?4H@t`@vHy>HRx& zf|XYo#L8xjuM@9trr$DJvjRO@z8LyHv%Ni6HH*gz_U*qdMaRr%>xM)>;HxdZ48?fh zQ1hRQ>DY4B{-9g1&-eb=X@w6l{^(!gkzH9oR<)*8G3tCtX#V_IO~XdF;J}LIswy&b zN9GVBBeu6-?diHGQ|aO+TD1Hq*mJjhxBMUDur|r1f;i30J6L{d1v375r*Zjz=BGyl z$$AZ$SrpRU@~N*cTYTcZ`u6nCJ+E@94jGt#&8deu6ooEKDR_?a25|0H)IuoTC_5T% z^j$g7;DbU*=*Is`0HI`JaeU8X9uAZ-uEk15E;3NnV2JYi8)}LQu!Zu$hl-n zV;S`tJ>wYg=RE$&H``+(Z8%o2JUDjJ-Co1ZMaU+z_*cdF55-)A;_;-isjS7{!UK*e z!~d*zmBKxvfUfNXj|6N8e<;63;8hpKaUw-@epbrV zS}-vf&HbGxYc1si*^$IQ>^IEf#SanEeY-~ammZ?g5$|_49@KNr60U#*ki%WbPyjyi^NkXt*wtDa7{FtsTWj2hk1K>(#Lqs{3U~ zZ6baRH(x9N-8+j*1VU4AuT51$NZucY$6vrWAfN0X8|kY;%R+=Ircw5?x}P`%%n&{# z`VEH^bqCY@x4TbEeXk^k&Y`_AS*?zXyYn1|c$qx&;+8AzL+^~FaCEm@LhOVm`~_Jz zfK%RJ#pQGlN%KT!Q*qeeWpZ>1LE>7RAcbWY3@wI8nTkri>=yS=zOW)uPqf zK7mHrYMzmbv?^AddI)hQEVV5bUgfO47pR2Kl}~kL%*L?SnDV7%Ai)S z>m{$R#NzY;w=v{WF8h3zrZs>p-dny!&}WoCZDEp*YNci8WdC_+kMkqU)Uxw5iklB{ zpwLhsJuL`VXfkh+ttT`tziT}Xm2xc=98+D2K7mHeAT0@GwKh~26WqNFLCd}*N==WQ z#)6nwIpvn?o|c~(M3lOOy;LN%Gv>pLsL!eGAp zRsYg*oTR@~@L1u*K$D7|cq^jIijkB}N!W!MASkfANzkNye_3m1;(310!i|g<%>e+6NXBxd|PP>te_@O1> zbyaGiAh8gy<7tko>6Hcg@Z}wEcz2+vPOllzhF^bqak_5#O0DTiidjDOBzKg3$JM&$ zxj(s6QcV7W6y+lQLyl5z&sA1GUS ziJcWu&ru2?cE4dWQZ)pqf+yqv|RF+O#Y3EG#Zvd+>>my4zT;GgN;}8YnV~4$7?#e{yJ+rprm63pO4bE?g z-}s#8jZ-hwXPTD}Ud`9QocS^u<^2=TWGQQWx7P7(Xe8x0)$yeum(e;rp0dCB%4=BA zB5qen!w;spMBN9qZOkVwkh~!{fiz{L|T%TsC*w>Pws` zrq#E64xwK*iiD-reV)*)I$PbM;>{?Q%pi$ZWT@ZgD440MQ-(g3EQfn@o%Bute}uIv z)CH9Qqf$pluJ0D8(D<*3Wy{HyZLtKIoQ$2BD$F)d(Y-lGL=62O*43I&w6zxfPE4bX zJx-|b>RB@yF#Gfk_Vlc+1$mOY?ypS zWz&3DIWMBlx|}~Aeg7J|sbR(u}25UR5Uc!_e)v>&8R`Ke{(cpiQqY^&@Peqhb-&Z#0Co;Fz+nJ^97^&z2 z%7MRo?Feya@d(E;>CYUTQ;+mIGMUo^HZGdp<_d|v z+rnwvx!0(Uuj??Sy;d>069^N*NOw=#b1LjV<-A5vS3P|COSHE?G{;9RNI52($ zv!5#2jlFA{-I|9OR;hoYdX(iKUEX)wAH{1W=%JmsYfPipIMm5&kMoxj z{)R|soc?teHq>+&5X^sZ$z+|q5gnSW8^}=H$g;WeW#(HQCYo@yXt`A#ap40}Q|BhJ z&9v`H97Jl21b4(?D#U3Zo`6n@KH|MhE#wG`rokq<@#$QDjkb8dRN2PC82zC5E=(h;&a2bO|B z{tThxStWTu&ehF4A*rm6kjSJ4B=V_CoaG1!m{%qICZzy~n$y{*#nuX}Z;%_$J=>3- zkdV;aE39Q?L-nYi(*9G2pLp$aD#7w-f_c+hk{jgl-bXUh=w&3B3g4uXWS2~P5wvuK zd;k$@P$lT{6@CwT+>0f>84phVSta}PFRK(m*aFf6p*ps3gbee9aQy>ekai|<0Xf&^ zaDyys1KzojwB3^R93f?o`D&2hna^ywJP*igVL#9mfG`okZXEnK{L@qu{CqH}?+9u7 zexNOW0U1X77Nk9%c+@z^;C5$xgKY6cu65w3BcG6}PR(pbJfm3cT!H9E$fbrf1d_b{ z2gX2mA-yc=5mM3T)VBMngS5Y50hxk_stpkI)gn1`u>&8FTiR<+z)9aGC%cw41c6l2 z)1}=>2T_ILWgTu`ntt7}t0aMjjLbfMw7Se_bMIe}Y5g6hQKr<2r^VvHa=)FG|HJ(O znY?F39dp9t6(*U*ejq^5usnpYE9>v~*FM$&eB^wV2KzJ@tLt7M*KheZtB8N9z8mP0 z@c>;ce(bZQlCHRcoZB1-a6K_yW3I-2jD$nNDx#MJt~10qjxPlgY{@BrncFgPzDRR_vA z1tFYqWOD`Lom=iteQ3n!mnhq95$MNX4Dg~?POGuX{$0eT=1UgJ@LL&bLY*`=&gMdNFh{N=%yNjLzSc#c*g=dH83^W1? zPGVOQzdNTU-05^+a$(!un?gXFUcWy+YsXqzZxFO@Gk7ZT#?{{uoV@yI4zA;lzWTGK zARKuD-wH9s^Mi7`z~>AZTW2%p(i9&3+ghJq;%6YLoVj}{ZGat5Au3rzH!0!aR&}JO z{WozfO5L6Pp^fwfhJ9`)GB*5z(XEja@d6GVFk0@6&WPzqiO&bf|DCOq}x1P@0EeqbOU_Yp&bFx0!fzB(45Je)##e;!z#S%`{%U zfyE&3!PPx$WVYkB^I5C2MBse-c1GMsFNsav8yY zJNdaK@rzOJY`J}b?qyCg`2=lO-Yf`=X%TE<2W^Oc98OSMQawDiZmW@b2(mrV{Muq5 z9F4aREb*WkWz9R(o!GJeu0ibE&{gVRwKK8~hbDINndj$hbemG<~~`L;5!@ zz@x;75*RRaz-Y8?B50{>V`4r3&ev^e%}DW1c5ujj8|6CV9M_2}QseT0@@J^p-f`cB zqmuvW>ovB^MVnb4hMR&uR#S#|ey^LW5cQm^)(1V?z1VZNL|chAW@&${OlVfg!mE)0 z`R?UUv{@{*)tGQ8qM{l?5HKkizU%hptmIf+JVacM)cEPv=k7^gl5O?75v1yVS?h`P{=sw93UQvPj>I?~IU8%G+ zJ+V8bs$4hm9*JUHz;5v@x1ix$ino|U&8+o2O5*3o@sOzblg8tj2c92C-fJ;Uza)># zZ}lHPaV-(wt~pf{OQO-OhJrU49;hhkXzuvkwW zk0Hx|BVkV=FVx@;6ERX>02Y9t$#|_xSO3fWI#m|6COpSz%an zMS4rBAee$N+zbd_QYH?0k-A>RR1%oiCT)@UM&czd_|FFkxlZ8Eq6C9F9OJD(z(y6wj{$I4kXZYx|vg4UU?qy z^y0zO>w_>6pR%h!uAN=%7g8M1SZsm*cy_S)O8-CQmlIP!W$=A~I8*)TOj81(mqg<@ zjoCD$*meiR7*wR1{)OnfPGW-oI{WCjcES4NQRk@oN3yW*cDbRD0a?)c8PSby)2z^E zXmk6}FMMw}h5y##3&%;Rv2z2ewPy&LCUtnN>|*xWQ{e}UA#7&GwndC4{~IheCuX;{ zb=HVzFVs)ajvaMCVIVw;KVsrI*)=j;o!w8U7( z=R7LV!)c!o_q=J2*W%y`WmU*aF#D?mKm7O1tNWyO($9S?wWc$Ve<(QYM`A*~as|&d zlz&DmLdm8oW}H5Ha@K~=Db9?;e6N!-%G^SS#hTj+#Ug`%iF>Wm77;6N7N$!|?v#VG z50d;$dbp#h+JTCLZpJZ;1ggVPxk`f~scC2fglS$VX|$J&wjZ1NH@=P7q3pr)-4k~O z;Cr5#>!C{Hqbc_w9-dtn)f=Jsz?`y^l*_UiKWYx!5Q7w-XlZdnn$#J6yMBR0cB*pS zBO}FQXPdtOk8Q4gfE0!214y*-?MC|K*5iXyKL1Y2uJ!lV4cj^ms<0utCf+$loL|vE z<6?S`Ck+F^QPm3C&(1U2t=uZCk);B!C0dZjS4F`~=Aq|Dr+=GA^|f~sp;T9ge?&&y zXZ2sO@Va$G@#fnZmg-I1ytlFyJ|*tQ64L+F{FgQaczuC=fv_>jf98s#4VAnu{V+P( z?6`Nd{@u_O8jsg#vRtEeUJ_<7JD<6kYDcj5D6upu#!^LlbLR4Vy5#-NcPYH*=~vfp z1$3nXpqD*{V$OU_#mBU!H~a01jN-MbpX3p-$4w*}AB~lFs$6!ht|;;zfyjT8-mb6zl70o>@beS-t^#}qk}H? zO`N#sw~mu-j>jol53p3OXMZBYy6}jse3P>A*2zuE#f zEyXLFEaSK4%=qD{?aSlaX9Cm+rioep>%<|8vexxB6wckQx8^-YCXwh)iG4FlKi>2U z0JrarTZn@8!qxKnrpO9eQ%)rUR}O-)ohCliKf`$^a1rikLH;6`9T^*Th|UmF8ADf- z!{B3tKcrWX)a+#<=Pj*NlPRJ+E{D3klNuUqJSsufPhtID z8j|h`LV1goBoSBT+@mLcrH9m|BU z3yg6barOJmP8N0?ClDV~U63)3w%heolFL8sRxcMPSfAMy>lL4|TU?>3Ob;9XH^w|p zLtrZkFTRji6lNtc0SrbXOdi_cxAUO&{tr<7tw-;d<-a@l>$8)rWaKXdET=dufP8u*Zi<}|%>mnlcT9kx?U8^94Ri~^5_Jl+9=t9WiwIP6ff197xP$I^A zK3X_Bg&$K5JDU5Nel{OMg}vvw#e0H|h&?*#*!meZN8P+P@tCOB#g5eIC_ha~@F#t@-c3un&Cghy|_278y9Z?WHKfw#uHRHF)B=D2r6TkgAq_u5k zmo7j0>8gCKh2O#!=4z1shkRgZgma4eHTcmx}u%*t{9-;sQ8YSvf4_rqR%za zCGgud4BnL)g&Fx@+Pvw6v|5Bp+N|fZThv)&N0~1fvWRGUfFqL~b@)i`1)d%R*@dYM z?Ba2Tf2AIKWWl-AnMu8iQGk z0O9s~p@L_fWPE);Fk8I0Ov&TKv97Gopmv2lp8g>N+w1M5B@or0E$ zvmdm1lQ(B=Vc;xpPFwP_$&6%9z7{*-sL0l-nB?Rj_7|Opdx(G<-luD9_0)c<0!EBp z+x{6;_0QT1FDQn7$b6`GH#>fV!f;eRA2C=#_T1gjK>Jqe@3Tm<>Hy++r+HBgy4Qf6 z0TVvXbAl?fQcRCrdqLrll9yka4!$(3x`Q5_hJx6lX(iB)37H5r6VZ^O?;d`32Jx~` zQ)qscMonHY>ZBg{`C%hA$}5F_%Z_;$e8PcvtWCXspBiZx6Cmg4+kjr-0Y4i$FX@ z$7RfJh}w6}0kS{%c#*_`yk3bQCh#}CONM}#Meh9X@fkckbqnqBKHOWuhHESY-4Dz(_#>0WAICP-to~ZWDE`j!G{yn5^$>_mJAtp>){!bRO zMbt5Qm@t)WGTw|`ZR(;3-`V$1tKN&RNF(MTkHEX1Z|A!(2=>nk#SAX@Qbz8qK?3FW z0hk1{j`M7?RIR^0X1NahDaq5@&iy-yVZM(k>O5eAU;t3;lZAEycFiFE$=fBtIdCm?2zMY%H|wsGyz?(il{oyArT!}5Pj3bH$F}}AQ^`4MJgvGOZbS{lpD5o zPA_oB1f+-wFk$S_ZQ!`o5_z6UQ9lL>0amE>Q)26Z!fJ$2a0-!cl)xMOKN7+Y&y)!r zvlL(aNCroDq+7)7sBR1B_!ur3Q@{R+ZG9i@W=>d? z%rV@2dX42E;8_Wd0PJm~Aob^Na4os(*_-o79-wWcmn+OS`5NR%Hz2LNw7^(`7A>?b z&2Kdy(}|}1AQ9H~qPvvfeJ2Y3S`}UZZCteXGu^$7PBan6+6Xu32mQG~?j;n8D<2&~ zvpjGKksHH+QNCZeZaulc;^tnSJv7ulE2cG|i<+)e0CNI}{mH!(_}w{x7JLShCc6zd z1nL6`I3u+dd&LUa0)oR#vE1OefAEDSRrz-EqXp63fc(>EbN8zKkWbJ0_)su}tqKfD z%+WXUFslO!vU0;z+{DJK^h0Q6^Tj0#9%A8GjBTUA+-E}g-s60WJ?9Zl!}o+Dlyq^L zd&O%gXw-s7CggJ%)8Y&V!9gMAVCVrYalENAb+T(a-LTu)bzQtAt*wy!#-1j0#OfUN`p6V;(Qj1xBA^=;&j>greQSvrexoB_^&Hy{9TCwzAP_*^ z$@Fkac&VWS+kHvUDVXXw^55Sz;QxOa@SpbqFIUjo4xqKwU%^Kzk!IVn2)OLFKXa0r zXzBJYy|vHgBykJ>7ZO#eK=VH!3qcDJoLEz2xWo>!zV`FAGWnibIzBejmh#*Es>jYq z%ueU#JlW=;t4Nm=$$VTK<#q$jhs!gxFAs_DOeUStoY-OHR(1rfz^0&@U4K-t5eXxA zN@e$_AeX9uwP6Yk(d1_U=iA~@(Mc+6p`$+0Vi5U#qFZHkd*qS?Z_wv2VN+Y#CC-tg z+Md~JB6MH*0K$e$k?jXf65Sl0=pNPs@T25ypI2Y|Eki}~82K-&hM7Mu%(kOq zNa&lOkCE(XeD)se03z6;i$q6B`_`x)baprFmQG;uS)QT%%7CMXy19&4E47SxVS+a6zEe~otNzv@5qcbFXo-LsmX(4G zx(%CQX9N$cwa&;%!>5?zp_8^!BwGM;k|wmftr`Xh6qW5=ZPaL%R5Xx=P~U1gr}riDego?h=6?XW%{k|Al~S6 zn#69JNX$iG5^a>##H4}kp^wb`f7!x#J9QP|s}r4_`ocZEx=pU8%TLg#bAs)_@t$OO z3iWm6@TBnMyhY{aKw~Yr?bue}cNg2ljMT`)6gvK%N7wOu z=yKrU{mx0@*{0;`%zjtO<&S+nKgFC!PI>cXNyMR(pb<0zXW% z`8KO2NJ$l5TPqHwDJ&-VRB8%Ohh7XH@FdCoyj$(Qo39`AYv}7KCkvu!)FWI2-ytWvWQC5Lql(cX>cCr1XC&I|W?Db!| zNrNWNkDBSvxw}=R5}dLV(Lncdr>f!)YvSG}@S^geYUFI!ny7o^VvAsYg3L6{Q<36E zqtV)BTKl$K(KA(12gjini2rL24?{1QUXlw(zA~dck$b@@EojhhRCk8?6%(HPlIJ=S zjnDsMmZ~BqR!3!=``dq|D^&mb|EqDqicPS1FQlw!PbB%e{M>gFTpw!s3YF~jEBXKl ztglr@p|JueL3mPF)uw^lc>G2Q^sJ3o{6;;`Uv9o-ErszP{|PTwN=)tDEuER_n7cNZ zi!_u~K&d%>FN1#B+< zsIQ;>Psz=w-v1Rep_rfTBUbFF-v8#td-lJZ-oMQ_I$PNpJA1MJE7JL9r>giI<39|j O|H$p%H-`T|qyG<8XV(Y- diff --git a/mobile/src/main/java/ru/omni_devel/cards/Elements.kt b/mobile/src/main/java/ru/omni_devel/cards/Elements.kt index 192b76c..13ec775 100644 --- a/mobile/src/main/java/ru/omni_devel/cards/Elements.kt +++ b/mobile/src/main/java/ru/omni_devel/cards/Elements.kt @@ -58,7 +58,9 @@ fun TopBar(text: String, innerPadding: PaddingValues) { modifier = Modifier .fillMaxWidth() .background(MaterialTheme.colorScheme.primaryContainer) - .padding(innerPadding) + .padding(top = innerPadding.calculateTopPadding()) + .padding(horizontal = 8.dp) + .padding(bottom = 8.dp) ) { Text( text, diff --git a/wear/release/baselineProfiles/0/wear-release.dm b/wear/release/baselineProfiles/0/wear-release.dm index 466b35c9fc3e166a15309e348209439ee2b4e687..d50c81b7e80bf2ef8bcebe8493acd57435086d00 100644 GIT binary patch delta 105 zcmdm#xhaz;z?+#xgn@&DgW=uci9A(u1=sCl4AdDIK7C_g;9*G4Nh~f-EjH3iNv&X* z^5yczCEW%RGHZU%WHe-8_+!ApfUJG9yWtxqj(3aC#eh^ywl*{i delta 105 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 delta 12669 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 Date: Mon, 15 Jun 2026 15:18:31 +0300 Subject: [PATCH 2/5] feat: added automatic generation for versionCode --- mobile/build.gradle.kts | 12 +++++++++++- wear/build.gradle.kts | 12 +++++++++++- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/mobile/build.gradle.kts b/mobile/build.gradle.kts index eef0c06..56d6d08 100644 --- a/mobile/build.gradle.kts +++ b/mobile/build.gradle.kts @@ -4,6 +4,16 @@ plugins { alias(libs.plugins.kotlin.serialization) } +fun generateVersionCode(): Int { + return try { + val process = ProcessBuilder("git", "rev-list", "--count", "HEAD").start() + + "${process.inputStream.bufferedReader().readText().trim()}0".toInt() // 0 at end for mobile + } catch (e: Exception) { + 1 + } +} + android { namespace = "ru.omni_devel.cards" compileSdk = 36 @@ -12,7 +22,7 @@ android { applicationId = "ru.omni_devel.cards" minSdk = 30 targetSdk = 36 - versionCode = 80 // 0 at end for mobile + versionCode = generateVersionCode() versionName = "2.3.1" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" diff --git a/wear/build.gradle.kts b/wear/build.gradle.kts index aae3fe0..5a3f467 100644 --- a/wear/build.gradle.kts +++ b/wear/build.gradle.kts @@ -4,6 +4,16 @@ plugins { alias(libs.plugins.kotlin.serialization) } +fun generateVersionCode(): Int { + return try { + val process = ProcessBuilder("git", "rev-list", "--count", "HEAD").start() + + "${process.inputStream.bufferedReader().readText().trim()}1".toInt() // 0 at end for WearOS + } catch (e: Exception) { + 1 + } +} + android { namespace = "ru.omni_devel.cards" compileSdk = 36 @@ -12,7 +22,7 @@ android { applicationId = "ru.omni_devel.cards" minSdk = 30 targetSdk = 36 - versionCode = 71 // 1 at end for WearOS + versionCode = generateVersionCode() versionName = "1.3.0" } From 36abc10972a0c255b84b932ec1fad08daf276e9a Mon Sep 17 00:00:00 2001 From: Omni Devel Date: Mon, 15 Jun 2026 17:18:36 +0300 Subject: [PATCH 3/5] feat: added russian translations --- mobile/src/main/AndroidManifest.xml | 9 -- .../ru/omni_devel/cards/BackupActivity.kt | 22 ++--- .../ru/omni_devel/cards/EditCardActivity.kt | 28 +++--- .../main/java/ru/omni_devel/cards/Elements.kt | 5 +- .../java/ru/omni_devel/cards/MainActivity.kt | 21 +++-- .../ru/omni_devel/cards/ShowCardActivity.kt | 3 +- .../main/java/ru/omni_devel/cards/Utils.kt | 9 +- mobile/src/main/res/values-ru/strings.xml | 41 +++++++++ mobile/src/main/res/values/strings.xml | 89 +++++++++---------- 9 files changed, 133 insertions(+), 94 deletions(-) create mode 100644 mobile/src/main/res/values-ru/strings.xml diff --git a/mobile/src/main/AndroidManifest.xml b/mobile/src/main/AndroidManifest.xml index 1f57f40..83ff95f 100644 --- a/mobile/src/main/AndroidManifest.xml +++ b/mobile/src/main/AndroidManifest.xml @@ -11,27 +11,18 @@ - diff --git a/mobile/src/main/java/ru/omni_devel/cards/BackupActivity.kt b/mobile/src/main/java/ru/omni_devel/cards/BackupActivity.kt index ee944e9..75f7af5 100644 --- a/mobile/src/main/java/ru/omni_devel/cards/BackupActivity.kt +++ b/mobile/src/main/java/ru/omni_devel/cards/BackupActivity.kt @@ -24,7 +24,7 @@ import kotlinx.serialization.json.Json import ru.omni_devel.cards.ui.theme.OmniCardsTheme import androidx.compose.runtime.getValue import androidx.compose.runtime.setValue -import kotlinx.serialization.decodeFromString +import androidx.compose.ui.res.stringResource class BackupActivity : ComponentActivity() { private lateinit var db: DbHelper @@ -65,12 +65,12 @@ fun BackupPage(innerPadding: PaddingValues, getDbFun: () -> DbHelper) { context.contentResolver.openOutputStream(it)?.use { outputStream -> outputStream.write(jsonData.toByteArray()) - Toast.makeText(context, "Backup successfully saved", Toast.LENGTH_SHORT).show() + Toast.makeText(context, context.getString(R.string.backup_successfully_saved), Toast.LENGTH_SHORT).show() activityContext!!.finish() } } catch (e: Exception) { - Toast.makeText(context, "Failed to save backup: $e", Toast.LENGTH_LONG).show() + Toast.makeText(context, context.getString(R.string.failed_to_save_backup, e), Toast.LENGTH_LONG).show() } } } @@ -86,8 +86,8 @@ fun BackupPage(innerPadding: PaddingValues, getDbFun: () -> DbHelper) { if (showImportDialog.value) { AlertDialog( - title = { Text("Restore backup") }, - text = { Text("This will replace existing cards by data from backup file. Continue?") }, + title = { Text(stringResource(R.string.ask_do_restore)) }, + text = { Text(stringResource(R.string.restore_caution)) }, confirmButton = { TextButton( onClick = { @@ -105,17 +105,17 @@ fun BackupPage(innerPadding: PaddingValues, getDbFun: () -> DbHelper) { db.clearDatabase() db.addCards(cards) - Toast.makeText(context, "Data successfully restored from backup", Toast.LENGTH_SHORT).show() + Toast.makeText(context, context.getString(R.string.backup_successfully_restored), Toast.LENGTH_SHORT).show() activityContext!!.finish() } } catch (e: Exception) { - Toast.makeText(context, "Failed to restore data from backup: $e", Toast.LENGTH_LONG).show() + Toast.makeText(context, context.getString(R.string.failed_to_restore_backup, e), Toast.LENGTH_LONG).show() } } } ) { - Text("Yes") + Text(stringResource(R.string.yes)) } }, dismissButton = { @@ -124,7 +124,7 @@ fun BackupPage(innerPadding: PaddingValues, getDbFun: () -> DbHelper) { showImportDialog.value = false } ) { - Text("No") + Text(stringResource(R.string.no)) } }, onDismissRequest = { showImportDialog.value = false }, @@ -137,14 +137,14 @@ fun BackupPage(innerPadding: PaddingValues, getDbFun: () -> DbHelper) { createBackupLauncher.launch("omnicards-backup.json") } ) { - Text("Backup to file") + Text(stringResource(R.string.do_backup)) } FullWidthButton( onClick = { restoreFromBackupLauncher.launch("application/json") } ) { - Text("Restore from file") + Text(stringResource(R.string.do_restore)) } } } diff --git a/mobile/src/main/java/ru/omni_devel/cards/EditCardActivity.kt b/mobile/src/main/java/ru/omni_devel/cards/EditCardActivity.kt index b439fd3..0cf992b 100644 --- a/mobile/src/main/java/ru/omni_devel/cards/EditCardActivity.kt +++ b/mobile/src/main/java/ru/omni_devel/cards/EditCardActivity.kt @@ -34,6 +34,8 @@ import androidx.compose.runtime.saveable.rememberSaveable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.dp import androidx.core.graphics.toColorInt import com.github.skydoves.colorpicker.compose.ColorEnvelope @@ -79,6 +81,8 @@ fun CardEditable( color: String?, onColorChange: (String?) -> Unit ) { + val context = LocalContext.current + var isCodeTypeDropdownExpanded by rememberSaveable { mutableStateOf(false) } var isColorPickerExpanded by rememberSaveable { mutableStateOf(false) } var isColorEnabled by rememberSaveable { mutableStateOf(color != null) } @@ -105,7 +109,7 @@ fun CardEditable( value = cardName, onValueChange = onCardNameChange, modifier = fieldModifier, - label = { Text("Name") } + label = { Text(stringResource(R.string.card_name)) } ) Row( horizontalArrangement = Arrangement.spacedBy(8.dp) @@ -114,21 +118,21 @@ fun CardEditable( value = codeValue, onValueChange = onCodeValueChange, modifier = Modifier.weight(1f), - label = { Text("Value") } + label = { Text(stringResource(R.string.card_value)) } ) Button( modifier = Modifier.align(Alignment.CenterVertically), onClick = { scanLauncher.launch( ScanOptions().apply { - setPrompt("Scan your card") + setPrompt(context.getString(R.string.scan_your_card)) setBeepEnabled(true) setOrientationLocked(false) } ) } ) { - Text("Scan") + Text(stringResource(R.string.do_scan_card)) } } @@ -139,7 +143,7 @@ fun CardEditable( value = codeType.name, onValueChange = {}, modifier = fieldModifier, - label = { Text("Code type") }, + label = { Text(stringResource(R.string.card_code_type)) }, readOnly = true, ) Box( @@ -176,7 +180,7 @@ fun CardEditable( isColorPickerExpanded = !isColorPickerExpanded } ) { - Text("Choose color") + Text(stringResource(R.string.do_choose_color)) } Switch( checked = isColorEnabled, @@ -215,7 +219,7 @@ fun AddCard(innerPadding: PaddingValues, getDbFun: () -> DbHelper) { val context = LocalActivity.current Page( - "New card", + stringResource(R.string.new_card_title), innerPadding ) { Column( @@ -244,11 +248,11 @@ fun AddCard(innerPadding: PaddingValues, getDbFun: () -> DbHelper) { getDbFun().addCard(cardName, codeValue, codeType, color) context!!.finish() } else { - Toast.makeText(context, err, Toast.LENGTH_SHORT).show() + Toast.makeText(context, context!!.getString(err), Toast.LENGTH_SHORT).show() } } ) { - Text("Save") + Text(stringResource(R.string.do_save)) } } } @@ -264,7 +268,7 @@ fun EditCard(cardInfo: CardInfo, innerPadding: PaddingValues, getDbFun: () -> Db val context = LocalActivity.current Page( - "Editing card id${cardInfo.id}", + stringResource(R.string.editing_card_title, cardInfo.id), innerPadding ) { Column( @@ -293,11 +297,11 @@ fun EditCard(cardInfo: CardInfo, innerPadding: PaddingValues, getDbFun: () -> Db getDbFun().editCard(cardInfo.id, cardName, codeValue, codeType, color) context!!.finish() } else { - Toast.makeText(context, err, Toast.LENGTH_SHORT).show() + Toast.makeText(context, context!!.getString(err), Toast.LENGTH_SHORT).show() } } ) { - Text("Save") + Text(stringResource(R.string.do_save)) } } } diff --git a/mobile/src/main/java/ru/omni_devel/cards/Elements.kt b/mobile/src/main/java/ru/omni_devel/cards/Elements.kt index 13ec775..b008911 100644 --- a/mobile/src/main/java/ru/omni_devel/cards/Elements.kt +++ b/mobile/src/main/java/ru/omni_devel/cards/Elements.kt @@ -31,6 +31,7 @@ import androidx.compose.runtime.setValue import androidx.compose.ui.graphics.Color import androidx.compose.ui.input.pointer.pointerInput import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp @@ -128,7 +129,7 @@ fun CardButton(cardInfo: CardInfo, onDeleteCard: (Int) -> Unit) { onDismissRequest = { menuExpanded = false } ) { DropdownMenuItem( - text = { Text("Edit") }, + text = { Text(stringResource(R.string.do_edit_card)) }, onClick = { menuExpanded = false @@ -140,7 +141,7 @@ fun CardButton(cardInfo: CardInfo, onDeleteCard: (Int) -> Unit) { } ) DropdownMenuItem( - text = { Text("Delete") }, + text = { Text(stringResource(R.string.do_delete_card)) }, onClick = { menuExpanded = false diff --git a/mobile/src/main/java/ru/omni_devel/cards/MainActivity.kt b/mobile/src/main/java/ru/omni_devel/cards/MainActivity.kt index 8f57706..ba7d222 100644 --- a/mobile/src/main/java/ru/omni_devel/cards/MainActivity.kt +++ b/mobile/src/main/java/ru/omni_devel/cards/MainActivity.kt @@ -33,6 +33,7 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.graphics.Color import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.platform.LocalUriHandler +import androidx.compose.ui.res.stringResource import kotlinx.serialization.json.Json import ru.omni_devel.cards.ui.theme.OmniCardsTheme @@ -87,7 +88,7 @@ fun MainPage( modifier = Modifier.fillMaxSize() ) { Page( - "OmniCards", + stringResource(R.string.app_name), innerPadding ) { Column( @@ -95,7 +96,9 @@ fun MainPage( verticalArrangement = Arrangement.spacedBy(8.dp) ) { if (cards.isEmpty()) { - Text("Add new card to get started") + Text( + stringResource(R.string.add_card_to_get_started) + ) } else { for (card in cards) { CardButton(card, onDeleteCard) @@ -126,24 +129,24 @@ fun MainPage( context.startActivity(intent) } ) { - Text("Add card") + Text(stringResource(R.string.do_add_card)) } FullWidthButton( onClick = { - Toast.makeText(context, "Sync in progress...", Toast.LENGTH_SHORT).show() + Toast.makeText(context, context.getString(R.string.sync_in_progress), Toast.LENGTH_SHORT).show() sendToWatch(context, "/updateCards", Json.encodeToString(getDbFun().getCards())) { isSuccess -> if (isSuccess) { - Toast.makeText(context, "Successfully synced!", Toast.LENGTH_SHORT).show() + Toast.makeText(context, context.getString(R.string.sync_is_successful), Toast.LENGTH_SHORT).show() } else { - Toast.makeText(context, "Sync failed! Please, check your connection", Toast.LENGTH_LONG).show() + Toast.makeText(context, context.getString(R.string.sync_is_fail), Toast.LENGTH_LONG).show() } } isActionBarShowed = false } ) { - Text("Sync with WearOS") + Text(stringResource(R.string.do_sync)) } FullWidthButton( onClick = { @@ -154,7 +157,7 @@ fun MainPage( isActionBarShowed = false } ) { - Text("Backup") + Text(stringResource(R.string.open_backup_menu)) } FullWidthButton( onClick = { @@ -163,7 +166,7 @@ fun MainPage( isActionBarShowed = false } ) { - Text("Source code") + Text(stringResource(R.string.source_code)) } FullWidthButton( onClick = { diff --git a/mobile/src/main/java/ru/omni_devel/cards/ShowCardActivity.kt b/mobile/src/main/java/ru/omni_devel/cards/ShowCardActivity.kt index 3e01f06..f805a5a 100644 --- a/mobile/src/main/java/ru/omni_devel/cards/ShowCardActivity.kt +++ b/mobile/src/main/java/ru/omni_devel/cards/ShowCardActivity.kt @@ -22,6 +22,7 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.asImageBitmap import androidx.compose.ui.layout.ContentScale +import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp import ru.omni_devel.cards.ui.theme.OmniCardsTheme @@ -105,7 +106,7 @@ fun ShowCardPage(innerPadding: PaddingValues, cardInfo: CardInfo) { ) } else { Text( - "Failed to generate code. Check card data", + stringResource(R.string.failed_to_generate_card_code), modifier = Modifier.fillMaxWidth(), textAlign = TextAlign.Center, color = MaterialTheme.colorScheme.error diff --git a/mobile/src/main/java/ru/omni_devel/cards/Utils.kt b/mobile/src/main/java/ru/omni_devel/cards/Utils.kt index ed76b3d..0947346 100644 --- a/mobile/src/main/java/ru/omni_devel/cards/Utils.kt +++ b/mobile/src/main/java/ru/omni_devel/cards/Utils.kt @@ -2,6 +2,7 @@ package ru.omni_devel.cards import android.content.Context import android.graphics.Bitmap +import androidx.compose.ui.platform.LocalContext import com.google.android.gms.wearable.Wearable import com.google.zxing.BarcodeFormat import com.google.zxing.MultiFormatWriter @@ -49,13 +50,13 @@ fun sendToWatch(context: Context, path: String, message: String, onResult: (Bool } } -fun checkCardData(name: String, value: String): String? { +fun checkCardData(name: String, value: String): Int? { if (name.isEmpty()) { - return "Name should not be empty" + return R.string.card_name_should_not_be_empty } else if (value.isEmpty()) { - return "Code value should not be empty" + return R.string.card_value_should_not_be_empty } else if (name.length > 32) { - return "Name must be shorter than 32 symbols" + return R.string.name_must_be_shorter_than_32_symbols } return null diff --git a/mobile/src/main/res/values-ru/strings.xml b/mobile/src/main/res/values-ru/strings.xml new file mode 100644 index 0000000..9072d3a --- /dev/null +++ b/mobile/src/main/res/values-ru/strings.xml @@ -0,0 +1,41 @@ + + Добавьте новую карту для того, чтобы начать работу + + Добавить карту + Редактировать карту + Удалить карту + Исходный код + + Синхронизировать с WearOS + Синхронизация в процессе... + Успешная синхронизация! + Ошибка синхронизации. Проверьте подключение к часам + + Бэкап/восстановление + Сохранить данные + Восстановить данные + Восстановить данные? + Данные успешно сохранены + Не удалось сохранить данные: %s + Данные успешно восстановлены + Не удалось восстановить данные: %s + Это заменит существующие карты данными из файла резервной копии. Продолжить? + + Да + Нет + Сохранить + + Добавление карты + Редактирование карты #%d + Название карты + Значение карты + Сканировать карту + Отсканируйте вашу карту + Тип кода карты + Выбрать цвет + Имя карты не должно быть пустым + Значение карты не должно быть пустым + Имя карты должно быть короче 32 символов + + Не удалось сгенерировать код карты. Проверьте данные + \ No newline at end of file diff --git a/mobile/src/main/res/values/strings.xml b/mobile/src/main/res/values/strings.xml index e54dca9..c923782 100644 --- a/mobile/src/main/res/values/strings.xml +++ b/mobile/src/main/res/values/strings.xml @@ -1,49 +1,46 @@ - OmniCards - - First Fragment - Second Fragment - Next - Previous + First Fragment + Second Fragment - - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam in scelerisque sem. Mauris - volutpat, dolor id interdum ullamcorper, risus dolor egestas lectus, sit amet mattis purus - dui nec risus. Maecenas non sodales nisi, vel dictum dolor. Class aptent taciti sociosqu ad - litora torquent per conubia nostra, per inceptos himenaeos. Suspendisse blandit eleifend - diam, vel rutrum tellus vulputate quis. Aliquam eget libero aliquet, imperdiet nisl a, - ornare ex. Sed rhoncus est ut libero porta lobortis. Fusce in dictum tellus.\n\n - Suspendisse interdum ornare ante. Aliquam nec cursus lorem. Morbi id magna felis. Vivamus - egestas, est a condimentum egestas, turpis nisl iaculis ipsum, in dictum tellus dolor sed - neque. Morbi tellus erat, dapibus ut sem a, iaculis tincidunt dui. Interdum et malesuada - fames ac ante ipsum primis in faucibus. Curabitur et eros porttitor, ultricies urna vitae, - molestie nibh. Phasellus at commodo eros, non aliquet metus. Sed maximus nisl nec dolor - bibendum, vel congue leo egestas.\n\n - Sed interdum tortor nibh, in sagittis risus mollis quis. Curabitur mi odio, condimentum sit - amet auctor at, mollis non turpis. Nullam pretium libero vestibulum, finibus orci vel, - molestie quam. Fusce blandit tincidunt nulla, quis sollicitudin libero facilisis et. Integer - interdum nunc ligula, et fermentum metus hendrerit id. Vestibulum lectus felis, dictum at - lacinia sit amet, tristique id quam. Cras eu consequat dui. Suspendisse sodales nunc ligula, - in lobortis sem porta sed. Integer id ultrices magna, in luctus elit. Sed a pellentesque - est.\n\n - Aenean nunc velit, lacinia sed dolor sed, ultrices viverra nulla. Etiam a venenatis nibh. - Morbi laoreet, tortor sed facilisis varius, nibh orci rhoncus nulla, id elementum leo dui - non lorem. Nam mollis ipsum quis auctor varius. Quisque elementum eu libero sed commodo. In - eros nisl, imperdiet vel imperdiet et, scelerisque a mauris. Pellentesque varius ex nunc, - quis imperdiet eros placerat ac. Duis finibus orci et est auctor tincidunt. Sed non viverra - ipsum. Nunc quis augue egestas, cursus lorem at, molestie sem. Morbi a consectetur ipsum, a - placerat diam. Etiam vulputate dignissim convallis. Integer faucibus mauris sit amet finibus - convallis.\n\n - Phasellus in aliquet mi. Pellentesque habitant morbi tristique senectus et netus et - malesuada fames ac turpis egestas. In volutpat arcu ut felis sagittis, in finibus massa - gravida. Pellentesque id tellus orci. Integer dictum, lorem sed efficitur ullamcorper, - libero justo consectetur ipsum, in mollis nisl ex sed nisl. Donec maximus ullamcorper - sodales. Praesent bibendum rhoncus tellus nec feugiat. In a ornare nulla. Donec rhoncus - libero vel nunc consequat, quis tincidunt nisl eleifend. Cras bibendum enim a justo luctus - vestibulum. Fusce dictum libero quis erat maximus, vitae volutpat diam dignissim. - - ShowCardActivity - AddCardActivity - EditCardActivity - BackupActivity + OmniCards + + Add a new card to get started + + Add card + Edit card + Delete card + Source code + + Sync with WearOS + Sync in progress... + Sync successful! + Sync failed. Check your watch connection + + Backup / Restore + Save data + Restore data + Restore data? + Data saved successfully + Failed to save data: %s + Data restored successfully + Failed to restore data: %s + This will replace your existing cards with data from the backup file. Continue? + + Yes + No + Save + + Add card + Editing card #%d + Card name + Card value + Scan card + Scan your card + Card code type + Choose color + Card name must not be empty + Card value must not be empty + Card name must be shorter than 32 characters + + Failed to generate card code. Check the card data \ No newline at end of file From 4b840bf87d5186f4e7090402bb6101cc7e4e28b4 Mon Sep 17 00:00:00 2001 From: Omni Devel Date: Mon, 15 Jun 2026 17:30:05 +0300 Subject: [PATCH 4/5] feat: added russian translations for WearOS --- .../ru/omni_devel/cards/presentation/MainActivity.kt | 4 +++- .../ru/omni_devel/cards/presentation/MessagesReciever.kt | 3 ++- .../ru/omni_devel/cards/presentation/ShowCardActivity.kt | 4 +++- wear/src/main/res/values-ru/strings.xml | 7 +++++++ wear/src/main/res/values/strings.xml | 9 +++++++-- 5 files changed, 22 insertions(+), 5 deletions(-) create mode 100644 wear/src/main/res/values-ru/strings.xml diff --git a/wear/src/main/java/ru/omni_devel/cards/presentation/MainActivity.kt b/wear/src/main/java/ru/omni_devel/cards/presentation/MainActivity.kt index 6e764cb..eeb1a77 100644 --- a/wear/src/main/java/ru/omni_devel/cards/presentation/MainActivity.kt +++ b/wear/src/main/java/ru/omni_devel/cards/presentation/MainActivity.kt @@ -12,9 +12,11 @@ import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.dp import androidx.wear.compose.foundation.lazy.TransformingLazyColumn import androidx.wear.compose.material3.Text +import ru.omni_devel.cards.R class MainActivity : ComponentActivity() { private lateinit var db: DbHelper @@ -41,7 +43,7 @@ fun App(cards: List) { modifier = Modifier.fillMaxSize(), contentAlignment = Alignment.Center ) { - Text("Sync with mobile APP to get started") + Text(stringResource(R.string.sync_with_mobile_app_to_get_started)) } } else { TransformingLazyColumn( diff --git a/wear/src/main/java/ru/omni_devel/cards/presentation/MessagesReciever.kt b/wear/src/main/java/ru/omni_devel/cards/presentation/MessagesReciever.kt index fa55c1e..d8a32df 100644 --- a/wear/src/main/java/ru/omni_devel/cards/presentation/MessagesReciever.kt +++ b/wear/src/main/java/ru/omni_devel/cards/presentation/MessagesReciever.kt @@ -7,6 +7,7 @@ import android.widget.Toast import com.google.android.gms.wearable.MessageEvent import com.google.android.gms.wearable.WearableListenerService import kotlinx.serialization.json.Json +import ru.omni_devel.cards.R class MessagesReceiver : WearableListenerService() { private lateinit var db: DbHelper @@ -28,7 +29,7 @@ class MessagesReceiver : WearableListenerService() { db.addCards(cards) Handler(Looper.getMainLooper()).post { - Toast.makeText(this, "Database updated!", Toast.LENGTH_SHORT).show() + Toast.makeText(this, this.getString(R.string.database_updated), Toast.LENGTH_SHORT).show() val intent = Intent(this, MainActivity::class.java).apply { flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TOP diff --git a/wear/src/main/java/ru/omni_devel/cards/presentation/ShowCardActivity.kt b/wear/src/main/java/ru/omni_devel/cards/presentation/ShowCardActivity.kt index feb4c42..bce8d3a 100644 --- a/wear/src/main/java/ru/omni_devel/cards/presentation/ShowCardActivity.kt +++ b/wear/src/main/java/ru/omni_devel/cards/presentation/ShowCardActivity.kt @@ -19,9 +19,11 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.asImageBitmap import androidx.compose.ui.platform.LocalDensity +import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.style.TextAlign import androidx.wear.compose.material3.MaterialTheme import androidx.wear.compose.material3.Text +import ru.omni_devel.cards.R class ShowCardActivity : ComponentActivity() { private lateinit var db: DbHelper @@ -105,7 +107,7 @@ fun ShowCardPage(cardInfo: CardInfo) { ) } else { Text( - "Failed to generate code", + stringResource(R.string.failed_to_generate_card_code), color = MaterialTheme.colorScheme.error, textAlign = TextAlign.Center ) diff --git a/wear/src/main/res/values-ru/strings.xml b/wear/src/main/res/values-ru/strings.xml new file mode 100644 index 0000000..57e14e2 --- /dev/null +++ b/wear/src/main/res/values-ru/strings.xml @@ -0,0 +1,7 @@ + + Синхронизируйте с мобильным приложением для начала работы + + База данных обновлена! + + Не удалось сгенерировать код карты. Проверьте данные + \ No newline at end of file diff --git a/wear/src/main/res/values/strings.xml b/wear/src/main/res/values/strings.xml index 5c299f9..0eb3a1d 100644 --- a/wear/src/main/res/values/strings.xml +++ b/wear/src/main/res/values/strings.xml @@ -1,4 +1,9 @@ - OmniCards - Hello, %1$s! + OmniCards + + Sync with mobile APP to get started + + Database updated! + + Failed to generate card code. Check the card data \ No newline at end of file From e50d0bf4ceddf5dbb4f28a39fbaadec0f0562178 Mon Sep 17 00:00:00 2001 From: Omni Devel Date: Mon, 15 Jun 2026 17:31:53 +0300 Subject: [PATCH 5/5] fix: fixed translations --- mobile/src/main/res/values-ru/strings.xml | 4 ++-- mobile/src/main/res/values/strings.xml | 4 ++-- .../java/ru/omni_devel/cards/presentation/MessagesReciever.kt | 2 +- wear/src/main/res/values-ru/strings.xml | 2 +- wear/src/main/res/values/strings.xml | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/mobile/src/main/res/values-ru/strings.xml b/mobile/src/main/res/values-ru/strings.xml index 9072d3a..3557b5e 100644 --- a/mobile/src/main/res/values-ru/strings.xml +++ b/mobile/src/main/res/values-ru/strings.xml @@ -7,8 +7,8 @@ Исходный код Синхронизировать с WearOS - Синхронизация в процессе... - Успешная синхронизация! + Синхронизация в процессе… + Успешная синхронизация Ошибка синхронизации. Проверьте подключение к часам Бэкап/восстановление diff --git a/mobile/src/main/res/values/strings.xml b/mobile/src/main/res/values/strings.xml index c923782..ccfa8da 100644 --- a/mobile/src/main/res/values/strings.xml +++ b/mobile/src/main/res/values/strings.xml @@ -12,8 +12,8 @@ Source code Sync with WearOS - Sync in progress... - Sync successful! + Sync in progress… + Sync successful Sync failed. Check your watch connection Backup / Restore diff --git a/wear/src/main/java/ru/omni_devel/cards/presentation/MessagesReciever.kt b/wear/src/main/java/ru/omni_devel/cards/presentation/MessagesReciever.kt index d8a32df..9b655b3 100644 --- a/wear/src/main/java/ru/omni_devel/cards/presentation/MessagesReciever.kt +++ b/wear/src/main/java/ru/omni_devel/cards/presentation/MessagesReciever.kt @@ -29,7 +29,7 @@ class MessagesReceiver : WearableListenerService() { db.addCards(cards) Handler(Looper.getMainLooper()).post { - Toast.makeText(this, this.getString(R.string.database_updated), Toast.LENGTH_SHORT).show() + Toast.makeText(this, this.getString(R.string.sync_is_successful), Toast.LENGTH_SHORT).show() val intent = Intent(this, MainActivity::class.java).apply { flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TOP diff --git a/wear/src/main/res/values-ru/strings.xml b/wear/src/main/res/values-ru/strings.xml index 57e14e2..e33f113 100644 --- a/wear/src/main/res/values-ru/strings.xml +++ b/wear/src/main/res/values-ru/strings.xml @@ -1,7 +1,7 @@ Синхронизируйте с мобильным приложением для начала работы - База данных обновлена! + Успешная синхронизация Не удалось сгенерировать код карты. Проверьте данные \ No newline at end of file diff --git a/wear/src/main/res/values/strings.xml b/wear/src/main/res/values/strings.xml index 0eb3a1d..08ed0bf 100644 --- a/wear/src/main/res/values/strings.xml +++ b/wear/src/main/res/values/strings.xml @@ -3,7 +3,7 @@ Sync with mobile APP to get started - Database updated! + Successfully synced Failed to generate card code. Check the card data \ No newline at end of file