1
0
mirror of https://github.com/wulkanowy/wulkanowy.git synced 2024-09-19 23:19:09 -05:00

Fix lateness color in attendance (#2481)

This commit is contained in:
Rafał Borcz 2024-03-11 23:38:17 +01:00 committed by GitHub
parent 95e41b5570
commit afb5ae741c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 17 additions and 13 deletions

View File

@ -1,5 +1,6 @@
package io.github.wulkanowy.ui.modules.attendance package io.github.wulkanowy.ui.modules.attendance
import android.content.res.ColorStateList
import android.graphics.Typeface import android.graphics.Typeface
import android.view.LayoutInflater import android.view.LayoutInflater
import android.view.View import android.view.View
@ -33,17 +34,17 @@ class AttendanceAdapter @Inject constructor() :
) )
override fun onBindViewHolder(holder: ItemViewHolder, position: Int) { override fun onBindViewHolder(holder: ItemViewHolder, position: Int) {
val context = holder.binding.root.context
val item = items[position] val item = items[position]
with(holder.binding) { with(holder.binding) {
attendanceItemNumber.text = item.number.toString() attendanceItemNumber.text = item.number.toString()
attendanceItemSubject.text = item.subject.ifBlank { attendanceItemSubject.text = item.subject
root.context.getString(R.string.all_no_data) .ifBlank { context.getString(R.string.all_no_data) }
}
attendanceItemDescription.setText(item.descriptionRes) attendanceItemDescription.setText(item.descriptionRes)
attendanceItemDescription.setTextColor( attendanceItemDescription.setTextColor(
root.context.getThemeAttrColor( context.getThemeAttrColor(
when { when {
item.absence && !item.excused -> R.attr.colorAttendanceAbsence item.absence && !item.excused -> R.attr.colorAttendanceAbsence
item.lateness && !item.excused -> R.attr.colorAttendanceLateness item.lateness && !item.excused -> R.attr.colorAttendanceLateness
@ -61,13 +62,15 @@ class AttendanceAdapter @Inject constructor() :
attendanceItemAlert.isVisible = attendanceItemAlert.isVisible =
item.let { (it.absence && !it.excused) || (it.lateness && !it.excused) } item.let { (it.absence && !it.excused) || (it.lateness && !it.excused) }
attendanceItemAlert.setColorFilter(root.context.getThemeAttrColor( attendanceItemAlert.imageTintList = ColorStateList.valueOf(
when{ context.getThemeAttrColor(
item.absence && !item.excused -> R.attr.colorAttendanceAbsence when {
item.lateness && !item.excused -> R.attr.colorAttendanceLateness item.absence && !item.excused -> R.attr.colorAttendanceAbsence
else -> android.R.attr.colorPrimary item.lateness && !item.excused -> R.attr.colorAttendanceLateness
} else -> android.R.attr.colorPrimary
)) }
)
)
attendanceItemNumber.visibility = View.GONE attendanceItemNumber.visibility = View.GONE
attendanceItemExcuseInfo.visibility = View.GONE attendanceItemExcuseInfo.visibility = View.GONE
attendanceItemExcuseCheckbox.visibility = View.GONE attendanceItemExcuseCheckbox.visibility = View.GONE

View File

@ -46,14 +46,15 @@
<color name="timetable_canceled_light">#d32f2f</color> <color name="timetable_canceled_light">#d32f2f</color>
<color name="timetable_canceled_dark">#e57373</color> <color name="timetable_canceled_dark">#e57373</color>
<color name="timetable_change_light">#ff8f00</color> <color name="timetable_change_light">#ff8f00</color>
<color name="timetable_change_dark">#ffd54f</color> <color name="timetable_change_dark">#ffd54f</color>
<color name="attendance_absence_light">#d32f2f</color> <color name="attendance_absence_light">#d32f2f</color>
<color name="attendance_absence_dark">#e57373</color> <color name="attendance_absence_dark">#e57373</color>
<color name="attendance_lateness_light">#cd2a01</color> <color name="attendance_lateness_light">#ff8f00</color>
<color name="attendance_lateness_dark">#f05d0e</color> <color name="attendance_lateness_dark">#ffd54f</color>
<color name="colorDivider">#1f000000</color> <color name="colorDivider">#1f000000</color>
<color name="colorDividerInverse">#1fffffff</color> <color name="colorDividerInverse">#1fffffff</color>