From ebf919f600e202ac8d22173b5e90bd7577abd913 Mon Sep 17 00:00:00 2001 From: eina Date: Mon, 9 Feb 2026 17:13:09 +0100 Subject: [PATCH 1/2] fix(monthview): events that end on midnight won't be shown on the next day --- app/src/main/kotlin/org/fossify/calendar/views/MonthView.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/kotlin/org/fossify/calendar/views/MonthView.kt b/app/src/main/kotlin/org/fossify/calendar/views/MonthView.kt index bf41c1d49..bcf30a310 100644 --- a/app/src/main/kotlin/org/fossify/calendar/views/MonthView.kt +++ b/app/src/main/kotlin/org/fossify/calendar/views/MonthView.kt @@ -482,7 +482,7 @@ class MonthView(context: Context, attrs: AttributeSet, defStyle: Int) : View(con val isMidnight = Formatter.getDateTimeFromTS(endDateTime.seconds()) == Formatter.getDateTimeFromTS(endDateTime.seconds()).withTimeAtStartOfDay() val numDays = Days.daysBetween(eventStartDateTime, eventEndDateTime).days - val daysCnt = if (numDays == 1 && isMidnight) 0 else numDays + val daysCnt = if (isMidnight) numDays - 1 else numDays return daysCnt + 1 } From 616d902a4049fe85a8baaaefe6366c38d55b1205 Mon Sep 17 00:00:00 2001 From: eina Date: Mon, 9 Feb 2026 17:14:31 +0100 Subject: [PATCH 2/2] feat(day fragment): events that end on yesterday's midnight won't be shown on the current day --- .../kotlin/org/fossify/calendar/fragments/DayFragment.kt | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/app/src/main/kotlin/org/fossify/calendar/fragments/DayFragment.kt b/app/src/main/kotlin/org/fossify/calendar/fragments/DayFragment.kt index 2e23d6da0..bfdd274eb 100644 --- a/app/src/main/kotlin/org/fossify/calendar/fragments/DayFragment.kt +++ b/app/src/main/kotlin/org/fossify/calendar/fragments/DayFragment.kt @@ -17,6 +17,7 @@ import org.fossify.calendar.extensions.config import org.fossify.calendar.extensions.eventsHelper import org.fossify.calendar.extensions.getViewBitmap import org.fossify.calendar.extensions.printBitmap +import org.fossify.calendar.extensions.seconds import org.fossify.calendar.helpers.* import org.fossify.calendar.interfaces.NavigationListener import org.fossify.calendar.models.Event @@ -104,6 +105,13 @@ class DayFragment : Fragment() { if (replaceDescription) it.location else it.description }))) + // remove events that do not occur today, but happen to end on midnight + sorted.removeIf { + val startDateTimeSeconds = Formatter.getDateTimeFromTS(it.startTS).seconds() + val endDateTimeSeconds = Formatter.getDateTimeFromTS(it.endTS).seconds() + startDateTimeSeconds != endDateTimeSeconds && Formatter.getDateTimeFromTS(endDateTimeSeconds) == Formatter.getDateTimeFromTS(Formatter.getDayStartTS(mDayCode)).withTimeAtStartOfDay() + } + activity?.runOnUiThread { updateEvents(sorted) }