From ee462715de625c37c6b785a78d80dd989368e3c3 Mon Sep 17 00:00:00 2001 From: "Alinson S. Xavier" Date: Sat, 13 Mar 2021 18:10:35 -0600 Subject: [PATCH] Use different colors for YES_AUTO and NO; increase contrast slightly --- .../render_explicit_check.png | Bin 623 -> 633 bytes .../render_implicit_check.png | Bin 567 -> 603 bytes .../CheckmarkButtonView/render_unchecked.png | Bin 643 -> 651 bytes .../habits/list/CheckmarkPanelView/render.png | Bin 1650 -> 1734 bytes .../list/CheckmarkPanelView/render_offset.png | Bin 1265 -> 0 bytes .../list/HabitCardView/render_numerical.png | Bin 11781 -> 11693 bytes .../list/NumberButtonView/render_above.png | Bin 2207 -> 2179 bytes .../list/NumberButtonView/render_below.png | Bin 1975 -> 1958 bytes .../list/NumberButtonView/render_zero.png | Bin 1854 -> 1856 bytes .../habits/list/NumberPanelView/render.png | Bin 7603 -> 7535 bytes .../render_different_color.png | Bin 7536 -> 0 bytes .../list/NumberPanelView/render_offset.png | Bin 8071 -> 0 bytes .../list/NumberPanelView/render_reversed.png | Bin 7604 -> 0 bytes .../habits/list/views/NumberPanelViewTest.kt | 11 ++-- .../activities/common/views/FrequencyChart.kt | 4 +- .../activities/common/views/RingView.kt | 2 +- .../activities/common/views/ScoreChart.kt | 4 +- .../activities/common/views/StreakChart.kt | 8 +-- .../activities/common/views/TargetChart.kt | 6 +- .../habits/list/views/CheckmarkButtonView.kt | 9 ++- .../habits/list/views/EmptyListView.kt | 4 +- .../habits/list/views/HabitCardView.kt | 2 +- .../habits/list/views/HeaderView.kt | 2 +- .../habits/list/views/NumberButtonView.kt | 12 ++-- .../habits/show/views/OverviewCardView.kt | 2 +- .../widgets/views/CheckmarkWidgetView.kt | 6 +- .../src/main/res/drawable/bg_input_box.xml | 4 +- .../src/main/res/drawable/bg_input_group.xml | 4 +- .../res/drawable/ic_arrow_drop_down_dark.xml | 2 +- .../main/res/layout/activity_edit_habit.xml | 4 +- .../src/main/res/layout/activity_sync.xml | 2 +- .../src/main/res/layout/show_habit_notes.xml | 2 +- .../main/res/layout/show_habit_overview.xml | 8 +-- .../main/res/layout/show_habit_subtitle.xml | 14 ++--- uhabits-android/src/main/res/values/attrs.xml | 13 ++--- .../src/main/res/values/material_colors.xml | 1 + .../src/main/res/values/styles.xml | 54 +++++++++--------- .../src/main/res/values/styles_dialog.xml | 4 +- 38 files changed, 93 insertions(+), 91 deletions(-) delete mode 100644 uhabits-android/src/androidTest/assets/views/habits/list/CheckmarkPanelView/render_offset.png delete mode 100644 uhabits-android/src/androidTest/assets/views/habits/list/NumberPanelView/render_different_color.png delete mode 100644 uhabits-android/src/androidTest/assets/views/habits/list/NumberPanelView/render_offset.png delete mode 100644 uhabits-android/src/androidTest/assets/views/habits/list/NumberPanelView/render_reversed.png diff --git a/uhabits-android/src/androidTest/assets/views/habits/list/CheckmarkButtonView/render_explicit_check.png b/uhabits-android/src/androidTest/assets/views/habits/list/CheckmarkButtonView/render_explicit_check.png index dc67655e7820cbe722265b888f2a856477c232c2..839f9a9a0b46052e3ce0814e69f71ee1182a5342 100644 GIT binary patch delta 592 zcmaFQ@{?tPNxgxmi(^Q|oVV9(^MnIMj(#k@9JI0L#%hnbl1Gh&L~6b(YbwxNQVkjwVF%v`OQE7pZaL?^2NN1wbK}|fCEz_?lL}G zXr6P=^yNzL_)RG_w|(Num))PXufE~m$ydu#a!>k9iuw2R*VcmUT;KbzH8m$J`T zYTvH!skZy$*XYm5b9d@R-C|PX{oj+lxXnXYHYRPM-`sSS*(Van_%2Ga zr(SBl%I?Zl^;L9w{UjGIP7u#h63QfsYUW{GfW$CvEP(g0G1ecYd1t zetnWGNN>^U|8)^DPA{jwzjyX>Kt#gbMVbfBE`Rg;r0SIQva+d}H`Z9BJzcbuS!Jbp zPRZGvQ@bqo3wvGfyK-{!$HkFpYrR5PJ%Z|QSWK$FIc4iZz3ubPd~Vu$`P`)s6>Wmr zqOpvVuGnXmsl+DM{z#nG^7a(-*#MLB1Fn%q_a;^UzVD}d@553L?g>lcvybrWe_nT* zU###)&=H`C(^_(;%Zuzye)qdlsO;I)m05w}3Z6jbncDhC{mZ7WHFBT8HK8zs&~Bn#l1KE-LB+ik8^Bo)?4#qiAsh8|6i;BbJ}Hl S?M_=UNZ!-c&t;ucLK6T^{2Q(S delta 582 zcmey#@}6aaNxhndHc(6O-ZX;XWrsD!}x#y>Bh-A-;%yfWWWLrtc|$KI4#lO&W`u@ zDjr@suOoZkbn^ANnOSeSU+|mH^SD+&_06O0zrL3l-!Z&gx%Z@+R4IGJlGlf)tK63B zG24G_`YZqJ=mT#a#uwyX706t+RcArLk4bmFRNkEVEONK?f|4KW`YW^lB;4HjEOIr| zsW$ze?K-^t(`T=W2w~lEnr-nDm%Qk-=j(63yt#b#yx5};y#+-dtUH!4rDk%@@9)At z{ie;U|9a}&y@Vg{H=Ee3GRhBKw6leM@sra}KP)|Iu-01gUCmSL`}dDp)o3nadNM7( zJ|f2HrTzWC7Wu8mr#@Q~VZyrO=bT#m-7TNCE{?m#)tc|mvuG!?%FE-KMLB83*N#4& z8?dWv$zmJX_c}(|p^LN}CjDCO=?|1?+kN_%+Ig;Pe&+Srt?Ar75i4JCO<3};;Iqdi z-D~ap&tBRPUAcg@>lxn;E$`$0Pw)MmZmjoy&8-hhJ?=NG{AcjeBW#yn%)OJBH*D|m z3GM#GJLA-)4X;1>T`WKIw;;4#-!-m5aXpier;B4q#hkZSeY1rFMUH)Zo;JVVV7?beSI3h(y0-DzJOFaNK9_3r+zyYJ4%t^dCHZp!}BTYMLm*q@%hMBvcZ z&!0c*zg@a3Bb|N2ia(Znd5=eCsk3ibR^w@PJ7Lb$vUkz}3;zTg@7{mVL;LL&=?&{@ z%Il{G{|rjYZ`j>_GNtI*yKt+y=N8<5zkF4?w$0D{vu_-A9kZvLWoSE`xLl)ay<&^> zW$$X%#qhe3MT8TC4EHw{xCE?VECu zK_xc2Aor<&md(%g$vyqAxNfxMun9O>#MZrjuNb27|Hc`)>oYfU-sCxOhV5P5rYGN8 z6+pQ*-IYCEn}# z%k6s%?J^aDk~c*~HcxQNO?w#-@=iMc5j|`|6jRx%CBbs7~wGqB=70!=d#Wzp$P!M#}b+V delta 527 zcmcc3vYlmuaXsTZPZ!6KiaBqu`Q}{?5IOp>c%s(E?wI#WonB2b>`>B}y~4^#XF>3! zx`3_)PD!U)_U@T(7|XEv^a8zHSDD>c`r;4$H!n$g`DD%$OCbgkZBYNq^^g5%5pFynfpu5AWP7`U{+YK3AQpFKXuClCyNm zz9)0^i_fut-?`oSr~KW&KbxJut(l>$vGmK0Gy6Pmt<-N_QvU9ql}q$b!NRc6tKIhw zeXC!wB>q5a-l^&9PTg65I(N&tr{1i*32FXfvDYRET21-C@X4p8O>7fN?iJKN}&)NUl?6oipam`MWiL-gL{D0lN*$0<% zSl$dH0g;gte}LJwv9WQs+wGn?%AVEL)w#8`wF`C4^uHu0J-|VVqIlBp_kV0}Z-3A8 z{MKRibUK}dR;$%Zl4LW_^N+n=?^NA$Ruy#tS(ZI=_a!r%Gqcm~{<0{F+huz?ozB8w zFj$dvad+wZ*4Ebh`lqcX>H;J^+JL^Vp0jCfAG!h+}N$FMNwR-ZOUVax&Sl# zw$IwWC6t6ONqsZhtZmR^h`IntHzoZXUmP!?EPQt#nA!dL`S~wXnD@x+qz5=ip68b( zeUfy3{N8T3%kI87Df}c!?xkt^Y8tav5q$wtc?pv=A$+MJ1xQCLp()`@4Jtr7TnSAI zUyA<_fBs7dA#?W!Wxp}Aw@nFOn%#fEVw$F}r#D%3jVYkQ8PJFl8d1P8o`Rw;A^J1m zfcJnMGh5OjUe;n2bpctH1(k0KG!#Cbx{`( zLU<!NP?o0}Q&z?~UUnR-iKeXHJ8&eo}cFpoPVUdv(7=UK_4T$g|NI_|c Qx&QzG07*qoM6N<$g45s}!~g&Q delta 602 zcmeBXZDyTdQg7wy;uumf=j~0~Zs9$*>ofNkNkmYuEJU;oY`yK3*f`jsZW`cp$M{};;H)u2=;V}E{=j$E%>;quEncb}Q1 z;#qe5@yC9h)BBDV{>e0un4`D*Txg}N!z2~|vu_qInYCo{xt-yKGWWG3Hfz6hxK!zB zw0ZU6haYNxUR`(WHN%|Z^0c1 zpAOe)OY?QtUr(?7BlGa9?1MR{e{+8J|Gf0D`<2S_rkQh3YW6{dr+FsiZ#c^YXry3%`xOY`mBeqrdaY+ihq6 gw=iOfNrqJ~%?r4AyI<}8!wZu3boFyt=akR{0K35%%K!iX diff --git a/uhabits-android/src/androidTest/assets/views/habits/list/CheckmarkPanelView/render.png b/uhabits-android/src/androidTest/assets/views/habits/list/CheckmarkPanelView/render.png index dfdae3097cb3b3bc1f6a720a632fba26660c83d0..d6178d6f024be91f81d97b19281768054ae18fe5 100644 GIT binary patch delta 1553 zcmV+s2JZRt48{$RG=F_bL_t(|obBDuYaI6($MMfIBsvrvLm@q+)xiZ{y%Q7I5IN`e z&`T*5Nkd#TLx__m5bx%P>mRW!TbAuaa!H$zhU}_@l;%`I2_b*L%4mZ@S_@xuG3_BY z*HB6=@6$u1Aj`WuD`{tEcK7|dd3L|%;lcZP*5CP#Bmn>b0Fx93N0Gn>e?T8u)&=xK z@#>N1&3(>gpVg1o-jK<&u4$Ce|7=w%l~~ewNq>)`=v6bL|2uH==FK0Djg74zJb3Wm z-LAQQ{rbZ}5IlPL@Zo=@S=(L>{QxM=ABklCvB^x5Tw1LEr1pX)bua7MMgjfLR<&Av zNz(h;_^iA8U-#|X_uI+Ie@Xh^g+`-sw%Kf+l62S1UJb*rnzUwZZS9GB_wIcz>Bo}3 z*uQ`OuMZqJ@ZZ#n-Gw0Q0@AcSd?d-Fsp74P_p_{PRM7uyZ4ZA*GPCFI+`02{c2y0I zm6er~?mlg151ZK!-2KmuMkDUDW^HZliS_mMFZEscOVTfH-@g5MfBMz#&d?5kR^hYB z%%01lrcpxwv(+m6x0vj6IfLr0t$#4HhnmgihwX;IX84=gquXBkS)Mb zr|^*^ncnSlNh5{+XDcE6CF#9BmNT%-?1BCJc0-^;_)F6N%Q+j}ng8UQXUE=*i8)3fe=qF%oCX}3!g!^btdT&|t&e_5@=i2i5F-EDDk@jZ9{ zRS*QHr>3S7Pn>M(;+y|`6h*K1q|g!5X$Z742;nc~X#h+sc=C~nk0gsF$>lD2TrXW) zOj??_?V#p`dgBGQ@$tWy+4CEh+}&S}ANtoN^#+-sgCQC_nglYKFR2Rw#LWDKiU%hl4NG~ zL8VeT)@fZA+dl6Q{(BdO;fkc6tHnKmtp+Llr5p_ala4-kt#b$^fAjR2dU@&XUe`K| z=zr#(ZE>yR5a{BY|CKn7-|SU^qb>}?6?ZRndXJfXe=;cHFXdTg*t~7{m+n@U2Xr;gF~Q;@V^{I(OYd^!!E3@u0C#N3!UEM?njdz7R!_T+yjtQ zoS&F6vzFThTlb{9IA=c1QNx|1|JkZkDp$;`-FD6Q_XN7w_PNAS&)(X_J%D3{LZOm= zWqXsWe*qv##f6D;CTqEE;Bq(V6PJ#5*mgKuFD=caTjlVg|JkZmtCuCU+qQ8@pGkT~ z?LWJ7Q52m_qqb4Chf_eg9|E}>0Fw0N{E=yycD#My?r+!2OXt(5X_V0aY*nk(OWO8h z2)g0!7vnhQIg1`jcn;uh5CpUC{&Jhwb3X*~e{>Jvd&}k8w99uCK!i{4(En^jQFKDm z+)maI{=K)dvJ$F8_?y{_g+k$++MEtb`q@EwkjnueN%hjwjJtPxg5(V0(_8dETTv99 zboYy0zI~SP?>#g7n>vJl7>0{d=OdzK_K>@OaO1{}pQc{$F64FqNYX~AbUs7wI=x(~ ze_iNLMWcoOXKN$WXA|CbA&MfNuug%yKi1;fec`_;;W>e^X0!Rg-<1cs9srWGT&i7= ztK~oNru@`$xt8<+!5+~6Y;A;l%K_`|=c6d%A-j~A*?rq^?ZSUkyCLB2Uxr~=ORv)1 z%l!b5q~&sL*4^(r+2HOczb-9x`(I@2V*&lo)<(#0KUp;s$1xAtr6>%;OOnpG`(1bc zPY?tzvz zrEv~4TF#k?qlMx0=k-!QVAbtM_S7}yi^($=V00000NkvXXu0mjf Dj5Sr9 delta 1477 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 diff --git a/uhabits-android/src/androidTest/assets/views/habits/list/HabitCardView/render_numerical.png b/uhabits-android/src/androidTest/assets/views/habits/list/HabitCardView/render_numerical.png index 92ae7a9e966b6977d522e77ac17b324d8ae6885f..280be2441488bedee12208fae75a12511371369e 100644 GIT binary patch literal 11693 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 D9olb3 literal 11781 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≷I-9v1 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 LNkvXXu0mjfl0z6v diff --git a/uhabits-android/src/androidTest/assets/views/habits/list/NumberButtonView/render_below.png b/uhabits-android/src/androidTest/assets/views/habits/list/NumberButtonView/render_below.png index 2679668e0bfae386a046026d852ab795f9fdbdc9..e5a98fc8987e73c6edc7c3de02ed3801638066bc 100644 GIT binary patch delta 1906 zcmV-&2aWi*52g>0G=E)5L_t(|obB9yj1*@X!13=hbH_<BD#Eg}dp#8sn}}^pHEx;`s7;!Nq74Z%%Uv(VTE;i-G$!m?ECn~?v`P>%CXGePRaX8Hn;P>@AKYs^9Rn%zB4;>V3EHTk#M{W*G?VnPN327@Njx^a&nJ|ENrN{OjQfxM9Y@IO5vPX?FsR%H{GS zK;ue$m#VJZxpU_?+>P#p2a}s`?tIHjHDg>)vLJxl~nu16))uPo+{Hs~=LD zjZ1>0?E$NaT-zmT07T@)hN8P7b!!{y!bn|HaY>M<6EW9ypA5tBAx`DBItT(( z^=(znM%#+WTjv{>1c}-M)~#Dt0{n*J)gsc*nH$T0&o?d!5;Xt-B61J#%oJ7oq6@~D zzs3>QZizYs0c5k;cT{yn5CqGAMPwP!X^i=;>$(e6H9GfyA&$6qOWXhe)GnAkTYCWz z1i?d*Cdbn0^dIAjYp28=f~Mm8{&#^-M~a50b3LcoxS5p5Jz(qBtzD^9>N-`OCn8@5 zz8a}M-qqE$DbBcdO5^~f)9FRVn7txrT&xX6q<_ttHUEh-uASZ&hoG8&Q4v|2&1Qc+ zLvb@Ak$XUclB(_kws@X*WCr49R3Zmpe0==n?(XgzMdbBNCUc_Iah7FSmStI%Wm%SG z&6K3w8(OU0QnJzWynSa4xBw*TT9B$P02Uf!E@^izGv)nsIr@Us@x6;P5@7->I1o4ZWO?O_x(*Gax<_D_#p5n;0?!d?peQn{cH8UipAnGRs9~-=KwS%w#eLB5l5+syS7CLRH5_#yr23CY&n6CHZ`~C)1-2;4o2}n_0QL8GI%D%zD z!JF&tYB%5BE+Y3jjFN1tlR36TO9vnbg3kh92HtdCcfRL&R~cjG z0Y`vEV`F1kfLt#3InVPtfR_M_F?V>L*OAZXUjp!bf1Zdu3Y0};rRRB@NWZ1_sJu7~V(q&gkVsLqpvSVNZFUx2;epn7+QgNze0s zMD@@nR9AScIX0`Mvmg=qckS(xVzGE-Hk*ANAeYN+0k%wkw;xqqRQsZRZ?t@1VBlyF z1pfqjjWIU>FGgbCo}!zxPM$pZi`lbh{}8xNRbL5$U|YFdeso}9 z;P^Rqbvb~Dd_D+*Pc+oI0LGZh&enb8JdW4?!C?Y#4K0cL^{^^@H>N z&d$zK5Co5Z4G#~e&k`Q>f!fcn0rxk&<^ZT_*VLh>7-J?H+s2qnOF3^_KXrF%fJSR4+5 z;LpDAzx!xtZKkmaAo^igGv!n4s`@H`h%7$Ol{si^zUeokR7kSAgZ7=RIF<@B98wMC4n*8^B%>xi6c|{(WR* z#2p(O`vb5P7!#3aj4{VV=uz6u!`!+|GkJr@0dR49OE`)-v<a;hiTXk&4vhoQ?tIS1ejm_gb^zM!f*XL^gV-eznUQNb smStI%Wm%SGS(as4mStI%Wm#wQKTLk`nRyy#I{*Lx07*qoM6N<$f+Q5Ct^fc4 delta 1909 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 F`wIqmm9zi= delta 1823 zcmV+)2jKX?4!#bMG=KF;L_t(|obB9yh#Y4b2k`Ir-8qlM#%p6^?A_k{pe0Rz7*ng! z#w45#XlV(tKSElu6eJ+kLQ4>}2K`IHN{gT%A}WYj0)j1?QfvMw&9zM=h=$md)RcK= zFK!wx&DnaF%U*Zq@sFLoPKTa%w>!JrDbELvd*_{ZXTLYk&42F9?0W|&rIb=iDW#NB zN-3q3Qc5YMlu}A5rIb=i<%azZ(5`B=x^ixA?&HRo0TDUwdEQjNGqs~|1vqo&%$i!Q z_K1kwL2@YRo(1rXG3Fbt>%Q90e9Kj+0wg>C82~pdFvJ45)%X3EdzY#+rr!aUqgJau zf`xZJ0QdlY+JBog`6x^Q&YnHH7Qo%9t_vb^4}hBiyq4;}If|ms_B31v3R8gD+1a}Q ztVne|5d^`0-}j#-`SVmi<2c^c<9KZ=OaVmXW9em*M_cVUj-Sg6zqTi#a!{B8kSu4q z{@rRgj`Od~*eiMxDhGur0Dups7er*H)vnj;uV=_OH`-$>Vm;wN(rWZ(#q}o@e*NMnG#=e&orT`?5XSzPoYQ%B8B{TM9PeSFO zFaxF^*m0Ac{8RNoQb z_iyTHunrXF2mk=balR=cucW$&ckcXirBdmk9>?lPp$bqgmrs+tMMVB6B5$Qu34j-j zF}IG6j{db@`Pxyam!PyT4E<86^yxT`9b?Qf*MD{Y+3!qBDW#NBN-0%1*4jT=YmY}! zRG5iXopSmeAWcNpkz5C0b-%OpN}=ury&rY`UeM&^F)!$h2-S`-Vl-Tfq{X2 z<#PEn09b2(3E*k~8_}FpbppV7lHc|`?}gU3!Z5s>&Wk=%;r9m^>IKFOe7uWyQ? zXtU>eQzEi~sevV#)&O`KzzUMz%|18DbtHcX;8J7E zS`qn0vg-CIincE|W4Cm*03vb&(45Kay6zzW@I3E%5qVrh-UP6IDcdo|+y|gU@_#AM z^L_#Vt5>gn!*QI4(fqC5WUb9k$UW?N-gkl^xafJ_R1gGTMf0VNBC<2@jP2_7oAB!Z zAR^aKOiavAFAsv?!5|2Rf*{zvl#Rr3d|lE!n(i-`%f|qm1>hKCK9ydVp1hmt8&8^7 z<(;uzU40L59OpOndi{QqBaKGmMSpAU{(*skM@L3RmNjdExnz6uv#0aQ*siXh1&xl5o&vC=QmJffG#YzJ-UeWIt$$VpWW6zFVzINCrDjzBNAjK^VHp0U-&vMI zKM&|LEkK{Wr#_O*gNXbW%^P&*`<+E8rIb=iDW#NBN-3q3QW#1p^*8 diff --git a/uhabits-android/src/androidTest/assets/views/habits/list/NumberPanelView/render.png b/uhabits-android/src/androidTest/assets/views/habits/list/NumberPanelView/render.png index ee8e8b64437fbd28b0c85eab8f200fd209abd8ea..22584afb3d05a46822f721bc66137703c5203e49 100644 GIT binary patch literal 7535 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 literal 7603 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 WZ1xj4GQq#FfT5lVqD;r><^KRiK%>t9 diff --git a/uhabits-android/src/androidTest/assets/views/habits/list/NumberPanelView/render_different_color.png b/uhabits-android/src/androidTest/assets/views/habits/list/NumberPanelView/render_different_color.png deleted file mode 100644 index 63c40543aaf31d3a94274f9306ba6aed5f1be8ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7536 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 MplbrF&~}XaA8(JrPyhe` diff --git a/uhabits-android/src/androidTest/java/org/isoron/uhabits/activities/habits/list/views/NumberPanelViewTest.kt b/uhabits-android/src/androidTest/java/org/isoron/uhabits/activities/habits/list/views/NumberPanelViewTest.kt index 73f05c2f8..bd046acc7 100644 --- a/uhabits-android/src/androidTest/java/org/isoron/uhabits/activities/habits/list/views/NumberPanelViewTest.kt +++ b/uhabits-android/src/androidTest/java/org/isoron/uhabits/activities/habits/list/views/NumberPanelViewTest.kt @@ -41,8 +41,6 @@ class NumberPanelViewTest : BaseViewTest() { @Before override fun setUp() { super.setUp() - prefs.isCheckmarkSequenceReversed = false - val checkmarks = doubleArrayOf( 1400.0, 5300.0, @@ -68,11 +66,10 @@ class NumberPanelViewTest : BaseViewTest() { view.onDetachedFromWindow() } - // Flaky - // @Test - // fun testRender() { - // assertRenders(view, "$PATH/render.png") - // } + @Test + fun testRender() { + assertRenders(view, "$PATH/render.png") + } @Test fun testEdit() { diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/FrequencyChart.kt b/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/FrequencyChart.kt index 73579a858..c4bad1a96 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/FrequencyChart.kt +++ b/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/FrequencyChart.kt @@ -255,8 +255,8 @@ class FrequencyChart : ScrollableChart { private fun initColors() { val res = StyledResources(context) - textColor = res.getColor(R.attr.mediumContrastTextColor) - gridColor = res.getColor(R.attr.lowContrastTextColor) + textColor = res.getColor(R.attr.contrast60) + gridColor = res.getColor(R.attr.contrast20) colors = IntArray(4) colors[0] = gridColor colors[3] = primaryColor diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/RingView.kt b/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/RingView.kt index 2da90bf26..8f552f50b 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/RingView.kt +++ b/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/RingView.kt @@ -187,7 +187,7 @@ class RingView : View { pRing!!.textAlign = Paint.Align.CENTER val res = StyledResources(context) if (backgroundColor == null) backgroundColor = res.getColor(R.attr.cardBgColor) - if (inactiveColor == null) inactiveColor = res.getColor(R.attr.highContrastTextColor) + if (inactiveColor == null) inactiveColor = res.getColor(R.attr.contrast100) inactiveColor = setAlpha(inactiveColor!!, 0.1f) rect = RectF() } diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/ScoreChart.kt b/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/ScoreChart.kt index f26e5374f..4d104a3a7 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/ScoreChart.kt +++ b/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/ScoreChart.kt @@ -334,8 +334,8 @@ class ScoreChart : ScrollableChart { private fun initColors() { val res = StyledResources(context) primaryColor = Color.BLACK - textColor = res.getColor(R.attr.mediumContrastTextColor) - gridColor = res.getColor(R.attr.lowContrastTextColor) + textColor = res.getColor(R.attr.contrast60) + gridColor = res.getColor(R.attr.contrast20) internalBackgroundColor = res.getColor(R.attr.cardBgColor) } diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/StreakChart.kt b/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/StreakChart.kt index b821c1c9a..7c5e4c80a 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/StreakChart.kt +++ b/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/StreakChart.kt @@ -207,11 +207,11 @@ class StreakChart : View { colors[3] = primaryColor colors[2] = Color.argb(192, red, green, blue) colors[1] = Color.argb(96, red, green, blue) - colors[0] = res.getColor(R.attr.lowContrastTextColor) + colors[0] = res.getColor(R.attr.contrast20) textColors = IntArray(3) - textColors[2] = res.getColor(R.attr.highContrastReverseTextColor) - textColors[1] = res.getColor(R.attr.mediumContrastTextColor) - textColors[0] = res.getColor(R.attr.lowContrastReverseTextColor) + textColors[2] = res.getColor(R.attr.contrast0) + textColors[1] = res.getColor(R.attr.contrast60) + textColors[0] = res.getColor(R.attr.contrast80) } private fun initPaints() { diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/TargetChart.kt b/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/TargetChart.kt index c87640524..b03c748c1 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/TargetChart.kt +++ b/uhabits-android/src/main/java/org/isoron/uhabits/activities/common/views/TargetChart.kt @@ -165,9 +165,9 @@ class TargetChart : View { paint!!.textAlign = Paint.Align.CENTER paint!!.isAntiAlias = true val res = StyledResources(context) - lowContrastTextColor = res.getColor(R.attr.lowContrastTextColor) - mediumContrastTextColor = res.getColor(R.attr.mediumContrastTextColor) - highContrastReverseTextColor = res.getColor(R.attr.highContrastReverseTextColor) + lowContrastTextColor = res.getColor(R.attr.contrast20) + mediumContrastTextColor = res.getColor(R.attr.contrast60) + highContrastReverseTextColor = res.getColor(R.attr.contrast0) tinyTextSize = getDimension(context, R.dimen.tinyTextSize) } diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/CheckmarkButtonView.kt b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/CheckmarkButtonView.kt index cec72761a..ad9b02826 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/CheckmarkButtonView.kt +++ b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/CheckmarkButtonView.kt @@ -33,6 +33,7 @@ import org.isoron.uhabits.core.models.Entry import org.isoron.uhabits.core.models.Entry.Companion.NO import org.isoron.uhabits.core.models.Entry.Companion.SKIP import org.isoron.uhabits.core.models.Entry.Companion.UNKNOWN +import org.isoron.uhabits.core.models.Entry.Companion.YES_AUTO import org.isoron.uhabits.core.models.Entry.Companion.YES_MANUAL import org.isoron.uhabits.core.preferences.Preferences import org.isoron.uhabits.inject.ActivityContext @@ -116,7 +117,8 @@ class CheckmarkButtonView( private inner class Drawer { private val rect = RectF() - private val lowContrastColor = sres.getColor(R.attr.lowContrastTextColor) + private val lowContrastColor = sres.getColor(R.attr.contrast40) + private val mediumContrastColor = sres.getColor(R.attr.contrast60) private val paint = TextPaint().apply { typeface = getFontAwesome() @@ -128,7 +130,12 @@ class CheckmarkButtonView( fun draw(canvas: Canvas) { paint.color = when (value) { YES_MANUAL -> color + YES_AUTO -> mediumContrastColor SKIP -> color + NO -> { + if (preferences.areQuestionMarksEnabled()) mediumContrastColor + else lowContrastColor + } else -> lowContrastColor } val id = when (value) { diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/EmptyListView.kt b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/EmptyListView.kt index e076b8ebb..9a3b78c5f 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/EmptyListView.kt +++ b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/EmptyListView.kt @@ -47,7 +47,7 @@ class EmptyListView(context: Context) : LinearLayout(context) { typeface = getFontAwesome() textSize = sp(40.0f) gravity = CENTER - setTextColor(sres.getColor(R.attr.mediumContrastTextColor)) + setTextColor(sres.getColor(R.attr.contrast60)) } addView( @@ -60,7 +60,7 @@ class EmptyListView(context: Context) : LinearLayout(context) { text = str(R.string.no_habits_found) gravity = CENTER setPadding(0, dp(20.0f).toInt(), 0, 0) - setTextColor(sres.getColor(R.attr.mediumContrastTextColor)) + setTextColor(sres.getColor(R.attr.contrast60)) } addView( textTextView, diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/HabitCardView.kt b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/HabitCardView.kt index 23e2f11bf..2318f2ccc 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/HabitCardView.kt +++ b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/HabitCardView.kt @@ -212,7 +212,7 @@ class HabitCardView( fun getActiveColor(habit: Habit): Int { return when (habit.isArchived) { - true -> sres.getColor(R.attr.mediumContrastTextColor) + true -> sres.getColor(R.attr.contrast60) false -> habit.color.toThemedAndroidColor(context) } } diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/HeaderView.kt b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/HeaderView.kt index fc7edbba8..5a79b11f9 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/HeaderView.kt +++ b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/HeaderView.kt @@ -108,7 +108,7 @@ class HeaderView( textSize = dim(R.dimen.tinyTextSize) textAlign = Paint.Align.CENTER typeface = Typeface.DEFAULT_BOLD - color = sres.getColor(R.attr.mediumContrastTextColor) + color = sres.getColor(R.attr.contrast60) } fun draw(canvas: Canvas) { diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/NumberButtonView.kt b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/NumberButtonView.kt index 41f72c2b4..353094c26 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/NumberButtonView.kt +++ b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/list/views/NumberButtonView.kt @@ -128,8 +128,8 @@ class NumberButtonView( private val rect: RectF = RectF() private val sr = StyledResources(context) - private val lightGrey: Int - private val darkGrey: Int + private val lowContrast: Int + private val mediumContrast: Int private val pRegular: TextPaint = TextPaint().apply { textSize = getDimension(context, R.dimen.smallerTextSize) @@ -147,14 +147,14 @@ class NumberButtonView( init { em = pBold.measureText("m") - lightGrey = sr.getColor(R.attr.lowContrastTextColor) - darkGrey = sr.getColor(R.attr.mediumContrastTextColor) + lowContrast = sr.getColor(R.attr.contrast40) + mediumContrast = sr.getColor(R.attr.contrast60) } fun draw(canvas: Canvas) { val activeColor = when { - value <= 0.0 -> lightGrey - value < threshold -> darkGrey + value <= 0.0 -> lowContrast + value < threshold -> mediumContrast else -> color } diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/show/views/OverviewCardView.kt b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/show/views/OverviewCardView.kt index 95614c903..aa5b0cd02 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/show/views/OverviewCardView.kt +++ b/uhabits-android/src/main/java/org/isoron/uhabits/activities/habits/show/views/OverviewCardView.kt @@ -44,7 +44,7 @@ class OverviewCardView(context: Context, attrs: AttributeSet) : LinearLayout(con fun setState(state: OverviewCardState) { val androidColor = state.color.toThemedAndroidColor(context) val res = StyledResources(context) - val inactiveColor = res.getColor(R.attr.mediumContrastTextColor) + val inactiveColor = res.getColor(R.attr.contrast60) binding.monthDiffLabel.setTextColor(if (state.scoreMonthDiff >= 0) androidColor else inactiveColor) binding.monthDiffLabel.text = formatPercentageDiff(state.scoreMonthDiff) binding.scoreLabel.setTextColor(androidColor) diff --git a/uhabits-android/src/main/java/org/isoron/uhabits/widgets/views/CheckmarkWidgetView.kt b/uhabits-android/src/main/java/org/isoron/uhabits/widgets/views/CheckmarkWidgetView.kt index 97cebe04e..9fa95ed99 100644 --- a/uhabits-android/src/main/java/org/isoron/uhabits/widgets/views/CheckmarkWidgetView.kt +++ b/uhabits-android/src/main/java/org/isoron/uhabits/widgets/views/CheckmarkWidgetView.kt @@ -67,19 +67,19 @@ class CheckmarkWidgetView : HabitWidgetView { when (entryState) { YES_MANUAL, SKIP -> { bgColor = activeColor - fgColor = res.getColor(R.attr.highContrastReverseTextColor) + fgColor = res.getColor(R.attr.contrast0) setShadowAlpha(0x4f) backgroundPaint!!.color = bgColor frame!!.setBackgroundDrawable(background) } YES_AUTO, NO, UNKNOWN -> { bgColor = res.getColor(R.attr.cardBgColor) - fgColor = res.getColor(R.attr.mediumContrastTextColor) + fgColor = res.getColor(R.attr.contrast60) setShadowAlpha(0x00) } else -> { bgColor = res.getColor(R.attr.cardBgColor) - fgColor = res.getColor(R.attr.mediumContrastTextColor) + fgColor = res.getColor(R.attr.contrast60) setShadowAlpha(0x00) } } diff --git a/uhabits-android/src/main/res/drawable/bg_input_box.xml b/uhabits-android/src/main/res/drawable/bg_input_box.xml index 44c521cd9..3533fde0a 100644 --- a/uhabits-android/src/main/res/drawable/bg_input_box.xml +++ b/uhabits-android/src/main/res/drawable/bg_input_box.xml @@ -19,8 +19,8 @@ --> - - + + - - + + diff --git a/uhabits-android/src/main/res/layout/activity_edit_habit.xml b/uhabits-android/src/main/res/layout/activity_edit_habit.xml index ac4e8af1c..94af404e7 100644 --- a/uhabits-android/src/main/res/layout/activity_edit_habit.xml +++ b/uhabits-android/src/main/res/layout/activity_edit_habit.xml @@ -23,7 +23,7 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" - android:background="?attr/highContrastReverseTextColor" + android:background="?attr/contrast0" android:fitsSystemWindows="true" android:orientation="vertical" tools:context=".activities.habits.edit.EditHabitActivity"> @@ -201,7 +201,7 @@ style="@style/FormDropdown" android:id="@+id/numericalFrequencyPicker" android:text="@string/every_week" - android:textColor="?attr/highContrastTextColor" + android:textColor="?attr/contrast100" /> diff --git a/uhabits-android/src/main/res/layout/activity_sync.xml b/uhabits-android/src/main/res/layout/activity_sync.xml index 9027202c5..5d7040d5e 100644 --- a/uhabits-android/src/main/res/layout/activity_sync.xml +++ b/uhabits-android/src/main/res/layout/activity_sync.xml @@ -23,7 +23,7 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" - android:background="?attr/highContrastReverseTextColor" + android:background="?attr/contrast0" android:fitsSystemWindows="true" android:orientation="vertical" tools:context=".activities.habits.edit.EditHabitActivity"> diff --git a/uhabits-android/src/main/res/layout/show_habit_notes.xml b/uhabits-android/src/main/res/layout/show_habit_notes.xml index 0e51420d4..52c9627d7 100644 --- a/uhabits-android/src/main/res/layout/show_habit_notes.xml +++ b/uhabits-android/src/main/res/layout/show_habit_notes.xml @@ -29,6 +29,6 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" - android:textColor="?highContrastTextColor" + android:textColor="?attr/contrast100" tools:text="This is some example text for the notes" /> \ No newline at end of file diff --git a/uhabits-android/src/main/res/layout/show_habit_overview.xml b/uhabits-android/src/main/res/layout/show_habit_overview.xml index 93765fdb4..0afe7fa56 100644 --- a/uhabits-android/src/main/res/layout/show_habit_overview.xml +++ b/uhabits-android/src/main/res/layout/show_habit_overview.xml @@ -64,7 +64,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/score" - android:textColor="?mediumContrastTextColor"/> + android:textColor="?attr/contrast60"/> @@ -83,7 +83,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/month" - android:textColor="?mediumContrastTextColor"/> + android:textColor="?attr/contrast60"/> @@ -102,7 +102,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/year" - android:textColor="?mediumContrastTextColor"/> + android:textColor="?attr/contrast60"/> @@ -121,7 +121,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/total" - android:textColor="?mediumContrastTextColor"/> + android:textColor="?attr/contrast60"/> diff --git a/uhabits-android/src/main/res/layout/show_habit_subtitle.xml b/uhabits-android/src/main/res/layout/show_habit_subtitle.xml index e66b52579..f8f3924bc 100644 --- a/uhabits-android/src/main/res/layout/show_habit_subtitle.xml +++ b/uhabits-android/src/main/res/layout/show_habit_subtitle.xml @@ -30,7 +30,7 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginBottom="8dp" - android:textColor="?mediumContrastTextColor" + android:textColor="?attr/contrast60" android:textSize="@dimen/regularTextSize" tools:text="Have you worked out today?" /> @@ -48,7 +48,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/fa_arrow_circle_up" - android:textColor="?mediumContrastTextColor" + android:textColor="?attr/contrast60" android:textSize="16sp" /> @@ -85,7 +85,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/fa_bell_o" - android:textColor="?mediumContrastTextColor" + android:textColor="?attr/contrast60" android:textSize="@dimen/smallTextSize" /> diff --git a/uhabits-android/src/main/res/values/attrs.xml b/uhabits-android/src/main/res/values/attrs.xml index ae3a0389a..596c76ebd 100644 --- a/uhabits-android/src/main/res/values/attrs.xml +++ b/uhabits-android/src/main/res/values/attrs.xml @@ -26,13 +26,12 @@ - - - - - - - + + + + + + diff --git a/uhabits-android/src/main/res/values/material_colors.xml b/uhabits-android/src/main/res/values/material_colors.xml index 93003c958..34d080880 100644 --- a/uhabits-android/src/main/res/values/material_colors.xml +++ b/uhabits-android/src/main/res/values/material_colors.xml @@ -285,6 +285,7 @@ #F5F5F5 #EEEEEE #E0E0E0 + #D8D8D8 #BDBDBD #9E9E9E #757575 diff --git a/uhabits-android/src/main/res/values/styles.xml b/uhabits-android/src/main/res/values/styles.xml index 1c4627fbc..a881d6fdc 100644 --- a/uhabits-android/src/main/res/values/styles.xml +++ b/uhabits-android/src/main/res/values/styles.xml @@ -25,7 +25,7 @@ @style/Theme.AppCompat.Light.Dialog @style/Theme.AppCompat.Light.Dialog false - ?attr/highContrastReverseTextColor + ?attr/contrast0 ?attr/colorPrimary @color/grey_800 @drawable/card_light_background @@ -35,8 +35,6 @@ #303030 @drawable/ic_action_color_light @color/grey_200 - @color/white - @color/grey_800 @color/grey_100 @drawable/ic_action_add_dark @drawable/ic_action_archive_dark @@ -45,10 +43,12 @@ @drawable/ic_action_edit_dark @drawable/ic_action_filter_dark @drawable/ic_action_unarchive_dark - @color/grey_700 - @color/grey_300 - @color/grey_500 - @color/grey_500 + @color/white + @color/grey_300 + @color/grey_350 + @color/grey_500 + @color/grey_700 + @color/grey_800 @array/lightPalette @style/PreferenceThemeOverlay.v14.Material @style/ScrollableRecyclerViewStyle @@ -75,8 +75,6 @@ @color/black @drawable/ic_action_color_dark @color/grey_900 - @color/grey_900 - @color/grey_100 @color/grey_800 @drawable/ic_action_add_dark @drawable/ic_action_archive_dark @@ -84,10 +82,12 @@ @drawable/ic_action_edit_dark @drawable/ic_action_filter_dark @drawable/ic_action_unarchive_dark - @color/grey_300 - @color/grey_800 - @color/grey_750 - @color/grey_500 + @color/grey_900 + @color/grey_800 + @color/grey_750 + @color/grey_500 + @color/grey_300 + @color/grey_100 @array/darkPalette @color/black @style/PreferenceThemeOverlay.v14.Material @@ -112,13 +112,12 @@ @color/black @color/black @color/black - @color/black - @color/grey_200 @color/black - @color/grey_700 - @color/grey_900 - @color/grey_900 - @color/grey_700 + @color/black + @color/grey_900 + @color/grey_700 + @color/grey_700 + @color/grey_200 @drawable/selected_box_amoled @color/grey_100 @color/black @@ -126,12 +125,11 @@ @@ -141,7 +139,7 @@ @@ -263,7 +261,7 @@ 8dp -15dp -4dp - ?attr/highContrastReverseTextColor + ?attr/contrast0 8dp 8dp @dimen/smallerTextSize @@ -315,6 +313,6 @@ diff --git a/uhabits-android/src/main/res/values/styles_dialog.xml b/uhabits-android/src/main/res/values/styles_dialog.xml index ba5f6be70..17288335a 100644 --- a/uhabits-android/src/main/res/values/styles_dialog.xml +++ b/uhabits-android/src/main/res/values/styles_dialog.xml @@ -22,7 +22,7 @@ @@ -33,7 +33,7 @@ 90dp left 6dp - ?mediumContrastTextColor + ?attr/contrast60