diff options
Diffstat (limited to 'app/src/main/java/foundation/e/privacycentralapp/domain')
| -rw-r--r-- | app/src/main/java/foundation/e/privacycentralapp/domain/usecases/TrackersStatisticsUseCase.kt | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/TrackersStatisticsUseCase.kt b/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/TrackersStatisticsUseCase.kt index ae820f1..fcc3676 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/TrackersStatisticsUseCase.kt +++ b/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/TrackersStatisticsUseCase.kt @@ -24,14 +24,14 @@ class TrackersStatisticsUseCase( ) { fun getPastDayTrackersCalls(): List<Int> { - return trackTrackersPrivacyModule.getPastDayTrackersCalls() + return trackTrackersPrivacyModule.getPastDayTrackersCalls().pruneEmptyHistoric() } fun getDayMonthYearStatistics(): Triple<List<Int>, List<Int>, List<Int>> { return Triple( - trackTrackersPrivacyModule.getPastDayTrackersCalls(), - trackTrackersPrivacyModule.getPastMonthTrackersCalls(), - trackTrackersPrivacyModule.getPastYearTrackersCalls() + trackTrackersPrivacyModule.getPastDayTrackersCalls().pruneEmptyHistoric(), + trackTrackersPrivacyModule.getPastMonthTrackersCalls().pruneEmptyHistoric(), + trackTrackersPrivacyModule.getPastYearTrackersCalls().pruneEmptyHistoric() ) } @@ -50,4 +50,17 @@ class TrackersStatisticsUseCase( fun getTrackersCount(): Int { return trackTrackersPrivacyModule.getTrackersCount() } + + private fun List<Int>.pruneEmptyHistoric(): List<Int> { + val result = mutableListOf<Int>() + reversed().forEach { + if (result.isNotEmpty() || it != 0) { + result.add(it) + } + } + if (result.isEmpty() && !isEmpty()) { + result.add(last()) + } + return result + } } |
