From 24aeaab80ad57bc5582328f2b4c0b441ca87b7d2 Mon Sep 17 00:00:00 2001 From: Phillip Thelen Date: Thu, 7 Jul 2022 11:09:43 +0200 Subject: [PATCH] Task list improvements --- .../habitica/ui/adapters/TaskListAdapter.kt | 12 +++++----- .../ui/viewHolders/HeaderTaskViewHolder.kt | 15 ++++++++++++ .../main/res/drawable-mdpi/done_sparkles.png | Bin 0 -> 536 bytes .../main/res/drawable-xhdpi/done_sparkles.png | Bin 0 -> 966 bytes .../res/drawable-xxhdpi/done_sparkles.png | Bin 0 -> 1357 bytes .../main/res/layout/row_section_header.xml | 16 ++++++------- .../src/main/res/layout/row_task_header.xml | 22 ++++++++++++++++++ wearos/src/main/res/values/strings.xml | 1 + 8 files changed, 52 insertions(+), 14 deletions(-) create mode 100644 wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewHolders/HeaderTaskViewHolder.kt create mode 100644 wearos/src/main/res/drawable-mdpi/done_sparkles.png create mode 100644 wearos/src/main/res/drawable-xhdpi/done_sparkles.png create mode 100644 wearos/src/main/res/drawable-xxhdpi/done_sparkles.png create mode 100644 wearos/src/main/res/layout/row_task_header.xml diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/adapters/TaskListAdapter.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/adapters/TaskListAdapter.kt index 47e74595e..f627c9552 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/adapters/TaskListAdapter.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/adapters/TaskListAdapter.kt @@ -2,10 +2,10 @@ package com.habitrpg.wearos.habitica.ui.adapters import android.view.ViewGroup import androidx.recyclerview.widget.RecyclerView -import com.habitrpg.android.habitica.databinding.RowSectionHeaderBinding +import com.habitrpg.android.habitica.databinding.RowTaskHeaderBinding import com.habitrpg.common.habitica.extensions.layoutInflater import com.habitrpg.wearos.habitica.models.tasks.Task -import com.habitrpg.wearos.habitica.ui.viewHolders.HeaderSectionViewHolder +import com.habitrpg.wearos.habitica.ui.viewHolders.HeaderTaskViewHolder import com.habitrpg.wearos.habitica.ui.viewHolders.tasks.TaskViewHolder open class TaskListAdapter : RecyclerView.Adapter(), BaseAdapter { @@ -25,7 +25,7 @@ open class TaskListAdapter : RecyclerView.Adapter(), Ba override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder { val inflater = parent.context.layoutInflater - return HeaderSectionViewHolder(RowSectionHeaderBinding.inflate(inflater, parent, false).root) + return HeaderTaskViewHolder(RowTaskHeaderBinding.inflate(inflater, parent, false).root) } override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) { @@ -38,14 +38,14 @@ open class TaskListAdapter : RecyclerView.Adapter(), Ba holder.itemView.setOnClickListener { onTaskTapped?.invoke(item) } - } else if (holder is HeaderSectionViewHolder){ + } else if (holder is HeaderTaskViewHolder){ if (position == 0) { - holder.bind(title) + holder.bind(title, data.firstOrNull() is String) holder.itemView.setOnClickListener { onRefresh?.invoke() } } else { - holder.bind(data[position - 1] as String) + holder.bind(data[position - 1] as String, false) } } } diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewHolders/HeaderTaskViewHolder.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewHolders/HeaderTaskViewHolder.kt new file mode 100644 index 000000000..ff3556700 --- /dev/null +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewHolders/HeaderTaskViewHolder.kt @@ -0,0 +1,15 @@ +package com.habitrpg.wearos.habitica.ui.viewHolders + +import android.view.View +import androidx.core.view.isVisible +import androidx.recyclerview.widget.RecyclerView +import com.habitrpg.android.habitica.databinding.RowTaskHeaderBinding + +class HeaderTaskViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) { + fun bind(title: String, showDone: Boolean) { + binding.header.textView.text = title + binding.doneView.isVisible = showDone + } + + val binding = RowTaskHeaderBinding.bind(itemView) +} diff --git a/wearos/src/main/res/drawable-mdpi/done_sparkles.png b/wearos/src/main/res/drawable-mdpi/done_sparkles.png new file mode 100644 index 0000000000000000000000000000000000000000..8e75cfebed96541b5869df86acdcb13ac066fc9b GIT binary patch literal 536 zcmV+z0_XjSP) zl!8Jp;=pfcZ*SV$ujf1WoB|Rd&r~4+1v2q_HhDQ62}wZ`93>6p7eUzO%O(;aFH(Nb z8jSR$(UKyHyh0g@D2^tCLyf$N1rbO9Tc)#R4iB{{x3nOH%imrVS+|8>vT&qWPzDrK zW(W#V5%_QO2ntCQsgNjt2qrI89GmWf=n_iGWe|t;~ZDe86x4H4y;p$JB=pCFe{Abaf5H%1Mm)QJJx&oPk9@-iL z7(5)r)Eb-CARBS!yjVYyv$AyGSAj+ aB90H=Ka5GLkw%ID00008O$s4<5=ex;J_GJ zzfHj+7mD4vwa@}Jyc`I&C4!aEXCf1dKhIcFv{l_n{ zGn`07eg&mU=p)fZ)ZVNue_i>bGN5$Sr-=t-lOLq#}Og=UfdC1L{+m0OSnKqm5f7ZKqSsQG%Bk6uKd;T zQn^`3NJvQN9=3<4e)R04_|?*~yl!Dg=t(Gkxwt0Vb`C>CS3W98HDh!`oU&b+G13?k zLJK7#r9qU%{S4|DWNBb zFKOJlyJ77dX2OV7Cloo3#|x@RW1=?6esvWC1(W)Y6C#!yMy$qS&VMr^iia@JB|+l` z*P0qitbJ?umuVHhxBNa$!-VZOQjdbxc4wbNl%@BZvAYJbia(?WNK?&M=>TVc>Y}V= zKC!)MiU=-3K{kEZ+(JySc8}-bv(tQ)lsK8f0MVH}`mJQV&Za8H}WS$1@dF15!-pam73X_kO5Ngyi#rpKq zk!+|mUC)1CODGT3{|{g;i9pkF6Q~`97Y}U_OKodY?Yva@h+^cWz^`Bc3B)QM*|-kk o)Lph;XOYmJxNQ3g2?+zqKjs}TA(5aH#sB~S07*qoM6N<$f~0(}HUIzs literal 0 HcmV?d00001 diff --git a/wearos/src/main/res/drawable-xxhdpi/done_sparkles.png b/wearos/src/main/res/drawable-xxhdpi/done_sparkles.png new file mode 100644 index 0000000000000000000000000000000000000000..77d80b52b1f16c4080b95cd80b5da85f78284bc2 GIT binary patch literal 1357 zcmV-T1+w~yP)fOrBn zRZx5#P|mit>6w)hSzcMYt5vcy+rKK8q}{O&``3S_yXONy5Cmas(6HO2XP^4u5DKco z^uh*gRF88IEedGQupw{UU#7#zTT=S5R5 z;cADV~WW<20ZN zuN8cRAAD1q=(G+N!ES4DFw%pp!AKDx2Q;AiP$H}nkD2f|bjlC139rv}Bc2C5!OnLh zC>i#SdE4(gODozO2cpd#kIP)T_}qqKD1DSU$E`e%^rUO02eDP zIYea9u~ zcqW=8TyP(a%Ut$KOLaDyC^I7vyYG^af)(hMV)XOwZy?wS{j}qOAP9mW2!bF8f{+R7 zb{n++Ak8ecumOda$5^-~;Ei8E?>z0gbLL4IDO5ZbtHr`;$2H?CH$}WHQkZ!3*})!9 zy(|c)nTmK@q!97w{^!RKQNWWgOJb3Tw?#Gs_N z!Nz>dx@g8O(tk={YXBOT-3FpI2-&ICd*0K3Zx8Oin|mEiqIlGOpf_X?nWtE7RfcND0*2@o(5ir+jOe@Dc48HdHm$Bh; z0Tl6)P_@g?C8vOE`@&hJqz(C)0G;2#!0sh>MdSVW*AWMKy{mU{!cRP8RYLCho|{*! zjXCBB2Y25Oms_uoHtGBxe`yH$Xy~NfR9%Eu(5elgCbequeU3!&&}L>el14a9=CTQ=4g}fI zXQ${8cw*k0zz3gW@TCtG!#MCli^!EH74h^L2QJH^B8~VEv;<^+SjmD`24#cT`<=O5XXeR%8q>{5N0q8E^o;>067;h@F`AvJ@0@0h^E`{D24 z)#0v`s>{?AGv*OJtYSA<6oXIR>zZS^G^n;JUbygHA3W3HI%pq+jd&^GRHYtja&(*Y zVm3t->dK2r;Dtgk0%jn)^GxK3zlv~go*dn#8UVfB7U2Xz5ClOGgthz+LQutRXkJy` P00000NkvXXu0mjff>n6U literal 0 HcmV?d00001 diff --git a/wearos/src/main/res/layout/row_section_header.xml b/wearos/src/main/res/layout/row_section_header.xml index 1af97509d..2ca69496d 100644 --- a/wearos/src/main/res/layout/row_section_header.xml +++ b/wearos/src/main/res/layout/row_section_header.xml @@ -1,12 +1,12 @@ + android:textColor="@color/watch_purple_200" + tools:text="Header Text" + style="@style/Text.Body1" + android:layout_margin="6dp"/> diff --git a/wearos/src/main/res/layout/row_task_header.xml b/wearos/src/main/res/layout/row_task_header.xml new file mode 100644 index 000000000..afeebfabb --- /dev/null +++ b/wearos/src/main/res/layout/row_task_header.xml @@ -0,0 +1,22 @@ + + + + + \ No newline at end of file diff --git a/wearos/src/main/res/values/strings.xml b/wearos/src/main/res/values/strings.xml index 7ae3faeb5..2d3bd641b 100644 --- a/wearos/src/main/res/values/strings.xml +++ b/wearos/src/main/res/values/strings.xml @@ -37,4 +37,5 @@ Some Food Continue on your phone You leveled up through all your hard work! + All done today! \ No newline at end of file