diff --git a/app/src/main/java/eu/kanade/presentation/library/components/LazyLibraryGrid.kt b/app/src/main/java/eu/kanade/presentation/library/components/LazyLibraryGrid.kt index 90e2d7398..745ad9f82 100644 --- a/app/src/main/java/eu/kanade/presentation/library/components/LazyLibraryGrid.kt +++ b/app/src/main/java/eu/kanade/presentation/library/components/LazyLibraryGrid.kt @@ -22,9 +22,9 @@ fun LazyLibraryGrid( LazyVerticalGrid( modifier = modifier, columns = if (columns == 0) GridCells.Adaptive(128.dp) else GridCells.Fixed(columns), - contentPadding = PaddingValues(8.dp) + WindowInsets.navigationBars.asPaddingValues(), - verticalArrangement = Arrangement.spacedBy(8.dp), - horizontalArrangement = Arrangement.spacedBy(8.dp), + contentPadding = PaddingValues(12.dp) + WindowInsets.navigationBars.asPaddingValues(), + verticalArrangement = Arrangement.spacedBy(12.dp), + horizontalArrangement = Arrangement.spacedBy(12.dp), content = content, ) } diff --git a/app/src/main/java/eu/kanade/presentation/library/components/LibraryComfortableGrid.kt b/app/src/main/java/eu/kanade/presentation/library/components/LibraryComfortableGrid.kt index 06f556147..b7659ee79 100644 --- a/app/src/main/java/eu/kanade/presentation/library/components/LibraryComfortableGrid.kt +++ b/app/src/main/java/eu/kanade/presentation/library/components/LibraryComfortableGrid.kt @@ -2,12 +2,14 @@ package eu.kanade.presentation.library.components import androidx.compose.foundation.combinedClickable import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.padding import androidx.compose.foundation.lazy.grid.items import androidx.compose.material3.LocalTextStyle import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.unit.dp import eu.kanade.domain.manga.model.MangaCover import eu.kanade.tachiyomi.data.database.models.LibraryManga import eu.kanade.tachiyomi.ui.library.LibraryItem @@ -86,6 +88,7 @@ fun LibraryComfortableGridItem( // SY <-- ) Text( + modifier = Modifier.padding(4.dp), text = manga.title, maxLines = 2, style = LocalTextStyle.current.copy(fontWeight = FontWeight.SemiBold), diff --git a/app/src/main/java/eu/kanade/presentation/library/components/LibraryCompactGrid.kt b/app/src/main/java/eu/kanade/presentation/library/components/LibraryCompactGrid.kt index dfb2a96a5..b2d1e2fea 100644 --- a/app/src/main/java/eu/kanade/presentation/library/components/LibraryCompactGrid.kt +++ b/app/src/main/java/eu/kanade/presentation/library/components/LibraryCompactGrid.kt @@ -16,6 +16,7 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.draw.clip import androidx.compose.ui.graphics.Brush import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.Shadow import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.dp import eu.kanade.tachiyomi.data.database.models.LibraryManga @@ -114,7 +115,14 @@ fun LibraryCompactGridItem( .padding(8.dp) .align(Alignment.BottomStart), maxLines = 2, - style = LocalTextStyle.current.copy(color = Color.White, fontWeight = FontWeight.SemiBold), + style = LocalTextStyle.current.copy( + color = Color.White, + fontWeight = FontWeight.SemiBold, + shadow = Shadow( + color = Color.Black, + blurRadius = 4f, + ), + ), ) } } diff --git a/app/src/main/java/eu/kanade/presentation/library/components/LibraryList.kt b/app/src/main/java/eu/kanade/presentation/library/components/LibraryList.kt index f2ed0957e..a30990306 100644 --- a/app/src/main/java/eu/kanade/presentation/library/components/LibraryList.kt +++ b/app/src/main/java/eu/kanade/presentation/library/components/LibraryList.kt @@ -28,7 +28,6 @@ import eu.kanade.tachiyomi.ui.library.LibraryItem @Composable fun LibraryList( items: List, - columns: Int, selection: List, onClick: (LibraryManga) -> Unit, onLongClick: (LibraryManga) -> Unit, diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryAdapter.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryAdapter.kt index e9d33a289..5328cc678 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryAdapter.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryAdapter.kt @@ -40,7 +40,6 @@ import uy.kohesive.injekt.api.get * @constructor creates an instance of the adapter. */ class LibraryAdapter( - private val controller: LibraryController, private val presenter: LibraryPresenter, private val onClickManga: (LibraryManga) -> Unit, // SY --> @@ -145,7 +144,6 @@ class LibraryAdapter( DisplayModeSetting.LIST -> { LibraryList( items = mangaList, - columns = presenter.columns, selection = presenter.selection, onClick = onClickManga, onLongClick = { diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt index f78ce6dd7..0efe905fe 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt @@ -177,7 +177,6 @@ class LibraryController( super.onViewCreated(view) adapter = LibraryAdapter( - controller = this, presenter = presenter, onClickManga = { openManga(it.id!!) @@ -573,7 +572,7 @@ class LibraryController( actionMode = null } - fun openManga(mangaId: Long) { + private fun openManga(mangaId: Long) { // Notify the presenter a manga is being opened. presenter.onOpenManga() diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryItem.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryItem.kt index 2d612c143..2474cf5b0 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryItem.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryItem.kt @@ -7,10 +7,9 @@ import uy.kohesive.injekt.api.get class LibraryItem( val manga: LibraryManga, + private val sourceManager: SourceManager = Injekt.get(), ) { - private val sourceManager: SourceManager = Injekt.get() - var displayMode: Long = -1 var downloadCount = -1 var unreadCount = -1 diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryMangaEvent.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryMangaEvent.kt index 54d70effc..fa7ad06b8 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryMangaEvent.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryMangaEvent.kt @@ -1,10 +1,3 @@ package eu.kanade.tachiyomi.ui.library -import eu.kanade.domain.category.model.Category - -class LibraryMangaEvent(val mangas: LibraryMap) { - - fun getMangaForCategory(category: Category): List? { - return mangas[category.id] - } -} +class LibraryMangaEvent(val mangas: LibraryMap) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt index d2da265b4..c2b4929d0 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt @@ -19,7 +19,6 @@ import eu.kanade.domain.category.model.Category import eu.kanade.domain.chapter.interactor.GetChapterByMangaId import eu.kanade.domain.chapter.interactor.GetMergedChapterByMangaId import eu.kanade.domain.chapter.interactor.SetReadStatus -import eu.kanade.domain.chapter.interactor.UpdateChapter import eu.kanade.domain.chapter.model.Chapter import eu.kanade.domain.chapter.model.toDbChapter import eu.kanade.domain.manga.interactor.GetIdsOfFavoriteMangaWithMetadata @@ -109,7 +108,6 @@ class LibraryPresenter( private val getCategories: GetCategories = Injekt.get(), private val getChapterByMangaId: GetChapterByMangaId = Injekt.get(), private val setReadStatus: SetReadStatus = Injekt.get(), - private val updateChapter: UpdateChapter = Injekt.get(), private val updateManga: UpdateManga = Injekt.get(), private val setMangaCategories: SetMangaCategories = Injekt.get(), private val preferences: PreferencesHelper = Injekt.get(), @@ -145,11 +143,11 @@ class LibraryPresenter( val selection: MutableList = mutableStateListOf() - val isPerCategory by mutableStateOf(preferences.categorizedDisplaySettings().get()) + val isPerCategory by preferences.categorizedDisplaySettings().asState() var columns by mutableStateOf(0) - var currentDisplayMode by mutableStateOf(preferences.libraryDisplayMode().get()) + var currentDisplayMode by preferences.libraryDisplayMode().asState() /** * Relay used to apply the UI filters to the last emission of the library. @@ -307,8 +305,8 @@ class LibraryPresenter( if (!containsExclude.any() && !containsInclude.any()) return@tracking true - val exclude = trackedManga?.filter { containsExclude.containsKey(it.key.toLong()) && it.value }?.values ?: emptyList() - val include = trackedManga?.filter { containsInclude.containsKey(it.key.toLong()) && it.value }?.values ?: emptyList() + val exclude = trackedManga?.filter { containsExclude.containsKey(it.key) && it.value }?.values ?: emptyList() + val include = trackedManga?.filter { containsInclude.containsKey(it.key) && it.value }?.values ?: emptyList() if (containsInclude.any() && containsExclude.any()) { return@tracking if (exclude.isNotEmpty()) !exclude.any() else include.any() @@ -618,9 +616,6 @@ class LibraryPresenter( * value. */ private fun getLibraryMangasObservable(): Observable { - val defaultLibraryDisplayMode = preferences.libraryDisplayMode() - val shouldSetFromCategory = preferences.categorizedDisplaySettings() - return getLibraryManga.subscribe().asObservable() .map { list -> list.map { libraryManga ->