From 0d4c61df960aee0f51c4ef75b8cbc428adb53c70 Mon Sep 17 00:00:00 2001 From: Peter Serwylo Date: Thu, 11 Jun 2015 00:51:30 +1000 Subject: [PATCH] WIP: Implementing UI mockup, different "selected" indicator for swap. Using stock icons from Google Material Icons. Need to use the actual icons provided by carrie, but will do so in the future. --- .../ic_add_circle_outline_white.png | Bin 0 -> 947 bytes .../drawable-hdpi/ic_check_circle_white.png | Bin 0 -> 738 bytes .../ic_add_circle_outline_white.png | Bin 0 -> 650 bytes .../drawable-mdpi/ic_check_circle_white.png | Bin 0 -> 510 bytes .../ic_add_circle_outline_white.png | Bin 0 -> 1280 bytes .../drawable-xhdpi/ic_check_circle_white.png | Bin 0 -> 963 bytes .../ic_add_circle_outline_white.png | Bin 0 -> 1997 bytes .../drawable-xxhdpi/ic_check_circle_white.png | Bin 0 -> 1421 bytes .../ic_add_circle_outline_white.png | Bin 0 -> 2639 bytes .../ic_check_circle_white.png | Bin 0 -> 1932 bytes .../drawable/ic_add_circle_outline_white.png | Bin 0 -> 650 bytes .../res/drawable/ic_check_circle_white.png | Bin 0 -> 510 bytes .../select_local_apps_list_item.xml | 35 ++++++++++---- .../select_local_apps_list_item.xml | 35 +++++++++----- .../layout/select_local_apps_list_item.xml | 45 ++++++++++++------ .../fdroid/views/swap/SelectAppsView.java | 37 +++++++++++++- F-Droid/tools/download-material-icon.sh | 2 +- 17 files changed, 116 insertions(+), 38 deletions(-) create mode 100644 F-Droid/res/drawable-hdpi/ic_add_circle_outline_white.png create mode 100644 F-Droid/res/drawable-hdpi/ic_check_circle_white.png create mode 100644 F-Droid/res/drawable-mdpi/ic_add_circle_outline_white.png create mode 100644 F-Droid/res/drawable-mdpi/ic_check_circle_white.png create mode 100644 F-Droid/res/drawable-xhdpi/ic_add_circle_outline_white.png create mode 100644 F-Droid/res/drawable-xhdpi/ic_check_circle_white.png create mode 100644 F-Droid/res/drawable-xxhdpi/ic_add_circle_outline_white.png create mode 100644 F-Droid/res/drawable-xxhdpi/ic_check_circle_white.png create mode 100644 F-Droid/res/drawable-xxxhdpi/ic_add_circle_outline_white.png create mode 100644 F-Droid/res/drawable-xxxhdpi/ic_check_circle_white.png create mode 100644 F-Droid/res/drawable/ic_add_circle_outline_white.png create mode 100644 F-Droid/res/drawable/ic_check_circle_white.png diff --git a/F-Droid/res/drawable-hdpi/ic_add_circle_outline_white.png b/F-Droid/res/drawable-hdpi/ic_add_circle_outline_white.png new file mode 100644 index 0000000000000000000000000000000000000000..fdad9ba4dfcce6d5b9470a9a1ccbea97e30f26c8 GIT binary patch literal 947 zcmV;k15EshP)$jkt(0Ud-j;p<@gHib;;sgIBWy4H6k4K4OFx3(7TSV^Woyf>*wq_L ziUKifJn4<}JE z<`i4#UXf})=mEM_vZ$ET&lA>x2W4RNq#A?KgI4fb zrPoMMFD1PGh#GW7Kguo7j-cgP+QMrzTF^U$%Sn{6AjN5#h&NG!F5`6%Wi&`JgV#vw zpf$uN9OFS*_7JPBf(B_KiYVhjio1vg`S76Ih$@bipbYznTj4?Lh&hy%ApI729Tw!^ zBFH>LVh?34sD}#TYH-jr;<3db#S_F-aL_Vh!fH?v@h~`O6H%}lG=|s+ z4%$Hsq0lEjf9Nn`J2v$~x{)cidy&X@3|Oqg@>< zR)d}*CWC{nAwK_Sm+Q~LK}T^BXaE17ABwk#d22xnh%zcHsEF9du@aP}hPc`4M}7lw z$4by7!X+0Tq$nYF$rumn;|t;$s#VY^UiXa$&Ej>Tb&z5m(cqNPpmQ|!105yk5?)*M z8w)zdN5pq7Mhj9r!mDKHb<8220t@4D*5O^igD1B62H=0Mt8m4 zm!9+JO7zFhImUBzGpKfhQoKaB#pzf%=lF>31&7-YQe=6LuE7l1wqp92rHSruoY<=c zUlQzbmrTSvYl<)6%gH5KzGQiY-#!mGPfy4bb%6zH_`SeMx}Hig$H6K*p~x7+`9_(W@_^e5k~zXvrg+E(+f=Air@}THEHcSY{D6u#3cJ${>IQX#{sqo1 VnxlwN%Rm4C002ovPDHLkV1lB#E0)^$$#VgJu@EQcD@eS>cNYx8!*W^@@+Ufx{<6x_865&Dbu-TiipmA*X zGz_SVbF}+ObtTer&?mHW>E;>LeUO3%t#Ay6=Tw)Gf%YwNu4bO=?Mgrc7CBe5!1elS zgEp;l3|X$XUJI1wGDZ$mNCktYW90x$27~f3b6_V3l*Egf0~fUTgGOTK01Wwq=Hll7 zv;LqQew|z6z_LH+kehqKLw;D|z=1!=<)-E_7#?tHg#!hDP?3Lo`R8d5rxrMH<`44t zyM?OfJ)Ed>pd1F2#Z=9GP82v|P!R;A?@AoOD|10Wy2r612MY3I??<}Ju>wbM>~kO{ zxk?;Z5_~!Yq;6al4$Sz2h9L||g#%CgL9KXUNGhDbpC5)jg3Bs%z`+E8ra(Z_@_AVD8UxC`a)B9kfDtuZ1k06{i}r|3!IK9%a=B` zm0wme>Ut`{B3iwoNoRpKMv15u8P!~Irui7@Be6nCe+isnmwIyOv$rPiW1R}pJl5#7 ze~}=?Bs-J|>H>!eI@B%_2&RQ0W?ANd0%w#db4Gy!mYCr&w{)&r=uZRG05w3r0iX6C U;Qs5}NdN!<07*qoM6N<$g0@~ukN^Mx literal 0 HcmV?d00001 diff --git a/F-Droid/res/drawable-mdpi/ic_add_circle_outline_white.png b/F-Droid/res/drawable-mdpi/ic_add_circle_outline_white.png new file mode 100644 index 0000000000000000000000000000000000000000..ac9427430a0614b8e109020f0bd3b02a1f1ac915 GIT binary patch literal 650 zcmV;50(Jd~P)NNch#_KIeS@M1k@z4&J$R9Xyg*B09za{KiY(Y(6&uK<2z`rU@MMgl z=tbQYR5aPkzlV>3h23R$CxlY)_g$Cy!zMG#s{g?YGAvT3$uTY-9xlf;S))h>6*qAY z%&^HdQLgyRw0R)UE*^1uIOI$MEBq!Ym*sQ;n{W8tvqy;n6J*Jfqd=K`9`JLpk_JZk zi3TUEGD7%sCE93k$Y_#)?OXndk65Va!KTWyFJZ+8zM{2xk4iAJbkLl*zzW(g@~DI} z$r0KIq66glgJ{e0DH0vT9TU-kUBpww%h6QG%+W>cL5T8(~1Bx1=$J_A0CgKFk zC}4An*a!<`xJIm^i~@=>;*wXvz#`(F5#zuZkBEg}ppMu>83z;xh*~hvM3njpR1l3| z;22TpD^NtVf&mxd-zG`f zQ4I!)hzCZE1Fv~R6v7U>D@4gSP(fUT9d?Q@h&HxSAj=tI9TgUs#zRz%0(C@}H{k(= zgLq~(bzq(@Vha@&$l)S7OrlcE6z7N=#-js@WwfIdi78rWOK}%32d%>#D#6Tij<$`8 z3s@YYJyXL*MGsl(bkTk=l9h|^_@ar2MBcWiJ;lnd5n*O~@oGAvM|L5o{@^th!( kgDM3%(#!(}^Aa$azmr;dV}N`t9RL6T07*qoM6N<$f?G8ir2qf` literal 0 HcmV?d00001 diff --git a/F-Droid/res/drawable-mdpi/ic_check_circle_white.png b/F-Droid/res/drawable-mdpi/ic_check_circle_white.png new file mode 100644 index 0000000000000000000000000000000000000000..4c233ae9f023e0e933405fe30b6d9d53ca52371c GIT binary patch literal 510 zcmV6{2_@7P0X<`~x9EM8qzFxL|SxqF^DU{}L}i_68I!WZf^V zyUmj_hO;wg=8R3i-zgW~2gfPqgnwag)3R#Eg^r$qfu4?Y+g7xM)Jgno(V+)LyLVtA zADDG&Aho`>nH*rl|EliEdOcv=H+9!GRuy>XyPRE_r~-`F$w$Ok8u+ToPEx>zru$F^ z%=#r~|Jeu7HC+sxX6D}ub^#n00gDFN`S5~xHa{FVY?6Ngus;lFc~EyhhUU355(BHR zmWSmS*m=b~TQP9)ih0grpyTg-c3qO6EX{Kh13fSIQ84K`Gfy`L2L9}mAVfskT*5vhFoHQlC+sFi0k239B|YUNpqftLFOQ9XZa zBnE;55=6B;d%`ea!Jvq!m47xj90=MJ5tZ{C2}Qt+Cr$Tgsu&2?HQie3!>g^yj)W92 z=1T4^ji!NMB9pi*{`igmij$0oGg|KgvR>njdbE~vg_?G(FSTc1Oyyq!=k2>wv|D@T zQkTH=X<4@A%#E(TzOEZ*HZ2)xdW}t=H=z0X4IXEEO@D`y&j0`b07*qoM6N<$f>Fxm AyZ`_I literal 0 HcmV?d00001 diff --git a/F-Droid/res/drawable-xhdpi/ic_add_circle_outline_white.png b/F-Droid/res/drawable-xhdpi/ic_add_circle_outline_white.png new file mode 100644 index 0000000000000000000000000000000000000000..573aefe2b393abbf935b06630aa5d926300c0b1c GIT binary patch literal 1280 zcmV+b1^@bqP)3Aimbg1Az;H9K$y@FdscSWsMW>9oW z-MXl^jg+al6*^;$E%i#hG_4g!&H2vyd2`}9NzTPG`TYKYd`p_*;y!JAc(;36s97^a(T#J`t-GFs^4Bl()9mkpGK z8&E}(QHn7_JC)%C#5u})yzrJzVnGMA@fo8`;_spLdXKt%U@{ zd5-A{;(8`=y+1LH5z9Z|2&Tux0|}@ih3P=P0ad(1%diFsBtZBH3+)XR`2{2~bs>QT z2;G?W_W>=KI*~vFgcF#W-3Rocy{9tpfNIic*W3nF@Dc44 z5_o`c2JHhecL51Bi>6QlmSWoMF5n{CeI%3sVG!+{yMPqh-p~S)Xn(s2n1`t;w1DN9 zYMldG(8iF^0)&@n>zxA*q4kCu(1+IH9B>(}Gt_`%Xx+{M_t3V48jwJ{?Hn+Kwi2(X7fcf@C_F%D1Dk}MKK=B+kgc`Y15cO8W^vGm z_r688^GLA)@ZfcPt zR?lVZJ*UyjgRjeSBtV)IR3im!4kww!-ZPeZee}4Ar;sz^3_s@iv~`wAav7%4kHg>f z4Dv05Bw6m_KMfr`;9CZ$@$2|~IXyUeNgu~Zu$uYAh!7#pd{&d-I5&8OlXJ}W_X5N& zCh^MztwCHtX`~-N++;y;mw;Ls!%HJ<5BeHbjDx(v3*#h-hI0|Ff_*%t7%BD;5Bn-& zGuQY)zNWa!&&>K>E`!F{%sKwSjUl?&sNOW82I$qXo({UX%_Ckj%~!rM&1)WUiwh)a qrWWyXLf9(>gt<~cDWDWk3iuCUr3JX4tg|`*0000qG!Sv2g38o|dqI?R2#hmx-$W34i!y@0nZukgJr^0+^x33%(Jx3D2oA;}>w8 zIz5uqt_xyv)2Aq=wEXvO}AS_4$&d|e0o0KI01>WPUb#lo8f8et) zDc}yiTS@|$XN>QLRN@2P;IjV+*{`*@fZLAe|9~Q3zi!3>lo&XluMQx5q7WVMi9Nt3|=NWmK53lur7KimK3S~|Zo(~&(z_xzAIYD?nZ0P}04(c}) zN<*+aA0~Rh9{cw@3Z)^~o)5e60Rc)w5ST9kn1UEVdOl2yK4Kxlkn{Ta@*i;vL$cIU&2z>hf%!RCCZ3;dkc5NyteOM1X*NJ6kWA5Q84igpr$ z)%h)y2_OVfLV#3FGr(04Bm~HH*$hx(B0!LzKO%1iP&@|_LV#pXQKo<@2oM5fyI>BO zp_`B(KflcpbAaMLBq9VzcNY}}aEz}B2=enkQ;Y^sG$1A+K)wg4sDL8~2}uKGyD#^vu*{O#z|Jz?wmeU1>@H92bc0mKqR zY_-D;7f(UFXj}A#{bC;s;r-&DM z#+ay$c*+Hiq~$Safh#=X117a-a+$o;V^G;srphuQui0RW3A^kvVT%o3u|l0ooRof! l>-%H?pC$fijt4HYmZ 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 literal 0 HcmV?d00001 diff --git a/F-Droid/res/drawable-xxxhdpi/ic_check_circle_white.png b/F-Droid/res/drawable-xxxhdpi/ic_check_circle_white.png new file mode 100644 index 0000000000000000000000000000000000000000..5078aa2d627504bc58fca895fa71bb5201c2402c GIT binary patch literal 1932 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 literal 0 HcmV?d00001 diff --git a/F-Droid/res/drawable/ic_check_circle_white.png b/F-Droid/res/drawable/ic_check_circle_white.png new file mode 100644 index 0000000000000000000000000000000000000000..4c233ae9f023e0e933405fe30b6d9d53ca52371c GIT binary patch literal 510 zcmV6{2_@7P0X<`~x9EM8qzFxL|SxqF^DU{}L}i_68I!WZf^V zyUmj_hO;wg=8R3i-zgW~2gfPqgnwag)3R#Eg^r$qfu4?Y+g7xM)Jgno(V+)LyLVtA zADDG&Aho`>nH*rl|EliEdOcv=H+9!GRuy>XyPRE_r~-`F$w$Ok8u+ToPEx>zru$F^ z%=#r~|Jeu7HC+sxX6D}ub^#n00gDFN`S5~xHa{FVY?6Ngus;lFc~EyhhUU355(BHR zmWSmS*m=b~TQP9)ih0grpyTg-c3qO6EX{Kh13fSIQ84K`Gfy`L2L9}mAVfskT*5vhFoHQlC+sFi0k239B|YUNpqftLFOQ9XZa zBnE;55=6B;d%`ea!Jvq!m47xj90=MJ5tZ{C2}Qt+Cr$Tgsu&2?HQie3!>g^yj)W92 z=1T4^ji!NMB9pi*{`igmij$0oGg|KgvR>njdbE~vg_?G(FSTc1Oyyq!=k2>wv|D@T zQkTH=X<4@A%#E(TzOEZ*HZ2)xdW}t=H=z0X4IXEEO@D`y&j0`b07*qoM6N<$f>Fxm AyZ`_I literal 0 HcmV?d00001 diff --git a/F-Droid/res/layout-v11/select_local_apps_list_item.xml b/F-Droid/res/layout-v11/select_local_apps_list_item.xml index bacc76baa..716e0fa25 100644 --- a/F-Droid/res/layout-v11/select_local_apps_list_item.xml +++ b/F-Droid/res/layout-v11/select_local_apps_list_item.xml @@ -12,11 +12,10 @@ limitations under the License. --> - @@ -28,30 +27,50 @@ android:layout_marginLeft="?attr/listPreferredItemPaddingLeft" android:layout_marginStart="?android:attr/listPreferredItemPaddingStart" android:layout_marginTop="6dip" + android:layout_alignParentStart="true" + android:layout_alignParentLeft="true" + tools:src="@drawable/ic_launcher" tools:ignore="ContentDescription" /> + + + android:textAppearance="?android:attr/textAppearanceMedium" + tools:text="F-Droid" /> + android:textAppearance="?android:attr/textAppearanceSmall" + tools:text="Application Manager" /> - + diff --git a/F-Droid/res/layout-v17/select_local_apps_list_item.xml b/F-Droid/res/layout-v17/select_local_apps_list_item.xml index 5ac585492..b0ebeac96 100644 --- a/F-Droid/res/layout-v17/select_local_apps_list_item.xml +++ b/F-Droid/res/layout-v17/select_local_apps_list_item.xml @@ -12,46 +12,57 @@ limitations under the License. --> - + android:paddingTop="2dip"> + + + android:textAppearance="?android:attr/textAppearanceMedium" + tools:text="F-Droid" /> + android:textAppearance="?android:attr/textAppearanceSmall" + tools:text="Application Manager" /> - + diff --git a/F-Droid/res/layout/select_local_apps_list_item.xml b/F-Droid/res/layout/select_local_apps_list_item.xml index 29b0598e8..653cf4d91 100644 --- a/F-Droid/res/layout/select_local_apps_list_item.xml +++ b/F-Droid/res/layout/select_local_apps_list_item.xml @@ -12,19 +12,15 @@ limitations under the License. --> - - - + + + android:textAppearance="?android:attr/textAppearanceMedium" + tools:text="F-Droid" /> + android:textAppearance="?android:attr/textAppearanceSmall" + tools:text="Application Manager" /> - + \ No newline at end of file diff --git a/F-Droid/src/org/fdroid/fdroid/views/swap/SelectAppsView.java b/F-Droid/src/org/fdroid/fdroid/views/swap/SelectAppsView.java index dfbf5091e..49c8defb3 100644 --- a/F-Droid/src/org/fdroid/fdroid/views/swap/SelectAppsView.java +++ b/F-Droid/src/org/fdroid/fdroid/views/swap/SelectAppsView.java @@ -4,6 +4,7 @@ import android.annotation.TargetApi; import android.content.Context; import android.content.pm.PackageManager; import android.database.Cursor; +import android.graphics.PorterDuff; import android.graphics.drawable.Drawable; import android.net.Uri; import android.os.Build; @@ -149,9 +150,12 @@ public class SelectAppsView extends ListView implements String packageName = c.getString(c.getColumnIndex(InstalledAppProvider.DataColumns.APP_ID)); if (getState().hasSelectedPackage(packageName)) { getState().deselectPackage(packageName); + adapter.updateCheckedIndicatorView(position, false); } else { getState().selectPackage(packageName); + adapter.updateCheckedIndicatorView(position, true); } + } @Override @@ -275,6 +279,8 @@ public class SelectAppsView extends ListView implements labelView.setText(appLabel); iconView.setImageDrawable(icon); + final int listPosition = cursor.getPosition() + 1; // To account for the header view. + // Since v11, the Android SDK provided the ability to show selected list items // by highlighting their background. Prior to this, we need to handle this ourselves // by adding a checkbox which can toggle selected items. @@ -283,8 +289,6 @@ public class SelectAppsView extends ListView implements CheckBox checkBox = (CheckBox)checkBoxView; checkBox.setOnCheckedChangeListener(null); - final int listPosition = cursor.getPosition() + 1; // To account for the header view. - checkBox.setChecked(listView.isItemChecked(listPosition)); checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override @@ -294,6 +298,35 @@ public class SelectAppsView extends ListView implements } }); } + + updateCheckedIndicatorView(view, listView.isItemChecked(listPosition)); + } + + public void updateCheckedIndicatorView(int position, boolean checked) { + final int firstListItemPosition = listView.getFirstVisiblePosition(); + final int lastListItemPosition = firstListItemPosition + listView.getChildCount() - 1; + + if (position >= firstListItemPosition && position <= lastListItemPosition ) { + final int childIndex = position - firstListItemPosition; + updateCheckedIndicatorView(listView.getChildAt(childIndex), checked); + } + } + + private void updateCheckedIndicatorView(View view, boolean checked) { + ImageView imageView = (ImageView)view.findViewById(R.id.checked); + if (imageView != null) { + int resource; + int colour; + if (checked) { + resource = R.drawable.ic_check_circle_white; + colour = getResources().getColor(R.color.fdroid_blue); + } else { + resource = R.drawable.ic_add_circle_outline_white; + colour = 0xFFD0D0D4; + } + imageView.setImageDrawable(getResources().getDrawable(resource)); + imageView.setColorFilter(colour, PorterDuff.Mode.MULTIPLY); + } } } diff --git a/F-Droid/tools/download-material-icon.sh b/F-Droid/tools/download-material-icon.sh index fc5ce8639..6bd8e128b 100755 --- a/F-Droid/tools/download-material-icon.sh +++ b/F-Droid/tools/download-material-icon.sh @@ -48,7 +48,7 @@ function download { RES_DIR=$1 CATEGORY=$2 -ICON="${3}_white" +ICON="${3}_black" BASE_URL="https://raw.githubusercontent.com/google/material-design-icons/master" SCREENS="mdpi hdpi xhdpi xxhdpi xxxhdpi"