diff --git a/app/src/main/java/it/danieleverducci/lunatracker/MainActivity.kt b/app/src/main/java/it/danieleverducci/lunatracker/MainActivity.kt index 14a11e6..a64f4cf 100644 --- a/app/src/main/java/it/danieleverducci/lunatracker/MainActivity.kt +++ b/app/src/main/java/it/danieleverducci/lunatracker/MainActivity.kt @@ -561,11 +561,11 @@ class MainActivity : AppCompatActivity() { val nextTextView = dialogView.findViewById(R.id.notes_template_next) val prevTextView = dialogView.findViewById(R.id.notes_template_prev) + val templates = getAllEvents().filter { it.type == event.type }.distinctBy { it.notes.trim() }.sortedBy { it.time } fun updateContent(current: LunaEvent) { - val allEvents = getAllEvents() - val prevEvent = getPreviousSameEvent(current, allEvents) - var nextEvent = getNextSameEvent(current, allEvents) + val prevEvent = getPreviousSameEvent(current, templates) + var nextEvent = getNextSameEvent(current, templates) notesET.setText(current.notes) if (useQuantity) { @@ -673,7 +673,7 @@ class MainActivity : AppCompatActivity() { } } - fun getPreviousSameEvent(event: LunaEvent, items: ArrayList): LunaEvent? { + fun getPreviousSameEvent(event: LunaEvent, items: List): LunaEvent? { var previousEvent: LunaEvent? = null for (item in items) { if (item.type == event.type && item.time < event.time) { @@ -687,7 +687,7 @@ class MainActivity : AppCompatActivity() { return previousEvent } - fun getNextSameEvent(event: LunaEvent, items: ArrayList): LunaEvent? { + fun getNextSameEvent(event: LunaEvent, items: List): LunaEvent? { var nextEvent: LunaEvent? = null for (item in items) { if (item.type == event.type && item.time > event.time) {