diff --git a/core/shared/src/main/java/de/mm20/launcher2/search/location/OpeningSchedule.kt b/core/shared/src/main/java/de/mm20/launcher2/search/location/OpeningSchedule.kt index fb897290..270efd3a 100644 --- a/core/shared/src/main/java/de/mm20/launcher2/search/location/OpeningSchedule.kt +++ b/core/shared/src/main/java/de/mm20/launcher2/search/location/OpeningSchedule.kt @@ -26,7 +26,10 @@ data class OpeningHours( sealed interface OpeningSchedule { data object TwentyFourSeven : OpeningSchedule @Serializable - data class Hours(@Serializable val openingHours: List) : OpeningSchedule + data class Hours(@Serializable val openingHours: Set) : OpeningSchedule { + @Deprecated("Use the constructor with Set instead.") + constructor(openingHours: List) : this(openingHours.toSet()) + } } /** diff --git a/core/shared/src/main/java/de/mm20/launcher2/serialization/OpeningScheduleSerializer.kt b/core/shared/src/main/java/de/mm20/launcher2/serialization/OpeningScheduleSerializer.kt index cc7cbb01..5e3b7d2f 100644 --- a/core/shared/src/main/java/de/mm20/launcher2/serialization/OpeningScheduleSerializer.kt +++ b/core/shared/src/main/java/de/mm20/launcher2/serialization/OpeningScheduleSerializer.kt @@ -44,7 +44,7 @@ object OpeningScheduleSerializer : KSerializer { ) } catch (e: SerializationException) { Log.e("MM20", "Failed to deserialize OpeningSchedule.Hours", e) - return OpeningSchedule.Hours(openingHours = emptyList()) + return OpeningSchedule.Hours(openingHours = emptySet()) } } diff --git a/data/locations/src/main/java/de/mm20/launcher2/locations/providers/openstreetmaps/OsmLocation.kt b/data/locations/src/main/java/de/mm20/launcher2/locations/providers/openstreetmaps/OsmLocation.kt index afc2f586..4e5ac2e3 100644 --- a/data/locations/src/main/java/de/mm20/launcher2/locations/providers/openstreetmaps/OsmLocation.kt +++ b/data/locations/src/main/java/de/mm20/launcher2/locations/providers/openstreetmaps/OsmLocation.kt @@ -1,11 +1,9 @@ package de.mm20.launcher2.locations.providers.openstreetmaps import android.content.Context -import de.mm20.launcher2.ktx.flatMapNotNull import de.mm20.launcher2.ktx.ifNullOrEmpty import de.mm20.launcher2.ktx.into import de.mm20.launcher2.ktx.map -import de.mm20.launcher2.ktx.toMultiMap import de.mm20.launcher2.locations.OsmLocationSerializer import de.mm20.launcher2.openstreetmaps.R import de.mm20.launcher2.search.Location @@ -332,10 +330,10 @@ private fun Map.categorize(context: Context): Pair() + val hours = mutableSetOf() for (range in applicableRules) {