diff --git a/common/src/main/res/values/strings.xml b/common/src/main/res/values/strings.xml
index 684af62d3..000f05950 100644
--- a/common/src/main/res/values/strings.xml
+++ b/common/src/main/res/values/strings.xml
@@ -20,5 +20,5 @@
To Do\'s
Rewards
Stats
-
+ Settings
\ No newline at end of file
diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/MainActivity.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/MainActivity.kt
index de743f789..85a553f0b 100644
--- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/MainActivity.kt
+++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/MainActivity.kt
@@ -7,6 +7,7 @@ import android.util.Log
import android.view.View
import androidx.activity.viewModels
import androidx.appcompat.content.res.AppCompatResources
+import androidx.core.content.ContextCompat
import androidx.recyclerview.widget.RecyclerView
import androidx.wear.widget.WearableLinearLayoutManager
import com.habitrpg.common.habitica.models.tasks.TaskType
@@ -21,6 +22,7 @@ data class MenuItem(
val identifier: String,
val title: String,
val icon: Drawable?,
+ val color: Int,
val onClick: () -> Unit
)
@@ -52,42 +54,56 @@ class MainActivity : BaseActivity() {
MenuItem(
"avatar",
"Avatar",
- AppCompatResources.getDrawable(this, R.drawable.icon_rewards)
+ AppCompatResources.getDrawable(this, R.drawable.ic_avatar),
+ ContextCompat.getColor(this, R.color.brand_400)
) {
},
MenuItem(
"Stats",
getString(R.string.stats),
- AppCompatResources.getDrawable(this, R.drawable.icon_rewards)
+ AppCompatResources.getDrawable(this, R.drawable.ic_stats),
+ ContextCompat.getColor(this, R.color.red_100)
) {
},
MenuItem(
"habits",
getString(R.string.habits),
- AppCompatResources.getDrawable(this, R.drawable.icon_habits)
+ AppCompatResources.getDrawable(this, R.drawable.icon_habits),
+ ContextCompat.getColor(this, R.color.orange_100)
) {
openTasklist(TaskType.HABIT)
},
MenuItem(
"dailies",
getString(R.string.dailies),
- AppCompatResources.getDrawable(this, R.drawable.icon_dailies)
+ AppCompatResources.getDrawable(this, R.drawable.icon_dailies),
+ ContextCompat.getColor(this, R.color.yellow_100)
) {
openTasklist(TaskType.DAILY)
},
MenuItem(
"todos",
getString(R.string.todos),
- AppCompatResources.getDrawable(this, R.drawable.icon_todos)
+ AppCompatResources.getDrawable(this, R.drawable.icon_todos),
+ ContextCompat.getColor(this, R.color.green_100)
) {
openTasklist(TaskType.TODO)
},
MenuItem(
"rewards",
getString(R.string.rewards),
- AppCompatResources.getDrawable(this, R.drawable.icon_rewards)
+ AppCompatResources.getDrawable(this, R.drawable.icon_rewards),
+ ContextCompat.getColor(this, R.color.teal_100)
+ ) {
+ openTasklist(TaskType.REWARD)
+ },
+ MenuItem(
+ "settings",
+ getString(R.string.settings),
+ AppCompatResources.getDrawable(this, R.drawable.ic_settings),
+ ContextCompat.getColor(this, R.color.blue_100)
) {
openTasklist(TaskType.REWARD)
}
@@ -99,7 +115,7 @@ class MainActivity : BaseActivity() {
private fun openTasklist(type: TaskType) {
val intent = Intent(this, TaskListActivity::class.java).apply {
- putExtra("type", type.name)
+ putExtra("task_type", type.name)
}
startActivity(intent)
}
diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/adapters/HubAdapter.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/adapters/HubAdapter.kt
index 095c65257..05dbc934a 100644
--- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/adapters/HubAdapter.kt
+++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/adapters/HubAdapter.kt
@@ -32,6 +32,7 @@ class HubViewHolder(itemView: View): RecyclerView.ViewHolder(itemView) {
fun bind(item: MenuItem) {
binding.title.text = item.title
binding.iconView.setImageDrawable(item.icon)
+ binding.iconView.setColorFilter(item.color)
binding.root.setOnClickListener {
item.onClick()
}
diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/TaskListViewModel.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/TaskListViewModel.kt
index e7100687e..4683f204c 100644
--- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/TaskListViewModel.kt
+++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/TaskListViewModel.kt
@@ -1,7 +1,9 @@
package com.habitrpg.wearos.habitica.ui.viewmodels
import androidx.lifecycle.MutableLiveData
+import androidx.lifecycle.SavedStateHandle
import androidx.lifecycle.viewModelScope
+import com.habitrpg.common.habitica.models.tasks.TaskType
import com.habitrpg.wearos.habitica.data.repositories.TaskRepository
import com.habitrpg.wearos.habitica.data.repositories.UserRepository
import com.habitrpg.wearos.habitica.models.tasks.Task
@@ -11,14 +13,18 @@ import javax.inject.Inject
@HiltViewModel
class TaskListViewModel @Inject constructor(
+ savedStateHandle: SavedStateHandle,
private val taskRepository: TaskRepository,
userRepository: UserRepository
) : BaseViewModel(userRepository) {
val tasks = MutableLiveData>()
+ val taskType = TaskType.from(savedStateHandle.get("task_type"))
init {
viewModelScope.launch {
- tasks.value = taskRepository.retrieveTasks()?.tasks?.values?.toList()
+ tasks.value = taskRepository.retrieveTasks()?.tasks?.values?.filter {
+ it.type == taskType
+ }?.toList()
}
}
}
\ No newline at end of file
diff --git a/wearos/src/main/res/drawable-anydpi/ic_avatar.xml b/wearos/src/main/res/drawable-anydpi/ic_avatar.xml
new file mode 100644
index 000000000..34f95442e
--- /dev/null
+++ b/wearos/src/main/res/drawable-anydpi/ic_avatar.xml
@@ -0,0 +1,11 @@
+
+
+
diff --git a/wearos/src/main/res/drawable-anydpi/ic_settings.xml b/wearos/src/main/res/drawable-anydpi/ic_settings.xml
new file mode 100644
index 000000000..52facccf7
--- /dev/null
+++ b/wearos/src/main/res/drawable-anydpi/ic_settings.xml
@@ -0,0 +1,11 @@
+
+
+
diff --git a/wearos/src/main/res/drawable-anydpi/ic_stats.xml b/wearos/src/main/res/drawable-anydpi/ic_stats.xml
new file mode 100644
index 000000000..57b5aabc8
--- /dev/null
+++ b/wearos/src/main/res/drawable-anydpi/ic_stats.xml
@@ -0,0 +1,11 @@
+
+
+
diff --git a/wearos/src/main/res/drawable-hdpi/ic_avatar.png b/wearos/src/main/res/drawable-hdpi/ic_avatar.png
new file mode 100644
index 000000000..f7130e058
Binary files /dev/null and b/wearos/src/main/res/drawable-hdpi/ic_avatar.png differ
diff --git a/wearos/src/main/res/drawable-hdpi/ic_settings.png b/wearos/src/main/res/drawable-hdpi/ic_settings.png
new file mode 100644
index 000000000..ac9c9033e
Binary files /dev/null and b/wearos/src/main/res/drawable-hdpi/ic_settings.png differ
diff --git a/wearos/src/main/res/drawable-hdpi/ic_stats.png b/wearos/src/main/res/drawable-hdpi/ic_stats.png
new file mode 100644
index 000000000..4c74762b2
Binary files /dev/null and b/wearos/src/main/res/drawable-hdpi/ic_stats.png differ
diff --git a/wearos/src/main/res/drawable-mdpi/ic_avatar.png b/wearos/src/main/res/drawable-mdpi/ic_avatar.png
new file mode 100644
index 000000000..7990d00c4
Binary files /dev/null and b/wearos/src/main/res/drawable-mdpi/ic_avatar.png differ
diff --git a/wearos/src/main/res/drawable-mdpi/ic_settings.png b/wearos/src/main/res/drawable-mdpi/ic_settings.png
new file mode 100644
index 000000000..a3d2acfcb
Binary files /dev/null and b/wearos/src/main/res/drawable-mdpi/ic_settings.png differ
diff --git a/wearos/src/main/res/drawable-mdpi/ic_stats.png b/wearos/src/main/res/drawable-mdpi/ic_stats.png
new file mode 100644
index 000000000..67e19e9d3
Binary files /dev/null and b/wearos/src/main/res/drawable-mdpi/ic_stats.png differ
diff --git a/wearos/src/main/res/drawable-xhdpi/ic_avatar.png b/wearos/src/main/res/drawable-xhdpi/ic_avatar.png
new file mode 100644
index 000000000..d0546f19b
Binary files /dev/null and b/wearos/src/main/res/drawable-xhdpi/ic_avatar.png differ
diff --git a/wearos/src/main/res/drawable-xhdpi/ic_settings.png b/wearos/src/main/res/drawable-xhdpi/ic_settings.png
new file mode 100644
index 000000000..f63467d9d
Binary files /dev/null and b/wearos/src/main/res/drawable-xhdpi/ic_settings.png differ
diff --git a/wearos/src/main/res/drawable-xhdpi/ic_stats.png b/wearos/src/main/res/drawable-xhdpi/ic_stats.png
new file mode 100644
index 000000000..0438f1ab3
Binary files /dev/null and b/wearos/src/main/res/drawable-xhdpi/ic_stats.png differ
diff --git a/wearos/src/main/res/drawable-xxhdpi/ic_avatar.png b/wearos/src/main/res/drawable-xxhdpi/ic_avatar.png
new file mode 100644
index 000000000..fae507a4e
Binary files /dev/null and b/wearos/src/main/res/drawable-xxhdpi/ic_avatar.png differ
diff --git a/wearos/src/main/res/drawable-xxhdpi/ic_settings.png b/wearos/src/main/res/drawable-xxhdpi/ic_settings.png
new file mode 100644
index 000000000..796403b6b
Binary files /dev/null and b/wearos/src/main/res/drawable-xxhdpi/ic_settings.png differ
diff --git a/wearos/src/main/res/drawable-xxhdpi/ic_stats.png b/wearos/src/main/res/drawable-xxhdpi/ic_stats.png
new file mode 100644
index 000000000..4814ddc25
Binary files /dev/null and b/wearos/src/main/res/drawable-xxhdpi/ic_stats.png differ
diff --git a/wearos/src/main/res/drawable/row_background.xml b/wearos/src/main/res/drawable/row_background.xml
index ded31b0b9..8d6f26e04 100644
--- a/wearos/src/main/res/drawable/row_background.xml
+++ b/wearos/src/main/res/drawable/row_background.xml
@@ -1,5 +1,5 @@
-
+
\ No newline at end of file
diff --git a/wearos/src/main/res/layout/row_habit.xml b/wearos/src/main/res/layout/row_habit.xml
index 3288f20d8..6862709d0 100644
--- a/wearos/src/main/res/layout/row_habit.xml
+++ b/wearos/src/main/res/layout/row_habit.xml
@@ -1,10 +1,11 @@
+ android:paddingVertical="1dp">
+ android:layout_height="wrap_content"
+ tools:text="Task Title"/>
\ No newline at end of file