diff --git a/Habitica/res/values/strings.xml b/Habitica/res/values/strings.xml index 49e3dcd5e..aeded30f4 100644 --- a/Habitica/res/values/strings.xml +++ b/Habitica/res/values/strings.xml @@ -755,4 +755,5 @@ Daniel the inn keeper Matt the beast master Hide Boss Art + Active World Boss diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/NavigationDrawerAdapter.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/NavigationDrawerAdapter.kt index df19f9b5a..78d05c1eb 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/NavigationDrawerAdapter.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/NavigationDrawerAdapter.kt @@ -1,5 +1,6 @@ package com.habitrpg.android.habitica.ui.adapter +import android.content.Context import android.graphics.PorterDuff import android.support.v4.content.ContextCompat import android.support.v7.widget.RecyclerView @@ -114,17 +115,24 @@ class NavigationDrawerAdapter(tintColor: Int, backgroundTintColor: Int): Recycle if (drawerItem.additionalInfo != null) { additionalInfoView.visibility = View.VISIBLE additionalInfoView.text = drawerItem.additionalInfo - val drawable = ContextCompat.getDrawable(itemView.context, R.drawable.pill_bg) - if (drawable != null) { - DrawableCompat.setTint(drawable, backgroundTintColor) + if (drawerItem.additionalInfoAsPill) { + val drawable = ContextCompat.getDrawable(itemView.context, R.drawable.pill_bg) + if (drawable != null) { + DrawableCompat.setTint(drawable, backgroundTintColor) - val pL = additionalInfoView.paddingLeft - val pT = additionalInfoView.paddingTop - val pR = additionalInfoView.paddingRight - val pB = additionalInfoView.paddingBottom + val pL = additionalInfoView.paddingLeft + val pT = additionalInfoView.paddingTop + val pR = additionalInfoView.paddingRight + val pB = additionalInfoView.paddingBottom - additionalInfoView.backgroundCompat = drawable - additionalInfoView.setPadding(pL, pT, pR, pB) + additionalInfoView.backgroundCompat = drawable + additionalInfoView.setTextColor(ContextCompat.getColor(itemView.context, R.color.white)) + additionalInfoView.setPadding(pL, pT, pR, pB) + } + } else { + additionalInfoView.setBackgroundColor(ContextCompat.getColor(itemView.context, R.color.transparent)) + additionalInfoView.setTextColor(tintColor) + additionalInfoView.setPadding(0, 0, 0,0) } } else { additionalInfoView.visibility = View.GONE diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/NavigationDrawerFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/NavigationDrawerFragment.kt index 8ecebc367..b222512db 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/NavigationDrawerFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/NavigationDrawerFragment.kt @@ -97,6 +97,9 @@ class NavigationDrawerFragment : DialogFragment() { adapter.tintColor = ContextCompat.getColor(it, R.color.brand_300) adapter.backgroundTintColor = ContextCompat.getColor(it, R.color.brand_200) } + adapter.items.filter { it.identifier == SIDEBAR_TAVERN }.forEach { + it.additionalInfo = null + } return } questMenuView.visibility = View.VISIBLE @@ -117,6 +120,12 @@ class NavigationDrawerFragment : DialogFragment() { questMenuView.showBossArt() }*/ questMenuView.hideBossArt() + + adapter.items.filter { it.identifier == SIDEBAR_TAVERN }.forEach { + it.additionalInfo = context?.getString(R.string.active_world_boss) + it.additionalInfoAsPill = false + } + adapter.notifyDataSetChanged() } override fun onCreate(savedInstanceState: Bundle?) { diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/menu/HabiticaDrawerItem.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/menu/HabiticaDrawerItem.kt index 491dad124..714a05233 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/menu/HabiticaDrawerItem.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/menu/HabiticaDrawerItem.kt @@ -1,6 +1,6 @@ package com.habitrpg.android.habitica.ui.menu -class HabiticaDrawerItem(val identifier: String, val text: String, val isHeader: Boolean = false) { +class HabiticaDrawerItem(val identifier: String, val text: String, val isHeader: Boolean = false, var additionalInfoAsPill: Boolean = true) { var additionalInfo: String? = null var isVisible: Boolean = true