mirror of
https://github.com/SimpleMobileTools/Simple-Calendar.git
synced 2025-06-05 21:59:17 +02:00
Always show single day all-day events at the top
ignoring the user preference `showMidnightSpanningEventsAtTop`
This commit is contained in:
@@ -454,7 +454,7 @@ class WeekFragment : Fragment(), WeeklyCalendar {
|
|||||||
val endDayCode = Formatter.getDayCodeFromDateTime(endDateTime)
|
val endDayCode = Formatter.getDayCodeFromDateTime(endDateTime)
|
||||||
val isAllDay = event.getIsAllDay()
|
val isAllDay = event.getIsAllDay()
|
||||||
|
|
||||||
if ((isAllDay || (startDayCode != endDayCode)) && config.showMidnightSpanningEventsAtTop) {
|
if (shouldAddEventOnTopBar(isAllDay, startDayCode, endDayCode)) {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -543,7 +543,8 @@ class WeekFragment : Fragment(), WeeklyCalendar {
|
|||||||
val startDayCode = Formatter.getDayCodeFromDateTime(startDateTime)
|
val startDayCode = Formatter.getDayCodeFromDateTime(startDateTime)
|
||||||
val endDateTime = Formatter.getDateTimeFromTS(event.endTS)
|
val endDateTime = Formatter.getDateTimeFromTS(event.endTS)
|
||||||
val endDayCode = Formatter.getDayCodeFromDateTime(endDateTime)
|
val endDayCode = Formatter.getDayCodeFromDateTime(endDateTime)
|
||||||
if ((event.getIsAllDay() || (startDayCode != endDayCode)) && config.showMidnightSpanningEventsAtTop) {
|
|
||||||
|
if (shouldAddEventOnTopBar(event.getIsAllDay(), startDayCode, endDayCode)) {
|
||||||
addAllDayEvent(event)
|
addAllDayEvent(event)
|
||||||
} else {
|
} else {
|
||||||
var currentDateTime = startDateTime
|
var currentDateTime = startDateTime
|
||||||
@@ -696,6 +697,12 @@ class WeekFragment : Fragment(), WeeklyCalendar {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun shouldAddEventOnTopBar(isAllDay: Boolean, startDayCode: String, endDayCode: String): Boolean {
|
||||||
|
val spansMultipleDays = startDayCode != endDayCode
|
||||||
|
val isSingleDayAllDayEvent = isAllDay && !spansMultipleDays
|
||||||
|
return isSingleDayAllDayEvent || spansMultipleDays && config.showMidnightSpanningEventsAtTop
|
||||||
|
}
|
||||||
|
|
||||||
@SuppressLint("NewApi")
|
@SuppressLint("NewApi")
|
||||||
private fun addAllDayEvent(event: Event) {
|
private fun addAllDayEvent(event: Event) {
|
||||||
(inflater.inflate(R.layout.week_all_day_event_marker, null, false) as ConstraintLayout).apply {
|
(inflater.inflate(R.layout.week_all_day_event_marker, null, false) as ConstraintLayout).apply {
|
||||||
|
Reference in New Issue
Block a user