From c9a90f684742be261ca3cfe5247b57caf26c2f97 Mon Sep 17 00:00:00 2001 From: Ahmad Ansori Palembani Date: Thu, 9 Jan 2025 07:22:21 +0700 Subject: [PATCH] chore(library/compose): View<->Compose Interop REF: https://developer.android.com/develop/ui/compose/touch-input/pointer-input/scroll#parent-view-child-compose --- .../ui/library/compose/LibraryComposeController.kt | 11 +++++++---- .../java/yokai/presentation/library/LibraryContent.kt | 3 +++ 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/compose/LibraryComposeController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/compose/LibraryComposeController.kt index 7d426f6ad9..ac75e11f02 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/compose/LibraryComposeController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/compose/LibraryComposeController.kt @@ -6,6 +6,9 @@ import android.view.View import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState import androidx.compose.runtime.getValue +import androidx.compose.ui.Modifier +import androidx.compose.ui.input.nestedscroll.nestedScroll +import androidx.compose.ui.platform.rememberNestedScrollInteropConnection import androidx.core.view.isGone import androidx.core.view.isVisible import eu.kanade.tachiyomi.data.preference.PreferencesHelper @@ -69,12 +72,12 @@ class LibraryComposeController( @Composable fun ScreenContent() { + val nestedScrollInterop = rememberNestedScrollInteropConnection() + val state by presenter.state.collectAsState() LibraryContent( - items = listOf( - LibraryItem.Blank(69), - LibraryItem.Blank(420), - ), + modifier = Modifier.nestedScroll(nestedScrollInterop), + items = (0..50).map { LibraryItem.Blank(it) }, columns = 3, ) } diff --git a/app/src/main/java/yokai/presentation/library/LibraryContent.kt b/app/src/main/java/yokai/presentation/library/LibraryContent.kt index 66fe35dd26..b334a2e25c 100644 --- a/app/src/main/java/yokai/presentation/library/LibraryContent.kt +++ b/app/src/main/java/yokai/presentation/library/LibraryContent.kt @@ -3,6 +3,7 @@ package yokai.presentation.library import androidx.compose.foundation.lazy.grid.items import androidx.compose.material3.Text import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier import eu.kanade.tachiyomi.ui.library.models.LibraryItem import yokai.presentation.AppBarType import yokai.presentation.YokaiScaffold @@ -10,6 +11,7 @@ import yokai.presentation.library.components.LazyLibraryGrid @Composable fun LibraryContent( + modifier: Modifier = Modifier, items: List, columns: Int, ) { @@ -18,6 +20,7 @@ fun LibraryContent( appBarType = AppBarType.NONE, ) { contentPadding -> LazyLibraryGrid( + modifier = modifier, columns = columns, contentPadding = contentPadding, ) {