From 759b621acbb43244d2f7efa48776a04fdf7dfcf2 Mon Sep 17 00:00:00 2001 From: razeeman Date: Sun, 20 Nov 2022 15:45:40 +0300 Subject: [PATCH] fix code some inspection warnings --- .../simpletimetracker/utils/BaseUiTest.kt | 2 +- .../simpletimetracker/utils/ViewActions.kt | 2 +- app/src/debug/res/values/strings.xml | 2 +- app/src/main/res/anim/fragment_close_exit.xml | 41 ------------------ app/src/main/res/anim/fragment_open_enter.xml | 42 ------------------- app/src/main/res/values/strings.xml | 2 +- .../core/base/BaseActivity.kt | 2 +- .../core/base/BaseBottomSheetFragment.kt | 2 +- .../core/base/BaseFragment.kt | 2 +- .../core/mapper/CategoryViewDataMapper.kt | 5 --- .../core/mapper/RangeMapper.kt | 2 +- .../core/utils/TouchDetectors.kt | 2 +- core/src/main/res/drawable/circle_border.xml | 8 ---- core/src/main/res/drawable/main_icon.xml | 9 ---- .../res/drawable/round_corners_border.xml | 8 ---- core/src/main/res/values-de/strings.xml | 2 - core/src/main/res/values-es/strings.xml | 2 - core/src/main/res/values-fr/strings.xml | 2 - core/src/main/res/values-in/strings.xml | 2 - core/src/main/res/values-it/strings.xml | 2 - core/src/main/res/values-ja/strings.xml | 2 - core/src/main/res/values-nl/strings.xml | 2 - core/src/main/res/values-pt/strings.xml | 2 - core/src/main/res/values-ru/strings.xml | 2 - core/src/main/res/values-sv/strings.xml | 2 - core/src/main/res/values-tr/strings.xml | 2 - core/src/main/res/values-uk/strings.xml | 2 - core/src/main/res/values-zh/strings.xml | 2 - core/src/main/res/values/strings.xml | 2 - .../domain/interactor/RecordTypeInteractor.kt | 2 +- .../domain/mapper/StatisticsMapper.kt | 10 ++--- .../ChangeActivityFilterViewDataInteractor.kt | 6 +-- .../view/ChangeRecordTypeFragment.kt | 16 +++---- .../viewData/ChangeRecordTypeChooserState.kt | 2 +- .../viewModel/ChangeRecordTypeViewModel.kt | 2 +- .../duration/view/DurationDialogFragment.kt | 4 -- .../view/EmojiSelectionDialogFragment.kt | 4 -- .../res/layout/card_size_dialog_fragment.xml | 1 - ...NotificationGoalTimeBroadcastController.kt | 2 +- ...tificationInactivityBroadcastController.kt | 2 +- .../NotificationTypeInteractorImpl.kt | 2 +- .../interactor/RecordsViewDataInteractor.kt | 2 +- .../res/layout/records_container_fragment.xml | 1 + .../RecordsAllViewDataInteractor.kt | 2 +- .../res/layout/settings_additional_layout.xml | 2 +- .../customView/BarChartView.kt | 2 +- .../StatisticsDetailStatsInteractor.kt | 8 ++-- .../mapper/StatisticsDetailViewDataMapper.kt | 6 +-- .../res/drawable/statistics_detail_more.xml | 9 ---- .../feature_views/extension/ViewExtensions.kt | 4 +- .../src/main/res/values/styles.xml | 4 -- .../universal/WidgetUniversalProvider.kt | 2 +- .../src/main/res/layout/widget_layout.xml | 1 - navigation/src/main/AndroidManifest.xml | 3 +- 54 files changed, 46 insertions(+), 212 deletions(-) delete mode 100644 app/src/main/res/anim/fragment_close_exit.xml delete mode 100644 app/src/main/res/anim/fragment_open_enter.xml delete mode 100644 core/src/main/res/drawable/circle_border.xml delete mode 100644 core/src/main/res/drawable/main_icon.xml delete mode 100644 core/src/main/res/drawable/round_corners_border.xml delete mode 100644 features/feature_statistics_detail/src/main/res/drawable/statistics_detail_more.xml diff --git a/app/src/androidTest/java/com/example/util/simpletimetracker/utils/BaseUiTest.kt b/app/src/androidTest/java/com/example/util/simpletimetracker/utils/BaseUiTest.kt index f7a8c3c6..2b10ba4a 100644 --- a/app/src/androidTest/java/com/example/util/simpletimetracker/utils/BaseUiTest.kt +++ b/app/src/androidTest/java/com/example/util/simpletimetracker/utils/BaseUiTest.kt @@ -8,7 +8,7 @@ import androidx.test.core.app.ApplicationProvider import androidx.test.espresso.IdlingRegistry import androidx.test.ext.junit.rules.ActivityScenarioRule import androidx.test.platform.app.InstrumentationRegistry -import com.example.util.simpletimetracker.R +import com.example.util.simpletimetracker.core.R import com.example.util.simpletimetracker.core.mapper.ColorMapper import com.example.util.simpletimetracker.core.mapper.IconEmojiMapper import com.example.util.simpletimetracker.core.mapper.IconImageMapper diff --git a/app/src/androidTest/java/com/example/util/simpletimetracker/utils/ViewActions.kt b/app/src/androidTest/java/com/example/util/simpletimetracker/utils/ViewActions.kt index bb9eda8f..eabf128a 100644 --- a/app/src/androidTest/java/com/example/util/simpletimetracker/utils/ViewActions.kt +++ b/app/src/androidTest/java/com/example/util/simpletimetracker/utils/ViewActions.kt @@ -220,7 +220,7 @@ fun scrollToBottom(): ViewAction = object : ViewAction { "scroll RecyclerView to bottom" override fun getConstraints(): Matcher = - allOf(isAssignableFrom(RecyclerView::class.java), isDisplayed()) + allOf(isAssignableFrom(RecyclerView::class.java), isDisplayed()) override fun perform(uiController: UiController?, view: View?) { val recyclerView = view as RecyclerView diff --git a/app/src/debug/res/values/strings.xml b/app/src/debug/res/values/strings.xml index a0be894d..404a8ea5 100644 --- a/app/src/debug/res/values/strings.xml +++ b/app/src/debug/res/values/strings.xml @@ -1,3 +1,3 @@ - Debug Simple Time Tracker + Debug Simple Time Tracker diff --git a/app/src/main/res/anim/fragment_close_exit.xml b/app/src/main/res/anim/fragment_close_exit.xml deleted file mode 100644 index be1dd7e6..00000000 --- a/app/src/main/res/anim/fragment_close_exit.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/app/src/main/res/anim/fragment_open_enter.xml b/app/src/main/res/anim/fragment_open_enter.xml deleted file mode 100644 index 41dfbead..00000000 --- a/app/src/main/res/anim/fragment_open_enter.xml +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 31bc34df..705cb0bd 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1,3 +1,3 @@ - Simple Time Tracker + Simple Time Tracker diff --git a/core/src/main/java/com/example/util/simpletimetracker/core/base/BaseActivity.kt b/core/src/main/java/com/example/util/simpletimetracker/core/base/BaseActivity.kt index 59e77281..435aaef8 100644 --- a/core/src/main/java/com/example/util/simpletimetracker/core/base/BaseActivity.kt +++ b/core/src/main/java/com/example/util/simpletimetracker/core/base/BaseActivity.kt @@ -8,6 +8,6 @@ abstract class BaseActivity : AppCompatActivity() { inline fun LiveData.observe( crossinline onChanged: (T) -> Unit ) { - observe(this@BaseActivity, { onChanged(it) }) + observe(this@BaseActivity) { onChanged(it) } } } \ No newline at end of file diff --git a/core/src/main/java/com/example/util/simpletimetracker/core/base/BaseBottomSheetFragment.kt b/core/src/main/java/com/example/util/simpletimetracker/core/base/BaseBottomSheetFragment.kt index ebcc2279..72505e55 100644 --- a/core/src/main/java/com/example/util/simpletimetracker/core/base/BaseBottomSheetFragment.kt +++ b/core/src/main/java/com/example/util/simpletimetracker/core/base/BaseBottomSheetFragment.kt @@ -62,6 +62,6 @@ abstract class BaseBottomSheetFragment : BottomSheetDialogFragm inline fun LiveData.observe( crossinline onChanged: (T) -> Unit ) { - observe(viewLifecycleOwner, { onChanged(it) }) + observe(viewLifecycleOwner) { onChanged(it) } } } \ No newline at end of file diff --git a/core/src/main/java/com/example/util/simpletimetracker/core/base/BaseFragment.kt b/core/src/main/java/com/example/util/simpletimetracker/core/base/BaseFragment.kt index 44d8b33c..18b3c04f 100644 --- a/core/src/main/java/com/example/util/simpletimetracker/core/base/BaseFragment.kt +++ b/core/src/main/java/com/example/util/simpletimetracker/core/base/BaseFragment.kt @@ -58,6 +58,6 @@ abstract class BaseFragment : Fragment() { inline fun LiveData.observe( crossinline onChanged: (T) -> Unit ) { - observe(viewLifecycleOwner, { onChanged(it) }) + observe(viewLifecycleOwner) { onChanged(it) } } } \ No newline at end of file diff --git a/core/src/main/java/com/example/util/simpletimetracker/core/mapper/CategoryViewDataMapper.kt b/core/src/main/java/com/example/util/simpletimetracker/core/mapper/CategoryViewDataMapper.kt index 6725f9c1..49250ab4 100644 --- a/core/src/main/java/com/example/util/simpletimetracker/core/mapper/CategoryViewDataMapper.kt +++ b/core/src/main/java/com/example/util/simpletimetracker/core/mapper/CategoryViewDataMapper.kt @@ -96,9 +96,4 @@ class CategoryViewDataMapper @Inject constructor( color.let { colorMapper.mapToColorInt(it, isDarkTheme) } } } - - companion object { - private const val DEFAULT_ICON_TEXT_ALPHA = 1.0f - private const val FILTERED_ICON_TEXT_ALPHA = 0.3f - } } \ No newline at end of file diff --git a/core/src/main/java/com/example/util/simpletimetracker/core/mapper/RangeMapper.kt b/core/src/main/java/com/example/util/simpletimetracker/core/mapper/RangeMapper.kt index 90307273..43ed4104 100644 --- a/core/src/main/java/com/example/util/simpletimetracker/core/mapper/RangeMapper.kt +++ b/core/src/main/java/com/example/util/simpletimetracker/core/mapper/RangeMapper.kt @@ -73,7 +73,7 @@ class RangeMapper @Inject constructor( } fun mapToDuration(ranges: List): Long { - return ranges.map { it.duration }.sum() + return ranges.sumOf { it.duration } } private fun mapToRangeName(rangeLength: RangeLength): RangeViewData { diff --git a/core/src/main/java/com/example/util/simpletimetracker/core/utils/TouchDetectors.kt b/core/src/main/java/com/example/util/simpletimetracker/core/utils/TouchDetectors.kt index a60d8030..4e2fe9f3 100644 --- a/core/src/main/java/com/example/util/simpletimetracker/core/utils/TouchDetectors.kt +++ b/core/src/main/java/com/example/util/simpletimetracker/core/utils/TouchDetectors.kt @@ -94,7 +94,7 @@ class ScaleDetector( class SwipeDetector( context: Context, private val onSlideStart: () -> Unit = {}, - onSlide: (offset: Float, initialDirection: Direction, event: MotionEvent) -> Unit = { _, _, _ -> Unit }, + onSlide: (offset: Float, initialDirection: Direction, event: MotionEvent) -> Unit = { _, _, _ -> }, private val onSlideStop: () -> Unit = {}, ) { diff --git a/core/src/main/res/drawable/circle_border.xml b/core/src/main/res/drawable/circle_border.xml deleted file mode 100644 index 855d05f5..00000000 --- a/core/src/main/res/drawable/circle_border.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - \ No newline at end of file diff --git a/core/src/main/res/drawable/main_icon.xml b/core/src/main/res/drawable/main_icon.xml deleted file mode 100644 index e6ad2858..00000000 --- a/core/src/main/res/drawable/main_icon.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/core/src/main/res/drawable/round_corners_border.xml b/core/src/main/res/drawable/round_corners_border.xml deleted file mode 100644 index b5581bbf..00000000 --- a/core/src/main/res/drawable/round_corners_border.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/core/src/main/res/values-de/strings.xml b/core/src/main/res/values-de/strings.xml index 90171d3c..e705c5e6 100644 --- a/core/src/main/res/values-de/strings.xml +++ b/core/src/main/res/values-de/strings.xml @@ -92,7 +92,6 @@ Kommentar Letzte Kommentare Keine Datensatz-Tags hinzugefügt - Aktivität nicht ausgewählt Speichern Nicht markiert Laufende Aktivität entfernt @@ -145,7 +144,6 @@ Einträge sortieren - Aktivitäten filtern Zeit gestartet Dauer Kommentar suchen diff --git a/core/src/main/res/values-es/strings.xml b/core/src/main/res/values-es/strings.xml index e1682203..1ad491e7 100644 --- a/core/src/main/res/values-es/strings.xml +++ b/core/src/main/res/values-es/strings.xml @@ -92,7 +92,6 @@ Comentario Últimos comentarios No se añadieron etiquetas - No se seleccionó ninguna actividad Guardar Sin etiquetar Temporizador eliminado @@ -145,7 +144,6 @@ Ordenar los registros - Filtrar las actividades Tiempo de inicio Duración Buscar comentario diff --git a/core/src/main/res/values-fr/strings.xml b/core/src/main/res/values-fr/strings.xml index ece02f92..1b07cf9c 100644 --- a/core/src/main/res/values-fr/strings.xml +++ b/core/src/main/res/values-fr/strings.xml @@ -92,7 +92,6 @@ Commenter Derniers commentaires Aucune étiquette d\'enregistrement ajoutée - Activité non sélectionnée Sauvegarder Non étiqueté Activité en cours d\'exécution supprimée @@ -145,7 +144,6 @@ Trier les enregistrements - Filtrer les activités Heure de début Durée Rechercher un commentaire diff --git a/core/src/main/res/values-in/strings.xml b/core/src/main/res/values-in/strings.xml index 245863a5..bad53aaf 100644 --- a/core/src/main/res/values-in/strings.xml +++ b/core/src/main/res/values-in/strings.xml @@ -92,7 +92,6 @@ Komentar Komentar terakhir Tidak ada label rekaman yang ditambahkan - Kegiatan tidak dipilih Simpan Tidak berlabel Kegiatan berjalan dihapus @@ -145,7 +144,6 @@ Urutkan rekor - Saring kegiatan Waktu dimulai Durasi Cari komentar diff --git a/core/src/main/res/values-it/strings.xml b/core/src/main/res/values-it/strings.xml index 1603457a..636d3b0d 100644 --- a/core/src/main/res/values-it/strings.xml +++ b/core/src/main/res/values-it/strings.xml @@ -92,7 +92,6 @@ Commento Ultimi commenti Nessuna etichetta aggiunta alla registrazione - Attività non selezionata Salva Non etichettato Attività in corso rimossa @@ -145,7 +144,6 @@ Ordina le registrazioni - Filtra le attività Ora di inizio Durata Cerca commento diff --git a/core/src/main/res/values-ja/strings.xml b/core/src/main/res/values-ja/strings.xml index 1a5e4260..fe683e40 100644 --- a/core/src/main/res/values-ja/strings.xml +++ b/core/src/main/res/values-ja/strings.xml @@ -92,7 +92,6 @@ コメント 最新コメント 計測タグがありません - アクティビティが選択されていない 保存 タグを外す 記録中のアクティビティを削除 @@ -145,7 +144,6 @@ 計測記録をソート - アクティビティをフィルタ 時間の開始 期間 検索コメント diff --git a/core/src/main/res/values-nl/strings.xml b/core/src/main/res/values-nl/strings.xml index bbc7ba3a..fb0c8487 100644 --- a/core/src/main/res/values-nl/strings.xml +++ b/core/src/main/res/values-nl/strings.xml @@ -92,7 +92,6 @@ Opmerking Laatste opmerkingen Geen opname labels toegevoegd - Activiteit niet geselecteerd Opslaan Niet gelabeld Lopende activiteit verwijderd @@ -145,7 +144,6 @@ Records sorteren - Activiteiten filteren Tijd begonnen Looptijd Opmerking zoeken diff --git a/core/src/main/res/values-pt/strings.xml b/core/src/main/res/values-pt/strings.xml index 93834999..f0a280d8 100644 --- a/core/src/main/res/values-pt/strings.xml +++ b/core/src/main/res/values-pt/strings.xml @@ -92,7 +92,6 @@ Comentário Últimos comentários Nenhuma tag de registro adicionada - Atividade não selecionada Salvar Sem tag Atividade em andamento removida @@ -145,7 +144,6 @@ Ordenar registros - Filtrar atividades Hora de início Duração Pesquisar comentário diff --git a/core/src/main/res/values-ru/strings.xml b/core/src/main/res/values-ru/strings.xml index 7bca2bfe..74e70698 100644 --- a/core/src/main/res/values-ru/strings.xml +++ b/core/src/main/res/values-ru/strings.xml @@ -92,7 +92,6 @@ Комментарий Последние комментарии Теги для записей не добавлены - Активность не выбрана Сохранить Без тега Текущая активность удалена @@ -145,7 +144,6 @@ Сортировка - Отфильтровать активности Дата Продолж. Поиск комментария diff --git a/core/src/main/res/values-sv/strings.xml b/core/src/main/res/values-sv/strings.xml index 4e21ecd7..a9cb7d84 100644 --- a/core/src/main/res/values-sv/strings.xml +++ b/core/src/main/res/values-sv/strings.xml @@ -92,7 +92,6 @@ Kommentar Senaste kommentarer Ingen händelsetagg vald - Aktivitet ej vald Spara Ej taggad Pågående aktivitet borttagen @@ -145,7 +144,6 @@ Sortera händelser - Filtrera aktiviteter Starttid Varaktighet Sök kommentar diff --git a/core/src/main/res/values-tr/strings.xml b/core/src/main/res/values-tr/strings.xml index 7444a167..6093d1ab 100644 --- a/core/src/main/res/values-tr/strings.xml +++ b/core/src/main/res/values-tr/strings.xml @@ -92,7 +92,6 @@ Yorum Son yorumlar Kayıt etiketi eklenmedi - Aktivite seçilmedi Kaydet Etiketsiz Takip edilen aktivite silindi @@ -145,7 +144,6 @@ Kayıtları sırala - Kayıtları filtrele Başlangıç zamanı Süre Yorum ara diff --git a/core/src/main/res/values-uk/strings.xml b/core/src/main/res/values-uk/strings.xml index 7184bbe6..f4ec995c 100644 --- a/core/src/main/res/values-uk/strings.xml +++ b/core/src/main/res/values-uk/strings.xml @@ -92,7 +92,6 @@ Коментар Останні коментарі Теги для активності не додані - Активність не обрана Зберегти Без тегу Поточне заняття видалено @@ -145,7 +144,6 @@ Сортувати записи - Фільтрувати заняття Початок Тривалість Шукати коментар diff --git a/core/src/main/res/values-zh/strings.xml b/core/src/main/res/values-zh/strings.xml index 77e4d635..a8b78028 100644 --- a/core/src/main/res/values-zh/strings.xml +++ b/core/src/main/res/values-zh/strings.xml @@ -92,7 +92,6 @@ 备注 最后评论 未添加记录标签 - 未选择活动 保存 无标签 正在追踪的活动已删除 @@ -145,7 +144,6 @@ 对记录排序 - 筛选活动 开始时间 持续时间 搜索评论 diff --git a/core/src/main/res/values/strings.xml b/core/src/main/res/values/strings.xml index cffc3ed3..2e0d28f2 100644 --- a/core/src/main/res/values/strings.xml +++ b/core/src/main/res/values/strings.xml @@ -92,7 +92,6 @@ Comment Last comments No record tags added - Activity not selected Save Untagged Running activity removed @@ -145,7 +144,6 @@ Sort records - Filter activities Time started Duration Search comment diff --git a/domain/src/main/java/com/example/util/simpletimetracker/domain/interactor/RecordTypeInteractor.kt b/domain/src/main/java/com/example/util/simpletimetracker/domain/interactor/RecordTypeInteractor.kt index adb9f390..ccf92ad7 100644 --- a/domain/src/main/java/com/example/util/simpletimetracker/domain/interactor/RecordTypeInteractor.kt +++ b/domain/src/main/java/com/example/util/simpletimetracker/domain/interactor/RecordTypeInteractor.kt @@ -116,7 +116,7 @@ class RecordTypeInteractor @Inject constructor( private suspend fun sortByManualOrder(records: List): List { val order = prefsInteractor.getCardOrderManual() return records - .map { type -> type to order.getOrElse(type.id, { 0 }) } + .map { type -> type to order.getOrElse(type.id) { 0 } } .sortedBy { (_, order) -> order } .map { (type, _) -> type } } diff --git a/domain/src/main/java/com/example/util/simpletimetracker/domain/mapper/StatisticsMapper.kt b/domain/src/main/java/com/example/util/simpletimetracker/domain/mapper/StatisticsMapper.kt index 40111ab0..d487e5b0 100644 --- a/domain/src/main/java/com/example/util/simpletimetracker/domain/mapper/StatisticsMapper.kt +++ b/domain/src/main/java/com/example/util/simpletimetracker/domain/mapper/StatisticsMapper.kt @@ -9,16 +9,12 @@ import kotlin.math.roundToLong class StatisticsMapper @Inject constructor() { fun mapToDuration(records: List): Long { - return records - .map { it.timeEnded - it.timeStarted } - .sum() + return records.sumOf { it.timeEnded - it.timeStarted } } fun mapToDurationFromRange(records: List, start: Long, end: Long): Long { - return records - // Remove parts of the record that is not in the range - .map { min(it.timeEnded, end) - max(it.timeStarted, start) } - .sum() + // Remove parts of the record that is not in the range + return records.sumOf { min(it.timeEnded, end) - max(it.timeStarted, start) } } fun getDurationPercentString( diff --git a/features/feature_change_activity_filter/src/main/java/com/example/util/simpletimetracker/feature_change_activity_filter/interactor/ChangeActivityFilterViewDataInteractor.kt b/features/feature_change_activity_filter/src/main/java/com/example/util/simpletimetracker/feature_change_activity_filter/interactor/ChangeActivityFilterViewDataInteractor.kt index c41afb62..44491fb8 100644 --- a/features/feature_change_activity_filter/src/main/java/com/example/util/simpletimetracker/feature_change_activity_filter/interactor/ChangeActivityFilterViewDataInteractor.kt +++ b/features/feature_change_activity_filter/src/main/java/com/example/util/simpletimetracker/feature_change_activity_filter/interactor/ChangeActivityFilterViewDataInteractor.kt @@ -52,9 +52,9 @@ class ChangeActivityFilterViewDataInteractor @Inject constructor( } } .takeUnless { it.isEmpty() } - ?.let { - val selected = it.filter { it.first in selectedIds }.map { it.second } - val available = it.filter { it.first !in selectedIds }.map { it.second } + ?.let { data -> + val selected = data.filter { it.first in selectedIds }.map { it.second } + val available = data.filter { it.first !in selectedIds }.map { it.second } selected to available } ?.let { (selected, available) -> diff --git a/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/view/ChangeRecordTypeFragment.kt b/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/view/ChangeRecordTypeFragment.kt index 1315645c..66c47c2e 100644 --- a/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/view/ChangeRecordTypeFragment.kt +++ b/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/view/ChangeRecordTypeFragment.kt @@ -189,14 +189,16 @@ class ChangeRecordTypeFragment : updateIconContainerScroll(it) viewModel.onIconTypeClick(it) } - rvChangeRecordTypeIcon.addOnScrollListenerAdapter(onScrolled = { _, _, _ -> - iconsLayoutManager?.let { - viewModel.onIconsScrolled( - firstVisiblePosition = it.findFirstCompletelyVisibleItemPosition(), - lastVisiblePosition = it.findLastCompletelyVisibleItemPosition(), - ) + rvChangeRecordTypeIcon.addOnScrollListenerAdapter( + onScrolled = { _, _, _ -> + iconsLayoutManager?.let { + viewModel.onIconsScrolled( + firstVisiblePosition = it.findFirstCompletelyVisibleItemPosition(), + lastVisiblePosition = it.findLastCompletelyVisibleItemPosition(), + ) + } } - }) + ) } override fun initViewModel(): Unit = with(binding) { diff --git a/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/viewData/ChangeRecordTypeChooserState.kt b/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/viewData/ChangeRecordTypeChooserState.kt index cba2e342..fbb86ada 100644 --- a/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/viewData/ChangeRecordTypeChooserState.kt +++ b/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/viewData/ChangeRecordTypeChooserState.kt @@ -1,7 +1,7 @@ package com.example.util.simpletimetracker.feature_change_record_type.viewData sealed interface ChangeRecordTypeChooserState { - object Closed: ChangeRecordTypeChooserState + object Closed : ChangeRecordTypeChooserState object Color : ChangeRecordTypeChooserState object Icon : ChangeRecordTypeChooserState object Category : ChangeRecordTypeChooserState diff --git a/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/viewModel/ChangeRecordTypeViewModel.kt b/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/viewModel/ChangeRecordTypeViewModel.kt index 6c0f63a2..e613e106 100644 --- a/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/viewModel/ChangeRecordTypeViewModel.kt +++ b/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/viewModel/ChangeRecordTypeViewModel.kt @@ -243,7 +243,7 @@ class ChangeRecordTypeViewModel @Inject constructor( } infoItems - .lastOrNull() { items.indexOf(it) <= firstVisiblePosition } + .lastOrNull { items.indexOf(it) <= firstVisiblePosition } ?.let { updateIconCategories(it.getUniqueId()) } } diff --git a/features/feature_dialogs/src/main/java/com/example/util/simpletimetracker/feature_dialogs/duration/view/DurationDialogFragment.kt b/features/feature_dialogs/src/main/java/com/example/util/simpletimetracker/feature_dialogs/duration/view/DurationDialogFragment.kt index 47fb4c88..aa8faa8a 100644 --- a/features/feature_dialogs/src/main/java/com/example/util/simpletimetracker/feature_dialogs/duration/view/DurationDialogFragment.kt +++ b/features/feature_dialogs/src/main/java/com/example/util/simpletimetracker/feature_dialogs/duration/view/DurationDialogFragment.kt @@ -58,10 +58,6 @@ class DurationDialogFragment : BaseBottomSheetFragment() { setFullScreen() } - override fun initUi() { - // Do nothing - } - override fun initUx(): Unit = with(binding) { btnDurationPickerSave.setOnClick(::onSaveClick) btnDurationPickerDisable.setOnClick(::onDisableClick) diff --git a/features/feature_dialogs/src/main/java/com/example/util/simpletimetracker/feature_dialogs/emojiSelection/view/EmojiSelectionDialogFragment.kt b/features/feature_dialogs/src/main/java/com/example/util/simpletimetracker/feature_dialogs/emojiSelection/view/EmojiSelectionDialogFragment.kt index d63ad1ae..966295fc 100644 --- a/features/feature_dialogs/src/main/java/com/example/util/simpletimetracker/feature_dialogs/emojiSelection/view/EmojiSelectionDialogFragment.kt +++ b/features/feature_dialogs/src/main/java/com/example/util/simpletimetracker/feature_dialogs/emojiSelection/view/EmojiSelectionDialogFragment.kt @@ -80,10 +80,6 @@ class EmojiSelectionDialogFragment : BaseBottomSheetFragment() { } } - override fun initUx() { - // Do nothing - } - override fun initViewModel(): Unit = with(viewModel) { extra = params icons.observe(adapter::replace) diff --git a/features/feature_dialogs/src/main/res/layout/card_size_dialog_fragment.xml b/features/feature_dialogs/src/main/res/layout/card_size_dialog_fragment.xml index f2b0ffba..b6e692b7 100644 --- a/features/feature_dialogs/src/main/res/layout/card_size_dialog_fragment.xml +++ b/features/feature_dialogs/src/main/res/layout/card_size_dialog_fragment.xml @@ -1,6 +1,5 @@ diff --git a/features/feature_statistics_detail/src/main/java/com/example/util/simpletimetracker/feature_statistics_detail/customView/BarChartView.kt b/features/feature_statistics_detail/src/main/java/com/example/util/simpletimetracker/feature_statistics_detail/customView/BarChartView.kt index 35d66d20..8ca92951 100644 --- a/features/feature_statistics_detail/src/main/java/com/example/util/simpletimetracker/feature_statistics_detail/customView/BarChartView.kt +++ b/features/feature_statistics_detail/src/main/java/com/example/util/simpletimetracker/feature_statistics_detail/customView/BarChartView.kt @@ -133,7 +133,7 @@ class BarChartView @JvmOverloads constructor( fun setBars(data: List) { bars = data.takeUnless { it.isEmpty() } ?: listOf(ViewData(0f, "", "")) - maxValue = data.map(ViewData::value).maxOrNull() ?: 1f + maxValue = data.maxOfOrNull(ViewData::value) ?: 1f selectedBar = -1 invalidate() if (!isInEditMode) animateBars() diff --git a/features/feature_statistics_detail/src/main/java/com/example/util/simpletimetracker/feature_statistics_detail/interactor/StatisticsDetailStatsInteractor.kt b/features/feature_statistics_detail/src/main/java/com/example/util/simpletimetracker/feature_statistics_detail/interactor/StatisticsDetailStatsInteractor.kt index 03ea8050..78b2bf55 100644 --- a/features/feature_statistics_detail/src/main/java/com/example/util/simpletimetracker/feature_statistics_detail/interactor/StatisticsDetailStatsInteractor.kt +++ b/features/feature_statistics_detail/src/main/java/com/example/util/simpletimetracker/feature_statistics_detail/interactor/StatisticsDetailStatsInteractor.kt @@ -135,8 +135,8 @@ class StatisticsDetailStatsInteractor @Inject constructor( ) val tagSplitData = mapTags( records = records, - typesMap = types.map { it.id to it }.toMap(), - tagsMap = tags.map { it.id to it }.toMap(), + typesMap = types.associateBy { it.id }, + tagsMap = tags.associateBy { it.id }, isDarkTheme = isDarkTheme, useProportionalMinutes = useProportionalMinutes ) @@ -289,10 +289,10 @@ class StatisticsDetailStatsInteractor @Inject constructor( records.forEach { record -> record.tagIds.forEach { tagId -> - tags.getOrPut(tagId, { mutableListOf() }).add(record) + tags.getOrPut(tagId) { mutableListOf() }.add(record) } if (record.tagIds.isEmpty()) { - tags.getOrPut(0, { mutableListOf() }).add(record) + tags.getOrPut(0) { mutableListOf() }.add(record) } } diff --git a/features/feature_statistics_detail/src/main/java/com/example/util/simpletimetracker/feature_statistics_detail/mapper/StatisticsDetailViewDataMapper.kt b/features/feature_statistics_detail/src/main/java/com/example/util/simpletimetracker/feature_statistics_detail/mapper/StatisticsDetailViewDataMapper.kt index 835dca2a..4dea3e0d 100644 --- a/features/feature_statistics_detail/src/main/java/com/example/util/simpletimetracker/feature_statistics_detail/mapper/StatisticsDetailViewDataMapper.kt +++ b/features/feature_statistics_detail/src/main/java/com/example/util/simpletimetracker/feature_statistics_detail/mapper/StatisticsDetailViewDataMapper.kt @@ -269,7 +269,7 @@ class StatisticsDetailViewDataMapper @Inject constructor( fun getAverage(data: List): Long? { if (data.isEmpty()) return null - return data.map { it.duration }.sum() / data.size + return data.sumOf { it.duration } / data.size } val average = getAverage(data) @@ -319,8 +319,8 @@ class StatisticsDetailViewDataMapper @Inject constructor( data: List, rangeLength: RangeLength, ): StatisticsDetailChartViewData { - val isMinutes = data.map(ChartBarDataDuration::duration) - .maxOrNull().orZero() + val isMinutes = data.maxOfOrNull(ChartBarDataDuration::duration) + .orZero() .let(TimeUnit.MILLISECONDS::toHours) == 0L val legendSuffix = if (isMinutes) { diff --git a/features/feature_statistics_detail/src/main/res/drawable/statistics_detail_more.xml b/features/feature_statistics_detail/src/main/res/drawable/statistics_detail_more.xml deleted file mode 100644 index 757f4503..00000000 --- a/features/feature_statistics_detail/src/main/res/drawable/statistics_detail_more.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/features/feature_views/src/main/java/com/example/util/simpletimetracker/feature_views/extension/ViewExtensions.kt b/features/feature_views/src/main/java/com/example/util/simpletimetracker/feature_views/extension/ViewExtensions.kt index 17940826..07dbd09c 100644 --- a/features/feature_views/src/main/java/com/example/util/simpletimetracker/feature_views/extension/ViewExtensions.kt +++ b/features/feature_views/src/main/java/com/example/util/simpletimetracker/feature_views/extension/ViewExtensions.kt @@ -158,8 +158,8 @@ fun GridLayoutManager.setSpanSizeLookup(getSpanSize: (position: Int) -> Int) { } fun RecyclerView.addOnScrollListenerAdapter( - onScrolled: (recyclerView: RecyclerView, dx: Int, dy: Int) -> Unit = { _, _, _ -> Unit }, - onScrollStateChanged: (recyclerView: RecyclerView, newState: Int) -> Unit = { _, _ -> Unit } + onScrolled: (recyclerView: RecyclerView, dx: Int, dy: Int) -> Unit = { _, _, _ -> }, + onScrollStateChanged: (recyclerView: RecyclerView, newState: Int) -> Unit = { _, _ -> } ) = object : RecyclerView.OnScrollListener() { override fun onScrolled(recyclerView: RecyclerView, dx: Int, dy: Int) { onScrolled(recyclerView, dx, dy) diff --git a/features/feature_views/src/main/res/values/styles.xml b/features/feature_views/src/main/res/values/styles.xml index 48c5df8b..5cf49eff 100644 --- a/features/feature_views/src/main/res/values/styles.xml +++ b/features/feature_views/src/main/res/values/styles.xml @@ -201,10 +201,6 @@ @dimen/record_type_card_elevation - -